From c9d5d6b248a12f7c6b66d8a64b93fb0c8c6cae4d Mon Sep 17 00:00:00 2001 From: Dominik Sliwa Date: Tue, 16 May 2017 14:31:59 +0200 Subject: ksd:ksdk update to 2.2 This include FreeRTOS update to version 9.0.0 Signed-off-by: Dominik Sliwa --- .cproject | 28 +- .settings/language.settings.xml | 2 +- CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf | Bin 0 -> 179946 bytes CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.rtf | 911 +++ CMSIS/Documentation/Core/html/CMSIS_CORE_Files.png | Bin 0 -> 20924 bytes .../Core/html/CMSIS_CORE_Files_user.png | Bin 0 -> 10053 bytes CMSIS/Documentation/Core/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes .../html/_c_o_r_e__m_i_s_r_a__exceptions_pg.html | 167 + CMSIS/Documentation/Core/html/_reg_map_pg.html | 303 + CMSIS/Documentation/Core/html/_templates_pg.html | 212 + CMSIS/Documentation/Core/html/_templates_pg.js | 19 + .../Documentation/Core/html/_using__a_r_m_pg.html | 169 + .../Documentation/Core/html/_using__c_m_s_i_s.html | 177 + .../Core/html/_using__v_t_o_r_pg.html | 181 + CMSIS/Documentation/Core/html/_using_pg.html | 172 + CMSIS/Documentation/Core/html/_using_pg.js | 8 + CMSIS/Documentation/Core/html/annotated.html | 152 + CMSIS/Documentation/Core/html/annotated.js | 17 + CMSIS/Documentation/Core/html/bc_s.png | Bin 0 -> 671 bytes CMSIS/Documentation/Core/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/Core/html/check.png | Bin 0 -> 922 bytes CMSIS/Documentation/Core/html/classes.html | 158 + CMSIS/Documentation/Core/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/Core/html/cmsis.css | 1269 ++++ .../Core/html/core_revision_history.html | 206 + CMSIS/Documentation/Core/html/device_h_pg.html | 570 ++ CMSIS/Documentation/Core/html/doxygen.css | 1172 ++++ CMSIS/Documentation/Core/html/doxygen.png | Bin 0 -> 3835 bytes CMSIS/Documentation/Core/html/dynsections.js | 78 + CMSIS/Documentation/Core/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/Core/html/ftv2cl.png | Bin 0 -> 449 bytes CMSIS/Documentation/Core/html/ftv2doc.png | Bin 0 -> 761 bytes CMSIS/Documentation/Core/html/ftv2folderclosed.png | Bin 0 -> 579 bytes CMSIS/Documentation/Core/html/ftv2folderopen.png | Bin 0 -> 602 bytes CMSIS/Documentation/Core/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/Core/html/ftv2link.png | Bin 0 -> 761 bytes CMSIS/Documentation/Core/html/ftv2mlastnode.png | Bin 0 -> 242 bytes CMSIS/Documentation/Core/html/ftv2mnode.png | Bin 0 -> 242 bytes CMSIS/Documentation/Core/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/Core/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/Core/html/ftv2ns.png | Bin 0 -> 385 bytes CMSIS/Documentation/Core/html/ftv2plastnode.png | Bin 0 -> 228 bytes CMSIS/Documentation/Core/html/ftv2pnode.png | Bin 0 -> 228 bytes CMSIS/Documentation/Core/html/ftv2splitbar.png | Bin 0 -> 315 bytes CMSIS/Documentation/Core/html/ftv2vertline.png | Bin 0 -> 86 bytes CMSIS/Documentation/Core/html/functions.html | 627 ++ CMSIS/Documentation/Core/html/functions_vars.html | 627 ++ CMSIS/Documentation/Core/html/globals.html | 676 ++ CMSIS/Documentation/Core/html/globals_defs.html | 142 + CMSIS/Documentation/Core/html/globals_enum.html | 139 + CMSIS/Documentation/Core/html/globals_eval.html | 169 + CMSIS/Documentation/Core/html/globals_func.html | 593 ++ CMSIS/Documentation/Core/html/globals_vars.html | 142 + .../Core/html/group___core___register__gr.html | 1188 ++++ .../Core/html/group___core___register__gr.js | 25 + .../Core/html/group___dcache__functions__m7.html | 356 + .../Core/html/group___dcache__functions__m7.js | 11 + .../Core/html/group___i_t_m___debug__gr.html | 280 + .../Core/html/group___i_t_m___debug__gr.js | 7 + .../Core/html/group___icache__functions__m7.html | 203 + .../Core/html/group___icache__functions__m7.js | 6 + .../Core/html/group___n_v_i_c__gr.html | 1061 +++ .../Documentation/Core/html/group___n_v_i_c__gr.js | 29 + .../Core/html/group___sys_tick__gr.html | 197 + .../Core/html/group___sys_tick__gr.js | 4 + .../Core/html/group__cache__functions__m7.html | 152 + .../Core/html/group__cache__functions__m7.js | 5 + .../Core/html/group__fpu__functions__m7.html | 166 + .../Core/html/group__fpu__functions__m7.js | 4 + .../Core/html/group__intrinsic___c_p_u__gr.html | 1013 +++ .../Core/html/group__intrinsic___c_p_u__gr.js | 33 + .../Core/html/group__intrinsic___s_i_m_d__gr.html | 3126 +++++++++ .../Core/html/group__intrinsic___s_i_m_d__gr.js | 65 + .../Core/html/group__peripheral__gr.html | 351 + .../Core/html/group__peripheral__gr.js | 5 + .../Core/html/group__system__init__gr.html | 230 + .../Core/html/group__system__init__gr.js | 6 + CMSIS/Documentation/Core/html/index.html | 181 + CMSIS/Documentation/Core/html/jquery.js | 77 + CMSIS/Documentation/Core/html/modules.html | 144 + CMSIS/Documentation/Core/html/modules.js | 13 + CMSIS/Documentation/Core/html/nav_f.png | Bin 0 -> 154 bytes CMSIS/Documentation/Core/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/Core/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/Core/html/navtree.css | 143 + CMSIS/Documentation/Core/html/navtree.js | 522 ++ CMSIS/Documentation/Core/html/navtreeindex0.js | 253 + CMSIS/Documentation/Core/html/navtreeindex1.js | 117 + CMSIS/Documentation/Core/html/open.png | Bin 0 -> 122 bytes CMSIS/Documentation/Core/html/pages.html | 143 + .../Documentation/Core/html/printComponentTabs.js | 36 + CMSIS/Documentation/Core/html/resize.js | 93 + CMSIS/Documentation/Core/html/search.css | 240 + CMSIS/Documentation/Core/html/search/all_5f.html | 25 + CMSIS/Documentation/Core/html/search/all_5f.js | 120 + CMSIS/Documentation/Core/html/search/all_61.html | 25 + CMSIS/Documentation/Core/html/search/all_61.js | 9 + CMSIS/Documentation/Core/html/search/all_62.html | 25 + CMSIS/Documentation/Core/html/search/all_62.js | 7 + CMSIS/Documentation/Core/html/search/all_63.html | 25 + CMSIS/Documentation/Core/html/search/all_63.js | 24 + CMSIS/Documentation/Core/html/search/all_64.html | 25 + CMSIS/Documentation/Core/html/search/all_64.js | 16 + CMSIS/Documentation/Core/html/search/all_65.html | 25 + CMSIS/Documentation/Core/html/search/all_65.js | 4 + CMSIS/Documentation/Core/html/search/all_66.html | 25 + CMSIS/Documentation/Core/html/search/all_66.js | 19 + CMSIS/Documentation/Core/html/search/all_68.html | 25 + CMSIS/Documentation/Core/html/search/all_68.js | 5 + CMSIS/Documentation/Core/html/search/all_69.html | 25 + CMSIS/Documentation/Core/html/search/all_69.js | 28 + CMSIS/Documentation/Core/html/search/all_6c.html | 25 + CMSIS/Documentation/Core/html/search/all_6c.js | 5 + CMSIS/Documentation/Core/html/search/all_6d.html | 25 + CMSIS/Documentation/Core/html/search/all_6d.js | 15 + CMSIS/Documentation/Core/html/search/all_6e.html | 25 + CMSIS/Documentation/Core/html/search/all_6e.js | 20 + CMSIS/Documentation/Core/html/search/all_6f.html | 25 + CMSIS/Documentation/Core/html/search/all_6f.js | 5 + CMSIS/Documentation/Core/html/search/all_70.html | 25 + CMSIS/Documentation/Core/html/search/all_70.js | 9 + CMSIS/Documentation/Core/html/search/all_71.html | 25 + CMSIS/Documentation/Core/html/search/all_71.js | 4 + CMSIS/Documentation/Core/html/search/all_72.html | 25 + CMSIS/Documentation/Core/html/search/all_72.js | 32 + CMSIS/Documentation/Core/html/search/all_73.html | 25 + CMSIS/Documentation/Core/html/search/all_73.js | 36 + CMSIS/Documentation/Core/html/search/all_74.html | 25 + CMSIS/Documentation/Core/html/search/all_74.js | 12 + CMSIS/Documentation/Core/html/search/all_75.html | 25 + CMSIS/Documentation/Core/html/search/all_75.js | 11 + CMSIS/Documentation/Core/html/search/all_76.html | 25 + CMSIS/Documentation/Core/html/search/all_76.js | 6 + CMSIS/Documentation/Core/html/search/all_77.html | 25 + CMSIS/Documentation/Core/html/search/all_77.js | 5 + CMSIS/Documentation/Core/html/search/all_78.html | 25 + CMSIS/Documentation/Core/html/search/all_78.js | 4 + CMSIS/Documentation/Core/html/search/all_7a.html | 25 + CMSIS/Documentation/Core/html/search/all_7a.js | 4 + .../Documentation/Core/html/search/classes_61.html | 25 + CMSIS/Documentation/Core/html/search/classes_61.js | 4 + .../Documentation/Core/html/search/classes_63.html | 25 + CMSIS/Documentation/Core/html/search/classes_63.js | 5 + .../Documentation/Core/html/search/classes_64.html | 25 + CMSIS/Documentation/Core/html/search/classes_64.js | 4 + .../Documentation/Core/html/search/classes_66.html | 25 + CMSIS/Documentation/Core/html/search/classes_66.js | 4 + .../Documentation/Core/html/search/classes_69.html | 25 + CMSIS/Documentation/Core/html/search/classes_69.js | 5 + .../Documentation/Core/html/search/classes_6d.html | 25 + CMSIS/Documentation/Core/html/search/classes_6d.js | 4 + .../Documentation/Core/html/search/classes_6e.html | 25 + CMSIS/Documentation/Core/html/search/classes_6e.js | 4 + .../Documentation/Core/html/search/classes_73.html | 25 + CMSIS/Documentation/Core/html/search/classes_73.js | 6 + .../Documentation/Core/html/search/classes_74.html | 25 + CMSIS/Documentation/Core/html/search/classes_74.js | 4 + .../Documentation/Core/html/search/classes_78.html | 25 + CMSIS/Documentation/Core/html/search/classes_78.js | 4 + CMSIS/Documentation/Core/html/search/close.png | Bin 0 -> 273 bytes CMSIS/Documentation/Core/html/search/enums_69.html | 25 + CMSIS/Documentation/Core/html/search/enums_69.js | 4 + .../Core/html/search/enumvalues_62.html | 25 + .../Core/html/search/enumvalues_62.js | 4 + .../Core/html/search/enumvalues_64.html | 25 + .../Core/html/search/enumvalues_64.js | 4 + .../Core/html/search/enumvalues_68.html | 25 + .../Core/html/search/enumvalues_68.js | 4 + .../Core/html/search/enumvalues_6d.html | 25 + .../Core/html/search/enumvalues_6d.js | 4 + .../Core/html/search/enumvalues_6e.html | 25 + .../Core/html/search/enumvalues_6e.js | 4 + .../Core/html/search/enumvalues_70.html | 25 + .../Core/html/search/enumvalues_70.js | 5 + .../Core/html/search/enumvalues_73.html | 25 + .../Core/html/search/enumvalues_73.js | 5 + .../Core/html/search/enumvalues_75.html | 25 + .../Core/html/search/enumvalues_75.js | 4 + .../Core/html/search/enumvalues_77.html | 25 + .../Core/html/search/enumvalues_77.js | 4 + CMSIS/Documentation/Core/html/search/files_63.html | 25 + CMSIS/Documentation/Core/html/search/files_63.js | 4 + CMSIS/Documentation/Core/html/search/files_6d.html | 25 + CMSIS/Documentation/Core/html/search/files_6d.js | 4 + CMSIS/Documentation/Core/html/search/files_6f.html | 25 + CMSIS/Documentation/Core/html/search/files_6f.js | 4 + CMSIS/Documentation/Core/html/search/files_72.html | 25 + CMSIS/Documentation/Core/html/search/files_72.js | 13 + CMSIS/Documentation/Core/html/search/files_74.html | 25 + CMSIS/Documentation/Core/html/search/files_74.js | 4 + CMSIS/Documentation/Core/html/search/files_75.html | 25 + CMSIS/Documentation/Core/html/search/files_75.js | 4 + .../Core/html/search/functions_5f.html | 25 + .../Documentation/Core/html/search/functions_5f.js | 117 + .../Core/html/search/functions_69.html | 25 + .../Documentation/Core/html/search/functions_69.js | 6 + .../Core/html/search/functions_6e.html | 25 + .../Documentation/Core/html/search/functions_6e.js | 16 + .../Core/html/search/functions_73.html | 25 + .../Documentation/Core/html/search/functions_73.js | 18 + .../Documentation/Core/html/search/groups_63.html | 25 + CMSIS/Documentation/Core/html/search/groups_63.js | 5 + .../Documentation/Core/html/search/groups_64.html | 25 + CMSIS/Documentation/Core/html/search/groups_64.js | 5 + .../Documentation/Core/html/search/groups_66.html | 25 + CMSIS/Documentation/Core/html/search/groups_66.js | 4 + .../Documentation/Core/html/search/groups_69.html | 25 + CMSIS/Documentation/Core/html/search/groups_69.js | 7 + .../Documentation/Core/html/search/groups_70.html | 25 + CMSIS/Documentation/Core/html/search/groups_70.js | 4 + .../Documentation/Core/html/search/groups_73.html | 25 + CMSIS/Documentation/Core/html/search/groups_73.js | 5 + CMSIS/Documentation/Core/html/search/mag_sel.png | Bin 0 -> 563 bytes .../Documentation/Core/html/search/nomatches.html | 12 + CMSIS/Documentation/Core/html/search/pages_62.html | 25 + CMSIS/Documentation/Core/html/search/pages_62.js | 4 + CMSIS/Documentation/Core/html/search/pages_64.html | 25 + CMSIS/Documentation/Core/html/search/pages_64.js | 4 + CMSIS/Documentation/Core/html/search/pages_6d.html | 25 + CMSIS/Documentation/Core/html/search/pages_6d.js | 4 + CMSIS/Documentation/Core/html/search/pages_6f.html | 25 + CMSIS/Documentation/Core/html/search/pages_6f.js | 4 + CMSIS/Documentation/Core/html/search/pages_72.html | 25 + CMSIS/Documentation/Core/html/search/pages_72.js | 5 + CMSIS/Documentation/Core/html/search/pages_73.html | 25 + CMSIS/Documentation/Core/html/search/pages_73.js | 5 + CMSIS/Documentation/Core/html/search/pages_74.html | 25 + CMSIS/Documentation/Core/html/search/pages_74.js | 4 + CMSIS/Documentation/Core/html/search/pages_75.html | 25 + CMSIS/Documentation/Core/html/search/pages_75.js | 6 + CMSIS/Documentation/Core/html/search/search.css | 240 + CMSIS/Documentation/Core/html/search/search.js | 811 +++ CMSIS/Documentation/Core/html/search/search_l.png | Bin 0 -> 604 bytes CMSIS/Documentation/Core/html/search/search_m.png | Bin 0 -> 158 bytes CMSIS/Documentation/Core/html/search/search_r.png | Bin 0 -> 612 bytes .../Core/html/search/variables_5f.html | 25 + .../Documentation/Core/html/search/variables_5f.js | 4 + .../Core/html/search/variables_61.html | 25 + .../Documentation/Core/html/search/variables_61.js | 8 + .../Core/html/search/variables_62.html | 25 + .../Documentation/Core/html/search/variables_62.js | 5 + .../Core/html/search/variables_63.html | 25 + .../Documentation/Core/html/search/variables_63.js | 19 + .../Core/html/search/variables_64.html | 25 + .../Documentation/Core/html/search/variables_64.js | 11 + .../Core/html/search/variables_65.html | 25 + .../Documentation/Core/html/search/variables_65.js | 4 + .../Core/html/search/variables_66.html | 25 + .../Documentation/Core/html/search/variables_66.js | 17 + .../Core/html/search/variables_68.html | 25 + .../Documentation/Core/html/search/variables_68.js | 4 + .../Core/html/search/variables_69.html | 25 + .../Documentation/Core/html/search/variables_69.js | 18 + .../Core/html/search/variables_6c.html | 25 + .../Documentation/Core/html/search/variables_6c.js | 5 + .../Core/html/search/variables_6d.html | 25 + .../Documentation/Core/html/search/variables_6d.js | 11 + .../Core/html/search/variables_6e.html | 25 + .../Documentation/Core/html/search/variables_6e.js | 5 + .../Core/html/search/variables_70.html | 25 + .../Documentation/Core/html/search/variables_70.js | 6 + .../Core/html/search/variables_71.html | 25 + .../Documentation/Core/html/search/variables_71.js | 4 + .../Core/html/search/variables_72.html | 25 + .../Documentation/Core/html/search/variables_72.js | 20 + .../Core/html/search/variables_73.html | 25 + .../Documentation/Core/html/search/variables_73.js | 12 + .../Core/html/search/variables_74.html | 25 + .../Documentation/Core/html/search/variables_74.js | 9 + .../Core/html/search/variables_75.html | 25 + .../Documentation/Core/html/search/variables_75.js | 6 + .../Core/html/search/variables_76.html | 25 + .../Documentation/Core/html/search/variables_76.js | 6 + .../Core/html/search/variables_77.html | 25 + .../Documentation/Core/html/search/variables_77.js | 4 + .../Core/html/search/variables_7a.html | 25 + .../Documentation/Core/html/search/variables_7a.js | 4 + CMSIS/Documentation/Core/html/startup_s_pg.html | 370 + .../Core/html/struct_core_debug___type.html | 205 + .../Core/html/struct_core_debug___type.js | 7 + .../Core/html/struct_d_w_t___type.html | 490 ++ .../Documentation/Core/html/struct_d_w_t___type.js | 26 + .../Core/html/struct_f_p_u___type.html | 235 + .../Documentation/Core/html/struct_f_p_u___type.js | 9 + .../Core/html/struct_i_t_m___type.html | 296 + .../Documentation/Core/html/struct_i_t_m___type.js | 13 + .../Core/html/struct_m_p_u___type.html | 310 + .../Documentation/Core/html/struct_m_p_u___type.js | 14 + .../Core/html/struct_n_v_i_c___type.html | 340 + .../Core/html/struct_n_v_i_c___type.js | 16 + .../Core/html/struct_s_c_b___type.html | 460 ++ .../Documentation/Core/html/struct_s_c_b___type.js | 24 + .../Core/html/struct_s_cn_s_c_b___type.html | 190 + .../Core/html/struct_s_cn_s_c_b___type.js | 6 + .../Core/html/struct_sys_tick___type.html | 205 + .../Core/html/struct_sys_tick___type.js | 7 + .../Core/html/struct_t_p_i___type.html | 505 ++ .../Documentation/Core/html/struct_t_p_i___type.js | 27 + CMSIS/Documentation/Core/html/sync_off.png | Bin 0 -> 856 bytes CMSIS/Documentation/Core/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/Core/html/system_c_pg.html | 310 + CMSIS/Documentation/Core/html/tab_a.png | Bin 0 -> 146 bytes CMSIS/Documentation/Core/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/Core/html/tab_h.png | Bin 0 -> 179 bytes CMSIS/Documentation/Core/html/tab_s.png | Bin 0 -> 186 bytes CMSIS/Documentation/Core/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/Core/html/tabs.css | 71 + .../Core/html/union_a_p_s_r___type.html | 266 + .../Core/html/union_a_p_s_r___type.js | 11 + .../Core/html/union_c_o_n_t_r_o_l___type.html | 236 + .../Core/html/union_c_o_n_t_r_o_l___type.js | 9 + .../Core/html/union_i_p_s_r___type.html | 206 + .../Core/html/union_i_p_s_r___type.js | 7 + .../Core/html/unionx_p_s_r___type.html | 311 + .../Documentation/Core/html/unionx_p_s_r___type.js | 14 + .../DAP/html/CMSIS_DAP_DEBUG_UNIT.png | Bin 0 -> 16970 bytes .../DAP/html/CMSIS_DAP_DEBUG_UNIT_ISO.png | Bin 0 -> 23973 bytes .../Documentation/DAP/html/CMSIS_DAP_INTERFACE.png | Bin 0 -> 28348 bytes CMSIS/Documentation/DAP/html/CMSIS_DAP_SWStack.png | Bin 0 -> 121452 bytes CMSIS/Documentation/DAP/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes CMSIS/Documentation/DAP/html/MDK_Device.png | Bin 0 -> 46112 bytes CMSIS/Documentation/DAP/html/MDK_Flash.png | Bin 0 -> 38618 bytes CMSIS/Documentation/DAP/html/MDK_USB.png | Bin 0 -> 20473 bytes CMSIS/Documentation/DAP/html/MDK_Validation.png | Bin 0 -> 15056 bytes CMSIS/Documentation/DAP/html/RTE.png | Bin 0 -> 79487 bytes CMSIS/Documentation/DAP/html/bc_s.png | Bin 0 -> 671 bytes CMSIS/Documentation/DAP/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/DAP/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/DAP/html/cmsis.css | 1269 ++++ CMSIS/Documentation/DAP/html/doxygen.png | Bin 0 -> 3835 bytes CMSIS/Documentation/DAP/html/dynsections.js | 78 + CMSIS/Documentation/DAP/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/DAP/html/ftv2cl.png | Bin 0 -> 449 bytes CMSIS/Documentation/DAP/html/ftv2doc.png | Bin 0 -> 761 bytes CMSIS/Documentation/DAP/html/ftv2folderclosed.png | Bin 0 -> 579 bytes CMSIS/Documentation/DAP/html/ftv2folderopen.png | Bin 0 -> 602 bytes CMSIS/Documentation/DAP/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/DAP/html/ftv2link.png | Bin 0 -> 761 bytes CMSIS/Documentation/DAP/html/ftv2mlastnode.png | Bin 0 -> 242 bytes CMSIS/Documentation/DAP/html/ftv2mnode.png | Bin 0 -> 242 bytes CMSIS/Documentation/DAP/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/DAP/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/DAP/html/ftv2ns.png | Bin 0 -> 385 bytes CMSIS/Documentation/DAP/html/ftv2plastnode.png | Bin 0 -> 228 bytes CMSIS/Documentation/DAP/html/ftv2pnode.png | Bin 0 -> 228 bytes CMSIS/Documentation/DAP/html/ftv2splitbar.png | Bin 0 -> 315 bytes CMSIS/Documentation/DAP/html/ftv2vertline.png | Bin 0 -> 86 bytes .../DAP/html/group___d_a_p___commands__gr.html | 206 + .../DAP/html/group___d_a_p___commands__gr.js | 11 + .../html/group___d_a_p___config___debug__gr.html | 399 ++ .../DAP/html/group___d_a_p___config___debug__gr.js | 17 + ...roup___d_a_p___config___initialization__gr.html | 208 + .../group___d_a_p___config___initialization__gr.js | 5 + .../html/group___d_a_p___config___l_e_ds__gr.html | 223 + .../html/group___d_a_p___config___l_e_ds__gr.js | 5 + .../group___d_a_p___config___port_i_o__gr.html | 805 +++ .../html/group___d_a_p___config___port_i_o__gr.js | 23 + .../DAP/html/group___d_a_p___config__gr.html | 194 + .../DAP/html/group___d_a_p___config__gr.js | 7 + .../DAP/html/group___d_a_p___config_flash__gr.html | 138 + .../DAP/html/group___d_a_p___config_i_o__gr.html | 152 + .../DAP/html/group___d_a_p___config_i_o__gr.js | 7 + .../DAP/html/group___d_a_p___config_m_c_u__gr.html | 149 + .../DAP/html/group___d_a_p___config_u_s_b__gr.html | 157 + .../DAP/html/group___d_a_p___connect.html | 157 + .../DAP/html/group___d_a_p___delay.html | 147 + .../DAP/html/group___d_a_p___disconnect.html | 144 + .../html/group___d_a_p___execute_commands__gr.html | 161 + .../DAP/html/group___d_a_p___host_status.html | 157 + .../DAP/html/group___d_a_p___info.html | 176 + .../html/group___d_a_p___j_t_a_g___configure.html | 148 + .../html/group___d_a_p___j_t_a_g___sequence.html | 163 + .../html/group___d_a_p___queue_commands__gr.html | 210 + .../DAP/html/group___d_a_p___reset_target.html | 149 + .../html/group___d_a_p___response___status.html | 137 + .../html/group___d_a_p___s_w_d___configure.html | 155 + .../DAP/html/group___d_a_p___s_w_j___clock.html | 147 + .../DAP/html/group___d_a_p___s_w_j___pins.html | 163 + .../DAP/html/group___d_a_p___s_w_j___sequence.html | 148 + .../DAP/html/group___d_a_p___s_w_o___baudrate.html | 149 + .../DAP/html/group___d_a_p___s_w_o___control.html | 153 + .../DAP/html/group___d_a_p___s_w_o___data.html | 155 + .../DAP/html/group___d_a_p___s_w_o___mode.html | 153 + .../DAP/html/group___d_a_p___s_w_o___status.html | 151 + .../html/group___d_a_p___s_w_o___transport.html | 154 + .../DAP/html/group___d_a_p___transfer.html | 197 + .../DAP/html/group___d_a_p___transfer_abort.html | 137 + .../DAP/html/group___d_a_p___transfer_block.html | 195 + .../html/group___d_a_p___transfer_configure.html | 154 + .../DAP/html/group___d_a_p___u_s_a_r_t__gr.html | 134 + .../DAP/html/group___d_a_p___validate__gr.html | 137 + .../DAP/html/group___d_a_p___vendor__gr.html | 133 + .../DAP/html/group___d_a_p___write_a_b_o_r_t.html | 148 + .../DAP/html/group___d_a_p__atomic__gr.html | 151 + .../DAP/html/group___d_a_p__atomic__gr.js | 5 + .../DAP/html/group___d_a_p__gen_commands__gr.html | 168 + .../DAP/html/group___d_a_p__gen_commands__gr.js | 10 + .../DAP/html/group___d_a_p__jtag__gr.html | 154 + .../DAP/html/group___d_a_p__jtag__gr.js | 6 + .../DAP/html/group___d_a_p__jtag__idcode.html | 148 + .../DAP/html/group___d_a_p__swd__gr.html | 143 + .../DAP/html/group___d_a_p__swd__gr.js | 4 + .../DAP/html/group___d_a_p__swj__gr.html | 154 + .../DAP/html/group___d_a_p__swj__gr.js | 6 + .../DAP/html/group___d_a_p__swo__gr.html | 175 + .../DAP/html/group___d_a_p__swo__gr.js | 9 + .../DAP/html/group___d_a_p__transfer__gr.html | 157 + .../DAP/html/group___d_a_p__transfer__gr.js | 7 + CMSIS/Documentation/DAP/html/index.html | 187 + CMSIS/Documentation/DAP/html/jquery.js | 77 + CMSIS/Documentation/DAP/html/modules.html | 179 + CMSIS/Documentation/DAP/html/modules.js | 8 + CMSIS/Documentation/DAP/html/nav_f.png | Bin 0 -> 154 bytes CMSIS/Documentation/DAP/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/DAP/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/DAP/html/navtree.css | 143 + CMSIS/Documentation/DAP/html/navtree.js | 512 ++ CMSIS/Documentation/DAP/html/navtreeindex0.js | 93 + CMSIS/Documentation/DAP/html/open.png | Bin 0 -> 122 bytes CMSIS/Documentation/DAP/html/pages.html | 133 + CMSIS/Documentation/DAP/html/printComponentTabs.js | 36 + CMSIS/Documentation/DAP/html/resize.js | 93 + CMSIS/Documentation/DAP/html/rev_hist_dap.html | 141 + CMSIS/Documentation/DAP/html/search/all_61.html | 25 + CMSIS/Documentation/DAP/html/search/all_61.js | 4 + CMSIS/Documentation/DAP/html/search/all_63.html | 25 + CMSIS/Documentation/DAP/html/search/all_63.js | 14 + CMSIS/Documentation/DAP/html/search/all_64.html | 25 + CMSIS/Documentation/DAP/html/search/all_64.js | 38 + CMSIS/Documentation/DAP/html/search/all_66.html | 25 + CMSIS/Documentation/DAP/html/search/all_66.js | 6 + CMSIS/Documentation/DAP/html/search/all_67.html | 25 + CMSIS/Documentation/DAP/html/search/all_67.js | 4 + CMSIS/Documentation/DAP/html/search/all_69.html | 25 + CMSIS/Documentation/DAP/html/search/all_69.js | 4 + CMSIS/Documentation/DAP/html/search/all_6a.html | 25 + CMSIS/Documentation/DAP/html/search/all_6a.js | 4 + CMSIS/Documentation/DAP/html/search/all_6c.html | 25 + CMSIS/Documentation/DAP/html/search/all_6c.js | 5 + CMSIS/Documentation/DAP/html/search/all_70.html | 25 + CMSIS/Documentation/DAP/html/search/all_70.js | 23 + CMSIS/Documentation/DAP/html/search/all_72.html | 25 + CMSIS/Documentation/DAP/html/search/all_72.js | 6 + CMSIS/Documentation/DAP/html/search/all_73.html | 25 + CMSIS/Documentation/DAP/html/search/all_73.js | 9 + CMSIS/Documentation/DAP/html/search/all_74.html | 25 + CMSIS/Documentation/DAP/html/search/all_74.js | 5 + CMSIS/Documentation/DAP/html/search/all_76.html | 25 + CMSIS/Documentation/DAP/html/search/all_76.js | 4 + CMSIS/Documentation/DAP/html/search/close.png | Bin 0 -> 273 bytes .../DAP/html/search/functions_64.html | 25 + .../Documentation/DAP/html/search/functions_64.js | 4 + .../DAP/html/search/functions_6c.html | 25 + .../Documentation/DAP/html/search/functions_6c.js | 5 + .../DAP/html/search/functions_70.html | 25 + .../Documentation/DAP/html/search/functions_70.js | 23 + .../DAP/html/search/functions_72.html | 25 + .../Documentation/DAP/html/search/functions_72.js | 4 + CMSIS/Documentation/DAP/html/search/groups_61.html | 25 + CMSIS/Documentation/DAP/html/search/groups_61.js | 4 + CMSIS/Documentation/DAP/html/search/groups_63.html | 25 + CMSIS/Documentation/DAP/html/search/groups_63.js | 13 + CMSIS/Documentation/DAP/html/search/groups_64.html | 25 + CMSIS/Documentation/DAP/html/search/groups_64.js | 30 + CMSIS/Documentation/DAP/html/search/groups_66.html | 25 + CMSIS/Documentation/DAP/html/search/groups_66.js | 5 + CMSIS/Documentation/DAP/html/search/groups_67.html | 25 + CMSIS/Documentation/DAP/html/search/groups_67.js | 4 + CMSIS/Documentation/DAP/html/search/groups_6a.html | 25 + CMSIS/Documentation/DAP/html/search/groups_6a.js | 4 + CMSIS/Documentation/DAP/html/search/groups_72.html | 25 + CMSIS/Documentation/DAP/html/search/groups_72.js | 4 + CMSIS/Documentation/DAP/html/search/groups_73.html | 25 + CMSIS/Documentation/DAP/html/search/groups_73.js | 5 + CMSIS/Documentation/DAP/html/search/groups_74.html | 25 + CMSIS/Documentation/DAP/html/search/groups_74.js | 4 + CMSIS/Documentation/DAP/html/search/groups_76.html | 25 + CMSIS/Documentation/DAP/html/search/groups_76.js | 4 + CMSIS/Documentation/DAP/html/search/mag_sel.png | Bin 0 -> 563 bytes CMSIS/Documentation/DAP/html/search/nomatches.html | 12 + CMSIS/Documentation/DAP/html/search/pages_66.html | 25 + CMSIS/Documentation/DAP/html/search/pages_66.js | 4 + CMSIS/Documentation/DAP/html/search/pages_72.html | 25 + CMSIS/Documentation/DAP/html/search/pages_72.js | 4 + CMSIS/Documentation/DAP/html/search/search.css | 240 + CMSIS/Documentation/DAP/html/search/search.js | 801 +++ CMSIS/Documentation/DAP/html/search/search_l.png | Bin 0 -> 604 bytes CMSIS/Documentation/DAP/html/search/search_m.png | Bin 0 -> 158 bytes CMSIS/Documentation/DAP/html/search/search_r.png | Bin 0 -> 612 bytes CMSIS/Documentation/DAP/html/sync_off.png | Bin 0 -> 856 bytes CMSIS/Documentation/DAP/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/DAP/html/tab_a.png | Bin 0 -> 146 bytes CMSIS/Documentation/DAP/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/DAP/html/tab_h.png | Bin 0 -> 179 bytes CMSIS/Documentation/DAP/html/tab_s.png | Bin 0 -> 186 bytes CMSIS/Documentation/DAP/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/DAP/html/tabs.css | 71 + CMSIS/Documentation/DSP/html/Biquad.gif | Bin 0 -> 11171 bytes CMSIS/Documentation/DSP/html/BiquadCascade.gif | Bin 0 -> 19446 bytes .../Documentation/DSP/html/BiquadDF2Transposed.gif | Bin 0 -> 9590 bytes CMSIS/Documentation/DSP/html/BiquadPostshift.gif | Bin 0 -> 8407 bytes CMSIS/Documentation/DSP/html/CFFT.gif | Bin 0 -> 3482 bytes CMSIS/Documentation/DSP/html/CFFTQ15.gif | Bin 0 -> 4299 bytes CMSIS/Documentation/DSP/html/CFFTQ31.gif | Bin 0 -> 4380 bytes CMSIS/Documentation/DSP/html/CIFFTQ15.gif | Bin 0 -> 4292 bytes CMSIS/Documentation/DSP/html/CIFFTQ31.gif | Bin 0 -> 4340 bytes CMSIS/Documentation/DSP/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes CMSIS/Documentation/DSP/html/Convolution.gif | Bin 0 -> 4869 bytes .../Documentation/DSP/html/ConvolutionEquation.gif | Bin 0 -> 2644 bytes CMSIS/Documentation/DSP/html/CorrelateEquation.gif | Bin 0 -> 2638 bytes CMSIS/Documentation/DSP/html/DCT4.gif | Bin 0 -> 3837 bytes CMSIS/Documentation/DSP/html/DCT4Equation.gif | Bin 0 -> 2793 bytes CMSIS/Documentation/DSP/html/FFTBin.gif | Bin 0 -> 4726 bytes CMSIS/Documentation/DSP/html/FFTBinInput.gif | Bin 0 -> 11822 bytes CMSIS/Documentation/DSP/html/FFTBinOutput.gif | Bin 0 -> 9211 bytes CMSIS/Documentation/DSP/html/FIR.gif | Bin 0 -> 9671 bytes CMSIS/Documentation/DSP/html/FIRDecimator.gif | Bin 0 -> 2816 bytes CMSIS/Documentation/DSP/html/FIRInterpolator.gif | Bin 0 -> 2700 bytes CMSIS/Documentation/DSP/html/FIRLPF_coeffs.gif | Bin 0 -> 5580 bytes CMSIS/Documentation/DSP/html/FIRLPF_input.gif | Bin 0 -> 12076 bytes CMSIS/Documentation/DSP/html/FIRLPF_output.gif | Bin 0 -> 9096 bytes CMSIS/Documentation/DSP/html/FIRLPF_response.gif | Bin 0 -> 5416 bytes CMSIS/Documentation/DSP/html/FIRLPF_signalflow.gif | Bin 0 -> 3138 bytes CMSIS/Documentation/DSP/html/FIRLattice.gif | Bin 0 -> 10034 bytes CMSIS/Documentation/DSP/html/FIRSparse.gif | Bin 0 -> 9952 bytes .../Documentation/DSP/html/GEQ_allbandresponse.gif | Bin 0 -> 16277 bytes CMSIS/Documentation/DSP/html/GEQ_bandresponse.gif | Bin 0 -> 11263 bytes CMSIS/Documentation/DSP/html/GEQ_inputchirp.gif | Bin 0 -> 11509 bytes CMSIS/Documentation/DSP/html/GEQ_outputchirp.gif | Bin 0 -> 11915 bytes CMSIS/Documentation/DSP/html/GEQ_signalflow.gif | Bin 0 -> 8272 bytes CMSIS/Documentation/DSP/html/IDCT4Equation.gif | Bin 0 -> 2739 bytes CMSIS/Documentation/DSP/html/IIRLattice.gif | Bin 0 -> 13216 bytes CMSIS/Documentation/DSP/html/LMS.gif | Bin 0 -> 6310 bytes CMSIS/Documentation/DSP/html/LinearInterp.gif | Bin 0 -> 4399 bytes CMSIS/Documentation/DSP/html/MatrixAddition.gif | Bin 0 -> 5014 bytes CMSIS/Documentation/DSP/html/MatrixInverse.gif | Bin 0 -> 6346 bytes .../DSP/html/MatrixMultiplication.gif | Bin 0 -> 7594 bytes CMSIS/Documentation/DSP/html/MatrixScale.gif | Bin 0 -> 4617 bytes CMSIS/Documentation/DSP/html/MatrixSubtraction.gif | Bin 0 -> 5212 bytes CMSIS/Documentation/DSP/html/MatrixTranspose.gif | Bin 0 -> 3185 bytes CMSIS/Documentation/DSP/html/PID.gif | Bin 0 -> 5946 bytes CMSIS/Documentation/DSP/html/RFFT.gif | Bin 0 -> 1932 bytes CMSIS/Documentation/DSP/html/RFFTQ15.gif | Bin 0 -> 6130 bytes CMSIS/Documentation/DSP/html/RFFTQ31.gif | Bin 0 -> 6298 bytes CMSIS/Documentation/DSP/html/RIFFT.gif | Bin 0 -> 1939 bytes CMSIS/Documentation/DSP/html/RIFFTQ15.gif | Bin 0 -> 6099 bytes CMSIS/Documentation/DSP/html/RIFFTQ31.gif | Bin 0 -> 6226 bytes CMSIS/Documentation/DSP/html/SignalFlow.gif | Bin 0 -> 10135 bytes CMSIS/Documentation/DSP/html/Variance.gif | Bin 0 -> 5965 bytes ..._a_r_m_2arm__class__marks__example__f32_8c.html | 425 ++ .../_a_r_m_2arm__convolution__example__f32_8c.html | 385 ++ .../_a_r_m_2arm__dotproduct__example__f32_8c.html | 297 + .../DSP/html/_a_r_m_2arm__fft__bin__data_8c.html | 153 + .../_a_r_m_2arm__fft__bin__example__f32_8c.html | 301 + .../DSP/html/_change_01_log_8txt.html | 129 + CMSIS/Documentation/DSP/html/_change_log_pg.html | 371 + ..._g_c_c_2arm__class__marks__example__f32_8c.html | 388 ++ .../_g_c_c_2arm__convolution__example__f32_8c.html | 352 + .../_g_c_c_2arm__dotproduct__example__f32_8c.html | 282 + .../DSP/html/_g_c_c_2arm__fft__bin__data_8c.html | 150 + .../_g_c_c_2arm__fft__bin__example__f32_8c.html | 288 + CMSIS/Documentation/DSP/html/annotated.html | 199 + CMSIS/Documentation/DSP/html/annotated.js | 64 + CMSIS/Documentation/DSP/html/arm__abs__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__abs__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__abs__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__abs__q7_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__add__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__add__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__add__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__add__q7_8c.html | 138 + ..._biquad__cascade__df1__32x64__init__q31_8c.html | 137 + .../arm__biquad__cascade__df1__32x64__q31_8c.html | 137 + .../html/arm__biquad__cascade__df1__f32_8c.html | 138 + .../arm__biquad__cascade__df1__fast__q15_8c.html | 138 + .../arm__biquad__cascade__df1__fast__q31_8c.html | 138 + .../arm__biquad__cascade__df1__init__f32_8c.html | 138 + .../arm__biquad__cascade__df1__init__q15_8c.html | 138 + .../arm__biquad__cascade__df1__init__q31_8c.html | 138 + .../html/arm__biquad__cascade__df1__q15_8c.html | 138 + .../html/arm__biquad__cascade__df1__q31_8c.html | 138 + .../html/arm__biquad__cascade__df2_t__f32_8c.html | 138 + .../html/arm__biquad__cascade__df2_t__f64_8c.html | 138 + .../arm__biquad__cascade__df2_t__init__f32_8c.html | 138 + .../arm__biquad__cascade__df2_t__init__f64_8c.html | 138 + ...rm__biquad__cascade__stereo__df2_t__f32_8c.html | 138 + ...quad__cascade__stereo__df2_t__init__f32_8c.html | 138 + .../DSP/html/arm__bitreversal_8c.html | 262 + .../Documentation/DSP/html/arm__cfft__f32_8c.html | 281 + .../Documentation/DSP/html/arm__cfft__q15_8c.html | 363 + .../Documentation/DSP/html/arm__cfft__q31_8c.html | 361 + .../DSP/html/arm__cfft__radix2__f32_8c.html | 270 + .../DSP/html/arm__cfft__radix2__init__f32_8c.html | 138 + .../DSP/html/arm__cfft__radix2__init__q15_8c.html | 138 + .../DSP/html/arm__cfft__radix2__init__q31_8c.html | 138 + .../DSP/html/arm__cfft__radix2__q15_8c.html | 268 + .../DSP/html/arm__cfft__radix2__q31_8c.html | 268 + .../DSP/html/arm__cfft__radix4__f32_8c.html | 229 + .../DSP/html/arm__cfft__radix4__init__f32_8c.html | 138 + .../DSP/html/arm__cfft__radix4__init__q15_8c.html | 138 + .../DSP/html/arm__cfft__radix4__init__q31_8c.html | 138 + .../DSP/html/arm__cfft__radix4__q15_8c.html | 292 + .../DSP/html/arm__cfft__radix4__q31_8c.html | 292 + .../DSP/html/arm__cfft__radix8__f32_8c.html | 178 + ...ss__marks__example_2_a_r_m_2_abstract_8txt.html | 152 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 256 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...ss__marks__example_2_g_c_c_2_abstract_8txt.html | 152 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html | 254 + .../DSP/html/arm__cmplx__conj__f32_8c.html | 138 + .../DSP/html/arm__cmplx__conj__q15_8c.html | 138 + .../DSP/html/arm__cmplx__conj__q31_8c.html | 138 + .../DSP/html/arm__cmplx__dot__prod__f32_8c.html | 138 + .../DSP/html/arm__cmplx__dot__prod__q15_8c.html | 138 + .../DSP/html/arm__cmplx__dot__prod__q31_8c.html | 138 + .../DSP/html/arm__cmplx__mag__f32_8c.html | 138 + .../DSP/html/arm__cmplx__mag__q15_8c.html | 138 + .../DSP/html/arm__cmplx__mag__q31_8c.html | 138 + .../DSP/html/arm__cmplx__mag__squared__f32_8c.html | 138 + .../DSP/html/arm__cmplx__mag__squared__q15_8c.html | 138 + .../DSP/html/arm__cmplx__mag__squared__q31_8c.html | 138 + .../DSP/html/arm__cmplx__mult__cmplx__f32_8c.html | 138 + .../DSP/html/arm__cmplx__mult__cmplx__q15_8c.html | 138 + .../DSP/html/arm__cmplx__mult__cmplx__q31_8c.html | 138 + .../DSP/html/arm__cmplx__mult__real__f32_8c.html | 138 + .../DSP/html/arm__cmplx__mult__real__q15_8c.html | 138 + .../DSP/html/arm__cmplx__mult__real__q31_8c.html | 138 + .../DSP/html/arm__common__tables_8c.html | 695 ++ .../DSP/html/arm__common__tables_8h.html | 984 +++ .../DSP/html/arm__const__structs_8c.html | 553 ++ .../DSP/html/arm__const__structs_8h.html | 552 ++ .../Documentation/DSP/html/arm__conv__f32_8c.html | 138 + .../DSP/html/arm__conv__fast__opt__q15_8c.html | 138 + .../DSP/html/arm__conv__fast__q15_8c.html | 138 + .../DSP/html/arm__conv__fast__q31_8c.html | 138 + .../DSP/html/arm__conv__opt__q15_8c.html | 138 + .../DSP/html/arm__conv__opt__q7_8c.html | 138 + .../DSP/html/arm__conv__partial__f32_8c.html | 138 + .../arm__conv__partial__fast__opt__q15_8c.html | 138 + .../DSP/html/arm__conv__partial__fast__q15_8c.html | 138 + .../DSP/html/arm__conv__partial__fast__q31_8c.html | 138 + .../DSP/html/arm__conv__partial__opt__q15_8c.html | 138 + .../DSP/html/arm__conv__partial__opt__q7_8c.html | 138 + .../DSP/html/arm__conv__partial__q15_8c.html | 138 + .../DSP/html/arm__conv__partial__q31_8c.html | 138 + .../DSP/html/arm__conv__partial__q7_8c.html | 138 + .../Documentation/DSP/html/arm__conv__q15_8c.html | 138 + .../Documentation/DSP/html/arm__conv__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__conv__q7_8c.html | 138 + ...nvolution__example_2_a_r_m_2_abstract_8txt.html | 152 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...volution__example_2_a_r_m_2math__helper_8c.html | 748 ++ ...volution__example_2_a_r_m_2math__helper_8h.html | 697 ++ ...nvolution__example_2_g_c_c_2_abstract_8txt.html | 152 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html | 254 + ...volution__example_2_g_c_c_2math__helper_8c.html | 749 ++ ...volution__example_2_g_c_c_2math__helper_8h.html | 697 ++ .../Documentation/DSP/html/arm__copy__f32_8c.html | 138 + .../Documentation/DSP/html/arm__copy__q15_8c.html | 138 + .../Documentation/DSP/html/arm__copy__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__copy__q7_8c.html | 138 + .../DSP/html/arm__correlate__f32_8c.html | 138 + .../html/arm__correlate__fast__opt__q15_8c.html | 138 + .../DSP/html/arm__correlate__fast__q15_8c.html | 138 + .../DSP/html/arm__correlate__fast__q31_8c.html | 138 + .../DSP/html/arm__correlate__opt__q15_8c.html | 138 + .../DSP/html/arm__correlate__opt__q7_8c.html | 138 + .../DSP/html/arm__correlate__q15_8c.html | 138 + .../DSP/html/arm__correlate__q31_8c.html | 138 + .../DSP/html/arm__correlate__q7_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__cos__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__cos__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__cos__q31_8c.html | 138 + .../Documentation/DSP/html/arm__dct4__f32_8c.html | 138 + .../DSP/html/arm__dct4__init__f32_8c.html | 158 + .../DSP/html/arm__dct4__init__q15_8c.html | 158 + .../DSP/html/arm__dct4__init__q31_8c.html | 158 + .../Documentation/DSP/html/arm__dct4__q15_8c.html | 138 + .../Documentation/DSP/html/arm__dct4__q31_8c.html | 138 + .../DSP/html/arm__dot__prod__f32_8c.html | 138 + .../DSP/html/arm__dot__prod__q15_8c.html | 138 + .../DSP/html/arm__dot__prod__q31_8c.html | 138 + .../DSP/html/arm__dot__prod__q7_8c.html | 138 + ...otproduct__example_2_a_r_m_2_abstract_8txt.html | 152 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...otproduct__example_2_g_c_c_2_abstract_8txt.html | 152 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html | 254 + ..._fft__bin__example_2_a_r_m_2_abstract_8txt.html | 151 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ..._fft__bin__example_2_g_c_c_2_abstract_8txt.html | 151 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html | 254 + ..._2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html | 254 + .../Documentation/DSP/html/arm__fill__f32_8c.html | 138 + .../Documentation/DSP/html/arm__fill__q15_8c.html | 138 + .../Documentation/DSP/html/arm__fill__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__fill__q7_8c.html | 138 + .../Documentation/DSP/html/arm__fir__data_8c.html | 170 + .../DSP/html/arm__fir__decimate__f32_8c.html | 138 + .../DSP/html/arm__fir__decimate__fast__q15_8c.html | 138 + .../DSP/html/arm__fir__decimate__fast__q31_8c.html | 138 + .../DSP/html/arm__fir__decimate__init__f32_8c.html | 138 + .../DSP/html/arm__fir__decimate__init__q15_8c.html | 138 + .../DSP/html/arm__fir__decimate__init__q31_8c.html | 138 + .../DSP/html/arm__fir__decimate__q15_8c.html | 138 + .../DSP/html/arm__fir__decimate__q31_8c.html | 138 + .../arm__fir__example_2_a_r_m_2_abstract_8txt.html | 151 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...arm__fir__example_2_a_r_m_2math__helper_8c.html | 749 ++ ...arm__fir__example_2_a_r_m_2math__helper_8h.html | 697 ++ .../DSP/html/arm__fir__example__f32_8c.html | 374 + CMSIS/Documentation/DSP/html/arm__fir__f32_8c.html | 138 + .../DSP/html/arm__fir__fast__q15_8c.html | 138 + .../DSP/html/arm__fir__fast__q31_8c.html | 139 + .../DSP/html/arm__fir__init__f32_8c.html | 138 + .../DSP/html/arm__fir__init__q15_8c.html | 138 + .../DSP/html/arm__fir__init__q31_8c.html | 138 + .../DSP/html/arm__fir__init__q7_8c.html | 138 + .../DSP/html/arm__fir__interpolate__f32_8c.html | 138 + .../html/arm__fir__interpolate__init__f32_8c.html | 138 + .../html/arm__fir__interpolate__init__q15_8c.html | 138 + .../html/arm__fir__interpolate__init__q31_8c.html | 138 + .../DSP/html/arm__fir__interpolate__q15_8c.html | 138 + .../DSP/html/arm__fir__interpolate__q31_8c.html | 138 + .../DSP/html/arm__fir__lattice__f32_8c.html | 138 + .../DSP/html/arm__fir__lattice__init__f32_8c.html | 138 + .../DSP/html/arm__fir__lattice__init__q15_8c.html | 138 + .../DSP/html/arm__fir__lattice__init__q31_8c.html | 138 + .../DSP/html/arm__fir__lattice__q15_8c.html | 138 + .../DSP/html/arm__fir__lattice__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__fir__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__fir__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__fir__q7_8c.html | 138 + .../DSP/html/arm__fir__sparse__f32_8c.html | 138 + .../DSP/html/arm__fir__sparse__init__f32_8c.html | 138 + .../DSP/html/arm__fir__sparse__init__q15_8c.html | 138 + .../DSP/html/arm__fir__sparse__init__q31_8c.html | 138 + .../DSP/html/arm__fir__sparse__init__q7_8c.html | 138 + .../DSP/html/arm__fir__sparse__q15_8c.html | 138 + .../DSP/html/arm__fir__sparse__q31_8c.html | 138 + .../DSP/html/arm__fir__sparse__q7_8c.html | 138 + .../DSP/html/arm__float__to__q15_8c.html | 138 + .../DSP/html/arm__float__to__q31_8c.html | 138 + .../DSP/html/arm__float__to__q7_8c.html | 138 + .../DSP/html/arm__graphic__equalizer__data_8c.html | 167 + ...equalizer__example_2_a_r_m_2_abstract_8txt.html | 152 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...qualizer__example_2_a_r_m_2math__helper_8c.html | 749 ++ ...qualizer__example_2_a_r_m_2math__helper_8h.html | 697 ++ .../arm__graphic__equalizer__example__q31_8c.html | 509 ++ .../DSP/html/arm__iir__lattice__f32_8c.html | 138 + .../DSP/html/arm__iir__lattice__init__f32_8c.html | 138 + .../DSP/html/arm__iir__lattice__init__q15_8c.html | 138 + .../DSP/html/arm__iir__lattice__init__q31_8c.html | 138 + .../DSP/html/arm__iir__lattice__q15_8c.html | 138 + .../DSP/html/arm__iir__lattice__q31_8c.html | 138 + .../DSP/html/arm__linear__interp__data_8c.html | 153 + ...r__interp__example_2_a_r_m_2_abstract_8txt.html | 152 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...__interp__example_2_a_r_m_2math__helper_8c.html | 749 ++ ...__interp__example_2_a_r_m_2math__helper_8h.html | 697 ++ .../html/arm__linear__interp__example__f32_8c.html | 328 + CMSIS/Documentation/DSP/html/arm__lms__f32_8c.html | 138 + .../DSP/html/arm__lms__init__f32_8c.html | 138 + .../DSP/html/arm__lms__init__q15_8c.html | 138 + .../DSP/html/arm__lms__init__q31_8c.html | 138 + .../DSP/html/arm__lms__norm__f32_8c.html | 138 + .../DSP/html/arm__lms__norm__init__f32_8c.html | 138 + .../DSP/html/arm__lms__norm__init__q15_8c.html | 138 + .../DSP/html/arm__lms__norm__init__q31_8c.html | 138 + .../DSP/html/arm__lms__norm__q15_8c.html | 138 + .../DSP/html/arm__lms__norm__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__lms__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__lms__q31_8c.html | 138 + .../DSP/html/arm__mat__add__f32_8c.html | 138 + .../DSP/html/arm__mat__add__q15_8c.html | 138 + .../DSP/html/arm__mat__add__q31_8c.html | 138 + .../DSP/html/arm__mat__cmplx__mult__f32_8c.html | 138 + .../DSP/html/arm__mat__cmplx__mult__q15_8c.html | 138 + .../DSP/html/arm__mat__cmplx__mult__q31_8c.html | 138 + .../DSP/html/arm__mat__init__f32_8c.html | 138 + .../DSP/html/arm__mat__init__q15_8c.html | 138 + .../DSP/html/arm__mat__init__q31_8c.html | 138 + .../DSP/html/arm__mat__inverse__f32_8c.html | 138 + .../DSP/html/arm__mat__inverse__f64_8c.html | 138 + .../DSP/html/arm__mat__mult__f32_8c.html | 138 + .../DSP/html/arm__mat__mult__fast__q15_8c.html | 138 + .../DSP/html/arm__mat__mult__fast__q31_8c.html | 138 + .../DSP/html/arm__mat__mult__q15_8c.html | 138 + .../DSP/html/arm__mat__mult__q31_8c.html | 138 + .../DSP/html/arm__mat__scale__f32_8c.html | 138 + .../DSP/html/arm__mat__scale__q15_8c.html | 138 + .../DSP/html/arm__mat__scale__q31_8c.html | 138 + .../DSP/html/arm__mat__sub__f32_8c.html | 138 + .../DSP/html/arm__mat__sub__q15_8c.html | 138 + .../DSP/html/arm__mat__sub__q31_8c.html | 138 + .../DSP/html/arm__mat__trans__f32_8c.html | 138 + .../DSP/html/arm__mat__trans__q15_8c.html | 138 + .../DSP/html/arm__mat__trans__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__math_8h.html | 2630 +++++++ ...m__matrix__example_2_a_r_m_2_abstract_8txt.html | 151 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...__matrix__example_2_a_r_m_2math__helper_8c.html | 749 ++ ...__matrix__example_2_a_r_m_2math__helper_8h.html | 697 ++ .../DSP/html/arm__matrix__example__f32_8c.html | 315 + CMSIS/Documentation/DSP/html/arm__max__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__max__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__max__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__max__q7_8c.html | 138 + .../Documentation/DSP/html/arm__mean__f32_8c.html | 138 + .../Documentation/DSP/html/arm__mean__q15_8c.html | 138 + .../Documentation/DSP/html/arm__mean__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__mean__q7_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__min__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__min__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__min__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__min__q7_8c.html | 138 + .../Documentation/DSP/html/arm__mult__f32_8c.html | 138 + .../Documentation/DSP/html/arm__mult__q15_8c.html | 138 + .../Documentation/DSP/html/arm__mult__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__mult__q7_8c.html | 138 + .../DSP/html/arm__negate__f32_8c.html | 138 + .../DSP/html/arm__negate__q15_8c.html | 138 + .../DSP/html/arm__negate__q31_8c.html | 138 + .../Documentation/DSP/html/arm__negate__q7_8c.html | 138 + .../DSP/html/arm__offset__f32_8c.html | 138 + .../DSP/html/arm__offset__q15_8c.html | 138 + .../DSP/html/arm__offset__q31_8c.html | 138 + .../Documentation/DSP/html/arm__offset__q7_8c.html | 138 + .../DSP/html/arm__pid__init__f32_8c.html | 138 + .../DSP/html/arm__pid__init__q15_8c.html | 138 + .../DSP/html/arm__pid__init__q31_8c.html | 138 + .../DSP/html/arm__pid__reset__f32_8c.html | 138 + .../DSP/html/arm__pid__reset__q15_8c.html | 138 + .../DSP/html/arm__pid__reset__q31_8c.html | 138 + .../Documentation/DSP/html/arm__power__f32_8c.html | 138 + .../Documentation/DSP/html/arm__power__q15_8c.html | 138 + .../Documentation/DSP/html/arm__power__q31_8c.html | 138 + .../Documentation/DSP/html/arm__power__q7_8c.html | 138 + .../DSP/html/arm__q15__to__float_8c.html | 138 + .../DSP/html/arm__q15__to__q31_8c.html | 138 + .../DSP/html/arm__q15__to__q7_8c.html | 138 + .../DSP/html/arm__q31__to__float_8c.html | 138 + .../DSP/html/arm__q31__to__q15_8c.html | 138 + .../DSP/html/arm__q31__to__q7_8c.html | 138 + .../DSP/html/arm__q7__to__float_8c.html | 138 + .../DSP/html/arm__q7__to__q15_8c.html | 138 + .../DSP/html/arm__q7__to__q31_8c.html | 138 + .../Documentation/DSP/html/arm__rfft__f32_8c.html | 301 + .../DSP/html/arm__rfft__fast__f32_8c.html | 215 + .../DSP/html/arm__rfft__fast__init__f32_8c.html | 138 + .../DSP/html/arm__rfft__init__f32_8c.html | 146 + .../DSP/html/arm__rfft__init__q15_8c.html | 146 + .../DSP/html/arm__rfft__init__q31_8c.html | 146 + .../Documentation/DSP/html/arm__rfft__q15_8c.html | 278 + .../Documentation/DSP/html/arm__rfft__q31_8c.html | 278 + CMSIS/Documentation/DSP/html/arm__rms__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__rms__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__rms__q31_8c.html | 138 + .../Documentation/DSP/html/arm__scale__f32_8c.html | 138 + .../Documentation/DSP/html/arm__scale__q15_8c.html | 138 + .../Documentation/DSP/html/arm__scale__q31_8c.html | 138 + .../Documentation/DSP/html/arm__scale__q7_8c.html | 138 + .../Documentation/DSP/html/arm__shift__q15_8c.html | 138 + .../Documentation/DSP/html/arm__shift__q31_8c.html | 138 + .../Documentation/DSP/html/arm__shift__q7_8c.html | 138 + .../DSP/html/arm__signal__converge__data_8c.html | 184 + ..._converge__example_2_a_r_m_2_abstract_8txt.html | 152 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + ...converge__example_2_a_r_m_2math__helper_8c.html | 749 ++ ...converge__example_2_a_r_m_2math__helper_8h.html | 707 ++ .../arm__signal__converge__example__f32_8c.html | 559 ++ ..._sin__cos__example_2_a_r_m_2_abstract_8txt.html | 151 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + .../DSP/html/arm__sin__cos__example__f32_8c.html | 334 + .../DSP/html/arm__sin__cos__f32_8c.html | 138 + .../DSP/html/arm__sin__cos__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__sin__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__sin__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__sin__q31_8c.html | 138 + .../Documentation/DSP/html/arm__sqrt__q15_8c.html | 138 + .../Documentation/DSP/html/arm__sqrt__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__std__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__std__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__std__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__sub__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__sub__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__sub__q31_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__sub__q7_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__var__f32_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__var__q15_8c.html | 138 + CMSIS/Documentation/DSP/html/arm__var__q31_8c.html | 138 + ..._variance__example_2_a_r_m_2_abstract_8txt.html | 152 + ...evice_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html | 254 + ...evice_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html | 254 + ...2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html | 254 + ...2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html | 262 + ...le_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html | 129 + .../DSP/html/arm__variance__example__f32_8c.html | 283 + .../arm_class_marks_example_f32_8c-example.html | 297 + .../arm_convolution_example_f32_8c-example.html | 310 + .../arm_dotproduct_example_f32_8c-example.html | 260 + .../html/arm_fft_bin_example_f32_8c-example.html | 230 + .../DSP/html/arm_fir_example_f32_8c-example.html | 281 + ...m_graphic_equalizer_example_q31_8c-example.html | 448 ++ .../arm_linear_interp_example_f32_8c-example.html | 287 + .../html/arm_matrix_example_f32_8c-example.html | 309 + ...arm_signal_converge_example_f32_8c-example.html | 319 + .../html/arm_sin_cos_example_f32_8c-example.html | 245 + .../html/arm_variance_example_f32_8c-example.html | 279 + CMSIS/Documentation/DSP/html/bc_s.png | Bin 0 -> 676 bytes CMSIS/Documentation/DSP/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/DSP/html/clarke.gif | Bin 0 -> 2965 bytes CMSIS/Documentation/DSP/html/clarkeFormula.gif | Bin 0 -> 1472 bytes CMSIS/Documentation/DSP/html/clarkeInvFormula.gif | Bin 0 -> 1511 bytes CMSIS/Documentation/DSP/html/classes.html | 165 + CMSIS/Documentation/DSP/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/DSP/html/cmsis.css | 1269 ++++ .../Documentation/DSP/html/dct4FormatsQ15Table.gif | Bin 0 -> 3061 bytes .../Documentation/DSP/html/dct4FormatsQ31Table.gif | Bin 0 -> 3128 bytes .../DSP/html/dct4NormalizingF32Table.gif | Bin 0 -> 2363 bytes .../DSP/html/dct4NormalizingQ15Table.gif | Bin 0 -> 2505 bytes .../DSP/html/dct4NormalizingQ31Table.gif | Bin 0 -> 2648 bytes CMSIS/Documentation/DSP/html/deprecated.html | 158 + .../html/dir_05485b5eab41976e219ba5522ae8a40f.html | 140 + .../html/dir_09e8ef8785a41675b984fd022d87f1bc.html | 135 + .../html/dir_0a655a63e9fde46c9762ddfc77ca04bf.html | 141 + .../html/dir_0a68311637137c2c11b8e5c250252a09.html | 135 + .../html/dir_0bd53153155fe3870c529e4f415d4a7e.html | 137 + .../html/dir_12597927a5d871eba77af159658f8e9f.html | 141 + .../html/dir_180f1cc07eaa223183e2db63ad84fc96.html | 139 + .../html/dir_1a6938f21b9d3ee9631dba1cb5e9a79b.html | 203 + .../html/dir_1bf7dc2439436c9055bff1493a609d16.html | 135 + .../html/dir_1ca531cbfb5f1e8e78bee380ead506db.html | 135 + .../html/dir_2089eff899a94c0329c5038f55baabab.html | 135 + .../html/dir_2483b5ef8110e34ae07dadd52b31fd81.html | 135 + .../html/dir_2540fe3bf997579a35b40d050fd58db0.html | 149 + .../html/dir_276d6fac6319afec12f7159fe8d37de0.html | 141 + .../html/dir_28efb39eb514d721c34bfd1d219ba1df.html | 135 + .../html/dir_2bac5604b95d5833788d2de8744eebd8.html | 135 + .../html/dir_2c6bf793c39a551cb3665287541dc62d.html | 331 + .../html/dir_3196f85a8347e7c6cf5419f06f7f0a5c.html | 135 + .../html/dir_33ac94cce96a0d93808878c5f6f288bf.html | 135 + .../html/dir_34727d50220656242b857ddf64f52361.html | 146 + .../html/dir_38b9476ff75f3e6ddc67484ee999428d.html | 142 + .../html/dir_38d31328c42027cc5452e7496de7b88f.html | 137 + .../html/dir_3963cad04f3c79af62d382ba0bd29283.html | 140 + .../html/dir_3d1fa2b43a5e654514cd51dbe031762c.html | 135 + .../html/dir_3d9b1fb18a6a04e0681aa143a1b11e83.html | 135 + .../html/dir_3f2a337fe451aa47758dbb077bdba7b5.html | 140 + .../html/dir_4104b0ce39688295b07e7d8423237024.html | 139 + .../html/dir_424029d631ed0326d927fecdf0eb5714.html | 141 + .../html/dir_446217fa41e7971f13d66a5ff592433f.html | 135 + .../html/dir_45f8bb2d42ec552d5107a3dfe6860678.html | 135 + .../html/dir_4646a6ed5faa53e0aa863c10960e3ab2.html | 140 + .../html/dir_4714731cfbb1de4dc44e33e6cd6e4a5c.html | 149 + .../html/dir_4c7fce71cdbef82378782cbb366558c3.html | 140 + .../html/dir_4e28292bc057704f3d2041cc99d8a5e9.html | 135 + .../html/dir_50f4d4f91ce5cd72cb6928b47e85a7f8.html | 155 + .../html/dir_51a4a1a9da33f8f5fceef63d25a48bab.html | 140 + .../html/dir_555dbbdc9f25fff28408fc741ceff093.html | 139 + .../html/dir_56c57e2f0b48b2b8a51ef27bd8c502e6.html | 140 + .../html/dir_56cec670f0bb78d679862f48f54d3df2.html | 137 + .../html/dir_59a4e177523ec142602b8d9a69e8f1ad.html | 142 + .../html/dir_5a70ee658078194b161f81d2720845c2.html | 135 + .../html/dir_5a7314d68003d6d6c9cc9bdbf9474558.html | 135 + .../html/dir_5ac065bab6b325e909a2891e62c4bc06.html | 135 + .../html/dir_5f5bccfc6fe085bc51be756ab8f90283.html | 141 + .../html/dir_6128d62f89366c4b8843a6e619831037.html | 135 + .../html/dir_640aa2eed9b78c9534642de10c55cd76.html | 169 + .../html/dir_64e2a74b8b7bbc67c7b58e8d27693791.html | 135 + .../html/dir_677f903d85fbea9a56056645305fd3cb.html | 135 + .../html/dir_67fa1d0aab2310595b9aeb6c7b217b31.html | 135 + .../html/dir_68b896fe322128a858fd31091509f536.html | 146 + .../html/dir_6ba48a5a8374668719ef019fe5c253cc.html | 144 + .../html/dir_6f165a89e15e99ac3f22d8f869410ac4.html | 140 + .../html/dir_6fa7a20b876299d97755d41c2d48a6a5.html | 135 + .../html/dir_7101093b4d1c318dab4c75d3b6d4e65e.html | 144 + .../html/dir_7b31f24274e1fbd0785fc4576840c524.html | 135 + .../html/dir_7c360855219f51fadbd92197472e63eb.html | 135 + .../html/dir_7d4cec4b61e1207b4d4e94667e8b33c4.html | 135 + .../html/dir_7d5684d3cdce709028a67dede40715c9.html | 135 + .../html/dir_7e8aa87db1ad6b3d9b1f25792e7c5208.html | 153 + .../html/dir_81c44c586c907f45c06b9b0a1d54e536.html | 141 + .../html/dir_822489d6fe1c800fff671c2e07883531.html | 140 + .../html/dir_82f440d47881c253175a7975df0d431b.html | 137 + .../html/dir_8414b1b93f9b578e0e4fd694ad6d561d.html | 140 + .../html/dir_856524284ebe840938865dc061f982fb.html | 139 + .../html/dir_8964a87ec8901bd068212c6dbdc5667e.html | 141 + .../html/dir_8e3293b977a6b314227f0cbb91dff730.html | 135 + .../html/dir_8ec650f333a7a305dec681cfacaa8edc.html | 135 + .../html/dir_8f74d965c767f9f408b01fb8ac42c08d.html | 140 + .../html/dir_918b1d9c020a9c8774a15ad3971a73ba.html | 135 + .../html/dir_925317a6e91dbb02ffd51da5d221b046.html | 135 + .../html/dir_92c426a233a3fdd85d56996e21a98e0e.html | 140 + .../html/dir_99f4521c725f0e333e2b206f562a5db7.html | 140 + .../html/dir_9aca731d350c1cdbae92b5821b7281b6.html | 173 + .../html/dir_9bbc0b803a378696e320e7975798d136.html | 146 + .../html/dir_9c857f0e41082f634e50072d001e0d4f.html | 195 + .../html/dir_9ec4a86676306e0fd116a00bf2906438.html | 144 + .../html/dir_a318715356e0ddd7f0022cb090f89fc2.html | 135 + .../html/dir_a368b1aeece590aaffe7782f861e3d24.html | 135 + .../html/dir_a4dee065d84ef6ffe4004c9ef0acf573.html | 140 + .../html/dir_a757f05afb4eb2e937a151caf65a9259.html | 141 + .../html/dir_a9b08443a15a54b29b0454fe878922b3.html | 135 + .../html/dir_aa7ef7d51ba6279587b659bb78c926be.html | 135 + .../html/dir_af59df418deac60c7129b68088884655.html | 183 + .../html/dir_b175b6a1b0e91b31e821dead0757e039.html | 135 + .../html/dir_b4620baec99d7beabdab610e4d749ef9.html | 135 + .../html/dir_b5d45ad7eb5bf398416f62f8980ddf77.html | 140 + .../html/dir_b88714652b8aa1e1c1599fa05e2dbc2f.html | 135 + .../html/dir_ba345a22c23c468dbe342a31a3980d31.html | 139 + .../html/dir_be2d3df67661aefe0e3f0071a1d6f8f1.html | 137 + .../html/dir_c2e666cea3ed7c127463edfe7b3abed4.html | 141 + .../html/dir_cc6125d285775e245d68db3d4ce69092.html | 183 + .../html/dir_cd8c33382d73f02781c40066dbd2f0d5.html | 146 + .../html/dir_cf417d728100a167f563acfac33cb7c7.html | 135 + .../html/dir_d1af19de43f00bd515b519c982d49d68.html | 135 + .../html/dir_d1d61a1361fc579da85c1b709ed868d7.html | 137 + .../html/dir_d3331dca3948a91095eeb99d07575db0.html | 135 + .../html/dir_d6b73ad7e408302c29ea0ebadf42639d.html | 135 + .../html/dir_daf4f5c4da18fbee2cc01397e7059227.html | 135 + .../html/dir_dcc7392e27ceedcb8fca5c4cd07c4b5c.html | 135 + .../html/dir_e04602aba7b2f9f43e3429e32fb5dc36.html | 135 + .../html/dir_e4eb7b834609f1fe20523c66b23e4a87.html | 135 + .../html/dir_e677fc34f5347e58d43c339b53e9b418.html | 135 + .../html/dir_e69484b12825f40a4799c3db7df7c339.html | 135 + .../html/dir_e850fff378e36258e2a085808e9d898c.html | 135 + .../html/dir_eaa4f497a3f9bf201d37aaf8d8603deb.html | 140 + .../html/dir_ed0f06d1d48a5e921d9f4bc3a2223aa6.html | 135 + .../html/dir_f31395880d34591c756e13478059d1a5.html | 141 + .../html/dir_f3f90e767886505989b4baa9d4b81390.html | 135 + .../html/dir_fa76c9f4334252cb8d941364a7ed9feb.html | 141 + .../html/dir_fccaebac91eec4cb351e86457c5d1310.html | 140 + CMSIS/Documentation/DSP/html/dotProduct.gif | Bin 0 -> 1935 bytes CMSIS/Documentation/DSP/html/doxygen.css | 1172 ++++ CMSIS/Documentation/DSP/html/doxygen.png | Bin 0 -> 3779 bytes CMSIS/Documentation/DSP/html/dynsections.js | 78 + CMSIS/Documentation/DSP/html/examples.html | 152 + CMSIS/Documentation/DSP/html/files.html | 508 ++ CMSIS/Documentation/DSP/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/DSP/html/ftv2cl.png | Bin 0 -> 453 bytes CMSIS/Documentation/DSP/html/ftv2doc.png | Bin 0 -> 746 bytes CMSIS/Documentation/DSP/html/ftv2folderclosed.png | Bin 0 -> 616 bytes CMSIS/Documentation/DSP/html/ftv2folderopen.png | Bin 0 -> 597 bytes CMSIS/Documentation/DSP/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/DSP/html/ftv2link.png | Bin 0 -> 746 bytes CMSIS/Documentation/DSP/html/ftv2mlastnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/DSP/html/ftv2mnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/DSP/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/DSP/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/DSP/html/ftv2ns.png | Bin 0 -> 388 bytes CMSIS/Documentation/DSP/html/ftv2plastnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/DSP/html/ftv2pnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/DSP/html/ftv2splitbar.png | Bin 0 -> 314 bytes CMSIS/Documentation/DSP/html/ftv2vertline.png | Bin 0 -> 86 bytes CMSIS/Documentation/DSP/html/functions.html | 173 + CMSIS/Documentation/DSP/html/functions_0x62.html | 185 + CMSIS/Documentation/DSP/html/functions_0x65.html | 164 + CMSIS/Documentation/DSP/html/functions_0x66.html | 181 + CMSIS/Documentation/DSP/html/functions_0x69.html | 172 + CMSIS/Documentation/DSP/html/functions_0x6b.html | 174 + CMSIS/Documentation/DSP/html/functions_0x6c.html | 164 + CMSIS/Documentation/DSP/html/functions_0x6d.html | 178 + CMSIS/Documentation/DSP/html/functions_0x6e.html | 231 + CMSIS/Documentation/DSP/html/functions_0x6f.html | 163 + CMSIS/Documentation/DSP/html/functions_0x70.html | 325 + CMSIS/Documentation/DSP/html/functions_0x72.html | 163 + CMSIS/Documentation/DSP/html/functions_0x73.html | 173 + CMSIS/Documentation/DSP/html/functions_0x74.html | 172 + CMSIS/Documentation/DSP/html/functions_0x78.html | 170 + CMSIS/Documentation/DSP/html/functions_dup.js | 18 + CMSIS/Documentation/DSP/html/functions_vars.html | 173 + CMSIS/Documentation/DSP/html/functions_vars.js | 18 + .../DSP/html/functions_vars_0x62.html | 185 + .../DSP/html/functions_vars_0x65.html | 164 + .../DSP/html/functions_vars_0x66.html | 181 + .../DSP/html/functions_vars_0x69.html | 172 + .../DSP/html/functions_vars_0x6b.html | 174 + .../DSP/html/functions_vars_0x6c.html | 164 + .../DSP/html/functions_vars_0x6d.html | 178 + .../DSP/html/functions_vars_0x6e.html | 231 + .../DSP/html/functions_vars_0x6f.html | 163 + .../DSP/html/functions_vars_0x70.html | 325 + .../DSP/html/functions_vars_0x72.html | 163 + .../DSP/html/functions_vars_0x73.html | 173 + .../DSP/html/functions_vars_0x74.html | 172 + .../DSP/html/functions_vars_0x78.html | 170 + CMSIS/Documentation/DSP/html/globals.html | 357 + CMSIS/Documentation/DSP/html/globals_0x61.html | 395 ++ CMSIS/Documentation/DSP/html/globals_0x62.html | 302 + CMSIS/Documentation/DSP/html/globals_0x63.html | 723 ++ CMSIS/Documentation/DSP/html/globals_0x64.html | 229 + CMSIS/Documentation/DSP/html/globals_0x65.html | 171 + CMSIS/Documentation/DSP/html/globals_0x66.html | 455 ++ CMSIS/Documentation/DSP/html/globals_0x67.html | 171 + CMSIS/Documentation/DSP/html/globals_0x69.html | 214 + CMSIS/Documentation/DSP/html/globals_0x6c.html | 242 + CMSIS/Documentation/DSP/html/globals_0x6d.html | 414 ++ CMSIS/Documentation/DSP/html/globals_0x6e.html | 219 + CMSIS/Documentation/DSP/html/globals_0x6f.html | 188 + CMSIS/Documentation/DSP/html/globals_0x70.html | 264 + CMSIS/Documentation/DSP/html/globals_0x71.html | 213 + CMSIS/Documentation/DSP/html/globals_0x72.html | 294 + CMSIS/Documentation/DSP/html/globals_0x73.html | 534 ++ CMSIS/Documentation/DSP/html/globals_0x74.html | 401 ++ CMSIS/Documentation/DSP/html/globals_0x75.html | 169 + CMSIS/Documentation/DSP/html/globals_0x76.html | 181 + CMSIS/Documentation/DSP/html/globals_0x77.html | 213 + CMSIS/Documentation/DSP/html/globals_0x78.html | 174 + CMSIS/Documentation/DSP/html/globals_defs.html | 349 + .../Documentation/DSP/html/globals_defs_0x61.html | 214 + .../Documentation/DSP/html/globals_defs_0x62.html | 164 + .../Documentation/DSP/html/globals_defs_0x63.html | 160 + .../Documentation/DSP/html/globals_defs_0x64.html | 177 + .../Documentation/DSP/html/globals_defs_0x66.html | 166 + .../Documentation/DSP/html/globals_defs_0x69.html | 163 + .../Documentation/DSP/html/globals_defs_0x6d.html | 186 + .../Documentation/DSP/html/globals_defs_0x6e.html | 180 + .../Documentation/DSP/html/globals_defs_0x70.html | 160 + .../Documentation/DSP/html/globals_defs_0x73.html | 167 + .../Documentation/DSP/html/globals_defs_0x74.html | 181 + .../Documentation/DSP/html/globals_defs_0x75.html | 161 + .../Documentation/DSP/html/globals_defs_0x78.html | 160 + CMSIS/Documentation/DSP/html/globals_enum.html | 140 + CMSIS/Documentation/DSP/html/globals_eval.html | 158 + CMSIS/Documentation/DSP/html/globals_func.html | 208 + .../Documentation/DSP/html/globals_func_0x62.html | 259 + .../Documentation/DSP/html/globals_func_0x63.html | 562 ++ .../Documentation/DSP/html/globals_func_0x64.html | 200 + .../Documentation/DSP/html/globals_func_0x66.html | 420 ++ .../Documentation/DSP/html/globals_func_0x67.html | 163 + .../Documentation/DSP/html/globals_func_0x69.html | 196 + .../Documentation/DSP/html/globals_func_0x6c.html | 220 + .../Documentation/DSP/html/globals_func_0x6d.html | 347 + .../Documentation/DSP/html/globals_func_0x6e.html | 176 + .../Documentation/DSP/html/globals_func_0x6f.html | 176 + .../Documentation/DSP/html/globals_func_0x70.html | 256 + .../Documentation/DSP/html/globals_func_0x71.html | 196 + .../Documentation/DSP/html/globals_func_0x72.html | 256 + .../Documentation/DSP/html/globals_func_0x73.html | 398 ++ .../Documentation/DSP/html/globals_func_0x74.html | 166 + .../Documentation/DSP/html/globals_func_0x76.html | 172 + CMSIS/Documentation/DSP/html/globals_type.html | 155 + CMSIS/Documentation/DSP/html/globals_vars.html | 265 + .../Documentation/DSP/html/globals_vars_0x62.html | 188 + .../Documentation/DSP/html/globals_vars_0x63.html | 314 + .../Documentation/DSP/html/globals_vars_0x64.html | 165 + .../Documentation/DSP/html/globals_vars_0x65.html | 167 + .../Documentation/DSP/html/globals_vars_0x66.html | 176 + .../Documentation/DSP/html/globals_vars_0x67.html | 164 + .../Documentation/DSP/html/globals_vars_0x69.html | 168 + .../Documentation/DSP/html/globals_vars_0x6c.html | 178 + .../Documentation/DSP/html/globals_vars_0x6d.html | 194 + .../Documentation/DSP/html/globals_vars_0x6e.html | 172 + .../Documentation/DSP/html/globals_vars_0x6f.html | 168 + .../Documentation/DSP/html/globals_vars_0x72.html | 194 + .../Documentation/DSP/html/globals_vars_0x73.html | 279 + .../Documentation/DSP/html/globals_vars_0x74.html | 367 + .../Documentation/DSP/html/globals_vars_0x76.html | 165 + .../Documentation/DSP/html/globals_vars_0x77.html | 209 + .../Documentation/DSP/html/globals_vars_0x78.html | 167 + .../Documentation/DSP/html/group___basic_abs.html | 334 + CMSIS/Documentation/DSP/html/group___basic_abs.js | 7 + .../Documentation/DSP/html/group___basic_add.html | 361 + CMSIS/Documentation/DSP/html/group___basic_add.js | 7 + .../Documentation/DSP/html/group___basic_mult.html | 365 + CMSIS/Documentation/DSP/html/group___basic_mult.js | 7 + .../Documentation/DSP/html/group___basic_sub.html | 361 + CMSIS/Documentation/DSP/html/group___basic_sub.js | 7 + .../DSP/html/group___bilinear_interpolate.html | 374 + .../DSP/html/group___bilinear_interpolate.js | 7 + .../DSP/html/group___biquad_cascade_d_f1.html | 662 ++ .../DSP/html/group___biquad_cascade_d_f1.js | 11 + .../html/group___biquad_cascade_d_f1__32x64.html | 308 + .../DSP/html/group___biquad_cascade_d_f1__32x64.js | 5 + .../DSP/html/group___biquad_cascade_d_f2_t.html | 533 ++ .../DSP/html/group___biquad_cascade_d_f2_t.js | 9 + .../DSP/html/group___c_f_f_t___c_i_f_f_t.html | 800 +++ .../DSP/html/group___c_f_f_t___c_i_f_f_t.js | 31 + .../DSP/html/group___class_marks.html | 154 + .../DSP/html/group___cmplx_by_cmplx_mult.html | 306 + .../DSP/html/group___cmplx_by_cmplx_mult.js | 6 + .../DSP/html/group___cmplx_by_real_mult.html | 305 + .../DSP/html/group___cmplx_by_real_mult.js | 6 + .../DSP/html/group___cmplx_matrix_mult.html | 292 + .../DSP/html/group___cmplx_matrix_mult.js | 6 + .../DSP/html/group___complex_f_f_t.html | 1003 +++ .../DSP/html/group___complex_f_f_t.js | 18 + CMSIS/Documentation/DSP/html/group___conv.html | 766 +++ CMSIS/Documentation/DSP/html/group___conv.js | 12 + .../DSP/html/group___convolution_example.html | 161 + CMSIS/Documentation/DSP/html/group___corr.html | 751 ++ CMSIS/Documentation/DSP/html/group___corr.js | 12 + .../DSP/html/group___d_c_t4___i_d_c_t4.html | 1163 ++++ .../DSP/html/group___d_c_t4___i_d_c_t4.js | 33 + .../DSP/html/group___dotproduct_example.html | 152 + CMSIS/Documentation/DSP/html/group___f_i_r.html | 776 +++ CMSIS/Documentation/DSP/html/group___f_i_r.js | 13 + .../DSP/html/group___f_i_r___interpolate.html | 550 ++ .../DSP/html/group___f_i_r___interpolate.js | 9 + .../DSP/html/group___f_i_r___lattice.html | 486 ++ .../DSP/html/group___f_i_r___lattice.js | 9 + .../DSP/html/group___f_i_r___sparse.html | 725 ++ .../DSP/html/group___f_i_r___sparse.js | 11 + .../DSP/html/group___f_i_r__decimate.html | 662 ++ .../DSP/html/group___f_i_r__decimate.js | 11 + .../DSP/html/group___f_i_r_l_p_f.html | 177 + CMSIS/Documentation/DSP/html/group___fast.html | 185 + CMSIS/Documentation/DSP/html/group___fill.html | 329 + CMSIS/Documentation/DSP/html/group___fill.js | 7 + .../DSP/html/group___frequency_bin.html | 166 + .../DSP/html/group___g_e_q5_band.html | 186 + .../DSP/html/group___i_i_r___lattice.html | 531 ++ .../DSP/html/group___i_i_r___lattice.js | 9 + CMSIS/Documentation/DSP/html/group___l_m_s.html | 610 ++ CMSIS/Documentation/DSP/html/group___l_m_s.js | 9 + .../DSP/html/group___l_m_s___n_o_r_m.html | 617 ++ .../DSP/html/group___l_m_s___n_o_r_m.js | 9 + .../DSP/html/group___linear_interp_example.html | 158 + .../DSP/html/group___linear_interpolate.html | 359 + .../DSP/html/group___linear_interpolate.js | 7 + .../Documentation/DSP/html/group___matrix_add.html | 284 + CMSIS/Documentation/DSP/html/group___matrix_add.js | 6 + .../DSP/html/group___matrix_example.html | 156 + .../DSP/html/group___matrix_init.html | 299 + .../Documentation/DSP/html/group___matrix_init.js | 6 + .../Documentation/DSP/html/group___matrix_inv.html | 225 + CMSIS/Documentation/DSP/html/group___matrix_inv.js | 5 + .../DSP/html/group___matrix_mult.html | 403 ++ .../Documentation/DSP/html/group___matrix_mult.js | 8 + .../DSP/html/group___matrix_scale.html | 301 + .../Documentation/DSP/html/group___matrix_scale.js | 6 + .../Documentation/DSP/html/group___matrix_sub.html | 284 + CMSIS/Documentation/DSP/html/group___matrix_sub.js | 6 + .../DSP/html/group___matrix_trans.html | 261 + .../Documentation/DSP/html/group___matrix_trans.js | 6 + CMSIS/Documentation/DSP/html/group___max.html | 344 + CMSIS/Documentation/DSP/html/group___max.js | 7 + CMSIS/Documentation/DSP/html/group___min.html | 344 + CMSIS/Documentation/DSP/html/group___min.js | 7 + CMSIS/Documentation/DSP/html/group___p_i_d.html | 517 ++ CMSIS/Documentation/DSP/html/group___p_i_d.js | 12 + .../DSP/html/group___partial_conv.html | 862 +++ .../Documentation/DSP/html/group___partial_conv.js | 12 + CMSIS/Documentation/DSP/html/group___r_m_s.html | 282 + CMSIS/Documentation/DSP/html/group___r_m_s.js | 6 + .../html/group___radix8___c_f_f_t___c_i_f_f_t.html | 171 + .../Documentation/DSP/html/group___real_f_f_t.html | 773 +++ CMSIS/Documentation/DSP/html/group___real_f_f_t.js | 17 + CMSIS/Documentation/DSP/html/group___s_q_r_t.html | 290 + CMSIS/Documentation/DSP/html/group___s_q_r_t.js | 6 + CMSIS/Documentation/DSP/html/group___s_t_d.html | 285 + CMSIS/Documentation/DSP/html/group___s_t_d.js | 6 + .../DSP/html/group___signal_convergence.html | 163 + CMSIS/Documentation/DSP/html/group___sin_cos.html | 240 + CMSIS/Documentation/DSP/html/group___sin_cos.js | 5 + .../DSP/html/group___sin_cos_example.html | 152 + .../DSP/html/group___variance_example.html | 157 + CMSIS/Documentation/DSP/html/group__clarke.html | 266 + CMSIS/Documentation/DSP/html/group__clarke.js | 5 + .../Documentation/DSP/html/group__cmplx__conj.html | 282 + CMSIS/Documentation/DSP/html/group__cmplx__conj.js | 6 + .../DSP/html/group__cmplx__dot__prod.html | 325 + .../DSP/html/group__cmplx__dot__prod.js | 6 + .../Documentation/DSP/html/group__cmplx__mag.html | 288 + CMSIS/Documentation/DSP/html/group__cmplx__mag.js | 6 + .../DSP/html/group__cmplx__mag__squared.html | 282 + .../DSP/html/group__cmplx__mag__squared.js | 6 + CMSIS/Documentation/DSP/html/group__copy.html | 329 + CMSIS/Documentation/DSP/html/group__copy.js | 7 + CMSIS/Documentation/DSP/html/group__cos.html | 236 + CMSIS/Documentation/DSP/html/group__cos.js | 6 + CMSIS/Documentation/DSP/html/group__dot__prod.html | 361 + CMSIS/Documentation/DSP/html/group__dot__prod.js | 7 + .../DSP/html/group__float__to__x.html | 298 + .../Documentation/DSP/html/group__float__to__x.js | 6 + .../DSP/html/group__group_cmplx_math.html | 148 + .../DSP/html/group__group_cmplx_math.js | 9 + .../DSP/html/group__group_controller.html | 147 + .../DSP/html/group__group_controller.js | 9 + .../DSP/html/group__group_examples.html | 157 + .../DSP/html/group__group_examples.js | 14 + .../DSP/html/group__group_fast_math.html | 142 + .../DSP/html/group__group_fast_math.js | 6 + .../DSP/html/group__group_filters.html | 163 + .../Documentation/DSP/html/group__group_filters.js | 17 + .../DSP/html/group__group_interpolation.html | 140 + .../DSP/html/group__group_interpolation.js | 5 + .../Documentation/DSP/html/group__group_math.html | 153 + CMSIS/Documentation/DSP/html/group__group_math.js | 12 + .../DSP/html/group__group_matrix.html | 176 + .../Documentation/DSP/html/group__group_matrix.js | 11 + .../Documentation/DSP/html/group__group_stats.html | 149 + CMSIS/Documentation/DSP/html/group__group_stats.js | 10 + .../DSP/html/group__group_support.html | 147 + .../Documentation/DSP/html/group__group_support.js | 9 + .../DSP/html/group__group_transforms.html | 262 + .../DSP/html/group__group_transforms.js | 11 + .../Documentation/DSP/html/group__inv__clarke.html | 261 + CMSIS/Documentation/DSP/html/group__inv__clarke.js | 5 + CMSIS/Documentation/DSP/html/group__inv__park.html | 289 + CMSIS/Documentation/DSP/html/group__inv__park.js | 5 + CMSIS/Documentation/DSP/html/group__mean.html | 333 + CMSIS/Documentation/DSP/html/group__mean.js | 7 + CMSIS/Documentation/DSP/html/group__negate.html | 331 + CMSIS/Documentation/DSP/html/group__negate.js | 7 + CMSIS/Documentation/DSP/html/group__offset.html | 358 + CMSIS/Documentation/DSP/html/group__offset.js | 7 + CMSIS/Documentation/DSP/html/group__park.html | 294 + CMSIS/Documentation/DSP/html/group__park.js | 5 + CMSIS/Documentation/DSP/html/group__power.html | 330 + CMSIS/Documentation/DSP/html/group__power.js | 7 + .../Documentation/DSP/html/group__q15__to__x.html | 286 + CMSIS/Documentation/DSP/html/group__q15__to__x.js | 6 + .../Documentation/DSP/html/group__q31__to__x.html | 289 + CMSIS/Documentation/DSP/html/group__q31__to__x.js | 6 + CMSIS/Documentation/DSP/html/group__q7__to__x.html | 286 + CMSIS/Documentation/DSP/html/group__q7__to__x.js | 6 + CMSIS/Documentation/DSP/html/group__scale.html | 391 ++ CMSIS/Documentation/DSP/html/group__scale.js | 7 + CMSIS/Documentation/DSP/html/group__shift.html | 311 + CMSIS/Documentation/DSP/html/group__shift.js | 6 + CMSIS/Documentation/DSP/html/group__sin.html | 236 + CMSIS/Documentation/DSP/html/group__sin.js | 6 + CMSIS/Documentation/DSP/html/group__variance.html | 285 + CMSIS/Documentation/DSP/html/group__variance.js | 6 + CMSIS/Documentation/DSP/html/index.html | 219 + CMSIS/Documentation/DSP/html/jquery.js | 77 + .../DSP/html/linearInterpExampleMethod1.gif | Bin 0 -> 2354 bytes .../DSP/html/linearInterpExampleMethod2.gif | Bin 0 -> 2407 bytes CMSIS/Documentation/DSP/html/matrixExample.gif | Bin 0 -> 4490 bytes CMSIS/Documentation/DSP/html/modules.html | 221 + CMSIS/Documentation/DSP/html/modules.js | 14 + CMSIS/Documentation/DSP/html/nav_f.png | Bin 0 -> 153 bytes CMSIS/Documentation/DSP/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/DSP/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/DSP/html/navtree.css | 143 + CMSIS/Documentation/DSP/html/navtree.js | 521 ++ CMSIS/Documentation/DSP/html/navtreeindex0.js | 253 + CMSIS/Documentation/DSP/html/navtreeindex1.js | 253 + CMSIS/Documentation/DSP/html/navtreeindex2.js | 253 + CMSIS/Documentation/DSP/html/navtreeindex3.js | 80 + CMSIS/Documentation/DSP/html/open.png | Bin 0 -> 123 bytes CMSIS/Documentation/DSP/html/pages.html | 134 + CMSIS/Documentation/DSP/html/park.gif | Bin 0 -> 2852 bytes CMSIS/Documentation/DSP/html/parkFormula.gif | Bin 0 -> 1841 bytes CMSIS/Documentation/DSP/html/parkInvFormula.gif | Bin 0 -> 1794 bytes CMSIS/Documentation/DSP/html/printComponentTabs.js | 36 + CMSIS/Documentation/DSP/html/resize.js | 93 + CMSIS/Documentation/DSP/html/search/all_5f.html | 25 + CMSIS/Documentation/DSP/html/search/all_5f.js | 12 + CMSIS/Documentation/DSP/html/search/all_61.html | 25 + CMSIS/Documentation/DSP/html/search/all_61.js | 875 +++ CMSIS/Documentation/DSP/html/search/all_62.html | 25 + CMSIS/Documentation/DSP/html/search/all_62.js | 20 + CMSIS/Documentation/DSP/html/search/all_63.html | 25 + CMSIS/Documentation/DSP/html/search/all_63.js | 46 + CMSIS/Documentation/DSP/html/search/all_64.html | 25 + CMSIS/Documentation/DSP/html/search/all_64.js | 12 + CMSIS/Documentation/DSP/html/search/all_65.html | 25 + CMSIS/Documentation/DSP/html/search/all_65.js | 7 + CMSIS/Documentation/DSP/html/search/all_66.html | 25 + CMSIS/Documentation/DSP/html/search/all_66.js | 25 + CMSIS/Documentation/DSP/html/search/all_67.html | 25 + CMSIS/Documentation/DSP/html/search/all_67.js | 11 + CMSIS/Documentation/DSP/html/search/all_68.html | 25 + CMSIS/Documentation/DSP/html/search/all_68.js | 4 + CMSIS/Documentation/DSP/html/search/all_69.html | 25 + CMSIS/Documentation/DSP/html/search/all_69.js | 10 + CMSIS/Documentation/DSP/html/search/all_6b.html | 25 + CMSIS/Documentation/DSP/html/search/all_6b.js | 6 + CMSIS/Documentation/DSP/html/search/all_6c.html | 25 + CMSIS/Documentation/DSP/html/search/all_6c.js | 11 + CMSIS/Documentation/DSP/html/search/all_6d.html | 25 + CMSIS/Documentation/DSP/html/search/all_6d.js | 32 + CMSIS/Documentation/DSP/html/search/all_6e.html | 25 + CMSIS/Documentation/DSP/html/search/all_6e.js | 17 + CMSIS/Documentation/DSP/html/search/all_6f.html | 25 + CMSIS/Documentation/DSP/html/search/all_6f.js | 6 + CMSIS/Documentation/DSP/html/search/all_70.html | 25 + CMSIS/Documentation/DSP/html/search/all_70.js | 24 + CMSIS/Documentation/DSP/html/search/all_71.html | 25 + CMSIS/Documentation/DSP/html/search/all_71.js | 7 + CMSIS/Documentation/DSP/html/search/all_72.html | 25 + CMSIS/Documentation/DSP/html/search/all_72.js | 18 + CMSIS/Documentation/DSP/html/search/all_73.html | 25 + CMSIS/Documentation/DSP/html/search/all_73.js | 34 + CMSIS/Documentation/DSP/html/search/all_74.html | 25 + CMSIS/Documentation/DSP/html/search/all_74.js | 62 + CMSIS/Documentation/DSP/html/search/all_75.html | 25 + CMSIS/Documentation/DSP/html/search/all_75.js | 4 + CMSIS/Documentation/DSP/html/search/all_76.html | 25 + CMSIS/Documentation/DSP/html/search/all_76.js | 21 + CMSIS/Documentation/DSP/html/search/all_77.html | 25 + CMSIS/Documentation/DSP/html/search/all_77.js | 18 + CMSIS/Documentation/DSP/html/search/all_78.html | 25 + CMSIS/Documentation/DSP/html/search/all_78.js | 8 + .../Documentation/DSP/html/search/classes_61.html | 25 + CMSIS/Documentation/DSP/html/search/classes_61.js | 64 + CMSIS/Documentation/DSP/html/search/close.png | Bin 0 -> 273 bytes .../Documentation/DSP/html/search/defines_5f.html | 25 + CMSIS/Documentation/DSP/html/search/defines_5f.js | 12 + .../Documentation/DSP/html/search/defines_61.html | 25 + CMSIS/Documentation/DSP/html/search/defines_61.js | 22 + .../Documentation/DSP/html/search/defines_62.html | 25 + CMSIS/Documentation/DSP/html/search/defines_62.js | 5 + .../Documentation/DSP/html/search/defines_63.html | 25 + CMSIS/Documentation/DSP/html/search/defines_63.js | 4 + .../Documentation/DSP/html/search/defines_64.html | 25 + CMSIS/Documentation/DSP/html/search/defines_64.js | 8 + .../Documentation/DSP/html/search/defines_66.html | 25 + CMSIS/Documentation/DSP/html/search/defines_66.js | 6 + .../Documentation/DSP/html/search/defines_69.html | 25 + CMSIS/Documentation/DSP/html/search/defines_69.js | 5 + .../Documentation/DSP/html/search/defines_6d.html | 25 + CMSIS/Documentation/DSP/html/search/defines_6d.js | 11 + .../Documentation/DSP/html/search/defines_6e.html | 25 + CMSIS/Documentation/DSP/html/search/defines_6e.js | 10 + .../Documentation/DSP/html/search/defines_70.html | 25 + CMSIS/Documentation/DSP/html/search/defines_70.js | 4 + .../Documentation/DSP/html/search/defines_73.html | 25 + CMSIS/Documentation/DSP/html/search/defines_73.js | 5 + .../Documentation/DSP/html/search/defines_74.html | 25 + CMSIS/Documentation/DSP/html/search/defines_74.js | 9 + .../Documentation/DSP/html/search/defines_75.html | 25 + CMSIS/Documentation/DSP/html/search/defines_75.js | 4 + .../Documentation/DSP/html/search/defines_78.html | 25 + CMSIS/Documentation/DSP/html/search/defines_78.js | 4 + CMSIS/Documentation/DSP/html/search/enums_61.html | 25 + CMSIS/Documentation/DSP/html/search/enums_61.js | 4 + .../DSP/html/search/enumvalues_61.html | 25 + .../Documentation/DSP/html/search/enumvalues_61.js | 10 + CMSIS/Documentation/DSP/html/search/files_61.html | 25 + CMSIS/Documentation/DSP/html/search/files_61.js | 389 ++ CMSIS/Documentation/DSP/html/search/files_63.html | 25 + CMSIS/Documentation/DSP/html/search/files_63.js | 4 + CMSIS/Documentation/DSP/html/search/files_67.html | 25 + CMSIS/Documentation/DSP/html/search/files_67.js | 8 + .../DSP/html/search/functions_61.html | 25 + .../Documentation/DSP/html/search/functions_61.js | 343 + .../DSP/html/search/functions_63.html | 25 + .../Documentation/DSP/html/search/functions_63.js | 7 + .../DSP/html/search/functions_67.html | 25 + .../Documentation/DSP/html/search/functions_67.js | 4 + .../DSP/html/search/functions_6d.html | 25 + .../Documentation/DSP/html/search/functions_6d.js | 6 + .../DSP/html/search/functions_73.html | 25 + .../Documentation/DSP/html/search/functions_73.js | 6 + .../DSP/html/search/functions_74.html | 25 + .../Documentation/DSP/html/search/functions_74.js | 5 + CMSIS/Documentation/DSP/html/search/groups_62.html | 25 + CMSIS/Documentation/DSP/html/search/groups_62.js | 7 + CMSIS/Documentation/DSP/html/search/groups_63.html | 25 + CMSIS/Documentation/DSP/html/search/groups_63.js | 23 + CMSIS/Documentation/DSP/html/search/groups_64.html | 25 + CMSIS/Documentation/DSP/html/search/groups_64.js | 5 + CMSIS/Documentation/DSP/html/search/groups_65.html | 25 + CMSIS/Documentation/DSP/html/search/groups_65.js | 4 + CMSIS/Documentation/DSP/html/search/groups_66.html | 25 + CMSIS/Documentation/DSP/html/search/groups_66.js | 12 + CMSIS/Documentation/DSP/html/search/groups_67.html | 25 + CMSIS/Documentation/DSP/html/search/groups_67.js | 4 + CMSIS/Documentation/DSP/html/search/groups_68.html | 25 + CMSIS/Documentation/DSP/html/search/groups_68.js | 4 + CMSIS/Documentation/DSP/html/search/groups_69.html | 25 + CMSIS/Documentation/DSP/html/search/groups_69.js | 5 + CMSIS/Documentation/DSP/html/search/groups_6c.html | 25 + CMSIS/Documentation/DSP/html/search/groups_6c.js | 6 + CMSIS/Documentation/DSP/html/search/groups_6d.html | 25 + CMSIS/Documentation/DSP/html/search/groups_6d.js | 15 + CMSIS/Documentation/DSP/html/search/groups_6e.html | 25 + CMSIS/Documentation/DSP/html/search/groups_6e.js | 4 + CMSIS/Documentation/DSP/html/search/groups_70.html | 25 + CMSIS/Documentation/DSP/html/search/groups_70.js | 6 + CMSIS/Documentation/DSP/html/search/groups_72.html | 25 + CMSIS/Documentation/DSP/html/search/groups_72.js | 7 + CMSIS/Documentation/DSP/html/search/groups_73.html | 25 + CMSIS/Documentation/DSP/html/search/groups_73.js | 11 + CMSIS/Documentation/DSP/html/search/groups_74.html | 25 + CMSIS/Documentation/DSP/html/search/groups_74.js | 4 + CMSIS/Documentation/DSP/html/search/groups_76.html | 25 + CMSIS/Documentation/DSP/html/search/groups_76.js | 20 + CMSIS/Documentation/DSP/html/search/mag_sel.png | Bin 0 -> 563 bytes CMSIS/Documentation/DSP/html/search/nomatches.html | 12 + CMSIS/Documentation/DSP/html/search/pages_63.html | 25 + CMSIS/Documentation/DSP/html/search/pages_63.js | 5 + CMSIS/Documentation/DSP/html/search/pages_64.html | 25 + CMSIS/Documentation/DSP/html/search/pages_64.js | 4 + CMSIS/Documentation/DSP/html/search/search.css | 240 + CMSIS/Documentation/DSP/html/search/search.js | 815 +++ CMSIS/Documentation/DSP/html/search/search_l.png | Bin 0 -> 604 bytes CMSIS/Documentation/DSP/html/search/search_m.png | Bin 0 -> 158 bytes CMSIS/Documentation/DSP/html/search/search_r.png | Bin 0 -> 612 bytes .../Documentation/DSP/html/search/typedefs_66.html | 25 + CMSIS/Documentation/DSP/html/search/typedefs_66.js | 5 + .../Documentation/DSP/html/search/typedefs_71.html | 25 + CMSIS/Documentation/DSP/html/search/typedefs_71.js | 7 + .../DSP/html/search/variables_61.html | 25 + .../Documentation/DSP/html/search/variables_61.js | 61 + .../DSP/html/search/variables_62.html | 25 + .../Documentation/DSP/html/search/variables_62.js | 15 + .../DSP/html/search/variables_63.html | 25 + .../Documentation/DSP/html/search/variables_63.js | 18 + .../DSP/html/search/variables_64.html | 25 + .../Documentation/DSP/html/search/variables_64.js | 4 + .../DSP/html/search/variables_65.html | 25 + .../Documentation/DSP/html/search/variables_65.js | 6 + .../DSP/html/search/variables_66.html | 25 + .../Documentation/DSP/html/search/variables_66.js | 11 + .../DSP/html/search/variables_67.html | 25 + .../Documentation/DSP/html/search/variables_67.js | 4 + .../DSP/html/search/variables_69.html | 25 + .../Documentation/DSP/html/search/variables_69.js | 6 + .../DSP/html/search/variables_6b.html | 25 + .../Documentation/DSP/html/search/variables_6b.js | 6 + .../DSP/html/search/variables_6c.html | 25 + .../Documentation/DSP/html/search/variables_6c.js | 8 + .../DSP/html/search/variables_6d.html | 25 + .../Documentation/DSP/html/search/variables_6d.js | 11 + .../DSP/html/search/variables_6e.html | 25 + .../Documentation/DSP/html/search/variables_6e.js | 14 + .../DSP/html/search/variables_6f.html | 25 + .../Documentation/DSP/html/search/variables_6f.js | 6 + .../DSP/html/search/variables_70.html | 25 + .../Documentation/DSP/html/search/variables_70.js | 20 + .../DSP/html/search/variables_72.html | 25 + .../Documentation/DSP/html/search/variables_72.js | 14 + .../DSP/html/search/variables_73.html | 25 + .../Documentation/DSP/html/search/variables_73.js | 22 + .../DSP/html/search/variables_74.html | 25 + .../Documentation/DSP/html/search/variables_74.js | 53 + .../DSP/html/search/variables_76.html | 25 + .../Documentation/DSP/html/search/variables_76.js | 4 + .../DSP/html/search/variables_77.html | 25 + .../Documentation/DSP/html/search/variables_77.js | 18 + .../DSP/html/search/variables_78.html | 25 + .../Documentation/DSP/html/search/variables_78.js | 8 + CMSIS/Documentation/DSP/html/sinCos.gif | Bin 0 -> 4040 bytes ...structarm__bilinear__interp__instance__f32.html | 196 + .../structarm__bilinear__interp__instance__f32.js | 6 + ...structarm__bilinear__interp__instance__q15.html | 196 + .../structarm__bilinear__interp__instance__q15.js | 6 + ...structarm__bilinear__interp__instance__q31.html | 196 + .../structarm__bilinear__interp__instance__q31.js | 6 + .../structarm__bilinear__interp__instance__q7.html | 196 + .../structarm__bilinear__interp__instance__q7.js | 6 + ...ructarm__biquad__cas__df1__32x64__ins__q31.html | 215 + ...structarm__biquad__cas__df1__32x64__ins__q31.js | 7 + ...arm__biquad__cascade__df2_t__instance__f32.html | 196 + ...ctarm__biquad__cascade__df2_t__instance__f32.js | 6 + ...arm__biquad__cascade__df2_t__instance__f64.html | 196 + ...ctarm__biquad__cascade__df2_t__instance__f64.js | 6 + ...uad__cascade__stereo__df2_t__instance__f32.html | 196 + ...iquad__cascade__stereo__df2_t__instance__f32.js | 6 + .../structarm__biquad__casd__df1__inst__f32.html | 196 + .../structarm__biquad__casd__df1__inst__f32.js | 6 + .../structarm__biquad__casd__df1__inst__q15.html | 213 + .../structarm__biquad__casd__df1__inst__q15.js | 7 + .../structarm__biquad__casd__df1__inst__q31.html | 215 + .../structarm__biquad__casd__df1__inst__q31.js | 7 + .../DSP/html/structarm__cfft__instance__f32.html | 213 + .../DSP/html/structarm__cfft__instance__f32.js | 7 + .../DSP/html/structarm__cfft__instance__q15.html | 213 + .../DSP/html/structarm__cfft__instance__q15.js | 7 + .../DSP/html/structarm__cfft__instance__q31.html | 213 + .../DSP/html/structarm__cfft__instance__q31.js | 7 + .../structarm__cfft__radix2__instance__f32.html | 281 + .../html/structarm__cfft__radix2__instance__f32.js | 11 + .../structarm__cfft__radix2__instance__q15.html | 264 + .../html/structarm__cfft__radix2__instance__q15.js | 10 + .../structarm__cfft__radix2__instance__q31.html | 264 + .../html/structarm__cfft__radix2__instance__q31.js | 10 + .../structarm__cfft__radix4__instance__f32.html | 283 + .../html/structarm__cfft__radix4__instance__f32.js | 11 + .../structarm__cfft__radix4__instance__q15.html | 264 + .../html/structarm__cfft__radix4__instance__q15.js | 10 + .../structarm__cfft__radix4__instance__q31.html | 264 + .../html/structarm__cfft__radix4__instance__q31.js | 10 + .../DSP/html/structarm__dct4__instance__f32.html | 264 + .../DSP/html/structarm__dct4__instance__f32.js | 10 + .../DSP/html/structarm__dct4__instance__q15.html | 264 + .../DSP/html/structarm__dct4__instance__q15.js | 10 + .../DSP/html/structarm__dct4__instance__q31.html | 264 + .../DSP/html/structarm__dct4__instance__q31.js | 10 + .../structarm__fir__decimate__instance__f32.html | 213 + .../structarm__fir__decimate__instance__f32.js | 7 + .../structarm__fir__decimate__instance__q15.html | 213 + .../structarm__fir__decimate__instance__q15.js | 7 + .../structarm__fir__decimate__instance__q31.html | 213 + .../structarm__fir__decimate__instance__q31.js | 7 + .../DSP/html/structarm__fir__instance__f32.html | 198 + .../DSP/html/structarm__fir__instance__f32.js | 6 + .../DSP/html/structarm__fir__instance__q15.html | 196 + .../DSP/html/structarm__fir__instance__q15.js | 6 + .../DSP/html/structarm__fir__instance__q31.html | 196 + .../DSP/html/structarm__fir__instance__q31.js | 6 + .../DSP/html/structarm__fir__instance__q7.html | 196 + .../DSP/html/structarm__fir__instance__q7.js | 6 + ...structarm__fir__interpolate__instance__f32.html | 213 + .../structarm__fir__interpolate__instance__f32.js | 7 + ...structarm__fir__interpolate__instance__q15.html | 213 + .../structarm__fir__interpolate__instance__q15.js | 7 + ...structarm__fir__interpolate__instance__q31.html | 213 + .../structarm__fir__interpolate__instance__q31.js | 7 + .../structarm__fir__lattice__instance__f32.html | 196 + .../html/structarm__fir__lattice__instance__f32.js | 6 + .../structarm__fir__lattice__instance__q15.html | 196 + .../html/structarm__fir__lattice__instance__q15.js | 6 + .../structarm__fir__lattice__instance__q31.html | 196 + .../html/structarm__fir__lattice__instance__q31.js | 6 + .../structarm__fir__sparse__instance__f32.html | 247 + .../html/structarm__fir__sparse__instance__f32.js | 9 + .../structarm__fir__sparse__instance__q15.html | 247 + .../html/structarm__fir__sparse__instance__q15.js | 9 + .../structarm__fir__sparse__instance__q31.html | 247 + .../html/structarm__fir__sparse__instance__q31.js | 9 + .../html/structarm__fir__sparse__instance__q7.html | 247 + .../html/structarm__fir__sparse__instance__q7.js | 9 + .../structarm__iir__lattice__instance__f32.html | 213 + .../html/structarm__iir__lattice__instance__f32.js | 7 + .../structarm__iir__lattice__instance__q15.html | 213 + .../html/structarm__iir__lattice__instance__q15.js | 7 + .../structarm__iir__lattice__instance__q31.html | 213 + .../html/structarm__iir__lattice__instance__q31.js | 7 + .../structarm__linear__interp__instance__f32.html | 215 + .../structarm__linear__interp__instance__f32.js | 7 + .../DSP/html/structarm__lms__instance__f32.html | 213 + .../DSP/html/structarm__lms__instance__f32.js | 7 + .../DSP/html/structarm__lms__instance__q15.html | 230 + .../DSP/html/structarm__lms__instance__q15.js | 8 + .../DSP/html/structarm__lms__instance__q31.html | 230 + .../DSP/html/structarm__lms__instance__q31.js | 8 + .../html/structarm__lms__norm__instance__f32.html | 249 + .../html/structarm__lms__norm__instance__f32.js | 9 + .../html/structarm__lms__norm__instance__q15.html | 281 + .../html/structarm__lms__norm__instance__q15.js | 11 + .../html/structarm__lms__norm__instance__q31.html | 281 + .../html/structarm__lms__norm__instance__q31.js | 11 + .../DSP/html/structarm__matrix__instance__f32.html | 198 + .../DSP/html/structarm__matrix__instance__f32.js | 6 + .../DSP/html/structarm__matrix__instance__f64.html | 196 + .../DSP/html/structarm__matrix__instance__f64.js | 6 + .../DSP/html/structarm__matrix__instance__q15.html | 196 + .../DSP/html/structarm__matrix__instance__q15.js | 6 + .../DSP/html/structarm__matrix__instance__q31.html | 196 + .../DSP/html/structarm__matrix__instance__q31.js | 6 + .../DSP/html/structarm__pid__instance__f32.html | 264 + .../DSP/html/structarm__pid__instance__f32.js | 10 + .../DSP/html/structarm__pid__instance__q15.html | 247 + .../DSP/html/structarm__pid__instance__q15.js | 9 + .../DSP/html/structarm__pid__instance__q31.html | 264 + .../DSP/html/structarm__pid__instance__q31.js | 10 + .../html/structarm__rfft__fast__instance__f32.html | 196 + .../html/structarm__rfft__fast__instance__f32.js | 6 + .../DSP/html/structarm__rfft__instance__f32.html | 281 + .../DSP/html/structarm__rfft__instance__f32.js | 11 + .../DSP/html/structarm__rfft__instance__q15.html | 264 + .../DSP/html/structarm__rfft__instance__q15.js | 10 + .../DSP/html/structarm__rfft__instance__q31.html | 264 + .../DSP/html/structarm__rfft__instance__q31.js | 10 + CMSIS/Documentation/DSP/html/sync_off.png | Bin 0 -> 853 bytes CMSIS/Documentation/DSP/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/DSP/html/tab_a.png | Bin 0 -> 142 bytes CMSIS/Documentation/DSP/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/DSP/html/tab_h.png | Bin 0 -> 177 bytes CMSIS/Documentation/DSP/html/tab_s.png | Bin 0 -> 184 bytes CMSIS/Documentation/DSP/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/DSP/html/tabs.css | 71 + CMSIS/Documentation/Driver/html/CAN_Bit_Timing.png | Bin 0 -> 11350 bytes CMSIS/Documentation/Driver/html/CAN_Node.png | Bin 0 -> 14612 bytes .../Documentation/Driver/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes CMSIS/Documentation/Driver/html/Driver.png | Bin 0 -> 112372 bytes .../Driver/html/EthernetSchematic.png | Bin 0 -> 8745 bytes .../Documentation/Driver/html/I2C_BlockDiagram.png | Bin 0 -> 9229 bytes .../Documentation/Driver/html/NAND_Schematics.png | Bin 0 -> 5256 bytes .../Driver/html/Non_blocking_transmit_small.png | Bin 0 -> 141513 bytes CMSIS/Documentation/Driver/html/SAI_Schematics.png | Bin 0 -> 7969 bytes CMSIS/Documentation/Driver/html/SD_1BitBusMode.png | Bin 0 -> 13407 bytes CMSIS/Documentation/Driver/html/SD_4BitBusMode.png | Bin 0 -> 15067 bytes CMSIS/Documentation/Driver/html/SPI_BusMode.png | Bin 0 -> 12799 bytes .../Driver/html/SPI_Master1Slaves.png | Bin 0 -> 3880 bytes .../Driver/html/SPI_Master3Slaves.png | Bin 0 -> 8733 bytes CMSIS/Documentation/Driver/html/USB_Schematics.png | Bin 0 -> 8555 bytes .../Driver/html/_driver___c_a_n_8c.html | 186 + .../Driver/html/_driver___c_a_n_8h.html | 607 ++ .../Driver/html/_driver___common_8c.html | 129 + .../Driver/html/_driver___common_8h.html | 206 + .../Driver/html/_driver___e_t_h_8c.html | 129 + .../Driver/html/_driver___e_t_h_8h.html | 254 + .../Driver/html/_driver___e_t_h___m_a_c_8c.html | 189 + .../Driver/html/_driver___e_t_h___m_a_c_8h.html | 361 + .../Driver/html/_driver___e_t_h___p_h_y_8c.html | 159 + .../Driver/html/_driver___e_t_h___p_h_y_8h.html | 283 + .../Driver/html/_driver___flash_8c.html | 171 + .../Driver/html/_driver___flash_8h.html | 246 + .../Driver/html/_driver___i2_c_8c.html | 174 + .../Driver/html/_driver___i2_c_8h.html | 227 + .../Driver/html/_driver___m_c_i_8c.html | 177 + .../Driver/html/_driver___m_c_i_8h.html | 467 ++ .../Driver/html/_driver___n_a_n_d_8c.html | 192 + .../Driver/html/_driver___n_a_n_d_8h.html | 894 +++ .../Driver/html/_driver___s_a_i_8c.html | 171 + .../Driver/html/_driver___s_a_i_8h.html | 813 +++ .../Driver/html/_driver___s_p_i_8c.html | 171 + .../Driver/html/_driver___s_p_i_8h.html | 471 ++ .../Driver/html/_driver___u_s_a_r_t_8c.html | 180 + .../Driver/html/_driver___u_s_a_r_t_8h.html | 562 ++ .../Driver/html/_driver___u_s_b_8c.html | 129 + .../Driver/html/_driver___u_s_b_8h.html | 620 ++ .../Driver/html/_driver___u_s_b_d_8c.html | 195 + .../Driver/html/_driver___u_s_b_d_8h.html | 200 + .../Driver/html/_driver___u_s_b_h_8c.html | 216 + .../Driver/html/_driver___u_s_b_h_8h.html | 375 + .../Driver/html/_driver_validation.html | 193 + CMSIS/Documentation/Driver/html/_general_8txt.html | 129 + .../Driver/html/_reference_implementation.html | 236 + .../Driver/html/_theory_operation.html | 391 ++ CMSIS/Documentation/Driver/html/annotated.html | 184 + CMSIS/Documentation/Driver/html/bc_s.png | Bin 0 -> 676 bytes CMSIS/Documentation/Driver/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/Driver/html/classes.html | 164 + CMSIS/Documentation/Driver/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/Driver/html/cmsis.css | 1269 ++++ .../html/dir_041cc4048c8229d7729b502626227b03.html | 163 + .../html/dir_7151b3cc910409bb744bd274374c738d.html | 135 + .../html/dir_9c39448ea46a8e15f1aabc7dec307fcf.html | 163 + CMSIS/Documentation/Driver/html/doxygen.css | 1172 ++++ CMSIS/Documentation/Driver/html/doxygen.png | Bin 0 -> 3779 bytes .../Driver/html/driver_revision_history.html | 154 + CMSIS/Documentation/Driver/html/driver_sai_i2s.png | Bin 0 -> 10353 bytes CMSIS/Documentation/Driver/html/driver_sai_lsb.png | Bin 0 -> 9001 bytes CMSIS/Documentation/Driver/html/driver_sai_msb.png | Bin 0 -> 10909 bytes CMSIS/Documentation/Driver/html/driver_sai_pcm.png | Bin 0 -> 11945 bytes .../Documentation/Driver/html/driver_sai_user.png | Bin 0 -> 29535 bytes CMSIS/Documentation/Driver/html/dynsections.js | 78 + CMSIS/Documentation/Driver/html/files.html | 162 + CMSIS/Documentation/Driver/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/Driver/html/ftv2cl.png | Bin 0 -> 453 bytes CMSIS/Documentation/Driver/html/ftv2doc.png | Bin 0 -> 746 bytes .../Documentation/Driver/html/ftv2folderclosed.png | Bin 0 -> 616 bytes CMSIS/Documentation/Driver/html/ftv2folderopen.png | Bin 0 -> 597 bytes CMSIS/Documentation/Driver/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/Driver/html/ftv2link.png | Bin 0 -> 746 bytes CMSIS/Documentation/Driver/html/ftv2mlastnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/Driver/html/ftv2mnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/Driver/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/Driver/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/Driver/html/ftv2ns.png | Bin 0 -> 388 bytes CMSIS/Documentation/Driver/html/ftv2plastnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/Driver/html/ftv2pnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/Driver/html/ftv2splitbar.png | Bin 0 -> 314 bytes CMSIS/Documentation/Driver/html/ftv2vertline.png | Bin 0 -> 86 bytes CMSIS/Documentation/Driver/html/functions.html | 190 + .../Documentation/Driver/html/functions_0x62.html | 180 + .../Documentation/Driver/html/functions_0x63.html | 258 + .../Documentation/Driver/html/functions_0x64.html | 248 + .../Documentation/Driver/html/functions_0x65.html | 279 + .../Documentation/Driver/html/functions_0x66.html | 177 + .../Documentation/Driver/html/functions_0x67.html | 253 + .../Documentation/Driver/html/functions_0x68.html | 168 + .../Documentation/Driver/html/functions_0x69.html | 192 + .../Documentation/Driver/html/functions_0x6c.html | 168 + .../Documentation/Driver/html/functions_0x6d.html | 216 + .../Documentation/Driver/html/functions_0x6e.html | 171 + .../Documentation/Driver/html/functions_0x6f.html | 177 + .../Documentation/Driver/html/functions_0x70.html | 261 + .../Documentation/Driver/html/functions_0x72.html | 244 + .../Documentation/Driver/html/functions_0x73.html | 262 + .../Documentation/Driver/html/functions_0x74.html | 201 + .../Documentation/Driver/html/functions_0x75.html | 207 + .../Documentation/Driver/html/functions_0x76.html | 197 + .../Documentation/Driver/html/functions_0x77.html | 177 + CMSIS/Documentation/Driver/html/functions_dup.js | 23 + .../Documentation/Driver/html/functions_vars.html | 190 + CMSIS/Documentation/Driver/html/functions_vars.js | 23 + .../Driver/html/functions_vars_0x62.html | 180 + .../Driver/html/functions_vars_0x63.html | 258 + .../Driver/html/functions_vars_0x64.html | 248 + .../Driver/html/functions_vars_0x65.html | 279 + .../Driver/html/functions_vars_0x66.html | 177 + .../Driver/html/functions_vars_0x67.html | 253 + .../Driver/html/functions_vars_0x68.html | 168 + .../Driver/html/functions_vars_0x69.html | 192 + .../Driver/html/functions_vars_0x6c.html | 168 + .../Driver/html/functions_vars_0x6d.html | 216 + .../Driver/html/functions_vars_0x6e.html | 171 + .../Driver/html/functions_vars_0x6f.html | 177 + .../Driver/html/functions_vars_0x70.html | 261 + .../Driver/html/functions_vars_0x72.html | 244 + .../Driver/html/functions_vars_0x73.html | 262 + .../Driver/html/functions_vars_0x74.html | 201 + .../Driver/html/functions_vars_0x75.html | 207 + .../Driver/html/functions_vars_0x76.html | 197 + .../Driver/html/functions_vars_0x77.html | 177 + CMSIS/Documentation/Driver/html/globals.html | 162 + CMSIS/Documentation/Driver/html/globals_0x63.html | 417 ++ CMSIS/Documentation/Driver/html/globals_0x64.html | 186 + CMSIS/Documentation/Driver/html/globals_0x65.html | 426 ++ CMSIS/Documentation/Driver/html/globals_0x66.html | 204 + CMSIS/Documentation/Driver/html/globals_0x69.html | 255 + CMSIS/Documentation/Driver/html/globals_0x6d.html | 432 ++ CMSIS/Documentation/Driver/html/globals_0x6e.html | 495 ++ CMSIS/Documentation/Driver/html/globals_0x70.html | 165 + CMSIS/Documentation/Driver/html/globals_0x73.html | 666 ++ CMSIS/Documentation/Driver/html/globals_0x75.html | 849 +++ CMSIS/Documentation/Driver/html/globals_defs.html | 161 + .../Driver/html/globals_defs_0x63.html | 290 + .../Driver/html/globals_defs_0x64.html | 185 + .../Driver/html/globals_defs_0x65.html | 329 + .../Driver/html/globals_defs_0x66.html | 164 + .../Driver/html/globals_defs_0x69.html | 212 + .../Driver/html/globals_defs_0x6d.html | 386 ++ .../Driver/html/globals_defs_0x6e.html | 434 ++ .../Driver/html/globals_defs_0x73.html | 587 ++ .../Driver/html/globals_defs_0x75.html | 626 ++ CMSIS/Documentation/Driver/html/globals_enum.html | 157 + CMSIS/Documentation/Driver/html/globals_eval.html | 220 + CMSIS/Documentation/Driver/html/globals_func.html | 739 ++ CMSIS/Documentation/Driver/html/globals_type.html | 190 + .../Driver/html/group___c_a_n__events.html | 196 + .../Driver/html/group___c_a_n__events.js | 6 + .../Driver/html/group___c_a_n__unit__events.html | 214 + .../Driver/html/group___c_a_n__unit__events.js | 7 + .../Driver/html/group___e_t_h___m_a_c__events.html | 210 + .../Driver/html/group___e_t_h___m_a_c__events.js | 7 + .../Driver/html/group___flash__events.html | 176 + .../Driver/html/group___flash__events.js | 5 + .../Driver/html/group___i2_c__events.html | 295 + .../Driver/html/group___i2_c__events.js | 12 + .../Driver/html/group___n_a_n_d__events.html | 210 + .../Driver/html/group___n_a_n_d__events.js | 7 + .../Driver/html/group___s_a_i__events.html | 227 + .../Driver/html/group___s_a_i__events.js | 8 + .../Driver/html/group___s_p_i__control.html | 167 + .../Driver/html/group___s_p_i__control.js | 9 + .../Driver/html/group___s_p_i__events.html | 193 + .../Driver/html/group___s_p_i__events.js | 6 + .../Driver/html/group___u_s_a_r_t__control.html | 175 + .../Driver/html/group___u_s_a_r_t__control.js | 11 + .../Driver/html/group___u_s_a_r_t__events.html | 380 ++ .../Driver/html/group___u_s_a_r_t__events.js | 17 + .../Driver/html/group___u_s_b__endpoint__type.html | 209 + .../Driver/html/group___u_s_b__endpoint__type.js | 7 + .../Driver/html/group___u_s_b__speed.html | 192 + .../Driver/html/group___u_s_b__speed.js | 6 + .../Driver/html/group___u_s_b_d__dev__events.html | 244 + .../Driver/html/group___u_s_b_d__dev__events.js | 9 + .../Driver/html/group___u_s_b_d__ep__events.html | 193 + .../Driver/html/group___u_s_b_d__ep__events.js | 6 + .../Driver/html/group___u_s_b_h__packets.html | 358 + .../Driver/html/group___u_s_b_h__packets.js | 15 + .../Driver/html/group___u_s_b_h__pipe__events.html | 261 + .../Driver/html/group___u_s_b_h__pipe__events.js | 10 + .../Driver/html/group___u_s_b_h__port__events.html | 261 + .../Driver/html/group___u_s_b_h__port__events.js | 10 + .../Driver/html/group__can__bus__mode__ctrls.html | 194 + .../Driver/html/group__can__bus__mode__ctrls.js | 11 + .../Driver/html/group__can__control.html | 166 + .../Driver/html/group__can__control.js | 9 + .../html/group__can__filter__operation__ctrls.html | 194 + .../html/group__can__filter__operation__ctrls.js | 11 + .../Driver/html/group__can__identifer__ctrls.html | 184 + .../Driver/html/group__can__identifer__ctrls.js | 5 + .../Driver/html/group__can__interface__gr.html | 1927 ++++++ .../Driver/html/group__can__interface__gr.js | 77 + .../Driver/html/group__can__mode__ctrls.html | 213 + .../Driver/html/group__can__mode__ctrls.js | 7 + .../html/group__can__obj__config__ctrls.html | 189 + .../Driver/html/group__can__obj__config__ctrls.js | 10 + .../html/group__can__status__code__ctrls.html | 294 + .../Driver/html/group__can__status__code__ctrls.js | 12 + .../Driver/html/group__can__timeseg__ctrls.html | 259 + .../Driver/html/group__can__timeseg__ctrls.js | 11 + .../Driver/html/group__common__drv__gr.html | 234 + .../Driver/html/group__common__drv__gr.js | 13 + .../Driver/html/group__eth__interface__gr.html | 359 + .../Driver/html/group__eth__interface__gr.js | 17 + .../Driver/html/group__eth__interface__types1.html | 200 + .../Driver/html/group__eth__interface__types1.js | 6 + .../group__eth__mac__configuration__ctrls.html | 328 + .../html/group__eth__mac__configuration__ctrls.js | 14 + .../Driver/html/group__eth__mac__control.html | 160 + .../Driver/html/group__eth__mac__control.js | 7 + .../Driver/html/group__eth__mac__ctrls.html | 248 + .../Driver/html/group__eth__mac__ctrls.js | 9 + .../html/group__eth__mac__flush__flag__ctrls.html | 175 + .../html/group__eth__mac__flush__flag__ctrls.js | 5 + .../group__eth__mac__frame__transmit__ctrls.html | 194 + .../group__eth__mac__frame__transmit__ctrls.js | 6 + .../html/group__eth__mac__interface__gr.html | 1487 ++++ .../Driver/html/group__eth__mac__interface__gr.js | 67 + .../html/group__eth__mac__time__control.html | 249 + .../Driver/html/group__eth__mac__time__control.js | 9 + .../html/group__eth__mac__vlan__filter__ctrls.html | 160 + .../html/group__eth__mac__vlan__filter__ctrls.js | 4 + .../html/group__eth__phy__interface__gr.html | 703 ++ .../Driver/html/group__eth__phy__interface__gr.js | 24 + .../Driver/html/group__eth__phy__mode__ctrls.html | 284 + .../Driver/html/group__eth__phy__mode__ctrls.js | 11 + .../Driver/html/group__execution__status.html | 271 + .../Driver/html/group__execution__status.js | 10 + .../Driver/html/group__flash__interface__gr.html | 1018 +++ .../Driver/html/group__flash__interface__gr.js | 51 + .../Driver/html/group__i2c__address__flags.html | 181 + .../Driver/html/group__i2c__address__flags.js | 5 + .../Driver/html/group__i2c__bus__speed__ctrls.html | 212 + .../Driver/html/group__i2c__bus__speed__ctrls.js | 7 + .../Driver/html/group__i2c__control__codes.html | 213 + .../Driver/html/group__i2c__control__codes.js | 7 + .../Driver/html/group__i2c__control__gr.html | 151 + .../Driver/html/group__i2c__control__gr.js | 5 + .../Driver/html/group__i2c__interface__gr.html | 1262 ++++ .../Driver/html/group__i2c__interface__gr.js | 45 + .../html/group__mci__bus__data__width__ctrls.html | 228 + .../html/group__mci__bus__data__width__ctrls.js | 8 + .../Driver/html/group__mci__bus__speed__ctrls.html | 267 + .../Driver/html/group__mci__bus__speed__ctrls.js | 10 + .../html/group__mci__card__power__ctrls.html | 261 + .../Driver/html/group__mci__card__power__ctrls.js | 10 + .../Driver/html/group__mci__cmd__line__ctrls.html | 175 + .../Driver/html/group__mci__cmd__line__ctrls.js | 5 + .../Driver/html/group__mci__control__gr.html | 164 + .../Driver/html/group__mci__control__gr.js | 8 + .../html/group__mci__driver__strength__ctrls.html | 214 + .../html/group__mci__driver__strength__ctrls.js | 7 + .../Driver/html/group__mci__event__gr.html | 340 + .../Driver/html/group__mci__event__gr.js | 14 + .../Driver/html/group__mci__interface__gr.html | 1509 +++++ .../Driver/html/group__mci__interface__gr.js | 79 + .../Driver/html/group__mci__mode__ctrls.html | 396 ++ .../Driver/html/group__mci__mode__ctrls.js | 18 + .../group__mci__send__command__flags__ctrls.html | 414 ++ .../group__mci__send__command__flags__ctrls.js | 19 + .../Driver/html/group__mci__transfer__ctrls.html | 210 + .../Driver/html/group__mci__transfer__ctrls.js | 7 + .../Driver/html/group__nand__bus__mode__codes.html | 515 ++ .../Driver/html/group__nand__bus__mode__codes.js | 25 + .../Driver/html/group__nand__control__codes.html | 226 + .../Driver/html/group__nand__control__codes.js | 8 + .../Driver/html/group__nand__control__gr.html | 152 + .../Driver/html/group__nand__control__gr.js | 7 + .../html/group__nand__data__bus__width__codes.html | 175 + .../html/group__nand__data__bus__width__codes.js | 5 + .../html/group__nand__driver__ecc__codes.html | 196 + .../Driver/html/group__nand__driver__ecc__codes.js | 6 + .../html/group__nand__driver__flag__codes.html | 158 + .../html/group__nand__driver__flag__codes.js | 4 + .../group__nand__driver__seq__exec__codes.html | 362 + .../html/group__nand__driver__seq__exec__codes.js | 16 + .../html/group__nand__driver__strength__codes.html | 209 + .../html/group__nand__driver__strength__codes.js | 7 + .../html/group__nand__execution__status.html | 159 + .../Driver/html/group__nand__execution__status.js | 4 + .../Driver/html/group__nand__interface__gr.html | 1868 +++++ .../Driver/html/group__nand__interface__gr.js | 87 + .../html/group__sai__bit__order__control.html | 174 + .../Driver/html/group__sai__bit__order__control.js | 5 + .../html/group__sai__clock__pol__control.html | 174 + .../Driver/html/group__sai__clock__pol__control.js | 5 + .../html/group__sai__companding__control.html | 191 + .../Driver/html/group__sai__companding__control.js | 6 + .../html/group__sai__configure__control.html | 197 + .../Driver/html/group__sai__configure__control.js | 15 + .../Driver/html/group__sai__control.html | 151 + .../Driver/html/group__sai__control.js | 5 + .../Driver/html/group__sai__controls.html | 284 + .../Driver/html/group__sai__controls.js | 11 + .../html/group__sai__data__bits__control.html | 161 + .../Driver/html/group__sai__data__bits__control.js | 4 + .../Driver/html/group__sai__execution__status.html | 453 ++ .../Driver/html/group__sai__execution__status.js | 20 + .../Driver/html/group__sai__frame__control.html | 233 + .../Driver/html/group__sai__frame__control.js | 8 + .../Driver/html/group__sai__interface__gr.html | 1257 ++++ .../Driver/html/group__sai__interface__gr.js | 52 + .../html/group__sai__mclk__pin__control.html | 191 + .../Driver/html/group__sai__mclk__pin__control.js | 6 + .../html/group__sai__mclk__pres__control.html | 161 + .../Driver/html/group__sai__mclk__pres__control.js | 4 + .../Driver/html/group__sai__mode__control.html | 174 + .../Driver/html/group__sai__mode__control.js | 5 + .../Driver/html/group__sai__mono__control.html | 157 + .../Driver/html/group__sai__mono__control.js | 4 + .../Driver/html/group__sai__protocol__control.html | 259 + .../Driver/html/group__sai__protocol__control.js | 10 + .../Driver/html/group__sai__slot__control.html | 233 + .../Driver/html/group__sai__slot__control.js | 8 + .../Driver/html/group__sai__sync__control.html | 174 + .../Driver/html/group__sai__sync__control.js | 5 + .../Driver/html/group__spi__bit__order__ctrls.html | 176 + .../Driver/html/group__spi__bit__order__ctrls.js | 5 + .../Driver/html/group__spi__data__bits__ctrls.html | 162 + .../Driver/html/group__spi__data__bits__ctrls.js | 4 + .../Driver/html/group__spi__execution__status.html | 231 + .../Driver/html/group__spi__execution__status.js | 8 + .../html/group__spi__frame__format__ctrls.html | 248 + .../html/group__spi__frame__format__ctrls.js | 9 + .../Driver/html/group__spi__interface__gr.html | 1171 ++++ .../Driver/html/group__spi__interface__gr.js | 43 + .../Driver/html/group__spi__misc__ctrls.html | 230 + .../Driver/html/group__spi__misc__ctrls.js | 8 + .../Driver/html/group__spi__mode__ctrls.html | 230 + .../Driver/html/group__spi__mode__ctrls.js | 8 + .../group__spi__slave__select__mode__ctrls.html | 255 + .../html/group__spi__slave__select__mode__ctrls.js | 9 + .../Driver/html/group__usart__clock__phase.html | 176 + .../Driver/html/group__usart__clock__phase.js | 5 + .../Driver/html/group__usart__clock__polarity.html | 176 + .../Driver/html/group__usart__clock__polarity.js | 5 + .../Driver/html/group__usart__data__bits.html | 230 + .../Driver/html/group__usart__data__bits.js | 8 + .../html/group__usart__execution__status.html | 285 + .../Driver/html/group__usart__execution__status.js | 11 + .../Driver/html/group__usart__flow__control.html | 212 + .../Driver/html/group__usart__flow__control.js | 7 + .../Driver/html/group__usart__interface__gr.html | 1546 +++++ .../Driver/html/group__usart__interface__gr.js | 82 + .../Driver/html/group__usart__misc__control.html | 338 + .../Driver/html/group__usart__misc__control.js | 14 + .../Driver/html/group__usart__mode__control.html | 248 + .../Driver/html/group__usart__mode__control.js | 9 + .../Driver/html/group__usart__parity__bit.html | 194 + .../Driver/html/group__usart__parity__bit.js | 6 + .../Driver/html/group__usart__stop__bits.html | 213 + .../Driver/html/group__usart__stop__bits.js | 7 + .../Driver/html/group__usb__interface__gr.html | 176 + .../Driver/html/group__usb__interface__gr.js | 7 + .../Driver/html/group__usbd__interface__gr.html | 1381 ++++ .../Driver/html/group__usbd__interface__gr.js | 57 + .../Driver/html/group__usbh__hci__gr.html | 577 ++ .../Driver/html/group__usbh__hci__gr.js | 22 + .../Driver/html/group__usbh__host__gr.html | 1497 ++++ .../Driver/html/group__usbh__host__gr.js | 61 + .../Driver/html/group__usbh__interface__gr.html | 148 + .../Driver/html/group__usbh__interface__gr.js | 5 + CMSIS/Documentation/Driver/html/image006.png | Bin 0 -> 289678 bytes CMSIS/Documentation/Driver/html/index.html | 160 + CMSIS/Documentation/Driver/html/jquery.js | 77 + CMSIS/Documentation/Driver/html/modules.html | 240 + CMSIS/Documentation/Driver/html/modules.js | 14 + .../Driver/html/msc_inline_mscgraph_1.png | Bin 0 -> 9034 bytes .../Driver/html/msc_inline_mscgraph_2.png | Bin 0 -> 9074 bytes CMSIS/Documentation/Driver/html/nav_f.png | Bin 0 -> 153 bytes CMSIS/Documentation/Driver/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/Driver/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/Driver/html/navtree.css | 143 + CMSIS/Documentation/Driver/html/navtree.js | 548 ++ CMSIS/Documentation/Driver/html/navtreeindex0.js | 253 + CMSIS/Documentation/Driver/html/navtreeindex1.js | 253 + CMSIS/Documentation/Driver/html/navtreeindex2.js | 253 + CMSIS/Documentation/Driver/html/navtreeindex3.js | 253 + CMSIS/Documentation/Driver/html/navtreeindex4.js | 253 + CMSIS/Documentation/Driver/html/navtreeindex5.js | 16 + CMSIS/Documentation/Driver/html/open.png | Bin 0 -> 123 bytes CMSIS/Documentation/Driver/html/pages.html | 136 + .../Driver/html/printComponentTabs.js | 36 + CMSIS/Documentation/Driver/html/resize.js | 93 + CMSIS/Documentation/Driver/html/search.css | 240 + CMSIS/Documentation/Driver/html/search/all_5f.html | 25 + CMSIS/Documentation/Driver/html/search/all_5f.js | 6 + CMSIS/Documentation/Driver/html/search/all_61.html | 25 + CMSIS/Documentation/Driver/html/search/all_61.js | 911 +++ CMSIS/Documentation/Driver/html/search/all_62.html | 25 + CMSIS/Documentation/Driver/html/search/all_62.js | 7 + CMSIS/Documentation/Driver/html/search/all_63.html | 25 + CMSIS/Documentation/Driver/html/search/all_63.js | 42 + CMSIS/Documentation/Driver/html/search/all_64.html | 25 + CMSIS/Documentation/Driver/html/search/all_64.js | 61 + CMSIS/Documentation/Driver/html/search/all_65.html | 25 + CMSIS/Documentation/Driver/html/search/all_65.js | 53 + CMSIS/Documentation/Driver/html/search/all_66.html | 25 + CMSIS/Documentation/Driver/html/search/all_66.js | 9 + CMSIS/Documentation/Driver/html/search/all_67.html | 25 + CMSIS/Documentation/Driver/html/search/all_67.js | 22 + CMSIS/Documentation/Driver/html/search/all_68.html | 25 + CMSIS/Documentation/Driver/html/search/all_68.js | 4 + CMSIS/Documentation/Driver/html/search/all_69.html | 25 + CMSIS/Documentation/Driver/html/search/all_69.js | 14 + CMSIS/Documentation/Driver/html/search/all_6c.html | 25 + CMSIS/Documentation/Driver/html/search/all_6c.js | 4 + CMSIS/Documentation/Driver/html/search/all_6d.html | 25 + CMSIS/Documentation/Driver/html/search/all_6d.js | 32 + CMSIS/Documentation/Driver/html/search/all_6e.html | 25 + CMSIS/Documentation/Driver/html/search/all_6e.js | 15 + CMSIS/Documentation/Driver/html/search/all_6f.html | 25 + CMSIS/Documentation/Driver/html/search/all_6f.js | 8 + CMSIS/Documentation/Driver/html/search/all_70.html | 25 + CMSIS/Documentation/Driver/html/search/all_70.js | 30 + CMSIS/Documentation/Driver/html/search/all_72.html | 25 + CMSIS/Documentation/Driver/html/search/all_72.js | 29 + CMSIS/Documentation/Driver/html/search/all_73.html | 25 + CMSIS/Documentation/Driver/html/search/all_73.js | 65 + CMSIS/Documentation/Driver/html/search/all_74.html | 25 + CMSIS/Documentation/Driver/html/search/all_74.js | 15 + CMSIS/Documentation/Driver/html/search/all_75.html | 25 + CMSIS/Documentation/Driver/html/search/all_75.js | 36 + CMSIS/Documentation/Driver/html/search/all_76.html | 25 + CMSIS/Documentation/Driver/html/search/all_76.js | 13 + CMSIS/Documentation/Driver/html/search/all_77.html | 25 + CMSIS/Documentation/Driver/html/search/all_77.js | 7 + .../Driver/html/search/classes_61.html | 25 + .../Documentation/Driver/html/search/classes_61.js | 48 + CMSIS/Documentation/Driver/html/search/close.png | Bin 0 -> 273 bytes .../Driver/html/search/defines_5f.html | 25 + .../Documentation/Driver/html/search/defines_5f.js | 6 + .../Driver/html/search/defines_61.html | 25 + .../Documentation/Driver/html/search/defines_61.js | 196 + .../Documentation/Driver/html/search/enums_61.html | 25 + CMSIS/Documentation/Driver/html/search/enums_61.js | 10 + .../Driver/html/search/enumvalues_61.html | 25 + .../Driver/html/search/enumvalues_61.js | 31 + .../Documentation/Driver/html/search/files_64.html | 25 + CMSIS/Documentation/Driver/html/search/files_64.js | 33 + .../Documentation/Driver/html/search/files_67.html | 25 + CMSIS/Documentation/Driver/html/search/files_67.js | 4 + .../Driver/html/search/functions_61.html | 25 + .../Driver/html/search/functions_61.js | 190 + .../Driver/html/search/groups_63.html | 25 + .../Documentation/Driver/html/search/groups_63.js | 14 + .../Driver/html/search/groups_65.html | 25 + .../Documentation/Driver/html/search/groups_65.js | 15 + .../Driver/html/search/groups_66.html | 25 + .../Documentation/Driver/html/search/groups_66.js | 5 + .../Driver/html/search/groups_69.html | 25 + .../Documentation/Driver/html/search/groups_69.js | 9 + .../Driver/html/search/groups_6d.html | 25 + .../Documentation/Driver/html/search/groups_6d.js | 15 + .../Driver/html/search/groups_6e.html | 25 + .../Documentation/Driver/html/search/groups_6e.js | 13 + .../Driver/html/search/groups_73.html | 25 + .../Documentation/Driver/html/search/groups_73.js | 35 + .../Driver/html/search/groups_75.html | 25 + .../Documentation/Driver/html/search/groups_75.js | 26 + CMSIS/Documentation/Driver/html/search/mag_sel.png | Bin 0 -> 563 bytes .../Driver/html/search/nomatches.html | 12 + .../Documentation/Driver/html/search/pages_64.html | 25 + CMSIS/Documentation/Driver/html/search/pages_64.js | 4 + .../Documentation/Driver/html/search/pages_6f.html | 25 + CMSIS/Documentation/Driver/html/search/pages_6f.js | 4 + .../Documentation/Driver/html/search/pages_72.html | 25 + CMSIS/Documentation/Driver/html/search/pages_72.js | 5 + .../Documentation/Driver/html/search/pages_74.html | 25 + CMSIS/Documentation/Driver/html/search/pages_74.js | 4 + CMSIS/Documentation/Driver/html/search/search.css | 240 + CMSIS/Documentation/Driver/html/search/search.js | 815 +++ .../Documentation/Driver/html/search/search_l.png | Bin 0 -> 604 bytes .../Documentation/Driver/html/search/search_m.png | Bin 0 -> 158 bytes .../Documentation/Driver/html/search/search_r.png | Bin 0 -> 612 bytes .../Driver/html/search/typedefs_61.html | 25 + .../Driver/html/search/typedefs_61.js | 21 + .../Driver/html/search/variables_61.html | 25 + .../Driver/html/search/variables_61.js | 11 + .../Driver/html/search/variables_62.html | 25 + .../Driver/html/search/variables_62.js | 7 + .../Driver/html/search/variables_63.html | 25 + .../Driver/html/search/variables_63.js | 31 + .../Driver/html/search/variables_64.html | 25 + .../Driver/html/search/variables_64.js | 30 + .../Driver/html/search/variables_65.html | 25 + .../Driver/html/search/variables_65.js | 41 + .../Driver/html/search/variables_66.html | 25 + .../Driver/html/search/variables_66.js | 7 + .../Driver/html/search/variables_67.html | 25 + .../Driver/html/search/variables_67.js | 21 + .../Driver/html/search/variables_68.html | 25 + .../Driver/html/search/variables_68.js | 4 + .../Driver/html/search/variables_69.html | 25 + .../Driver/html/search/variables_69.js | 8 + .../Driver/html/search/variables_6c.html | 25 + .../Driver/html/search/variables_6c.js | 4 + .../Driver/html/search/variables_6d.html | 25 + .../Driver/html/search/variables_6d.js | 20 + .../Driver/html/search/variables_6e.html | 25 + .../Driver/html/search/variables_6e.js | 5 + .../Driver/html/search/variables_6f.html | 25 + .../Driver/html/search/variables_6f.js | 7 + .../Driver/html/search/variables_70.html | 25 + .../Driver/html/search/variables_70.js | 30 + .../Driver/html/search/variables_72.html | 25 + .../Driver/html/search/variables_72.js | 27 + .../Driver/html/search/variables_73.html | 25 + .../Driver/html/search/variables_73.js | 33 + .../Driver/html/search/variables_74.html | 25 + .../Driver/html/search/variables_74.js | 14 + .../Driver/html/search/variables_75.html | 25 + .../Driver/html/search/variables_75.js | 13 + .../Driver/html/search/variables_76.html | 25 + .../Driver/html/search/variables_76.js | 13 + .../Driver/html/search/variables_77.html | 25 + .../Driver/html/search/variables_77.js | 7 + CMSIS/Documentation/Driver/html/sync_off.png | Bin 0 -> 853 bytes CMSIS/Documentation/Driver/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/Driver/html/tab_a.png | Bin 0 -> 142 bytes CMSIS/Documentation/Driver/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/Driver/html/tab_h.png | Bin 0 -> 177 bytes CMSIS/Documentation/Driver/html/tab_s.png | Bin 0 -> 184 bytes CMSIS/Documentation/Driver/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/Driver/html/tabs.css | 71 + .../html/CMSIS_END_USER_LICENCE_AGREEMENT.pdf | Bin 0 -> 179946 bytes .../General/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes CMSIS/Documentation/General/html/CMSISv4_small.png | Bin 0 -> 125160 bytes .../General/html/_c_m_revision_history.html | 165 + CMSIS/Documentation/General/html/bc_s.png | Bin 0 -> 676 bytes CMSIS/Documentation/General/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/General/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/General/html/cmsis.css | 1269 ++++ CMSIS/Documentation/General/html/doxygen.css | 1172 ++++ CMSIS/Documentation/General/html/doxygen.png | Bin 0 -> 3779 bytes CMSIS/Documentation/General/html/dynsections.js | 78 + CMSIS/Documentation/General/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/General/html/ftv2cl.png | Bin 0 -> 453 bytes CMSIS/Documentation/General/html/ftv2doc.png | Bin 0 -> 746 bytes .../General/html/ftv2folderclosed.png | Bin 0 -> 616 bytes .../Documentation/General/html/ftv2folderopen.png | Bin 0 -> 597 bytes CMSIS/Documentation/General/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/General/html/ftv2link.png | Bin 0 -> 746 bytes CMSIS/Documentation/General/html/ftv2mlastnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/General/html/ftv2mnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/General/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/General/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/General/html/ftv2ns.png | Bin 0 -> 388 bytes CMSIS/Documentation/General/html/ftv2plastnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/General/html/ftv2pnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/General/html/ftv2splitbar.png | Bin 0 -> 314 bytes CMSIS/Documentation/General/html/ftv2vertline.png | Bin 0 -> 86 bytes CMSIS/Documentation/General/html/index.html | 215 + CMSIS/Documentation/General/html/jquery.js | 77 + CMSIS/Documentation/General/html/nav_f.png | Bin 0 -> 153 bytes CMSIS/Documentation/General/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/General/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/General/html/navtree.css | 143 + CMSIS/Documentation/General/html/navtree.js | 511 ++ CMSIS/Documentation/General/html/navtreeindex0.js | 7 + CMSIS/Documentation/General/html/open.png | Bin 0 -> 123 bytes CMSIS/Documentation/General/html/pages.html | 94 + .../General/html/printComponentTabs.js | 36 + CMSIS/Documentation/General/html/resize.js | 93 + CMSIS/Documentation/General/html/sync_off.png | Bin 0 -> 853 bytes CMSIS/Documentation/General/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/General/html/tab_a.png | Bin 0 -> 142 bytes CMSIS/Documentation/General/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/General/html/tab_h.png | Bin 0 -> 177 bytes CMSIS/Documentation/General/html/tab_s.png | Bin 0 -> 184 bytes CMSIS/Documentation/General/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/General/html/tabs.css | 71 + CMSIS/Documentation/Pack/html/BSPBundleDisplay.png | Bin 0 -> 27165 bytes CMSIS/Documentation/Pack/html/BasicDFPDisplay.png | Bin 0 -> 20924 bytes .../Pack/html/BoardsSectionMCB1500.png | Bin 0 -> 88016 bytes CMSIS/Documentation/Pack/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes CMSIS/Documentation/Pack/html/CodeVerify.png | Bin 0 -> 18957 bytes CMSIS/Documentation/Pack/html/ComponentDisplay.png | Bin 0 -> 140038 bytes .../Pack/html/Component_Instances.png | Bin 0 -> 304610 bytes .../Documentation/Pack/html/ConditionsDisplay.png | Bin 0 -> 18273 bytes CMSIS/Documentation/Pack/html/DFPFlow.png | Bin 0 -> 78587 bytes CMSIS/Documentation/Pack/html/DebugConnect.png | Bin 0 -> 104597 bytes CMSIS/Documentation/Pack/html/DebugDisconnect.png | Bin 0 -> 41800 bytes CMSIS/Documentation/Pack/html/DevBoardDisplay.png | Bin 0 -> 25592 bytes CMSIS/Documentation/Pack/html/DeviceDatabase2.png | Bin 0 -> 45952 bytes CMSIS/Documentation/Pack/html/ExampleDisplay.png | Bin 0 -> 23165 bytes CMSIS/Documentation/Pack/html/FPADisplay.png | Bin 0 -> 16485 bytes CMSIS/Documentation/Pack/html/FPATargetOptions.png | Bin 0 -> 19281 bytes .../Documentation/Pack/html/LocalInstallation.png | Bin 0 -> 33762 bytes CMSIS/Documentation/Pack/html/MVCM3SpecTable.png | Bin 0 -> 38408 bytes .../Pack/html/PDSC_Example_bottom.png | Bin 0 -> 417074 bytes CMSIS/Documentation/Pack/html/PDSC_Example_top.png | Bin 0 -> 244045 bytes CMSIS/Documentation/Pack/html/PackCreateSteps.png | Bin 0 -> 57612 bytes .../Pack/html/RTX_Conf_CM_Wizard_View.png | Bin 0 -> 25399 bytes CMSIS/Documentation/Pack/html/Reset.png | Bin 0 -> 63109 bytes CMSIS/Documentation/Pack/html/SPVariants_small.png | Bin 0 -> 42974 bytes CMSIS/Documentation/Pack/html/SVDFlow.png | Bin 0 -> 32030 bytes CMSIS/Documentation/Pack/html/SVDIncluded.png | Bin 0 -> 25718 bytes .../Pack/html/StartupSystemFilesAdded.png | Bin 0 -> 6653 bytes .../Documentation/Pack/html/SystemStartupFiles.png | Bin 0 -> 40891 bytes .../Pack/html/UserCodeTemplatesDisplay.png | Bin 0 -> 38332 bytes CMSIS/Documentation/Pack/html/VariantDisplay.png | Bin 0 -> 30798 bytes CMSIS/Documentation/Pack/html/WebInstallation.png | Bin 0 -> 59702 bytes CMSIS/Documentation/Pack/html/_algorithm_func.html | 422 ++ CMSIS/Documentation/Pack/html/_c_p__editors.html | 134 + CMSIS/Documentation/Pack/html/_c_p__packs.html | 211 + .../Pack/html/_c_p__s_w_components.html | 545 ++ .../Documentation/Pack/html/_c_p__z_i_p_tool.html | 130 + CMSIS/Documentation/Pack/html/_config_wizard.html | 420 ++ .../Pack/html/_create_pack__d_f_p.html | 533 ++ .../Pack/html/_create_pack_board.html | 256 + .../Pack/html/_create_pack_publish.html | 172 + .../Documentation/Pack/html/_create_pack_util.html | 134 + CMSIS/Documentation/Pack/html/_create_pack_util.js | 8 + .../Documentation/Pack/html/_flash_algorithm.html | 200 + CMSIS/Documentation/Pack/html/_flash_algorithm.js | 14 + CMSIS/Documentation/Pack/html/_pack__example.html | 237 + CMSIS/Documentation/Pack/html/_pack_chk.html | 477 ++ CMSIS/Documentation/Pack/html/_pack_format.html | 221 + CMSIS/Documentation/Pack/html/_pack_format.js | 73 + CMSIS/Documentation/Pack/html/bc_s.png | Bin 0 -> 676 bytes CMSIS/Documentation/Pack/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/Pack/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/Pack/html/cmsis.css | 1269 ++++ CMSIS/Documentation/Pack/html/component_files.png | Bin 0 -> 86770 bytes CMSIS/Documentation/Pack/html/doxygen.css | 1172 ++++ CMSIS/Documentation/Pack/html/doxygen.png | Bin 0 -> 3779 bytes CMSIS/Documentation/Pack/html/dynsections.js | 78 + .../Documentation/Pack/html/element_keywords.html | 152 + .../Documentation/Pack/html/element_releases.html | 181 + .../Documentation/Pack/html/element_taxonomy.html | 259 + CMSIS/Documentation/Pack/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/Pack/html/ftv2cl.png | Bin 0 -> 453 bytes CMSIS/Documentation/Pack/html/ftv2doc.png | Bin 0 -> 746 bytes CMSIS/Documentation/Pack/html/ftv2folderclosed.png | Bin 0 -> 616 bytes CMSIS/Documentation/Pack/html/ftv2folderopen.png | Bin 0 -> 597 bytes CMSIS/Documentation/Pack/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/Pack/html/ftv2link.png | Bin 0 -> 746 bytes CMSIS/Documentation/Pack/html/ftv2mlastnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/Pack/html/ftv2mnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/Pack/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/Pack/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/Pack/html/ftv2ns.png | Bin 0 -> 388 bytes CMSIS/Documentation/Pack/html/ftv2plastnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/Pack/html/ftv2pnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/Pack/html/ftv2splitbar.png | Bin 0 -> 314 bytes CMSIS/Documentation/Pack/html/ftv2vertline.png | Bin 0 -> 86 bytes CMSIS/Documentation/Pack/html/index.html | 177 + CMSIS/Documentation/Pack/html/jquery.js | 77 + .../Pack/html/maxInstancesDisplay.png | Bin 0 -> 67489 bytes CMSIS/Documentation/Pack/html/nav_f.png | Bin 0 -> 153 bytes CMSIS/Documentation/Pack/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/Pack/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/Pack/html/navtree.css | 143 + CMSIS/Documentation/Pack/html/navtree.js | 556 ++ CMSIS/Documentation/Pack/html/navtreeindex0.js | 148 + CMSIS/Documentation/Pack/html/open.png | Bin 0 -> 123 bytes .../Pack/html/pack_revision_history.html | 199 + CMSIS/Documentation/Pack/html/pages.html | 161 + .../Pack/html/pdsc__sequence_name_enum_pg.html | 499 ++ CMSIS/Documentation/Pack/html/pdsc_apis_pg.html | 200 + CMSIS/Documentation/Pack/html/pdsc_boards_pg.html | 503 ++ .../Pack/html/pdsc_components_pg.html | 523 ++ .../Pack/html/pdsc_conditions_pg.html | 316 + CMSIS/Documentation/Pack/html/pdsc_devices_pg.html | 251 + CMSIS/Documentation/Pack/html/pdsc_devices_pg.js | 34 + .../Documentation/Pack/html/pdsc_examples_pg.html | 334 + CMSIS/Documentation/Pack/html/pdsc_family_pg.html | 2421 +++++++ .../Pack/html/pdsc_generators_pg.html | 442 ++ CMSIS/Documentation/Pack/html/pdsc_package_pg.html | 263 + .../Documentation/Pack/html/printComponentTabs.js | 36 + CMSIS/Documentation/Pack/html/resize.js | 93 + CMSIS/Documentation/Pack/html/search/all_61.html | 25 + CMSIS/Documentation/Pack/html/search/all_61.js | 4 + CMSIS/Documentation/Pack/html/search/all_63.html | 25 + CMSIS/Documentation/Pack/html/search/all_63.js | 5 + CMSIS/Documentation/Pack/html/search/all_64.html | 25 + CMSIS/Documentation/Pack/html/search/all_64.js | 4 + CMSIS/Documentation/Pack/html/search/all_66.html | 25 + CMSIS/Documentation/Pack/html/search/all_66.js | 4 + CMSIS/Documentation/Pack/html/search/all_70.html | 25 + CMSIS/Documentation/Pack/html/search/all_70.js | 10 + CMSIS/Documentation/Pack/html/search/all_72.html | 25 + CMSIS/Documentation/Pack/html/search/all_72.js | 4 + CMSIS/Documentation/Pack/html/search/all_75.html | 25 + CMSIS/Documentation/Pack/html/search/all_75.js | 4 + CMSIS/Documentation/Pack/html/search/all_78.html | 25 + CMSIS/Documentation/Pack/html/search/all_78.js | 4 + CMSIS/Documentation/Pack/html/search/all_7a.html | 25 + CMSIS/Documentation/Pack/html/search/all_7a.js | 4 + CMSIS/Documentation/Pack/html/search/close.png | Bin 0 -> 273 bytes CMSIS/Documentation/Pack/html/search/mag_sel.png | Bin 0 -> 563 bytes .../Documentation/Pack/html/search/nomatches.html | 12 + CMSIS/Documentation/Pack/html/search/pages_61.html | 25 + CMSIS/Documentation/Pack/html/search/pages_61.js | 4 + CMSIS/Documentation/Pack/html/search/pages_63.html | 25 + CMSIS/Documentation/Pack/html/search/pages_63.js | 5 + CMSIS/Documentation/Pack/html/search/pages_64.html | 25 + CMSIS/Documentation/Pack/html/search/pages_64.js | 4 + CMSIS/Documentation/Pack/html/search/pages_66.html | 25 + CMSIS/Documentation/Pack/html/search/pages_66.js | 4 + CMSIS/Documentation/Pack/html/search/pages_70.html | 25 + CMSIS/Documentation/Pack/html/search/pages_70.js | 10 + CMSIS/Documentation/Pack/html/search/pages_72.html | 25 + CMSIS/Documentation/Pack/html/search/pages_72.js | 4 + CMSIS/Documentation/Pack/html/search/pages_75.html | 25 + CMSIS/Documentation/Pack/html/search/pages_75.js | 4 + CMSIS/Documentation/Pack/html/search/pages_78.html | 25 + CMSIS/Documentation/Pack/html/search/pages_78.js | 4 + CMSIS/Documentation/Pack/html/search/pages_7a.html | 25 + CMSIS/Documentation/Pack/html/search/pages_7a.js | 4 + CMSIS/Documentation/Pack/html/search/search.css | 240 + CMSIS/Documentation/Pack/html/search/search.js | 797 +++ CMSIS/Documentation/Pack/html/search/search_l.png | Bin 0 -> 604 bytes CMSIS/Documentation/Pack/html/search/search_m.png | Bin 0 -> 158 bytes CMSIS/Documentation/Pack/html/search/search_r.png | Bin 0 -> 612 bytes CMSIS/Documentation/Pack/html/simplepack_rte.png | Bin 0 -> 27738 bytes CMSIS/Documentation/Pack/html/sync_off.png | Bin 0 -> 853 bytes CMSIS/Documentation/Pack/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/Pack/html/tab_a.png | Bin 0 -> 142 bytes CMSIS/Documentation/Pack/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/Pack/html/tab_h.png | Bin 0 -> 177 bytes CMSIS/Documentation/Pack/html/tab_s.png | Bin 0 -> 184 bytes CMSIS/Documentation/Pack/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/Pack/html/tabs.css | 71 + CMSIS/Documentation/RTOS/html/API_Structure.png | Bin 0 -> 9200 bytes CMSIS/Documentation/RTOS/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes CMSIS/Documentation/RTOS/html/CMSIS_RTOS_Files.png | Bin 0 -> 15706 bytes CMSIS/Documentation/RTOS/html/MailQueue.png | Bin 0 -> 14737 bytes CMSIS/Documentation/RTOS/html/MessageQueue.png | Bin 0 -> 11898 bytes CMSIS/Documentation/RTOS/html/Mutex.png | Bin 0 -> 8034 bytes CMSIS/Documentation/RTOS/html/Semaphore.png | Bin 0 -> 16954 bytes CMSIS/Documentation/RTOS/html/ThreadStatus.png | Bin 0 -> 20521 bytes CMSIS/Documentation/RTOS/html/Timer.png | Bin 0 -> 13428 bytes .../RTOS/html/_function_overview.html | 204 + CMSIS/Documentation/RTOS/html/_using_o_s.html | 134 + CMSIS/Documentation/RTOS/html/annotated.html | 110 + CMSIS/Documentation/RTOS/html/annotated.js | 10 + CMSIS/Documentation/RTOS/html/bc_s.png | Bin 0 -> 676 bytes CMSIS/Documentation/RTOS/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/RTOS/html/classes.html | 106 + CMSIS/Documentation/RTOS/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/RTOS/html/cmsis.css | 1269 ++++ CMSIS/Documentation/RTOS/html/cmsis__os_8h.html | 689 ++ CMSIS/Documentation/RTOS/html/cmsis__os_8txt.html | 156 + CMSIS/Documentation/RTOS/html/cmsis_os_h.html | 826 +++ .../html/dir_67baed4ff719a838d401a6dc7774cf41.html | 97 + .../html/dir_9afdeffb8e409a4e0df5c5bf9ab1a7d2.html | 97 + CMSIS/Documentation/RTOS/html/doxygen.css | 1172 ++++ CMSIS/Documentation/RTOS/html/doxygen.png | Bin 0 -> 3779 bytes CMSIS/Documentation/RTOS/html/dynsections.js | 78 + CMSIS/Documentation/RTOS/html/files.html | 95 + CMSIS/Documentation/RTOS/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTOS/html/ftv2cl.png | Bin 0 -> 453 bytes CMSIS/Documentation/RTOS/html/ftv2doc.png | Bin 0 -> 746 bytes CMSIS/Documentation/RTOS/html/ftv2folderclosed.png | Bin 0 -> 616 bytes CMSIS/Documentation/RTOS/html/ftv2folderopen.png | Bin 0 -> 597 bytes CMSIS/Documentation/RTOS/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTOS/html/ftv2link.png | Bin 0 -> 746 bytes CMSIS/Documentation/RTOS/html/ftv2mlastnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/RTOS/html/ftv2mnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/RTOS/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/RTOS/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTOS/html/ftv2ns.png | Bin 0 -> 388 bytes CMSIS/Documentation/RTOS/html/ftv2plastnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/RTOS/html/ftv2pnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/RTOS/html/ftv2splitbar.png | Bin 0 -> 314 bytes CMSIS/Documentation/RTOS/html/ftv2vertline.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTOS/html/functions.html | 161 + CMSIS/Documentation/RTOS/html/functions_vars.html | 161 + CMSIS/Documentation/RTOS/html/globals.html | 423 ++ CMSIS/Documentation/RTOS/html/globals_defs.html | 182 + CMSIS/Documentation/RTOS/html/globals_enum.html | 110 + CMSIS/Documentation/RTOS/html/globals_eval.html | 173 + CMSIS/Documentation/RTOS/html/globals_func.html | 225 + CMSIS/Documentation/RTOS/html/globals_type.html | 125 + .../RTOS/html/group___c_m_s_i_s___r_t_o_s.html | 122 + .../RTOS/html/group___c_m_s_i_s___r_t_o_s.js | 10 + .../group___c_m_s_i_s___r_t_o_s___definitions.html | 260 + .../group___c_m_s_i_s___r_t_o_s___definitions.js | 14 + ...group___c_m_s_i_s___r_t_o_s___inter_thread.html | 133 + .../group___c_m_s_i_s___r_t_o_s___inter_thread.js | 9 + .../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html | 429 ++ .../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js | 14 + .../html/group___c_m_s_i_s___r_t_o_s___mail.html | 594 ++ .../html/group___c_m_s_i_s___r_t_o_s___mail.js | 12 + .../group___c_m_s_i_s___r_t_o_s___message.html | 451 ++ .../html/group___c_m_s_i_s___r_t_o_s___message.js | 9 + .../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html | 405 ++ .../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js | 9 + .../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html | 456 ++ .../group___c_m_s_i_s___r_t_o_s___pool_mgmt.js | 10 + ...oup___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html | 424 ++ ...group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js | 10 + .../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html | 337 + .../group___c_m_s_i_s___r_t_o_s___signal_mgmt.js | 7 + .../html/group___c_m_s_i_s___r_t_o_s___status.html | 198 + .../html/group___c_m_s_i_s___r_t_o_s___status.js | 20 + .../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html | 580 ++ .../group___c_m_s_i_s___r_t_o_s___thread_mgmt.js | 21 + .../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html | 498 ++ .../group___c_m_s_i_s___r_t_o_s___timer_mgmt.js | 13 + .../html/group___c_m_s_i_s___r_t_o_s___wait.html | 254 + .../html/group___c_m_s_i_s___r_t_o_s___wait.js | 6 + CMSIS/Documentation/RTOS/html/index.html | 148 + CMSIS/Documentation/RTOS/html/jquery.js | 77 + CMSIS/Documentation/RTOS/html/modules.html | 108 + CMSIS/Documentation/RTOS/html/modules.js | 4 + CMSIS/Documentation/RTOS/html/nav_f.png | Bin 0 -> 153 bytes CMSIS/Documentation/RTOS/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/RTOS/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/RTOS/html/navtree.css | 143 + CMSIS/Documentation/RTOS/html/navtree.js | 527 ++ CMSIS/Documentation/RTOS/html/navtreeindex0.js | 161 + CMSIS/Documentation/RTOS/html/open.png | Bin 0 -> 123 bytes CMSIS/Documentation/RTOS/html/pages.html | 99 + .../Documentation/RTOS/html/printComponentTabs.js | 36 + CMSIS/Documentation/RTOS/html/resize.js | 93 + .../RTOS/html/rtos_revision_history.html | 114 + CMSIS/Documentation/RTOS/html/simple_signal.png | Bin 0 -> 10667 bytes .../RTOS/html/structos_mail_q_def__t.html | 155 + .../RTOS/html/structos_mail_q_def__t.js | 6 + .../RTOS/html/structos_message_q_def__t.html | 155 + .../RTOS/html/structos_message_q_def__t.js | 6 + .../RTOS/html/structos_mutex_def__t.html | 125 + .../RTOS/html/structos_mutex_def__t.js | 4 + .../RTOS/html/structos_pool_def__t.html | 155 + .../RTOS/html/structos_pool_def__t.js | 6 + .../RTOS/html/structos_semaphore_def__t.html | 125 + .../RTOS/html/structos_semaphore_def__t.js | 4 + .../RTOS/html/structos_thread_def__t.html | 170 + .../RTOS/html/structos_thread_def__t.js | 7 + .../RTOS/html/structos_timer_def__t.html | 125 + .../RTOS/html/structos_timer_def__t.js | 4 + CMSIS/Documentation/RTOS/html/sync_off.png | Bin 0 -> 853 bytes CMSIS/Documentation/RTOS/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/RTOS/html/tab_a.png | Bin 0 -> 142 bytes CMSIS/Documentation/RTOS/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/RTOS/html/tab_h.png | Bin 0 -> 177 bytes CMSIS/Documentation/RTOS/html/tab_s.png | Bin 0 -> 184 bytes CMSIS/Documentation/RTOS/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/RTOS/html/tabs.css | 71 + CMSIS/Documentation/RTX/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes CMSIS/Documentation/RTX/html/MailQueue.png | Bin 0 -> 14737 bytes CMSIS/Documentation/RTX/html/MessageQueue.png | Bin 0 -> 11898 bytes CMSIS/Documentation/RTX/html/Mutex.png | Bin 0 -> 8034 bytes CMSIS/Documentation/RTX/html/RTX_Structure.png | Bin 0 -> 12738 bytes CMSIS/Documentation/RTX/html/Semaphore.png | Bin 0 -> 16954 bytes CMSIS/Documentation/RTX/html/ThreadStatus.png | Bin 0 -> 20521 bytes CMSIS/Documentation/RTX/html/Timer.png | Bin 0 -> 13428 bytes CMSIS/Documentation/RTX/html/_configure.html | 146 + CMSIS/Documentation/RTX/html/_configure.js | 21 + .../RTX/html/_creating__r_t_x__l_i_b.html | 142 + .../RTX/html/_example_r_t_x__tutorial.html | 131 + CMSIS/Documentation/RTX/html/_files.html | 505 ++ .../Documentation/RTX/html/_function_overview.html | 256 + CMSIS/Documentation/RTX/html/_low_power.html | 204 + .../RTX/html/_m_i_s_r_a_compliance.html | 173 + CMSIS/Documentation/RTX/html/_overview.html | 159 + CMSIS/Documentation/RTX/html/_overview.js | 18 + .../RTX/html/_r_t_x___conf___c_m_8c.html | 499 ++ CMSIS/Documentation/RTX/html/_s_v_c_functions.html | 167 + CMSIS/Documentation/RTX/html/_system_config.html | 187 + CMSIS/Documentation/RTX/html/_technical_data.html | 211 + CMSIS/Documentation/RTX/html/_theory.html | 171 + CMSIS/Documentation/RTX/html/_thread_config.html | 181 + CMSIS/Documentation/RTX/html/_timer_tick.html | 225 + CMSIS/Documentation/RTX/html/_using.html | 190 + CMSIS/Documentation/RTX/html/add_item.png | Bin 0 -> 71569 bytes CMSIS/Documentation/RTX/html/annotated.html | 148 + CMSIS/Documentation/RTX/html/annotated.js | 10 + CMSIS/Documentation/RTX/html/bc_s.png | Bin 0 -> 676 bytes CMSIS/Documentation/RTX/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/RTX/html/classes.html | 144 + CMSIS/Documentation/RTX/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/RTX/html/cmsis.css | 1269 ++++ CMSIS/Documentation/RTX/html/cmsis__os_8h.html | 744 ++ .../RTX/html/cmsis__os__api_8txt.html | 194 + CMSIS/Documentation/RTX/html/config_wizard.png | Bin 0 -> 37469 bytes CMSIS/Documentation/RTX/html/doxygen.png | Bin 0 -> 3779 bytes CMSIS/Documentation/RTX/html/dynsections.js | 78 + CMSIS/Documentation/RTX/html/files.html | 134 + CMSIS/Documentation/RTX/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTX/html/ftv2cl.png | Bin 0 -> 453 bytes CMSIS/Documentation/RTX/html/ftv2doc.png | Bin 0 -> 746 bytes CMSIS/Documentation/RTX/html/ftv2folderclosed.png | Bin 0 -> 616 bytes CMSIS/Documentation/RTX/html/ftv2folderopen.png | Bin 0 -> 597 bytes CMSIS/Documentation/RTX/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTX/html/ftv2link.png | Bin 0 -> 746 bytes CMSIS/Documentation/RTX/html/ftv2mlastnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/RTX/html/ftv2mnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/RTX/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/RTX/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTX/html/ftv2ns.png | Bin 0 -> 388 bytes CMSIS/Documentation/RTX/html/ftv2plastnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/RTX/html/ftv2pnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/RTX/html/ftv2splitbar.png | Bin 0 -> 314 bytes CMSIS/Documentation/RTX/html/ftv2vertline.png | Bin 0 -> 86 bytes CMSIS/Documentation/RTX/html/functions.html | 203 + CMSIS/Documentation/RTX/html/functions_vars.html | 203 + CMSIS/Documentation/RTX/html/globals.html | 562 ++ CMSIS/Documentation/RTX/html/globals_defs.html | 299 + CMSIS/Documentation/RTX/html/globals_enum.html | 148 + CMSIS/Documentation/RTX/html/globals_eval.html | 211 + CMSIS/Documentation/RTX/html/globals_func.html | 292 + CMSIS/Documentation/RTX/html/globals_type.html | 163 + .../RTX/html/group___c_m_s_i_s___r_t_o_s.html | 178 + .../RTX/html/group___c_m_s_i_s___r_t_o_s.js | 16 + .../group___c_m_s_i_s___r_t_o_s___definitions.html | 297 + .../group___c_m_s_i_s___r_t_o_s___definitions.js | 14 + .../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html | 452 ++ .../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js | 14 + .../html/group___c_m_s_i_s___r_t_o_s___mail.html | 586 ++ .../RTX/html/group___c_m_s_i_s___r_t_o_s___mail.js | 12 + .../group___c_m_s_i_s___r_t_o_s___message.html | 462 ++ .../html/group___c_m_s_i_s___r_t_o_s___message.js | 9 + .../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html | 420 ++ .../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js | 9 + .../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html | 459 ++ .../group___c_m_s_i_s___r_t_o_s___pool_mgmt.js | 10 + ...oup___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html | 429 ++ ...group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js | 10 + .../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html | 351 + .../group___c_m_s_i_s___r_t_o_s___signal_mgmt.js | 7 + .../html/group___c_m_s_i_s___r_t_o_s___status.html | 235 + .../html/group___c_m_s_i_s___r_t_o_s___status.js | 20 + .../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html | 608 ++ .../group___c_m_s_i_s___r_t_o_s___thread_mgmt.js | 21 + .../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html | 517 ++ .../group___c_m_s_i_s___r_t_o_s___timer_mgmt.js | 13 + .../html/group___c_m_s_i_s___r_t_o_s___wait.html | 188 + .../RTX/html/group___c_m_s_i_s___r_t_o_s___wait.js | 4 + .../html/group___r_t_x___global___functions.html | 459 ++ .../RTX/html/group___r_t_x___global___functions.js | 11 + CMSIS/Documentation/RTX/html/index.html | 142 + CMSIS/Documentation/RTX/html/jquery.js | 77 + CMSIS/Documentation/RTX/html/manage_rte_output.png | Bin 0 -> 117551 bytes CMSIS/Documentation/RTX/html/modules.html | 146 + CMSIS/Documentation/RTX/html/modules.js | 4 + CMSIS/Documentation/RTX/html/nav_f.png | Bin 0 -> 153 bytes CMSIS/Documentation/RTX/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/RTX/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/RTX/html/navtree.css | 143 + CMSIS/Documentation/RTX/html/navtree.js | 528 ++ CMSIS/Documentation/RTX/html/navtreeindex0.js | 194 + CMSIS/Documentation/RTX/html/open.png | Bin 0 -> 123 bytes CMSIS/Documentation/RTX/html/own_lib_projwin.png | Bin 0 -> 17182 bytes CMSIS/Documentation/RTX/html/pages.html | 132 + CMSIS/Documentation/RTX/html/printComponentTabs.js | 36 + CMSIS/Documentation/RTX/html/project_window.png | Bin 0 -> 9643 bytes CMSIS/Documentation/RTX/html/resize.js | 93 + CMSIS/Documentation/RTX/html/rtx_8txt.html | 129 + .../RTX/html/rtx_revision_history.html | 190 + CMSIS/Documentation/RTX/html/search/all_62.html | 25 + CMSIS/Documentation/RTX/html/search/all_62.js | 4 + CMSIS/Documentation/RTX/html/search/all_63.html | 25 + CMSIS/Documentation/RTX/html/search/all_63.js | 10 + CMSIS/Documentation/RTX/html/search/all_64.html | 25 + CMSIS/Documentation/RTX/html/search/all_64.js | 5 + CMSIS/Documentation/RTX/html/search/all_66.html | 25 + CMSIS/Documentation/RTX/html/search/all_66.js | 4 + CMSIS/Documentation/RTX/html/search/all_67.html | 25 + CMSIS/Documentation/RTX/html/search/all_67.js | 5 + CMSIS/Documentation/RTX/html/search/all_69.html | 25 + CMSIS/Documentation/RTX/html/search/all_69.js | 5 + CMSIS/Documentation/RTX/html/search/all_6b.html | 25 + CMSIS/Documentation/RTX/html/search/all_6b.js | 4 + CMSIS/Documentation/RTX/html/search/all_6d.html | 25 + CMSIS/Documentation/RTX/html/search/all_6d.js | 11 + CMSIS/Documentation/RTX/html/search/all_6f.html | 25 + CMSIS/Documentation/RTX/html/search/all_6f.js | 149 + CMSIS/Documentation/RTX/html/search/all_70.html | 25 + CMSIS/Documentation/RTX/html/search/all_70.js | 8 + CMSIS/Documentation/RTX/html/search/all_71.html | 25 + CMSIS/Documentation/RTX/html/search/all_71.js | 4 + CMSIS/Documentation/RTX/html/search/all_72.html | 25 + CMSIS/Documentation/RTX/html/search/all_72.js | 8 + CMSIS/Documentation/RTX/html/search/all_73.html | 25 + CMSIS/Documentation/RTX/html/search/all_73.js | 13 + CMSIS/Documentation/RTX/html/search/all_74.html | 25 + CMSIS/Documentation/RTX/html/search/all_74.js | 10 + CMSIS/Documentation/RTX/html/search/all_76.html | 25 + CMSIS/Documentation/RTX/html/search/all_76.js | 5 + .../Documentation/RTX/html/search/classes_6f.html | 25 + CMSIS/Documentation/RTX/html/search/classes_6f.js | 12 + CMSIS/Documentation/RTX/html/search/close.png | Bin 0 -> 273 bytes .../Documentation/RTX/html/search/defines_6f.html | 25 + CMSIS/Documentation/RTX/html/search/defines_6f.js | 29 + CMSIS/Documentation/RTX/html/search/enums_6f.html | 25 + CMSIS/Documentation/RTX/html/search/enums_6f.js | 6 + .../RTX/html/search/enumvalues_6f.html | 25 + .../Documentation/RTX/html/search/enumvalues_6f.js | 28 + CMSIS/Documentation/RTX/html/search/files_63.html | 25 + CMSIS/Documentation/RTX/html/search/files_63.js | 5 + CMSIS/Documentation/RTX/html/search/files_72.html | 25 + CMSIS/Documentation/RTX/html/search/files_72.js | 5 + .../RTX/html/search/functions_6f.html | 25 + .../Documentation/RTX/html/search/functions_6f.js | 50 + .../RTX/html/search/functions_73.html | 25 + .../Documentation/RTX/html/search/functions_73.js | 4 + CMSIS/Documentation/RTX/html/search/groups_63.html | 25 + CMSIS/Documentation/RTX/html/search/groups_63.js | 4 + CMSIS/Documentation/RTX/html/search/groups_67.html | 25 + CMSIS/Documentation/RTX/html/search/groups_67.js | 5 + CMSIS/Documentation/RTX/html/search/groups_6b.html | 25 + CMSIS/Documentation/RTX/html/search/groups_6b.js | 4 + CMSIS/Documentation/RTX/html/search/groups_6d.html | 25 + CMSIS/Documentation/RTX/html/search/groups_6d.js | 7 + CMSIS/Documentation/RTX/html/search/groups_72.html | 25 + CMSIS/Documentation/RTX/html/search/groups_72.js | 4 + CMSIS/Documentation/RTX/html/search/groups_73.html | 25 + CMSIS/Documentation/RTX/html/search/groups_73.js | 6 + CMSIS/Documentation/RTX/html/search/groups_74.html | 25 + CMSIS/Documentation/RTX/html/search/groups_74.js | 5 + CMSIS/Documentation/RTX/html/search/mag_sel.png | Bin 0 -> 563 bytes CMSIS/Documentation/RTX/html/search/nomatches.html | 12 + CMSIS/Documentation/RTX/html/search/pages_62.html | 25 + CMSIS/Documentation/RTX/html/search/pages_62.js | 4 + CMSIS/Documentation/RTX/html/search/pages_63.html | 25 + CMSIS/Documentation/RTX/html/search/pages_63.js | 7 + CMSIS/Documentation/RTX/html/search/pages_64.html | 25 + CMSIS/Documentation/RTX/html/search/pages_64.js | 4 + CMSIS/Documentation/RTX/html/search/pages_66.html | 25 + CMSIS/Documentation/RTX/html/search/pages_66.js | 4 + CMSIS/Documentation/RTX/html/search/pages_6d.html | 25 + CMSIS/Documentation/RTX/html/search/pages_6d.js | 4 + CMSIS/Documentation/RTX/html/search/pages_6f.html | 25 + CMSIS/Documentation/RTX/html/search/pages_6f.js | 4 + CMSIS/Documentation/RTX/html/search/pages_72.html | 25 + CMSIS/Documentation/RTX/html/search/pages_72.js | 5 + CMSIS/Documentation/RTX/html/search/pages_73.html | 25 + CMSIS/Documentation/RTX/html/search/pages_73.js | 5 + CMSIS/Documentation/RTX/html/search/pages_74.html | 25 + CMSIS/Documentation/RTX/html/search/pages_74.js | 6 + CMSIS/Documentation/RTX/html/search/search.css | 240 + CMSIS/Documentation/RTX/html/search/search.js | 815 +++ CMSIS/Documentation/RTX/html/search/search_l.png | Bin 0 -> 604 bytes CMSIS/Documentation/RTX/html/search/search_m.png | Bin 0 -> 158 bytes CMSIS/Documentation/RTX/html/search/search_r.png | Bin 0 -> 612 bytes .../Documentation/RTX/html/search/typedefs_6f.html | 25 + CMSIS/Documentation/RTX/html/search/typedefs_6f.js | 12 + .../RTX/html/search/variables_64.html | 25 + .../Documentation/RTX/html/search/variables_64.js | 4 + .../RTX/html/search/variables_69.html | 25 + .../Documentation/RTX/html/search/variables_69.js | 5 + .../RTX/html/search/variables_6d.html | 25 + .../Documentation/RTX/html/search/variables_6d.js | 6 + .../RTX/html/search/variables_70.html | 25 + .../Documentation/RTX/html/search/variables_70.js | 8 + .../RTX/html/search/variables_71.html | 25 + .../Documentation/RTX/html/search/variables_71.js | 4 + .../RTX/html/search/variables_73.html | 25 + .../Documentation/RTX/html/search/variables_73.js | 7 + .../RTX/html/search/variables_74.html | 25 + .../Documentation/RTX/html/search/variables_74.js | 5 + .../RTX/html/search/variables_76.html | 25 + .../Documentation/RTX/html/search/variables_76.js | 5 + .../RTX/html/structos_mail_q_def__t.html | 191 + .../RTX/html/structos_mail_q_def__t.js | 6 + .../RTX/html/structos_message_q_def__t.html | 176 + .../RTX/html/structos_message_q_def__t.js | 5 + .../RTX/html/structos_mutex_def__t.html | 161 + .../RTX/html/structos_mutex_def__t.js | 4 + .../RTX/html/structos_pool_def__t.html | 191 + .../Documentation/RTX/html/structos_pool_def__t.js | 6 + .../RTX/html/structos_semaphore_def__t.html | 161 + .../RTX/html/structos_semaphore_def__t.js | 4 + .../RTX/html/structos_thread_def__t.html | 206 + .../RTX/html/structos_thread_def__t.js | 7 + .../RTX/html/structos_timer_def__t.html | 176 + .../RTX/html/structos_timer_def__t.js | 5 + CMSIS/Documentation/RTX/html/sync_off.png | Bin 0 -> 853 bytes CMSIS/Documentation/RTX/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/RTX/html/tab_a.png | Bin 0 -> 142 bytes CMSIS/Documentation/RTX/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/RTX/html/tab_h.png | Bin 0 -> 177 bytes CMSIS/Documentation/RTX/html/tab_s.png | Bin 0 -> 184 bytes CMSIS/Documentation/RTX/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/RTX/html/tabs.css | 71 + .../SVD/html/Access_SVD_DD_Manage.png | Bin 0 -> 7472 bytes CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png | Bin 0 -> 16871 bytes CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd | 621 ++ CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png | Bin 0 -> 12402 bytes .../SVD/html/CMSIS_SVD_Schema_Gen.png | Bin 0 -> 9613 bytes .../Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png | Bin 0 -> 11010 bytes .../SVD/html/CMSIS_SVD_WEB_DATABASE.png | Bin 0 -> 31649 bytes CMSIS/Documentation/SVD/html/Manage_SVD_DD.png | Bin 0 -> 12994 bytes .../SVD/html/SystemViewer_Generated.png | Bin 0 -> 39693 bytes CMSIS/Documentation/SVD/html/bc_s.png | Bin 0 -> 676 bytes CMSIS/Documentation/SVD/html/bdwn.png | Bin 0 -> 147 bytes CMSIS/Documentation/SVD/html/closed.png | Bin 0 -> 132 bytes CMSIS/Documentation/SVD/html/cmsis.css | 1269 ++++ CMSIS/Documentation/SVD/html/doxygen.css | 1172 ++++ CMSIS/Documentation/SVD/html/doxygen.png | Bin 0 -> 3779 bytes CMSIS/Documentation/SVD/html/dynsections.js | 78 + CMSIS/Documentation/SVD/html/ftv2blank.png | Bin 0 -> 86 bytes CMSIS/Documentation/SVD/html/ftv2cl.png | Bin 0 -> 453 bytes CMSIS/Documentation/SVD/html/ftv2doc.png | Bin 0 -> 746 bytes CMSIS/Documentation/SVD/html/ftv2folderclosed.png | Bin 0 -> 616 bytes CMSIS/Documentation/SVD/html/ftv2folderopen.png | Bin 0 -> 597 bytes CMSIS/Documentation/SVD/html/ftv2lastnode.png | Bin 0 -> 86 bytes CMSIS/Documentation/SVD/html/ftv2link.png | Bin 0 -> 746 bytes CMSIS/Documentation/SVD/html/ftv2mlastnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/SVD/html/ftv2mnode.png | Bin 0 -> 246 bytes CMSIS/Documentation/SVD/html/ftv2mo.png | Bin 0 -> 403 bytes CMSIS/Documentation/SVD/html/ftv2node.png | Bin 0 -> 86 bytes CMSIS/Documentation/SVD/html/ftv2ns.png | Bin 0 -> 388 bytes CMSIS/Documentation/SVD/html/ftv2plastnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/SVD/html/ftv2pnode.png | Bin 0 -> 229 bytes CMSIS/Documentation/SVD/html/ftv2splitbar.png | Bin 0 -> 314 bytes CMSIS/Documentation/SVD/html/ftv2vertline.png | Bin 0 -> 86 bytes .../SVD/html/group__cluster_level__gr.html | 182 + .../SVD/html/group__cpu_section__gr.html | 201 + .../html/group__device_section_extensions__gr.html | 150 + .../SVD/html/group__dim_element_group__gr.html | 121 + .../SVD/html/group__elem__type__gr.html | 103 + .../SVD/html/group__elem__type__gr.js | 6 + .../group__peripheral_section_extensions__gr.html | 117 + .../html/group__protection_string_type__gr.html | 118 + .../html/group__register_properties_group__gr.html | 114 + .../group__register_section_extensions__gr.html | 147 + .../SVD/html/group__schema__1__2__gr.html | 711 ++ .../SVD/html/group__svd___format__1__1__gr.html | 111 + .../SVD/html/group__svd___format__1__1__gr.js | 8 + .../SVD/html/group__svd___format__gr.html | 140 + .../SVD/html/group__svd___format__gr.js | 8 + .../SVD/html/group__svd__xml__device__gr.html | 175 + .../SVD/html/group__svd__xml__enum__gr.html | 194 + .../SVD/html/group__svd__xml__fields__gr.html | 211 + .../SVD/html/group__svd__xml__peripherals__gr.html | 225 + .../SVD/html/group__svd__xml__registers__gr.html | 234 + CMSIS/Documentation/SVD/html/index.html | 161 + CMSIS/Documentation/SVD/html/jquery.js | 77 + CMSIS/Documentation/SVD/html/modules.html | 111 + CMSIS/Documentation/SVD/html/modules.js | 7 + CMSIS/Documentation/SVD/html/nav_f.png | Bin 0 -> 153 bytes CMSIS/Documentation/SVD/html/nav_g.png | Bin 0 -> 95 bytes CMSIS/Documentation/SVD/html/nav_h.png | Bin 0 -> 98 bytes CMSIS/Documentation/SVD/html/navtree.css | 143 + CMSIS/Documentation/SVD/html/navtree.js | 517 ++ CMSIS/Documentation/SVD/html/navtreeindex0.js | 40 + CMSIS/Documentation/SVD/html/open.png | Bin 0 -> 123 bytes CMSIS/Documentation/SVD/html/pages.html | 98 + CMSIS/Documentation/SVD/html/printComponentTabs.js | 36 + CMSIS/Documentation/SVD/html/resize.js | 93 + CMSIS/Documentation/SVD/html/svd__example_pg.html | 876 +++ CMSIS/Documentation/SVD/html/svd__outline_pg.html | 126 + .../Documentation/SVD/html/svd__s_v_d_conv_pg.html | 236 + .../SVD/html/svd_revision_history.html | 106 + .../SVD/html/svd_validate_file_pg.html | 120 + CMSIS/Documentation/SVD/html/svd_web_pg.html | 100 + CMSIS/Documentation/SVD/html/svd_web_pg.js | 15 + .../Documentation/SVD/html/svd_web_public_pg.html | 126 + .../SVD/html/svd_web_restricted_pg.html | 152 + CMSIS/Documentation/SVD/html/sync_off.png | Bin 0 -> 853 bytes CMSIS/Documentation/SVD/html/sync_on.png | Bin 0 -> 845 bytes CMSIS/Documentation/SVD/html/tab_a.png | Bin 0 -> 142 bytes CMSIS/Documentation/SVD/html/tab_b.png | Bin 0 -> 170 bytes CMSIS/Documentation/SVD/html/tab_h.png | Bin 0 -> 177 bytes CMSIS/Documentation/SVD/html/tab_s.png | Bin 0 -> 184 bytes CMSIS/Documentation/SVD/html/tab_topnav.png | Bin 0 -> 232 bytes CMSIS/Documentation/SVD/html/tabs.css | 71 + CMSIS/Documentation/index.html | 14 + CMSIS/Driver/DriverTemplates/Driver_ETH_MAC.c | 210 + CMSIS/Driver/DriverTemplates/Driver_ETH_PHY.c | 109 + CMSIS/Driver/DriverTemplates/Driver_Flash.c | 104 + CMSIS/Driver/DriverTemplates/Driver_I2C.c | 130 + CMSIS/Driver/DriverTemplates/Driver_MCI.c | 201 + CMSIS/Driver/DriverTemplates/Driver_SAI.c | 107 + CMSIS/Driver/DriverTemplates/Driver_SPI.c | 133 + CMSIS/Driver/DriverTemplates/Driver_USART.c | 132 + CMSIS/Driver/DriverTemplates/Driver_USBD.c | 142 + CMSIS/Driver/DriverTemplates/Driver_USBH.c | 209 + CMSIS/Driver/Include/Driver_CAN.h | 361 + CMSIS/Driver/Include/Driver_Common.h | 72 + CMSIS/Driver/Include/Driver_ETH.h | 85 + CMSIS/Driver/Include/Driver_ETH_MAC.h | 301 + CMSIS/Driver/Include/Driver_ETH_PHY.h | 133 + CMSIS/Driver/Include/Driver_Flash.h | 194 + CMSIS/Driver/Include/Driver_I2C.h | 207 + CMSIS/Driver/Include/Driver_MCI.h | 350 + CMSIS/Driver/Include/Driver_NAND.h | 403 ++ CMSIS/Driver/Include/Driver_SAI.h | 298 + CMSIS/Driver/Include/Driver_SPI.h | 237 + CMSIS/Driver/Include/Driver_USART.h | 330 + CMSIS/Driver/Include/Driver_USB.h | 95 + CMSIS/Driver/Include/Driver_USBD.h | 263 + CMSIS/Driver/Include/Driver_USBH.h | 406 ++ CMSIS/Include/arm_common_tables.h | 136 + CMSIS/Include/arm_const_structs.h | 79 + CMSIS/Include/arm_math.h | 7154 ++++++++++++++++++++ CMSIS/Include/cmsis_armcc.h | 734 ++ CMSIS/Include/cmsis_armcc_V6.h | 1800 +++++ CMSIS/Include/cmsis_gcc.h | 1373 ++++ CMSIS/Include/core_cm0.h | 798 +++ CMSIS/Include/core_cm0plus.h | 914 +++ CMSIS/Include/core_cm3.h | 1763 +++++ CMSIS/Include/core_cm4.h | 1937 ++++++ CMSIS/Include/core_cm7.h | 2512 +++++++ CMSIS/Include/core_cmFunc.h | 87 + CMSIS/Include/core_cmInstr.h | 87 + CMSIS/Include/core_cmSimd.h | 96 + CMSIS/Include/core_sc000.h | 926 +++ CMSIS/Include/core_sc300.h | 1745 +++++ CMSIS/MK20D10.h | 484 +- CMSIS/MK20D10_features.h | 133 +- CMSIS/RTE_Device.h | 184 + CMSIS/arm_common_tables.h | 136 - CMSIS/arm_const_structs.h | 79 - CMSIS/arm_math.h | 7154 -------------------- CMSIS/cmsis_gcc.h | 1373 ---- CMSIS/core_cm4.h | 1937 ------ CMSIS/core_cmFunc.h | 87 - CMSIS/core_cmInstr.h | 87 - CMSIS/core_cmSimd.h | 96 - CMSIS/fsl_device_registers.h | 16 +- CMSIS/index.html | 14 + LA_OPT_Base_License.htm | 2810 ++++++++ MK20DN512xxx10_flash.ld | 30 +- drivers/fsl_adc16.c | 16 +- drivers/fsl_adc16.h | 73 +- drivers/fsl_clock.c | 93 +- drivers/fsl_clock.h | 468 +- drivers/fsl_cmp.c | 14 +- drivers/fsl_cmp.h | 68 +- drivers/fsl_cmt.c | 33 +- drivers/fsl_cmt.h | 40 +- drivers/fsl_common.c | 145 +- drivers/fsl_common.h | 114 +- drivers/fsl_crc.c | 30 +- drivers/fsl_crc.h | 39 +- drivers/fsl_dac.c | 14 +- drivers/fsl_dac.h | 42 +- drivers/fsl_dmamux.c | 14 +- drivers/fsl_dmamux.h | 65 +- drivers/fsl_dspi.c | 235 +- drivers/fsl_dspi.h | 345 +- drivers/fsl_dspi_edma.c | 593 +- drivers/fsl_dspi_edma.h | 111 +- drivers/fsl_dspi_freertos.c | 121 + drivers/fsl_dspi_freertos.h | 128 + drivers/fsl_edma.c | 597 +- drivers/fsl_edma.h | 290 +- drivers/fsl_ewm.c | 14 +- drivers/fsl_ewm.h | 36 +- drivers/fsl_flash.c | 1548 ++++- drivers/fsl_flash.h | 793 ++- drivers/fsl_flexcan.c | 98 +- drivers/fsl_flexcan.h | 110 +- drivers/fsl_ftm.c | 18 +- drivers/fsl_ftm.h | 154 +- drivers/fsl_gpio.c | 28 +- drivers/fsl_gpio.h | 149 +- drivers/fsl_i2c.c | 376 +- drivers/fsl_i2c.h | 160 +- drivers/fsl_i2c_edma.c | 138 +- drivers/fsl_i2c_edma.h | 42 +- drivers/fsl_i2c_freertos.c | 121 + drivers/fsl_i2c_freertos.h | 128 + drivers/fsl_llwu.c | 4 +- drivers/fsl_llwu.h | 86 +- drivers/fsl_lptmr.c | 38 +- drivers/fsl_lptmr.h | 82 +- drivers/fsl_pdb.c | 14 +- drivers/fsl_pdb.h | 117 +- drivers/fsl_pit.c | 14 +- drivers/fsl_pit.h | 30 +- drivers/fsl_pmc.c | 4 +- drivers/fsl_pmc.h | 84 +- drivers/fsl_port.h | 86 +- drivers/fsl_rcm.c | 4 +- drivers/fsl_rcm.h | 22 +- drivers/fsl_rtc.c | 6 +- drivers/fsl_rtc.h | 42 +- drivers/fsl_sdhc.c | 503 +- drivers/fsl_sdhc.h | 158 +- drivers/fsl_sim.c | 56 +- drivers/fsl_sim.h | 68 +- drivers/fsl_smc.c | 38 +- drivers/fsl_smc.h | 112 +- drivers/fsl_sysmpu.c | 249 + drivers/fsl_sysmpu.h | 435 ++ drivers/fsl_tsi_v2.c | 8 +- drivers/fsl_tsi_v2.h | 4 +- drivers/fsl_uart.c | 162 +- drivers/fsl_uart.h | 127 +- drivers/fsl_uart_edma.c | 18 +- drivers/fsl_uart_edma.h | 45 +- drivers/fsl_uart_freertos.c | 332 + drivers/fsl_uart_freertos.h | 166 + drivers/fsl_vref.c | 14 +- drivers/fsl_vref.h | 32 +- drivers/fsl_wdog.c | 4 +- drivers/fsl_wdog.h | 88 +- freertos/Source/croutine.c | 2 +- freertos/Source/event_groups.c | 115 +- freertos/Source/include/FreeRTOS.h | 373 +- freertos/Source/include/StackMacros.h | 8 +- freertos/Source/include/croutine.h | 64 +- freertos/Source/include/deprecated_definitions.h | 2 +- freertos/Source/include/event_groups.h | 157 +- .../Source/include/freertos_tasks_c_additions.h | 125 + freertos/Source/include/list.h | 34 +- freertos/Source/include/mpu_prototypes.h | 177 + freertos/Source/include/mpu_wrappers.h | 170 +- freertos/Source/include/portable.h | 6 +- freertos/Source/include/projdefs.h | 11 +- freertos/Source/include/queue.h | 301 +- freertos/Source/include/semphr.h | 505 +- freertos/Source/include/stdint.readme | 27 + freertos/Source/include/task.h | 424 +- freertos/Source/include/timers.h | 322 +- freertos/Source/list.c | 2 +- .../portable/GCC/ARM_CM3/fsl_tickless_generic.h | 122 + .../portable/GCC/ARM_CM3/fsl_tickless_lptmr.c | 260 + .../portable/GCC/ARM_CM3/fsl_tickless_systick.c | 273 + freertos/Source/portable/GCC/ARM_CM3/port.c | 481 +- freertos/Source/portable/GCC/ARM_CM3/portmacro.h | 105 +- freertos/Source/portable/MemMang/heap_1.c | 20 +- freertos/Source/portable/MemMang/heap_2.c | 17 +- freertos/Source/portable/MemMang/heap_3.c | 6 +- freertos/Source/portable/MemMang/heap_4.c | 8 +- freertos/Source/portable/MemMang/heap_5.c | 6 +- freertos/Source/portable/readme.txt | 19 + freertos/Source/queue.c | 750 +- freertos/Source/readme.txt | 17 + freertos/Source/tasks.c | 2540 ++++--- freertos/Source/timers.c | 285 +- source/FreeRTOSConfig.h | 121 +- startup/startup_MK20D10.S | 15 +- startup/system_MK20D10.c | 14 +- startup/system_MK20D10.h | 15 +- utilities/fsl_debug_console.c | 247 +- utilities/fsl_debug_console.h | 28 +- 3053 files changed, 410578 insertions(+), 17336 deletions(-) create mode 100644 CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf create mode 100644 CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.rtf create mode 100644 CMSIS/Documentation/Core/html/CMSIS_CORE_Files.png create mode 100644 CMSIS/Documentation/Core/html/CMSIS_CORE_Files_user.png create mode 100644 CMSIS/Documentation/Core/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/Core/html/_c_o_r_e__m_i_s_r_a__exceptions_pg.html create mode 100644 CMSIS/Documentation/Core/html/_reg_map_pg.html create mode 100644 CMSIS/Documentation/Core/html/_templates_pg.html create mode 100644 CMSIS/Documentation/Core/html/_templates_pg.js create mode 100644 CMSIS/Documentation/Core/html/_using__a_r_m_pg.html create mode 100644 CMSIS/Documentation/Core/html/_using__c_m_s_i_s.html create mode 100644 CMSIS/Documentation/Core/html/_using__v_t_o_r_pg.html create mode 100644 CMSIS/Documentation/Core/html/_using_pg.html create mode 100644 CMSIS/Documentation/Core/html/_using_pg.js create mode 100644 CMSIS/Documentation/Core/html/annotated.html create mode 100644 CMSIS/Documentation/Core/html/annotated.js create mode 100644 CMSIS/Documentation/Core/html/bc_s.png create mode 100644 CMSIS/Documentation/Core/html/bdwn.png create mode 100644 CMSIS/Documentation/Core/html/check.png create mode 100644 CMSIS/Documentation/Core/html/classes.html create mode 100644 CMSIS/Documentation/Core/html/closed.png create mode 100644 CMSIS/Documentation/Core/html/cmsis.css create mode 100644 CMSIS/Documentation/Core/html/core_revision_history.html create mode 100644 CMSIS/Documentation/Core/html/device_h_pg.html create mode 100644 CMSIS/Documentation/Core/html/doxygen.css create mode 100644 CMSIS/Documentation/Core/html/doxygen.png create mode 100644 CMSIS/Documentation/Core/html/dynsections.js create mode 100644 CMSIS/Documentation/Core/html/ftv2blank.png create mode 100644 CMSIS/Documentation/Core/html/ftv2cl.png create mode 100644 CMSIS/Documentation/Core/html/ftv2doc.png create mode 100644 CMSIS/Documentation/Core/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/Core/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/Core/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/Core/html/ftv2link.png create mode 100644 CMSIS/Documentation/Core/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/Core/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/Core/html/ftv2mo.png create mode 100644 CMSIS/Documentation/Core/html/ftv2node.png create mode 100644 CMSIS/Documentation/Core/html/ftv2ns.png create mode 100644 CMSIS/Documentation/Core/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/Core/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/Core/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/Core/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/Core/html/functions.html create mode 100644 CMSIS/Documentation/Core/html/functions_vars.html create mode 100644 CMSIS/Documentation/Core/html/globals.html create mode 100644 CMSIS/Documentation/Core/html/globals_defs.html create mode 100644 CMSIS/Documentation/Core/html/globals_enum.html create mode 100644 CMSIS/Documentation/Core/html/globals_eval.html create mode 100644 CMSIS/Documentation/Core/html/globals_func.html create mode 100644 CMSIS/Documentation/Core/html/globals_vars.html create mode 100644 CMSIS/Documentation/Core/html/group___core___register__gr.html create mode 100644 CMSIS/Documentation/Core/html/group___core___register__gr.js create mode 100644 CMSIS/Documentation/Core/html/group___dcache__functions__m7.html create mode 100644 CMSIS/Documentation/Core/html/group___dcache__functions__m7.js create mode 100644 CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.html create mode 100644 CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.js create mode 100644 CMSIS/Documentation/Core/html/group___icache__functions__m7.html create mode 100644 CMSIS/Documentation/Core/html/group___icache__functions__m7.js create mode 100644 CMSIS/Documentation/Core/html/group___n_v_i_c__gr.html create mode 100644 CMSIS/Documentation/Core/html/group___n_v_i_c__gr.js create mode 100644 CMSIS/Documentation/Core/html/group___sys_tick__gr.html create mode 100644 CMSIS/Documentation/Core/html/group___sys_tick__gr.js create mode 100644 CMSIS/Documentation/Core/html/group__cache__functions__m7.html create mode 100644 CMSIS/Documentation/Core/html/group__cache__functions__m7.js create mode 100644 CMSIS/Documentation/Core/html/group__fpu__functions__m7.html create mode 100644 CMSIS/Documentation/Core/html/group__fpu__functions__m7.js create mode 100644 CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.html create mode 100644 CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.js create mode 100644 CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.html create mode 100644 CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.js create mode 100644 CMSIS/Documentation/Core/html/group__peripheral__gr.html create mode 100644 CMSIS/Documentation/Core/html/group__peripheral__gr.js create mode 100644 CMSIS/Documentation/Core/html/group__system__init__gr.html create mode 100644 CMSIS/Documentation/Core/html/group__system__init__gr.js create mode 100644 CMSIS/Documentation/Core/html/index.html create mode 100644 CMSIS/Documentation/Core/html/jquery.js create mode 100644 CMSIS/Documentation/Core/html/modules.html create mode 100644 CMSIS/Documentation/Core/html/modules.js create mode 100644 CMSIS/Documentation/Core/html/nav_f.png create mode 100644 CMSIS/Documentation/Core/html/nav_g.png create mode 100644 CMSIS/Documentation/Core/html/nav_h.png create mode 100644 CMSIS/Documentation/Core/html/navtree.css create mode 100644 CMSIS/Documentation/Core/html/navtree.js create mode 100644 CMSIS/Documentation/Core/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/Core/html/navtreeindex1.js create mode 100644 CMSIS/Documentation/Core/html/open.png create mode 100644 CMSIS/Documentation/Core/html/pages.html create mode 100644 CMSIS/Documentation/Core/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/Core/html/resize.js create mode 100644 CMSIS/Documentation/Core/html/search.css create mode 100644 CMSIS/Documentation/Core/html/search/all_5f.html create mode 100644 CMSIS/Documentation/Core/html/search/all_5f.js create mode 100644 CMSIS/Documentation/Core/html/search/all_61.html create mode 100644 CMSIS/Documentation/Core/html/search/all_61.js create mode 100644 CMSIS/Documentation/Core/html/search/all_62.html create mode 100644 CMSIS/Documentation/Core/html/search/all_62.js create mode 100644 CMSIS/Documentation/Core/html/search/all_63.html create mode 100644 CMSIS/Documentation/Core/html/search/all_63.js create mode 100644 CMSIS/Documentation/Core/html/search/all_64.html create mode 100644 CMSIS/Documentation/Core/html/search/all_64.js create mode 100644 CMSIS/Documentation/Core/html/search/all_65.html create mode 100644 CMSIS/Documentation/Core/html/search/all_65.js create mode 100644 CMSIS/Documentation/Core/html/search/all_66.html create mode 100644 CMSIS/Documentation/Core/html/search/all_66.js create mode 100644 CMSIS/Documentation/Core/html/search/all_68.html create mode 100644 CMSIS/Documentation/Core/html/search/all_68.js create mode 100644 CMSIS/Documentation/Core/html/search/all_69.html create mode 100644 CMSIS/Documentation/Core/html/search/all_69.js create mode 100644 CMSIS/Documentation/Core/html/search/all_6c.html create mode 100644 CMSIS/Documentation/Core/html/search/all_6c.js create mode 100644 CMSIS/Documentation/Core/html/search/all_6d.html create mode 100644 CMSIS/Documentation/Core/html/search/all_6d.js create mode 100644 CMSIS/Documentation/Core/html/search/all_6e.html create mode 100644 CMSIS/Documentation/Core/html/search/all_6e.js create mode 100644 CMSIS/Documentation/Core/html/search/all_6f.html create mode 100644 CMSIS/Documentation/Core/html/search/all_6f.js create mode 100644 CMSIS/Documentation/Core/html/search/all_70.html create mode 100644 CMSIS/Documentation/Core/html/search/all_70.js create mode 100644 CMSIS/Documentation/Core/html/search/all_71.html create mode 100644 CMSIS/Documentation/Core/html/search/all_71.js create mode 100644 CMSIS/Documentation/Core/html/search/all_72.html create mode 100644 CMSIS/Documentation/Core/html/search/all_72.js create mode 100644 CMSIS/Documentation/Core/html/search/all_73.html create mode 100644 CMSIS/Documentation/Core/html/search/all_73.js create mode 100644 CMSIS/Documentation/Core/html/search/all_74.html create mode 100644 CMSIS/Documentation/Core/html/search/all_74.js create mode 100644 CMSIS/Documentation/Core/html/search/all_75.html create mode 100644 CMSIS/Documentation/Core/html/search/all_75.js create mode 100644 CMSIS/Documentation/Core/html/search/all_76.html create mode 100644 CMSIS/Documentation/Core/html/search/all_76.js create mode 100644 CMSIS/Documentation/Core/html/search/all_77.html create mode 100644 CMSIS/Documentation/Core/html/search/all_77.js create mode 100644 CMSIS/Documentation/Core/html/search/all_78.html create mode 100644 CMSIS/Documentation/Core/html/search/all_78.js create mode 100644 CMSIS/Documentation/Core/html/search/all_7a.html create mode 100644 CMSIS/Documentation/Core/html/search/all_7a.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_61.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_61.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_63.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_63.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_64.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_64.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_66.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_66.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_69.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_69.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_6d.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_6d.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_6e.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_6e.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_73.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_73.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_74.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_74.js create mode 100644 CMSIS/Documentation/Core/html/search/classes_78.html create mode 100644 CMSIS/Documentation/Core/html/search/classes_78.js create mode 100644 CMSIS/Documentation/Core/html/search/close.png create mode 100644 CMSIS/Documentation/Core/html/search/enums_69.html create mode 100644 CMSIS/Documentation/Core/html/search/enums_69.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_62.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_62.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_64.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_64.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_68.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_68.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_6d.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_6d.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_6e.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_6e.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_70.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_70.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_73.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_73.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_75.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_75.js create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_77.html create mode 100644 CMSIS/Documentation/Core/html/search/enumvalues_77.js create mode 100644 CMSIS/Documentation/Core/html/search/files_63.html create mode 100644 CMSIS/Documentation/Core/html/search/files_63.js create mode 100644 CMSIS/Documentation/Core/html/search/files_6d.html create mode 100644 CMSIS/Documentation/Core/html/search/files_6d.js create mode 100644 CMSIS/Documentation/Core/html/search/files_6f.html create mode 100644 CMSIS/Documentation/Core/html/search/files_6f.js create mode 100644 CMSIS/Documentation/Core/html/search/files_72.html create mode 100644 CMSIS/Documentation/Core/html/search/files_72.js create mode 100644 CMSIS/Documentation/Core/html/search/files_74.html create mode 100644 CMSIS/Documentation/Core/html/search/files_74.js create mode 100644 CMSIS/Documentation/Core/html/search/files_75.html create mode 100644 CMSIS/Documentation/Core/html/search/files_75.js create mode 100644 CMSIS/Documentation/Core/html/search/functions_5f.html create mode 100644 CMSIS/Documentation/Core/html/search/functions_5f.js create mode 100644 CMSIS/Documentation/Core/html/search/functions_69.html create mode 100644 CMSIS/Documentation/Core/html/search/functions_69.js create mode 100644 CMSIS/Documentation/Core/html/search/functions_6e.html create mode 100644 CMSIS/Documentation/Core/html/search/functions_6e.js create mode 100644 CMSIS/Documentation/Core/html/search/functions_73.html create mode 100644 CMSIS/Documentation/Core/html/search/functions_73.js create mode 100644 CMSIS/Documentation/Core/html/search/groups_63.html create mode 100644 CMSIS/Documentation/Core/html/search/groups_63.js create mode 100644 CMSIS/Documentation/Core/html/search/groups_64.html create mode 100644 CMSIS/Documentation/Core/html/search/groups_64.js create mode 100644 CMSIS/Documentation/Core/html/search/groups_66.html create mode 100644 CMSIS/Documentation/Core/html/search/groups_66.js create mode 100644 CMSIS/Documentation/Core/html/search/groups_69.html create mode 100644 CMSIS/Documentation/Core/html/search/groups_69.js create mode 100644 CMSIS/Documentation/Core/html/search/groups_70.html create mode 100644 CMSIS/Documentation/Core/html/search/groups_70.js create mode 100644 CMSIS/Documentation/Core/html/search/groups_73.html create mode 100644 CMSIS/Documentation/Core/html/search/groups_73.js create mode 100644 CMSIS/Documentation/Core/html/search/mag_sel.png create mode 100644 CMSIS/Documentation/Core/html/search/nomatches.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_62.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_62.js create mode 100644 CMSIS/Documentation/Core/html/search/pages_64.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_64.js create mode 100644 CMSIS/Documentation/Core/html/search/pages_6d.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_6d.js create mode 100644 CMSIS/Documentation/Core/html/search/pages_6f.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_6f.js create mode 100644 CMSIS/Documentation/Core/html/search/pages_72.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_72.js create mode 100644 CMSIS/Documentation/Core/html/search/pages_73.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_73.js create mode 100644 CMSIS/Documentation/Core/html/search/pages_74.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_74.js create mode 100644 CMSIS/Documentation/Core/html/search/pages_75.html create mode 100644 CMSIS/Documentation/Core/html/search/pages_75.js create mode 100644 CMSIS/Documentation/Core/html/search/search.css create mode 100644 CMSIS/Documentation/Core/html/search/search.js create mode 100644 CMSIS/Documentation/Core/html/search/search_l.png create mode 100644 CMSIS/Documentation/Core/html/search/search_m.png create mode 100644 CMSIS/Documentation/Core/html/search/search_r.png create mode 100644 CMSIS/Documentation/Core/html/search/variables_5f.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_5f.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_61.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_61.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_62.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_62.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_63.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_63.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_64.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_64.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_65.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_65.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_66.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_66.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_68.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_68.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_69.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_69.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_6c.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_6c.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_6d.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_6d.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_6e.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_6e.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_70.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_70.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_71.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_71.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_72.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_72.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_73.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_73.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_74.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_74.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_75.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_75.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_76.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_76.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_77.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_77.js create mode 100644 CMSIS/Documentation/Core/html/search/variables_7a.html create mode 100644 CMSIS/Documentation/Core/html/search/variables_7a.js create mode 100644 CMSIS/Documentation/Core/html/startup_s_pg.html create mode 100644 CMSIS/Documentation/Core/html/struct_core_debug___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_core_debug___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_d_w_t___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_d_w_t___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_f_p_u___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_f_p_u___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_i_t_m___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_i_t_m___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_m_p_u___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_m_p_u___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_n_v_i_c___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_n_v_i_c___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_s_c_b___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_s_c_b___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_sys_tick___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_sys_tick___type.js create mode 100644 CMSIS/Documentation/Core/html/struct_t_p_i___type.html create mode 100644 CMSIS/Documentation/Core/html/struct_t_p_i___type.js create mode 100644 CMSIS/Documentation/Core/html/sync_off.png create mode 100644 CMSIS/Documentation/Core/html/sync_on.png create mode 100644 CMSIS/Documentation/Core/html/system_c_pg.html create mode 100644 CMSIS/Documentation/Core/html/tab_a.png create mode 100644 CMSIS/Documentation/Core/html/tab_b.png create mode 100644 CMSIS/Documentation/Core/html/tab_h.png create mode 100644 CMSIS/Documentation/Core/html/tab_s.png create mode 100644 CMSIS/Documentation/Core/html/tab_topnav.png create mode 100644 CMSIS/Documentation/Core/html/tabs.css create mode 100644 CMSIS/Documentation/Core/html/union_a_p_s_r___type.html create mode 100644 CMSIS/Documentation/Core/html/union_a_p_s_r___type.js create mode 100644 CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.html create mode 100644 CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.js create mode 100644 CMSIS/Documentation/Core/html/union_i_p_s_r___type.html create mode 100644 CMSIS/Documentation/Core/html/union_i_p_s_r___type.js create mode 100644 CMSIS/Documentation/Core/html/unionx_p_s_r___type.html create mode 100644 CMSIS/Documentation/Core/html/unionx_p_s_r___type.js create mode 100644 CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT.png create mode 100644 CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT_ISO.png create mode 100644 CMSIS/Documentation/DAP/html/CMSIS_DAP_INTERFACE.png create mode 100644 CMSIS/Documentation/DAP/html/CMSIS_DAP_SWStack.png create mode 100644 CMSIS/Documentation/DAP/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/DAP/html/MDK_Device.png create mode 100644 CMSIS/Documentation/DAP/html/MDK_Flash.png create mode 100644 CMSIS/Documentation/DAP/html/MDK_USB.png create mode 100644 CMSIS/Documentation/DAP/html/MDK_Validation.png create mode 100644 CMSIS/Documentation/DAP/html/RTE.png create mode 100644 CMSIS/Documentation/DAP/html/bc_s.png create mode 100644 CMSIS/Documentation/DAP/html/bdwn.png create mode 100644 CMSIS/Documentation/DAP/html/closed.png create mode 100644 CMSIS/Documentation/DAP/html/cmsis.css create mode 100644 CMSIS/Documentation/DAP/html/doxygen.png create mode 100644 CMSIS/Documentation/DAP/html/dynsections.js create mode 100644 CMSIS/Documentation/DAP/html/ftv2blank.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2cl.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2doc.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2link.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2mo.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2node.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2ns.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/DAP/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___commands__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___commands__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config_flash__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config_m_c_u__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___config_u_s_b__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___connect.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___delay.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___disconnect.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___execute_commands__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___host_status.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___info.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___configure.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___sequence.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___queue_commands__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___reset_target.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___response___status.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_d___configure.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___clock.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___pins.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___sequence.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___baudrate.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___control.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___data.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___mode.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___status.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___transport.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___transfer.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___transfer_abort.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___transfer_block.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___transfer_configure.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___u_s_a_r_t__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___validate__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___vendor__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p___write_a_b_o_r_t.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__jtag__idcode.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.js create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.html create mode 100644 CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.js create mode 100644 CMSIS/Documentation/DAP/html/index.html create mode 100644 CMSIS/Documentation/DAP/html/jquery.js create mode 100644 CMSIS/Documentation/DAP/html/modules.html create mode 100644 CMSIS/Documentation/DAP/html/modules.js create mode 100644 CMSIS/Documentation/DAP/html/nav_f.png create mode 100644 CMSIS/Documentation/DAP/html/nav_g.png create mode 100644 CMSIS/Documentation/DAP/html/nav_h.png create mode 100644 CMSIS/Documentation/DAP/html/navtree.css create mode 100644 CMSIS/Documentation/DAP/html/navtree.js create mode 100644 CMSIS/Documentation/DAP/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/DAP/html/open.png create mode 100644 CMSIS/Documentation/DAP/html/pages.html create mode 100644 CMSIS/Documentation/DAP/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/DAP/html/resize.js create mode 100644 CMSIS/Documentation/DAP/html/rev_hist_dap.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_61.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_61.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_63.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_63.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_64.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_64.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_66.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_66.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_67.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_67.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_69.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_69.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_6a.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_6a.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_6c.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_6c.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_70.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_70.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_72.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_72.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_73.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_73.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_74.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_74.js create mode 100644 CMSIS/Documentation/DAP/html/search/all_76.html create mode 100644 CMSIS/Documentation/DAP/html/search/all_76.js create mode 100644 CMSIS/Documentation/DAP/html/search/close.png create mode 100644 CMSIS/Documentation/DAP/html/search/functions_64.html create mode 100644 CMSIS/Documentation/DAP/html/search/functions_64.js create mode 100644 CMSIS/Documentation/DAP/html/search/functions_6c.html create mode 100644 CMSIS/Documentation/DAP/html/search/functions_6c.js create mode 100644 CMSIS/Documentation/DAP/html/search/functions_70.html create mode 100644 CMSIS/Documentation/DAP/html/search/functions_70.js create mode 100644 CMSIS/Documentation/DAP/html/search/functions_72.html create mode 100644 CMSIS/Documentation/DAP/html/search/functions_72.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_61.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_61.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_63.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_63.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_64.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_64.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_66.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_66.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_67.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_67.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_6a.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_6a.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_72.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_72.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_73.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_73.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_74.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_74.js create mode 100644 CMSIS/Documentation/DAP/html/search/groups_76.html create mode 100644 CMSIS/Documentation/DAP/html/search/groups_76.js create mode 100644 CMSIS/Documentation/DAP/html/search/mag_sel.png create mode 100644 CMSIS/Documentation/DAP/html/search/nomatches.html create mode 100644 CMSIS/Documentation/DAP/html/search/pages_66.html create mode 100644 CMSIS/Documentation/DAP/html/search/pages_66.js create mode 100644 CMSIS/Documentation/DAP/html/search/pages_72.html create mode 100644 CMSIS/Documentation/DAP/html/search/pages_72.js create mode 100644 CMSIS/Documentation/DAP/html/search/search.css create mode 100644 CMSIS/Documentation/DAP/html/search/search.js create mode 100644 CMSIS/Documentation/DAP/html/search/search_l.png create mode 100644 CMSIS/Documentation/DAP/html/search/search_m.png create mode 100644 CMSIS/Documentation/DAP/html/search/search_r.png create mode 100644 CMSIS/Documentation/DAP/html/sync_off.png create mode 100644 CMSIS/Documentation/DAP/html/sync_on.png create mode 100644 CMSIS/Documentation/DAP/html/tab_a.png create mode 100644 CMSIS/Documentation/DAP/html/tab_b.png create mode 100644 CMSIS/Documentation/DAP/html/tab_h.png create mode 100644 CMSIS/Documentation/DAP/html/tab_s.png create mode 100644 CMSIS/Documentation/DAP/html/tab_topnav.png create mode 100644 CMSIS/Documentation/DAP/html/tabs.css create mode 100644 CMSIS/Documentation/DSP/html/Biquad.gif create mode 100644 CMSIS/Documentation/DSP/html/BiquadCascade.gif create mode 100644 CMSIS/Documentation/DSP/html/BiquadDF2Transposed.gif create mode 100644 CMSIS/Documentation/DSP/html/BiquadPostshift.gif create mode 100644 CMSIS/Documentation/DSP/html/CFFT.gif create mode 100644 CMSIS/Documentation/DSP/html/CFFTQ15.gif create mode 100644 CMSIS/Documentation/DSP/html/CFFTQ31.gif create mode 100644 CMSIS/Documentation/DSP/html/CIFFTQ15.gif create mode 100644 CMSIS/Documentation/DSP/html/CIFFTQ31.gif create mode 100644 CMSIS/Documentation/DSP/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/DSP/html/Convolution.gif create mode 100644 CMSIS/Documentation/DSP/html/ConvolutionEquation.gif create mode 100644 CMSIS/Documentation/DSP/html/CorrelateEquation.gif create mode 100644 CMSIS/Documentation/DSP/html/DCT4.gif create mode 100644 CMSIS/Documentation/DSP/html/DCT4Equation.gif create mode 100644 CMSIS/Documentation/DSP/html/FFTBin.gif create mode 100644 CMSIS/Documentation/DSP/html/FFTBinInput.gif create mode 100644 CMSIS/Documentation/DSP/html/FFTBinOutput.gif create mode 100644 CMSIS/Documentation/DSP/html/FIR.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRDecimator.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRInterpolator.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRLPF_coeffs.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRLPF_input.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRLPF_output.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRLPF_response.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRLPF_signalflow.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRLattice.gif create mode 100644 CMSIS/Documentation/DSP/html/FIRSparse.gif create mode 100644 CMSIS/Documentation/DSP/html/GEQ_allbandresponse.gif create mode 100644 CMSIS/Documentation/DSP/html/GEQ_bandresponse.gif create mode 100644 CMSIS/Documentation/DSP/html/GEQ_inputchirp.gif create mode 100644 CMSIS/Documentation/DSP/html/GEQ_outputchirp.gif create mode 100644 CMSIS/Documentation/DSP/html/GEQ_signalflow.gif create mode 100644 CMSIS/Documentation/DSP/html/IDCT4Equation.gif create mode 100644 CMSIS/Documentation/DSP/html/IIRLattice.gif create mode 100644 CMSIS/Documentation/DSP/html/LMS.gif create mode 100644 CMSIS/Documentation/DSP/html/LinearInterp.gif create mode 100644 CMSIS/Documentation/DSP/html/MatrixAddition.gif create mode 100644 CMSIS/Documentation/DSP/html/MatrixInverse.gif create mode 100644 CMSIS/Documentation/DSP/html/MatrixMultiplication.gif create mode 100644 CMSIS/Documentation/DSP/html/MatrixScale.gif create mode 100644 CMSIS/Documentation/DSP/html/MatrixSubtraction.gif create mode 100644 CMSIS/Documentation/DSP/html/MatrixTranspose.gif create mode 100644 CMSIS/Documentation/DSP/html/PID.gif create mode 100644 CMSIS/Documentation/DSP/html/RFFT.gif create mode 100644 CMSIS/Documentation/DSP/html/RFFTQ15.gif create mode 100644 CMSIS/Documentation/DSP/html/RFFTQ31.gif create mode 100644 CMSIS/Documentation/DSP/html/RIFFT.gif create mode 100644 CMSIS/Documentation/DSP/html/RIFFTQ15.gif create mode 100644 CMSIS/Documentation/DSP/html/RIFFTQ31.gif create mode 100644 CMSIS/Documentation/DSP/html/SignalFlow.gif create mode 100644 CMSIS/Documentation/DSP/html/Variance.gif create mode 100644 CMSIS/Documentation/DSP/html/_a_r_m_2arm__class__marks__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_a_r_m_2arm__convolution__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_a_r_m_2arm__dotproduct__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__data_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_change_01_log_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/_change_log_pg.html create mode 100644 CMSIS/Documentation/DSP/html/_g_c_c_2arm__class__marks__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_g_c_c_2arm__convolution__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_g_c_c_2arm__dotproduct__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__data_8c.html create mode 100644 CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/annotated.html create mode 100644 CMSIS/Documentation/DSP/html/annotated.js create mode 100644 CMSIS/Documentation/DSP/html/arm__abs__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__abs__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__abs__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__abs__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__add__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__add__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__add__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__add__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f64_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f64_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__bitreversal_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix2__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix2__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix2__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix4__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix4__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix4__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cfft__radix8__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__conj__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__conj__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__conj__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mag__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mag__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mag__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__common__tables_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__common__tables_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__const__structs_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__const__structs_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__fast__opt__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__fast__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__fast__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__opt__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__opt__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__fast__opt__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__partial__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__conv__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__copy__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__copy__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__copy__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__copy__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__fast__opt__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__fast__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__fast__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__opt__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__opt__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__correlate__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cos__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cos__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__cos__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dct4__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dct4__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dct4__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dct4__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dct4__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dct4__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dot__prod__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dot__prod__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dot__prod__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dot__prod__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fill__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fill__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fill__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fill__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__data_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__decimate__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__fast__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__fast__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__init__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__interpolate__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__interpolate__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__interpolate__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__lattice__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__lattice__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__lattice__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__lattice__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__fir__sparse__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__float__to__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__float__to__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__float__to__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__data_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__iir__lattice__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__iir__lattice__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__iir__lattice__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__iir__lattice__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__data_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__linear__interp__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__norm__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__norm__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__norm__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__norm__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__norm__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__norm__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__lms__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__add__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__add__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__add__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__inverse__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__inverse__f64_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__mult__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__mult__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__mult__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__scale__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__scale__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__scale__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__sub__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__sub__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__sub__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__trans__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__trans__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mat__trans__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__math_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__matrix__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__max__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__max__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__max__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__max__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mean__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mean__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mean__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mean__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__min__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__min__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__min__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__min__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mult__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mult__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mult__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__mult__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__negate__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__negate__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__negate__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__negate__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__offset__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__offset__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__offset__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__offset__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__pid__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__pid__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__pid__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__pid__reset__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__pid__reset__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__pid__reset__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__power__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__power__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__power__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__power__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q15__to__float_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q15__to__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q15__to__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q31__to__float_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q31__to__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q31__to__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q7__to__float_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q7__to__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__q7__to__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__fast__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__fast__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__init__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__init__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__init__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rfft__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rms__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rms__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__rms__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__scale__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__scale__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__scale__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__scale__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__shift__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__shift__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__shift__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__data_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__signal__converge__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__cos__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sin__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sqrt__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sqrt__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__std__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__std__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__std__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sub__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sub__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sub__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__sub__q7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__var__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__var__q15_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__var__q31_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_abstract_8txt.html create mode 100644 CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html create mode 100644 CMSIS/Documentation/DSP/html/arm__variance__example__f32_8c.html create mode 100644 CMSIS/Documentation/DSP/html/arm_class_marks_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_convolution_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_dotproduct_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_fft_bin_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_fir_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_graphic_equalizer_example_q31_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_linear_interp_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_matrix_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_signal_converge_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_sin_cos_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/arm_variance_example_f32_8c-example.html create mode 100644 CMSIS/Documentation/DSP/html/bc_s.png create mode 100644 CMSIS/Documentation/DSP/html/bdwn.png create mode 100644 CMSIS/Documentation/DSP/html/clarke.gif create mode 100644 CMSIS/Documentation/DSP/html/clarkeFormula.gif create mode 100644 CMSIS/Documentation/DSP/html/clarkeInvFormula.gif create mode 100644 CMSIS/Documentation/DSP/html/classes.html create mode 100644 CMSIS/Documentation/DSP/html/closed.png create mode 100644 CMSIS/Documentation/DSP/html/cmsis.css create mode 100644 CMSIS/Documentation/DSP/html/dct4FormatsQ15Table.gif create mode 100644 CMSIS/Documentation/DSP/html/dct4FormatsQ31Table.gif create mode 100644 CMSIS/Documentation/DSP/html/dct4NormalizingF32Table.gif create mode 100644 CMSIS/Documentation/DSP/html/dct4NormalizingQ15Table.gif create mode 100644 CMSIS/Documentation/DSP/html/dct4NormalizingQ31Table.gif create mode 100644 CMSIS/Documentation/DSP/html/deprecated.html create mode 100644 CMSIS/Documentation/DSP/html/dir_05485b5eab41976e219ba5522ae8a40f.html create mode 100644 CMSIS/Documentation/DSP/html/dir_09e8ef8785a41675b984fd022d87f1bc.html create mode 100644 CMSIS/Documentation/DSP/html/dir_0a655a63e9fde46c9762ddfc77ca04bf.html create mode 100644 CMSIS/Documentation/DSP/html/dir_0a68311637137c2c11b8e5c250252a09.html create mode 100644 CMSIS/Documentation/DSP/html/dir_0bd53153155fe3870c529e4f415d4a7e.html create mode 100644 CMSIS/Documentation/DSP/html/dir_12597927a5d871eba77af159658f8e9f.html create mode 100644 CMSIS/Documentation/DSP/html/dir_180f1cc07eaa223183e2db63ad84fc96.html create mode 100644 CMSIS/Documentation/DSP/html/dir_1a6938f21b9d3ee9631dba1cb5e9a79b.html create mode 100644 CMSIS/Documentation/DSP/html/dir_1bf7dc2439436c9055bff1493a609d16.html create mode 100644 CMSIS/Documentation/DSP/html/dir_1ca531cbfb5f1e8e78bee380ead506db.html create mode 100644 CMSIS/Documentation/DSP/html/dir_2089eff899a94c0329c5038f55baabab.html create mode 100644 CMSIS/Documentation/DSP/html/dir_2483b5ef8110e34ae07dadd52b31fd81.html create mode 100644 CMSIS/Documentation/DSP/html/dir_2540fe3bf997579a35b40d050fd58db0.html create mode 100644 CMSIS/Documentation/DSP/html/dir_276d6fac6319afec12f7159fe8d37de0.html create mode 100644 CMSIS/Documentation/DSP/html/dir_28efb39eb514d721c34bfd1d219ba1df.html create mode 100644 CMSIS/Documentation/DSP/html/dir_2bac5604b95d5833788d2de8744eebd8.html create mode 100644 CMSIS/Documentation/DSP/html/dir_2c6bf793c39a551cb3665287541dc62d.html create mode 100644 CMSIS/Documentation/DSP/html/dir_3196f85a8347e7c6cf5419f06f7f0a5c.html create mode 100644 CMSIS/Documentation/DSP/html/dir_33ac94cce96a0d93808878c5f6f288bf.html create mode 100644 CMSIS/Documentation/DSP/html/dir_34727d50220656242b857ddf64f52361.html create mode 100644 CMSIS/Documentation/DSP/html/dir_38b9476ff75f3e6ddc67484ee999428d.html create mode 100644 CMSIS/Documentation/DSP/html/dir_38d31328c42027cc5452e7496de7b88f.html create mode 100644 CMSIS/Documentation/DSP/html/dir_3963cad04f3c79af62d382ba0bd29283.html create mode 100644 CMSIS/Documentation/DSP/html/dir_3d1fa2b43a5e654514cd51dbe031762c.html create mode 100644 CMSIS/Documentation/DSP/html/dir_3d9b1fb18a6a04e0681aa143a1b11e83.html create mode 100644 CMSIS/Documentation/DSP/html/dir_3f2a337fe451aa47758dbb077bdba7b5.html create mode 100644 CMSIS/Documentation/DSP/html/dir_4104b0ce39688295b07e7d8423237024.html create mode 100644 CMSIS/Documentation/DSP/html/dir_424029d631ed0326d927fecdf0eb5714.html create mode 100644 CMSIS/Documentation/DSP/html/dir_446217fa41e7971f13d66a5ff592433f.html create mode 100644 CMSIS/Documentation/DSP/html/dir_45f8bb2d42ec552d5107a3dfe6860678.html create mode 100644 CMSIS/Documentation/DSP/html/dir_4646a6ed5faa53e0aa863c10960e3ab2.html create mode 100644 CMSIS/Documentation/DSP/html/dir_4714731cfbb1de4dc44e33e6cd6e4a5c.html create mode 100644 CMSIS/Documentation/DSP/html/dir_4c7fce71cdbef82378782cbb366558c3.html create mode 100644 CMSIS/Documentation/DSP/html/dir_4e28292bc057704f3d2041cc99d8a5e9.html create mode 100644 CMSIS/Documentation/DSP/html/dir_50f4d4f91ce5cd72cb6928b47e85a7f8.html create mode 100644 CMSIS/Documentation/DSP/html/dir_51a4a1a9da33f8f5fceef63d25a48bab.html create mode 100644 CMSIS/Documentation/DSP/html/dir_555dbbdc9f25fff28408fc741ceff093.html create mode 100644 CMSIS/Documentation/DSP/html/dir_56c57e2f0b48b2b8a51ef27bd8c502e6.html create mode 100644 CMSIS/Documentation/DSP/html/dir_56cec670f0bb78d679862f48f54d3df2.html create mode 100644 CMSIS/Documentation/DSP/html/dir_59a4e177523ec142602b8d9a69e8f1ad.html create mode 100644 CMSIS/Documentation/DSP/html/dir_5a70ee658078194b161f81d2720845c2.html create mode 100644 CMSIS/Documentation/DSP/html/dir_5a7314d68003d6d6c9cc9bdbf9474558.html create mode 100644 CMSIS/Documentation/DSP/html/dir_5ac065bab6b325e909a2891e62c4bc06.html create mode 100644 CMSIS/Documentation/DSP/html/dir_5f5bccfc6fe085bc51be756ab8f90283.html create mode 100644 CMSIS/Documentation/DSP/html/dir_6128d62f89366c4b8843a6e619831037.html create mode 100644 CMSIS/Documentation/DSP/html/dir_640aa2eed9b78c9534642de10c55cd76.html create mode 100644 CMSIS/Documentation/DSP/html/dir_64e2a74b8b7bbc67c7b58e8d27693791.html create mode 100644 CMSIS/Documentation/DSP/html/dir_677f903d85fbea9a56056645305fd3cb.html create mode 100644 CMSIS/Documentation/DSP/html/dir_67fa1d0aab2310595b9aeb6c7b217b31.html create mode 100644 CMSIS/Documentation/DSP/html/dir_68b896fe322128a858fd31091509f536.html create mode 100644 CMSIS/Documentation/DSP/html/dir_6ba48a5a8374668719ef019fe5c253cc.html create mode 100644 CMSIS/Documentation/DSP/html/dir_6f165a89e15e99ac3f22d8f869410ac4.html create mode 100644 CMSIS/Documentation/DSP/html/dir_6fa7a20b876299d97755d41c2d48a6a5.html create mode 100644 CMSIS/Documentation/DSP/html/dir_7101093b4d1c318dab4c75d3b6d4e65e.html create mode 100644 CMSIS/Documentation/DSP/html/dir_7b31f24274e1fbd0785fc4576840c524.html create mode 100644 CMSIS/Documentation/DSP/html/dir_7c360855219f51fadbd92197472e63eb.html create mode 100644 CMSIS/Documentation/DSP/html/dir_7d4cec4b61e1207b4d4e94667e8b33c4.html create mode 100644 CMSIS/Documentation/DSP/html/dir_7d5684d3cdce709028a67dede40715c9.html create mode 100644 CMSIS/Documentation/DSP/html/dir_7e8aa87db1ad6b3d9b1f25792e7c5208.html create mode 100644 CMSIS/Documentation/DSP/html/dir_81c44c586c907f45c06b9b0a1d54e536.html create mode 100644 CMSIS/Documentation/DSP/html/dir_822489d6fe1c800fff671c2e07883531.html create mode 100644 CMSIS/Documentation/DSP/html/dir_82f440d47881c253175a7975df0d431b.html create mode 100644 CMSIS/Documentation/DSP/html/dir_8414b1b93f9b578e0e4fd694ad6d561d.html create mode 100644 CMSIS/Documentation/DSP/html/dir_856524284ebe840938865dc061f982fb.html create mode 100644 CMSIS/Documentation/DSP/html/dir_8964a87ec8901bd068212c6dbdc5667e.html create mode 100644 CMSIS/Documentation/DSP/html/dir_8e3293b977a6b314227f0cbb91dff730.html create mode 100644 CMSIS/Documentation/DSP/html/dir_8ec650f333a7a305dec681cfacaa8edc.html create mode 100644 CMSIS/Documentation/DSP/html/dir_8f74d965c767f9f408b01fb8ac42c08d.html create mode 100644 CMSIS/Documentation/DSP/html/dir_918b1d9c020a9c8774a15ad3971a73ba.html create mode 100644 CMSIS/Documentation/DSP/html/dir_925317a6e91dbb02ffd51da5d221b046.html create mode 100644 CMSIS/Documentation/DSP/html/dir_92c426a233a3fdd85d56996e21a98e0e.html create mode 100644 CMSIS/Documentation/DSP/html/dir_99f4521c725f0e333e2b206f562a5db7.html create mode 100644 CMSIS/Documentation/DSP/html/dir_9aca731d350c1cdbae92b5821b7281b6.html create mode 100644 CMSIS/Documentation/DSP/html/dir_9bbc0b803a378696e320e7975798d136.html create mode 100644 CMSIS/Documentation/DSP/html/dir_9c857f0e41082f634e50072d001e0d4f.html create mode 100644 CMSIS/Documentation/DSP/html/dir_9ec4a86676306e0fd116a00bf2906438.html create mode 100644 CMSIS/Documentation/DSP/html/dir_a318715356e0ddd7f0022cb090f89fc2.html create mode 100644 CMSIS/Documentation/DSP/html/dir_a368b1aeece590aaffe7782f861e3d24.html create mode 100644 CMSIS/Documentation/DSP/html/dir_a4dee065d84ef6ffe4004c9ef0acf573.html create mode 100644 CMSIS/Documentation/DSP/html/dir_a757f05afb4eb2e937a151caf65a9259.html create mode 100644 CMSIS/Documentation/DSP/html/dir_a9b08443a15a54b29b0454fe878922b3.html create mode 100644 CMSIS/Documentation/DSP/html/dir_aa7ef7d51ba6279587b659bb78c926be.html create mode 100644 CMSIS/Documentation/DSP/html/dir_af59df418deac60c7129b68088884655.html create mode 100644 CMSIS/Documentation/DSP/html/dir_b175b6a1b0e91b31e821dead0757e039.html create mode 100644 CMSIS/Documentation/DSP/html/dir_b4620baec99d7beabdab610e4d749ef9.html create mode 100644 CMSIS/Documentation/DSP/html/dir_b5d45ad7eb5bf398416f62f8980ddf77.html create mode 100644 CMSIS/Documentation/DSP/html/dir_b88714652b8aa1e1c1599fa05e2dbc2f.html create mode 100644 CMSIS/Documentation/DSP/html/dir_ba345a22c23c468dbe342a31a3980d31.html create mode 100644 CMSIS/Documentation/DSP/html/dir_be2d3df67661aefe0e3f0071a1d6f8f1.html create mode 100644 CMSIS/Documentation/DSP/html/dir_c2e666cea3ed7c127463edfe7b3abed4.html create mode 100644 CMSIS/Documentation/DSP/html/dir_cc6125d285775e245d68db3d4ce69092.html create mode 100644 CMSIS/Documentation/DSP/html/dir_cd8c33382d73f02781c40066dbd2f0d5.html create mode 100644 CMSIS/Documentation/DSP/html/dir_cf417d728100a167f563acfac33cb7c7.html create mode 100644 CMSIS/Documentation/DSP/html/dir_d1af19de43f00bd515b519c982d49d68.html create mode 100644 CMSIS/Documentation/DSP/html/dir_d1d61a1361fc579da85c1b709ed868d7.html create mode 100644 CMSIS/Documentation/DSP/html/dir_d3331dca3948a91095eeb99d07575db0.html create mode 100644 CMSIS/Documentation/DSP/html/dir_d6b73ad7e408302c29ea0ebadf42639d.html create mode 100644 CMSIS/Documentation/DSP/html/dir_daf4f5c4da18fbee2cc01397e7059227.html create mode 100644 CMSIS/Documentation/DSP/html/dir_dcc7392e27ceedcb8fca5c4cd07c4b5c.html create mode 100644 CMSIS/Documentation/DSP/html/dir_e04602aba7b2f9f43e3429e32fb5dc36.html create mode 100644 CMSIS/Documentation/DSP/html/dir_e4eb7b834609f1fe20523c66b23e4a87.html create mode 100644 CMSIS/Documentation/DSP/html/dir_e677fc34f5347e58d43c339b53e9b418.html create mode 100644 CMSIS/Documentation/DSP/html/dir_e69484b12825f40a4799c3db7df7c339.html create mode 100644 CMSIS/Documentation/DSP/html/dir_e850fff378e36258e2a085808e9d898c.html create mode 100644 CMSIS/Documentation/DSP/html/dir_eaa4f497a3f9bf201d37aaf8d8603deb.html create mode 100644 CMSIS/Documentation/DSP/html/dir_ed0f06d1d48a5e921d9f4bc3a2223aa6.html create mode 100644 CMSIS/Documentation/DSP/html/dir_f31395880d34591c756e13478059d1a5.html create mode 100644 CMSIS/Documentation/DSP/html/dir_f3f90e767886505989b4baa9d4b81390.html create mode 100644 CMSIS/Documentation/DSP/html/dir_fa76c9f4334252cb8d941364a7ed9feb.html create mode 100644 CMSIS/Documentation/DSP/html/dir_fccaebac91eec4cb351e86457c5d1310.html create mode 100644 CMSIS/Documentation/DSP/html/dotProduct.gif create mode 100644 CMSIS/Documentation/DSP/html/doxygen.css create mode 100644 CMSIS/Documentation/DSP/html/doxygen.png create mode 100644 CMSIS/Documentation/DSP/html/dynsections.js create mode 100644 CMSIS/Documentation/DSP/html/examples.html create mode 100644 CMSIS/Documentation/DSP/html/files.html create mode 100644 CMSIS/Documentation/DSP/html/ftv2blank.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2cl.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2doc.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2link.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2mo.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2node.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2ns.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/DSP/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/DSP/html/functions.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x62.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x65.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x66.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x69.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x6b.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x6c.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x6d.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x6e.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x6f.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x70.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x72.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x73.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x74.html create mode 100644 CMSIS/Documentation/DSP/html/functions_0x78.html create mode 100644 CMSIS/Documentation/DSP/html/functions_dup.js create mode 100644 CMSIS/Documentation/DSP/html/functions_vars.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars.js create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x62.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x65.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x66.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x69.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x6b.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x6c.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x6d.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x6e.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x6f.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x70.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x72.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x73.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x74.html create mode 100644 CMSIS/Documentation/DSP/html/functions_vars_0x78.html create mode 100644 CMSIS/Documentation/DSP/html/globals.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x61.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x62.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x63.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x64.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x65.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x66.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x67.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x69.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x6c.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x6d.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x6e.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x6f.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x70.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x71.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x72.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x73.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x74.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x75.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x76.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x77.html create mode 100644 CMSIS/Documentation/DSP/html/globals_0x78.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x61.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x62.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x63.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x64.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x66.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x69.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x6d.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x6e.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x70.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x73.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x74.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x75.html create mode 100644 CMSIS/Documentation/DSP/html/globals_defs_0x78.html create mode 100644 CMSIS/Documentation/DSP/html/globals_enum.html create mode 100644 CMSIS/Documentation/DSP/html/globals_eval.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x62.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x63.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x64.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x66.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x67.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x69.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x6c.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x6d.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x6e.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x6f.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x70.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x71.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x72.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x73.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x74.html create mode 100644 CMSIS/Documentation/DSP/html/globals_func_0x76.html create mode 100644 CMSIS/Documentation/DSP/html/globals_type.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x62.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x63.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x64.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x65.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x66.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x67.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x69.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x6c.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x6d.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x6e.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x6f.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x72.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x73.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x74.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x76.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x77.html create mode 100644 CMSIS/Documentation/DSP/html/globals_vars_0x78.html create mode 100644 CMSIS/Documentation/DSP/html/group___basic_abs.html create mode 100644 CMSIS/Documentation/DSP/html/group___basic_abs.js create mode 100644 CMSIS/Documentation/DSP/html/group___basic_add.html create mode 100644 CMSIS/Documentation/DSP/html/group___basic_add.js create mode 100644 CMSIS/Documentation/DSP/html/group___basic_mult.html create mode 100644 CMSIS/Documentation/DSP/html/group___basic_mult.js create mode 100644 CMSIS/Documentation/DSP/html/group___basic_sub.html create mode 100644 CMSIS/Documentation/DSP/html/group___basic_sub.js create mode 100644 CMSIS/Documentation/DSP/html/group___bilinear_interpolate.html create mode 100644 CMSIS/Documentation/DSP/html/group___bilinear_interpolate.js create mode 100644 CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.html create mode 100644 CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.js create mode 100644 CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.html create mode 100644 CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.js create mode 100644 CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.html create mode 100644 CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.js create mode 100644 CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.html create mode 100644 CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.js create mode 100644 CMSIS/Documentation/DSP/html/group___class_marks.html create mode 100644 CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.html create mode 100644 CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.js create mode 100644 CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.html create mode 100644 CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.js create mode 100644 CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.html create mode 100644 CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.js create mode 100644 CMSIS/Documentation/DSP/html/group___complex_f_f_t.html create mode 100644 CMSIS/Documentation/DSP/html/group___complex_f_f_t.js create mode 100644 CMSIS/Documentation/DSP/html/group___conv.html create mode 100644 CMSIS/Documentation/DSP/html/group___conv.js create mode 100644 CMSIS/Documentation/DSP/html/group___convolution_example.html create mode 100644 CMSIS/Documentation/DSP/html/group___corr.html create mode 100644 CMSIS/Documentation/DSP/html/group___corr.js create mode 100644 CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.html create mode 100644 CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.js create mode 100644 CMSIS/Documentation/DSP/html/group___dotproduct_example.html create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r.html create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r.js create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.html create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.js create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r___lattice.html create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r___lattice.js create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r___sparse.html create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r___sparse.js create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r__decimate.html create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r__decimate.js create mode 100644 CMSIS/Documentation/DSP/html/group___f_i_r_l_p_f.html create mode 100644 CMSIS/Documentation/DSP/html/group___fast.html create mode 100644 CMSIS/Documentation/DSP/html/group___fill.html create mode 100644 CMSIS/Documentation/DSP/html/group___fill.js create mode 100644 CMSIS/Documentation/DSP/html/group___frequency_bin.html create mode 100644 CMSIS/Documentation/DSP/html/group___g_e_q5_band.html create mode 100644 CMSIS/Documentation/DSP/html/group___i_i_r___lattice.html create mode 100644 CMSIS/Documentation/DSP/html/group___i_i_r___lattice.js create mode 100644 CMSIS/Documentation/DSP/html/group___l_m_s.html create mode 100644 CMSIS/Documentation/DSP/html/group___l_m_s.js create mode 100644 CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.html create mode 100644 CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.js create mode 100644 CMSIS/Documentation/DSP/html/group___linear_interp_example.html create mode 100644 CMSIS/Documentation/DSP/html/group___linear_interpolate.html create mode 100644 CMSIS/Documentation/DSP/html/group___linear_interpolate.js create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_add.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_add.js create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_example.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_init.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_init.js create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_inv.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_inv.js create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_mult.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_mult.js create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_scale.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_scale.js create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_sub.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_sub.js create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_trans.html create mode 100644 CMSIS/Documentation/DSP/html/group___matrix_trans.js create mode 100644 CMSIS/Documentation/DSP/html/group___max.html create mode 100644 CMSIS/Documentation/DSP/html/group___max.js create mode 100644 CMSIS/Documentation/DSP/html/group___min.html create mode 100644 CMSIS/Documentation/DSP/html/group___min.js create mode 100644 CMSIS/Documentation/DSP/html/group___p_i_d.html create mode 100644 CMSIS/Documentation/DSP/html/group___p_i_d.js create mode 100644 CMSIS/Documentation/DSP/html/group___partial_conv.html create mode 100644 CMSIS/Documentation/DSP/html/group___partial_conv.js create mode 100644 CMSIS/Documentation/DSP/html/group___r_m_s.html create mode 100644 CMSIS/Documentation/DSP/html/group___r_m_s.js create mode 100644 CMSIS/Documentation/DSP/html/group___radix8___c_f_f_t___c_i_f_f_t.html create mode 100644 CMSIS/Documentation/DSP/html/group___real_f_f_t.html create mode 100644 CMSIS/Documentation/DSP/html/group___real_f_f_t.js create mode 100644 CMSIS/Documentation/DSP/html/group___s_q_r_t.html create mode 100644 CMSIS/Documentation/DSP/html/group___s_q_r_t.js create mode 100644 CMSIS/Documentation/DSP/html/group___s_t_d.html create mode 100644 CMSIS/Documentation/DSP/html/group___s_t_d.js create mode 100644 CMSIS/Documentation/DSP/html/group___signal_convergence.html create mode 100644 CMSIS/Documentation/DSP/html/group___sin_cos.html create mode 100644 CMSIS/Documentation/DSP/html/group___sin_cos.js create mode 100644 CMSIS/Documentation/DSP/html/group___sin_cos_example.html create mode 100644 CMSIS/Documentation/DSP/html/group___variance_example.html create mode 100644 CMSIS/Documentation/DSP/html/group__clarke.html create mode 100644 CMSIS/Documentation/DSP/html/group__clarke.js create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__conj.html create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__conj.js create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.html create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.js create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__mag.html create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__mag.js create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.html create mode 100644 CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.js create mode 100644 CMSIS/Documentation/DSP/html/group__copy.html create mode 100644 CMSIS/Documentation/DSP/html/group__copy.js create mode 100644 CMSIS/Documentation/DSP/html/group__cos.html create mode 100644 CMSIS/Documentation/DSP/html/group__cos.js create mode 100644 CMSIS/Documentation/DSP/html/group__dot__prod.html create mode 100644 CMSIS/Documentation/DSP/html/group__dot__prod.js create mode 100644 CMSIS/Documentation/DSP/html/group__float__to__x.html create mode 100644 CMSIS/Documentation/DSP/html/group__float__to__x.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_cmplx_math.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_cmplx_math.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_controller.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_controller.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_examples.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_examples.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_fast_math.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_fast_math.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_filters.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_filters.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_interpolation.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_interpolation.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_math.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_math.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_matrix.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_matrix.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_stats.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_stats.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_support.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_support.js create mode 100644 CMSIS/Documentation/DSP/html/group__group_transforms.html create mode 100644 CMSIS/Documentation/DSP/html/group__group_transforms.js create mode 100644 CMSIS/Documentation/DSP/html/group__inv__clarke.html create mode 100644 CMSIS/Documentation/DSP/html/group__inv__clarke.js create mode 100644 CMSIS/Documentation/DSP/html/group__inv__park.html create mode 100644 CMSIS/Documentation/DSP/html/group__inv__park.js create mode 100644 CMSIS/Documentation/DSP/html/group__mean.html create mode 100644 CMSIS/Documentation/DSP/html/group__mean.js create mode 100644 CMSIS/Documentation/DSP/html/group__negate.html create mode 100644 CMSIS/Documentation/DSP/html/group__negate.js create mode 100644 CMSIS/Documentation/DSP/html/group__offset.html create mode 100644 CMSIS/Documentation/DSP/html/group__offset.js create mode 100644 CMSIS/Documentation/DSP/html/group__park.html create mode 100644 CMSIS/Documentation/DSP/html/group__park.js create mode 100644 CMSIS/Documentation/DSP/html/group__power.html create mode 100644 CMSIS/Documentation/DSP/html/group__power.js create mode 100644 CMSIS/Documentation/DSP/html/group__q15__to__x.html create mode 100644 CMSIS/Documentation/DSP/html/group__q15__to__x.js create mode 100644 CMSIS/Documentation/DSP/html/group__q31__to__x.html create mode 100644 CMSIS/Documentation/DSP/html/group__q31__to__x.js create mode 100644 CMSIS/Documentation/DSP/html/group__q7__to__x.html create mode 100644 CMSIS/Documentation/DSP/html/group__q7__to__x.js create mode 100644 CMSIS/Documentation/DSP/html/group__scale.html create mode 100644 CMSIS/Documentation/DSP/html/group__scale.js create mode 100644 CMSIS/Documentation/DSP/html/group__shift.html create mode 100644 CMSIS/Documentation/DSP/html/group__shift.js create mode 100644 CMSIS/Documentation/DSP/html/group__sin.html create mode 100644 CMSIS/Documentation/DSP/html/group__sin.js create mode 100644 CMSIS/Documentation/DSP/html/group__variance.html create mode 100644 CMSIS/Documentation/DSP/html/group__variance.js create mode 100644 CMSIS/Documentation/DSP/html/index.html create mode 100644 CMSIS/Documentation/DSP/html/jquery.js create mode 100644 CMSIS/Documentation/DSP/html/linearInterpExampleMethod1.gif create mode 100644 CMSIS/Documentation/DSP/html/linearInterpExampleMethod2.gif create mode 100644 CMSIS/Documentation/DSP/html/matrixExample.gif create mode 100644 CMSIS/Documentation/DSP/html/modules.html create mode 100644 CMSIS/Documentation/DSP/html/modules.js create mode 100644 CMSIS/Documentation/DSP/html/nav_f.png create mode 100644 CMSIS/Documentation/DSP/html/nav_g.png create mode 100644 CMSIS/Documentation/DSP/html/nav_h.png create mode 100644 CMSIS/Documentation/DSP/html/navtree.css create mode 100644 CMSIS/Documentation/DSP/html/navtree.js create mode 100644 CMSIS/Documentation/DSP/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/DSP/html/navtreeindex1.js create mode 100644 CMSIS/Documentation/DSP/html/navtreeindex2.js create mode 100644 CMSIS/Documentation/DSP/html/navtreeindex3.js create mode 100644 CMSIS/Documentation/DSP/html/open.png create mode 100644 CMSIS/Documentation/DSP/html/pages.html create mode 100644 CMSIS/Documentation/DSP/html/park.gif create mode 100644 CMSIS/Documentation/DSP/html/parkFormula.gif create mode 100644 CMSIS/Documentation/DSP/html/parkInvFormula.gif create mode 100644 CMSIS/Documentation/DSP/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/DSP/html/resize.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_5f.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_5f.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_62.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_62.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_63.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_63.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_64.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_64.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_65.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_65.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_66.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_66.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_67.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_67.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_68.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_68.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_69.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_69.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_6b.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_6b.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_6c.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_6c.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_6d.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_6d.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_6e.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_6e.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_6f.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_6f.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_70.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_70.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_71.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_71.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_72.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_72.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_73.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_73.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_74.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_74.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_75.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_75.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_76.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_76.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_77.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_77.js create mode 100644 CMSIS/Documentation/DSP/html/search/all_78.html create mode 100644 CMSIS/Documentation/DSP/html/search/all_78.js create mode 100644 CMSIS/Documentation/DSP/html/search/classes_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/classes_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/close.png create mode 100644 CMSIS/Documentation/DSP/html/search/defines_5f.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_5f.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_62.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_62.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_63.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_63.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_64.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_64.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_66.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_66.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_69.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_69.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_6d.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_6d.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_6e.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_6e.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_70.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_70.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_73.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_73.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_74.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_74.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_75.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_75.js create mode 100644 CMSIS/Documentation/DSP/html/search/defines_78.html create mode 100644 CMSIS/Documentation/DSP/html/search/defines_78.js create mode 100644 CMSIS/Documentation/DSP/html/search/enums_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/enums_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/enumvalues_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/enumvalues_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/files_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/files_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/files_63.html create mode 100644 CMSIS/Documentation/DSP/html/search/files_63.js create mode 100644 CMSIS/Documentation/DSP/html/search/files_67.html create mode 100644 CMSIS/Documentation/DSP/html/search/files_67.js create mode 100644 CMSIS/Documentation/DSP/html/search/functions_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/functions_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/functions_63.html create mode 100644 CMSIS/Documentation/DSP/html/search/functions_63.js create mode 100644 CMSIS/Documentation/DSP/html/search/functions_67.html create mode 100644 CMSIS/Documentation/DSP/html/search/functions_67.js create mode 100644 CMSIS/Documentation/DSP/html/search/functions_6d.html create mode 100644 CMSIS/Documentation/DSP/html/search/functions_6d.js create mode 100644 CMSIS/Documentation/DSP/html/search/functions_73.html create mode 100644 CMSIS/Documentation/DSP/html/search/functions_73.js create mode 100644 CMSIS/Documentation/DSP/html/search/functions_74.html create mode 100644 CMSIS/Documentation/DSP/html/search/functions_74.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_62.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_62.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_63.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_63.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_64.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_64.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_65.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_65.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_66.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_66.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_67.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_67.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_68.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_68.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_69.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_69.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_6c.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_6c.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_6d.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_6d.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_6e.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_6e.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_70.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_70.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_72.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_72.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_73.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_73.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_74.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_74.js create mode 100644 CMSIS/Documentation/DSP/html/search/groups_76.html create mode 100644 CMSIS/Documentation/DSP/html/search/groups_76.js create mode 100644 CMSIS/Documentation/DSP/html/search/mag_sel.png create mode 100644 CMSIS/Documentation/DSP/html/search/nomatches.html create mode 100644 CMSIS/Documentation/DSP/html/search/pages_63.html create mode 100644 CMSIS/Documentation/DSP/html/search/pages_63.js create mode 100644 CMSIS/Documentation/DSP/html/search/pages_64.html create mode 100644 CMSIS/Documentation/DSP/html/search/pages_64.js create mode 100644 CMSIS/Documentation/DSP/html/search/search.css create mode 100644 CMSIS/Documentation/DSP/html/search/search.js create mode 100644 CMSIS/Documentation/DSP/html/search/search_l.png create mode 100644 CMSIS/Documentation/DSP/html/search/search_m.png create mode 100644 CMSIS/Documentation/DSP/html/search/search_r.png create mode 100644 CMSIS/Documentation/DSP/html/search/typedefs_66.html create mode 100644 CMSIS/Documentation/DSP/html/search/typedefs_66.js create mode 100644 CMSIS/Documentation/DSP/html/search/typedefs_71.html create mode 100644 CMSIS/Documentation/DSP/html/search/typedefs_71.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_61.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_61.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_62.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_62.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_63.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_63.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_64.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_64.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_65.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_65.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_66.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_66.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_67.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_67.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_69.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_69.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6b.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6b.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6c.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6c.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6d.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6d.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6e.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6e.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6f.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_6f.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_70.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_70.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_72.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_72.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_73.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_73.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_74.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_74.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_76.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_76.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_77.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_77.js create mode 100644 CMSIS/Documentation/DSP/html/search/variables_78.html create mode 100644 CMSIS/Documentation/DSP/html/search/variables_78.js create mode 100644 CMSIS/Documentation/DSP/html/sinCos.gif create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.js create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.html create mode 100644 CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.js create mode 100644 CMSIS/Documentation/DSP/html/sync_off.png create mode 100644 CMSIS/Documentation/DSP/html/sync_on.png create mode 100644 CMSIS/Documentation/DSP/html/tab_a.png create mode 100644 CMSIS/Documentation/DSP/html/tab_b.png create mode 100644 CMSIS/Documentation/DSP/html/tab_h.png create mode 100644 CMSIS/Documentation/DSP/html/tab_s.png create mode 100644 CMSIS/Documentation/DSP/html/tab_topnav.png create mode 100644 CMSIS/Documentation/DSP/html/tabs.css create mode 100644 CMSIS/Documentation/Driver/html/CAN_Bit_Timing.png create mode 100644 CMSIS/Documentation/Driver/html/CAN_Node.png create mode 100644 CMSIS/Documentation/Driver/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/Driver/html/Driver.png create mode 100644 CMSIS/Documentation/Driver/html/EthernetSchematic.png create mode 100644 CMSIS/Documentation/Driver/html/I2C_BlockDiagram.png create mode 100644 CMSIS/Documentation/Driver/html/NAND_Schematics.png create mode 100644 CMSIS/Documentation/Driver/html/Non_blocking_transmit_small.png create mode 100644 CMSIS/Documentation/Driver/html/SAI_Schematics.png create mode 100644 CMSIS/Documentation/Driver/html/SD_1BitBusMode.png create mode 100644 CMSIS/Documentation/Driver/html/SD_4BitBusMode.png create mode 100644 CMSIS/Documentation/Driver/html/SPI_BusMode.png create mode 100644 CMSIS/Documentation/Driver/html/SPI_Master1Slaves.png create mode 100644 CMSIS/Documentation/Driver/html/SPI_Master3Slaves.png create mode 100644 CMSIS/Documentation/Driver/html/USB_Schematics.png create mode 100644 CMSIS/Documentation/Driver/html/_driver___c_a_n_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___c_a_n_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___common_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___common_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___e_t_h_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___e_t_h_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___flash_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___flash_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___i2_c_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___i2_c_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___m_c_i_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___m_c_i_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___s_a_i_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___s_a_i_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___s_p_i_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___s_p_i_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_b_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_b_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8c.html create mode 100644 CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8h.html create mode 100644 CMSIS/Documentation/Driver/html/_driver_validation.html create mode 100644 CMSIS/Documentation/Driver/html/_general_8txt.html create mode 100644 CMSIS/Documentation/Driver/html/_reference_implementation.html create mode 100644 CMSIS/Documentation/Driver/html/_theory_operation.html create mode 100644 CMSIS/Documentation/Driver/html/annotated.html create mode 100644 CMSIS/Documentation/Driver/html/bc_s.png create mode 100644 CMSIS/Documentation/Driver/html/bdwn.png create mode 100644 CMSIS/Documentation/Driver/html/classes.html create mode 100644 CMSIS/Documentation/Driver/html/closed.png create mode 100644 CMSIS/Documentation/Driver/html/cmsis.css create mode 100644 CMSIS/Documentation/Driver/html/dir_041cc4048c8229d7729b502626227b03.html create mode 100644 CMSIS/Documentation/Driver/html/dir_7151b3cc910409bb744bd274374c738d.html create mode 100644 CMSIS/Documentation/Driver/html/dir_9c39448ea46a8e15f1aabc7dec307fcf.html create mode 100644 CMSIS/Documentation/Driver/html/doxygen.css create mode 100644 CMSIS/Documentation/Driver/html/doxygen.png create mode 100644 CMSIS/Documentation/Driver/html/driver_revision_history.html create mode 100644 CMSIS/Documentation/Driver/html/driver_sai_i2s.png create mode 100644 CMSIS/Documentation/Driver/html/driver_sai_lsb.png create mode 100644 CMSIS/Documentation/Driver/html/driver_sai_msb.png create mode 100644 CMSIS/Documentation/Driver/html/driver_sai_pcm.png create mode 100644 CMSIS/Documentation/Driver/html/driver_sai_user.png create mode 100644 CMSIS/Documentation/Driver/html/dynsections.js create mode 100644 CMSIS/Documentation/Driver/html/files.html create mode 100644 CMSIS/Documentation/Driver/html/ftv2blank.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2cl.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2doc.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2link.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2mo.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2node.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2ns.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/Driver/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/Driver/html/functions.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x62.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x63.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x64.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x65.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x66.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x67.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x68.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x69.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x6c.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x6d.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x6e.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x6f.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x70.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x72.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x73.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x74.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x75.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x76.html create mode 100644 CMSIS/Documentation/Driver/html/functions_0x77.html create mode 100644 CMSIS/Documentation/Driver/html/functions_dup.js create mode 100644 CMSIS/Documentation/Driver/html/functions_vars.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars.js create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x62.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x63.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x64.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x65.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x66.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x67.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x68.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x69.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x6c.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x6d.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x6e.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x6f.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x70.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x72.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x73.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x74.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x75.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x76.html create mode 100644 CMSIS/Documentation/Driver/html/functions_vars_0x77.html create mode 100644 CMSIS/Documentation/Driver/html/globals.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x63.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x64.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x65.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x66.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x69.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x6d.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x6e.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x70.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x73.html create mode 100644 CMSIS/Documentation/Driver/html/globals_0x75.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x63.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x64.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x65.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x66.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x69.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x6d.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x6e.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x73.html create mode 100644 CMSIS/Documentation/Driver/html/globals_defs_0x75.html create mode 100644 CMSIS/Documentation/Driver/html/globals_enum.html create mode 100644 CMSIS/Documentation/Driver/html/globals_eval.html create mode 100644 CMSIS/Documentation/Driver/html/globals_func.html create mode 100644 CMSIS/Documentation/Driver/html/globals_type.html create mode 100644 CMSIS/Documentation/Driver/html/group___c_a_n__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___c_a_n__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___flash__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___flash__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___i2_c__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___i2_c__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___n_a_n_d__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___n_a_n_d__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___s_a_i__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___s_a_i__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___s_p_i__control.html create mode 100644 CMSIS/Documentation/Driver/html/group___s_p_i__control.js create mode 100644 CMSIS/Documentation/Driver/html/group___s_p_i__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___s_p_i__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b__speed.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b__speed.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.js create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.html create mode 100644 CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__mode__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__mode__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__common__drv__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__common__drv__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__interface__types1.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__interface__types1.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__time__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__time__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__execution__status.html create mode 100644 CMSIS/Documentation/Driver/html/group__execution__status.js create mode 100644 CMSIS/Documentation/Driver/html/group__flash__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__flash__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__address__flags.html create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__address__flags.js create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__control__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__control__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__control__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__control__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__i2c__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__control__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__control__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__event__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__event__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__control__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__control__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__control__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__control__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__execution__status.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__execution__status.js create mode 100644 CMSIS/Documentation/Driver/html/group__nand__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__nand__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__bit__order__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__bit__order__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__companding__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__companding__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__configure__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__configure__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__controls.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__controls.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__data__bits__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__data__bits__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__execution__status.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__execution__status.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__frame__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__frame__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mode__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mode__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mono__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__mono__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__protocol__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__protocol__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__slot__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__slot__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__sai__sync__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__sai__sync__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__execution__status.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__execution__status.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.html create mode 100644 CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__clock__phase.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__clock__phase.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__clock__polarity.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__clock__polarity.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__data__bits.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__data__bits.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__execution__status.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__execution__status.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__flow__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__flow__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__misc__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__misc__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__mode__control.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__mode__control.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__parity__bit.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__parity__bit.js create mode 100644 CMSIS/Documentation/Driver/html/group__usart__stop__bits.html create mode 100644 CMSIS/Documentation/Driver/html/group__usart__stop__bits.js create mode 100644 CMSIS/Documentation/Driver/html/group__usb__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__usb__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__usbd__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__usbd__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__usbh__hci__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__usbh__hci__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__usbh__host__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__usbh__host__gr.js create mode 100644 CMSIS/Documentation/Driver/html/group__usbh__interface__gr.html create mode 100644 CMSIS/Documentation/Driver/html/group__usbh__interface__gr.js create mode 100644 CMSIS/Documentation/Driver/html/image006.png create mode 100644 CMSIS/Documentation/Driver/html/index.html create mode 100644 CMSIS/Documentation/Driver/html/jquery.js create mode 100644 CMSIS/Documentation/Driver/html/modules.html create mode 100644 CMSIS/Documentation/Driver/html/modules.js create mode 100644 CMSIS/Documentation/Driver/html/msc_inline_mscgraph_1.png create mode 100644 CMSIS/Documentation/Driver/html/msc_inline_mscgraph_2.png create mode 100644 CMSIS/Documentation/Driver/html/nav_f.png create mode 100644 CMSIS/Documentation/Driver/html/nav_g.png create mode 100644 CMSIS/Documentation/Driver/html/nav_h.png create mode 100644 CMSIS/Documentation/Driver/html/navtree.css create mode 100644 CMSIS/Documentation/Driver/html/navtree.js create mode 100644 CMSIS/Documentation/Driver/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/Driver/html/navtreeindex1.js create mode 100644 CMSIS/Documentation/Driver/html/navtreeindex2.js create mode 100644 CMSIS/Documentation/Driver/html/navtreeindex3.js create mode 100644 CMSIS/Documentation/Driver/html/navtreeindex4.js create mode 100644 CMSIS/Documentation/Driver/html/navtreeindex5.js create mode 100644 CMSIS/Documentation/Driver/html/open.png create mode 100644 CMSIS/Documentation/Driver/html/pages.html create mode 100644 CMSIS/Documentation/Driver/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/Driver/html/resize.js create mode 100644 CMSIS/Documentation/Driver/html/search.css create mode 100644 CMSIS/Documentation/Driver/html/search/all_5f.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_5f.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_62.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_62.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_63.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_63.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_64.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_64.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_65.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_65.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_66.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_66.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_67.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_67.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_68.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_68.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_69.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_69.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_6c.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_6c.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_6d.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_6d.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_6e.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_6e.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_6f.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_6f.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_70.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_70.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_72.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_72.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_73.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_73.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_74.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_74.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_75.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_75.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_76.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_76.js create mode 100644 CMSIS/Documentation/Driver/html/search/all_77.html create mode 100644 CMSIS/Documentation/Driver/html/search/all_77.js create mode 100644 CMSIS/Documentation/Driver/html/search/classes_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/classes_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/close.png create mode 100644 CMSIS/Documentation/Driver/html/search/defines_5f.html create mode 100644 CMSIS/Documentation/Driver/html/search/defines_5f.js create mode 100644 CMSIS/Documentation/Driver/html/search/defines_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/defines_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/enums_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/enums_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/enumvalues_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/enumvalues_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/files_64.html create mode 100644 CMSIS/Documentation/Driver/html/search/files_64.js create mode 100644 CMSIS/Documentation/Driver/html/search/files_67.html create mode 100644 CMSIS/Documentation/Driver/html/search/files_67.js create mode 100644 CMSIS/Documentation/Driver/html/search/functions_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/functions_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_63.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_63.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_65.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_65.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_66.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_66.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_69.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_69.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_6d.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_6d.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_6e.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_6e.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_73.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_73.js create mode 100644 CMSIS/Documentation/Driver/html/search/groups_75.html create mode 100644 CMSIS/Documentation/Driver/html/search/groups_75.js create mode 100644 CMSIS/Documentation/Driver/html/search/mag_sel.png create mode 100644 CMSIS/Documentation/Driver/html/search/nomatches.html create mode 100644 CMSIS/Documentation/Driver/html/search/pages_64.html create mode 100644 CMSIS/Documentation/Driver/html/search/pages_64.js create mode 100644 CMSIS/Documentation/Driver/html/search/pages_6f.html create mode 100644 CMSIS/Documentation/Driver/html/search/pages_6f.js create mode 100644 CMSIS/Documentation/Driver/html/search/pages_72.html create mode 100644 CMSIS/Documentation/Driver/html/search/pages_72.js create mode 100644 CMSIS/Documentation/Driver/html/search/pages_74.html create mode 100644 CMSIS/Documentation/Driver/html/search/pages_74.js create mode 100644 CMSIS/Documentation/Driver/html/search/search.css create mode 100644 CMSIS/Documentation/Driver/html/search/search.js create mode 100644 CMSIS/Documentation/Driver/html/search/search_l.png create mode 100644 CMSIS/Documentation/Driver/html/search/search_m.png create mode 100644 CMSIS/Documentation/Driver/html/search/search_r.png create mode 100644 CMSIS/Documentation/Driver/html/search/typedefs_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/typedefs_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_61.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_61.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_62.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_62.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_63.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_63.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_64.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_64.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_65.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_65.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_66.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_66.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_67.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_67.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_68.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_68.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_69.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_69.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6c.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6c.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6d.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6d.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6e.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6e.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6f.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_6f.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_70.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_70.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_72.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_72.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_73.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_73.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_74.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_74.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_75.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_75.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_76.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_76.js create mode 100644 CMSIS/Documentation/Driver/html/search/variables_77.html create mode 100644 CMSIS/Documentation/Driver/html/search/variables_77.js create mode 100644 CMSIS/Documentation/Driver/html/sync_off.png create mode 100644 CMSIS/Documentation/Driver/html/sync_on.png create mode 100644 CMSIS/Documentation/Driver/html/tab_a.png create mode 100644 CMSIS/Documentation/Driver/html/tab_b.png create mode 100644 CMSIS/Documentation/Driver/html/tab_h.png create mode 100644 CMSIS/Documentation/Driver/html/tab_s.png create mode 100644 CMSIS/Documentation/Driver/html/tab_topnav.png create mode 100644 CMSIS/Documentation/Driver/html/tabs.css create mode 100644 CMSIS/Documentation/General/html/CMSIS_END_USER_LICENCE_AGREEMENT.pdf create mode 100644 CMSIS/Documentation/General/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/General/html/CMSISv4_small.png create mode 100644 CMSIS/Documentation/General/html/_c_m_revision_history.html create mode 100644 CMSIS/Documentation/General/html/bc_s.png create mode 100644 CMSIS/Documentation/General/html/bdwn.png create mode 100644 CMSIS/Documentation/General/html/closed.png create mode 100644 CMSIS/Documentation/General/html/cmsis.css create mode 100644 CMSIS/Documentation/General/html/doxygen.css create mode 100644 CMSIS/Documentation/General/html/doxygen.png create mode 100644 CMSIS/Documentation/General/html/dynsections.js create mode 100644 CMSIS/Documentation/General/html/ftv2blank.png create mode 100644 CMSIS/Documentation/General/html/ftv2cl.png create mode 100644 CMSIS/Documentation/General/html/ftv2doc.png create mode 100644 CMSIS/Documentation/General/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/General/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/General/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/General/html/ftv2link.png create mode 100644 CMSIS/Documentation/General/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/General/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/General/html/ftv2mo.png create mode 100644 CMSIS/Documentation/General/html/ftv2node.png create mode 100644 CMSIS/Documentation/General/html/ftv2ns.png create mode 100644 CMSIS/Documentation/General/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/General/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/General/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/General/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/General/html/index.html create mode 100644 CMSIS/Documentation/General/html/jquery.js create mode 100644 CMSIS/Documentation/General/html/nav_f.png create mode 100644 CMSIS/Documentation/General/html/nav_g.png create mode 100644 CMSIS/Documentation/General/html/nav_h.png create mode 100644 CMSIS/Documentation/General/html/navtree.css create mode 100644 CMSIS/Documentation/General/html/navtree.js create mode 100644 CMSIS/Documentation/General/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/General/html/open.png create mode 100644 CMSIS/Documentation/General/html/pages.html create mode 100644 CMSIS/Documentation/General/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/General/html/resize.js create mode 100644 CMSIS/Documentation/General/html/sync_off.png create mode 100644 CMSIS/Documentation/General/html/sync_on.png create mode 100644 CMSIS/Documentation/General/html/tab_a.png create mode 100644 CMSIS/Documentation/General/html/tab_b.png create mode 100644 CMSIS/Documentation/General/html/tab_h.png create mode 100644 CMSIS/Documentation/General/html/tab_s.png create mode 100644 CMSIS/Documentation/General/html/tab_topnav.png create mode 100644 CMSIS/Documentation/General/html/tabs.css create mode 100644 CMSIS/Documentation/Pack/html/BSPBundleDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/BasicDFPDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/BoardsSectionMCB1500.png create mode 100644 CMSIS/Documentation/Pack/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/Pack/html/CodeVerify.png create mode 100644 CMSIS/Documentation/Pack/html/ComponentDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/Component_Instances.png create mode 100644 CMSIS/Documentation/Pack/html/ConditionsDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/DFPFlow.png create mode 100644 CMSIS/Documentation/Pack/html/DebugConnect.png create mode 100644 CMSIS/Documentation/Pack/html/DebugDisconnect.png create mode 100644 CMSIS/Documentation/Pack/html/DevBoardDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/DeviceDatabase2.png create mode 100644 CMSIS/Documentation/Pack/html/ExampleDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/FPADisplay.png create mode 100644 CMSIS/Documentation/Pack/html/FPATargetOptions.png create mode 100644 CMSIS/Documentation/Pack/html/LocalInstallation.png create mode 100644 CMSIS/Documentation/Pack/html/MVCM3SpecTable.png create mode 100644 CMSIS/Documentation/Pack/html/PDSC_Example_bottom.png create mode 100644 CMSIS/Documentation/Pack/html/PDSC_Example_top.png create mode 100644 CMSIS/Documentation/Pack/html/PackCreateSteps.png create mode 100644 CMSIS/Documentation/Pack/html/RTX_Conf_CM_Wizard_View.png create mode 100644 CMSIS/Documentation/Pack/html/Reset.png create mode 100644 CMSIS/Documentation/Pack/html/SPVariants_small.png create mode 100644 CMSIS/Documentation/Pack/html/SVDFlow.png create mode 100644 CMSIS/Documentation/Pack/html/SVDIncluded.png create mode 100644 CMSIS/Documentation/Pack/html/StartupSystemFilesAdded.png create mode 100644 CMSIS/Documentation/Pack/html/SystemStartupFiles.png create mode 100644 CMSIS/Documentation/Pack/html/UserCodeTemplatesDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/VariantDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/WebInstallation.png create mode 100644 CMSIS/Documentation/Pack/html/_algorithm_func.html create mode 100644 CMSIS/Documentation/Pack/html/_c_p__editors.html create mode 100644 CMSIS/Documentation/Pack/html/_c_p__packs.html create mode 100644 CMSIS/Documentation/Pack/html/_c_p__s_w_components.html create mode 100644 CMSIS/Documentation/Pack/html/_c_p__z_i_p_tool.html create mode 100644 CMSIS/Documentation/Pack/html/_config_wizard.html create mode 100644 CMSIS/Documentation/Pack/html/_create_pack__d_f_p.html create mode 100644 CMSIS/Documentation/Pack/html/_create_pack_board.html create mode 100644 CMSIS/Documentation/Pack/html/_create_pack_publish.html create mode 100644 CMSIS/Documentation/Pack/html/_create_pack_util.html create mode 100644 CMSIS/Documentation/Pack/html/_create_pack_util.js create mode 100644 CMSIS/Documentation/Pack/html/_flash_algorithm.html create mode 100644 CMSIS/Documentation/Pack/html/_flash_algorithm.js create mode 100644 CMSIS/Documentation/Pack/html/_pack__example.html create mode 100644 CMSIS/Documentation/Pack/html/_pack_chk.html create mode 100644 CMSIS/Documentation/Pack/html/_pack_format.html create mode 100644 CMSIS/Documentation/Pack/html/_pack_format.js create mode 100644 CMSIS/Documentation/Pack/html/bc_s.png create mode 100644 CMSIS/Documentation/Pack/html/bdwn.png create mode 100644 CMSIS/Documentation/Pack/html/closed.png create mode 100644 CMSIS/Documentation/Pack/html/cmsis.css create mode 100644 CMSIS/Documentation/Pack/html/component_files.png create mode 100644 CMSIS/Documentation/Pack/html/doxygen.css create mode 100644 CMSIS/Documentation/Pack/html/doxygen.png create mode 100644 CMSIS/Documentation/Pack/html/dynsections.js create mode 100644 CMSIS/Documentation/Pack/html/element_keywords.html create mode 100644 CMSIS/Documentation/Pack/html/element_releases.html create mode 100644 CMSIS/Documentation/Pack/html/element_taxonomy.html create mode 100644 CMSIS/Documentation/Pack/html/ftv2blank.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2cl.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2doc.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2link.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2mo.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2node.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2ns.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/Pack/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/Pack/html/index.html create mode 100644 CMSIS/Documentation/Pack/html/jquery.js create mode 100644 CMSIS/Documentation/Pack/html/maxInstancesDisplay.png create mode 100644 CMSIS/Documentation/Pack/html/nav_f.png create mode 100644 CMSIS/Documentation/Pack/html/nav_g.png create mode 100644 CMSIS/Documentation/Pack/html/nav_h.png create mode 100644 CMSIS/Documentation/Pack/html/navtree.css create mode 100644 CMSIS/Documentation/Pack/html/navtree.js create mode 100644 CMSIS/Documentation/Pack/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/Pack/html/open.png create mode 100644 CMSIS/Documentation/Pack/html/pack_revision_history.html create mode 100644 CMSIS/Documentation/Pack/html/pages.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc__sequence_name_enum_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_apis_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_boards_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_components_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_conditions_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_devices_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_devices_pg.js create mode 100644 CMSIS/Documentation/Pack/html/pdsc_examples_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_family_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_generators_pg.html create mode 100644 CMSIS/Documentation/Pack/html/pdsc_package_pg.html create mode 100644 CMSIS/Documentation/Pack/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/Pack/html/resize.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_61.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_61.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_63.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_63.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_64.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_64.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_66.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_66.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_70.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_70.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_72.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_72.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_75.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_75.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_78.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_78.js create mode 100644 CMSIS/Documentation/Pack/html/search/all_7a.html create mode 100644 CMSIS/Documentation/Pack/html/search/all_7a.js create mode 100644 CMSIS/Documentation/Pack/html/search/close.png create mode 100644 CMSIS/Documentation/Pack/html/search/mag_sel.png create mode 100644 CMSIS/Documentation/Pack/html/search/nomatches.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_61.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_61.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_63.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_63.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_64.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_64.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_66.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_66.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_70.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_70.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_72.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_72.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_75.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_75.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_78.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_78.js create mode 100644 CMSIS/Documentation/Pack/html/search/pages_7a.html create mode 100644 CMSIS/Documentation/Pack/html/search/pages_7a.js create mode 100644 CMSIS/Documentation/Pack/html/search/search.css create mode 100644 CMSIS/Documentation/Pack/html/search/search.js create mode 100644 CMSIS/Documentation/Pack/html/search/search_l.png create mode 100644 CMSIS/Documentation/Pack/html/search/search_m.png create mode 100644 CMSIS/Documentation/Pack/html/search/search_r.png create mode 100644 CMSIS/Documentation/Pack/html/simplepack_rte.png create mode 100644 CMSIS/Documentation/Pack/html/sync_off.png create mode 100644 CMSIS/Documentation/Pack/html/sync_on.png create mode 100644 CMSIS/Documentation/Pack/html/tab_a.png create mode 100644 CMSIS/Documentation/Pack/html/tab_b.png create mode 100644 CMSIS/Documentation/Pack/html/tab_h.png create mode 100644 CMSIS/Documentation/Pack/html/tab_s.png create mode 100644 CMSIS/Documentation/Pack/html/tab_topnav.png create mode 100644 CMSIS/Documentation/Pack/html/tabs.css create mode 100644 CMSIS/Documentation/RTOS/html/API_Structure.png create mode 100644 CMSIS/Documentation/RTOS/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/RTOS/html/CMSIS_RTOS_Files.png create mode 100644 CMSIS/Documentation/RTOS/html/MailQueue.png create mode 100644 CMSIS/Documentation/RTOS/html/MessageQueue.png create mode 100644 CMSIS/Documentation/RTOS/html/Mutex.png create mode 100644 CMSIS/Documentation/RTOS/html/Semaphore.png create mode 100644 CMSIS/Documentation/RTOS/html/ThreadStatus.png create mode 100644 CMSIS/Documentation/RTOS/html/Timer.png create mode 100644 CMSIS/Documentation/RTOS/html/_function_overview.html create mode 100644 CMSIS/Documentation/RTOS/html/_using_o_s.html create mode 100644 CMSIS/Documentation/RTOS/html/annotated.html create mode 100644 CMSIS/Documentation/RTOS/html/annotated.js create mode 100644 CMSIS/Documentation/RTOS/html/bc_s.png create mode 100644 CMSIS/Documentation/RTOS/html/bdwn.png create mode 100644 CMSIS/Documentation/RTOS/html/classes.html create mode 100644 CMSIS/Documentation/RTOS/html/closed.png create mode 100644 CMSIS/Documentation/RTOS/html/cmsis.css create mode 100644 CMSIS/Documentation/RTOS/html/cmsis__os_8h.html create mode 100644 CMSIS/Documentation/RTOS/html/cmsis__os_8txt.html create mode 100644 CMSIS/Documentation/RTOS/html/cmsis_os_h.html create mode 100644 CMSIS/Documentation/RTOS/html/dir_67baed4ff719a838d401a6dc7774cf41.html create mode 100644 CMSIS/Documentation/RTOS/html/dir_9afdeffb8e409a4e0df5c5bf9ab1a7d2.html create mode 100644 CMSIS/Documentation/RTOS/html/doxygen.css create mode 100644 CMSIS/Documentation/RTOS/html/doxygen.png create mode 100644 CMSIS/Documentation/RTOS/html/dynsections.js create mode 100644 CMSIS/Documentation/RTOS/html/files.html create mode 100644 CMSIS/Documentation/RTOS/html/ftv2blank.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2cl.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2doc.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2link.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2mo.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2node.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2ns.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/RTOS/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/RTOS/html/functions.html create mode 100644 CMSIS/Documentation/RTOS/html/functions_vars.html create mode 100644 CMSIS/Documentation/RTOS/html/globals.html create mode 100644 CMSIS/Documentation/RTOS/html/globals_defs.html create mode 100644 CMSIS/Documentation/RTOS/html/globals_enum.html create mode 100644 CMSIS/Documentation/RTOS/html/globals_eval.html create mode 100644 CMSIS/Documentation/RTOS/html/globals_func.html create mode 100644 CMSIS/Documentation/RTOS/html/globals_type.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.html create mode 100644 CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.js create mode 100644 CMSIS/Documentation/RTOS/html/index.html create mode 100644 CMSIS/Documentation/RTOS/html/jquery.js create mode 100644 CMSIS/Documentation/RTOS/html/modules.html create mode 100644 CMSIS/Documentation/RTOS/html/modules.js create mode 100644 CMSIS/Documentation/RTOS/html/nav_f.png create mode 100644 CMSIS/Documentation/RTOS/html/nav_g.png create mode 100644 CMSIS/Documentation/RTOS/html/nav_h.png create mode 100644 CMSIS/Documentation/RTOS/html/navtree.css create mode 100644 CMSIS/Documentation/RTOS/html/navtree.js create mode 100644 CMSIS/Documentation/RTOS/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/RTOS/html/open.png create mode 100644 CMSIS/Documentation/RTOS/html/pages.html create mode 100644 CMSIS/Documentation/RTOS/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/RTOS/html/resize.js create mode 100644 CMSIS/Documentation/RTOS/html/rtos_revision_history.html create mode 100644 CMSIS/Documentation/RTOS/html/simple_signal.png create mode 100644 CMSIS/Documentation/RTOS/html/structos_mail_q_def__t.html create mode 100644 CMSIS/Documentation/RTOS/html/structos_mail_q_def__t.js create mode 100644 CMSIS/Documentation/RTOS/html/structos_message_q_def__t.html create mode 100644 CMSIS/Documentation/RTOS/html/structos_message_q_def__t.js create mode 100644 CMSIS/Documentation/RTOS/html/structos_mutex_def__t.html create mode 100644 CMSIS/Documentation/RTOS/html/structos_mutex_def__t.js create mode 100644 CMSIS/Documentation/RTOS/html/structos_pool_def__t.html create mode 100644 CMSIS/Documentation/RTOS/html/structos_pool_def__t.js create mode 100644 CMSIS/Documentation/RTOS/html/structos_semaphore_def__t.html create mode 100644 CMSIS/Documentation/RTOS/html/structos_semaphore_def__t.js create mode 100644 CMSIS/Documentation/RTOS/html/structos_thread_def__t.html create mode 100644 CMSIS/Documentation/RTOS/html/structos_thread_def__t.js create mode 100644 CMSIS/Documentation/RTOS/html/structos_timer_def__t.html create mode 100644 CMSIS/Documentation/RTOS/html/structos_timer_def__t.js create mode 100644 CMSIS/Documentation/RTOS/html/sync_off.png create mode 100644 CMSIS/Documentation/RTOS/html/sync_on.png create mode 100644 CMSIS/Documentation/RTOS/html/tab_a.png create mode 100644 CMSIS/Documentation/RTOS/html/tab_b.png create mode 100644 CMSIS/Documentation/RTOS/html/tab_h.png create mode 100644 CMSIS/Documentation/RTOS/html/tab_s.png create mode 100644 CMSIS/Documentation/RTOS/html/tab_topnav.png create mode 100644 CMSIS/Documentation/RTOS/html/tabs.css create mode 100644 CMSIS/Documentation/RTX/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/RTX/html/MailQueue.png create mode 100644 CMSIS/Documentation/RTX/html/MessageQueue.png create mode 100644 CMSIS/Documentation/RTX/html/Mutex.png create mode 100644 CMSIS/Documentation/RTX/html/RTX_Structure.png create mode 100644 CMSIS/Documentation/RTX/html/Semaphore.png create mode 100644 CMSIS/Documentation/RTX/html/ThreadStatus.png create mode 100644 CMSIS/Documentation/RTX/html/Timer.png create mode 100644 CMSIS/Documentation/RTX/html/_configure.html create mode 100644 CMSIS/Documentation/RTX/html/_configure.js create mode 100644 CMSIS/Documentation/RTX/html/_creating__r_t_x__l_i_b.html create mode 100644 CMSIS/Documentation/RTX/html/_example_r_t_x__tutorial.html create mode 100644 CMSIS/Documentation/RTX/html/_files.html create mode 100644 CMSIS/Documentation/RTX/html/_function_overview.html create mode 100644 CMSIS/Documentation/RTX/html/_low_power.html create mode 100644 CMSIS/Documentation/RTX/html/_m_i_s_r_a_compliance.html create mode 100644 CMSIS/Documentation/RTX/html/_overview.html create mode 100644 CMSIS/Documentation/RTX/html/_overview.js create mode 100644 CMSIS/Documentation/RTX/html/_r_t_x___conf___c_m_8c.html create mode 100644 CMSIS/Documentation/RTX/html/_s_v_c_functions.html create mode 100644 CMSIS/Documentation/RTX/html/_system_config.html create mode 100644 CMSIS/Documentation/RTX/html/_technical_data.html create mode 100644 CMSIS/Documentation/RTX/html/_theory.html create mode 100644 CMSIS/Documentation/RTX/html/_thread_config.html create mode 100644 CMSIS/Documentation/RTX/html/_timer_tick.html create mode 100644 CMSIS/Documentation/RTX/html/_using.html create mode 100644 CMSIS/Documentation/RTX/html/add_item.png create mode 100644 CMSIS/Documentation/RTX/html/annotated.html create mode 100644 CMSIS/Documentation/RTX/html/annotated.js create mode 100644 CMSIS/Documentation/RTX/html/bc_s.png create mode 100644 CMSIS/Documentation/RTX/html/bdwn.png create mode 100644 CMSIS/Documentation/RTX/html/classes.html create mode 100644 CMSIS/Documentation/RTX/html/closed.png create mode 100644 CMSIS/Documentation/RTX/html/cmsis.css create mode 100644 CMSIS/Documentation/RTX/html/cmsis__os_8h.html create mode 100644 CMSIS/Documentation/RTX/html/cmsis__os__api_8txt.html create mode 100644 CMSIS/Documentation/RTX/html/config_wizard.png create mode 100644 CMSIS/Documentation/RTX/html/doxygen.png create mode 100644 CMSIS/Documentation/RTX/html/dynsections.js create mode 100644 CMSIS/Documentation/RTX/html/files.html create mode 100644 CMSIS/Documentation/RTX/html/ftv2blank.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2cl.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2doc.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2link.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2mo.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2node.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2ns.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/RTX/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/RTX/html/functions.html create mode 100644 CMSIS/Documentation/RTX/html/functions_vars.html create mode 100644 CMSIS/Documentation/RTX/html/globals.html create mode 100644 CMSIS/Documentation/RTX/html/globals_defs.html create mode 100644 CMSIS/Documentation/RTX/html/globals_enum.html create mode 100644 CMSIS/Documentation/RTX/html/globals_eval.html create mode 100644 CMSIS/Documentation/RTX/html/globals_func.html create mode 100644 CMSIS/Documentation/RTX/html/globals_type.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.html create mode 100644 CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.js create mode 100644 CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.html create mode 100644 CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.js create mode 100644 CMSIS/Documentation/RTX/html/index.html create mode 100644 CMSIS/Documentation/RTX/html/jquery.js create mode 100644 CMSIS/Documentation/RTX/html/manage_rte_output.png create mode 100644 CMSIS/Documentation/RTX/html/modules.html create mode 100644 CMSIS/Documentation/RTX/html/modules.js create mode 100644 CMSIS/Documentation/RTX/html/nav_f.png create mode 100644 CMSIS/Documentation/RTX/html/nav_g.png create mode 100644 CMSIS/Documentation/RTX/html/nav_h.png create mode 100644 CMSIS/Documentation/RTX/html/navtree.css create mode 100644 CMSIS/Documentation/RTX/html/navtree.js create mode 100644 CMSIS/Documentation/RTX/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/RTX/html/open.png create mode 100644 CMSIS/Documentation/RTX/html/own_lib_projwin.png create mode 100644 CMSIS/Documentation/RTX/html/pages.html create mode 100644 CMSIS/Documentation/RTX/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/RTX/html/project_window.png create mode 100644 CMSIS/Documentation/RTX/html/resize.js create mode 100644 CMSIS/Documentation/RTX/html/rtx_8txt.html create mode 100644 CMSIS/Documentation/RTX/html/rtx_revision_history.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_62.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_62.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_63.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_63.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_64.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_64.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_66.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_66.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_67.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_67.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_69.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_69.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_6b.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_6b.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_6d.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_6d.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_70.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_70.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_71.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_71.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_72.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_72.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_73.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_73.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_74.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_74.js create mode 100644 CMSIS/Documentation/RTX/html/search/all_76.html create mode 100644 CMSIS/Documentation/RTX/html/search/all_76.js create mode 100644 CMSIS/Documentation/RTX/html/search/classes_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/classes_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/close.png create mode 100644 CMSIS/Documentation/RTX/html/search/defines_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/defines_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/enums_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/enums_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/enumvalues_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/enumvalues_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/files_63.html create mode 100644 CMSIS/Documentation/RTX/html/search/files_63.js create mode 100644 CMSIS/Documentation/RTX/html/search/files_72.html create mode 100644 CMSIS/Documentation/RTX/html/search/files_72.js create mode 100644 CMSIS/Documentation/RTX/html/search/functions_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/functions_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/functions_73.html create mode 100644 CMSIS/Documentation/RTX/html/search/functions_73.js create mode 100644 CMSIS/Documentation/RTX/html/search/groups_63.html create mode 100644 CMSIS/Documentation/RTX/html/search/groups_63.js create mode 100644 CMSIS/Documentation/RTX/html/search/groups_67.html create mode 100644 CMSIS/Documentation/RTX/html/search/groups_67.js create mode 100644 CMSIS/Documentation/RTX/html/search/groups_6b.html create mode 100644 CMSIS/Documentation/RTX/html/search/groups_6b.js create mode 100644 CMSIS/Documentation/RTX/html/search/groups_6d.html create mode 100644 CMSIS/Documentation/RTX/html/search/groups_6d.js create mode 100644 CMSIS/Documentation/RTX/html/search/groups_72.html create mode 100644 CMSIS/Documentation/RTX/html/search/groups_72.js create mode 100644 CMSIS/Documentation/RTX/html/search/groups_73.html create mode 100644 CMSIS/Documentation/RTX/html/search/groups_73.js create mode 100644 CMSIS/Documentation/RTX/html/search/groups_74.html create mode 100644 CMSIS/Documentation/RTX/html/search/groups_74.js create mode 100644 CMSIS/Documentation/RTX/html/search/mag_sel.png create mode 100644 CMSIS/Documentation/RTX/html/search/nomatches.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_62.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_62.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_63.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_63.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_64.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_64.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_66.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_66.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_6d.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_6d.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_72.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_72.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_73.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_73.js create mode 100644 CMSIS/Documentation/RTX/html/search/pages_74.html create mode 100644 CMSIS/Documentation/RTX/html/search/pages_74.js create mode 100644 CMSIS/Documentation/RTX/html/search/search.css create mode 100644 CMSIS/Documentation/RTX/html/search/search.js create mode 100644 CMSIS/Documentation/RTX/html/search/search_l.png create mode 100644 CMSIS/Documentation/RTX/html/search/search_m.png create mode 100644 CMSIS/Documentation/RTX/html/search/search_r.png create mode 100644 CMSIS/Documentation/RTX/html/search/typedefs_6f.html create mode 100644 CMSIS/Documentation/RTX/html/search/typedefs_6f.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_64.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_64.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_69.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_69.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_6d.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_6d.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_70.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_70.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_71.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_71.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_73.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_73.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_74.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_74.js create mode 100644 CMSIS/Documentation/RTX/html/search/variables_76.html create mode 100644 CMSIS/Documentation/RTX/html/search/variables_76.js create mode 100644 CMSIS/Documentation/RTX/html/structos_mail_q_def__t.html create mode 100644 CMSIS/Documentation/RTX/html/structos_mail_q_def__t.js create mode 100644 CMSIS/Documentation/RTX/html/structos_message_q_def__t.html create mode 100644 CMSIS/Documentation/RTX/html/structos_message_q_def__t.js create mode 100644 CMSIS/Documentation/RTX/html/structos_mutex_def__t.html create mode 100644 CMSIS/Documentation/RTX/html/structos_mutex_def__t.js create mode 100644 CMSIS/Documentation/RTX/html/structos_pool_def__t.html create mode 100644 CMSIS/Documentation/RTX/html/structos_pool_def__t.js create mode 100644 CMSIS/Documentation/RTX/html/structos_semaphore_def__t.html create mode 100644 CMSIS/Documentation/RTX/html/structos_semaphore_def__t.js create mode 100644 CMSIS/Documentation/RTX/html/structos_thread_def__t.html create mode 100644 CMSIS/Documentation/RTX/html/structos_thread_def__t.js create mode 100644 CMSIS/Documentation/RTX/html/structos_timer_def__t.html create mode 100644 CMSIS/Documentation/RTX/html/structos_timer_def__t.js create mode 100644 CMSIS/Documentation/RTX/html/sync_off.png create mode 100644 CMSIS/Documentation/RTX/html/sync_on.png create mode 100644 CMSIS/Documentation/RTX/html/tab_a.png create mode 100644 CMSIS/Documentation/RTX/html/tab_b.png create mode 100644 CMSIS/Documentation/RTX/html/tab_h.png create mode 100644 CMSIS/Documentation/RTX/html/tab_s.png create mode 100644 CMSIS/Documentation/RTX/html/tab_topnav.png create mode 100644 CMSIS/Documentation/RTX/html/tabs.css create mode 100644 CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.png create mode 100644 CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png create mode 100644 CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd create mode 100644 CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png create mode 100644 CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.png create mode 100644 CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png create mode 100644 CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.png create mode 100644 CMSIS/Documentation/SVD/html/Manage_SVD_DD.png create mode 100644 CMSIS/Documentation/SVD/html/SystemViewer_Generated.png create mode 100644 CMSIS/Documentation/SVD/html/bc_s.png create mode 100644 CMSIS/Documentation/SVD/html/bdwn.png create mode 100644 CMSIS/Documentation/SVD/html/closed.png create mode 100644 CMSIS/Documentation/SVD/html/cmsis.css create mode 100644 CMSIS/Documentation/SVD/html/doxygen.css create mode 100644 CMSIS/Documentation/SVD/html/doxygen.png create mode 100644 CMSIS/Documentation/SVD/html/dynsections.js create mode 100644 CMSIS/Documentation/SVD/html/ftv2blank.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2cl.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2doc.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2folderclosed.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2folderopen.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2lastnode.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2link.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2mlastnode.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2mnode.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2mo.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2node.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2ns.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2plastnode.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2pnode.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2splitbar.png create mode 100644 CMSIS/Documentation/SVD/html/ftv2vertline.png create mode 100644 CMSIS/Documentation/SVD/html/group__cluster_level__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__cpu_section__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__elem__type__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__elem__type__gr.js create mode 100644 CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js create mode 100644 CMSIS/Documentation/SVD/html/group__svd___format__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__svd___format__gr.js create mode 100644 CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html create mode 100644 CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html create mode 100644 CMSIS/Documentation/SVD/html/index.html create mode 100644 CMSIS/Documentation/SVD/html/jquery.js create mode 100644 CMSIS/Documentation/SVD/html/modules.html create mode 100644 CMSIS/Documentation/SVD/html/modules.js create mode 100644 CMSIS/Documentation/SVD/html/nav_f.png create mode 100644 CMSIS/Documentation/SVD/html/nav_g.png create mode 100644 CMSIS/Documentation/SVD/html/nav_h.png create mode 100644 CMSIS/Documentation/SVD/html/navtree.css create mode 100644 CMSIS/Documentation/SVD/html/navtree.js create mode 100644 CMSIS/Documentation/SVD/html/navtreeindex0.js create mode 100644 CMSIS/Documentation/SVD/html/open.png create mode 100644 CMSIS/Documentation/SVD/html/pages.html create mode 100644 CMSIS/Documentation/SVD/html/printComponentTabs.js create mode 100644 CMSIS/Documentation/SVD/html/resize.js create mode 100644 CMSIS/Documentation/SVD/html/svd__example_pg.html create mode 100644 CMSIS/Documentation/SVD/html/svd__outline_pg.html create mode 100644 CMSIS/Documentation/SVD/html/svd__s_v_d_conv_pg.html create mode 100644 CMSIS/Documentation/SVD/html/svd_revision_history.html create mode 100644 CMSIS/Documentation/SVD/html/svd_validate_file_pg.html create mode 100644 CMSIS/Documentation/SVD/html/svd_web_pg.html create mode 100644 CMSIS/Documentation/SVD/html/svd_web_pg.js create mode 100644 CMSIS/Documentation/SVD/html/svd_web_public_pg.html create mode 100644 CMSIS/Documentation/SVD/html/svd_web_restricted_pg.html create mode 100644 CMSIS/Documentation/SVD/html/sync_off.png create mode 100644 CMSIS/Documentation/SVD/html/sync_on.png create mode 100644 CMSIS/Documentation/SVD/html/tab_a.png create mode 100644 CMSIS/Documentation/SVD/html/tab_b.png create mode 100644 CMSIS/Documentation/SVD/html/tab_h.png create mode 100644 CMSIS/Documentation/SVD/html/tab_s.png create mode 100644 CMSIS/Documentation/SVD/html/tab_topnav.png create mode 100644 CMSIS/Documentation/SVD/html/tabs.css create mode 100644 CMSIS/Documentation/index.html create mode 100644 CMSIS/Driver/DriverTemplates/Driver_ETH_MAC.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_ETH_PHY.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_Flash.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_I2C.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_MCI.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_SAI.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_SPI.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_USART.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_USBD.c create mode 100644 CMSIS/Driver/DriverTemplates/Driver_USBH.c create mode 100644 CMSIS/Driver/Include/Driver_CAN.h create mode 100644 CMSIS/Driver/Include/Driver_Common.h create mode 100644 CMSIS/Driver/Include/Driver_ETH.h create mode 100644 CMSIS/Driver/Include/Driver_ETH_MAC.h create mode 100644 CMSIS/Driver/Include/Driver_ETH_PHY.h create mode 100644 CMSIS/Driver/Include/Driver_Flash.h create mode 100644 CMSIS/Driver/Include/Driver_I2C.h create mode 100644 CMSIS/Driver/Include/Driver_MCI.h create mode 100644 CMSIS/Driver/Include/Driver_NAND.h create mode 100644 CMSIS/Driver/Include/Driver_SAI.h create mode 100644 CMSIS/Driver/Include/Driver_SPI.h create mode 100644 CMSIS/Driver/Include/Driver_USART.h create mode 100644 CMSIS/Driver/Include/Driver_USB.h create mode 100644 CMSIS/Driver/Include/Driver_USBD.h create mode 100644 CMSIS/Driver/Include/Driver_USBH.h create mode 100644 CMSIS/Include/arm_common_tables.h create mode 100644 CMSIS/Include/arm_const_structs.h create mode 100644 CMSIS/Include/arm_math.h create mode 100644 CMSIS/Include/cmsis_armcc.h create mode 100644 CMSIS/Include/cmsis_armcc_V6.h create mode 100644 CMSIS/Include/cmsis_gcc.h create mode 100644 CMSIS/Include/core_cm0.h create mode 100644 CMSIS/Include/core_cm0plus.h create mode 100644 CMSIS/Include/core_cm3.h create mode 100644 CMSIS/Include/core_cm4.h create mode 100644 CMSIS/Include/core_cm7.h create mode 100644 CMSIS/Include/core_cmFunc.h create mode 100644 CMSIS/Include/core_cmInstr.h create mode 100644 CMSIS/Include/core_cmSimd.h create mode 100644 CMSIS/Include/core_sc000.h create mode 100644 CMSIS/Include/core_sc300.h create mode 100644 CMSIS/RTE_Device.h delete mode 100644 CMSIS/arm_common_tables.h delete mode 100644 CMSIS/arm_const_structs.h delete mode 100644 CMSIS/arm_math.h delete mode 100644 CMSIS/cmsis_gcc.h delete mode 100644 CMSIS/core_cm4.h delete mode 100644 CMSIS/core_cmFunc.h delete mode 100644 CMSIS/core_cmInstr.h delete mode 100644 CMSIS/core_cmSimd.h create mode 100644 CMSIS/index.html create mode 100644 LA_OPT_Base_License.htm create mode 100644 drivers/fsl_dspi_freertos.c create mode 100644 drivers/fsl_dspi_freertos.h create mode 100644 drivers/fsl_i2c_freertos.c create mode 100644 drivers/fsl_i2c_freertos.h mode change 100644 => 100755 drivers/fsl_sim.c mode change 100644 => 100755 drivers/fsl_sim.h create mode 100644 drivers/fsl_sysmpu.c create mode 100644 drivers/fsl_sysmpu.h create mode 100644 drivers/fsl_uart_freertos.c create mode 100644 drivers/fsl_uart_freertos.h create mode 100644 freertos/Source/include/freertos_tasks_c_additions.h create mode 100644 freertos/Source/include/mpu_prototypes.h create mode 100644 freertos/Source/include/stdint.readme create mode 100644 freertos/Source/portable/GCC/ARM_CM3/fsl_tickless_generic.h create mode 100644 freertos/Source/portable/GCC/ARM_CM3/fsl_tickless_lptmr.c create mode 100644 freertos/Source/portable/GCC/ARM_CM3/fsl_tickless_systick.c create mode 100644 freertos/Source/portable/readme.txt create mode 100644 freertos/Source/readme.txt diff --git a/.cproject b/.cproject index cb96519..53f1863 100644 --- a/.cproject +++ b/.cproject @@ -17,7 +17,7 @@ - @@ -70,6 +73,8 @@ + + @@ -89,6 +94,8 @@ + + @@ -135,7 +142,7 @@ - + @@ -190,6 +197,8 @@ + + @@ -211,6 +220,8 @@ + + @@ -232,6 +243,8 @@ + + @@ -278,7 +291,7 @@ - + @@ -304,6 +317,13 @@ - + + + + + + + + diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml index 1ba5254..98107b2 100644 --- a/.settings/language.settings.xml +++ b/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + diff --git a/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf b/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf new file mode 100644 index 0000000..c67c867 Binary files /dev/null and b/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf differ diff --git a/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.rtf b/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.rtf new file mode 100644 index 0000000..e18d125 --- /dev/null +++ b/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.rtf @@ -0,0 +1,911 @@ +{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch37\stshfloch37\stshfhich37\stshfbi0\deflang2057\deflangfe2057\themelang2057\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;} +{\f2\fbidi \fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;} +{\f14\fbidi \froman\fcharset136\fprq2{\*\panose 02020500000000000000}PMingLiU{\*\falt \'b7\'73\'b2\'d3\'a9\'fa\'c5\'e9};}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;} +{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\f38\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma;}{\f39\fbidi \fmodern\fcharset0\fprq1{\*\panose 020b0609020204030204}Consolas;} +{\f40\fbidi \froman\fcharset136\fprq2{\*\panose 02020500000000000000}@PMingLiU;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;} +{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;} +{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f41\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f42\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\f44\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f45\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f46\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f47\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\f48\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f49\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f51\fbidi \fswiss\fcharset238\fprq2 Arial CE;}{\f52\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;} +{\f54\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\f55\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\f56\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f57\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);} +{\f58\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\f59\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}{\f61\fbidi \fmodern\fcharset238\fprq1 Courier New CE;}{\f62\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;} +{\f64\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f65\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f66\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f67\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);} +{\f68\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f69\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f183\fbidi \froman\fcharset0\fprq2 PMingLiU Western{\*\falt \'b7\'73\'b2\'d3\'a9\'fa\'c5\'e9};} +{\f381\fbidi \froman\fcharset238\fprq2 Cambria Math CE;}{\f382\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f384\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}{\f385\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;} +{\f388\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;}{\f389\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f411\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f412\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;} +{\f414\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f415\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f418\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f419\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);} +{\f421\fbidi \fswiss\fcharset238\fprq2 Tahoma CE;}{\f422\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f424\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek;}{\f425\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur;} +{\f426\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew);}{\f427\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f428\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic;}{\f429\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese);} +{\f430\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai);}{\f431\fbidi \fmodern\fcharset238\fprq1 Consolas CE;}{\f432\fbidi \fmodern\fcharset204\fprq1 Consolas Cyr;}{\f434\fbidi \fmodern\fcharset161\fprq1 Consolas Greek;} +{\f435\fbidi \fmodern\fcharset162\fprq1 Consolas Tur;}{\f438\fbidi \fmodern\fcharset186\fprq1 Consolas Baltic;}{\f439\fbidi \fmodern\fcharset163\fprq1 Consolas (Vietnamese);}{\f443\fbidi \froman\fcharset0\fprq2 @PMingLiU Western;} +{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} +{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} +{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} +{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} +{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31528\fbidi \froman\fcharset238\fprq2 Cambria CE;}{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;} +{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;} +{\fhimajor\f31536\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);} +{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} +{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} +{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} +{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} +{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;} +{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;} +{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}} +{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0; +\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red34\green34\blue34;}{\*\defchp \loch\af37\hich\af37\dbch\af37 }{\*\defpap +\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 +\ltrch\fcs0 \fs22\lang2057\langfe1033\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\* +\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv +\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 \fs20\lang2057\langfe2057\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp2057 +\snext11 \ssemihidden \sunhideused \sqformat Normal Table;}{\s15\ql \li0\ri0\widctlpar +\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af2\afs20\alang1025 \ltrch\fcs0 +\f2\fs20\lang2057\langfe2057\cgrid\langnp2057\langfenp2057 \sbasedon0 \snext15 \slink16 \ssemihidden \sunhideused HTML Preformatted;}{\*\cs16 \additive \f2\fs20\lang0\langfe2057\langfenp2057 \slink15 \slocked \ssemihidden HTML Preformatted Char;}{\*\cs17 +\additive \ul\cf2 \sunhideused Hyperlink;}{\*\cs18 \additive \fs16 \ssemihidden \sunhideused annotation reference;}{\s19\ql \li0\ri0\sa200\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20\alang1025 +\ltrch\fcs0 \fs20\lang2057\langfe1033\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext19 \slink20 \ssemihidden \sunhideused annotation text;}{\*\cs20 \additive \fs20 \slink19 \slocked \ssemihidden Comment Text Char;}{ +\s21\ql \li0\ri0\sa200\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs20\alang1025 \ltrch\fcs0 \b\fs20\lang2057\langfe1033\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 +\sbasedon19 \snext19 \slink22 \ssemihidden \sunhideused annotation subject;}{\*\cs22 \additive \b\fs20 \slink21 \slocked \ssemihidden Comment Subject Char;}{\s23\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 +\rtlch\fcs1 \af38\afs16\alang1025 \ltrch\fcs0 \fs16\lang2057\langfe1033\loch\f38\hich\af38\dbch\af37\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext23 \slink24 \ssemihidden \sunhideused Balloon Text;}{\*\cs24 \additive \f38\fs16 +\slink23 \slocked \ssemihidden Balloon Text Char;}{\s25\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext25 \slink26 \sunhideused header;}{\*\cs26 \additive \fs22\lang2057\langfe0\langnp2057 \slink25 \slocked Header Char;}{ +\s27\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\tqc\tx4680\tqr\tx9360\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext27 \slink28 \sunhideused \spriority0 footer;}{\*\cs28 \additive \fs22\lang2057\langfe0\langnp2057 \slink27 \slocked \ssemihidden Footer Char;}{\*\cs29 +\additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \spriority0 page number;}{\s30\ql \fi-425\li1134\ri0\sb120\sa120\widctlpar\tx1134\tqr\tx7920\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1134\itap0 \rtlch\fcs1 \af0\afs20\alang1025 \ltrch\fcs0 +\fs18\lang2057\langfe1033\loch\f1\hich\af1\dbch\af14\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext30 \spriority0 Indent;}{\s31\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 +\ltrch\fcs0 \fs22\lang2057\langfe1033\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 \snext31 \shidden \ssemihidden Revision;}{\s32\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 +\af0\afs21\alang1025 \ltrch\fcs0 \f39\fs21\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext32 \slink33 \sunhideused Plain Text;}{\*\cs33 \additive \f39\fs21\lang0\langfe1033\langfenp1033 \slink32 \slocked Plain Text Char;}{ +\s34\ql \li720\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang2057\langfe1033\loch\f37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 +\sbasedon0 \snext34 \sqformat \spriority34 List Paragraph;}}{\*\listtable{\*\listpicture{\pict{\*\picprop\shplid1025{\sp{\sn shapeType}{\sv 75}}{\sp{\sn fFlipH}{\sv 0}}{\sp{\sn fFlipV}{\sv 0}}{\sp{\sn fLine}{\sv 0}}{\sp{\sn borderTopColor}{\sv -16777216}} +{\sp{\sn borderLeftColor}{\sv -16777216}}{\sp{\sn borderBottomColor}{\sv -16777216}}{\sp{\sn borderRightColor}{\sv -16777216}}{\sp{\sn fIsBullet}{\sv 1}}{\sp{\sn fLayoutInCell}{\sv 1}}}\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0 +\picw7620\pich7620\picwgoal4320\pichgoal4320\wmetafile8\bliptag1621848657\blipupi-183{\*\blipuid 60ab72513f0584938171c3e04d1ffcc4} +0100090000039100000002001c00000000000400000003010800050000000b0200000000050000000c0209070507040000002e0118001c000000fb02a4ff0000 +000000009001000000000440002243616c6962726900000000000000000000000000000000000000000000000000040000002d010000040000002d0100000400 +00002d010000040000002d010000040000002d010000040000002d0100000400000002010100050000000902000000020d000000320a57000000010004000000 +00000807080720003600050000000902000000021c000000fb021000070000000000bc02000000000102022253797374656d0076d0e132092cfb3d00d9e4497680014e76a4f2530a38fb3d00040000002d010100040000002d010100030000000000}}{\list\listtemplateid-492936738\listhybrid{\listlevel +\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext +\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 +\ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2 +\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1 +\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext +\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 +\ltrch\fcs0 \fi-180\li6480\lin6480 }{\listname ;}\listid39328222}{\list\listtemplateid-917765150\listhybrid{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li1080\lin1080 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 +\fi-360\li1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\lin2160 }{\listlevel +\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0 +\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480\lin6480 } +{\listname ;}\listid144588935}{\list\listtemplateid-1026387870{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\'00;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 +\fi-360\li360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat2\levelspace0\levelindent0{\leveltext\'03\'00.\'01;}{\levelnumbers\'01\'03;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li360\lin360 }{\listlevel\levelnfc0 +\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'05\'00.\'01.\'02;}{\levelnumbers\'01\'03\'05;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li720\lin720 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0 +\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'07\'00.\'01.\'02.\'03;}{\levelnumbers\'01\'03\'05\'07;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li720\lin720 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\levelspace0\levelindent0{\leveltext\'09\'00.\'01.\'02.\'03.\'04;}{\levelnumbers\'01\'03\'05\'07\'09;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li720\lin720 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1 +\levelspace0\levelindent0{\leveltext\'0b\'00.\'01.\'02.\'03.\'04.\'05;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-1080\li1080\lin1080 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1 +\levelspace0\levelindent0{\leveltext\'0d\'00.\'01.\'02.\'03.\'04.\'05.\'06;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-1080\li1080\lin1080 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\levelspace0\levelindent0{\leveltext\'0f\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-1440\li1440\lin1440 }{\listlevel\levelnfc0\levelnfcn0\leveljc0 +\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'11\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-1440\li1440\lin1440 }{\listname +;}\listid155655221}{\list\listtemplateid466939434\listhybrid{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat6\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 +\fi-360\li1080\lin1080 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1800\lin1800 }{\listlevel +\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2520\lin2520 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0 +\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3240\lin3240 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3960\lin3960 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4680\lin4680 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-360\li5400\lin5400 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li6120\lin6120 } +{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6840\lin6840 }{\listname ;}\listid207642902} +{\list\listtemplateid-868587660\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \cf1\dbch\af0\fbias0 +\fi-360\li720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\lin1440 }{\listlevel\levelnfc2 +\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0 +\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760\lin5760 } +{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480\lin6480 }{\listname ;}\listid244075828} +{\list\listtemplateid-301287646\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \cf1\dbch\af0\fbias0 +\fi-360\li720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\lin1440 }{\listlevel\levelnfc2 +\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0 +\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760\lin5760 } +{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480\lin6480 }{\listname ;}\listid358317280} +{\list\listtemplateid572415416\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \cf0\dbch\af37\fbias0 +\fi-360\li786\lin786 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1506\lin1506 }{\listlevel\levelnfc2 +\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2226\lin2226 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2946\lin2946 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0 +\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3666\lin3666 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4386\lin4386 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-360\li5106\lin5106 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5826\lin5826 } +{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6546\lin6546 }{\listname ;}\listid423112302} +{\list\listtemplateid-1459612926\listhybrid{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li1275\lin1275 } +{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1995\lin1995 }{\listlevel\levelnfc2\levelnfcn2\leveljc2 +\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2715\lin2715 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1 +\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3435\lin3435 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0 +{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li4155\lin4155 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4875\lin4875 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 +\fi-360\li5595\lin5595 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li6315\lin6315 }{\listlevel +\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li7035\lin7035 }{\listname ;}\listid454718230} +{\list\listtemplateid-551514274\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat2\levelspace0\levelindent0{\leveltext\'01-;}{\levelnumbers;}\loch\af1\hich\af1\dbch\af0\fbias0 \fi-360\li1080\lin1080 }{\listlevel +\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1800\lin1800 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2520\lin2520 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0 +{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3240\lin3240 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 +\fi-360\li3960\lin3960 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4680\lin4680 }{\listlevel\levelnfc23\levelnfcn23 +\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5400\lin5400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6120\lin6120 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;} +\f10\fbias0 \fi-360\li6840\lin6840 }{\listname ;}\listid474840100}{\list\listtemplateid-1601537400{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;} +\f3\fs20\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \levelpicture0\fi-360\li1440 +\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fs20\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 } +{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fs20\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23 +\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fs20\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fs20\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fs20\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'01\u-3929 ?;}{\levelnumbers;}\f10\fs20\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;} +\f10\fs20\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid891499942}{\list\listtemplateid-2106560774\listhybrid{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext +\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 +\fi-180\li2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel +\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2 +\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-180\li6480\lin6480 }{\listname ;}\listid939029968}{\list\listtemplateid1475657882\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat2\levelspace0\levelindent0{\leveltext\'01-;}{\levelnumbers;} +\loch\af1\hich\af1\dbch\af0\fbias0 \fi-360\li1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li2160\lin2160 }{\listlevel\levelnfc23 +\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1 +\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li5040\lin5040 } +{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0 +\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6480\lin6480 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0 +{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li7200\lin7200 }{\listname ;}\listid1080055287}{\list\listtemplateid345380616\listhybrid{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat2\levelspace0\levelindent0 +{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li1864\lin1864 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2224\lin2224 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-180\li2944\lin2944 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3664\lin3664 } +{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li4384\lin4384 }{\listlevel\levelnfc2\levelnfcn2\leveljc2 +\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li5104\lin5104 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1 +\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5824\lin5824 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0 +{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li6544\lin6544 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li7264\lin7264 }{\listname ;}\listid1198470673}{\list\listtemplateid-1488150726\listhybrid{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext +\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li1080\lin1080 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 +\fi-180\li2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel +\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2 +\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-180\li6480\lin6480 }{\listname ;}\listid1264800667}{\list\listtemplateid1709371634{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\'00;}{\levelnumbers\'01;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat2\levelspace0\levelindent0{\leveltext\'03\'00.\'01;}{\levelnumbers\'01\'03;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 +\fi-360\li360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'05\'00.\'01.\'02;}{\levelnumbers\'01\'03\'05;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li720\lin720 }{\listlevel +\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'07\'00.\'01.\'02.\'03;}{\levelnumbers\'01\'03\'05\'07;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li720\lin720 }{\listlevel\levelnfc0\levelnfcn0 +\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'09\'00.\'01.\'02.\'03.\'04;}{\levelnumbers\'01\'03\'05\'07\'09;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li720\lin720 }{\listlevel\levelnfc0\levelnfcn0\leveljc0 +\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0b\'00.\'01.\'02.\'03.\'04.\'05;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-1080\li1080\lin1080 }{\listlevel\levelnfc0\levelnfcn0\leveljc0 +\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0d\'00.\'01.\'02.\'03.\'04.\'05.\'06;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-1080\li1080\lin1080 }{\listlevel\levelnfc0\levelnfcn0 +\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0f\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-1440\li1440\lin1440 }{\listlevel +\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'11\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 +\fi-1440\li1440\lin1440 }{\listname ;}\listid1335182434}{\list\listtemplateid-1861725538\listhybrid{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 +\fi-360\li1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\lin2160 }{\listlevel +\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0 +\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480\lin6480 } +{\listname ;}\listid1556695208}{\list\listtemplateid-301287646\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 +\cf1\dbch\af0\fbias0 \fi-360\li720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\lin1440 } +{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0 +\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1 +\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0 +{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;} +\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 +\fi-360\li5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480\lin6480 }{\listname +;}\listid1583906200}{\list\listtemplateid1806592008\listhybrid{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 +\fi-360\li720\lin720 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\lin1440 }{\listlevel\levelnfc2 +\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0 +\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0 +\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 +\af0 \ltrch\fcs0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760\lin5760 } +{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480\lin6480 }{\listname ;}\listid1801338294} +{\list\listtemplateid-1056679890\listhybrid{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'03(\'00);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-720\li1429 +\jclisttab\tx1429\lin1429 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1789\jclisttab\tx1789\lin1789 } +{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2509\jclisttab\tx2509\lin2509 }{\listlevel\levelnfc0 +\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3229\jclisttab\tx3229\lin3229 }{\listlevel\levelnfc4\levelnfcn4\leveljc0 +\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3949\jclisttab\tx3949\lin3949 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0 +\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li4669\jclisttab\tx4669\lin4669 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative +\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5389\jclisttab\tx5389\lin5389 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0 +{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li6109\jclisttab\tx6109\lin6109 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext +\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6829\jclisttab\tx6829\lin6829 }{\listname ;}\listid1872956500}{\list\listtemplateid2052502928{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0 +\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext +\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers +\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 +\ltrch\fcs0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li3600 +\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li4320\jclisttab\tx4320\lin4320 } +{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc0 +\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc0\levelnfcn0\leveljc0 +\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1950702225}}{\*\listoverridetable +{\listoverride\listid474840100\listoverridecount0\ls1}{\listoverride\listid1080055287\listoverridecount0\ls2}{\listoverride\listid1872956500\listoverridecount0\ls3}{\listoverride\listid1198470673\listoverridecount0\ls4}{\listoverride\listid1950702225 +\listoverridecount0\ls5}{\listoverride\listid1556695208\listoverridecount0\ls6}{\listoverride\listid454718230\listoverridecount0\ls7}{\listoverride\listid939029968\listoverridecount0\ls8}{\listoverride\listid1264800667\listoverridecount0\ls9} +{\listoverride\listid244075828\listoverridecount0\ls10}{\listoverride\listid423112302\listoverridecount0\ls11}{\listoverride\listid1801338294\listoverridecount0\ls12}{\listoverride\listid155655221\listoverridecount0\ls13}{\listoverride\listid1335182434 +\listoverridecount0\ls14}{\listoverride\listid144588935\listoverridecount0\ls15}{\listoverride\listid1583906200\listoverridecount0\ls16}{\listoverride\listid891499942\listoverridecount0\ls17}{\listoverride\listid358317280\listoverridecount0\ls18} +{\listoverride\listid207642902\listoverridecount0\ls19}{\listoverride\listid39328222\listoverridecount9{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel +\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat +\levelstartat1}\ls20}}{\*\rsidtbl \rsid2044820\rsid10637227\rsid11554224\rsid14553496}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim1}{\info +{\title LEC-PRE-00489 ~ EULA for CMSIS Deliverables}{\author Emily Drea}{\operator Joachim Krech}{\creatim\yr2015\mo8\dy27\hr7\min15}{\revtim\yr2015\mo8\dy27\hr7\min15}{\printim\yr2015\mo8\dy18\hr8\min33}{\version2}{\edmins1}{\nofpages5}{\nofwords2395} +{\nofchars13654}{\*\company ARM Ltd}{\nofcharsws16017}{\vern49167}}{\*\userprops {\propname Check In Comment}\proptype30{\staticval Major Version Publish}{\propname ComputedCompany}\proptype30{\staticval ARM/}{\propname ComputedLR}\proptype30{\staticval A +P/}{\propname ComputedNumber}\proptype30{\staticval LEC-PRE-00489-V6.0}{\propname Created}\proptype30{\staticval 2014-06-01T22:01:00Z}{\propname Description}\proptype30{\staticval }{\propname display_urn:schemas-microsoft-com:office:office#Author} +\proptype30{\staticval Emily Drea}{\propname display_urn:schemas-microsoft-com:office:office#Editor}\proptype30{\staticval Emily Drea}{\propname EMAIL_OWNER_ADDRESS}\proptype30{\staticval sAAAUYtyAkeNWR4c/hyv83djDdgT//SlfRfj0yul0Nymu58=}{\propname FileLea +fRef}\proptype30{\staticval LEC-PRE-00489}{\propname HiddenDelete}\proptype30{\staticval }{\propname HiddenUpload}\proptype30{\staticval }{\propname MAIL_MSG_ID1}\proptype30{\staticval ABAAVOAfoSrQoywVz+n89RkH8vckJh2hX9X1LeIJRLXpkh+XCtJmzNRfIdvcDdtCC+CW} +{\propname MAIL_MSG_ID2}\proptype30{\staticval c5CxtGnFSJrNPiFAS7uBa/Md4M/GKbLGzLnuTUVlLUhYPGbMRhOa5RG4vn7\'0d\'0aRvdHkjT0j+KBwUyX0J0TijfAeRM/c9+3kWygmQ==}{\propname Modified}\proptype30{\staticval 2015-08-18T10:13:43Z}{\propname Modified By}\proptype30 +{\staticval 62\'3b#Emily Drea,#EMEA\'5cemidre01,#Emily.Drea@arm.com,#,#Emily Drea}{\propname Name}\proptype30{\staticval LEC-PRE-00489.doc}{\propname Order}\proptype30{\staticval 672300}{\propname Property Bag}\proptype30{\staticval vti_contentversionisdi +rty:BW|false\'0d\'0avti_parserversion:SR|14.0.0.6029\'0d\'0aEXT:SW|doc\'0d\'0aOrder:IW|672300\'0d\'0avti_contenttag:SW|\'7b7AA67540-4642-44E7-8CB5-11C47CDC1B3E\'7d,137,51\'0d\'0a_Category:SW|\'0d\'0aRESPONSE_SENDER_NAME:SW|gAAAdya76B99d4hLGUR1rQ+8TxTv0GGE +Pdix\'0d\'0avti_author:SR|}{\propname RESPONSE_SENDER_NAME}\proptype30{\staticval gAAAdya76B99d4hLGUR1rQ+8TxTv0GGEPdix}{\propname Title}\proptype30{\staticval LEC-PRE-00489 ~ EULA for CMSIS Deliverables}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/ +office/word/2003/wordml}}\paperw11906\paperh16838\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect +\widowctrl\ftnbj\aenddoc\revisions\trackmoves0\trackformatting1\donotembedsysfont1\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1 +\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin1440\dgvorigin1440\dghshow1\dgvshow1 +\jexpand\viewkind1\viewscale110\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct +\asianbrkrule\rsidroot2688764\newtblstyruls\nogrowautofit\utinl \fet0{\*\wgrffmtfilter 2450}\ilfomacatclnup0{\*\ftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 +\rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10637227 \chftnsep +\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10637227 \chftnsepc +\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10637227 \chftnsep +\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid10637227 \chftnsepc +\par }}\ltrpar \sectd \ltrsect\linex0\headery400\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sectrsid14553496\sftnbj {\headerr \ltrpar \ltrrow\trowd \irow0\irowband0\ltrrow +\ts11\trgaph108\trrh240\trleft-108\trftsWidth1\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3\tblind0\tblindtype3 \clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth3009\clshdrawnil \cellx2901 +\clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth3009\clshdrawnil \cellx5910\clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl +\cltxlrtb\clftsWidth3\clwWidth3009\clshdrawnil \cellx8919\pard\plain \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \hich\af1\dbch\af1\loch\f1 18 August 2015\cell }\pard \ltrpar +\qc \li0\ri0\sa200\sl276\slmult1\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \hich\af1\dbch\af1\loch\f1 CONFIDENTIAL\cell }\pard \ltrpar +\qr \li0\ri0\sa200\sl276\slmult1\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \hich\af1\dbch\af1\loch\f1 LEC-PRE-00489\cell }\pard \ltrpar +\ql \li0\ri0\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \trowd \irow0\irowband0\ltrrow +\ts11\trgaph108\trrh240\trleft-108\trftsWidth1\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3\tblind0\tblindtype3 \clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth3009\clshdrawnil \cellx2901 +\clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth3009\clshdrawnil \cellx5910\clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl +\cltxlrtb\clftsWidth3\clwWidth3009\clshdrawnil \cellx8919\row \ltrrow}\trowd \irow1\irowband1\lastrow \ltrrow\ts11\trgaph108\trrh240\trleft-108\trftsWidth1\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3\tblind0\tblindtype3 \clvertalt\clbrdrt +\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth9026\clshdrawnil \cellx8919\pard \ltrpar\qr \li0\ri0\sa200\sl276\slmult1\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\rtlch\fcs1 \af1 +\ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \hich\af1\dbch\af1\loch\f1 SP-Version: 4.0\cell }\pard \ltrpar\ql \li0\ri0\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\rtlch\fcs1 \af1 \ltrch\fcs0 +\fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \trowd \irow1\irowband1\lastrow \ltrrow\ts11\trgaph108\trrh240\trleft-108\trftsWidth1\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3\tblind0\tblindtype3 \clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl +\clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth9026\clshdrawnil \cellx8919\row }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 +\insrsid14553496 +\par }}{\footerr \ltrpar \ltrrow\trowd \irow0\irowband0\lastrow \ltrrow\ts11\trgaph108\trrh240\trleft-108\trftsWidth1\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3\tblind0\tblindtype3 \clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr +\brdrtbl \cltxlrtb\clftsWidth3\clwWidth4513\clshdrawnil \cellx4405\clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth4513\clshdrawnil \cellx8918\pard\plain \ltrpar\qr \li0\ri0\sa200\sl276\slmult1 +\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\field{\*\fldinst {\rtlch\fcs1 \af1 \ltrch\fcs0 +\fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \hich\af1\dbch\af1\loch\f1 PAG\hich\af1\dbch\af1\loch\f1 E}}{\fldrslt {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\lang1024\langfe1024\loch\af1\hich\af1\dbch\af1\noproof\insrsid2044820 \hich\af1\dbch\af1\loch\f1 1} +}}\sectd \ltrsect\linex0\endnhere\sectdefaultcl\sftnbj {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \hich\af1\dbch\af1\loch\f1 of }{\field{\*\fldinst {\rtlch\fcs1 \af1 \ltrch\fcs0 +\fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \hich\af1\dbch\af1\loch\f1 NUMPAGES}}{\fldrslt {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\lang1024\langfe1024\loch\af1\hich\af1\dbch\af1\noproof\insrsid2044820 \hich\af1\dbch\af1\loch\f1 5}}}\sectd \ltrsect +\linex0\endnhere\sectdefaultcl\sftnbj {\rtlch\fcs1 \af1 \ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \cell \cell }\pard \ltrpar\ql \li0\ri0\widctlpar\intbl\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0 {\rtlch\fcs1 \af1 +\ltrch\fcs0 \fs18\loch\af1\hich\af1\dbch\af1\insrsid14553496 \trowd \irow0\irowband0\lastrow \ltrrow\ts11\trgaph108\trrh240\trleft-108\trftsWidth1\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3\tblind0\tblindtype3 \clvertalt\clbrdrt\brdrtbl \clbrdrl +\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth4513\clshdrawnil \cellx4405\clvertalt\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cltxlrtb\clftsWidth3\clwWidth4513\clshdrawnil \cellx8918\row }\pard \ltrpar +\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid14553496 +\par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}} +{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8 +\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\qj \li0\ri0\sa240\widctlpar +\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 END USER LICENCE AGREEMENT FOR THE }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CORTEX MICROCONTROLLER SOFTWARE INTERFACE STANDARD (CMSIS) DELIVERABLES }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 +\par THIS END USER LICENCE AGREEMENT ("LICENCE") IS A LEGAL AGREEMENT BETWEEN YOU (EITHER A }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid5861575 +SINGLE INDIVIDUAL, OR SINGLE LEGAL ENTITY) AND ARM LIMITED ("ARM") FOR THE USE OF THE CMSIS }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 DELIVERABLES}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid5861575 . ARM IS ONLY WILLING TO LICENSE THE }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS DELIVERABLES }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid5861575 TO YOU ON CONDITION THAT YOU ACCEPT ALL OF THE}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 TERMS IN THIS LICENCE. BY CLICKING "I AGREE", OR BY INSTALLING OR OTHERWISE USING OR COPYING THE }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS DELIVERABLES }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 +YOU INDICATE THAT YOU AGREE TO BE BOUND BY ALL THE TERMS OF THIS LICENCE. IF YOU DO NOT AGREE TO THE TERMS OF THIS LICENCE, ARM IS UNWILLING TO LICENSE YOU TO USE }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 OF }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 THE }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS DELIVERABLES}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 AND YOU MAY NOT INSTALL, USE OR COPY THE }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS DELIVERABLES}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93Deliverables\'94 + means (i) the CMSIS Deliverables; (ii) CMSIS-DAP Specification; (iii) CMSIS-DAP Firmware; and (iv) RDDI DLL. +\par \'93CMSIS-DAP Specification\'94 means any documentation defining the application programming interface, naming and coding conventions of the Cortex Microcontroller Software Interface Standard Debug Access Port (\'93CMSIS-DAP\'94). }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 \hich\f1 Notwithstanding the foregoing, \'93}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 CMSIS-DAP }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 \hich\f1 Specification\'94\loch\f1 shall not include}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 :}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 (i) the implementation of other published specifications referenced in th}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\hich\af1\dbch\af37\loch\f1 e}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 CMSIS-DAP }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 Specific\hich\af1\dbch\af37\loch\f1 ation; }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 and }{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 (ii) any enabling technologies that may be necessary to make or use any product or portion}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\hich\af1\dbch\af37\loch\f1 s}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 thereof that complies with the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\hich\af1\dbch\af37\loch\f1 CMSIS-DAP }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 Specification, but are not themselves expressly set forth in th}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 e}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 +CMSIS-DAP }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 Specification (e.g. compiler front en\hich\af1\dbch\af37\loch\f1 +ds, code generators, back ends, libraries or other compiler, assembler or linker technologies; validation or debug software or hardware; applications, operating system or driver software; RISC architecture; }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 and }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 processor microarchitecture)}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\hich\af1\dbch\af37\loch\f1 . }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid4029239 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid11929640 \hich\af1\dbch\af37\loch\f1 CMSIS-DAP Fi\hich\af1\dbch\af37\loch\f1 +rmware}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'94 + means the C programming language source code accompanying this Licence which implements the functionality of the application programming interface as defined in the CMSIS-DAP Specification and any updates, patches and modifications ARM may make ava +ilable under the terms of this Licence. +\par \'93CMSIS Deliverables\'94 means the following components: (i) CMSIS-CORE; (ii) CMSIS-DRIVER; (iii) CMSIS-DSP; (iv) CMSIS-PACK; (v) CMSIS-RTOS API; and (vi) CMSIS-SVD . +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\tx0\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93CMSIS-CORE +\'94 means the specification defining the application programming interface, naming and coding conventions for the Cortex-M processor cores. +\par \'94}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid488451 \hich\af1\dbch\af37\loch\f1 CMSIS-DRIVER}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'94}{\rtlch\fcs1 \af0 \ltrch\fcs0 +\insrsid14553496 \hich\af37\dbch\af37\loch\f37 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid488451 \hich\af1\dbch\af37\loch\f1 means the specification defining }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\hich\af1\dbch\af37\loch\f1 a generic}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid488451 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 p}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid488451 \hich\af1\dbch\af37\loch\f1 eripheral }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 d}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496\charrsid488451 \hich\af1\dbch\af37\loch\f1 river application programming interface, naming and coding conventions}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid14553496 . +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93CMSIS-DSP\'94 + means the digital signal process (DSP) library specification defining the application programming interface of a DSP library implementation}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15023647 .}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\tx0\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid13240697 \hich\af1\dbch\af37\loch\f1 CMSIS-PACK}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'94}{\rtlch\fcs1 \af0 \ltrch\fcs0 +\insrsid14553496\charrsid13240697 \hich\af37\dbch\af37\loch\f37 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid13240697 \hich\af1\dbch\af37\loch\f1 means the specification defining a software pack file format}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 , verification utility, }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid13240697 \hich\af1\dbch\af37\loch\f1 and the associated XML +\hich\af1\dbch\af37\loch\f1 schema file}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid14553496\charrsid13240697 .}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid14553496 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93CMSIS-RTOS API\'94 + means the real-time operating system (RTOS) specification defining a generic application programming interface layer for a RTOS system}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15023647 .}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93CMSIS-SVD\'94 }{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid9306407 means }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +the specification defining the System View Description (SVD), verification utility, }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf17\lang1033\langfe2057\langnp1033\langfenp2057\insrsid14553496\charrsid9306407 and associated XML}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf17\lang1033\langfe2057\langnp1033\langfenp2057\insrsid14553496 schema}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf17\lang1033\langfe2057\langnp1033\langfenp2057\insrsid14553496\charrsid9306407 files. }{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid9306407 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \'93Firmware\'94 means firmware that complies with the CMSIS-DAP Specification. +\par \'93RDDI DLL\'94 means the reference implementation of a device driver }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6236778 accompanying this Licence}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 in object code form and any updates, patch +es and modifications ARM may agree to make available under the terms of this Licence and is used with targets containing microprocessors manufactured or simulated under licence from ARM. +\par \'93Separate Files\'94 means the components }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid10227990 identified}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 in the Schedule.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid3618484 .}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par \'93Target Connection Product\'94 means a target connection product that complies with the CMSIS-DAP Specification and is used on or with a target containing microprocessors manufactured or simulated under licence from ARM. +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid5577184 \hich\af1\dbch\af37\loch\f1 +Notwithstanding the foregoing, the Deliverables shall not include: (i) the implementation of other published specifications referenced in the Deliverables; (ii) any enabling technologies that may be necessary to make or use any product or portion thereof +\hich\af1\dbch\af37\loch\f1 +that complies with the Deliverables, but are not themselves expressly set forth in the Deliverables (e.g. compiler front ends, code generators, back ends, libraries or other compiler, assembler or linker technologies; validation or debug software or hard +\hich\af1\dbch\af37\loch\f1 w\hich\af1\dbch\af37\loch\f1 +are; applications, operating system or driver software; RISC architecture; processor microarchitecture); (iii) maskworks and physical layouts of integrated circuit designs; or (iv) RTL or other high level representations of integrated circuit designs.}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }\pard \ltrpar\qj \li0\ri0\sa240\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 { +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 1. LICENCE GRANTS. +\par }\pard \ltrpar\qj \li0\ri0\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 1.1}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS DELIVERABLES +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 ARM hereby grants to you, subject to the terms and conditions of this Licence, a non-exclusive, non-transferable }{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid1317547 licence, to use and copy the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS D}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 eliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 for the purpose of: }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar +\tx426\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 (i) subject to clause 1.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 5(i)}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 , developing, having developed, manufacturing, having manufactured, offering to sell, selling, supplying or otherwise distributing products that comply with the }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS D}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 eliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 ; and +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid1317547 (ii) distributing and having distributed (directly or through your customers and authorised distributors) the CMSIS-D}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 eliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid1317547 unmodified, with the products}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 you have developed under }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Clause 1.1 (i) }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 provided you preserve any copyright notices which are included with the CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 D}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 eliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 . }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par 1.2 CMSIS-DAP SPECIFICATION +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 ARM hereby grants to you, subject to the terms and conditions of this Licence, a non-exclusive, non-transferable licence, to }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid3605578 use and copy the CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 -DAP }{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6386005 Specification}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 for the purposes of: +\par }\pard \ltrpar\qj \fi-567\li567\ri0\sl276\slmult1\widctlpar\tx567\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin567\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 (a)\tab }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11225765 +developing, having developed, manufacturing, having manufactured, offering to sell, selling, supplying}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +, distributing or having distributed a Target Connection Product}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 ;}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }\pard \ltrpar\qj \fi-567\li567\ri0\sl276\slmult1\widctlpar\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin567\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 (b)\tab }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11225765 developing, having developed, }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 subject to clause 1.5(ii) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11225765 +offering to sell, selling, supplying}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 , }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11225765 +distributing}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 or having distributed }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 +(directly or through your cus\hich\af1\dbch\af37\loch\f1 tomers and authorised distributors) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Firmware to run on a Target Connection Product; and +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 (c)}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \tab subject to clause 1.5(ii), }{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 distributing }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 and }{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 having distributed }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 +(directly or through your customers and authorised distributors) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 the CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 -}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 DAP }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14559761 Specification unmodified}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ,}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14559761 with}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 either or both the}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 Target Connection Products and Firmware}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 , developed under the licences granted in this Clause 1.2}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 .}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar +\tx426\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par 1.3 CMSIS-DAP FIRMWARE +\par }\pard \ltrpar\qj \li0\ri0\sl276\slmult1\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 +\cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 ARM hereby grants to you, subject to the terms and conditions of this Licence, a non-exclusive, non-trans\hich\af1\dbch\af37\loch\f1 ferable licence, to: + +\par }\pard \ltrpar\qj \fi-567\li567\ri0\sl276\slmult1\widctlpar +\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin567\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 (a)\tab }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid10356267 \hich\af1\dbch\af37\loch\f1 use, copy}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid2558325 +\hich\af1\dbch\af37\loch\f1 , and modify the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 CMSIS-DAP Firmware }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +for the purposes of developing and having developed }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid8745136 firmware to run on}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 a Target Connection Product; and +\par (b)\tab subject to clause 1.5(ii), offer to sell, selling, }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid5058240 supply}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 , supplying, }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid8745136 distributing}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 or having distributed }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 +(directly or through your customers and authorised distributors)}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS-DAP Firmware or any modified version created under Clause 1.3 (a) }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid8745136 in}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6192099 object code form only }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 to run on a Target Connection Product. }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid9913780 }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar +\tx426\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 1.4 RDDI DLL +\par }\pard \ltrpar\qj \li0\ri0\sl276\slmult1\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 +\cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ARM hereby grants to you, subject to the terms and conditions of this Licence, a non-exclusive, non-transferable licence, to: +\par }\pard \ltrpar\qj \fi-567\li567\ri0\sl276\slmult1\widctlpar +\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin567\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 (a)\tab use and copy the RDDI DLL for the purpose }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid13793259 of connecting }{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 a Target Connection Product }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11805076 +running CMSIS-DAP compatible firmware }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 (either the Firmware or the firmware created pursuant to Clause 1.3) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11805076 to }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 software debug tools installed on }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11805076 a host }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 computer running a Windows platform}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid11805076 ; and}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par (b)\tab subject to clause 1.5(ii), offer to sell, selling, supplying, distributing or having distributed }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 (directly or +\hich\af1\dbch\af37\loch\f1 through your customers and authorised distributors) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 the RDDI DLL in object code form only. +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar +\tx426\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid6756135 +\par }\pard \ltrpar\qj \li0\ri0\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 {\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 1.5}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 CONDITIONS ON REDISTRIBUTION}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 .}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 +\cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 (i) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid1928237 +\hich\af1\dbch\af37\loch\f1 If you distribute (directly or through your customers and authorised distributors) the products you have created pursuant \hich\af1\dbch\af37\loch\f1 to Clause 1.1}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid1928237 \hich\af1\dbch\af37\loch\f1 (i) you agree: (a) not to use ARM +\hich\f1 \rquote \loch\f1 s name, logo or trademarks to market any or all of the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid1928237 products created under Clause 1.1 (i); }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid1928237 \hich\af1\dbch\af37\loch\f1 (b) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 to }{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid1928237 \hich\af1\dbch\af37\loch\f1 pr}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 e}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid1928237 \hich\af1\dbch\af37\loch\f1 serve any copyright notices included in the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 CMSIS D}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 eliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid1928237 \hich\af1\dbch\af37\loch\f1 ; and (c) to ensure your customers and aut\hich\af1\dbch\af37\loch\f1 horised distributors comply with this Clause 1.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 5(i)}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid1928237 .}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 +(ii) If you are authorised and choose to distribute (directly or through your customers and authorised distributors) the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 CMSIS}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 -}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 DAP }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14559761 Specification}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 , }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 Firmware, CMSIS-DAP Firmware or any modified version \hich\af1\dbch\af37\loch\f1 +thereof, or the RDDI DLL, you agree; (a) to ensure that they are licensed for use with targets containing microprocessors manufactured or simulated under licence from ARM; (b) to preserve any copyright notices which are included with the }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 -}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 DAP }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14559761 Specification}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 , CMSIS-DAP Firmware}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 +, and include valid copyright notices in; (i) any modified version of the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 CMSIS-DAP Firmware}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 ; and (ii) the Firmware; (c) not to use ARM\hich\f1 \rquote \loch\f1 s name, logo or trademarks to market -any or all of the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 -}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid4549827 DAP }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14559761 Specification}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 , Firmware,}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 CMSI\hich\af1\dbch\af37\loch\f1 +S-DAP Firmware or any modified version therof, the RDDI DLL or the Target Connection Products; and (d) to ensure your customers and authorised distributors comply with this Clause 1.5(ii). +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 +\cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }\pard \ltrpar\qj \li0\ri0\sa240\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 { +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 2. RESTRICTIONS ON USE OF THE}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 DELIVERABLES +}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 +\cbpat8 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 PERMITTED USERS: The }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +Deliverables }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 shall be used only by you (either a single individual, or single legal entity) your employees, or by your }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 on-site }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 +bona fide sub-contractors for whose acts and omissions you hereby agree to be responsible to ARM}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 for}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 to the same extent as }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 you are for }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 your employees, and provided always that such sub-contractors}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 :}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 (i) are contractually obligated to use the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +Deliverables }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 only for your benefit}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ;}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 and (i}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 i}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 ) agree to assign all their work product and any rights they create therein in the supply of such work to you. +\par COPYRIGHT AND RESERVATION OF RIGHTS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14488502 : The }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14488502 + are owned by ARM or its licensors and are protected by copyright and other intellectual property laws and international treaties. The }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14488502 are licensed not sold. Except as expressly licensed herein, you acquire no right, title or interest in the }{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14488502 + or any intellectual property therein. In no event shall the licences granted herein be construed as granting you, expressly or by implication, estoppels or otherwise, a licence to use any ARM technology except the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid14488502 .}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 +\par }\pard \ltrpar\qj \li0\ri0\sa240\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 { +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 3}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . SUPPORT. +\par ARM is not obligated to support the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables but}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 may do so entirely at ARM's discretion. +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 4}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 NO }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 WARRANT}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Y.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 +\par YOU AGREE THAT THE }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 DELIVERABLES ARE}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 + LICENSED "AS IS", AND THAT ARM EXPRESSLY DISCLA +IMS ALL REPRESENTATIONS, WARRANTIES, CONDITIONS OR OTHER TERMS, EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, SATISFACTORY QUALITY, AND FITNESS FOR A PARTICULAR PURPOSE.}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 THE DELIVERABLES MAY CONTAIN ERRORS. }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 5}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . LIMITATION OF LIABILITY. +\par THE MAXIMUM LIABILITY OF ARM TO YOU IN AGGREGATE FOR ALL CLAIMS MADE AGAINST ARM IN CONTRACT}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ,}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 TORT OR OTHERWISE UNDER OR IN CONNECTION WITH THE SUBJECT MATTER OF THIS LICENCE SHALL NOT EXCEED }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 THE GREATER OF (I) }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 THE TO +TAL OF SUMS PAID BY YOU TO ARM (IF ANY) FOR THIS LICENCE}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 AND (II) US$10.00}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 .}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 + THE LIMITATIONS, EXCLUSIONS AND DISCLAIMERS IN THIS LICENCE SHALL APPLY TO THE MAXIMUM EXTENT ALLOWED BY APPLICABLE LAW. +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 6 +}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid13830602 \hich\af1\dbch\af37\loch\f1 . THIRD PARTY RIGHTS.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid13830602 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid13830602 \hich\af1\dbch\af37\loch\f1 The Separate Files are delivered su\hich\af1\dbch\af37\loch\f1 \hich\f1 +bject to and your use is governed by their own separate licence agreements. This Licence does not apply to such Separate Files and they are not included in the term \'93}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\lang1024\langfe1024\noproof\insrsid14553496 \hich\af1\dbch\af37\loch\f1 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\lang1024\langfe1024\noproof\insrsid14553496\charrsid13830602 \loch\af1\dbch\af37\hich\f1 \'94\loch\f1 + under this Licence. You agree to comply with all terms and conditions impose\hich\af1\dbch\af37\loch\f1 \hich\f1 d on you in respect of such Separate Files including those identified in the Schedule (\'93\loch\f1 \hich\f1 Third Party Terms\'94\loch\f1 +). +\par \hich\af1\dbch\af37\loch\f1 ARM HEREBY DISCLAIMS ANY AND ALL WARRANTIES EXPRESS OR IMPLIED FROM ANY THIRD PARTIES REGARDING ANY SEPARATE FILES, ANY THIRD PARTY MATERIALS INC\hich\af1\dbch\af37\loch\f1 \hich\f1 +LUDED IN THE SOFTWARE, ANY THIRD PARTY MATERIALS FROM WHICH THE SOFTWARE IS DERIVED (COLLECTIVELY \'93\loch\f1 \hich\f1 OTHER CODE\'94\loch\f1 +), AND THE USE OF ANY OR ALL THE OTHER CODE IN CONNECTION WITH THE SOFTWARE, INCLUDING (WITHOUT LIMITATION) ANY WARRANTIES OF SATISFACTORY QUALIT\hich\af1\dbch\af37\loch\f1 Y\hich\af1\dbch\af37\loch\f1 OR FITNESS FOR A PARTICULAR PURPOSE. +\par \hich\af1\dbch\af37\loch\f1 NO THIRD PARTY LICENSORS OF OTHER CODE SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND WHETHER +\hich\af1\dbch\af37\loch\f1 + MADE UNDER CONTRACT, TORT OR OTHER LEGAL THEORY, ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE OTHER CODE OR THE EXERCISE OF ANY RIGHTS GRANTED UNDER EITHER OR BOTH THIS LICENCE AND THE LEGAL TERMS APPLICABLE TO ANY SEPARATE FILES, EVEN IF ADV +\hich\af1\dbch\af37\loch\f1 I\hich\af1\dbch\af37\loch\f1 SED OF THE POSSIBILITY OF SUCH DAMAGES. +\par }\pard \ltrpar\qj \li0\ri0\sa240\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 { +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 7}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . U.S. GOVERNMENT END USERS. +\par US Government Restrictions: Use, duplication, reproduction, release, modification, disclosure or transfer of this commercial product and accompanying documentation is restricted in accordance with the terms of this Licence. +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 8}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . TERM AND TERMINATION. +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 8.1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 +This Licence shall remain in force until terminated }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 in accordance with the terms of Clause 8.2 or Clause 8.3 below}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par 8.2 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 Without prejudice to any of its other rights if you are in breach of + any of the terms and conditions of this Licence then ARM may terminate this Licence immediately upon giving written notice to you}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid7630822 +. You may terminate this Licence at any time. }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7106724 \hich\af1\dbch\af37\loch\f1 +8.3 This Licence shall immediately terminate and shall be unavailable to you i\hich\af1\dbch\af37\loch\f1 +f you or any party affiliated to you asserts any patents against ARM, ARM affiliates, third parties who have a valid licence from ARM for the Deliverables, or any customers or distributors of any of them based upon a claim that your (or your affiliate) pa +\hich\af1\dbch\af37\loch\f1 t\hich\af1\dbch\af37\loch\f1 ent is Necessary to implement the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496\charrsid7106724 \hich\af1\dbch\af37\loch\f1 . In this Licence}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 :}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7106724 +\hich\af1\dbch\af37\loch\f1 (i) "affiliate" means any entity controlling, controlled by or under common control with a party (in fact or in law, via voting securities, management control or otherwise) and "affiliated" s\hich\af1\dbch\af37\loch\f1 +hall be construed accordingly; (ii) "assert" means to allege infringement in legal or administrative proceedings, or proceedings before any other competent trade, arbitral or international authority; }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 and }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7106724 \hich\af1\dbch\af37\loch\f1 \hich\f1 (iii) \'93\loch\f1 \hich\f1 Necessary\'94\loch\f1 + means with respect to any claims o\hich\af1\dbch\af37\loch\f1 f any patent, those claims which, without the appropriate permission of the patent owner, will be infringed when implementing the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\hich\af1\dbch\af37\loch\f1 Deliverables }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7106724 \hich\af1\dbch\af37\loch\f1 because no alternative, commercially reasonable, non-infringing way of implementing the }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 Deliverables }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7106724 \hich\af1\dbch\af37\loch\f1 is known.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496\charrsid5900444 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\par }\pard \ltrpar\qj \li0\ri0\sa240\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 { +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 8.4 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid7630822 Upon termination of this Licence,}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 you shall stop }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15098396 +using the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15098396 + and destroy all copies of the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15098396 in your possession. The provisions of clauses 5, 6, 7, 8 and 9 shall survive termination of this Licence.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 9}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 . GENERAL. +\par This Licence is governed by English Law. Except where ARM agrees otherwise in a written contract signed by you and ARM, this is the only agreement between you and ARM relating to the }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Deliverables}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15280636 + and it may only be modified by written agreement between you and ARM. Except a +s expressly agreed in writing, this Licence may not be modified by purchase orders, advertising or other representation by any person. If any clause or sentence in this Licence is held by a court of law to be illegal or unenforceable the remaining provisi +o +ns of this Licence shall not be affected thereby. The failure by ARM to enforce any of the provisions of this Licence, unless waived in writing, shall not constitute a waiver of ARM's rights to enforce such provision or any other provision of this Licence + in the future.}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 This Licence may not be assigned without the prior written consent of ARM. +\par }\pard \ltrpar\qc \li0\ri0\sa240\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 { +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 \page SCHEDULE +\par }\pard \ltrpar\qj \li0\ri0\sa240\widctlpar\tx916\tx1832\tx2748\tx3664\tx4580\tx5496\tx6412\tx7328\tx8244\tx9160\tx10076\tx10992\tx11908\tx12824\tx13740\tx14656\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \cbpat8 { +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 Separate Files +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 The }{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15098396 package }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 also }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15098396 includes the components}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 contained in the following directories}{\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15098396 :}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 +\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\insrsid14553496 \hich\af1\dbch\af0\loch\f1 (a)\tab}}\pard \ltrpar +\qj \fi-360\li720\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\ls16\adjustright\rin0\lin720\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ./}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 \hich\af1\dbch\af37\loch\f1 CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 /}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 +\hich\af1\dbch\af37\loch\f1 DSP_Lib}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 - }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496\charrsid15098396 +DSP Library sources and examples}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 ; +\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\insrsid14553496 \hich\af1\dbch\af0\loch\f1 (b)\tab}}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ./}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 \hich\af1\dbch\af37\loch\f1 CMS\hich\af1\dbch\af37\loch\f1 IS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 /}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496\charrsid7090778 \hich\af1\dbch\af37\loch\f1 Include}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 - Header files; +\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\insrsid14553496 \hich\af1\dbch\af0\loch\f1 (c)\tab}}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ./}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 \hich\af1\dbch\af37\loch\f1 CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 /}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 +\hich\af1\dbch\af37\loch\f1 Lib}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 - }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 \hich\af1\dbch\af37\loch\f1 +DSP Library build for various toolchains}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 ; +\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\insrsid14553496 \hich\af1\dbch\af0\loch\f1 (d)\tab}}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 ./}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 \hich\af1\dbch\af37\loch\f1 CMSIS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 /}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 +\hich\af1\dbch\af37\loch\f1 RTOS}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 - }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid7090778 \hich\af1\dbch\af37\loch\f1 +Header file template for CMSIS-RTOS implementation}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 ; and +\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\insrsid14553496 \hich\af1\dbch\af0\loch\f1 (e)\tab}}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\cf1\lang2057\langfe2057\langfenp2057\insrsid14553496 .}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 /Device - T}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid14488502 \hich\af1\dbch\af37\loch\f1 emplate files and implementations for Cortex-M class processors}{ +\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 . +\par }\pard \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\par \hich\af1\dbch\af37\loch\f1 All of the above com\hich\af1\dbch\af37\loch\f1 ponents (a\hich\f1 \endash \loch\f1 e) are licensed to you under the terms of the BSD licence, which is incorporated within or alongside the above components. +\par }\pard \ltrpar\qj \li284\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin284\itap0\pararsid14553496 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 +\f1\fs18\insrsid14553496\charrsid13975144 \hich\af1\dbch\af37\loch\f1 (f)}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid13975144 +\hich\af1\dbch\af37\loch\f1 ./CMSIS/Driver \hich\f1 \endash \loch\f1 CMSIS-Driver header files}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\par }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid13975144 \hich\af1\dbch\af37\loch\f1 (g)}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 }{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid14553496 +\hich\af37\dbch\af37\loch\f37 }{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 ./CMSIS/Pack \hich\f1 \endash \loch\f1 Example Device Family Pack}{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid14553496\charrsid13975144 + +\par }\pard\plain \ltrpar\s32\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \rtlch\fcs1 \af0\afs21\alang1025 \ltrch\fcs0 \f39\fs21\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 +\af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496 +\par The above components (f \endash g) are licensed to you under the terms of the zlib licence, which is incorporated within or alongside the above components. +\par +\par +\par }\pard\plain \ltrpar\qj \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14553496 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 +\fs22\lang2057\langfe1033\loch\af37\hich\af37\dbch\af37\cgrid\langnp2057\langfenp1033 {\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid2958685 \hich\af1\dbch\af37\loch\f1 ARM contract reference LEC-PRE-00489}{\rtlch\fcs1 \af1\afs18 +\ltrch\fcs0 \f1\fs18\insrsid14553496 \hich\af1\dbch\af37\loch\f1 - v4.0}{\rtlch\fcs1 \af1\afs18 \ltrch\fcs0 \f1\fs18\insrsid14553496\charrsid2958685 +\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a +9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad +5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6 +b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0 +0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6 +a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f +c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512 +0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462 +a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865 +6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b +4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b +4757e8d3f729e245eb2b260a0238fd010000ffff0300504b03041400060008000000210030dd4329a8060000a41b0000160000007468656d652f7468656d652f +7468656d65312e786d6cec594f6fdb3614bf0fd87720746f6327761a07758ad8b19b2d4d1bc46e871e698996d850a240d2497d1bdae38001c3ba618715d86d87 +615b8116d8a5fb34d93a6c1dd0afb0475292c5585e9236d88aad3e2412f9e3fbff1e1fa9abd7eec70c1d1221294fda5efd72cd4324f1794093b0eddd1ef62fad +79482a9c0498f184b4bd2991deb58df7dfbb8ad755446282607d22d771db8b944ad79796a40fc3585ee62949606ecc458c15bc8a702910f808e8c66c69b9565b +5d8a314d3c94e018c8de1a8fa94fd05093f43672e23d06af89927ac06762a049136785c10607758d9053d965021d62d6f6804fc08f86e4bef210c352c144dbab +999fb7b4717509af678b985ab0b6b4ae6f7ed9ba6c4170b06c788a705430adf71bad2b5b057d03606a1ed7ebf5babd7a41cf00b0ef83a6569632cd467faddec9 +699640f6719e76b7d6ac355c7c89feca9cccad4ea7d36c65b258a206641f1b73f8b5da6a6373d9c11b90c537e7f08dce66b7bbeae00dc8e257e7f0fd2badd586 +8b37a088d1e4600ead1ddaef67d40bc898b3ed4af81ac0d76a197c86826828a24bb318f3442d8ab518dfe3a20f000d6458d104a9694ac6d88728eee2782428d6 +0cf03ac1a5193be4cbb921cd0b495fd054b5bd0f530c1931a3f7eaf9f7af9e3f45c70f9e1d3ff8e9f8e1c3e3073f5a42ceaa6d9c84e5552fbffdeccfc71fa33f +9e7ef3f2d117d57859c6fffac327bffcfc793510d26726ce8b2f9ffcf6ecc98baf3efdfdbb4715f04d814765f890c644a29be408edf3181433567125272371be +15c308d3f28acd249438c19a4b05fd9e8a1cf4cd296699771c393ac4b5e01d01e5a30a787d72cf1178108989a2159c77a2d801ee72ce3a5c545a6147f32a9979 +3849c26ae66252c6ed637c58c5bb8b13c7bfbd490a75330f4b47f16e441c31f7184e140e494214d273fc80900aedee52ead87597fa824b3e56e82e451d4c2b4d +32a423279a668bb6690c7e9956e90cfe766cb37b077538abd27a8b1cba48c80acc2a841f12e698f13a9e281c57911ce298950d7e03aba84ac8c154f8655c4f2a +f074481847bd804859b5e696007d4b4edfc150b12addbecba6b18b148a1e54d1bc81392f23b7f84137c2715a851dd0242a633f900710a218ed715505dfe56e86 +e877f0034e16bafb0e258ebb4faf06b769e888340b103d331115bebc4eb813bf83291b63624a0d1475a756c734f9bbc2cd28546ecbe1e20a3794ca175f3fae90 +fb6d2dd99bb07b55e5ccf68942bd0877b23c77b908e8db5f9db7f024d9239010f35bd4bbe2fcae387bfff9e2bc289f2fbe24cfaa301468dd8bd846dbb4ddf1c2 +ae7b4c191ba8292337a469bc25ec3d411f06f53a73e224c5292c8de0516732307070a1c0660d125c7d44553488700a4d7bddd3444299910e254ab984c3a219ae +a4adf1d0f82b7bd46cea4388ad1c12ab5d1ed8e1153d9c9f350a3246aad01c6873462b9ac05999ad5cc988826eafc3acae853a33b7ba11cd1445875ba1b236b1 +399483c90bd560b0b0263435085a21b0f22a9cf9356b38ec6046026d77eba3dc2dc60b17e92219e180643ed27acffba86e9c94c7ca9c225a0f1b0cfae0788ad5 +4adc5a9aec1b703b8b93caec1a0bd8e5de7b132fe5113cf312503b998e2c2927274bd051db6b35979b1ef271daf6c6704e86c73805af4bdd476216c26593af84 +0dfb5393d964f9cc9bad5c313709ea70f561ed3ea7b053075221d51696910d0d339585004b34272bff7213cc7a510a5454a3b349b1b206c1f0af490176745d4b +c663e2abb2b34b23da76f6352ba57ca2881844c1111ab189d8c7e07e1daaa04f40255c77988aa05fe06e4e5bdb4cb9c5394bbaf28d98c1d971ccd20867e556a7 +689ec9166e0a522183792b8907ba55ca6e943bbf2a26e52f48957218ffcf54d1fb09dc3eac04da033e5c0d0b8c74a6b43d2e54c4a10aa511f5fb021a07533b20 +5ae07e17a621a8e082dafc17e450ffb739676998b48643a4daa7211214f623150942f6a02c99e83b85583ddbbb2c4996113211551257a656ec1139246ca86be0 +aadedb3d1441a89b6a929501833b197fee7b9641a3503739e57c732a59b1f7da1cf8a73b1f9bcca0945b874d4393dbbf10b1680f66bbaa5d6f96e77b6f59113d +316bb31a795600b3d256d0cad2fe354538e7566b2bd69cc6cbcd5c38f0e2bcc63058344429dc2121fd07f63f2a7c66bf76e80d75c8f7a1b622f878a18941d840 +545fb28d07d205d20e8ea071b283369834296bdaac75d256cb37eb0bee740bbe278cad253b8bbfcf69eca23973d939b97891c6ce2cecd8da8e2d343578f6648a +c2d0383fc818c798cf64e52f597c740f1cbd05df0c264c49134cf09d4a60e8a107260f20f92d47b374e32f000000ffff0300504b030414000600080000002100 +0dd1909fb60000001b010000270000007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f7 +8277086f6fd3ba109126dd88d0add40384e4350d363f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89 +d93b64b060828e6f37ed1567914b284d262452282e3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd500 +1996509affb3fd381a89672f1f165dfe514173d9850528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d0014000600080000002100e9de0f +bfff0000001c0200001300000000000000000000000000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6 +a7e7c0000000360100000b00000000000000000000000000300100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a +0000001c00000000000000000000000000190200007468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d00140006000800000021 +0030dd4329a8060000a41b00001600000000000000000000000000d60200007468656d652f7468656d652f7468656d65312e786d6c504b01022d001400060008 +00000021000dd1909fb60000001b0100002700000000000000000000000000b20900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000ad0a00000000} +{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d +617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169 +6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363 +656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e} +{\*\latentstyles\lsdstimax267\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal; +\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4; +\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9; +\lsdpriority39 \lsdlocked0 toc 1;\lsdpriority39 \lsdlocked0 toc 2;\lsdpriority39 \lsdlocked0 toc 3;\lsdpriority39 \lsdlocked0 toc 4;\lsdpriority39 \lsdlocked0 toc 5;\lsdpriority39 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7; +\lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdpriority0 \lsdlocked0 footer;\lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdpriority0 \lsdlocked0 page number; +\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdpriority1 \lsdlocked0 Default Paragraph Font;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle; +\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid; +\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph; +\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6; +\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis; +\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference; +\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography; +\lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 0105000002000000180000004d73786d6c322e534158584d4c5265616465722e362e3000000000000000000000600000 +d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff0900060000000000000000000000010000000100000000000000001000000200000001000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffdffffff0a000000feffffff0400000005000000060000000700000008000000090000000b0000000d0000000c0000000e000000110000000f00000010000000120000002c0000002d0000001400000015000000160000001700000018000000190000001a0000001b0000001c0000001d0000001e00 +00001f000000200000002100000022000000230000002400000025000000260000002700000028000000290000002a0000002b000000fefffffffeffffff2e000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffff010000000c6ad98892f1d411a65f0040963251e5000000000000000000000000a07a +5e7487e0d00103000000c01d0000000000004d0073006f004400610074006100530074006f0072006500000000000000000000000000000000000000000000000000000000000000000000000000000000001a000101ffffffffffffffff05000000000000000000000000000000000000000000000090535e7487e0d001 +a07a5e7487e0d0010000000000000000000000004400d200c90032004f00510032003400d8004500c2005900de004d00cf004f00d300c200c100c0004b0041003d003d000000000000000000000000000000000032000101ffffffffffffffff03000000000000000000000000000000000000000000000090535e7487e0 +d001a07a5e7487e0d0010000000000000000000000004900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff04000000ffffffff000000000000000000000000000000000000000000000000 +000000000000000000000000000000000a0c0000000000000100000002000000030000000400000005000000060000000700000008000000090000000a0000000b0000000c0000000d0000000e0000000f000000100000001100000012000000130000001400000015000000160000001700000018000000190000001a00 +00001b0000001c0000001d0000001e0000001f000000200000002100000022000000230000002400000025000000260000002700000028000000290000002a0000002b0000002c0000002d0000002e0000002f00000030000000feffffff3200000033000000340000003500000036000000feffffff3800000039000000 +3a000000feffffff3c0000003d0000003e0000003f00000040000000feffffff42000000430000004400000045000000460000004700000048000000490000004a0000004b0000004c0000004d0000004e0000004f00000050000000510000005200000053000000feffffff550000005600000057000000580000005900 +00005a0000005b000000feffffff5d0000005e0000005f000000feffffff6100000062000000630000006400000065000000feffffff6700000068000000690000006a0000006b0000006c0000006d0000006e0000006f00000070000000710000007200000073000000740000007500000076000000feffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d38223f3e3c4c6f6e6750726f7065727469657320786d6c6e733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f666669 +63652f323030362f6d657461646174612f6c6f6e6750726f70657274696573223e3c4c6f6e6750726f7020786d6c6e733d2222206e616d653d2250726f70657274795f78303032305f426167223e3c215b43444154415b7674695f636f6e74656e7476657273696f6e697364697274793a42577c66616c73650d0a767469 +5f70617273657276657273696f6e3a53527c31342e302e302e363032390d0a4558543a53577c646f630d0a4f726465723a49577c3637323330300d0a7674695f636f6e74656e747461673a53577c7b37414136373534302d343634322d343445372d384342352d3131433437434443314233457d2c3133372c35310d0a5f +43617465676f72793a53577c0d0a524553504f4e53455f53454e4445525f4e414d453a53577c6741414164796137364239396434684c4755523172512b385478547630474745506469780d0a7674695f617574686f723a53527c454d45415c5c656d6964726530310d0a4e6f746573506172743a53577c4c45432d505245 +2d30303438392e646f630d0a53696465204c6574746572733a49577c300d0a7674695f63617465676f726965733a56577c0d0a48696464656e55706c6f61643a53577c0d0a50726f7065727479204261673a53577c7674695f636f6e74656e7476657273696f6e697364697274793a42577c66616c73655c725c6e767469 +5f70617273657276657273696f6e3a53527c31342e302e302e363032395c725c6e4558543a53577c646f635c725c6e4f726465723a49577c3637323330305c725c6e7674695f636f6e74656e747461673a53577c7b45443045303635312d303831342d344533382d423741412d3834373844334342463538467d2c313233 +2c34385c725c6e5f43617465676f72793a53577c5c725c6e524553504f4e53455f53454e4445525f4e414d453a53577c6741414164796137364239396434684c4755523172512b385478547630474745506469785c725c6e7674695f617574686f723a53527c0d0a5469746c653a53577c4c45432d5052452d3030343839 +207e2045554c4120666f7220434d5349532044656c6976657261626c65730d0a7674695f6d6f64696669656462793a53527c454d45415c5c656d6964726530310d0a7674695f61737369676e6564746f3a53527c0d0a4b6579776f7264733a53577c0d0a436f6d7075746564436f6d70616e793a53577c41524d2f0d0a43 +6f6d70757465644c523a53577c41502f0d0a437265617465643a53577c323031342d30322d31395431333a32363a34385a0d0a436f6e74656e745479706549643a53577c307830313031303030394135453436413142414235363438423443423131314343384143453237440d0a5f417574686f723a53577c0d0a436865 +636b20496e20436f6d6d656e743a53577c4d616a6f722056657273696f6e205075626c6973680d0a4e616d653a53577c4c45432d5052452d30303438390d0a5f436f6d6d656e74733a53577c0d0a436f6d6d656e74733a53577c0d0a446f634e756d6265723a53577c4c45432d5052452d30303438390d0a446f6d696e6f +20417574686f723a53577c0d0a4d41494c5f4d53475f4944323a53577c6335437874476e46534a724e5069464153377542612f4d64344d2f474b624c477a4c6e755455566c4c5568595047624d52684f6135524734766e375c725c6e527664486b6a54306a2b4b4277557958304a3054696a664165524d2f63392b336b57 +79676d513d3d0d0a7674695f73796e6375706461746568696464656e76657273696f6e3a49577c3133330d0a5375626a6563743a53577c0d0a646973706c61795f75726e5c3a736368656d61732d6d6963726f736f66742d636f6d5c3a6f66666963655c3a6f666669636523456469746f723a53577c456d696c79204472 +65610d0a437265617465642042793a53577c36323b23456d696c7920447265612c23454d45415c5c656d6964726530312c23456d696c792e447265614061726d2e636f6d2c232c23456d696c7920447265610d0a7674695f666f6c6465726974656d636f756e743a49527c300d0a4d41494c5f4d53475f4944313a53577c +41424141564f41666f5372516f7977567a2b6e3839526b483876636b4a683268583958314c65494a524c58706b682b5843744a6d7a4e52664964766344647443432b43570d0a4d6f6469666965643a53577c323031342d30362d30315432323a30303a35375a0d0a436f6d70757465644e756d6265723a53577c4c45432d +5052452d30303438392d56362e300d0a4d6f6469666965642042793a53577c36323b23456d696c7920447265612c23454d45415c5c656d6964726530312c23456d696c792e447265614061726d2e636f6d2c232c23456d696c7920447265610d0a7674695f617070726f76616c6c6576656c3a53527c0d0a446976697369 +6f6e3a53577c445347202870726576696f75736c79206b6e6f776e20617320534444290d0a48696464656e44656c6574653a53577c0d0a4e6f746573554e49443a53577c32383939374630443531443738304644383032353736433630303736363041310d0a7674695f666f6c646572737562666f6c6465726974656d63 +6f756e743a49527c300d0a5f5374617475733a53577c0d0a646973706c61795f75726e5c3a736368656d61732d6d6963726f736f66742d636f6d5c3a6f66666963655c3a6f666669636523417574686f723a53577c456d696c7920447265610d0a446f63547970653a53577c507265636564656e740d0a446f6d696e6f20 +56657273696f6e3a53577c0d0a454d41494c5f4f574e45525f414444524553533a53577c7341414155597479416b654e575234632f6879763833646a446467542f2f536c6652666a3079756c304e796d7535383d0d0a7674695f636163686564637573746f6d70726f70733a56587c5375626a65637420646973706c6179 +5f75726e3a736368656d61732d6d6963726f736f66742d636f6d3a6f66666963653a6f666669636523456469746f7220455854204d41494c5f4d53475f494431204f72646572205f43617465676f727920524553504f4e53455f53454e4445525f4e414d45204d6f64696669656420436f6d70757465644e756d62657220 +4e6f7465735061727420536964655c5c204c657474657273207674695f617070726f76616c6c6576656c207674695f63617465676f72696573204469766973696f6e2048696464656e44656c6574652048696464656e55706c6f6164204e6f746573554e49442050726f70657274795c5c20426167207674695f61737369 +676e6564746f204b6579776f726473205f53746174757320436f6d7075746564436f6d70616e7920436f6d70757465644c52204372656174656420646973706c61795f75726e3a736368656d61732d6d6963726f736f66742d636f6d3a6f66666963653a6f666669636523417574686f7220446f635479706520446f6d69 +6e6f5c5c2056657273696f6e20454d41494c5f4f574e45525f41444452455353207674695f7469746c65205f417574686f7220436865636b5c5c20496e5c5c20436f6d6d656e742046696c654c656166526566204e6f74657354696d655374616d70205f436f6d6d656e7473204e616d6520436f6d6d656e747320446f63 +4e756d62657220446f6d696e6f5c5c20417574686f72204d41494c5f4d53475f4944320d0a7674695f646f6373746f726576657273696f6e3a49527c3133370d0a7674695f6d657461696e666f76657273696f6e3a49577c3139350d0a7674695f636f6e74656e746368616e6765756e69743a53577c0d0a7674695f6361 +636865647469746c653a53527c4c45432d5052452d3030343839207e2045554c4120666f7220434d5349532044656c6976657261626c65730d0a7674695f7469746c653a53527c4c45432d5052452d3030343839207e2045554c4120666f7220434d5349532044656c6976657261626c65730d0a46696c654c6561665265 +663a53577c4c45432d5052452d30303438390d0a4e6f74657354696d655374616d703a53577c30332f31322f323031302032323a34303a33360d0a5d5d3e3c2f4c6f6e6750726f703e3c2f4c6f6e6750726f706572746965733e000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b33393543324130462d314530372d343845302d393846 +382d4342434543453238363032387d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572 +693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f6c6f6e6750726f70657274696573222f3e3c64733a736368656d615265662064733a7572693d22222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f726549 +74656d3e00000000000000000000000000000000000000003c3f6d736f2d636f6e74656e74547970653f3e3c637573746f6d58736e20786d6c6e733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f500072006f007000650072007400690065007300000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000310000006c01000000000000c000d300c4004100c600d300da00da00c60055003400df00c5004100da00d100d000d300 +48005600d700d0003d003d000000000000000000000000000000000032000101020000000b000000060000000000000000000000000000000000000000000000a07a5e7487e0d001a07a5e7487e0d0010000000000000000000000004900740065006d000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000a000201ffffffff07000000ffffffff00000000000000000000000000000000000000000000000000000000000000000000000037000000d700000000000000500072006f007000650072007400690065007300000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000003b0000004e010000000000006d2f6f66666963652f323030362f6d657461646174612f637573746f6d58 +736e223e3c78736e4c6f636174696f6e3e3c2f78736e4c6f636174696f6e3e3c6361636865643e547275653c2f6361636865643e3c6f70656e427944656661756c743e46616c73653c2f6f70656e427944656661756c743e3c78736e53636f70653e3c2f78736e53636f70653e3c2f637573746f6d58736e3e0000000000 +0000000000000000000000000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b39423030 +333938332d424133452d343739392d424639342d3045423143333331443544467d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c +64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f637573746f6d58736e222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e0000000000000000 +0000000000000000000000000000000000000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d38223f3e3c703a70726f7065727469657320786d6c6e733a703d22687474703a2f2f736368656d61732e6d6963726f736f66 +742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f706572746965732220786d6c6e733a7873693d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612d696e7374616e63652220786d6c6e733a70633d22687474703a2f2f736368656d61732e6d6963726f736f66 +742e636f6d2f6f66666963652f696e666f706174682f323030372f506172746e6572436f6e74726f6c73223e3c646f63756d656e744d616e6167656d656e743e3c446f634e756d62657220786d6c6e733d2232656334313736362d353237652d346338342d623438342d646633663235393966643061223e4c45432d5052 +452d30303438393c2f446f634e756d6265723e3c446f6d696e6f5f78303032305f56657273696f6e20786d6c6e733d2232656334313736362d353237652d346338342d623438342d64663366323539396664306122207873693a6e696c3d2274727565222f3e3c4e6f74657354696d65c000dc00d800c1004300c500c700 +c400d100c40053003200df004e004e005100d200ca004500cc00560051003d003d000000000000000000000000000000000032000100ffffffffffffffff090000000000000000000000000000000000000000000000a07a5e7487e0d001a07a5e7487e0d0010000000000000000000000004900740065006d0000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff0a000000ffffffff00000000000000000000000000000000000000000000000000000000000000000000000041000000b304000000000000500072006f0070006500 +72007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000000000054000000e601000000000000cb004600ce003200 +49004200d3005900ca005500ca0030003000d000c00054003400d200c100db00dd00d0003d003d000000000000000000000000000000000032000101080000000e0000000c0000000000000000000000000000000000000000000000a07a5e7487e0d001a07a5e7487e0d0010000000000000000000000005374616d7020 +786d6c6e733d2232656334313736362d353237652d346338342d623438342d64663366323539396664306122207873693a6e696c3d2274727565222f3e3c4e6f7465735061727420786d6c6e733d2232656334313736362d353237652d346338342d623438342d646633663235393966643061223e4c45432d5052452d30 +303438392e646f633c2f4e6f746573506172743e3c45585420786d6c6e733d2232656334313736362d353237652d346338342d623438342d646633663235393966643061223e646f633c2f4558543e3c4469766973696f6e20786d6c6e733d2232656334313736362d353237652d346338342d623438342d646633663235 +393966643061223e445347202870726576696f75736c79206b6e6f776e20617320534444293c2f4469766973696f6e3e3c536964655f78303032305f4c65747465727320786d6c6e733d2232656334313736362d353237652d346338342d623438342d646633663235393966643061223e303c2f536964655f7830303230 +5f4c6574746572733e3c436f6d6d656e747320786d6c6e733d2232656334313736362d353237652d346338342d623438342d64663366323539396664306122207873693a6e696c3d2274727565222f3e3c4e6f746573554e494420786d6c6e733d2232656334313736362d353237652d346338342d623438342d64663366 +3235393966643061223e32383939374630443531443738304644383032353736433630303736363041313c2f4e6f746573554e49443e3c446f6d696e6f5f78303032305f417574686f7220786d6c6e733d2232656334313736362d353237652d346338342d623438342d64663366323539396664306122207873693a6e69 +6c3d2274727565222f3e3c446f635479706520786d6c6e733d2232656334313736362d353237652d346338342d623438342d646633663235393966643061223e507265636564656e743c2f446f63547970653e3c2f646f63756d656e744d616e6167656d656e743e3c2f703a70726f706572746965733e00000000000000 +0000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b30413231434538332d453435392d343443362d394346432d44333530434141313243 +35357d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7363 +68656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f70657274696573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f696e666f706174682f323030372f +506172746e6572436f6e74726f6c73222f3e3c64733a736368656d615265662064733a7572693d2232656334313736362d353237652d346338342d623438342d646633663235393966643061222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e000000000000000000000000 +00000000000000000000000000003c3f6d736f2d636f6e74656e74547970653f3e3c466f726d54656d706c6174657320786d6c6e733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f7368617265706f696e742f76332f636f6e74656e74747970652f666f726d73223e3c446973706c61793e +446f63756d656e744c696272617279466f726d3c2f446973706c61793e3c456469743e446f63756d656e744c696272617279466f726d3c2f456469743e3c4e65773e446f63756d656e744c696272617279466f726d3c2f4e65773e3c2f466f726d54656d706c617465733e00000000000000000000000000000000000000 +0000000000000000000000000000000000004900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff0d000000ffffffff00000000000000000000000000000000000000000000000000000000 +00000000000000005c000000db00000000000000500072006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000 +00000000000000000000600000004f01000000000000dd00df0050004500ce003200cf004d00d600d4004300df00c800c9004300cb003300dd00c6004f00cd00c0003d003d000000000000000000000000000000000032000100ffffffffffffffff0f0000000000000000000000000000000000000000000000a07a5e74 +87e0d001a07a5e7487e0d0010000000000000000000000004900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff10000000ffffffff00000000000000000000000000000000000000000000 +00000000000000000000000000001300000016310000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b32303943354241432d443831432d +344141392d394136422d3038313337423238374246377d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d6152 +65662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f7368617265706f696e742f76332f636f6e74656e74747970652f666f726d73222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e0000000000000000000000000000000000 +00000000000000000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b4239433446334637 +2d434343422d343044422d424641322d3930414237374439384542367d2220786d6c3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d38223f3e3c63743a636f6e74656e7454797065536368656d612063743a5f3d2222206d613a5f3d2222206d613a636f6e74656e74547970654e61 +6d653d22446f63756d656e7422206d613a636f6e74656e745479706549443d223078303130313030303941354534364131424142353634384234434231313143433841434532374422206d613a636f6e74656e745479706556657273696f6e3d22343122206d613a636f6e74656e74547970654465736372697074696f6e +3d224372656174652061206e657720646f63756d656e742e22206d613a636f6e74656e745479706553636f70653d2222206d613a76657273696f6e49443d2239626433656238363438633235356336303133626362616536616239636236612220786d6c6e733a63743d22687474703a2f2f736368656d61732e6d696372 +6f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f636f6e74656e74547970652220786d6c6e733a6d613d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f706572746965732f6d65746141747472696275 +746573223e0d0a3c7873643a736368656d61207461726765744e616d6573706163653d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f7065727469657322206d613a726f6f743d227472756522206d613a6669656c647349443d22 +393637663537656361366533626638633435623136343161643237363161636522206e73323a5f3d222220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a78733d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c5363 +68656d612220786d6c6e733a703d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f706572746965732220786d6c6e733a6e73323d2232656334313736362d353237652d346338342d623438342d646633663235393966643061223e +0d0a3c7873643a696d706f7274206e616d6573706163653d2232656334313736362d353237652d346338342d623438342d646633663235393966643061222f3e0d0a3c7873643a656c656d656e74206e616d653d2270726f70657274696573223e0d0a3c7873643a636f6d706c6578547970653e0d0a3c7873643a736571 +75656e63653e0d0a3c7873643a656c656d656e74206e616d653d22646f63756d656e744d616e6167656d656e74223e0d0a3c7873643a636f6d706c6578547970653e0d0a3c7873643a616c6c3e0d0a3c7873643a656c656d656e74207265663d226e73323a45585422206d696e4f63637572733d2230222f3e0d0a3c7873 +643a656c656d656e74207265663d226e73323a446f635479706522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4469766973696f6e22206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a436f6d6d656e74732220 +6d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a446f6d696e6f5f78303032305f56657273696f6e22206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a446f6d696e6f5f78303032305f417574686f7222206d696e4f63 +637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a446f634e756d62657222206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4e6f746573554e494422206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e742072 +65663d226e73323a4e6f74657354696d655374616d7022206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4e6f7465735061727422206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a536964655f78303032305f4c65 +747465727322206d696e4f63637572733d2230222f3e0d0a3c2f7873643a616c6c3e0d0a3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c2f7873643a73657175656e63653e0d0a3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c +2f7873643a736368656d613e0d0a3c7873643a736368656d61207461726765744e616d6573706163653d2232656334313736362d353237652d346338342d623438342d6466336632353939666430612220656c656d656e74466f726d44656661756c743d227175616c69666965642220786d6c6e733a7873643d22687474 +703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a78733d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a646d733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f32303036 +2f646f63756d656e744d616e6167656d656e742f74797065732220786d6c6e733a70633d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f696e666f706174682f323030372f506172746e6572436f6e74726f6c73223e0d0a3c7873643a696d706f7274206e616d6573706163 +653d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d656e744d616e6167656d656e742f7479706573222f3e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f +66666963652f696e666f706174682f323030372f506172746e6572436f6e74726f6c73222f3e0d0a3c7873643a656c656d656e74206e616d653d2245585422206d613a696e6465783d223122206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d2245585422206d613a646573637269707469 +6f6e3d2246696c6520457874656e73696f6e22206d613a68696464656e3d227472756522206d613a696e7465726e616c4e616d653d2245585422206d613a726561644f6e6c793d2266616c7365223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a +54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d223130222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d22446f635479706522206d613a696e64 +65783d223222206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d22446f635479706522206d613a64656661756c743d22507265636564656e7422206d613a666f726d61743d2244726f70646f776e22206d613a68696464656e3d227472756522206d613a696e7465726e616c4e616d653d22 +446f635479706522206d613a726561644f6e6c793d2266616c7365223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a43686f696365223e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22507265636564656e74222f3e0d0a3c78 +73643a656e756d65726174696f6e2076616c75653d2253696465204c6574746572202d20537562222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224469766973696f6e +22206d613a696e6465783d223422206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224469766973696f6e22206d613a666f726d61743d2244726f70646f776e22206d613a696e7465726e616c4e616d653d224469766973696f6e223e0d0a3c7873643a73696d706c65547970653e0d0a3c +7873643a7265737472696374696f6e20626173653d22646d733a43686f696365223e0d0a3c7873643a656e756d65726174696f6e2076616c75653d2241726368697665222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22415344222f3e0d0a3c7873643a656e756d65726174696f6e2076616c7565 +3d22415550222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22436f6d70616e792041646d696e222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22436f72706f72617465222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22446174612050726f74656374 +696f6e222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22446576656c6f706d656e742053797374656d73222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22454441222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22466163696c6974696573222f3e0d +0a3c7873643a656e756d65726174696f6e2076616c75653d224852222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d2248522032222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d224954222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22496e74657263 +6f6d70616e79204d617474657273222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d224c6567616c204f7065726174696f6e73222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d224d26616d703b41222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225061 +74656e7473222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225044202d20417263686974656374757265222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225044202d20436f726573222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22504420e2809320 +435353222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225044202d204d5044222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d2250444547222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22504445472046726565204c69627261727920416e6e657865 +73222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22504445472046726565204c69627261727920436f6e747261637473222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d2250495044222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d2250495044204672 +6565204c69627261727920416e6e65786573222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22504950442046726565204c69627261727920436f6e747261637473222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22534444222f3e0d0a3c7873643a656e756d65726174696f +6e2076616c75653d22535344222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d224d61726b6574696e67222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225044202d204661627269632028617070726f76616c20726571756972656420627920436f6e74726163742d61707072 +6f76616c2d504429222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225374616e6461726473222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225275737369616e207472616e73616374696f6e73222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225765 +627369746520506f6c6963696573222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225472616465204d61726b73222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22496f54204255222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225045472028707265 +76696f75736c792041534429222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d224d5047202870726576696f75736c79206b6e6f776e206173205044202d204d504429222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22435047202870726576696f75736c79206b6e6f776e20 +617320e2809c5044202d20436f72657329222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22445347202870726576696f75736c79206b6e6f776e2061732053444429222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22415447202870726576696f75736c79206b6e6f776e20 +6173205044202d2041726368697465637475726529222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d22535347202d2053797374656d20495020616e6420436f72655369676874202870726576696f75736c79206b6e6f776e206173205044202d2046616272696329222f3e0d0a3c7873643a656e75 +6d65726174696f6e2076616c75653d22535347222f3e0d0a3c7873643a656e756d65726174696f6e2076616c75653d225226616d703b44222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e +74206e616d653d22436f6d6d656e747322206d613a696e6465783d223522206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d22436f6d6d656e747322206d613a696e7465726e616c4e616d653d22436f6d6d656e7473223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a72 +65737472696374696f6e20626173653d22646d733a4e6f7465223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74 +206e616d653d22446f6d696e6f5f78303032305f56657273696f6e22206d613a696e6465783d223622206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d22446f6d696e6f2056657273696f6e22206d613a68696464656e3d227472756522206d613a696e7465726e616c4e616d653d22446f +6d696e6f5f78303032305f56657273696f6e22206d613a726561644f6e6c793d2266616c7365223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d65 +6e743e0d0a3c7873643a656c656d656e74206e616d653d22446f6d696e6f5f78303032305f417574686f7222206d613a696e6465783d223722206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d22446f6d696e6f20417574686f7222206d613a68696464656e3d227472756522206d613a69 +6e7465726e616c4e616d653d22446f6d696e6f5f78303032305f417574686f7222206d613a726561644f6e6c793d2266616c7365223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874222f3e0d0a3c2f7873643a73696d706c6554797065 +3e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d22446f634e756d62657222206d613a696e6465783d223822206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d22446f634e756d62657222206d613a68696464656e3d227472756522206d613a69 +6e7465726e616c4e616d653d22446f634e756d62657222206d613a726561644f6e6c793d2266616c7365223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a65 +6c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224e6f746573554e494422206d613a696e6465783d22313422206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224e6f746573554e494422206d613a68696464656e3d227472756522206d613a696e7465726e616c4e61 +6d653d224e6f746573554e4944223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224e +6f74657354696d655374616d7022206d613a696e6465783d22313522206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224e6f74657354696d655374616d7022206d613a68696464656e3d227472756522206d613a696e7465726e616c4e616d653d224e6f74657354696d655374616d7022 +3e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a4461746554696d65222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224e6f746573506172742220 +6d613a696e6465783d22313622206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224e6f7465735061727422206d613a68696464656e3d227472756522206d613a696e7465726e616c4e616d653d224e6f74657350617274223e0d0a3c7873643a73696d706c65547970653e0d0a3c787364 +3a7265737472696374696f6e20626173653d22646d733a54657874222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d22536964655f78303032305f4c65747465727322206d613a696e6465783d22313822206e696c6c6162 +6c653d227472756522206d613a646973706c61794e616d653d2253696465204c65747465727322206d613a64656661756c743d223022206d613a68696464656e3d227472756522206d613a696e7465726e616c4e616d653d22536964655f78303032305f4c65747465727322206d613a726561644f6e6c793d2266616c73 +6522206d613a70657263656e746167653d2246414c5345223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a4e756d626572222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c2f7873643a7363 +68656d613e0d0a3c7873643a736368656d61207461726765744e616d6573706163653d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f706572746965732220656c656d656e74466f726d44656661756c +743d227175616c69666965642220617474726962757465466f726d44656661756c743d22756e7175616c69666965642220626c6f636b44656661756c743d2223616c6c2220786d6c6e733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f7061636b6167652f323030362f6d6574 +61646174612f636f72652d70726f706572746965732220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a7873693d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612d696e7374616e63652220786d6c6e +733a64633d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f2220786d6c6e733a64637465726d733d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f2220786d6c6e733a6f646f633d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f696e74 +65726e616c2f6f6264223e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f2220736368656d614c6f636174696f6e3d22687474703a2f2f6475626c696e636f72652e6f72672f736368656d61732f786d6c732f7164632f32 +3030332f30342f30322f64632e787364222f3e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f2220736368656d614c6f636174696f6e3d22687474703a2f2f6475626c696e636f72652e6f72672f736368656d61732f786d6c732f7164632f +323030332f30342f30322f64637465726d732e787364222f3e0d0a3c7873643a656c656d656e74206e616d653d22636f726550726f706572746965732220747970653d2243545f636f726550726f70657274696573222f3e0d0a3c7873643a636f6d706c657854797065206e616d653d2243545f636f726550726f706572 +74696573223e0d0a3c7873643a616c6c3e0d0a3c7873643a656c656d656e74207265663d2264633a63726561746f7222206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74207265663d2264637465726d733a6372656174656422206d696e4f63637572733d22 +3022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74207265663d2264633a6964656e74696669657222206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74206e616d653d22636f6e74656e745479706522206d696e4f63637572733d +223022206d61784f63637572733d22312220747970653d227873643a737472696e6722206d613a696e6465783d223922206d613a646973706c61794e616d653d22436f6e74656e742054797065222f3e0d0a3c7873643a656c656d656e74207265663d2264633a7469746c6522206d696e4f63637572733d223022206d61 +784f63637572733d223122206d613a696e6465783d223322206d613a646973706c61794e616d653d225469746c65222f3e0d0a3c7873643a656c656d656e74207265663d2264633a7375626a65637422206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e742072 +65663d2264633a6465736372697074696f6e22206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74206e616d653d226b6579776f72647322206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f +3e0d0a3c7873643a656c656d656e74207265663d2264633a6c616e677561676522206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74206e616d653d2263617465676f727922206d696e4f63637572733d223022206d61784f63637572733d2231222074797065 +3d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74206e616d653d2276657273696f6e22206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74206e616d653d227265766973696f6e22206d696e +4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67223e0d0a3c7873643a616e6e6f746174696f6e3e0d0a3c7873643a646f63756d656e746174696f6e3e0d0a202020202020202020202020202020202020202020202020546869732076616c756520696e6469636174 +657320746865206e756d626572206f66207361766573206f72207265766973696f6e732e20546865206170706c69636174696f6e20697320726573706f6e7369626c6520666f72207570646174696e6720746869732076616c75652061667465722065616368207265766973696f6e2e0d0a202020202020202020202020 +20202020202020203c2f7873643a646f63756d656e746174696f6e3e0d0a3c2f7873643a616e6e6f746174696f6e3e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d226c6173744d6f646966696564427922206d696e4f63637572733d223022206d61784f63637572733d2231 +2220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74207265663d2264637465726d733a6d6f64696669656422206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74206e616d653d22636f6e74656e7453746174757322206d69 +6e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c2f7873643a616c6c3e0d0a3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a736368656d613e0d0a3c78733a736368656d61207461726765744e616d6573706163653d2268747470 +3a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f696e666f706174682f323030372f506172746e6572436f6e74726f6c732220656c656d656e74466f726d44656661756c743d227175616c69666965642220617474726962757465466f726d44656661756c743d22756e7175616c69666965 +642220786d6c6e733a70633d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f696e666f706174682f323030372f506172746e6572436f6e74726f6c732220786d6c6e733a78733d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d61223e0d0a +3c78733a656c656d656e74206e616d653d22506572736f6e223e0d0a3c78733a636f6d706c6578547970653e0d0a3c78733a73657175656e63653e0d0a3c78733a656c656d656e74207265663d2270633a446973706c61794e616d6522206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c7873 +3a656c656d656e74207265663d2270633a4163636f756e74496422206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74207265663d2270633a4163636f756e745479706522206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c2f78733a7365 +7175656e63653e0d0a3c2f78733a636f6d706c6578547970653e0d0a3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d22446973706c61794e616d652220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d224163 +636f756e7449642220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d224163636f756e74547970652220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d2242444341 +73736f636961746564456e74697479223e0d0a3c78733a636f6d706c6578547970653e0d0a3c78733a73657175656e63653e0d0a3c78733a656c656d656e74207265663d2270633a424443456e7469747922206d696e4f63637572733d223022206d61784f63637572733d22756e626f756e646564223e3c2f78733a656c +656d656e743e0d0a3c2f78733a73657175656e63653e0d0a3c78733a617474726962757465207265663d2270633a456e746974794e616d657370616365223e3c2f78733a6174747269627574653e0d0a3c78733a617474726962757465207265663d2270633a456e746974794e616d65223e3c2f78733a61747472696275 +74653e0d0a3c78733a617474726962757465207265663d2270633a53797374656d496e7374616e63654e616d65223e3c2f78733a6174747269627574653e0d0a3c78733a617474726962757465207265663d2270633a4173736f63696174696f6e4e616d65223e3c2f78733a6174747269627574653e0d0a3c2f78733a63 +6f6d706c6578547970653e0d0a3c2f78733a656c656d656e743e0d0a3c78733a617474726962757465206e616d653d22456e746974794e616d6573706163652220747970653d2278733a737472696e67223e3c2f78733a6174747269627574653e0d0a3c78733a617474726962757465206e616d653d22456e746974794e +616d652220747970653d2278733a737472696e67223e3c2f78733a6174747269627574653e0d0a3c78733a617474726962757465206e616d653d2253797374656d496e7374616e63654e616d652220747970653d2278733a737472696e67223e3c2f78733a6174747269627574653e0d0a3c78733a617474726962757465 +206e616d653d224173736f63696174696f6e4e616d652220747970653d2278733a737472696e67223e3c2f78733a6174747269627574653e0d0a3c78733a656c656d656e74206e616d653d22424443456e74697479223e0d0a3c78733a636f6d706c6578547970653e0d0a3c78733a73657175656e63653e0d0a3c78733a +656c656d656e74207265663d2270633a456e74697479446973706c61794e616d6522206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74207265663d2270633a456e74697479496e7374616e63655265666572656e636522206d696e4f63637572733d2230223e3c2f78 +733a656c656d656e743e0d0a3c78733a656c656d656e74207265663d2270633a456e7469747949643122206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74207265663d2270633a456e7469747949643222206d696e4f63637572733d2230223e3c2f78733a656c656d +656e743e0d0a3c78733a656c656d656e74207265663d2270633a456e7469747949643322206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74207265663d2270633a456e7469747949643422206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a +3c78733a656c656d656e74207265663d2270633a456e7469747949643522206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c2f78733a73657175656e63653e0d0a3c2f78733a636f6d706c6578547970653e0d0a3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d65 +3d22456e74697479446973706c61794e616d652220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d22456e74697479496e7374616e63655265666572656e63652220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e +0d0a3c78733a656c656d656e74206e616d653d22456e746974794964312220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d22456e746974794964322220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78 +733a656c656d656e74206e616d653d22456e746974794964332220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d22456e746974794964342220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c +656d656e74206e616d653d22456e746974794964352220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d225465726d73223e0d0a3c78733a636f6d706c6578547970653e0d0a3c78733a73657175656e63653e0d0a3c78733a656c656d656e74 +207265663d2270633a5465726d496e666f22206d696e4f63637572733d223022206d61784f63637572733d22756e626f756e646564223e3c2f78733a656c656d656e743e0d0a3c2f78733a73657175656e63653e0d0a3c2f78733a636f6d706c6578547970653e0d0a3c2f78733a656c656d656e743e0d0a3c78733a656c +656d656e74206e616d653d225465726d496e666f223e0d0a3c78733a636f6d706c6578547970653e0d0a3c78733a73657175656e63653e0d0a3c78733a656c656d656e74207265663d2270633a5465726d4e616d6522206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e +74207265663d2270633a5465726d496422206d696e4f63637572733d2230223e3c2f78733a656c656d656e743e0d0a3c2f78733a73657175656e63653e0d0a3c2f78733a636f6d706c6578547970653e0d0a3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d225465726d4e616d65222074 +7970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c78733a656c656d656e74206e616d653d225465726d49642220747970653d2278733a737472696e67223e3c2f78733a656c656d656e743e0d0a3c2f78733a736368656d613e0d0a3c2f63743a636f6e74656e7454797065536368656d613e +000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500072006f00700065007200740069006500 +7300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000000000000000000066000000400400000000000000000000000000000000000000000000 +00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006e733a64733d22687474 +703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f +6d2f6f66666963652f323030362f6d657461646174612f636f6e74656e7454797065222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f706572746965732f6d6574614174 +7472696275746573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d61222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f +323030362f6d657461646174612f70726f70657274696573222f3e3c64733a736368656d615265662064733a7572693d2232656334313736362d353237652d346338342d623438342d646633663235393966643061222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d +6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d656e744d616e6167656d656e742f7479706573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f696e666f706174682f323030372f5061 +72746e6572436f6e74726f6c73222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f70657274696573222f3e3c64733a736368656d6152656620 +64733a7572693d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f73636865 +6d61732e6d6963726f736f66742e636f6d2f696e7465726e616c2f6f6264222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000000105000000000000}} \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/CMSIS_CORE_Files.png b/CMSIS/Documentation/Core/html/CMSIS_CORE_Files.png new file mode 100644 index 0000000..a542159 Binary files /dev/null and b/CMSIS/Documentation/Core/html/CMSIS_CORE_Files.png differ diff --git a/CMSIS/Documentation/Core/html/CMSIS_CORE_Files_user.png b/CMSIS/Documentation/Core/html/CMSIS_CORE_Files_user.png new file mode 100644 index 0000000..1cacaf2 Binary files /dev/null and b/CMSIS/Documentation/Core/html/CMSIS_CORE_Files_user.png differ diff --git a/CMSIS/Documentation/Core/html/CMSIS_Logo_Final.png b/CMSIS/Documentation/Core/html/CMSIS_Logo_Final.png new file mode 100644 index 0000000..2056b7e Binary files /dev/null and b/CMSIS/Documentation/Core/html/CMSIS_Logo_Final.png differ diff --git a/CMSIS/Documentation/Core/html/_c_o_r_e__m_i_s_r_a__exceptions_pg.html b/CMSIS/Documentation/Core/html/_c_o_r_e__m_i_s_r_a__exceptions_pg.html new file mode 100644 index 0000000..9386291 --- /dev/null +++ b/CMSIS/Documentation/Core/html/_c_o_r_e__m_i_s_r_a__exceptions_pg.html @@ -0,0 +1,167 @@ + + + + + +MISRA-C:2004 Compliance Exceptions +CMSIS-CORE: MISRA-C:2004 Compliance Exceptions + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
MISRA-C:2004 Compliance Exceptions
+
+
+

CMSIS-CORE uses the common coding rules for CMSIS components that are documented under Introduction.

+

CMSIS-CORE violates the following MISRA-C:2004 rules:

+
    +
  • Required Rule 8.5, object/function definition in header file.
    + Violated since function definitions in header files are used for function inlining'.
  • +
+
    +
  • Advisory Rule 12.4, Side effects on right hand side of logical operator.
    + Violated because volatile is used for core register definitions.
  • +
+
    +
  • Advisory Rule 14.7, Return statement before end of function.
    + Violated to simplify code logic.
  • +
+
    +
  • Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Violated since unions are used for effective representation of core registers.
  • +
+
    +
  • Advisory Rule 19.4, Disallowed definition for macro.
    + Violated since macros are used for assembler keywords.
  • +
+
    +
  • Advisory Rule 19.7, Function-like macro defined.
    + Violated since function-like macros are used to generate more efficient code.
  • +
+
    +
  • Advisory Rule 19.16, all preprocessing directives must be valid.
    + Violated to set default settings for macros.
  • +
+

<device>.h files generated by SVDConv.exe violate the following MISRA-C:2004 rules:

+
    +
  • Advisory Rule 20.2, Re-use of C90 identifier pattern.
    + Violated since CMSIS macros begin with '__'. Since CMSIS is developed and verified with various compilers this approach is acceptable and avoids conflicts with user symbols.
  • +
+
    +
  • Advisory Rule 19.1, Declaration before #include.
    + Violated since Interrupt Number Definition Type (IRQn_Type) must be defined before including the core header file.
  • +
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/_reg_map_pg.html b/CMSIS/Documentation/Core/html/_reg_map_pg.html new file mode 100644 index 0000000..64d9ec3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/_reg_map_pg.html @@ -0,0 +1,303 @@ + + + + + +Register Mapping +CMSIS-CORE: Register Mapping + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Register Mapping
+
+
+

The table below associates some common register names used in CMSIS to the register names used in Technical Reference Manuals.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CMSIS Register Name Cortex-M3, Cortex-M4, and Cortex-M7 Cortex-M0 and Cortex-M0+ Register Name
Nested Vectored Interrupt Controller (NVIC) Register Access
NVIC->ISER[] NVIC_ISER0..7 ISER Interrupt Set-Enable Registers
NVIC->ICER[] NVIC_ICER0..7 ICER Interrupt Clear-Enable Registers
NVIC->ISPR[] NVIC_ISPR0..7 ISPR Interrupt Set-Pending Registers
NVIC->ICPR[] NVIC_ICPR0..7 ICPR Interrupt Clear-Pending Registers
NVIC->IABR[] NVIC_IABR0..7 - Interrupt Active Bit Register
NVIC->IP[] NVIC_IPR0..59 IPR0..7 Interrupt Priority Register
NVIC->STIR STIR - Software Triggered Interrupt Register
System Control Block (SCB) Register Access
SCB->CPUID CPUID CPUID CPUID Base Register
SCB->ICSR ICSR ICSR Interrupt Control and State Register
SCB->VTOR VTOR - Vector Table Offset Register
SCB->AIRCR AIRCR AIRCR Application Interrupt and Reset Control Register
SCB->SCR SCR SCR System Control Register
SCB->CCR CCR CCR Configuration and Control Register
SCB->SHP[] SHPR1..3 SHPR2..3 System Handler Priority Registers
SCB->SHCSR SHCSR SHCSR System Handler Control and State Register
SCB->CFSR CFSR - Configurable Fault Status Registers
SCB->HFSR HFSR - HardFault Status Register
SCB->DFSR DFSR - Debug Fault Status Register
SCB->MMFAR MMFAR - MemManage Fault Address Register
SCB->BFAR BFAR - BusFault Address Register
SCB->AFSR AFSR - Auxiliary Fault Status Register
SCB->PFR[] ID_PFR0..1 - Processor Feature Registers
SCB->DFR ID_DFR0 - Debug Feature Register
SCB->ADR ID_AFR0 - Auxiliary Feature Register
SCB->MMFR[] ID_MMFR0..3 - Memory Model Feature Registers
SCB->ISAR[] ID_ISAR0..4 - Instruction Set Attributes Registers
SCB->CPACR CPACR - Coprocessor Access Control Register
System Control and ID Registers not in the SCB (SCnSCB) Register Access
SCnSCB->ICTR ICTR - Interrupt Controller Type Register
SCnSCB->ACTLR ACTLR - Auxiliary Control Register
System Timer (SysTick) Control and Status Register Access
SysTick->CTRL STCSR SYST_CSR SysTick Control and Status Register
SysTick->LOAD STRVR SYST_RVR SysTick Reload Value Register
SysTick->VAL STCVR SYST_CVR SysTick Current Value Register
SysTick->CALIB STCR SYST_CALIB SysTick Calibaration Value Register
Data Watchpoint and Trace (DWT) Register Access
DWT->CTRL DWT_CTRL - Control Register
DWT->CYCCNT DWT_CYCCNT - Cycle Count Register
DWT->CPICNT DWT_CPICNT - CPI Count Register
DWT->EXCCNT DWT_EXCCNT - Exception Overhead Count Register
DWT->SLEEPCNT DWT_SLEEPCNT - Sleep Count Register
DWT->LSUCNT DWT_LSUCNT - LSU Count Register
DWT->FOLDCNT DWT_FOLDCNT - Folded-instruction Count Register
DWT->PCSR DWT_PCSR - Program Counter Sample Register
DWT->COMP0..3 DWT_COMP0..3 - Comparator Register 0..3
DWT->MASK0..3 DWT_MASK0..3 - Mask Register 0..3
DWT->FUNCTION0..3 DWT_FUNCTION0..3 - Function Register 0..3
Instrumentation Trace Macrocell (ITM) Register Access
ITM->PORT[] ITM_STIM0..31 - Stimulus Port Registers
ITM->TER ITM_TER - Trace Enable Register
ITM->TPR ITM_TPR - ITM Trace Privilege Register
ITM->TCR ITM_TCR - Trace Control Register
Trace Port Interface (TPIU) Register Access
TPI->SSPSR TPIU_SSPR - Supported Parallel Port Size Register
TPI->CSPSR TPIU_CSPSR - Current Parallel Port Size Register
TPI->ACPR TPIU_ACPR - Asynchronous Clock Prescaler Register
TPI->SPPR TPIU_SPPR - Selected Pin Protocol Register
TPI->FFSR TPIU_FFSR - Formatter and Flush Status Register
TPI->FFCR TPIU_FFCR - Formatter and Flush Control Register
TPI->FSCR TPIU_FSCR - Formatter Synchronization Counter Register
TPI->TRIGGER TRIGGER - TRIGGER
TPI->FIFO0 FIFO data 0 - Integration ETM Data
TPI->ITATBCTR2 ITATBCTR2 - ITATBCTR2
TPI->ITATBCTR0 ITATBCTR0 - ITATBCTR0
TPI->FIFO1 FIFO data 1 - Integration ITM Data
TPI->ITCTRL TPIU_ITCTRL - Integration Mode Control
TPI->CLAIMSET CLAIMSET - Claim tag set
TPI->CLAIMCLR CLAIMCLR - Claim tag clear
TPI->DEVID TPIU_DEVID - TPIU_DEVID
TPI->DEVTYPE TPIU_DEVTYPE - TPIU_DEVTYPE
Memory Protection Unit (MPU) Register Access
MPU->TYPE MPU_TYPE - MPU Type Register
MPU->CTRL MPU_CTRL - MPU Control Register
MPU->RNR MPU_RNR - MPU Region Number Register
MPU->RBAR MPU_RBAR - MPU Region Base Address Register
MPU->RASR MPU_RASR - MPU Region Attribute and Size Register
MPU->RBAR_A1..3 MPU_RBAR_A1..3 - MPU alias Register
MPU->RSAR_A1..3 MPU_RSAR_A1..3 - MPU alias Register
Floating Point Unit (FPU) Register Access [only Cortex-M4 and Cortex-M7 both with FPU]
FPU->FPCCR FPCCR - FP Context Control Register
FPU->FPCAR FPCAR - FP Context Address Register
FPU->FPDSCR FPDSCR - FP Default Status Control Register
FPU->MVFR0..1 MVFR0..1 - Media and VFP Feature Registers
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/_templates_pg.html b/CMSIS/Documentation/Core/html/_templates_pg.html new file mode 100644 index 0000000..b5bc0e9 --- /dev/null +++ b/CMSIS/Documentation/Core/html/_templates_pg.html @@ -0,0 +1,212 @@ + + + + + +Template Files +CMSIS-CORE: Template Files + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Template Files
+
+
+

ARM supplies CMSIS-CORE template files for the all supported Cortex-M processors and various compiler vendors. Refer to the list of Tested and Verified Toolchains for compliance. These template files include the following:

+
    +
  • Register names of the Core Peripherals and names of the Core Exception Vectors.
  • +
  • Functions to access core peripherals, special CPU instructions and SIMD instructions (for Cortex-M4 and Cortex-M7)
  • +
  • Generic startup code and system configuration code.
  • +
+

The detailed file structure of the CMSIS-CORE is shown in the following picture.

+
+CMSIS_CORE_Files.png +
+CMSIS-CORE File Structure
+

+Template Files

+

The CMSIS-CORE template files should be extended by the silicon vendor to reflect the actual device and device peripherals. Silicon vendors add in this context the:

+
    +
  • Device Peripheral Access Layer that provides definitions for device-specific peripherals.
  • +
  • Access Functions for Peripherals (optional) that provides additional helper functions to access device-specific peripherals.
  • +
  • Interrupt vectors in the startup file that are device specific.
  • +
+ + + + + + + + + + + + + + + +
Template File Description
.\Device\_Template_Vendor\Vendor\Device\Source\ARM\startup_Device.s Startup file template for ARM C/C++ Compiler.
.\Device\_Template_Vendor\Vendor\Device\Source\GCC\startup_Device.s Startup file template for GNU GCC ARM Embedded Compiler.
.\Device\_Template_Vendor\Vendor\Device\Source\IAR\startup_Device.s Startup file template for IAR C/C++ Compiler.
.\Device\_Template_Vendor\Vendor\Device\Source\system_Device.c Generic system_Device.c file for system configuration (i.e. processor clock and memory bus system).
.\Device\_Template_Vendor\Vendor\Device\Include\Device.h Generic device header file. Needs to be extended with the device-specific peripheral registers. Optionally functions that access the peripherals can be part of that file.
.\Device\_Template_Vendor\Vendor\Device\Include\system_Device.h Generic system device configuration include file.
+

In addition ARM provides the following core header files that do not need any modifications.

+ + + + + + + + + + + +
Core Header Files Description
core_<cpu>.h Defines the core peripherals and provides helper functions that access the core registers. This file is available for all supported processors:
    +
  • core_cm0.h: for the Cortex-M0 processor
  • +
  • core_cm0plus.h: for the Cortex-M0+ processor
  • +
  • core_cm3.h: for the Cortex-M3 processor
  • +
  • core_cm4.h: for the Cortex-M4 processor
  • +
  • core_cm7.h: for the Cortex-M7 processor
  • +
  • core_sc000.h: for the SecurCore SC000 processor
  • +
  • core_sc300.h: for the SecurCore SC300 processor
  • +
+
core_cmInstr.h Defines intrinsic functions to access special Cortex-M instructions.
core_cmFunc.h Defines functions to access the Cortex-M core peripherals.
core_cm4_simd.h Defines intrinsic functions to access the SIMD instructions for Cortex-M4 and Cortex-M7.
+

+Adaption of Template Files to Devices

+

Copy the complete folder including files and replace:

+
    +
  • folder name 'Vendor' with the abbreviation for the device vendor e.g.: NXP.
  • +
  • folder name 'Device' with the specific device name e.g.: LPC17xx.
  • +
  • in the filenames 'Device' with the specific device name e.g.: LPC17xx.
  • +
+

Each template file contains comments that start with ToDo: that describe a required modification. The template files contain placeholders:

+ + + + + + + + + + + +
Placeholder Replaced with
<Device> the specific device name or device family name; i.e. LPC17xx.
<DeviceInterrupt> a specific interrupt name of the device; i.e. TIM1 for Timer 1.
<DeviceAbbreviation> short name or abbreviation of the device family; i.e. LPC.
Cortex-M# the specific Cortex-M processor name; i.e. Cortex-M3.
+

The adaption of the template files is described in detail on the following pages:

+ +
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/_templates_pg.js b/CMSIS/Documentation/Core/html/_templates_pg.js new file mode 100644 index 0000000..972e1a1 --- /dev/null +++ b/CMSIS/Documentation/Core/html/_templates_pg.js @@ -0,0 +1,19 @@ +var _templates_pg = +[ + [ "Template Files", "_templates_pg.html#template_files_sec", null ], + [ "Adaption of Template Files to Devices", "_templates_pg.html#adapt_template_files_sec", null ], + [ "Startup File startup_.s", "startup_s_pg.html", [ + [ "startup_Device.s Template File", "startup_s_pg.html#startup_s_sec", null ] + ] ], + [ "System Configuration Files system_.c and system_.h", "system_c_pg.html", [ + [ "system_Device.c Template File", "system_c_pg.html#system_Device_sec", null ], + [ "system_Device.h Template File", "system_c_pg.html#system_Device_h_sec", null ] + ] ], + [ "Device Header File ", "device_h_pg.html", [ + [ "Interrupt Number Definition", "device_h_pg.html#interrupt_number_sec", null ], + [ "Configuration of the Processor and Core Peripherals", "device_h_pg.html#core_config_sect", null ], + [ "CMSIS Version and Processor Information", "device_h_pg.html#core_version_sect", null ], + [ "Device Peripheral Access Layer", "device_h_pg.html#device_access", null ], + [ "Device.h Template File", "device_h_pg.html#device_h_sec", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/_using__a_r_m_pg.html b/CMSIS/Documentation/Core/html/_using__a_r_m_pg.html new file mode 100644 index 0000000..b8b2a16 --- /dev/null +++ b/CMSIS/Documentation/Core/html/_using__a_r_m_pg.html @@ -0,0 +1,169 @@ + + + + + +Using CMSIS with generic ARM Processors +CMSIS-CORE: Using CMSIS with generic ARM Processors + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Using CMSIS with generic ARM Processors
+
+
+

ARM provides CMSIS-CORE files for the supported ARM Processors and for various compiler vendors. These files can be used when standard ARM processors should be used in a project. The table below lists the folder and device names of the ARM processors.

+ + + + + + + + + + + + + + + + + +
Folder Processor Description
".\Device\ARM\ARMCM0" Cortex-M0 Contains Include and Source template files configured for the Cortex-M0 processor. The device name is ARMCM0 and the name of the Device Header File <device.h> is <ARMCM0.h>.
".\Device\ARM\ARMCM0plus" Cortex-M0+ Contains Include and Source template files configured for the Cortex-M0+ processor. The device name is ARMCM0plus and the name of the Device Header File <device.h> is <ARMCM0plus.h>.
".\Device\ARM\ARMCM3" Cortex-M3 Contains Include and Source template files configured for the Cortex-M3 processor. The device name is ARMCM3 and the name of the Device Header File <device.h> is <ARMCM3.h>.
".\Device\ARM\ARMCM4" Cortex-M4 Contains Include and Source template files configured for the Cortex-M4 processor. The device name is ARMCM4 and the name of the Device Header File <device.h> is <ARMCM4.h>.
".\Device\ARM\ARMCM7" Cortex-M7 Contains Include and Source template files configured for the Cortex-M7 processor. The device name is ARMCM7 and the name of the Device Header File <device.h> is <ARMCM7.h>.
".\Device\ARM\ARMSC000" SecurCore SC000 Contains Include and Source template files configured for the SecurCore SC000 processor. The device name is ARMSC000 and the name of the Device Header File <device.h> is <ARMSC000.h>.
".\Device\ARM\ARMSC300" SecurCore SC300 Contains Include and Source template files configured for the SecurCore SC300 processor. The device name is ARMSC300 and the name of the Device Header File <device.h> is <ARMSC300.h>.
+

+Create generic Libraries with CMSIS

+

The CMSIS Processor and Core Peripheral files allow also to create generic libraries. The CMSIS-DSP Libraries are an example for such a generic library.

+

To build a generic Library set the define CMSIS_GENERIC and include the relevant core_<cpu>.h CMSIS CPU & Core Access header file for the processor. The define CMSIS_GENERIC disables device-dependent features such as the SysTick timer and the Interrupt System. Refer to Configuration of the Processor and Core Peripherals for a list of the available core_<cpu>.h header files.

+

Example:

+

The following code section shows the usage of the core_<cpu>.h header files to build a generic library for Cortex-M0, Cortex-M3, Cortex-M4, or Cortex-M7. To select the processor, the source code uses the define CORTEX_M7, CORTEX_M4, CORTEX_M3, CORTEX_M0, or CORTEX_M0PLUS. By using this header file, the source code can access the functions for Core Register Access, Intrinsic Functions for CPU Instructions, Intrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7], and Debug Access.

+
#define __CMSIS_GENERIC /* disable NVIC and Systick functions */
+
+
#if defined (CORTEX_M7)
+
#include "core_cm7.h"
+
#if defined (CORTEX_M4)
+
#include "core_cm4.h"
+
#elif defined (CORTEX_M3)
+
#include "core_cm3.h"
+
#elif defined (CORTEX_M0)
+
#include "core_cm0.h"
+
#elif defined (CORTEX_M0PLUS)
+
#include "core_cm0plus.h"
+
#else
+
#error "Processor not specified or unsupported."
+
#endif
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/_using__c_m_s_i_s.html b/CMSIS/Documentation/Core/html/_using__c_m_s_i_s.html new file mode 100644 index 0000000..6c17a2e --- /dev/null +++ b/CMSIS/Documentation/Core/html/_using__c_m_s_i_s.html @@ -0,0 +1,177 @@ + + + + + +Basic CMSIS Example +CMSIS-CORE: Basic CMSIS Example + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Basic CMSIS Example
+
+
+

A typical example for using the CMSIS layer is provided below. The example is based on a STM32F10x Device.

+
#include <stm32f10x.h> // File name depends on device used
+
+
uint32_t volatile msTicks; // Counter for millisecond Interval
+
+
void SysTick_Handler (void) { // SysTick Interrupt Handler
+
msTicks++; // Increment Counter
+
}
+
+
void WaitForTick (void) {
+
uint32_t curTicks;
+
+
curTicks = msTicks; // Save Current SysTick Value
+
while (msTicks == curTicks) { // Wait for next SysTick Interrupt
+
__WFE (); // Power-Down until next Event/Interrupt
+
}
+
}
+
+
void TIM1_UP_IRQHandler (void) { // Timer Interrupt Handler
+
; // Add user code here
+
}
+
+
void timer1_init(int frequency) { // Set up Timer (device specific)
+
NVIC_SetPriority (TIM1_UP_IRQn, 1); // Set Timer priority
+
NVIC_EnableIRQ (TIM1_UP_IRQn); // Enable Timer Interrupt
+
}
+
+
+
void Device_Initialization (void) { // Configure & Initialize MCU
+
if (SysTick_Config (SystemCoreClock / 1000)) { // SysTick 1mSec
+
: // Handle Error
+
}
+
timer1_init (); // setup device-specific timer
+
}
+
+
+
// The processor clock is initialized by CMSIS startup + system file
+
void main (void) { // user application starts here
+
Device_Initialization (); // Configure & Initialize MCU
+
while (1) { // Endless Loop (the Super-Loop)
+
__disable_irq (); // Disable all interrupts
+
Get_InputValues (); // Read Values
+
__enable_irq (); // Enable all interrupts
+
Calculation_Response (); // Calculate Results
+
Output_Response (); // Output Results
+
WaitForTick (); // Synchronize to SysTick Timer
+
}
+
}
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/_using__v_t_o_r_pg.html b/CMSIS/Documentation/Core/html/_using__v_t_o_r_pg.html new file mode 100644 index 0000000..ec02a35 --- /dev/null +++ b/CMSIS/Documentation/Core/html/_using__v_t_o_r_pg.html @@ -0,0 +1,181 @@ + + + + + +Using Interrupt Vector Remap +CMSIS-CORE: Using Interrupt Vector Remap + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Using Interrupt Vector Remap
+
+
+

Most Cortex-M processors provide VTOR register for remapping interrupt vectors. The following example shows a typical use case where the interrupt vectors are copied to RAM and the SysTick_Handler is replaced.

+
#include "ARMCM3.h" // Device header
+
+
/* externals from startup_ARMCM3.s */
+
extern uint32_t __Vectors[]; /* vector table ROM */
+
+
#define VECTORTABLE_SIZE (256) /* size Cortex-M3 vector table */
+
#define VECTORTABLE_ALIGNMENT (0x100ul) /* 16 Cortex + 32 ARMCM3 = 48 words */
+
/* next power of 2 = 256 */
+
+
/* new vector table in RAM */
+
uint32_t vectorTable_RAM[VECTORTABLE_SIZE] __attribute__(( aligned (VECTORTABLE_ALIGNMENT) ));
+
+
/*----------------------------------------------------------------------------
+
SysTick_Handler
+
*----------------------------------------------------------------------------*/
+
volatile uint32_t msTicks = 0; /* counts 1ms timeTicks */
+
void SysTick_Handler(void) {
+
msTicks++; /* increment counter */
+
}
+
+
/*----------------------------------------------------------------------------
+
SysTick_Handler (RAM)
+
*----------------------------------------------------------------------------*/
+
volatile uint32_t msTicks_RAM = 0; /* counts 1ms timeTicks */
+
void SysTick_Handler_RAM(void) {
+
msTicks_RAM++; /* increment counter */
+
}
+
+
/*----------------------------------------------------------------------------
+
MAIN function
+
*----------------------------------------------------------------------------*/
+
int main (void) {
+
uint32_t i;
+
+
for (i = 0; i < VECTORTABLE_SIZE; i++) {
+
vectorTable_RAM[i] = __Vectors[i]; /* copy vector table to RAM */
+
}
+
/* replace SysTick Handler */
+
vectorTable_RAM[SysTick_IRQn + 16] = (uint32_t)SysTick_Handler_RAM;
+
+
/* relocate vector table */
+ +
SCB->VTOR = (uint32_t)&vectorTable_RAM;
+
__DSB();
+ +
+
SystemCoreClockUpdate(); /* Get Core Clock Frequency */
+
SysTick_Config(SystemCoreClock / 1000ul); /* Setup SysTick Timer for 1 msec */
+
+
while(1);
+
}
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/_using_pg.html b/CMSIS/Documentation/Core/html/_using_pg.html new file mode 100644 index 0000000..591e7bc --- /dev/null +++ b/CMSIS/Documentation/Core/html/_using_pg.html @@ -0,0 +1,172 @@ + + + + + +Using CMSIS in Embedded Applications +CMSIS-CORE: Using CMSIS in Embedded Applications + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Using CMSIS in Embedded Applications
+
+
+

To use the CMSIS-CORE the following files are added to the embedded application:

+ +
Note
The files Startup File startup_<device>.s and System Configuration Files system_<device>.c and system_<device>.h may require application specific adaptations and therefore should be copied into the application project folder prior configuration. The Device Header File <device.h> is included in all source files that need device access and can be stored on a central include folder that is generic for all projects.
+

The Startup File startup_<device>.s is executed after reset and calls SystemInit. After the system initialization control is transferred to the C/C++ run-time library which performs initialization and calls the main function in the user code. In addition the Startup File startup_<device>.s contains all exception and interrupt vectors and implements a default function for every interrupt. It may also contain stack and heap configurations for the user application.

+

The System Configuration Files system_<device>.c and system_<device>.h performs the setup for the processor clock. The variable SystemCoreClock indicates the CPU clock speed. System and Clock Configuration describes the minimum feature set. In addition the file may contain functions for the memory BUS setup and clock re-configuration.

+

The Device Header File <device.h> is the central include file that the application programmer is using in the C source code. It provides the following features:

+ +
+CMSIS_CORE_Files_user.png +
+CMSIS-CORE User Files
+

The CMSIS-CORE are device specific. In addition, the Startup File startup_<device>.s is also compiler vendor specific. The various compiler vendor tool chains may provide folders that contain the CMSIS files for each supported device.

+

For example, the following files are provided in MDK-ARM to support the STM32F10x Connectivity Line device variants:

+ + + + + + + + + + + +
File Description
".\ARM\Startup\ST\STM32F10x\startup_stm32f10x_cl.s" Startup File startup_<device>.s for the STM32F10x Connectivity Line device variants.
".\ARM\Startup\ST\STM32F10x\system_stmf10x.c" System Configuration Files system_<device>.c and system_<device>.h for the STM32F10x device families.
".\ARM\INC\ST\STM32F10x\stm32f10x.h" Device Header File <device.h> for the STM32F10x device families.
".\ARM\INC\ST\STM32F10x\system_stm32f10x.h" system_Device.h Template File for the STM32F10x device families.
+
Note
The silicon vendors create these device-specific CMSIS-CORE files based on Template Files provide by ARM.
+

Thereafter, the functions described under Reference can be used in the application.

+

Examples

+ +
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/_using_pg.js b/CMSIS/Documentation/Core/html/_using_pg.js new file mode 100644 index 0000000..69ebae1 --- /dev/null +++ b/CMSIS/Documentation/Core/html/_using_pg.js @@ -0,0 +1,8 @@ +var _using_pg = +[ + [ "Basic CMSIS Example", "_using__c_m_s_i_s.html", null ], + [ "Using Interrupt Vector Remap", "_using__v_t_o_r_pg.html", null ], + [ "Using CMSIS with generic ARM Processors", "_using__a_r_m_pg.html", [ + [ "Create generic Libraries with CMSIS", "_using__a_r_m_pg.html#Using_ARM_Lib_sec", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/annotated.html b/CMSIS/Documentation/Core/html/annotated.html new file mode 100644 index 0000000..9459e29 --- /dev/null +++ b/CMSIS/Documentation/Core/html/annotated.html @@ -0,0 +1,152 @@ + + + + + +Data Structures +CMSIS-CORE: Data Structures + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Data Structures
+
+
+
Here are the data structures with brief descriptions:
+ + + + + + + + + + + + + + + +
oCAPSR_TypeUnion type to access the Application Program Status Register (APSR)
oCCONTROL_TypeUnion type to access the Control Registers (CONTROL)
oCCoreDebug_TypeStructure type to access the Core Debug Register (CoreDebug)
oCDWT_TypeStructure type to access the Data Watchpoint and Trace Register (DWT)
oCFPU_TypeStructure type to access the Floating Point Unit (FPU)
oCIPSR_TypeUnion type to access the Interrupt Program Status Register (IPSR)
oCITM_TypeStructure type to access the Instrumentation Trace Macrocell Register (ITM)
oCMPU_TypeStructure type to access the Memory Protection Unit (MPU)
oCNVIC_TypeStructure type to access the Nested Vectored Interrupt Controller (NVIC)
oCSCB_TypeStructure type to access the System Control Block (SCB)
oCSCnSCB_TypeStructure type to access the System Control and ID Register not in the SCB
oCSysTick_TypeStructure type to access the System Timer (SysTick)
oCTPI_TypeStructure type to access the Trace Port Interface Register (TPI)
\CxPSR_TypeUnion type to access the Special-Purpose Program Status Registers (xPSR)
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/annotated.js b/CMSIS/Documentation/Core/html/annotated.js new file mode 100644 index 0000000..fa4ad87 --- /dev/null +++ b/CMSIS/Documentation/Core/html/annotated.js @@ -0,0 +1,17 @@ +var annotated = +[ + [ "APSR_Type", "union_a_p_s_r___type.html", "union_a_p_s_r___type" ], + [ "CONTROL_Type", "union_c_o_n_t_r_o_l___type.html", "union_c_o_n_t_r_o_l___type" ], + [ "CoreDebug_Type", "struct_core_debug___type.html", "struct_core_debug___type" ], + [ "DWT_Type", "struct_d_w_t___type.html", "struct_d_w_t___type" ], + [ "FPU_Type", "struct_f_p_u___type.html", "struct_f_p_u___type" ], + [ "IPSR_Type", "union_i_p_s_r___type.html", "union_i_p_s_r___type" ], + [ "ITM_Type", "struct_i_t_m___type.html", "struct_i_t_m___type" ], + [ "MPU_Type", "struct_m_p_u___type.html", "struct_m_p_u___type" ], + [ "NVIC_Type", "struct_n_v_i_c___type.html", "struct_n_v_i_c___type" ], + [ "SCB_Type", "struct_s_c_b___type.html", "struct_s_c_b___type" ], + [ "SCnSCB_Type", "struct_s_cn_s_c_b___type.html", "struct_s_cn_s_c_b___type" ], + [ "SysTick_Type", "struct_sys_tick___type.html", "struct_sys_tick___type" ], + [ "TPI_Type", "struct_t_p_i___type.html", "struct_t_p_i___type" ], + [ "xPSR_Type", "unionx_p_s_r___type.html", "unionx_p_s_r___type" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/bc_s.png b/CMSIS/Documentation/Core/html/bc_s.png new file mode 100644 index 0000000..66f8e9a Binary files /dev/null and b/CMSIS/Documentation/Core/html/bc_s.png differ diff --git a/CMSIS/Documentation/Core/html/bdwn.png b/CMSIS/Documentation/Core/html/bdwn.png new file mode 100644 index 0000000..d400769 Binary files /dev/null and b/CMSIS/Documentation/Core/html/bdwn.png differ diff --git a/CMSIS/Documentation/Core/html/check.png b/CMSIS/Documentation/Core/html/check.png new file mode 100644 index 0000000..094e59c Binary files /dev/null and b/CMSIS/Documentation/Core/html/check.png differ diff --git a/CMSIS/Documentation/Core/html/classes.html b/CMSIS/Documentation/Core/html/classes.html new file mode 100644 index 0000000..2773f85 --- /dev/null +++ b/CMSIS/Documentation/Core/html/classes.html @@ -0,0 +1,158 @@ + + + + + +Data Structure Index +CMSIS-CORE: Data Structure Index + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Data Structure Index
+
+
+
A | C | D | F | I | M | N | S | T | X
+ + + + + + + + + + + +
  A  
+
  D  
+
ITM_Type   
  S  
+
  X  
+
  M  
+
APSR_Type   DWT_Type   SCB_Type   xPSR_Type   
  C  
+
  F  
+
MPU_Type   SCnSCB_Type   
  N  
+
SysTick_Type   
CONTROL_Type   FPU_Type   
  T  
+
CoreDebug_Type   
  I  
+
NVIC_Type   
TPI_Type   
IPSR_Type   
+
A | C | D | F | I | M | N | S | T | X
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/closed.png b/CMSIS/Documentation/Core/html/closed.png new file mode 100644 index 0000000..ccbcf62 Binary files /dev/null and b/CMSIS/Documentation/Core/html/closed.png differ diff --git a/CMSIS/Documentation/Core/html/cmsis.css b/CMSIS/Documentation/Core/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/Core/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/Core/html/core_revision_history.html b/CMSIS/Documentation/Core/html/core_revision_history.html new file mode 100644 index 0000000..cf554d5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/core_revision_history.html @@ -0,0 +1,206 @@ + + + + + +Revision History of CMSIS-CORE +CMSIS-CORE: Revision History of CMSIS-CORE + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Revision History of CMSIS-CORE
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Version Description
V4.30 Corrected: DoxyGen function parameter comments.
+ Corrected: IAR toolchain: removed for NVIC_SystemReset the attribute(noreturn).
+ Corrected: GCC toolchain: supressed irrelevant compiler warnings.
+ Added: Support files for ARM Compiler v6 (cmsis_armcc_v6.h).
V4.20 Corrected: MISRA-C:2004 violations.
+ Corrected: predefined macro for TI CCS Compiler.
+ Corrected: function __SHADD16 in arm_math.h.
+ Updated: cache functions for Cortex-M7.
+ Added: macros _VAL2FLD, _FLD2VAL to core_*.h.
+ Updated: functions __QASX, __QSAX, __SHASX, __SHSAX.
+ Corrected: potential bug in function __SHADD16.
V4.10 Corrected: MISRA-C:2004 violations.
+ Corrected: intrinsic functions __DSB, __DMB, __ISB.
+ Corrected: register definitions for ITCMCR register.
+ Corrected: register definitions for CONTROL_Type register.
+ Added: functions SCB_GetFPUType, SCB_InvalidateDCache_by_Addr to core_cm7.h.
+ Added: register definitions for APSR_Type, IPSR_Type, xPSR_Type register.
+ Added: __set_BASEPRI_MAX function to core_cmFunc.h.
+ Added: intrinsic functions __RBIT, __CLZ for Cortex-M0/CortexM0+.
+
V4.00 Added: Cortex-M7 support.
+ Added: intrinsic functions for __RRX, __LDRBT, __LDRHT, __LDRT, __STRBT, __STRHT, and __STRT
+
V3.40 Corrected: C++ include guard settings.
+
V3.30 Added: COSMIC tool chain support.
+ Corrected: GCC __SMLALDX instruction intrinsic for Cortex-M4.
+ Corrected: GCC __SMLALD instruction intrinsic for Cortex-M4.
+ Corrected: GCC/CLang warnings.
+
V3.20 Added: __BKPT instruction intrinsic.
+ Added: __SMMLA instruction intrinsic for Cortex-M4.
+ Corrected: ITM_SendChar.
+ Corrected: __enable_irq, __disable_irq and inline assembly for GCC Compiler.
+ Corrected: NVIC_GetPriority and VTOR_TBLOFF for Cortex-M0/M0+, SC000. Corrected: rework of in-line assembly functions to remove potential compiler warnings.
+
V3.01 Added support for Cortex-M0+ processor.
+
V3.00 Added support for GNU GCC ARM Embedded Compiler.
+ Added function __ROR.
+ Added Register Mapping for TPIU, DWT.
+ Added support for SC000 and SC300 processors.
+ Corrected ITM_SendChar function.
+ Corrected the functions __STREXB, __STREXH, __STREXW for the GNU GCC compiler section.
+ Documentation restructured.
V2.10 Updated documentation.
+ Updated CMSIS core include files.
+ Changed CMSIS/Device folder structure.
+ Added support for Cortex-M0, Cortex-M4 w/o FPU to CMSIS DSP library.
+ Reworked CMSIS DSP library examples.
V2.00 Added support for Cortex-M4 processor.
V1.30 Reworked Startup Concept.
+ Added additional Debug Functionality.
+ Changed folder structure.
+ Added doxygen comments.
+ Added definitions for bit.
V1.01 Added support for Cortex-M0 processor.
V1.01 Added intrinsic functions for __LDREXB, __LDREXH, __LDREXW, __STREXB, __STREXH, __STREXW, and __CLREX
V1.00 Initial Release for Cortex-M3 processor.
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/device_h_pg.html b/CMSIS/Documentation/Core/html/device_h_pg.html new file mode 100644 index 0000000..0d6f05d --- /dev/null +++ b/CMSIS/Documentation/Core/html/device_h_pg.html @@ -0,0 +1,570 @@ + + + + + +Device Header File <device.h> +CMSIS-CORE: Device Header File <device.h> + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Device Header File <device.h>
+
+
+

The Device Header File <device.h> contains the following sections that are device specific:

+
    +
  • Interrupt Number Definition provides interrupt numbers (IRQn) for all exceptions and interrupts of the device.
  • +
  • Configuration of the Processor and Core Peripherals reflect the features of the device.
  • +
  • Device Peripheral Access Layer provides definitions for the Peripheral Access to all device peripherals. It contains all data structures and the address mapping for device-specific peripherals.
  • +
  • Access Functions for Peripherals (optional) provide additional helper functions for peripherals that are useful for programming of these peripherals. Access Functions may be provided as inline functions or can be extern references to a device-specific library provided by the silicon vendor.
  • +
+

Reference describes the standard features and functions of the Device Header File <device.h> in detail.

+

+Interrupt Number Definition

+

Device Header File <device.h> contains the enumeration IRQn_Type that defines all exceptions and interrupts of the device.

+
    +
  • Negative IRQn values represent processor core exceptions (internal interrupts).
  • +
  • Positive IRQn values represent device-specific exceptions (external interrupts). The first device-specific interrupt has the IRQn value 0. The IRQn values needs extension to reflect the device-specific interrupt vector table in the Startup File startup_<device>.s.
  • +
+

Example:

+

The following example shows the extension of the interrupt vector table for the LPC1100 device family.

+
typedef enum IRQn
+
{
+
/****** Cortex-M0 Processor Exceptions Numbers ***************************************************/
+ + +
SVCall_IRQn = -5,
+
PendSV_IRQn = -2,
+
SysTick_IRQn = -1,
+
/****** LPC11xx/LPC11Cxx Specific Interrupt Numbers **********************************************/
+
WAKEUP0_IRQn = 0,
+
WAKEUP1_IRQn = 1,
+
WAKEUP2_IRQn = 2,
+
: :
+
: :
+
EINT1_IRQn = 30,
+
EINT0_IRQn = 31,
+ +

+Configuration of the Processor and Core Peripherals

+

The Device Header File <device.h> configures the Cortex-M or SecurCore processor and the core peripherals with #defines that are set prior to including the file core_<cpu>.h.

+

The following tables list the #defines along with the possible values for each processor core. If these #defines are missing default values are used.

+

core_cm0.h

+ + + + + + + + + +
#define Value Range Default Description
__CM0_REV 0x0000 0x0000 Core revision number ([15:8] revision number, [7:0] patch number)
__NVIC_PRIO_BITS 2 2 Number of priority bits implemented in the NVIC (device specific)
__Vendor_SysTickConfig 0 .. 1 0 If this define is set to 1, then the default SysTick_Config function is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
+

core_cm0plus.h

+ + + + + + + + + +
#define Value Range Default Description
__CM0PLUS_REV 0x0000 0x0000 Core revision number ([15:8] revision number, [7:0] patch number)
__NVIC_PRIO_BITS 2 2 Number of priority bits implemented in the NVIC (device specific)
__Vendor_SysTickConfig 0 .. 1 0 If this define is set to 1, then the default SysTick_Config function is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
+

core_cm3.h

+ + + + + + + + + + + +
#define Value Range Default Description
__CM3_REV 0x0101 | 0x0200 0x0200 Core revision number ([15:8] revision number, [7:0] patch number)
__NVIC_PRIO_BITS 2 .. 8 4 Number of priority bits implemented in the NVIC (device specific)
__MPU_PRESENT 0 .. 1 0 Defines if a MPU is present or not
__Vendor_SysTickConfig 0 .. 1 0 If this define is set to 1, then the default SysTick_Config function is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
+

core_cm4.h

+ + + + + + + + + + + + + +
#define Value Range Default Description
__CM4_REV 0x0000 0x0000 Core revision number ([15:8] revision number, [7:0] patch number)
__NVIC_PRIO_BITS 2 .. 8 4 Number of priority bits implemented in the NVIC (device specific)
__MPU_PRESENT 0 .. 1 0 Defines if a MPU is present or not
__FPU_PRESENT 0 .. 1 0 Defines if a FPU is present or not
__Vendor_SysTickConfig 0 .. 1 0 If this define is set to 1, then the default SysTick_Config function is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
+

core_cm7.h

+ + + + + + + + + + + + + + + + + + + + + +
#define Value Range Default Description
__CM7_REV 0x0000 0x0000 Core revision number ([15:8] revision number, [7:0] patch number)
__MPU_PRESENT 0 .. 1 0 Defines if a MPU is present or not
__NVIC_PRIO_BITS 2 .. 8 4 Number of priority bits implemented in the NVIC (device specific)
__Vendor_SysTickConfig 0 .. 1 0 If this define is set to 1, then the default SysTick_Config function is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
__FPU_PRESENT 0 .. 1 0 Defines if a FPU is present or not. See __FPU_DP description below.
__FPU_DP 0 .. 1 0 The combination of the defines __FPU_PRESENT and __FPU_DP determine the whether the FPU is with single or double precision as shown in the table below.
+
+ + + + + + + + + +
__FPU_PRESENT __FPU_DP Description
0 ignored Processor has no FPU. The value set for __FPU_DP has no influence.
1 0 Processor with FPU with single precision. The file ARMCM7_SP.h has preconfigured settings for this combination.
1 1 Processor with FPU with double precision. The file ARMCM7_DP.h has preconfigured settings for this combination.
+
__ICACHE_PRESENT 0 .. 1 1 Instruction Chache present or not
__DCACHE_PRESENT 0 .. 1 1 Data Chache present or not
__DTCM_PRESENT 0 .. 1 1

Data Tightly Coupled Memory is present or not

+

+
+

core_sc000.h

+ + + + + + + + + + + +
#define Value Range Default Description
__SC000_REV 0x0000 0x0000 Core revision number ([15:8] revision number, [7:0] patch number)
__NVIC_PRIO_BITS 2 2 Number of priority bits implemented in the NVIC (device specific)
__MPU_PRESENT 0 .. 1 0 Defines if a MPU is present or not
__Vendor_SysTickConfig 0 .. 1 0 If this define is set to 1, then the default SysTick_Config function is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
+

core_sc300.h

+ + + + + + + + + + + +
#define Value Range Default Description
__SC300_REV 0x0000 0x0000 Core revision number ([15:8] revision number, [7:0] patch number)
__NVIC_PRIO_BITS 2 .. 8 4 Number of priority bits implemented in the NVIC (device specific)
__MPU_PRESENT 0 .. 1 0 Defines if a MPU is present or not
__Vendor_SysTickConfig 0 .. 1 0 If this define is set to 1, then the default SysTick_Config function is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
+

Example

+

The following code exemplifies the configuration of the Cortex-M4 Processor and Core Peripherals.

+
#define __CM4_REV 0x0001 /* Core revision r0p1 */
+
#define __MPU_PRESENT 1 /* MPU present or not */
+
#define __NVIC_PRIO_BITS 3 /* Number of Bits used for Priority Levels */
+
#define __Vendor_SysTickConfig 0 /* Set to 1 if different SysTick Config is used */
+
#define __FPU_PRESENT 1 /* FPU present or not */
+
.
+
.
+
#include <core_cm4.h> /* Cortex-M4 processor and core peripherals */
+

+CMSIS Version and Processor Information

+

Defines in the core_cpu.h file identify the version of the CMSIS-CORE and the processor used. The following shows the defines in the various core_cpu.h files that may be used in the Device Header File <device.h> to verify a minimum version or ensure that the right processor core is used.

+

core_cm0.h

+
#define __CM0_CMSIS_VERSION_MAIN (0x03) /* [31:16] CMSIS HAL main version */
+
#define __CM0_CMSIS_VERSION_SUB (0x00) /* [15:0] CMSIS HAL sub version */
+
#define __CM0_CMSIS_VERSION ((__CM0_CMSIS_VERSION_MAIN << 16) | \
+
__CM0_CMSIS_VERSION_SUB ) /* CMSIS HAL version number */
+
...
+
#define __CORTEX_M (0x00) /* Cortex-M Core */
+

core_cm0plus.h

+
#define __CM0PLUS_CMSIS_VERSION_MAIN (0x03) /* [31:16] CMSIS HAL main version */
+
#define __CM0PLUS_CMSIS_VERSION_SUB (0x00) /* [15:0] CMSIS HAL sub version */
+
#define __CM0PLUS_CMSIS_VERSION ((__CM0P_CMSIS_VERSION_MAIN << 16) | \
+
__CM0P_CMSIS_VERSION_SUB ) /* CMSIS HAL version number */
+
...
+
#define __CORTEX_M (0x00) /* Cortex-M Core */
+

core_cm3.h

+
#define __CM3_CMSIS_VERSION_MAIN (0x03) /* [31:16] CMSIS HAL main version */
+
#define __CM3_CMSIS_VERSION_SUB (0x00) /* [15:0] CMSIS HAL sub version */
+
#define __CM3_CMSIS_VERSION ((__CM3_CMSIS_VERSION_MAIN << 16) | \
+
__CM3_CMSIS_VERSION_SUB ) /* CMSIS HAL version number */
+
...
+
#define __CORTEX_M (0x03) /* Cortex-M Core */
+

core_cm4.h

+
#define __CM4_CMSIS_VERSION_MAIN (0x04) /* [31:16] CMSIS HAL main version */
+
#define __CM4_CMSIS_VERSION_SUB (0x00) /* [15:0] CMSIS HAL sub version */
+
#define __CM4_CMSIS_VERSION ((__CM4_CMSIS_VERSION_MAIN << 16) | \
+
__CM4_CMSIS_VERSION_SUB ) /* CMSIS HAL version number */
+
...
+
#define __CORTEX_M (0x04) /* Cortex-M Core */
+

core_cm7.h

+
#define __CM7_CMSIS_VERSION_MAIN (0x04)
+
#define __CM7_CMSIS_VERSION_SUB (0x00)
+
#define __CM7_CMSIS_VERSION ((__CM7_CMSIS_VERSION_MAIN << 16) | \
+
__CM7_CMSIS_VERSION_SUB )
+
#define __CORTEX_M (0x07)
+

core_sc000.h

+
#define __SC000_CMSIS_VERSION_MAIN (0x04) /* [31:16] CMSIS HAL main version */
+
#define __SC000_CMSIS_VERSION_SUB (0x00) /* [15:0] CMSIS HAL sub version */
+
#define __SC000_CMSIS_VERSION ((__SC000_CMSIS_VERSION_MAIN << 16) | \
+
__SC000_CMSIS_VERSION_SUB ) /* CMSIS HAL version number */
+
...
+
#define __CORTEX_SC (000) /* Cortex secure core */
+

core_sc300.h

+
#define __SC300_CMSIS_VERSION_MAIN (0x04) /* [31:16] CMSIS HAL main version */
+
#define __SC300_CMSIS_VERSION_SUB (0x00) /* [15:0] CMSIS HAL sub version */
+
#define __SC300_CMSIS_VERSION ((__SC300_CMSIS_VERSION_MAIN << 16) | \
+
__SC300_CMSIS_VERSION_SUB ) /* CMSIS HAL version number */
+
...
+
#define __CORTEX_SC (300) /* Cortex secure core */
+

+Device Peripheral Access Layer

+

The Device Header File <device.h> contains for each peripheral:

+
    +
  • Register Layout Typedef
  • +
  • Base Address
  • +
  • Access Definitions
  • +
+

The section Peripheral Access shows examples for peripheral definitions.

+

+Device.h Template File

+

The silicon vendor needs to extend the Device.h template file with the CMSIS features described above. In addition the Device Header File <device.h> may contain functions to access device-specific peripherals. The system_Device.h Template File which is provided as part of the CMSIS specification is shown below.

+
/**************************************************************************//**
+ * @file     <Device>.h
+ * @brief    CMSIS Cortex-M# Core Peripheral Access Layer Header File for
+ *           Device <Device>
+ * @version  V3.10
+ * @date     23. November 2012
+ *
+ * @note
+ *
+ ******************************************************************************/
+/* Copyright (c) 2012 ARM LIMITED
+
+   All rights reserved.
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions are met:
+   - Redistributions of source code must retain the above copyright
+     notice, this list of conditions and the following disclaimer.
+   - Redistributions in binary form must reproduce the above copyright
+     notice, this list of conditions and the following disclaimer in the
+     documentation and/or other materials provided with the distribution.
+   - Neither the name of ARM nor the names of its contributors may be used
+     to endorse or promote products derived from this software without
+     specific prior written permission.
+   *
+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+   ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
+   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+   POSSIBILITY OF SUCH DAMAGE.
+   ---------------------------------------------------------------------------*/
+
+
+#ifndef <Device>_H      /* ToDo: replace '<Device>' with your device name */
+#define <Device>_H
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+/* ToDo: replace '<Device>' with your device name; add your doxyGen comment   */
+/** @addtogroup <Device>_Definitions <Device> Definitions
+  This file defines all structures and symbols for <Device>:
+    - registers and bitfields
+    - peripheral base address
+    - peripheral ID
+    - Peripheral definitions
+  @{
+*/
+
+
+/******************************************************************************/
+/*                Processor and Core Peripherals                              */
+/******************************************************************************/
+/** @addtogroup <Device>_CMSIS Device CMSIS Definitions
+  Configuration of the Cortex-M# Processor and Core Peripherals
+  @{
+*/
+
+/*
+ * ==========================================================================
+ * ---------- Interrupt Number Definition -----------------------------------
+ * ==========================================================================
+ */
+
+typedef enum IRQn
+{
+/******  Cortex-M# Processor Exceptions Numbers ***************************************************/
+
+/* ToDo: use this Cortex interrupt numbers if your device is a CORTEX-M0 device                   */
+  NonMaskableInt_IRQn           = -14,      /*!<  2 Non Maskable Interrupt                        */
+  HardFault_IRQn                = -13,      /*!<  3 Hard Fault Interrupt                          */
+  SVCall_IRQn                   = -5,       /*!< 11 SV Call Interrupt                             */
+  PendSV_IRQn                   = -2,       /*!< 14 Pend SV Interrupt                             */
+  SysTick_IRQn                  = -1,       /*!< 15 System Tick Interrupt                         */
+
+/* ToDo: use this Cortex interrupt numbers if your device is a CORTEX-M3 / Cortex-M4 device       */
+  NonMaskableInt_IRQn           = -14,      /*!<  2 Non Maskable Interrupt                        */
+  MemoryManagement_IRQn         = -12,      /*!<  4 Memory Management Interrupt                   */
+  BusFault_IRQn                 = -11,      /*!<  5 Bus Fault Interrupt                           */
+  UsageFault_IRQn               = -10,      /*!<  6 Usage Fault Interrupt                         */
+  SVCall_IRQn                   = -5,       /*!< 11 SV Call Interrupt                             */
+  DebugMonitor_IRQn             = -4,       /*!< 12 Debug Monitor Interrupt                       */
+  PendSV_IRQn                   = -2,       /*!< 14 Pend SV Interrupt                             */
+  SysTick_IRQn                  = -1,       /*!< 15 System Tick Interrupt                         */
+
+/******  Device Specific Interrupt Numbers ********************************************************/
+/* ToDo: add here your device specific external interrupt numbers
+         according the interrupt handlers defined in startup_Device.s
+         eg.: Interrupt for Timer#1       TIM1_IRQHandler   ->   TIM1_IRQn                        */
+  <DeviceInterrupt>_IRQn        = 0,        /*!< Device Interrupt                                 */
+} IRQn_Type;
+
+
+/*
+ * ==========================================================================
+ * ----------- Processor and Core Peripheral Section ------------------------
+ * ==========================================================================
+ */
+
+/* Configuration of the Cortex-M# Processor and Core Peripherals */
+/* ToDo: set the defines according your Device                                                    */
+/* ToDo: define the correct core revision
+         __CM0_REV if your device is a CORTEX-M0 device
+         __CM3_REV if your device is a CORTEX-M3 device
+         __CM4_REV if your device is a CORTEX-M4 device                                           */
+#define __CM#_REV                 0x0201    /*!< Core Revision r2p1                               */
+#define __NVIC_PRIO_BITS          2         /*!< Number of Bits used for Priority Levels          */
+#define __Vendor_SysTickConfig    0         /*!< Set to 1 if different SysTick Config is used     */
+#define __MPU_PRESENT             0         /*!< MPU present or not                               */
+/* ToDo: define __FPU_PRESENT if your devise is a CORTEX-M4                                       */
+#define __FPU_PRESENT             0        /*!< FPU present or not                                */
+
+/*@}*/ /* end of group <Device>_CMSIS */
+
+
+/* ToDo: include the correct core_cm#.h file
+         core_cm0.h if your device is a CORTEX-M0 device
+         core_cm3.h if your device is a CORTEX-M3 device
+         core_cm4.h if your device is a CORTEX-M4 device                                          */
+#include <core_cm#.h>                       /* Cortex-M# processor and core peripherals           */
+/* ToDo: include your system_<Device>.h file
+         replace '<Device>' with your device name                                                 */
+#include "system_<Device>.h"                /* <Device> System  include file                      */
+
+
+/******************************************************************************/
+/*                Device Specific Peripheral registers structures             */
+/******************************************************************************/
+/** @addtogroup <Device>_Peripherals <Device> Peripherals
+  <Device> Device Specific Peripheral registers structures
+  @{
+*/
+
+#if defined ( __CC_ARM   )
+#pragma anon_unions
+#endif
+
+/* ToDo: add here your device specific peripheral access structure typedefs
+         following is an example for a timer                                  */
+
+/*------------- 16-bit Timer/Event Counter (TMR) -----------------------------*/
+/** @addtogroup <Device>_TMR <Device> 16-bit Timer/Event Counter (TMR)
+  @{
+*/
+typedef struct
+{
+  __IO uint32_t EN;                         /*!< Offset: 0x0000   Timer Enable Register           */
+  __IO uint32_t RUN;                        /*!< Offset: 0x0004   Timer RUN Register              */
+  __IO uint32_t CR;                         /*!< Offset: 0x0008   Timer Control Register          */
+  __IO uint32_t MOD;                        /*!< Offset: 0x000C   Timer Mode Register             */
+       uint32_t RESERVED0[1];
+  __IO uint32_t ST;                         /*!< Offset: 0x0014   Timer Status Register           */
+  __IO uint32_t IM;                         /*!< Offset: 0x0018   Interrupt Mask Register         */
+  __IO uint32_t UC;                         /*!< Offset: 0x001C   Timer Up Counter Register       */
+  __IO uint32_t RG0                         /*!< Offset: 0x0020   Timer Register                  */
+       uint32_t RESERVED1[2];
+  __IO uint32_t CP;                         /*!< Offset: 0x002C   Capture register                */
+} <DeviceAbbreviation>_TMR_TypeDef;
+/*@}*/ /* end of group <Device>_TMR */
+
+
+#if defined ( __CC_ARM   )
+#pragma no_anon_unions
+#endif
+
+/*@}*/ /* end of group <Device>_Peripherals */
+
+
+/******************************************************************************/
+/*                         Peripheral memory map                              */
+/******************************************************************************/
+/* ToDo: add here your device peripherals base addresses
+         following is an example for timer                                    */
+/** @addtogroup <Device>_MemoryMap <Device> Memory Mapping
+  @{
+*/
+
+/* Peripheral and SRAM base address */
+#define <DeviceAbbreviation>_FLASH_BASE       (0x00000000UL)                              /*!< (FLASH     ) Base Address */
+#define <DeviceAbbreviation>_SRAM_BASE        (0x20000000UL)                              /*!< (SRAM      ) Base Address */
+#define <DeviceAbbreviation>_PERIPH_BASE      (0x40000000UL)                              /*!< (Peripheral) Base Address */
+
+/* Peripheral memory map */
+#define <DeviceAbbreviation>TIM0_BASE         (<DeviceAbbreviation>_PERIPH_BASE)          /*!< (Timer0    ) Base Address */
+#define <DeviceAbbreviation>TIM1_BASE         (<DeviceAbbreviation>_PERIPH_BASE + 0x0800) /*!< (Timer1    ) Base Address */
+#define <DeviceAbbreviation>TIM2_BASE         (<DeviceAbbreviation>_PERIPH_BASE + 0x1000) /*!< (Timer2    ) Base Address */
+/*@}*/ /* end of group <Device>_MemoryMap */
+
+
+/******************************************************************************/
+/*                         Peripheral declaration                             */
+/******************************************************************************/
+/* ToDo: add here your device peripherals pointer definitions
+         following is an example for timer                                    */
+
+/** @addtogroup <Device>_PeripheralDecl <Device> Peripheral Declaration
+  @{
+*/
+
+#define <DeviceAbbreviation>_TIM0        ((<DeviceAbbreviation>_TMR_TypeDef *) <DeviceAbbreviation>TIM0_BASE)
+#define <DeviceAbbreviation>_TIM1        ((<DeviceAbbreviation>_TMR_TypeDef *) <DeviceAbbreviation>TIM0_BASE)
+#define <DeviceAbbreviation>_TIM2        ((<DeviceAbbreviation>_TMR_TypeDef *) <DeviceAbbreviation>TIM0_BASE)
+/*@}*/ /* end of group <Device>_PeripheralDecl */
+
+/*@}*/ /* end of group <Device>_Definitions */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif  /* <Device>_H */
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/doxygen.css b/CMSIS/Documentation/Core/html/doxygen.css new file mode 100644 index 0000000..0fa08d5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #859DCD; + color: #334C7D; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #354E81; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #27395E; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/Core/html/doxygen.png b/CMSIS/Documentation/Core/html/doxygen.png new file mode 100644 index 0000000..7765a33 Binary files /dev/null and b/CMSIS/Documentation/Core/html/doxygen.png differ diff --git a/CMSIS/Documentation/Core/html/dynsections.js b/CMSIS/Documentation/Core/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/Core/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +Data Fields +CMSIS-CORE: Data Fields + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+ +

- _ -

+ + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- q -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- v -

+ + +

- w -

+ + +

- z -

+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/functions_vars.html b/CMSIS/Documentation/Core/html/functions_vars.html new file mode 100644 index 0000000..397d484 --- /dev/null +++ b/CMSIS/Documentation/Core/html/functions_vars.html @@ -0,0 +1,627 @@ + + + + + +Data Fields - Variables +CMSIS-CORE: Data Fields - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- _ -

+ + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- h -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- q -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- u -

+ + +

- v -

+ + +

- w -

+ + +

- z -

+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/globals.html b/CMSIS/Documentation/Core/html/globals.html new file mode 100644 index 0000000..e00ba64 --- /dev/null +++ b/CMSIS/Documentation/Core/html/globals.html @@ -0,0 +1,676 @@ + + + + + +Globals +CMSIS-CORE: Globals + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
+ +

- _ -

+ + +

- b -

+ + +

- d -

+ + +

- h -

+ + +

- i -

+ + +

- m -

+ + +

- n -

+ + +

- p -

+ + +

- s -

+ + +

- u -

+ + +

- w -

+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/globals_defs.html b/CMSIS/Documentation/Core/html/globals_defs.html new file mode 100644 index 0000000..a27df83 --- /dev/null +++ b/CMSIS/Documentation/Core/html/globals_defs.html @@ -0,0 +1,142 @@ + + + + + +Globals +CMSIS-CORE: Globals + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/CMSIS/Documentation/Core/html/globals_enum.html b/CMSIS/Documentation/Core/html/globals_enum.html new file mode 100644 index 0000000..15dd2da --- /dev/null +++ b/CMSIS/Documentation/Core/html/globals_enum.html @@ -0,0 +1,139 @@ + + + + + +Globals +CMSIS-CORE: Globals + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/CMSIS/Documentation/Core/html/globals_eval.html b/CMSIS/Documentation/Core/html/globals_eval.html new file mode 100644 index 0000000..22dd0b4 --- /dev/null +++ b/CMSIS/Documentation/Core/html/globals_eval.html @@ -0,0 +1,169 @@ + + + + + +Globals +CMSIS-CORE: Globals + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/globals_func.html b/CMSIS/Documentation/Core/html/globals_func.html new file mode 100644 index 0000000..5832053 --- /dev/null +++ b/CMSIS/Documentation/Core/html/globals_func.html @@ -0,0 +1,593 @@ + + + + + +Globals +CMSIS-CORE: Globals + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+  + +

- _ -

+ + +

- i -

+ + +

- n -

+ + +

- s -

+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/globals_vars.html b/CMSIS/Documentation/Core/html/globals_vars.html new file mode 100644 index 0000000..f87e0da --- /dev/null +++ b/CMSIS/Documentation/Core/html/globals_vars.html @@ -0,0 +1,142 @@ + + + + + +Globals +CMSIS-CORE: Globals + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + + +
+
+ +
+
+
+ + + + + + diff --git a/CMSIS/Documentation/Core/html/group___core___register__gr.html b/CMSIS/Documentation/Core/html/group___core___register__gr.html new file mode 100644 index 0000000..6eff421 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___core___register__gr.html @@ -0,0 +1,1188 @@ + + + + + +Core Register Access +CMSIS-CORE: Core Register Access + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Core Register Access
+
+
+ +

Functions to access the Cortex-M core registers. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

uint32_t __get_CONTROL (void)
 Read the CONTROL register.
 
void __set_CONTROL (uint32_t control)
 Set the CONTROL Register.
 
uint32_t __get_IPSR (void)
 Read the IPSR register.
 
uint32_t __get_APSR (void)
 Read the APSR register.
 
uint32_t __get_xPSR (void)
 Read the xPSR register.
 
uint32_t __get_PSP (void)
 Read the PSP register.
 
void __set_PSP (uint32_t topOfProcStack)
 Set the PSP register.
 
uint32_t __get_MSP (void)
 Read the MSP register.
 
void __set_MSP (uint32_t topOfMainStack)
 Set the MSP register.
 
uint32_t __get_PRIMASK (void)
 Read the PRIMASK register bit.
 
void __set_PRIMASK (uint32_t priMask)
 Set the Priority Mask bit.
 
uint32_t __get_BASEPRI (void)
 Read the BASEPRI register [not for Cortex-M0, Cortex-M0+, or SC000].
 
void __set_BASEPRI (uint32_t basePri)
 Set the BASEPRI register [not for Cortex-M0, Cortex-M0+, or SC000].
 
void __set_BASEPRI_MAX (uint32_t basePri)
 Increase the BASEPRI register [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __get_FAULTMASK (void)
 Read the FAULTMASK register [not for Cortex-M0, Cortex-M0+, or SC000].
 
void __set_FAULTMASK (uint32_t faultMask)
 Set the FAULTMASK register [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __get_FPSCR (void)
 Read the FPSCR register [only Cortex-M4 and Cortex-M7].
 
void __set_FPSCR (uint32_t fpscr)
 Set the FPSC register [only for Cortex-M4 and Cortex-M7].
 
void __enable_irq (void)
 Globally enables interrupts and configurable fault handlers.
 
void __disable_irq (void)
 Globally disables interrupts and configurable fault handlers.
 
void __enable_fault_irq (void)
 Enables interrupts and all fault handlers [not for Cortex-M0, Cortex-M0+, or SC000].
 
void __disable_fault_irq (void)
 Disables interrupts and all fault handlers [not for Cortex-M0, Cortex-M0+, or SC000].
 
+

Description

+

The following functions provide access to Cortex-M core registers.

+

Function Documentation

+ +
+
+ + + + + + + + +
void __disable_fault_irq (void )
+
+

The function disables interrupts and all fault handlers by setting FAULTMASK. The function uses the instruction CPSID f.

+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • Can be executed in privileged mode only.
  • +
  • An interrupt can enter pending state even if it is disabled. Disabling an interrupt only prevents the processor from taking that interrupt.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __disable_irq (void )
+
+

The function disables interrupts and all configurable fault handlers by setting PRIMASK. The function uses the instruction CPSID i.

+
Remarks
    +
  • Can be executed in privileged mode only.
  • +
  • An interrupt can enter pending state even if it is disabled. Disabling an interrupt only prevents the processor from taking that interrupt.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __enable_fault_irq (void )
+
+

The function enables interrupts and all fault handlers by clearing FAULTMASK. The function uses the instruction CPSIE f.

+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • Can be executed in privileged mode only.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __enable_irq (void )
+
+

The function enables interrupts and all configurable fault handlers by clearing PRIMASK. The function uses the instruction CPSIE i.

+
Remarks
    +
  • Can be executed in privileged mode only.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_APSR (void )
+
+

The function reads the Application Program Status Register (APSR) using the instruction MRS.
+
+ The APSR contains the current state of the condition flags from instructions executed previously. The APSR is essential for controlling conditional branches. The following flags are used:

+
    +
  • N (APSR[31]) (Negative flag)
      +
    • =1 The instruction result has a negative value (when interpreted as signed integer).
    • +
    • =0 The instruction result has a positive value or equal zero.
      +
      +
    • +
    +
  • +
  • Z (APSR[30]) (Zero flag)
      +
    • =1 The instruction result is zero. Or, after a compare instruction, when the two values are the same.
      +
      +
    • +
    +
  • +
  • C (APSR[29]) (Carry or borrow flag)
      +
    • =1 For unsigned additions, if an unsigned overflow occurred.
    • +
    • =inverse of borrow output status For unsigned subtract operations.
      +
      +
    • +
    +
  • +
  • V (APSR[28]) (Overflow flag)
      +
    • =1 A signed overflow occurred (for signed additions or subtractions).
      +
      +
    • +
    +
  • +
  • Q (APSR[27]) (DSP overflow or saturation flag) [not Cortex-M0]
      +
    • This flag is a sticky flag. Saturating and certain mutliplying instructions can set the flag, but cannot clear it.
    • +
    • =1 When saturation or an overflow occurred.
      +
      +
    • +
    +
  • +
  • GE (APSR[19:16]) (Greater than or Equal flags) [not Cortex-M0]
      +
    • Can be set by the parallel add and subtract instructions.
    • +
    • Are used by the SEL instruction to perform byte-based selection from two registers.
    • +
    +
  • +
+
Returns
APSR register value
+
Remarks
    +
  • Some instructions update all flags; some instructions update a subset of the flags.
  • +
  • If a flag is not updated, the original value is preserved.
  • +
  • Conditional instructions that are not executed have no effect on the flags.
  • +
  • The CMSIS does not provide a function to update this register.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_BASEPRI (void )
+
+

The function returns the Base Priority Mask register (BASEPRI) using the instruction MRS.
+
+ BASEPRI defines the minimum priority for exception processing. When BASEPRI is set to a non-zero value, it prevents the activation of all exceptions with the same or lower priority level as the BASEPRI value.

+
Returns
BASEPRI register value
+
Remarks
    +
  • Not for Cortex-M0, Cortex-M0+, or SC000.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_CONTROL (void )
+
+

The function reads the CONTROL register value using the instruction MRS.
+
+ The CONTROL register controls the stack used and the privilege level for software execution when the processor is in thread mode and, if implemented, indicates whether the FPU state is active. This register uses the following bits:
+

+
    +
  • CONTROL[2] [only Cortex-M4 and Cortex-M7]
      +
    • =0 FPU not active
    • +
    • =1 FPU active
      +
      +
    • +
    +
  • +
  • CONTROL[1]
      +
    • =0 In handler mode - MSP is selected. No alternate stack possible for handler mode.
    • +
    • =0 In thread mode - Default stack pointer MSP is used.
    • +
    • =1 In thread mode - Alternate stack pointer PSP is used.
      +
      +
    • +
    +
  • +
  • CONTROL[0] [not Cortex-M0]
      +
    • =0 In thread mode and privileged state.
    • +
    • =1 In thread mode and user state.
    • +
    +
  • +
+
Returns
CONTROL register value
+
Remarks
    +
  • The processor can be in user state or privileged state when running in thread mode.
  • +
  • Exception handlers always run in privileged state.
  • +
  • On reset, the processor is in thread mode with privileged access rights.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_FAULTMASK (void )
+
+

The function reads the Fault Mask register (FAULTMASK) value using the instruction MRS.
+
+ FAULTMASK prevents activation of all exceptions except for the Non-Maskable Interrupt (NMI).

+
Returns
FAULTMASK register value
+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • Is cleared automatically upon exiting the exception handler, except when returning from the NMI handler.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_FPSCR (void )
+
+

The function reads the Floating-Point Status Control Register (FPSCR) value.
+
+ FPSCR provides all necessary User level controls of the floating-point system.

+
Returns
    +
  • FPSCR register value, when __FPU_PRESENT=1
  • +
  • =0, when __FPU_PRESENT=0
  • +
+
+
Remarks
    +
  • Only for Cortex-M4 and Cortex-M7.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_IPSR (void )
+
+

The function reads the Interrupt Program Status Register (IPSR) using the instruction MRS.
+
+ The ISPR contains the exception type number of the current Interrupt Service Routine (ISR). Each exception has an assocciated unique IRQn number. The following bits are used:

+
    +
  • ISR_NUMBER (IPSR[8:0])
      +
    • =0 Thread mode
    • +
    • =1 Reserved
    • +
    • =2 NMI
    • +
    • =3 HardFault
    • +
    • =4 MemManage
    • +
    • =5 BusFault
    • +
    • =6 UsageFault
    • +
    • =7-10 Reserved
    • +
    • =11 SVCall
    • +
    • =12 Reserved for Debug
    • +
    • =13 Reserved
    • +
    • =14 PendSV
    • +
    • =15 SysTick
    • +
    • =16 IRQ0
    • +
    • ...
    • +
    • =n+15 IRQ(n-1)
    • +
    +
  • +
+
Returns
ISPR register value
+
Remarks
    +
  • This register is read-only.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_MSP (void )
+
+

The function reads the Main Status Pointer (MSP) value using the instruction MRS.
+
+ Physically two different stack pointers (SP) exist:

+
    +
  • The Main Stack Pointer (MSP) is the default stack pointer after reset. It is also used when running exception handlers (handler mode).
  • +
  • The Process Stack Pointer (PSP), which can be used only in thread mode.
  • +
+

Register R13 banks the SP. The SP selection is determined by the bit[1] of the CONTROL register:

+
    +
  • =0 MSP is the current stack pointer. This is also the default SP. The initial value is loaded from the first 32-bit word of the vector table from the program memory.
  • +
  • =1 PSP is the current stack pointer. The initial value is undefined.
  • +
+
Returns
MSP Register value
+
Remarks
    +
  • Only one of the two SPs is visible at a time.
  • +
  • For many applications, the system can completely rely on the MSP.
  • +
  • The PSP is normally used in designs with an OS where the stack memory for OS Kernel must be separated from the application code.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_PRIMASK (void )
+
+

The function reads the Priority Mask register (PRIMASK) value using the instruction MRS.
+
+ PRIMASK is a 1-bit-wide interrupt mask register. When set, it blocks all interrupts apart from the non-maskable interrupt (NMI) and the hard fault exception. The PRIMASK prevents activation of all exceptions with configurable priority.

+
Returns
PRIMASK register value
    +
  • =0 no effect
  • +
  • =1 prevents the activation of all exceptions with configurable priority
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_PSP (void )
+
+

The function reads the Program Status Pointer (PSP) value using the instruction MRS.
+
+ Physically two different stack pointers (SP) exist:

+
    +
  • The Main Stack Pointer (MSP) is the default stack pointer after reset. It is also used when running exception handlers (handler mode).
  • +
  • The Process Stack Pointer (PSP), which can be used only in thread mode.
  • +
+

Register R13 banks the SP. The SP selection is determined by the bit[1] of the CONTROL register:

+
    +
  • =0 MSP is the current stack pointer. This is also the default SP. The initial value is loaded from the first 32-bit word of the vector table from the program memory.
  • +
  • =1 PSP is the current stack pointer. The initial value is undefined.
  • +
+
Returns
PSP register value
+
Remarks
    +
  • Only one of the two SPs is visible at a time.
  • +
  • For many applications, the system can completely rely on the MSP.
  • +
  • The PSP is normally used in designs with an OS where the stack memory for OS Kernel must be separated from the application code.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __get_xPSR (void )
+
+

The function reads the combined Program Status Register (xPSR) using the instruction MRS.
+
+ xPSR provides information about program execution and the APSR flags. It consists of the following PSRs:

+
    +
  • Application Program Status Register (APSR)
  • +
  • Interrupt Program Status Register (IPSR)
  • +
  • Execution Program Status Register (EPSR)
  • +
+

In addition to the flags described in __get_APSR and __get_IPSR, the register provides the following flags:

+
    +
  • IT (xPSR[26:25]) (If-Then condition instruction)
      +
    • Contains up to four instructions following an IT instruction.
    • +
    • Each instruction in the block is conditional.
    • +
    • The conditions for the instructions are either all the same, or some can be the inverse of others.
      +
      +
    • +
    +
  • +
  • T (xPSR[24]) (Thumb bit)
      +
    • =1 Indicates that that the processor is in Thumb state.
    • +
    • =0 Attempting to execute instructions when the T bit is 0 results in a fault or lockup.
    • +
    • The conditions for the instructions are either all the same, or some can be the inverse of others.
    • +
    +
  • +
+
Returns
xPSR register value
+
Remarks
    +
  • The CMSIS does not provide functions that access EPSR.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_BASEPRI (uint32_t basePri)
+
+

The function sets the Base Priority Mask register (BASEPRI) value using the instruction MSR.
+
+ BASEPRI defines the minimum priority for exception processing. When BASEPRI is set to a non-zero value, it prevents the activation of all exceptions with the same or lower priority level as the BASEPRI value.

+
Parameters
+ + +
[in]basePriBASEPRI value to set
+
+
+
Remarks
    +
  • Not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • Cannot be set in user state.
  • +
  • Useful for changing the masking level or disabling the masking.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_BASEPRI_MAX (uint32_t basePri)
+
+

The function only increases the Base Priority Mask register (BASEPRI) value using the instruction MSR. The value is set only if BASEPRI masking is disabled, or the new value increases the BASEPRI priority level.
+
+ BASEPRI defines the minimum priority for exception processing.

+
Parameters
+ + +
[in]basePriBASEPRI value to set
+
+
+
Remarks
    +
  • Not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • Cannot be set in user state.
  • +
  • Useful for increasing the masking level.
  • +
  • Has no effect when basePri is lower than the current value of BASEPRI.
  • +
  • Use __set_BASEPRI to lower the Base Priority Mask register.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_CONTROL (uint32_t control)
+
+

The function sets the CONTROL register value using the instruction MSR.
+
+ The CONTROL register controls the stack used and the privilege level for software execution when the processor is in thread mode and, if implemented, indicates whether the FPU state is active. This register uses the following bits:
+

+
    +
  • CONTROL[2] [only Cortex-M4 and Cortex-M7]
      +
    • =0 FPU not active
    • +
    • =1 FPU active
      +
      +
    • +
    +
  • +
  • CONTROL[1]
      +
    • Writeable only when the processor is in thread mode and privileged state (CONTROL[0]=0).
    • +
    • =0 In handler mode - MSP is selected. No alternate stack pointer possible for handler mode.
    • +
    • =0 In thread mode - Default stack pointer MSP is used.
    • +
    • =1 In thread mode - Alternate stack pointer PSP is used.
      +
      +
    • +
    +
  • +
  • CONTROL[0] [not writeable for Cortex-M0]
      +
    • Writeable only when the processor is in privileged state.
    • +
    • Can be used to switch the processor to user state (thread mode).
    • +
    • Once in user state, trigger an interrupt and change the state to privileged in the exception handler (the only way).
    • +
    • =0 In thread mode and privileged state.
    • +
    • =1 In thread mode and user state.
    • +
    +
  • +
+
Parameters
+ + +
[in]controlCONTROL register value to set
+
+
+
Remarks
    +
  • The processor can be in user state or privileged state when running in thread mode.
  • +
  • Exception handlers always run in privileged state.
  • +
  • On reset, the processor is in thread mode with privileged access rights.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_FAULTMASK (uint32_t faultMask)
+
+

The function sets the Fault Mask register (FAULTMASK) value using the instruction MSR.
+
+ FAULTMASK prevents activation of all exceptions except for Non-Maskable Interrupt (NMI). FAULTMASK can be used to escalate a configurable fault handler (BusFault, usage fault, or memory management fault) to hard fault level without invoking a hard fault. This allows the fault handler to pretend to be the hard fault handler, whith the ability to:

+
    +
  1. Mask BusFault by setting the BFHFNMIGN in the Configuration Control register. It can be used to test the bus system without causing a lockup.
  2. +
  3. Bypass the MPU, allowing accessing the MPU protected memory location without reprogramming the MPU to just carry out a few transfers for fixing faults.
  4. +
+
Parameters
+ + +
[in]faultMaskFAULTMASK register value to set
+
+
+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • Is cleared automatically upon exiting the exception handler, except when returning from the NMI handler.
  • +
  • When set, it changes the effective current priority level to -1, so that even the hard fault handler is blocked.
  • +
  • Can be used by fault handlers to change their priority to -1 to have access to some features for hard fault exceptions (see above).
  • +
  • When set, lockups can still be caused by incorrect or undefined instructions, or by using SVC in the wrong priority level.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_FPSCR (uint32_t fpscr)
+
+

The function sets the Floating-Point Status Control Register (FPSCR) value.
+
+ FPSCR provides all necessary User level control of the floating-point system.
+

+
    +
  • N (FPSC[31]) (Negative flag)
      +
    • =1 The instruction result has a negative value (when interpreted as signed integer).
    • +
    • =0 The instruction result has a positive value or equal zero.
      +
      +
    • +
    +
  • +
  • Z (FPSC[30]) (Zero flag)
      +
    • =1 The instruction result is zero. Or, after a compare instruction, when the two values are the same.
      +
      +
    • +
    +
  • +
  • C (FPSC[29]) (Carry or borrow flag)
      +
    • =1 For unsigned additions, if an unsigned overflow occurred.
    • +
    • =inverse of borrow output status For unsigned subtract operations.
      +
      +
    • +
    +
  • +
  • V (FPSC[28]) (Overflow flag)
      +
    • =1 A signed overflow occurred (for signed additions or subtractions).
      +
      +
    • +
    +
  • +
  • AHP (FPSC[26]) (Alternative half-precision flag)
      +
    • =1 Alternative half-precision format selected.
    • +
    • =0 IEEE half-precision format selected.
      +
      +
    • +
    +
  • +
  • DN (FPSC[25]) (Default NaN mode control flag)
      +
    • =1 Any operation involving one or more NaNs returns the Default NaN.
    • +
    • =0 NaN operands propagate through to the output of a floating-point operation.
      +
      +
    • +
    +
  • +
  • FZ (FPSC[24]) (Flush-to-zero mode control flag)
      +
    • =1 Flush-to-zero mode enabled.
    • +
    • =0 Flush-to-zero mode disabled. Behavior of the floating-point system is fully compliant with the IEEE 754 standard.
      +
      +
    • +
    +
  • +
  • RMode (FPSC[23:22]) (Rounding Mode control flags)
      +
    • =0b00 Round to Nearest (RN) mode.
    • +
    • =0b01 Round towards Plus Infinity (RP) mode.
    • +
    • =0b10 Round towards Minus Infinity (RM) mode.
    • +
    • =0b11 Round towards Zero (RZ) mode.
    • +
    • The specified rounding mode is used by almost all floating-point instructions.
      +
      +
    • +
    +
  • +
  • IDC (FPSC[7]) (Input Denormal cumulative exception flags)
      +
    • See Cumulative exception bits (FPSC[4:0]).
      +
      +
    • +
    +
  • +
  • IXC (FPSC[4]) (Inexact cumulative exception flag)
      +
    • =1 Exception occurred.
    • +
    • =0 Value has to be set explicitly.
    • +
    • Flag is not cleared automatically.
      +
      +
    • +
    +
  • +
  • UFC (FPSC[3]) (Underflow cumulative exception flag)
      +
    • =1 Exception occurred.
    • +
    • =0 Value has to be set explicitly.
    • +
    • Flag is not cleared automatically.
      +
      +
    • +
    +
  • +
  • OFC (FPSC[2]) (Overflow cumulative exception flag)
      +
    • =1 Exception occurred.
    • +
    • =0 Value has to be set explicitly.
    • +
    • Flag is not cleared automatically.
      +
      +
    • +
    +
  • +
  • DZC (FPSC[1]) (Division by Zero cumulative exception flag)
      +
    • =1 Exception occurred.
    • +
    • =0 Value has to be set explicitly.
    • +
    • Flag is not cleared automatically.
      +
      +
    • +
    +
  • +
  • IOC (FPSC[0]) (Invalid Operation cumulative exception flag)
      +
    • =1 Exception occurred.
    • +
    • =0 Value has to be set explicitly.
    • +
    • Flag is not cleared automatically.
    • +
    +
  • +
+
Parameters
+ + +
[in]fpscrFPSCR value to set
+
+
+
Remarks
    +
  • Only for Cortex-M4 and Cortex-M7.
  • +
  • The variable __FPU_PRESENT has to be set to 1.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_MSP (uint32_t topOfMainStack)
+
+

The function sets the Main Status Pointer (MSP) value using the instruction MSR.
+
+ Physically two different stack pointers (SP) exist:

+
    +
  • The Main Stack Pointer (MSP) is the default stack pointer after reset. It is also used when running exception handlers (handler mode).
  • +
  • The Process Stack Pointer (PSP), which can be used only in thread mode.
  • +
+

Register R13 banks the SP. The SP selection is determined by the bit[1] of the CONTROL register:

+
    +
  • =0 MSP is the current stack pointer. This is also the default SP. The initial value is loaded from the first 32-bit word of the vector table from the program memory.
  • +
  • =1 PSP is the current stack pointer. The initial value is undefined.
  • +
+
Parameters
+ + +
[in]topOfMainStackMSP value to set
+
+
+
Remarks
    +
  • Only one of the two SPs is visible at a time.
  • +
  • For many applications, the system can completely rely on the MSP.
  • +
  • The PSP is normally used in designs with an OS where the stack memory for OS Kernel must be separated from the application code.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_PRIMASK (uint32_t priMask)
+
+

The function sets the Priority Mask register (PRIMASK) value using the instruction MSR.
+
+ PRIMASK is a 1-bit-wide interrupt mask register. When set, it blocks all interrupts apart from the non-maskable interrupt (NMI) and the hard fault exception. The PRIMASK prevents activation of all exceptions with configurable priority.

+
Parameters
+ + +
[in]priMaskPriority Mask
    +
  • =0 no effect
  • +
  • =1 prevents the activation of all exceptions with configurable priority
  • +
+
+
+
+
Remarks
    +
  • When set, PRIMASK effectively changes the current priority level to 0. This is the highest programmable level.
  • +
  • When set and a fault occurs, the hard fault handler will be executed.
  • +
  • Useful for temprorarily disabling all interrupts for timing critical tasks.
  • +
  • Does not have the ability to mask BusFault or bypass MPU.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void __set_PSP (uint32_t topOfProcStack)
+
+

The function sets the Program Status Pointer (PSP) value using the instruction MSR.
+
+ Physically two different stack pointers (SP) exist:

+
    +
  • The Main Stack Pointer (MSP) is the default stack pointer after reset. It is also used when running exception handlers (handler mode).
  • +
  • The Process Stack Pointer (PSP), which can be used only in thread mode.
  • +
+

Register R13 banks the SP. The SP selection is determined by the bit[1] of the CONTROL register:

+
    +
  • =0 MSP is the current stack pointer. This is also the default SP. The initial value is loaded from the first 32-bit word of the vector table from the program memory.
  • +
  • =1 PSP is the current stack pointer. The initial value is undefined.
  • +
+
Parameters
+ + +
[in]topOfProcStackPSP value to set
+
+
+
Remarks
    +
  • Only one of the two SPs is visible at a time.
  • +
  • For many applications, the system can completely rely on the MSP.
  • +
  • The PSP is normally used in designs with an OS where the stack memory for OS Kernel must be separated from the application code.
  • +
+
+
See Also
+
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group___core___register__gr.js b/CMSIS/Documentation/Core/html/group___core___register__gr.js new file mode 100644 index 0000000..9bdcfdb --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___core___register__gr.js @@ -0,0 +1,25 @@ +var group___core___register__gr = +[ + [ "__disable_fault_irq", "group___core___register__gr.html#ga9d174f979b2f76fdb3228a9b338fd939", null ], + [ "__disable_irq", "group___core___register__gr.html#gaeb8e5f7564a8ea23678fe3c987b04013", null ], + [ "__enable_fault_irq", "group___core___register__gr.html#ga6575d37863cec5d334864f93b5b783bf", null ], + [ "__enable_irq", "group___core___register__gr.html#ga0f98dfbd252b89d12564472dbeba9c27", null ], + [ "__get_APSR", "group___core___register__gr.html#ga811c0012221ee918a75111ca84c4d5e7", null ], + [ "__get_BASEPRI", "group___core___register__gr.html#ga32da759f46e52c95bcfbde5012260667", null ], + [ "__get_CONTROL", "group___core___register__gr.html#ga963cf236b73219ce78e965deb01b81a7", null ], + [ "__get_FAULTMASK", "group___core___register__gr.html#gaa78e4e6bf619a65e9f01b4af13fed3a8", null ], + [ "__get_FPSCR", "group___core___register__gr.html#gad6d7eca9ddd1d9072dd7b020cfe64905", null ], + [ "__get_IPSR", "group___core___register__gr.html#ga2c32fc5c7f8f07fb3d436c6f6fe4e8c8", null ], + [ "__get_MSP", "group___core___register__gr.html#gab898559392ba027814e5bbb5a98b38d2", null ], + [ "__get_PRIMASK", "group___core___register__gr.html#ga799b5d9a2ae75e459264c8512c7c0e02", null ], + [ "__get_PSP", "group___core___register__gr.html#ga914dfa8eff7ca53380dd54cf1d8bebd9", null ], + [ "__get_xPSR", "group___core___register__gr.html#ga732e08184154f44a617963cc65ff95bd", null ], + [ "__set_BASEPRI", "group___core___register__gr.html#ga360c73eb7ffb16088556f9278953b882", null ], + [ "__set_BASEPRI_MAX", "group___core___register__gr.html#ga62fa63d39cf22df348857d5f44ab64d9", null ], + [ "__set_CONTROL", "group___core___register__gr.html#gac64d37e7ff9de06437f9fb94bbab8b6c", null ], + [ "__set_FAULTMASK", "group___core___register__gr.html#gaa5587cc09031053a40a35c14ec36078a", null ], + [ "__set_FPSCR", "group___core___register__gr.html#ga6f26bd75ca7e3247f27b272acc10536b", null ], + [ "__set_MSP", "group___core___register__gr.html#ga0bf9564ebc1613a8faba014275dac2a4", null ], + [ "__set_PRIMASK", "group___core___register__gr.html#ga70b4e1a6c1c86eb913fb9d6e8400156f", null ], + [ "__set_PSP", "group___core___register__gr.html#ga48e5853f417e17a8a65080f6a605b743", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group___dcache__functions__m7.html b/CMSIS/Documentation/Core/html/group___dcache__functions__m7.html new file mode 100644 index 0000000..8d2c5bb --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___dcache__functions__m7.html @@ -0,0 +1,356 @@ + + + + + +D-Cache Functions +CMSIS-CORE: D-Cache Functions + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

Functions for the data cache. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

__STATIC_INLINE void SCB_EnableDCache (void)
 Enable D-Cache.
 
__STATIC_INLINE void SCB_DisableDCache (void)
 Disable D-Cache.
 
__STATIC_INLINE void SCB_InvalidateDCache (void)
 Invalidate D-Cache.
 
__STATIC_INLINE void SCB_CleanDCache (void)
 Clean D-Cache.
 
__STATIC_INLINE void SCB_CleanInvalidateDCache (void)
 Clean & Invalidate D-Cache.
 
__STATIC_INLINE void SCB_InvalidateDCache_by_Addr (uint32_t *addr, int32_t dsize)
 D-Cache Invalidate by address.
 
__STATIC_INLINE void SCB_CleanDCache_by_Addr (uint32_t *addr, int32_t dsize)
 D-Cache Clean by address.
 
__STATIC_INLINE void SCB_CleanInvalidateDCache_by_Addr (uint32_t *addr, int32_t dsize)
 D-Cache Clean and Invalidate by address.
 
+

Description

+

// close ICache functions

+

Function Documentation

+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_CleanDCache (void )
+
+

The function cleans the entire data cache.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
__STATIC_INLINE void SCB_CleanDCache_by_Addr (uint32_t * addr,
int32_t dsize 
)
+
+
Parameters
+ + + +
[in]addraddress (aligned to 32-byte boundary)
[in]dsizesize of memory block (in number of bytes)
+
+
+

The function cleans a memory block of size dsize [bytes] starting at address address. The address is aligned to 32-byte boundry.

+ +
+
+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_CleanInvalidateDCache (void )
+
+

The function cleans and invalidates the entire data cache.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
__STATIC_INLINE void SCB_CleanInvalidateDCache_by_Addr (uint32_t * addr,
int32_t dsize 
)
+
+
Parameters
+ + + +
[in]addraddress (aligned to 32-byte boundary)
[in]dsizesize of memory block (in number of bytes)
+
+
+

The function invalidates and cleans a memory block of size dsize [bytes] starting at address address. The address is aligned to 32-byte boundry.

+ +
+
+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_DisableDCache (void )
+
+

The function turns off the entire data cache.

+
Note
When disabling the data cache, you must clean (SCB_CleanDCache) the entire cache to ensure that any dirty data is flushed to external memory.
+ +
+
+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_EnableDCache (void )
+
+

The function turns on the entire data cache.

+
Note
Before enabling the data cache, you must invalidate the entire data cache (SCB_InvalidateDCache), because external memory might have changed from when the cache was disabled.
+
+After reset, you must invalidate (SCB_InvalidateDCache) each cache before enabling it.
+ +
+
+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_InvalidateDCache (void )
+
+

The function invalidates the entire data cache.

+
Note
After reset, you must invalidate each cache before enabling (SCB_EnableDCache) it.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
__STATIC_INLINE void SCB_InvalidateDCache_by_Addr (uint32_t * addr,
int32_t dsize 
)
+
+
Parameters
+ + + +
[in]addraddress (aligned to 32-byte boundary)
[in]dsizesize of memory block (in number of bytes)
+
+
+

The function invalidates a memory block of size dsize [bytes] starting at address address. The address is aligned to 32-byte boundry.

+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group___dcache__functions__m7.js b/CMSIS/Documentation/Core/html/group___dcache__functions__m7.js new file mode 100644 index 0000000..c789ca5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___dcache__functions__m7.js @@ -0,0 +1,11 @@ +var group___dcache__functions__m7 = +[ + [ "SCB_CleanDCache", "group___dcache__functions__m7.html#ga55583e3065c6eabca204b8b89b121c4c", null ], + [ "SCB_CleanDCache_by_Addr", "group___dcache__functions__m7.html#ga696fadbf7b9cc71dad42fab61873a40d", null ], + [ "SCB_CleanInvalidateDCache", "group___dcache__functions__m7.html#ga1b741def9e3b2ca97dc9ea49b8ce505c", null ], + [ "SCB_CleanInvalidateDCache_by_Addr", "group___dcache__functions__m7.html#ga630131b2572eaa16b569ed364dfc895e", null ], + [ "SCB_DisableDCache", "group___dcache__functions__m7.html#ga6468170f90d270caab8116e7a4f0b5fe", null ], + [ "SCB_EnableDCache", "group___dcache__functions__m7.html#ga63aa640d9006021a796a5dcf9c7180b6", null ], + [ "SCB_InvalidateDCache", "group___dcache__functions__m7.html#gace2d30db08887d0bdb818b8a785a5ce6", null ], + [ "SCB_InvalidateDCache_by_Addr", "group___dcache__functions__m7.html#ga503ef7ef58c0773defd15a82f6336c09", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.html b/CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.html new file mode 100644 index 0000000..5c40fd2 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.html @@ -0,0 +1,280 @@ + + + + + +Debug Access +CMSIS-CORE: Debug Access + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Debug Access
+
+
+ +

Debug Access to the Instrumented Trace Macrocell (ITM) +More...

+ + + + + + + + + + + +

+Functions

uint32_t ITM_SendChar (uint32_t ch)
 Transmits a character via channel 0.
 
int32_t ITM_ReceiveChar (void)
 ITM Receive Character.
 
int32_t ITM_CheckChar (void)
 ITM Check Character.
 
+ + + + +

+Variables

volatile int32_t ITM_RxBuffer
 external variable to receive characters
 
+

Description

+

CMSIS provides additional debug functions to enlarge the Debug Access. Data can be transmitted via a certain global buffer variable towards the target system.

+

The Cortex-M3 / Cortex-M4 / Cortex-M7 incorporates the Instrumented Trace Macrocell (ITM) that provides together with the Serial Viewer Output (SVO) trace capabilities for the microcontroller system. The ITM has 32 communication channels; two ITM communication channels are used by CMSIS to output the following information:

+
    +
  • ITM Channel 0: implements the ITM_SendChar function which can be used for printf-style output via the debug interface.
  • +
+
    +
  • ITM Channel 31: is reserved for the RTOS kernel and can be used for kernel awareness debugging.
  • +
+
Remarks
    +
  • ITM channels have 4 groups with 8 channels each, whereby each group can be configured for access rights in the Unprivileged level.
  • +
  • The ITM channel 0 can be enabled for the user task.
  • +
  • ITM channel 31 can be accessed only in Privileged mode from the RTOS kernel itself. The ITM channel 31 has been selected for the RTOS kernel because some kernels may use the Privileged level for program execution.
  • +
+
+
+

+ITM Debugger Support

+

A debugger may support a Debug (printf) Viewer window to display data.

+

Direction: Microcontroller –> Debugger:

+
    +
  • Characters received via ITM communication channel 0 are written in a printf-style to the Debug (printf) Viewer window.
  • +
+

Direction: Debugger –> Microcontroller:

+
    +
  • Check if ITM_RxBuffer variable is available (only performed once).
  • +
  • Read the character from the Debug (printf) Viewer window.
  • +
  • If ITM_RxBuffer is empty, write character to ITM_RxBuffer.
  • +
+
Note
The current solution does not use a buffer mechanism for transmitting the characters.
+
+

+Example:

+

Example for the usage of the ITM Channel 31 for RTOS Kernels:

+
// check if debugger connected and ITM channel enabled for tracing
+
if ((CoreDebug->DEMCR & CoreDebug_DEMCR_TRCENA) &&
+
(ITM->TCR & ITM_TCR_ITMENA) &&
+
(ITM->TER & (1UL >> 31))) {
+
+
// transmit trace data
+
while (ITM->PORT31_U32 == 0);
+
ITM->PORT[31].u8 = task_id; // id of next task
+
while (ITM->PORT[31].u32 == 0);
+
ITM->PORT[31].u32 = task_status; // status information
+
}
+

Function Documentation

+ +
+
+ + + + + + + + +
int32_t ITM_CheckChar (void )
+
+

This function reads the external variable ITM_RxBuffer and checks whether a character is available or not.

+
Returns
    +
  • =0 - No character available
  • +
  • =1 - Character available
  • +
+
+ +
+
+ +
+
+ + + + + + + + +
int32_t ITM_ReceiveChar (void )
+
+

This function inputs a character via the external variable ITM_RxBuffer. It returns when no debugger is connected that has booked the output. It is blocking when a debugger is connected, but the previously sent character has not been transmitted.

+
Returns
    +
  • Received character
  • +
  • =1 - No character received
  • +
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t ITM_SendChar (uint32_t ch)
+
+

This function transmits a character via the ITM channel 0. It returns when no debugger is connected that has booked the output. It is blocking when a debugger is connected, but the previously sent character has not been transmitted.

+
Parameters
+ + +
[in]chCharacter to transmit
+
+
+
Returns
Character to transmit
+ +
+
+

Variable Documentation

+ +
+
+ + + + +
volatile int32_t ITM_RxBuffer
+
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.js b/CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.js new file mode 100644 index 0000000..eb22977 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___i_t_m___debug__gr.js @@ -0,0 +1,7 @@ +var group___i_t_m___debug__gr = +[ + [ "ITM_CheckChar", "group___i_t_m___debug__gr.html#ga7f9bbabd9756d1a7eafb2d9bf27e0535", null ], + [ "ITM_ReceiveChar", "group___i_t_m___debug__gr.html#ga37b8f41cae703b5ff6947e271065558c", null ], + [ "ITM_SendChar", "group___i_t_m___debug__gr.html#gaaa7c716331f74d644bf6bf25cd3392d1", null ], + [ "ITM_RxBuffer", "group___i_t_m___debug__gr.html#ga12e68e55a7badc271b948d6c7230b2a8", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group___icache__functions__m7.html b/CMSIS/Documentation/Core/html/group___icache__functions__m7.html new file mode 100644 index 0000000..1a1377c --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___icache__functions__m7.html @@ -0,0 +1,203 @@ + + + + + +I-Cache Functions +CMSIS-CORE: I-Cache Functions + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ + +
+ +

Functions for the instruction cache. +More...

+ + + + + + + + + + + +

+Functions

__STATIC_INLINE void SCB_EnableICache (void)
 Enable I-Cache.
 
__STATIC_INLINE void SCB_DisableICache (void)
 Disable I-Cache.
 
__STATIC_INLINE void SCB_InvalidateICache (void)
 Invalidate I-Cache.
 
+

Description

+

Function Documentation

+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_DisableICache (void )
+
+

The function turns off the instruction cache.

+ +
+
+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_EnableICache (void )
+
+

The function turns on the instruction cache.

+
Note
Before enabling the instruction cache, you must invalidate (SCB_InvalidateICache) the entire instruction cache if external memory might have changed since the cache was disabled.
+
+After reset, you must invalidate (SCB_InvalidateICache) each cache before enabling it.
+ +
+
+ +
+
+ + + + + + + + +
__STATIC_INLINE void SCB_InvalidateICache (void )
+
+

The function invalidates the instruction cache. The instruction cache is never dirty so cache RAM errors are always recoverable by invalidating the cache and retrying the instruction.

+
Note
After reset, you must invalidate each cache before enabling (SCB_EnableICache) it.
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group___icache__functions__m7.js b/CMSIS/Documentation/Core/html/group___icache__functions__m7.js new file mode 100644 index 0000000..e9c58ef --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___icache__functions__m7.js @@ -0,0 +1,6 @@ +var group___icache__functions__m7 = +[ + [ "SCB_DisableICache", "group___icache__functions__m7.html#gaba757390852f95b3ac2d8638c717d8d8", null ], + [ "SCB_EnableICache", "group___icache__functions__m7.html#gaf9e7c6c8e16ada1f95e5bf5a03505b68", null ], + [ "SCB_InvalidateICache", "group___icache__functions__m7.html#ga50d373a785edd782c5de5a3b55e30ff3", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group___n_v_i_c__gr.html b/CMSIS/Documentation/Core/html/group___n_v_i_c__gr.html new file mode 100644 index 0000000..2a8031c --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___n_v_i_c__gr.html @@ -0,0 +1,1061 @@ + + + + + +Interrupts and Exceptions (NVIC) +CMSIS-CORE: Interrupts and Exceptions (NVIC) + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Interrupts and Exceptions (NVIC)
+
+
+ +

Explains how to use interrupts and exceptions and access functions for the Nested Vector Interrupt Controller (NVIC). +More...

+ + + + + +

+Enumerations

enum  IRQn_Type {
+  NonMaskableInt_IRQn = -14, +
+  HardFault_IRQn = -13, +
+  MemoryManagement_IRQn = -12, +
+  BusFault_IRQn = -11, +
+  UsageFault_IRQn = -10, +
+  SVCall_IRQn = -5, +
+  DebugMonitor_IRQn = -4, +
+  PendSV_IRQn = -2, +
+  SysTick_IRQn = -1, +
+  WWDG_STM_IRQn = 0, +
+  PVD_STM_IRQn = 1 +
+ }
 Definition of IRQn numbers. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

void NVIC_SetPriorityGrouping (uint32_t PriorityGroup)
 Set priority grouping [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t NVIC_GetPriorityGrouping (void)
 Read the priority grouping [not for Cortex-M0, Cortex-M0+, or SC000].
 
void NVIC_EnableIRQ (IRQn_Type IRQn)
 Enable an external interrupt.
 
void NVIC_DisableIRQ (IRQn_Type IRQn)
 Disable an external interrupt.
 
uint32_t NVIC_GetPendingIRQ (IRQn_Type IRQn)
 Get the pending interrupt.
 
void NVIC_SetPendingIRQ (IRQn_Type IRQn)
 Set an interrupt to pending.
 
void NVIC_ClearPendingIRQ (IRQn_Type IRQn)
 Clear an interrupt from pending.
 
uint32_t NVIC_GetActive (IRQn_Type IRQn)
 Get the interrupt active status [not for Cortex-M0, Cortex-M0+, or SC000].
 
void NVIC_SetPriority (IRQn_Type IRQn, uint32_t priority)
 Set the priority for an interrupt.
 
uint32_t NVIC_GetPriority (IRQn_Type IRQn)
 Get the priority of an interrupt.
 
uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority)
 Encodes Priority [not for Cortex-M0, Cortex-M0+, or SC000].
 
void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t *pPreemptPriority, uint32_t *pSubPriority)
 Decode the interrupt priority [not for Cortex-M0, Cortex-M0+, or SC000].
 
void NVIC_SystemReset (void)
 Reset the system.
 
+

Description

+

ARM provides a template file startup_device for each supported compiler. The file must be adapted by the silicon vendor to include interrupt vectors for all device-specific interrupt handlers. Each interrupt handler is defined as a weak function to an dummy handler. These interrupt handlers can be used directly in application software without being adapted by the programmer.

+

The table below describes the core exception names and their availability in various Cortex-M cores.

+ + + + + + + + + + + + + + + + + + + + + +
Core Exception Name IRQn Value M0 M0+ M3 M4 M7 SC000 SC300 Description
NonMaskableInt_IRQn -14
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
Non Maskable Interrupt
HardFault_IRQn -13
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
Hard Fault Interrupt
MemoryManagement_IRQn -12    
+available +
+
+available +
+
+available +
+
 
+available +
+
Memory Management Interrupt
BusFault_IRQn -11    
+available +
+
+available +
+
+available +
+
 
+available +
+
Bus Fault Interrupt
UsageFault_IRQn -10    
+available +
+
+available +
+
+available +
+
 
+available +
+
Usage Fault Interrupt
SVCall_IRQn -5
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
SV Call Interrupt
DebugMonitor_IRQn -4    
+available +
+
+available +
+
+available +
+
 
+available +
+
Debug Monitor Interrupt
PendSV_IRQn -2
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
Pend SV Interrupt
SysTick_IRQn -1
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
+available +
+
System Tick Interrupt
+

+For Cortex-M0, Cortex-M0+, or SC000

+

The following exception names are fixed and define the start of the vector table for Cortex-M0, Cortex-M0+, or SC000:

+
__Vectors DCD __initial_sp ; Top of Stack
+
DCD Reset_Handler ; Reset Handler
+
DCD NMI_Handler ; NMI Handler
+
DCD HardFault_Handler ; Hard Fault Handler
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD SVC_Handler ; SVCall Handler
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD PendSV_Handler ; PendSV Handler
+
DCD SysTick_Handler ; SysTick Handler
+

+For Cortex-M3

+

The following exception names are fixed and define the start of the vector table for a Cortex-M3:

+
__Vectors DCD __initial_sp ; Top of Stack
+
DCD Reset_Handler ; Reset Handler
+
DCD NMI_Handler ; NMI Handler
+
DCD HardFault_Handler ; Hard Fault Handler
+
DCD MemManage_Handler ; MPU Fault Handler
+
DCD BusFault_Handler ; Bus Fault Handler
+
DCD UsageFault_Handler ; Usage Fault Handler
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD 0 ; Reserved
+
DCD SVC_Handler ; SVCall Handler
+
DCD DebugMon_Handler ; Debug Monitor Handler
+
DCD 0 ; Reserved
+
DCD PendSV_Handler ; PendSV Handler
+
DCD SysTick_Handler ; SysTick Handler
+

+Example

+

The following is an examples for device-specific interrupts:

+
; External Interrupts
+
DCD WWDG_IRQHandler ; Window Watchdog
+
DCD PVD_IRQHandler ; PVD through EXTI Line detect
+
DCD TAMPER_IRQHandler ; Tamper
+

Device-specific interrupts must have a dummy function that can be overwritten in user code. Below is an example for this dummy function.

+
Default_Handler PROC
+
EXPORT WWDG_IRQHandler [WEAK]
+
EXPORT PVD_IRQHandler [WEAK]
+
EXPORT TAMPER_IRQHandler [WEAK]
+
:
+
:
+
WWDG_IRQHandler
+
PVD_IRQHandler
+
TAMPER_IRQHandler
+
:
+
:
+
B .
+
ENDP
+

The user application may simply define an interrupt handler function by using the handler name as shown below.

+
void WWDG_IRQHandler(void)
+
{
+
...
+
}
+

+Code Example 1

+

The code below shows the usage of the CMSIS NVIC functions NVIC_SetPriorityGrouping(), NVIC_GetPriorityGrouping(), NVIC_SetPriority(), NVIC_GetPriority(), NVIC_EncodePriority(), and NVIC_DecodePriority() with an LPC1700.

+
#include "LPC17xx.h"
+
+
uint32_t priorityGroup; /* Variables to store priority group and priority */
+
uint32_t priority;
+
uint32_t preemptPriority;
+
uint32_t subPriority;
+
+
+
int main (void) {
+
+
NVIC_SetPriorityGrouping(5); /* Set priority group to 5:
+
Bit[7..6] preempt priority Bits,
+
Bit[5..3] subpriority Bits
+
(valid for five priority bits) */
+
+
priorityGroup = NVIC_GetPriorityGrouping(); /* Get used priority grouping */
+
+
priority = NVIC_EncodePriority(priorityGroup, 1, 6); /* Encode priority with 6 for subpriority and 1 for preempt priority
+
Note: priority depends on the used priority grouping */
+
+
NVIC_SetPriority(UART0_IRQn, priority); /* Set new priority */
+
+
priority = NVIC_GetPriority(UART0_IRQn); /* Retrieve priority again */
+
+
NVIC_DecodePriority(priority, priorityGroup, &preemptPriority, &subPriority);
+
+
while(1);
+
}
+

+Code Example 2

+

The code below shows the usage of the CMSIS NVIC functions NVIC_EnableIRQ(), NVIC_GetActive() with an LPC1700.

+
#include "LPC17xx.h"
+
+
uint32_t active; /* Variable to store interrupt active state */
+
+
+
void TIMER0_IRQHandler(void) { /* Timer 0 interrupt handler */
+
+
if (LPC_TIM0->IR & (1 << 0)) { /* Check if interrupt for match channel 0 occured */
+
LPC_TIM0->IR |= (1 << 0); /* Acknowledge interrupt for match channel 0 occured */
+
}
+
active = NVIC_GetActive(TIMER0_IRQn); /* Get interrupt active state of timer 0 */
+
}
+
+
+
int main (void) {
+
/* Set match channel register MR0 to 1 millisecond */
+
LPC_TIM0->MR0 = (((SystemCoreClock / 1000) / 4) - 1); /* 1 ms? */
+
+
LPC_TIM0->MCR = (3 << 0); /* Enable interrupt and reset for match channel MR0 */
+
+
NVIC_EnableIRQ(TIMER0_IRQn); /* Enable NVIC interrupt for timer 0 */
+
+
LPC_TIM0->TCR = (1 << 0); /* Enable timer 0 */
+
+
while(1);
+
}
+

Enumeration Type Documentation

+ +
+
+ + + + +
enum IRQn_Type
+
+

The core exception enumeration names for IRQn values are defined in the file device.h.

+
Negative IRQn values represent processor core exceptions (internal interrupts).
+Positive IRQn values represent device-specific exceptions (external interrupts). 
+The first device-specific interrupt has the IRQn value 0.
+

The table below describes the core exception names and their availability in various Cortex-M cores.

+
Enumerator:
+ + + + + + + + + + + +
NonMaskableInt_IRQn  +

Exception 2: Non Maskable Interrupt.

+
HardFault_IRQn  +

Exception 3: Hard Fault Interrupt.

+
MemoryManagement_IRQn  +

Exception 4: Memory Management Interrupt [not on Cortex-M0 variants].

+
BusFault_IRQn  +

Exception 5: Bus Fault Interrupt [not on Cortex-M0 variants].

+
UsageFault_IRQn  +

Exception 6: Usage Fault Interrupt [not on Cortex-M0 variants].

+
SVCall_IRQn  +

Exception 11: SV Call Interrupt.

+
DebugMonitor_IRQn  +

Exception 12: Debug Monitor Interrupt [not on Cortex-M0 variants].

+
PendSV_IRQn  +

Exception 14: Pend SV Interrupt [not on Cortex-M0 variants].

+
SysTick_IRQn  +

Exception 15: System Tick Interrupt.

+
WWDG_STM_IRQn  +

Device Interrupt 0: Window WatchDog Interrupt.

+
PVD_STM_IRQn  +

Device Interrupt 1: PVD through EXTI Line detection Interrupt.

+
+
+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
void NVIC_ClearPendingIRQ (IRQn_Type IRQn)
+
+

This function removes the pending state of the specified interrupt IRQn. IRQn cannot be a negative number.

+
Parameters
+ + +
[in]IRQnInterrupt number
+
+
+
Remarks
    +
  • The registers that control the status of interrupts are called SETPEND and CLRPEND.
  • +
  • An interrupt can have the status pending though it is not active.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void NVIC_DecodePriority (uint32_t Priority,
uint32_t PriorityGroup,
uint32_t * pPreemptPriority,
uint32_t * pSubPriority 
)
+
+

This function decodes an interrupt priority value with the priority group PriorityGroup to preemptive priority value pPreemptPriority and subpriority value pSubPriority. In case of a conflict between priority grouping and available priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set.

+
Parameters
+ + + + + +
[in]PriorityPriority
[in]PriorityGroupPriority group
[out]*pPreemptPriorityPreemptive priority value (starting from 0)
[out]*pSubPrioritySubpriority value (starting from 0)
+
+
+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void NVIC_DisableIRQ (IRQn_Type IRQn)
+
+

This function disables the specified device-specific interrupt IRQn. IRQn cannot be a negative value.

+
Parameters
+ + +
[in]IRQnNumber of the external interrupt to disable
+
+
+
Remarks
    +
  • The registers that control the enabling and disabling of interrupts are called SETENA and CLRENA.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void NVIC_EnableIRQ (IRQn_Type IRQn)
+
+

This function enables the specified device-specific interrupt IRQn. IRQn cannot be a negative value.

+
Parameters
+ + +
[in]IRQnInterrupt number
+
+
+
Remarks
    +
  • The registers that control the enabling and disabling of interrupts are called SETENA and CLRENA.
  • +
  • The number of supported interrupts depends on the implementation of the chip designer and can be read form the Interrupt Controller Type Register (ICTR) in granularities of 32:
    + ICTR[4:0]
      +
    • =0 - 32 interrupts supported
    • +
    • =1 - 64 interrupts supported
    • +
    • ...
    • +
    +
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t NVIC_EncodePriority (uint32_t PriorityGroup,
uint32_t PreemptPriority,
uint32_t SubPriority 
)
+
+

This function encodes the priority for an interrupt with the priority group PriorityGroup, preemptive priority value PreemptPriority, and subpriority value SubPriority. In case of a conflict between priority grouping and available priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set.

+
Parameters
+ + + + +
[in]PriorityGroupPriority group
[in]PreemptPriorityPreemptive priority value (starting from 0)
[in]SubPrioritySubpriority value (starting from 0)
+
+
+
Returns
Encoded priority for the interrupt
+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t NVIC_GetActive (IRQn_Type IRQn)
+
+

This function reads the Interrupt Active Register (NVIC_IABR0-NVIC_IABR7) in NVIC and returns the active bit of the interrupt IRQn.

+
Parameters
+ + +
[in]IRQnInterrupt number
+
+
+
Returns
    +
  • =0 Interrupt is not active
  • +
  • =1 Interrupt is active, or active and pending
  • +
+
+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • Each external interrupt has an active status bit. When the processor starts the interrupt handler the bit is set to 1 and cleared when the interrupt return is executed.
  • +
  • When an ISR is preempted and the processor executes anohter interrupt handler, the previous interrupt is still defined as active.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t NVIC_GetPendingIRQ (IRQn_Type IRQn)
+
+

This function returns the pending status of the specified interrupt IRQn.

+
Parameters
+ + +
[in]IRQnInterrupt number
+
+
+
Returns
    +
  • =0 Interrupt is not pending
  • +
  • =1 Interrupt is pending
  • +
+
+
Remarks
    +
  • The registers that control the status of interrupts are called SETPEND and CLRPEND.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t NVIC_GetPriority (IRQn_Type IRQn)
+
+

This function reads the priority for the specified interrupt IRQn. IRQn can can specify any device-specific (external) interrupt, or core (internal) interrupt.

+

The returned priority value is automatically aligned to the implemented priority bits of the microcontroller.

+
Parameters
+ + +
[in]IRQnInterrupt number
+
+
+
Returns
Interrupt priority
+
Remarks
    +
  • Each external interrupt has an associated priority-level register.
  • +
  • Unimplemented bits are read as zero.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t NVIC_GetPriorityGrouping (void )
+
+

This functuion returns the priority grouping (flag PRIGROUP in AIRCR[10:8]).

+
Returns
Priority grouping field
+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • By default, priority group setting is zero.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void NVIC_SetPendingIRQ (IRQn_Type IRQn)
+
+

This function sets the pending bit for the specified interrupt IRQn. IRQn cannot be a negative value.

+
Parameters
+ + +
[in]IRQnInterrupt number
+
+
+
Remarks
    +
  • The registers that control the status of interrupts are called SETPEND and CLRPEND.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void NVIC_SetPriority (IRQn_Type IRQn,
uint32_t priority 
)
+
+

Sets the priority for the interrupt specified by IRQn.IRQn can can specify any device-specific (external) interrupt, or core (internal) interrupt. The priority specifies the interrupt priority value, whereby lower values indicate a higher priority. The default priority is 0 for every interrupt. This is the highest possible priority.

+

The priority cannot be set for every core interrupt. HardFault and NMI have a fixed (negative) priority that is higher than any configurable exception or interrupt.

+
Parameters
+ + + +
[in]IRQnInterrupt Number
[in]priorityPriority to set
+
+
+
Remarks
    +
  • The number of priority levels is configurable and depends on the implementation of the chip designer. To determine the number of bits implemented for interrupt priority-level registers, write 0xFF to one of the priority-level register, then read back the value. For example, if the minimum number of 3 bits have been implemented, the read-back value is 0xE0.
  • +
  • Writes to unimplemented bits are ignored.
  • +
  • For Cortex-M0:
      +
    • Dynamic switching of interrupt priority levels is not supported. The priority level of an interrupt should not be changed after it has been enabled.
    • +
    • Supports 0 to 192 priority levels.
    • +
    • Priority-level registers are 2 bit wide, occupying the two MSBs. Each Interrupt Priority Level Register is 1-byte wide.
    • +
    +
  • +
  • For Cortex-M3, Cortex-M4, and Cortex-M7:
      +
    • Dynamic switching of interrupt priority levels is supported.
    • +
    • Supports 0 to 255 priority levels.
    • +
    • Priority-level registers have a maximum width of 8 bits and a minumum of 3 bits. Each register can be further devided into preempt priority level and subpriority level.
    • +
    +
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void NVIC_SetPriorityGrouping (uint32_t PriorityGroup)
+
+

The function sets the priority grouping PriorityGroup using the required unlock sequence. PriorityGroup is assigned to the field PRIGROUP (register AIRCR[10:8]). This field determines the split of group priority from subpriority. Only values from 0..7 are used. In case of a conflict between priority grouping and available priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set.

+
Parameters
+ + +
[in]PriorityGroupPriority group
+
+
+
Remarks
    +
  • not for Cortex-M0, Cortex-M0+, or SC000.
  • +
  • By default, priority group setting is zero.
  • +
+
+
See Also
+
+ +
+
+ +
+
+ + + + + + + + +
void NVIC_SystemReset (void )
+
+

This function requests a system reset by setting the SYSRESETREQ flag in the AIRCR register.

+
Remarks
    +
  • In most microcontroller designs, setting the SYSRESETREQ flag resets the processor and most parts of the system, but should not affect the debug system.
  • +
+
+
See Also
+
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group___n_v_i_c__gr.js b/CMSIS/Documentation/Core/html/group___n_v_i_c__gr.js new file mode 100644 index 0000000..e7db41e --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___n_v_i_c__gr.js @@ -0,0 +1,29 @@ +var group___n_v_i_c__gr = +[ + [ "IRQn_Type", "group___n_v_i_c__gr.html#ga7e1129cd8a196f4284d41db3e82ad5c8", [ + [ "NonMaskableInt_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ade177d9c70c89e084093024b932a4e30", null ], + [ "HardFault_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ab1a222a34a32f0ef5ac65e714efc1f85", null ], + [ "MemoryManagement_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a33ff1cf7098de65d61b6354fee6cd5aa", null ], + [ "BusFault_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8693500eff174f16119e96234fee73af", null ], + [ "UsageFault_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6895237c9443601ac832efa635dd8bbf", null ], + [ "SVCall_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a4ce820b3cc6cf3a796b41aadc0cf1237", null ], + [ "DebugMonitor_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8e033fcef7aed98a31c60a7de206722c", null ], + [ "PendSV_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a03c3cc89984928816d81793fc7bce4a2", null ], + [ "SysTick_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6dbff8f8543325f3474cbae2446776e7", null ], + [ "WWDG_STM_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8aa62e040960b4beb6cba107e4703c12d2", null ], + [ "PVD_STM_IRQn", "group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a853e0f318108110e0527f29733d11f86", null ] + ] ], + [ "NVIC_ClearPendingIRQ", "group___n_v_i_c__gr.html#ga382ad6bedd6eecfdabd1b94dd128a01a", null ], + [ "NVIC_DecodePriority", "group___n_v_i_c__gr.html#gad3cbca1be7a4726afa9448a9acd89377", null ], + [ "NVIC_DisableIRQ", "group___n_v_i_c__gr.html#ga736ba13a76eb37ef6e2c253be8b0331c", null ], + [ "NVIC_EnableIRQ", "group___n_v_i_c__gr.html#ga530ad9fda2ed1c8b70e439ecfe80591f", null ], + [ "NVIC_EncodePriority", "group___n_v_i_c__gr.html#ga0688c59605b119c53c71b2505ab23eb5", null ], + [ "NVIC_GetActive", "group___n_v_i_c__gr.html#gadf4252e600661fd762cfc0d1a9f5b892", null ], + [ "NVIC_GetPendingIRQ", "group___n_v_i_c__gr.html#ga95a8329a680b051ecf3ee8f516acc662", null ], + [ "NVIC_GetPriority", "group___n_v_i_c__gr.html#gab18fb9f6c5f4c70fdd73047f0f7c8395", null ], + [ "NVIC_GetPriorityGrouping", "group___n_v_i_c__gr.html#gaa81b19849367d3cdb95ac108c500fa78", null ], + [ "NVIC_SetPendingIRQ", "group___n_v_i_c__gr.html#ga3b885147ef9965ecede49614de8df9d2", null ], + [ "NVIC_SetPriority", "group___n_v_i_c__gr.html#ga5bb7f43ad92937c039dee3d36c3c2798", null ], + [ "NVIC_SetPriorityGrouping", "group___n_v_i_c__gr.html#gad78f447e891789b4d8f2e5b21eeda354", null ], + [ "NVIC_SystemReset", "group___n_v_i_c__gr.html#ga1b47d17e90b6a03e7bd1ec6a0d549b46", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group___sys_tick__gr.html b/CMSIS/Documentation/Core/html/group___sys_tick__gr.html new file mode 100644 index 0000000..6966d61 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___sys_tick__gr.html @@ -0,0 +1,197 @@ + + + + + +Systick Timer (SYSTICK) +CMSIS-CORE: Systick Timer (SYSTICK) + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Systick Timer (SYSTICK)
+
+
+ +

Initialize and start the SysTick timer. +More...

+ + + + + +

+Functions

uint32_t SysTick_Config (uint32_t ticks)
 System Tick Timer Configuration.
 
+

Description

+
The System Tick Time (SysTick) generates interrupt requests on a regular basis.
+This allows an OS to carry out context switching to support multiple tasking. For applications
+that do not require an OS, the SysTick can be used for time keeping, time measurement, or as an 
+interrupt source for tasks that need to be executed regularly.
+

+Code Example

+

The code below shows the usage of the function SysTick_Config() with an LPC1700.

+
#include "LPC17xx.h"
+
+
uint32_t msTicks = 0; /* Variable to store millisecond ticks */
+
+
+
void SysTick_Handler(void) { /* SysTick interrupt Handler.
+
msTicks++; See startup file startup_LPC17xx.s for SysTick vector */
+
}
+
+
+
int main (void) {
+
uint32_t returnCode;
+
+
returnCode = SysTick_Config(SystemCoreClock / 1000); /* Configure SysTick to generate an interrupt every millisecond */
+
+
if (returnCode != 0) { /* Check return code for errors */
+
// Error Handling
+
}
+
+
while(1);
+
}
+

Function Documentation

+ +
+
+ + + + + + + + +
uint32_t SysTick_Config (uint32_t ticks)
+
+

Initialises and starts the System Tick Timer and its interrupt. After this call, the SysTick timer creates interrupts with the specified time interval. Counter is in free running mode to generate periodical interrupts.

+
Parameters
+ + +
[in]ticksNumber of ticks between two interrupts
+
+
+
Returns
0 - success
+
+1 - failure
+
Note
When #define __Vendor_SysTickConfig is set to 1, the standard function SysTick_Config is excluded. In this case, the file device.h must contain a vendor specific implementation of this function.
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group___sys_tick__gr.js b/CMSIS/Documentation/Core/html/group___sys_tick__gr.js new file mode 100644 index 0000000..99c5304 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group___sys_tick__gr.js @@ -0,0 +1,4 @@ +var group___sys_tick__gr = +[ + [ "SysTick_Config", "group___sys_tick__gr.html#gabe47de40e9b0ad465b752297a9d9f427", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group__cache__functions__m7.html b/CMSIS/Documentation/Core/html/group__cache__functions__m7.html new file mode 100644 index 0000000..7ba5f9a --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__cache__functions__m7.html @@ -0,0 +1,152 @@ + + + + + +Cache Functions (only Cortex-M7) +CMSIS-CORE: Cache Functions (only Cortex-M7) + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Cache Functions (only Cortex-M7)
+
+
+ +

Functions for Instruction and Data Cache. +More...

+ + + + + + + + +

+Content

 I-Cache Functions
 Functions for the instruction cache.
 
 D-Cache Functions
 Functions for the data cache.
 
+

Description

+

Cortex-M7 processors include a memory system, which includes an optional MPU and Harvard data and instruction cache with ECC. The optional CPU cache has an instruction and data cache with sizes of [0;4;8;16;32;64]KB. Both instruction and data cache RAM can be configured at implementation time to have Error Correcting Code (ECC) to protect the data stored in the memory from errors.

+

All cache maintenance operations are executed by writing to registers in the memory mapped System Control Space (SCS) region of the internal PPB memory space.

+
Note
After reset, you must invalidate each cache before enabling it.
+

The functions are grouped for:

+ +
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group__cache__functions__m7.js b/CMSIS/Documentation/Core/html/group__cache__functions__m7.js new file mode 100644 index 0000000..4db2220 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__cache__functions__m7.js @@ -0,0 +1,5 @@ +var group__cache__functions__m7 = +[ + [ "I-Cache Functions", "group___icache__functions__m7.html", "group___icache__functions__m7" ], + [ "D-Cache Functions", "group___dcache__functions__m7.html", "group___dcache__functions__m7" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group__fpu__functions__m7.html b/CMSIS/Documentation/Core/html/group__fpu__functions__m7.html new file mode 100644 index 0000000..a30c139 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__fpu__functions__m7.html @@ -0,0 +1,166 @@ + + + + + +FPU Functions (only Cortex-M7) +CMSIS-CORE: FPU Functions (only Cortex-M7) + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
FPU Functions (only Cortex-M7)
+
+
+ +

Functions that relate to the Floating-Point Arithmetic Unit. +More...

+ + + + + +

+Functions

__STATIC_INLINE uint32_t SCB_GetFPUType (void)
 Get the FPU type.
 
+

Description

+

The Cortex-M7 processor includes optional floating-point arithmetic functionality, with support for single and double-precision arithmetic. The Cortex-M7 processor with FPU is an implementation of the single-precision and double-precision variant of the ARMv7-M Architecture with Floating-Point Extension (FPv5).

+

Function Documentation

+ +
+
+ + + + + + + + +
__STATIC_INLINE uint32_t SCB_GetFPUType (void )
+
+
Returns
    +
  • 0: No FPU
  • +
  • 1: Single precision FPU
  • +
  • 2: Double + Single precision FPU
  • +
+
+

The function returns the implemented FPU type.

+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group__fpu__functions__m7.js b/CMSIS/Documentation/Core/html/group__fpu__functions__m7.js new file mode 100644 index 0000000..d77dd8b --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__fpu__functions__m7.js @@ -0,0 +1,4 @@ +var group__fpu__functions__m7 = +[ + [ "SCB_GetFPUType", "group__fpu__functions__m7.html#ga6bcad99ce80a0e7e4ddc6f2379081756", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.html b/CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.html new file mode 100644 index 0000000..85ecf96 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.html @@ -0,0 +1,1013 @@ + + + + + +Intrinsic Functions for CPU Instructions +CMSIS-CORE: Intrinsic Functions for CPU Instructions + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Intrinsic Functions for CPU Instructions
+
+
+ +

Functions that generate specific Cortex-M CPU Instructions. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

void __NOP (void)
 No Operation.
 
void __WFI (void)
 Wait For Interrupt.
 
void __WFE (void)
 Wait For Event.
 
void __SEV (void)
 Send Event.
 
void __BKPT (uint8_t value)
 Set Breakpoint.
 
void __ISB (void)
 Instruction Synchronization Barrier.
 
void __DSB (void)
 Data Synchronization Barrier.
 
void __DMB (void)
 Data Memory Barrier.
 
uint32_t __REV (uint32_t value)
 Reverse byte order (32 bit)
 
uint32_t __REV16 (uint32_t value)
 Reverse byte order (16 bit)
 
int32_t __REVSH (int32_t value)
 Reverse byte order in signed short value.
 
uint32_t __RBIT (uint32_t value)
 Reverse bit order of value [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __ROR (uint32_t value, uint32_t shift)
 Rotate a value right by a number of bits.
 
uint8_t __LDREXB (volatile uint8_t *addr)
 LDR Exclusive (8 bit) [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint16_t __LDREXH (volatile uint16_t *addr)
 LDR Exclusive (16 bit) [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __LDREXW (volatile uint32_t *addr)
 LDR Exclusive (32 bit) [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __STREXB (uint8_t value, volatile uint8_t *addr)
 STR Exclusive (8 bit) [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __STREXH (uint16_t value, volatile uint16_t *addr)
 STR Exclusive (16 bit) [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __STREXW (uint32_t value, volatile uint32_t *addr)
 STR Exclusive (32 bit) [not for Cortex-M0, Cortex-M0+, or SC000].
 
void __CLREX (void)
 Remove the exclusive lock [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __SSAT (unint32_t value, uint32_t sat)
 Signed Saturate [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __USAT (uint32_t value, uint32_t sat)
 Unsigned Saturate [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint8_t __CLZ (uint32_t value)
 Count leading zeros [not for Cortex-M0, Cortex-M0+, or SC000].
 
uint32_t __RRX (uint32_t value)
 Rotate Right with Extend (32 bit)
 
uint8_t __LDRBT (uint8_t ptr)
 LDRT Unprivileged (8 bit)
 
uint16_t __LDRHT (uint16_t ptr)
 LDRT Unprivileged (16 bit)
 
uint32_t __LDRT (uint32_t ptr)
 LDRT Unprivileged (32 bit)
 
void __STRBT (uint8_t value, uint8_t ptr)
 STRT Unprivileged (8 bit)
 
void __STRHT (uint16_t value, uint16_t ptr)
 STRT Unprivileged (16 bit)
 
void __STRT (uint32_t value, uint32_t ptr)
 STRT Unprivileged (32 bit)
 
+

Description

+

The following functions generate specific Cortex-M instructions that cannot be directly accessed by the C/C++ Compiler. Refer to the Cortex-M Reference Manuals for detailed information about these Cortex-M instructions.

+
Note
When using the ARM Compiler Toolchain the following Intrinsic Functions for CPU Instructions are implemented using the Embedded Assembler: __RRX, <Bruno: add more...>. The usage of the Embedded Assembler can be disabled by with define __NO_EMBEDDED_ASM. This avoids potential side effects of the Embedded Assembler. Refer to Compiler User Guide - Using the Inline and Embedded Assemblers of the ARM Compiler for more information.
+

Function Documentation

+ +
+
+ + + + + + + + +
void __BKPT (uint8_t value)
+
+

This function causes the processor to enter Debug state. Debug tools can use this to investigate system state when the instruction at a particular address is reached.

+
Parameters
+ + +
[in]valueis ignored by the processor. If required, a debugger can use it to obtain additional information about the breakpoint.
+
+
+ +
+
+ +
+
+ + + + + + + + +
void __CLREX (void )
+
+

This function removes the exclusive lock which is created by LDREX [not for Cortex-M0, Cortex-M0+, or SC000].

+ +
+
+ +
+
+ + + + + + + + +
uint8_t __CLZ (uint32_t value)
+
+

This function counts the number of leading zeros of a data value [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + +
[in]valueValue to count the leading zeros
+
+
+
Returns
number of leading zeros in value
+ +
+
+ +
+
+ + + + + + + + +
void __DMB (void )
+
+

This function ensures the apparent order of the explicit memory operations before and after the instruction, without ensuring their completion.

+ +
+
+ +
+
+ + + + + + + + +
void __DSB (void )
+
+

This function acts as a special kind of Data Memory Barrier. It completes when all explicit memory accesses before this instruction complete.

+ +
+
+ +
+
+ + + + + + + + +
void __ISB (void )
+
+

Instruction Synchronization Barrier flushes the pipeline in the processor, so that all instructions following the ISB are fetched from cache or memory, after the instruction has been completed.

+ +
+
+ +
+
+ + + + + + + + +
uint8_t __LDRBT (uint8_t ptr)
+
+

This function executed an Unprivileged LDRT command for 8 bit value.

+
Parameters
+ + +
[in]ptrPointer to data
+
+
+
Returns
value of type uint8_t at (*ptr)
+ +
+
+ +
+
+ + + + + + + + +
uint8_t __LDREXB (volatile uint8_t * addr)
+
+

This function executed an exclusive LDR command for 8 bit value [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + +
[in]*addrPointer to data
+
+
+
Returns
value of type uint8_t at (*addr)
+ +
+
+ +
+
+ + + + + + + + +
uint16_t __LDREXH (volatile uint16_t * addr)
+
+

This function executed an exclusive LDR command for 16 bit values [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + +
[in]*addrPointer to data
+
+
+
Returns
value of type uint16_t at (*addr)
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __LDREXW (volatile uint32_t * addr)
+
+

This function executed an exclusive LDR command for 32 bit values [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + +
[in]*addrPointer to data
+
+
+
Returns
value of type uint32_t at (*addr)
+ +
+
+ +
+
+ + + + + + + + +
uint16_t __LDRHT (uint16_t ptr)
+
+

This function executed an Unprivileged LDRT command for 16 bit values.

+
Parameters
+ + +
[in]ptrPointer to data
+
+
+
Returns
value of type uint16_t at (*ptr)
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __LDRT (uint32_t ptr)
+
+

This function executed an Unprivileged LDRT command for 32 bit values.

+
Parameters
+ + +
[in]ptrPointer to data
+
+
+
Returns
value of type uint32_t at (*ptr)
+ +
+
+ +
+
+ + + + + + + + +
void __NOP (void )
+
+

This function does nothing. This instruction can be used for code alignment purposes.

+ +
+
+ +
+
+ + + + + + + + +
uint32_t __RBIT (uint32_t value)
+
+

This function reverses the bit order of the given value [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __REV (uint32_t value)
+
+

This function reverses the byte order in integer value.

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __REV16 (uint32_t value)
+
+

This function reverses the byte order in two unsigned short values.

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + +
int32_t __REVSH (int32_t value)
+
+

This function reverses the byte order in a signed short value with sign extension to integer.

+
Parameters
+ + +
[in]valueValue to reverse
+
+
+
Returns
Reversed value
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __ROR (uint32_t value,
uint32_t shift 
)
+
+

This function rotates a value right by a specified number of bits.

+
Parameters
+ + + +
[in]valueValue to be shifted right
[in]shiftNumber of bits in the range [1..31]
+
+
+
Returns
Rotated value
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __RRX (uint32_t value)
+
+

This function moves each bit of a bitstring right by one bit. The carry input is shifted in at the left end of the bitstring.

+
Parameters
+ + +
[in]valueValue to rotate
+
+
+
Returns
Rotated value
+ +
+
+ +
+
+ + + + + + + + +
void __SEV (void )
+
+

Send Event is a hint instruction. It causes an event to be signaled to the CPU.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SSAT (unint32_t value,
uint32_t sat 
)
+
+

This function saturates a signed value [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + + +
[in]valueValue to be saturated
[in]satBit position to saturate to [1..32]
+
+
+
Returns
Saturated value
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void __STRBT (uint8_t value,
uint8_t ptr 
)
+
+

This function executed an Unprivileged STRT command for 8 bit values.

+
Parameters
+ + + +
[in]valueValue to store
[in]ptrPointer to location
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __STREXB (uint8_t value,
volatile uint8_t * addr 
)
+
+

This function executed an exclusive STR command for 8 bit values [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + + +
[in]valueValue to store
[in]*addrPointer to location
+
+
+
Returns
0 Function succeeded
+
+1 Function failed
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __STREXH (uint16_t value,
volatile uint16_t * addr 
)
+
+

This function executed an exclusive STR command for 16 bit values [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + + +
[in]valueValue to store
[in]*addrPointer to location
+
+
+
Returns
0 Function succeeded
+
+1 Function failed
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __STREXW (uint32_t value,
volatile uint32_t * addr 
)
+
+

This function executed an exclusive STR command for 32 bit values [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + + +
[in]valueValue to store
[in]*addrPointer to location
+
+
+
Returns
0 Function succeeded
+
+1 Function failed
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void __STRHT (uint16_t value,
uint16_t ptr 
)
+
+

This function executed an Unprivileged STRT command for 16 bit values.

+
Parameters
+ + + +
[in]valueValue to store
[in]ptrPointer to location
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void __STRT (uint32_t value,
uint32_t ptr 
)
+
+

This function executed an Unprivileged STRT command for 32 bit values.

+
Parameters
+ + + +
[in]valueValue to store
[in]ptrPointer to location
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __USAT (uint32_t value,
uint32_t sat 
)
+
+

This function saturates an unsigned value [not for Cortex-M0, Cortex-M0+, or SC000].

+
Parameters
+ + + +
[in]valueValue to be saturated
[in]satBit position to saturate to [0..31]
+
+
+
Returns
Saturated value
+ +
+
+ +
+
+ + + + + + + + +
void __WFE (void )
+
+

Wait For Event is a hint instruction that permits the processor to enter a low-power state until an events occurs:

+
    +
  • If the event register is 0, then WFE suspends execution until one of the following events occurs:
      +
    • An exception, unless masked by the exception mask registers or the current priority level.
    • +
    • An exception enters the Pending state, if SEVONPEND in the System Control Register is set.
    • +
    • A Debug Entry request, if Debug is enabled.
    • +
    • An event signaled by a peripheral or another processor in a multiprocessor system using the SEV instruction.
    • +
    +
  • +
+
    +
  • If the event register is 1, then WFE clears it to 0 and returns immediately.
  • +
+ +
+
+ +
+
+ + + + + + + + +
void __WFI (void )
+
+

WFI is a hint instruction that suspends execution until one of the following events occurs:

+
    +
  • A non-masked interrupt occurs and is taken.
  • +
  • An interrupt masked by PRIMASK becomes pending.
  • +
  • A Debug Entry request.
  • +
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.js b/CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.js new file mode 100644 index 0000000..1621c07 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__intrinsic___c_p_u__gr.js @@ -0,0 +1,33 @@ +var group__intrinsic___c_p_u__gr = +[ + [ "__BKPT", "group__intrinsic___c_p_u__gr.html#ga92f5621626711931da71eaa8bf301af7", null ], + [ "__CLREX", "group__intrinsic___c_p_u__gr.html#ga354c5ac8870cc3dfb823367af9c4b412", null ], + [ "__CLZ", "group__intrinsic___c_p_u__gr.html#ga90884c591ac5d73d6069334eba9d6c02", null ], + [ "__DMB", "group__intrinsic___c_p_u__gr.html#gab1c9b393641dc2d397b3408fdbe72b96", null ], + [ "__DSB", "group__intrinsic___c_p_u__gr.html#gacb2a8ca6eae1ba4b31161578b720c199", null ], + [ "__ISB", "group__intrinsic___c_p_u__gr.html#ga93c09b4709394d81977300d5f84950e5", null ], + [ "__LDRBT", "group__intrinsic___c_p_u__gr.html#ga9464d75db32846aa8295c3c3adfacb41", null ], + [ "__LDREXB", "group__intrinsic___c_p_u__gr.html#ga9e3ac13d8dcf4331176b624cf6234a7e", null ], + [ "__LDREXH", "group__intrinsic___c_p_u__gr.html#ga9feffc093d6f68b120d592a7a0d45a15", null ], + [ "__LDREXW", "group__intrinsic___c_p_u__gr.html#gabd78840a0f2464905b7cec791ebc6a4c", null ], + [ "__LDRHT", "group__intrinsic___c_p_u__gr.html#gaa762b8bc5634ce38cb14d62a6b2aee32", null ], + [ "__LDRT", "group__intrinsic___c_p_u__gr.html#ga616504f5da979ba8a073d428d6e8d5c7", null ], + [ "__NOP", "group__intrinsic___c_p_u__gr.html#gac71fad9f0a91980fecafcb450ee0a63e", null ], + [ "__RBIT", "group__intrinsic___c_p_u__gr.html#gad6f9f297f6b91a995ee199fbc796b863", null ], + [ "__REV", "group__intrinsic___c_p_u__gr.html#ga4717abc17af5ba29b1e4c055e0a0d9b8", null ], + [ "__REV16", "group__intrinsic___c_p_u__gr.html#gaeef6f853b6df3a365c838ee5b49a7a26", null ], + [ "__REVSH", "group__intrinsic___c_p_u__gr.html#ga1ec006e6d79063363cb0c2a2e0b3adbe", null ], + [ "__ROR", "group__intrinsic___c_p_u__gr.html#gaf66beb577bb9d90424c3d1d7f684c024", null ], + [ "__RRX", "group__intrinsic___c_p_u__gr.html#gac09134f1bf9c49db07282001afcc9380", null ], + [ "__SEV", "group__intrinsic___c_p_u__gr.html#ga3c34da7eb16496ae2668a5b95fa441e7", null ], + [ "__SSAT", "group__intrinsic___c_p_u__gr.html#ga7d9dddda18805abbf51ac21c639845e1", null ], + [ "__STRBT", "group__intrinsic___c_p_u__gr.html#gad41aa59c92c0a165b7f98428d3320cd5", null ], + [ "__STREXB", "group__intrinsic___c_p_u__gr.html#gaab6482d1f59f59e2b6b7efc1af391c99", null ], + [ "__STREXH", "group__intrinsic___c_p_u__gr.html#ga0a354bdf71caa52f081a4a54e84c8d2a", null ], + [ "__STREXW", "group__intrinsic___c_p_u__gr.html#ga335deaaa7991490e1450cb7d1e4c5197", null ], + [ "__STRHT", "group__intrinsic___c_p_u__gr.html#ga2b5d93b8e461755b1072a03df3f1722e", null ], + [ "__STRT", "group__intrinsic___c_p_u__gr.html#ga625bc4ac0b1d50de9bcd13d9f050030e", null ], + [ "__USAT", "group__intrinsic___c_p_u__gr.html#ga76bbe4374a5912362866cdc1ded4064a", null ], + [ "__WFE", "group__intrinsic___c_p_u__gr.html#gad3efec76c3bfa2b8528ded530386c563", null ], + [ "__WFI", "group__intrinsic___c_p_u__gr.html#gaed91dfbf3d7d7b7fba8d912fcbeaad88", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.html b/CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.html new file mode 100644 index 0000000..f5c03c7 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.html @@ -0,0 +1,3126 @@ + + + + + +Intrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7] +CMSIS-CORE: Intrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7] + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Intrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7]
+
+
+ +

Access to dedicated SIMD instructions. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

uint32_t __SADD8 (uint32_t val1, uint32_t val2)
 GE setting quad 8-bit signed addition.
 
uint32_t __QADD8 (uint32_t val1, uint32_t val2)
 Q setting quad 8-bit saturating addition.
 
uint32_t __SHADD8 (uint32_t val1, uint32_t val2)
 Quad 8-bit signed addition with halved results.
 
uint32_t __UADD8 (uint32_t val1, uint32_t val2)
 GE setting quad 8-bit unsigned addition.
 
uint32_t __UQADD8 (uint32_t val1, uint32_t val2)
 Quad 8-bit unsigned saturating addition.
 
uint32_t __UHADD8 (uint32_t val1, uint32_t val2)
 Quad 8-bit unsigned addition with halved results.
 
uint32_t __SSUB8 (uint32_t val1, uint32_t val2)
 GE setting quad 8-bit signed subtraction.
 
uint32_t __QSUB8 (uint32_t val1, uint32_t val2)
 Q setting quad 8-bit saturating subtract.
 
uint32_t __SHSUB8 (uint32_t val1, uint32_t val2)
 Quad 8-bit signed subtraction with halved results.
 
uint32_t __USUB8 (uint32_t val1, uint32_t val2)
 GE setting quad 8-bit unsigned subtract.
 
uint32_t __UQSUB8 (uint32_t val1, uint32_t val2)
 Quad 8-bit unsigned saturating subtraction.
 
uint32_t __UHSUB8 (uint32_t val1, uint32_t val2)
 Quad 8-bit unsigned subtraction with halved results.
 
uint32_t __SADD16 (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit signed addition.
 
uint32_t __QADD16 (uint32_t val1, uint32_t val2)
 Q setting dual 16-bit saturating addition.
 
uint32_t __SHADD16 (uint32_t val1, uint32_t val2)
 Dual 16-bit signed addition with halved results.
 
uint32_t __UADD16 (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit unsigned addition.
 
uint32_t __UQADD16 (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned saturating addition.
 
uint32_t __UHADD16 (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned addition with halved results.
 
uint32_t __SSUB16 (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit signed subtraction.
 
uint32_t __QSUB16 (uint32_t val1, uint32_t val2)
 Q setting dual 16-bit saturating subtract.
 
uint32_t __SHSUB16 (uint32_t val1, uint32_t val2)
 Dual 16-bit signed subtraction with halved results.
 
uint32_t __USUB16 (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit unsigned subtract.
 
uint32_t __UQSUB16 (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned saturating subtraction.
 
uint32_t __UHSUB16 (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned subtraction with halved results.
 
uint32_t __SASX (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit addition and subtraction with exchange.
 
uint32_t __QASX (uint32_t val1, uint32_t val2)
 Q setting dual 16-bit add and subtract with exchange.
 
uint32_t __SHASX (uint32_t val1, uint32_t val2)
 Dual 16-bit signed addition and subtraction with halved results.
 
uint32_t __UASX (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit unsigned addition and subtraction with exchange.
 
uint32_t __UQASX (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned saturating addition and subtraction with exchange.
 
uint32_t __UHASX (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned addition and subtraction with halved results and exchange.
 
uint32_t __SSAX (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit signed subtraction and addition with exchange.
 
uint32_t __QSAX (uint32_t val1, uint32_t val2)
 Q setting dual 16-bit subtract and add with exchange.
 
uint32_t __SHSAX (uint32_t val1, uint32_t val2)
 Dual 16-bit signed subtraction and addition with halved results.
 
uint32_t __USAX (uint32_t val1, uint32_t val2)
 GE setting dual 16-bit unsigned subtract and add with exchange.
 
uint32_t __UQSAX (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned saturating subtraction and addition with exchange.
 
uint32_t __UHSAX (uint32_t val1, uint32_t val2)
 Dual 16-bit unsigned subtraction and addition with halved results and exchange.
 
uint32_t __USAD8 (uint32_t val1, uint32_t val2)
 Unsigned sum of quad 8-bit unsigned absolute difference.
 
uint32_t __USADA8 (uint32_t val1, uint32_t val2, uint32_t val3)
 Unsigned sum of quad 8-bit unsigned absolute difference with 32-bit accumulate.
 
uint32_t __SSAT16 (uint32_t val1, const uint32_t val2)
 Q setting dual 16-bit saturate.
 
uint32_t __USAT16 (uint32_t val1, const uint32_t val2)
 Q setting dual 16-bit unsigned saturate.
 
uint32_t __UXTB16 (uint32_t val)
 Dual extract 8-bits and zero-extend to 16-bits.
 
uint32_t __UXTAB16 (uint32_t val1, uint32_t val2)
 Extracted 16-bit to 32-bit unsigned addition.
 
uint32_t __SXTB16 (uint32_t val)
 Dual extract 8-bits and sign extend each to 16-bits.
 
uint32_t __SXTAB16 (uint32_t val1, uint32_t val2)
 Dual extracted 8-bit to 16-bit signed addition.
 
uint32_t __SMUAD (uint32_t val1, uint32_t val2)
 Q setting sum of dual 16-bit signed multiply.
 
uint32_t __SMUADX (uint32_t val1, uint32_t val2)
 Q setting sum of dual 16-bit signed multiply with exchange.
 
uint32_t __SMMLA (int32_t val1, int32_t val2, int32_t val3)
 32-bit signed multiply with 32-bit truncated accumulator.
 
uint32_t __SMLAD (uint32_t val1, uint32_t val2, uint32_t val3)
 Q setting dual 16-bit signed multiply with single 32-bit accumulator.
 
uint32_t __SMLADX (uint32_t val1, uint32_t val2, uint32_t val3)
 Q setting pre-exchanged dual 16-bit signed multiply with single 32-bit accumulator.
 
uint64_t __SMLALD (uint32_t val1, uint32_t val2, uint64_t val3)
 Dual 16-bit signed multiply with single 64-bit accumulator.
 
unsigned long long __SMLALDX (uint32_t val1, uint32_t val2, unsigned long long val3)
 Dual 16-bit signed multiply with exchange with single 64-bit accumulator.
 
uint32_t __SMUSD (uint32_t val1, uint32_t val2)
 Dual 16-bit signed multiply returning difference.
 
uint32_t __SMUSDX (uint32_t val1, uint32_t val2)
 Dual 16-bit signed multiply with exchange returning difference.
 
uint32_t __SMLSD (uint32_t val1, uint32_t val2, uint32_t val3)
 Q setting dual 16-bit signed multiply subtract with 32-bit accumulate.
 
uint32_t __SMLSDX (uint32_t val1, uint32_t val2, uint32_t val3)
 Q setting dual 16-bit signed multiply with exchange subtract with 32-bit accumulate.
 
uint64_t __SMLSLD (uint32_t val1, uint32_t val2, uint64_t val3)
 Q setting dual 16-bit signed multiply subtract with 64-bit accumulate.
 
unsigned long long __SMLSLDX (uint32_t val1, uint32_t val2, unsigned long long val3)
 Q setting dual 16-bit signed multiply with exchange subtract with 64-bit accumulate.
 
uint32_t __SEL (uint32_t val1, uint32_t val2)
 Select bytes based on GE bits.
 
uint32_t __QADD (uint32_t val1, uint32_t val2)
 Q setting saturating add.
 
uint32_t __QSUB (uint32_t val1, uint32_t val2)
 Q setting saturating subtract.
 
uint32_t __PKHBT (uint32_t val1, uint32_t val2, uint32_t val3)
 Halfword packing instruction. Combines bits[15:0] of val1 with bits[31:16] of val2 levitated with the val3.
 
uint32_t __PKHTB (uint32_t val1, uint32_t val2, uint32_t val3)
 Halfword packing instruction. Combines bits[31:16] of val1 with bits[15:0] of val2 right-shifted with the val3.
 
+

Description

+

Single Instruction Multiple Data (SIMD) extensions are provided only for Cortex-M4 and Cortex-M7 cores to simplify development of application software. SIMD extensions increase the processing capability without materially increasing the power consumption. The SIMD extensions are completely transparent to the operating system (OS), allowing existing OS ports to be used.

+

SIMD Features:

+
    +
  • Simultaneous computation of 2x16-bit or 4x8-bit operands
  • +
  • Fractional arithmetic
  • +
  • User definable saturation modes (arbitrary word-width)
  • +
  • Dual 16x16 multiply-add/subtract 32x32 fractional MAC
  • +
  • Simultaneous 8/16-bit select operations
  • +
  • Performance up to 3.2 GOPS at 800MHz
  • +
  • Performance is achieved with a "near zero" increase in power consumption on a typical implementation
  • +
+

Examples:

+

Addition: Add two values using SIMD function

+
uint32_t add_halfwords(uint32_t val1, uint32_t val2)
+
{
+
return __SADD16(val1, val2);
+
}
+

Subtraction: Subtract two values using SIMD function

+
uint32_t sub_halfwords(uint32_t val1, uint32_t val2)
+
{
+
return __SSUB16(val1, val2);
+
}
+

Multiplication: Performing a multiplication using SIMD function

+
uint32_t dual_mul_add_products(uint32_t val1, uint32_t val2)
+
{
+
return __SMUAD(val1, val2);
+
}
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __PKHBT (uint32_t val1,
uint32_t val2,
uint32_t val3 
)
+
+

Combine a halfword from one register with a halfword from another register. The second argument can be left-shifted before extraction of the halfword. The registers PC and SP are not allowed as arguments. This instruction does not change the flags.

+
Parameters
+ + + + +
val1first 16-bit operands
val2second 16-bit operands
val3value for left-shifting val2. Value range [0..31].
+
+
+
Returns
the combination of halfwords.
+
Operation:
res[15:0] = val1[15:0]
+
res[31:16] = val2[31:16]<<val3
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __PKHTB (uint32_t val1,
uint32_t val2,
uint32_t val3 
)
+
+

Combines a halfword from one register with a halfword from another register. The second argument can be right-shifted before extraction of the halfword. The registers PC and SP are not allowed as arguments. This instruction does not change the flags.

+
Parameters
+ + + + +
val1second 16-bit operands
val2first 16-bit operands
val3value for right-shifting val2. Value range [1..32].
+
+
+
Returns
the combination of halfwords.
+
Operation:
res[15:0] = val2[15:0]>>val3
+
res[31:16] = val1[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QADD (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to obtain the saturating add of two integers.
+ The Q bit is set if the operation saturates.

+
Parameters
+ + + +
val1first summand of the saturating add operation.
val2second summand of the saturating add operation.
+
+
+
Returns
the saturating addition of val1 and val2.
+
Operation:
res[31:0] = SAT(val1 + SAT(val2))
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QADD16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit integer arithmetic additions in parallel, saturating the results to the 16-bit signed integer range -215 <= x <= 215 - 1.

+
Parameters
+ + + +
val1first two 16-bit summands.
val2second two 16-bit summands.
+
+
+
Returns
    +
  • the saturated addition of the low halfwords, in the low halfword of the return value.
  • +
  • the saturated addition of the high halfwords, in the high halfword of the return value.
  • +
+
+
The returned results are saturated to the 16-bit signed integer range -215 <= x <= 215 - 1
+
Operation:
res[15:0] = val1[15:0] + val2[15:0]
+
res[31:16] = val1[31:16] + val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QADD8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four 8-bit integer additions, saturating the results to the 8-bit signed integer range -27 <= x <= 27 - 1.

+
Parameters
+ + + +
val1first four 8-bit summands.
val2second four 8-bit summands.
+
+
+
Returns
    +
  • the saturated addition of the first byte of each operand in the first byte of the return value.
  • +
  • the saturated addition of the second byte of each operand in the second byte of the return value.
  • +
  • the saturated addition of the third byte of each operand in the third byte of the return value.
  • +
  • the saturated addition of the fourth byte of each operand in the fourth byte of the return value.
  • +
+
+
The returned results are saturated to the 16-bit signed integer range -27 <= x <= 27 - 1.
+
Operation:
res[7:0] = val1[7:0] + val2[7:0]
+
res[15:8] = val1[15:8] + val2[15:8]
+
res[23:16] = val1[23:16] + val2[23:16]
+
res[31:24] = val1[31:24] + val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QASX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the halfwords of the one operand, then add the high halfwords and subtract the low halfwords, saturating the results to the 16-bit signed integer range -215 <= x <= 215 - 1.

+
Parameters
+ + + +
val1first operand for the subtraction in the low halfword, and the first operand for the addition in the high halfword.
val2second operand for the subtraction in the high halfword, and the second operand for the addition in the low halfword.
+
+
+
Returns
    +
  • the saturated subtraction of the high halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the saturated addition of the high halfword in the first operand and the low halfword in the second operand, in the high halfword of the return value.
  • +
+
+
The returned results are saturated to the 16-bit signed integer range -215 <= x <= 215 - 1.
+
Operation:
res[15:0] = val1[15:0] - val2[31:16]
+
res[31:16] = val1[31:16] + val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QSAX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the halfwords of one operand, then subtract the high halfwords and add the low halfwords, saturating the results to the 16-bit signed integer range -215 <= x <= 215 - 1.

+
Parameters
+ + + +
val1first operand for the addition in the low halfword, and the first operand for the subtraction in the high halfword.
val2second operand for the addition in the high halfword, and the second operand for the subtraction in the low halfword.
+
+
+
Returns
    +
  • the saturated addition of the low halfword of the first operand and the high halfword of the second operand, in the low halfword of the return value.
  • +
  • the saturated subtraction of the low halfword of the second operand from the high halfword of the first operand, in the high halfword of the return value.
  • +
+
+
The returned results are saturated to the 16-bit signed integer range -215 <= x <= 215 - 1.
+
Operation:
res[15:0] = val1[15:0] + val2[31:16]
+
res[31:16] = val1[31:16] - val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QSUB (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to obtain the saturating subtraction of two integers.
+ The Q bit is set if the operation saturates.

+
Parameters
+ + + +
val1minuend of the saturating subtraction operation.
val2subtrahend of the saturating subtraction operation.
+
+
+
Returns
the saturating subtraction of val1 and val2.
+
Operation:
res[31:0] = SAT(val1 - SAT(val2))
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QSUB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit integer subtractions, saturating the results to the 16-bit signed integer range -215 <= x <= 215 - 1.

+
Parameters
+ + + +
val1first two 16-bit operands.
val2second two 16-bit operands.
+
+
+
Returns
    +
  • the saturated subtraction of the low halfword in the second operand from the low halfword in the first operand, in the low halfword of the returned result.
  • +
  • the saturated subtraction of the high halfword in the second operand from the high halfword in the first operand, in the high halfword of the returned result.
  • +
+
+
The returned results are saturated to the 16-bit signed integer range -215 <= x <= 215 - 1.
+
Operation:
res[15:0] = val1[15:0] - val2[15:0]
+
res[31:16] = val1[31:16] - val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __QSUB8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four 8-bit integer subtractions, saturating the results to the 8-bit signed integer range -27 <= x <= 27 - 1.

+
Parameters
+ + + +
val1first four 8-bit operands.
val2second four 8-bit operands.
+
+
+
Returns
    +
  • the subtraction of the first byte in the second operand from the first byte in the first operand, in the first bytes of the return value.
  • +
  • the subtraction of the second byte in the second operand from the second byte in the first operand, in the second byte of the return value.
  • +
  • the subtraction of the third byte in the second operand from the third byte in the first operand, in the third byte of the return value.
  • +
  • the subtraction of the fourth byte in the second operand from the fourth byte in the first operand, in the fourth byte of the return value.
  • +
+
+
The returned results are saturated to the 8-bit signed integer range -27 <= x <= 27 - 1.
+
Operation:
res[7:0] = val1[7:0] - val2[7:0]
+
res[15:8] = val1[15:8] - val2[15:8]
+
res[23:16] = val1[23:16] - val2[23:16]
+
res[31:24] = val1[31:24] - val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SADD16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit signed integer additions.
+ The GE bits in the APSR are set according to the results of the additions.

+
Parameters
+ + + +
val1first two 16-bit summands.
val2second two 16-bit summands.
+
+
+
Returns
    +
  • the addition of the low halfwords in the low halfword of the return value.
  • +
  • the addition of the high halfwords in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[15:0] >= 0 then APSR.GE[1:0] = 11 else 00
  • +
  • if res[31:16] >= 0 then APSR.GE[3:2] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] + val2[15:0]
+
res[31:16] = val1[31:16] + val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SADD8 (uint32_t val1,
uint32_t val2 
)
+
+

This function performs four 8-bit signed integer additions. The GE bits of the APSR are set according to the results of the additions.

+
Parameters
+ + + +
val1first four 8-bit summands.
val2second four 8-bit summands.
+
+
+
Returns
    +
  • the addition of the first bytes from each operand, in the first byte of the return value.
  • +
  • the addition of the second bytes of each operand, in the second byte of the return value.
  • +
  • the addition of the third bytes of each operand, in the third byte of the return value.
  • +
  • the addition of the fourth bytes of each operand, in the fourth byte of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[7:0] >= 0 then APSR.GE[0] = 1 else 0
  • +
  • if res[15:8] >= 0 then APSR.GE[1] = 1 else 0
  • +
  • if res[23:16] >= 0 then APSR.GE[2] = 1 else 0
  • +
  • if res[31:24] >= 0 then APSR.GE[3] = 1 else 0
  • +
+
+
Operation:
res[7:0] = val1[7:0] + val2[7:0]
+
res[15:8] = val1[15:8] + val2[15:8]
+
res[23:16] = val1[23:16] + val2[23:16]
+
res[31:24] = val1[31:24] + val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SASX (uint32_t val1,
uint32_t val2 
)
+
+

This function inserts an SASX instruction into the instruction stream generated by the compiler. It enables you to exchange the halfwords of the second operand, add the high halfwords and subtract the low halfwords.
+ The GE bits in the APRS are set according to the results.

+
Parameters
+ + + +
val1first operand for the subtraction in the low halfword, and the first operand for the addition in the high halfword.
val2second operand for the subtraction in the high halfword, and the second operand for the addition in the low halfword.
+
+
+
Returns
    +
  • the subtraction of the high halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the addition of the high halfword in the first operand and the low halfword in the second operand, in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[15:0] >= 0 then APSR.GE[1:0] = 11 else 00
  • +
  • if res[31:16] >= 0 then APSR.GE[3:2] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] - val2[31:16]
+
res[31:16] = val1[31:16] + val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SEL (uint32_t val1,
uint32_t val2 
)
+
+

This function inserts a SEL instruction into the instruction stream generated by the compiler. It enables you to select bytes from the input parameters, whereby the bytes that are selected depend upon the results of previous SIMD instruction function. The results of previous SIMD instruction function are represented by the Greater than or Equal flags in the Application Program Status Register (APSR). The __SEL function works equally well on both halfword and byte operand function results. This is because halfword operand operations set two (duplicate) GE bits per value.

+
Parameters
+ + + +
val1four selectable 8-bit values.
val2four selectable 8-bit values.
+
+
+
Returns
The function selects bytes from the input parameters and returns them in the return value, res, according to the following criteria:
    +
  • if APSR.GE[0] == 1 then res[7:0] = val1[7:0] else res[7:0] = val2[7:0]
  • +
  • if APSR.GE[1] == 1 then res[15:8] = val1[15:8] else res[15:8] = val2[15:8]
  • +
  • if APSR.GE[2] == 1 then res[23:16] = val1[23:16] else res[23:16] = val2[23:16]
  • +
  • if APSR.GE[3] == 1 then res[31;24] = val1[31:24] else res = val2[31:24]
  • +
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SHADD16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two signed 16-bit integer additions, halving the results.

+
Parameters
+ + + +
val1first two 16-bit summands.
val2second two 16-bit summands.
+
+
+
Returns
    +
  • the halved addition of the low halfwords, in the low halfword of the return value.
  • +
  • the halved addition of the high halfwords, in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = val1[15:0] + val2[15:0] >> 1
+
res[31:16] = val1[31:16] + val2[31:16] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SHADD8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four signed 8-bit integer additions, halving the results.

+
Parameters
+ + + +
val1first four 8-bit summands.
val2second four 8-bit summands.
+
+
+
Returns
    +
  • the halved addition of the first bytes from each operand, in the first byte of the return value.
  • +
  • the halved addition of the second bytes from each operand, in the second byte of the return value.
  • +
  • the halved addition of the third bytes from each operand, in the third byte of the return value.
  • +
  • the halved addition of the fourth bytes from each operand, in the fourth byte of the return value.
  • +
+
+
Operation:
res[7:0] = val1[7:0] + val2[7:0] >> 1
+
res[15:8] = val1[15:8] + val2[15:8] >> 1
+
res[23:16] = val1[23:16] + val2[23:16] >> 1
+
res[31:24] = val1[31:24] + val2[31:24] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SHASX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the two halfwords of one operand, perform one signed 16-bit integer addition and one signed 16-bit subtraction, and halve the results.

+
Parameters
+ + + +
val1first 16-bit operands.
val2second 16-bit operands.
+
+
+
Returns
    +
  • the halved subtraction of the high halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the halved subtraction of the low halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = (val1[15:0] - val2[31:16]) >> 1
+
res[31:16] = (val1[31:16] - val2[15:0] ) >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SHSAX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the two halfwords of one operand, perform one signed 16-bit integer subtraction and one signed 16-bit addition, and halve the results.

+
Parameters
+ + + +
val1first 16-bit operands.
val2second 16-bit operands.
+
+
+
Returns
    +
  • the halved addition of the low halfword in the first operand and the high halfword in the second operand, in the low halfword of the return value.
  • +
  • the halved subtraction of the low halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = (val1[15:0] + val2[31:16]) >> 1
+
res[31:16] = (val1[31:16] - val2[15:0] ) >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SHSUB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two signed 16-bit integer subtractions, halving the results.

+
Parameters
+ + + +
val1first two 16-bit operands.
val2second two 16-bit operands.
+
+
+
Returns
    +
  • the halved subtraction of the low halfword in the second operand from the low halfword in the first operand, in the low halfword of the returned result.
  • +
  • the halved subtraction of the high halfword in the second operand from the high halfword in the first operand, in the high halfword of the returned result.
  • +
+
+
Operation:
res[15:0] = val1[15:0] - val2[15:0] >> 1
+
res[31:16] = val1[31:16] - val2[31:16] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SHSUB8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four signed 8-bit integer subtractions, halving the results.

+
Parameters
+ + + +
val1first four 8-bit operands.
val2second four 8-bit operands.
+
+
+
Returns
    +
  • the halved subtraction of the first byte in the second operand from the first byte in the first operand, in the first bytes of the return value.
  • +
  • the halved subtraction of the second byte in the second operand from the second byte in the first operand, in the second byte of the return value.
  • +
  • the halved subtraction of the third byte in the second operand from the third byte in the first operand, in the third byte of the return value.
  • +
  • the halved subtraction of the fourth byte in the second operand from the fourth byte in the first operand, in the fourth byte of the return value.
  • +
+
+
Operation:
res[7:0] = val1[7:0] - val2[7:0] >> 1
+
res[15:8] = val1[15:8] - val2[15:8] >> 1
+
res[23:16] = val1[23:16] - val2[23:16] >> 1
+
res[31:24] = val1[31:24] - val2[31:24] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __SMLAD (uint32_t val1,
uint32_t val2,
uint32_t val3 
)
+
+

This function enables you to perform two signed 16-bit multiplications, adding both results to a 32-bit accumulate operand.
+ The Q bit is set if the addition overflows. Overflow cannot occur during the multiplications.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the product of each multiplication added to the accumulate value, as a 32-bit integer.
+
Operation:
p1 = val1[15:0] * val2[15:0]
+
p2 = val1[31:16] * val2[31:16]
+
res[31:0] = p1 + p2 + val3[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __SMLADX (uint32_t val1,
uint32_t val2,
uint32_t val3 
)
+
+

This function enables you to perform two signed 16-bit multiplications with exchanged halfwords of the second operand, adding both results to a 32-bit accumulate operand.
+ The Q bit is set if the addition overflows. Overflow cannot occur during the multiplications.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the product of each multiplication with exchanged halfwords of the second operand added to the accumulate value, as a 32-bit integer.
+
Operation:
p1 = val1[15:0] * val2[31:16]
+
p2 = val1[31:16] * val2[15:0]
+
res[31:0] = p1 + p2 + val3[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint64_t __SMLALD (uint32_t val1,
uint32_t val2,
uint64_t val3 
)
+
+

This function enables you to perform two signed 16-bit multiplications, adding both results to a 64-bit accumulate operand. Overflow is only possible as a result of the 64-bit addition. This overflow is not detected if it occurs. Instead, the result wraps around modulo264.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the product of each multiplication added to the accumulate value.
+
Operation:
p1 = val1[15:0] * val2[15:0]
+
p2 = val1[31:16] * val2[31:16]
+
sum = p1 + p2 + val3[63:32][31:0]
+
res[63:32] = sum[63:32]
+
res[31:0] = sum[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
unsigned long long __SMLALDX (uint32_t val1,
uint32_t val2,
unsigned long long val3 
)
+
+

This function enables you to exchange the halfwords of the second operand, and perform two signed 16-bit multiplications, adding both results to a 64-bit accumulate operand. Overflow is only possible as a result of the 64-bit addition. This overflow is not detected if it occurs. Instead, the result wraps around modulo264.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the product of each multiplication added to the accumulate value.
+
Operation:
p1 = val1[15:0] * val2[31:16]
+
p2 = val1[31:16] * val2[15:0]
+
sum = p1 + p2 + val3[63:32][31:0]
+
res[63:32] = sum[63:32]
+
res[31:0] = sum[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __SMLSD (uint32_t val1,
uint32_t val2,
uint32_t val3 
)
+
+

This function enables you to perform two 16-bit signed multiplications, take the difference of the products, subtracting the high halfword product from the low halfword product, and add the difference to a 32-bit accumulate operand.
+ The Q bit is set if the accumulation overflows. Overflow cannot occur during the multiplications or the subtraction.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the difference of the product of each multiplication, added to the accumulate value.
+
Operation:
p1 = val1[15:0] * val2[15:0]
+
p2 = val1[31:16] * val2[31:16]
+
res[31:0] = p1 - p2 + val3[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __SMLSDX (uint32_t val1,
uint32_t val2,
uint32_t val3 
)
+
+

This function enables you to exchange the halfwords in the second operand, then perform two 16-bit signed multiplications. The difference of the products is added to a 32-bit accumulate operand.
+ The Q bit is set if the addition overflows. Overflow cannot occur during the multiplications or the subtraction.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the difference of the product of each multiplication, added to the accumulate value.
+
Operation:
p1 = val1[15:0] * val2[31:16]
+
p2 = val1[31:16] * val2[15:0]
+
res[31:0] = p1 - p2 + val3[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint64_t __SMLSLD (uint32_t val1,
uint32_t val2,
uint64_t val3 
)
+
+

This function It enables you to perform two 16-bit signed multiplications, take the difference of the products, subtracting the high halfword product from the low halfword product, and add the difference to a 64-bit accumulate operand. Overflow cannot occur during the multiplications or the subtraction. Overflow can occur as a result of the 64-bit addition, and this overflow is not detected. Instead, the result wraps round to modulo264.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the difference of the product of each multiplication, added to the accumulate value.
+
Operation:
p1 = val1[15:0] * val2[15:0]
+
p2 = val1[31:16] * val2[31:16]
+
res[63:0] = p1 - p2 + val3[63:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
unsigned long long __SMLSLDX (uint32_t val1,
uint32_t val2,
unsigned long long val3 
)
+
+

This function enables you to exchange the halfwords of the second operand, perform two 16-bit multiplications, adding the difference of the products to a 64-bit accumulate operand. Overflow cannot occur during the multiplications or the subtraction. Overflow can occur as a result of the 64-bit addition, and this overflow is not detected. Instead, the result wraps round to modulo264.

+
Parameters
+ + + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
val3accumulate value.
+
+
+
Returns
the difference of the product of each multiplication, added to the accumulate value.
+
Operation:
p1 = val1[15:0] * val2[31:16]
+
p2 = val1[31:16] * val2[15:0]
+
res[63:0] = p1 - p2 + val3[63:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __SMMLA (int32_t val1,
int32_t val2,
int32_t val3 
)
+
+

This function enables you to perform a signed 32-bit multiplications, adding the most significant 32 bits of the 64-bit result to a 32-bit accumulate operand.
+

+
Parameters
+ + + + +
val1first operand for multiplication.
val2second operand for multiplication.
val3accumulate value.
+
+
+
Returns
the product of multiplication (most significant 32 bits) is added to the accumulate value, as a 32-bit integer.
+
Operation:
p = val1 * val2
+
res[31:0] = p[61:32] + val3[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SMUAD (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit signed multiplications, adding the products together.
+ The Q bit is set if the addition overflows.

+
Parameters
+ + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
+
+
+
Returns
the sum of the products of the two 16-bit signed multiplications.
+
Operation:
p1 = val1[15:0] * val2[15:0]
+
p2 = val1[31:16] * val2[31:16]
+
res[31:0] = p1 + p2
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SMUADX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit signed multiplications with exchanged halfwords of the second operand, adding the products together.
+ The Q bit is set if the addition overflows.

+
Parameters
+ + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
+
+
+
Returns
the sum of the products of the two 16-bit signed multiplications with exchanged halfwords of the second operand.
+
Operation:
p1 = val1[15:0] * val2[31:16]
+
p2 = val1[31:16] * val2[15:0]
+
res[31:0] = p1 + p2
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SMUSD (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit signed multiplications, taking the difference of the products by subtracting the high halfword product from the low halfword product.

+
Parameters
+ + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
+
+
+
Returns
the difference of the products of the two 16-bit signed multiplications.
+
Operation:
p1 = val1[15:0] * val2[15:0]
+
p2 = val1[31:16] * val2[31:16]
+
res[31:0] = p1 - p2
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SMUSDX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit signed multiplications, subtracting one of the products from the other. The halfwords of the second operand are exchanged before performing the arithmetic. This produces top * bottom and bottom * top multiplication.

+
Parameters
+ + + +
val1first 16-bit operands for each multiplication.
val2second 16-bit operands for each multiplication.
+
+
+
Returns
the difference of the products of the two 16-bit signed multiplications.
+
Operation:
p1 = val1[15:0] * val2[31:16]
+
p2 = val1[31:16] * val2[15:0]
+
res[31:0] = p1 - p2
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SSAT16 (uint32_t val1,
const uint32_t val2 
)
+
+

This function enables you to saturate two signed 16-bit values to a selected signed range.
+ The Q bit is set if either operation saturates.

+
Parameters
+ + + +
val1two signed 16-bit values to be saturated.
val2bit position for saturation, an integral constant expression in the range 1 to 16.
+
+
+
Returns
the sum of the absolute differences of the following bytes, added to the accumulation value:
    +
  • the signed saturation of the low halfword in val1, saturated to the bit position specified in val2 and returned in the low halfword of the return value.
  • +
  • the signed saturation of the high halfword in val1, saturated to the bit position specified in val2 and returned in the high halfword of the return value.
  • +
+
+
Operation:
Saturate halfwords in val1 to the signed range specified by the bit position in val2
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SSAX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the two halfwords of one operand and perform one 16-bit integer subtraction and one 16-bit addition.
+ The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first operand for the addition in the low halfword, and the first operand for the subtraction in the high halfword.
val2second operand for the addition in the high halfword, and the second operand for the subtraction in the low halfword.
+
+
+
Returns
    +
  • the addition of the low halfword in the first operand and the high halfword in the second operand, in the low halfword of the return value.
  • +
  • the subtraction of the low halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[15:0] >= 0 then APSR.GE[1:0] = 11 else 00
  • +
  • if res[31:16] >= 0 then APSR.GE[3:2] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] + val2[31:16]
+
res[31:16] = val1[31:16] - val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SSUB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit signed integer subtractions.
+ The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first two 16-bit operands of each subtraction.
val2second two 16-bit operands of each subtraction.
+
+
+
Returns
    +
  • the subtraction of the low halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the subtraction of the high halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If
    +
  • res is the return value, then:
  • +
  • if res[15:0] >= 0 then APSR.GE[1:0] = 11 else 00
  • +
  • if res[31:16] >= 0 then APSR.GE[3:2] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] - val2[15:0]
+
res[31:16] = val1[31:16] - val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SSUB8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four 8-bit signed integer subtractions.
+ The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first four 8-bit operands of each subtraction.
val2second four 8-bit operands of each subtraction.
+
+
+
Returns
    +
  • the subtraction of the first byte in the second operand from the first byte in the first operand, in the first bytes of the return value.
  • +
  • the subtraction of the second byte in the second operand from the second byte in the first operand, in the second byte of the return value.
  • +
  • the subtraction of the third byte in the second operand from the third byte in the first operand, in the third byte of the return value.
  • +
  • the subtraction of the fourth byte in the second operand from the fourth byte in the first operand, in the fourth byte of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on
the results of the operation.
+
If res is the return value, then:
    +
  • if res[8:0] >= 0 then APSR.GE[0] = 1 else 0
  • +
  • if res[15:8] >= 0 then APSR.GE[1] = 1 else 0
  • +
  • if res[23:16] >= 0 then APSR.GE[2] = 1 else 0
  • +
  • if res[31:24] >= 0 then APSR.GE[3] = 1 else 0
  • +
+
+
Operation:
res[7:0] = val1[7:0] - val2[7:0]
+
res[15:8] = val1[15:8] - val2[15:8]
+
res[23:16] = val1[23:16] - val2[23:16]
+
res[31:24] = val1[31:24] - val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __SXTAB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to extract two 8-bit values from the second operand (at bit positions [7:0] and [23:16]), sign-extend them to 16-bits each, and add the results to the first operand.

+
Parameters
+ + + +
val1values added to the zero-extended to 16-bit values.
val2two 8-bit values to be extracted and zero-extended.
+
+
+
Returns
the addition of val1 and val2, where the 8-bit values in val2[7:0] and val2[23:16] have been extracted and sign-extended prior to the addition.
+
Operation:
res[15:0] = val1[15:0] + SignExtended(val2[7:0])
+
res[31:16] = val1[31:16] + SignExtended(val2[23:16])
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __SXTB16 (uint32_t val)
+
+

This function enables you to extract two 8-bit values from an operand and sign-extend them to 16 bits each.

+
Parameters
+ + +
valtwo 8-bit values in val[7:0] and val[23:16] to be sign-extended.
+
+
+
Returns
the 8-bit values sign-extended to 16-bit values.
    +
  • sign-extended value of val[7:0] in the low halfword of the return value.
  • +
  • sign-extended value of val[23:16] in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = SignExtended(val[7:0]
+
res[31:16] = SignExtended(val[23:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UADD16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit unsigned integer additions.
+ The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first two 16-bit summands for each addition.
val2second two 16-bit summands for each addition.
+
+
+
Returns
    +
  • the addition of the low halfwords in each operand, in the low halfword of the return value.
  • +
  • the addition of the high halfwords in each operand, in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[15:0] >= 0x10000 then APSR.GE[0] = 11 else 00
  • +
  • if res[31:16] >= 0x10000 then APSR.GE[1] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] + val2[15:0]
+
res[31:16] = val1[31:16] + val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UADD8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four unsigned 8-bit integer additions. The GE bits of the APSR are set according to the results.

+
Parameters
+ + + +
val1first four 8-bit summands for each addition.
val2second four 8-bit summands for each addition.
+
+
+
Returns
    +
  • the halved addition of the first bytes from each operand, in the first byte of the return value.
  • +
  • the halved addition of the second bytes from each operand, in the second byte of the return value.
  • +
  • the halved addition of the third bytes from each operand, in the third byte of the return value.
  • +
  • the halved addition of the fourth bytes from each operand, in the fourth byte of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[7:0] >= 0x100 then APSR.GE[0] = 1 else 0
  • +
  • if res[15:8] >= 0x100 then APSR.GE[1] = 1 else 0
  • +
  • if res[23:16] >= 0x100 then APSR.GE[2] = 1 else 0
  • +
  • if res[31:24] >= 0x100 then APSR.GE[3] = 1 else 0
  • +
+
+
Operation:
res[7:0] = val1[7:0] + val2[7:0]
+
res[15:8] = val1[15:8] + val2[15:8]
+
res[23:16] = val1[23:16] + val2[23:16]
+
res[31:24] = val1[31:24] + val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UASX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the two halfwords of the second operand, add the high halfwords and subtract the low halfwords.
+ The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first operand for the subtraction in the low halfword, and the first operand for the addition in the high halfword.
val2second operand for the subtraction in the high halfword and the second operand for the addition in the low halfword.
+
+
+
Returns
    +
  • the subtraction of the high halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the addition of the high halfword in the first operand and the low halfword in the second operand, in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[15:0] >= 0 then APSR.GE[1:0] = 11 else 00
  • +
  • if res[31:16] >= 0x10000 then APSR.GE[3:2] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] - val2[31:16]
+
res[31:16] = val1[31:16] + val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UHADD16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two unsigned 16-bit integer additions, halving the results.

+
Parameters
+ + + +
val1first two 16-bit summands.
val2second two 16-bit summands.
+
+
+
Returns
    +
  • the halved addition of the low halfwords in each operand, in the low halfword of the return value.
  • +
  • the halved addition of the high halfwords in each operand, in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = val1[15:0] + val2[15:0] >> 1
+
res[31:16] = val1[31:16] + val2[31:16] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UHADD8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four unsigned 8-bit integer additions, halving the results.

+
Parameters
+ + + +
val1first four 8-bit summands.
val2second four 8-bit summands.
+
+
+
Returns
    +
  • the halved addition of the first bytes in each operand, in the first byte of the return value.
  • +
  • the halved addition of the second bytes in each operand, in the second byte of the return value.
  • +
  • the halved addition of the third bytes in each operand, in the third byte of the return value.
  • +
  • the halved addition of the fourth bytes in each operand, in the fourth byte of the return value.
  • +
+
+
Operation:
res[7:0] = val1[7:0] + val2[7:0] >> 1
+
res[15:8] = val1[15:8] + val2[15:8] >> 1
+
res[23:16] = val1[23:16] + val2[23:16] >> 1
+
res[31:24] = val1[31:24] + val2[31:24] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UHASX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the halfwords of the second operand, add the high halfwords and subtract the low halfwords, halving the results.

+
Parameters
+ + + +
val1first operand for the subtraction in the low halfword, and the first operand for the addition in the high halfword.
val2second operand for the subtraction in the high halfword, and the second operand for the addition in the low halfword.
+
+
+
Returns
    +
  • the halved subtraction of the high halfword in the second operand from the low halfword in the first operand.
  • +
  • the halved addition of the high halfword in the first operand and the low halfword in the second operand.
  • +
+
+
Operation:
res[15:0] = (val1[15:0] - val2[31:16]) >> 1
+
res[31:16] = (val1[31:16] + val2[15:0] ) >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UHSAX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the halfwords of the second operand, subtract the high halfwords and add the low halfwords, halving the results.

+
Parameters
+ + + +
val1first operand for the addition in the low halfword, and the first operand for the subtraction in the high halfword.
val2second operand for the addition in the high halfword, and the second operand for the subtraction in the low halfword.
+
+
+
Returns
    +
  • the halved addition of the high halfword in the second operand and the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the halved subtraction of the low halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = (val1[15:0] + val2[31:16]) >> 1
+
res[31:16] = (val1[31:16] - val2[15:0] ) >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UHSUB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two unsigned 16-bit integer subtractions, halving the results.

+
Parameters
+ + + +
val1first two 16-bit operands.
val2second two 16-bit operands.
+
+
+
Returns
    +
  • the halved subtraction of the low halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the halved subtraction of the high halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = val1[15:0] - val2[15:0] >> 1
+
res[31:16] = val1[31:16] - val2[31:16] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UHSUB8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four unsigned 8-bit integer subtractions, halving the results.

+
Parameters
+ + + +
val1first four 8-bit operands.
val2second four 8-bit operands.
+
+
+
Returns
    +
  • the halved subtraction of the first byte in the second operand from the first byte in the first operand, in the first bytes of the return value.
  • +
  • the halved subtraction of the second byte in the second operand from the second byte in the first operand, in the second byte of the return value.
  • +
  • the halved subtraction of the third byte in the second operand from the third byte in the first operand, in the third byte of the return value.
  • +
  • the halved subtraction of the fourth byte in the second operand from the fourth byte in the first operand, in the fourth byte of the return value.
  • +
+
+
Operation:
res[7:0] = val1[7:0] - val2[7:0] >> 1
+
res[15:8] = val1[15:8] - val2[15:8] >> 1
+
res[23:16] = val1[23:16] - val2[23:16] >> 1
+
res[31:24] = val1[31:24] - val2[31:24] >> 1
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UQADD16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two unsigned 16-bit integer additions, saturating the results to the 16-bit unsigned integer range 0 < x < 216 - 1.

+
Parameters
+ + + +
val1first two 16-bit summands.
val2second two 16-bit summands.
+
+
+
Returns
    +
  • the addition of the low halfword in the first operand and the low halfword in the second operand, in the low halfword of the return value.
  • +
  • the addition of the high halfword in the first operand and the high halfword in the second operand, in the high halfword of the return value.
  • +
+
+
The results are saturated to the 16-bit unsigned integer range 0 < x < 216 - 1.
+
Operation:
res[15:0] = val1[15:0] + val2[15:0]
+
res[31:16] = val1[31:16] + val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UQADD8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four unsigned 8-bit integer additions, saturating the results to the 8-bit unsigned integer range 0 < x < 28 - 1.

+
Parameters
+ + + +
val1first four 8-bit summands.
val2second four 8-bit summands.
+
+
+
Returns
    +
  • the halved addition of the first bytes in each operand, in the first byte of the return value.
  • +
  • the halved addition of the second bytes in each operand, in the second byte of the return value.
  • +
  • the halved addition of the third bytes in each operand, in the third byte of the return value.
  • +
  • the halved addition of the fourth bytes in each operand, in the fourth byte of the return value.
  • +
+
+
The results are saturated to the 8-bit unsigned integer range 0 < x < 28 - 1.
+
Operation:
res[7:0] = val1[7:0] + val2[7:0]
+
res[15:8] = val1[15:8] + val2[15:8]
+
res[23:16] = val1[23:16] + val2[23:16]
+
res[31:24] = val1[31:24] + val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UQASX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the halfwords of the second operand and perform one unsigned 16-bit integer addition and one unsigned 16-bit subtraction, saturating the results to the 16-bit unsigned integer range 0 <= x <= 216 - 1.

+
Parameters
+ + + +
val1first two 16-bit operands.
val2second two 16-bit operands.
+
+
+
Returns
    +
  • the subtraction of the high halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the subtraction of the low halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
The results are saturated to the 16-bit unsigned integer range 0 <= x <= 216 - 1.
+
Operation:
res[15:0] = val1[15:0] - val2[31:16]
+
res[31:16] = val1[31:16] + val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UQSAX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the halfwords of the second operand and perform one unsigned 16-bit integer subtraction and one unsigned 16-bit addition, saturating the results to the 16-bit unsigned integer range 0 <= x <= 216 - 1.

+
Parameters
+ + + +
val1first 16-bit operand for the addition in the low halfword, and the first 16-bit operand for the subtraction in the high halfword.
val2second 16-bit halfword for the addition in the high halfword, and the second 16-bit halfword for the subtraction in the low halfword.
+
+
+
Returns
    +
  • the addition of the low halfword in the first operand and the high halfword in the second operand, in the low halfword of the return value.
  • +
  • the subtraction of the low halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
The results are saturated to the 16-bit unsigned integer range 0 <= x <= 216 - 1.
+
Operation:
res[15:0] = val1[15:0] + val2[31:16]
+
res[31:16] = val1[31:16] - val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UQSUB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two unsigned 16-bit integer subtractions, saturating the results to the 16-bit unsigned integer range 0 < x < 216 - 1.

+
Parameters
+ + + +
val1first two 16-bit operands for each subtraction.
val2second two 16-bit operands for each subtraction.
+
+
+
Returns
    +
  • the subtraction of the low halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the subtraction of the high halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
The results are saturated to the 16-bit unsigned integer range 0 < x < 216 - 1.
+
Operation:
res[15:0] = val1[15:0] - val2[15:0]
+
res[31:16] = val1[31:16] - val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UQSUB8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four unsigned 8-bit integer subtractions, saturating the results to the 8-bit unsigned integer range 0 < x < 28 - 1.

+
Parameters
+ + + +
val1first four 8-bit operands.
val2second four 8-bit operands.
+
+
+
Returns
    +
  • the subtraction of the first byte in the second operand from the first byte in the first operand, in the first bytes of the return value.
  • +
  • the subtraction of the second byte in the second operand from the second byte in the first operand, in the second byte of the return value.
  • +
  • the subtraction of the third byte in the second operand from the third byte in the first operand, in the third byte of the return value.
  • +
  • the subtraction of the fourth byte in the second operand from the fourth byte in the first operand, in the fourth byte of the return value.
  • +
+
+
The results are saturated to the 8-bit unsigned integer range 0 < x < 28 - 1.
+
Operation:
res[7:0] = val1[7:0] - val2[7:0]
+
res[15:8] = val1[15:8] - val2[15:8]
+
res[23:16] = val1[23:16] - val2[23:16]
+
res[31:24] = val1[31:24] - val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __USAD8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four unsigned 8-bit subtractions, and add the absolute values of the differences together, returning the result as a single unsigned integer.

+
Parameters
+ + + +
val1first four 8-bit operands for the subtractions.
val2second four 8-bit operands for the subtractions.
+
+
+
Returns
    +
  • the subtraction of the first byte in the second operand from the first byte in the first operand.
  • +
  • the subtraction of the second byte in the second operand from the second byte in the first operand.
  • +
  • the subtraction of the third byte in the second operand from the third byte in the first operand.
  • +
  • the subtraction of the fourth byte in the second operand from the fourth byte in the first operand.
  • +
+
+
The sum is returned as a single unsigned integer.
+
Operation:
absdiff1 = val1[7:0] - val2[7:0]
+
absdiff2 = val1[15:8] - val2[15:8]
+
absdiff3 = val1[23:16] - val2[23:16]
+
absdiff4 = val1[31:24] - val2[31:24]
+
res[31:0] = absdiff1 + absdiff2 + absdiff3 + absdiff4
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
uint32_t __USADA8 (uint32_t val1,
uint32_t val2,
uint32_t val3 
)
+
+

This function enables you to perform four unsigned 8-bit subtractions, and add the absolute values of the differences to a 32-bit accumulate operand.

+
Parameters
+ + + + +
val1first four 8-bit operands for the subtractions.
val2second four 8-bit operands for the subtractions.
val3accumulation value.
+
+
+
Returns
the sum of the absolute differences of the following bytes, added to the accumulation value:
    +
  • the subtraction of the first byte in the second operand from the first byte in the first operand.
  • +
  • the subtraction of the second byte in the second operand from the second byte in the first operand.
  • +
  • the subtraction of the third byte in the second operand from the third byte in the first operand.
  • +
  • the subtraction of the fourth byte in the second operand from the fourth byte in the first operand.
  • +
+
+
Operation:
absdiff1 = val1[7:0] - val2[7:0]
+
absdiff2 = val1[15:8] - val2[15:8]
+
absdiff3 = val1[23:16] - val2[23:16]
+
absdiff4 = val1[31:24] - val2[31:24]
+
sum = absdiff1 + absdiff2 + absdiff3 + absdiff4
+
res[31:0] = sum[31:0] + val3[31:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __USAT16 (uint32_t val1,
const uint32_t val2 
)
+
+

This function enables you to saturate two signed 16-bit values to a selected unsigned range.
+ The Q bit is set if either operation saturates.

+
Parameters
+ + + +
val1two 16-bit values that are to be saturated.
val2bit position for saturation, and must be an integral constant expression in the range 0 to 15.
+
+
+
Returns
the saturation of the two signed 16-bit values, as non-negative values.
    +
  • the saturation of the low halfword in val1, saturated to the bit position specified in val2 and returned in the low halfword of the return value.
  • +
  • the saturation of the high halfword in val1, saturated to the bit position specified in val2 and returned in the high halfword of the return value.
  • +
+
+
Operation:
Saturate halfwords in val1 to the unsigned range specified by the bit position in val2
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __USAX (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to exchange the halfwords of the second operand, subtract the high halfwords and add the low halfwords.
+ The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first operand for the addition in the low halfword, and the first operand for the subtraction in the high halfword.
val2second operand for the addition in the high halfword, and the second operand for the subtraction in the low halfword.
+
+
+
Returns
    +
  • the addition of the low halfword in the first operand and the high halfword in the second operand, in the low halfword of the return value.
  • +
  • the subtraction of the low halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[15:0] >= 0x10000 then APSR.GE[1:0] = 11 else 00
  • +
  • if res[31:16] >= 0 then APSR.GE[3:2] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] + val2[31:16]
+
res[31:16] = val1[31:16] - val2[15:0]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __USUB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform two 16-bit unsigned integer subtractions.
+ The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first two 16-bit operands.
val2second two 16-bit operands.
+
+
+
Returns
    +
  • the subtraction of the low halfword in the second operand from the low halfword in the first operand, in the low halfword of the return value.
  • +
  • the subtraction of the high halfword in the second operand from the high halfword in the first operand, in the high halfword of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[15:0] >= 0 then APSR.GE[1:0] = 11 else 00
  • +
  • if res[31:16] >= 0 then APSR.GE[3:2] = 11 else 00
  • +
+
+
Operation:
res[15:0] = val1[15:0] - val2[15:0]
+
res[31:16] = val1[31:16] - val2[31:16]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __USUB8 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to perform four 8-bit unsigned integer subtractions. The GE bits in the APSR are set according to the results.

+
Parameters
+ + + +
val1first four 8-bit operands.
val2second four 8-bit operands.
+
+
+
Returns
    +
  • the subtraction of the first byte in the second operand from the first byte in the first operand, in the first bytes of the return value.
  • +
  • the subtraction of the second byte in the second operand from the second byte in the first operand, in the second byte of the return value.
  • +
  • the subtraction of the third byte in the second operand from the third byte in the first operand, in the third byte of the return value.
  • +
  • the subtraction of the fourth byte in the second operand from the fourth byte in the first operand, in the fourth byte of the return value.
  • +
+
+
Each bit in APSR.GE is set or cleared for each byte in the return value, depending on the results of the operation.
+
If res is the return value, then:
    +
  • if res[8:0] >= 0 then APSR.GE[0] = 1 else 0
  • +
  • if res[15:8] >= 0 then APSR.GE[1] = 1 else 0
  • +
  • if res[23:16] >= 0 then APSR.GE[2] = 1 else 0
  • +
  • if res[31:24] >= 0 then APSR.GE[3] = 1 else 0
  • +
+
+
Operation:
res[7:0] = val1[7:0] - val2[7:0]
+
res[15:8] = val1[15:8] - val2[15:8]
+
res[23:16] = val1[23:16] - val2[23:16]
+
res[31:24] = val1[31:24] - val2[31:24]
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
uint32_t __UXTAB16 (uint32_t val1,
uint32_t val2 
)
+
+

This function enables you to extract two 8-bit values from one operand, zero-extend them to 16 bits each, and add the results to two 16-bit values from another operand.

+
Parameters
+ + + +
val1value added to the zero-extended to 16-bit values.
val2two 8-bit values to be extracted and zero-extended.
+
+
+
Returns
the 8-bit values in val2, zero-extended to 16-bit values and added to val1.
+
Operation:
res[15:0] = ZeroExt(val2[7:0] to 16 bits) + val1[15:0]
+
res[31:16] = ZeroExt(val2[31:16] to 16 bits) + val1[31:16]
+
+ +
+
+ +
+
+ + + + + + + + +
uint32_t __UXTB16 (uint32_t val)
+
+

This function enables you to extract two 8-bit values from an operand and zero-extend them to 16 bits each.

+
Parameters
+ + +
valtwo 8-bit values in val[7:0] and val[23:16] to be sign-extended.
+
+
+
Returns
the 8-bit values zero-extended to 16-bit values.
    +
  • zero-extended value of val[7:0] in the low halfword of the return value.
  • +
  • zero-extended value of val[23:16] in the high halfword of the return value.
  • +
+
+
Operation:
res[15:0] = ZeroExtended(val[7:0] )
+
res[31:16] = ZeroExtended(val[23:16])
+
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.js b/CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.js new file mode 100644 index 0000000..ef0bb50 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__intrinsic___s_i_m_d__gr.js @@ -0,0 +1,65 @@ +var group__intrinsic___s_i_m_d__gr = +[ + [ "__PKHBT", "group__intrinsic___s_i_m_d__gr.html#gaefb8ebf3a54e197464da1ff69a44f4b5", null ], + [ "__PKHTB", "group__intrinsic___s_i_m_d__gr.html#gafd8fe4a6d87e947caa81a69ec36c1666", null ], + [ "__QADD", "group__intrinsic___s_i_m_d__gr.html#ga17b873f246c9f5e9355760ffef3dad4a", null ], + [ "__QADD16", "group__intrinsic___s_i_m_d__gr.html#gae83a53ec04b496304bed6d9fe8f7461b", null ], + [ "__QADD8", "group__intrinsic___s_i_m_d__gr.html#gaf2f5a9132dcfc6d01d34cd971c425713", null ], + [ "__QASX", "group__intrinsic___s_i_m_d__gr.html#ga87618799672e1511e33964bc71467eb3", null ], + [ "__QSAX", "group__intrinsic___s_i_m_d__gr.html#gab41eb2b17512ab01d476fc9d5bd19520", null ], + [ "__QSUB", "group__intrinsic___s_i_m_d__gr.html#ga3ba259f8f05a36f7b88b469a71ffc096", null ], + [ "__QSUB16", "group__intrinsic___s_i_m_d__gr.html#gad089605c16df9823a2c8aaa37777aae5", null ], + [ "__QSUB8", "group__intrinsic___s_i_m_d__gr.html#ga753493a65493880c28baa82c151a0d61", null ], + [ "__SADD16", "group__intrinsic___s_i_m_d__gr.html#gad0bf46373a1c05aabf64517e84be5984", null ], + [ "__SADD8", "group__intrinsic___s_i_m_d__gr.html#gac20aa0f741d0a1494d58c531e38d5785", null ], + [ "__SASX", "group__intrinsic___s_i_m_d__gr.html#ga5845084fd99c872e98cf5553d554de2a", null ], + [ "__SEL", "group__intrinsic___s_i_m_d__gr.html#gaf5448e591fe49161b6759b48aecb08fe", null ], + [ "__SHADD16", "group__intrinsic___s_i_m_d__gr.html#ga15d8899a173effb8ad8c7268da32b60e", null ], + [ "__SHADD8", "group__intrinsic___s_i_m_d__gr.html#ga524575b442ea01aec10c762bf4d85fea", null ], + [ "__SHASX", "group__intrinsic___s_i_m_d__gr.html#gae0a649035f67627464fd80e7218c89d5", null ], + [ "__SHSAX", "group__intrinsic___s_i_m_d__gr.html#gafadbd89c36b5addcf1ca10dd392db3e9", null ], + [ "__SHSUB16", "group__intrinsic___s_i_m_d__gr.html#ga31328467f0f91b8ff9ae9a01682ad3bf", null ], + [ "__SHSUB8", "group__intrinsic___s_i_m_d__gr.html#gac3ec7215b354d925a239f3b31df2b77b", null ], + [ "__SMLAD", "group__intrinsic___s_i_m_d__gr.html#gae0c86f3298532183f3a29f5bb454d354", null ], + [ "__SMLADX", "group__intrinsic___s_i_m_d__gr.html#ga9c286d330f4fb29b256335add91eec9f", null ], + [ "__SMLALD", "group__intrinsic___s_i_m_d__gr.html#gad80e9b20c1736fd798f897362273a146", null ], + [ "__SMLALDX", "group__intrinsic___s_i_m_d__gr.html#gad1adad1b3f2667328cc0db6c6b4f41cf", null ], + [ "__SMLSD", "group__intrinsic___s_i_m_d__gr.html#gaf4350af7f2030c36f43b2c104a9d16cd", null ], + [ "__SMLSDX", "group__intrinsic___s_i_m_d__gr.html#ga5290ce5564770ad124910d2583dc0a9e", null ], + [ "__SMLSLD", "group__intrinsic___s_i_m_d__gr.html#ga5611f7314e0c8f53da377918dfbf42ee", null ], + [ "__SMLSLDX", "group__intrinsic___s_i_m_d__gr.html#ga83e69ef81057d3cbd06863d729385187", null ], + [ "__SMMLA", "group__intrinsic___s_i_m_d__gr.html#gaea60757232f740ec6b09980eebb614ff", null ], + [ "__SMUAD", "group__intrinsic___s_i_m_d__gr.html#gae326e368a1624d2dfb4b97c626939257", null ], + [ "__SMUADX", "group__intrinsic___s_i_m_d__gr.html#gaee6390f86965cb662500f690b0012092", null ], + [ "__SMUSD", "group__intrinsic___s_i_m_d__gr.html#ga039142a5368840683cf329cb55b73f84", null ], + [ "__SMUSDX", "group__intrinsic___s_i_m_d__gr.html#gabb5bcba694bf17b141c32e6a8474f60e", null ], + [ "__SSAT16", "group__intrinsic___s_i_m_d__gr.html#ga95e666b82216066bf6064d1244e6883c", null ], + [ "__SSAX", "group__intrinsic___s_i_m_d__gr.html#ga9d3bc5c539f9bd50f7d59ffa37ac6a65", null ], + [ "__SSUB16", "group__intrinsic___s_i_m_d__gr.html#ga4262f73be75efbac6b46ab7c71aa6cbc", null ], + [ "__SSUB8", "group__intrinsic___s_i_m_d__gr.html#gaba63bb52e1e93fb527e26f3d474da12e", null ], + [ "__SXTAB16", "group__intrinsic___s_i_m_d__gr.html#gac540b4fc41d30778ba102d2a65db5589", null ], + [ "__SXTB16", "group__intrinsic___s_i_m_d__gr.html#ga38dce3dd13ba212e80ec3cff4abeb11a", null ], + [ "__UADD16", "group__intrinsic___s_i_m_d__gr.html#gaa1160f0cf76d6aa292fbad54a1aa6b74", null ], + [ "__UADD8", "group__intrinsic___s_i_m_d__gr.html#gab3d7fd00d113b20fb3741a17394da762", null ], + [ "__UASX", "group__intrinsic___s_i_m_d__gr.html#ga980353d2c72ebb879282e49f592fddc0", null ], + [ "__UHADD16", "group__intrinsic___s_i_m_d__gr.html#gabd0b0e2da2e6364e176d051687702b86", null ], + [ "__UHADD8", "group__intrinsic___s_i_m_d__gr.html#ga3a14e5485e59bf0f23595b7c2a94eb0b", null ], + [ "__UHASX", "group__intrinsic___s_i_m_d__gr.html#ga028f0732b961fb6e5209326fb3855261", null ], + [ "__UHSAX", "group__intrinsic___s_i_m_d__gr.html#ga09e129e6613329aab87c89f1108b7ed7", null ], + [ "__UHSUB16", "group__intrinsic___s_i_m_d__gr.html#ga1f7545b8dc33bb97982731cb9d427a69", null ], + [ "__UHSUB8", "group__intrinsic___s_i_m_d__gr.html#ga48a55df1c3e73923b73819d7c19b392d", null ], + [ "__UQADD16", "group__intrinsic___s_i_m_d__gr.html#ga9e2cc5117e79578a08b25f1e89022966", null ], + [ "__UQADD8", "group__intrinsic___s_i_m_d__gr.html#gafa9af218db3934a692fb06fa728d8031", null ], + [ "__UQASX", "group__intrinsic___s_i_m_d__gr.html#ga5eff3ae5eabcd73f3049996ca391becb", null ], + [ "__UQSAX", "group__intrinsic___s_i_m_d__gr.html#gadecfdfabc328d8939d49d996f2fd4482", null ], + [ "__UQSUB16", "group__intrinsic___s_i_m_d__gr.html#ga5ec4e2e231d15e5c692233feb3806187", null ], + [ "__UQSUB8", "group__intrinsic___s_i_m_d__gr.html#ga9736fe816aec74fe886e7fb949734eab", null ], + [ "__USAD8", "group__intrinsic___s_i_m_d__gr.html#gac8855c07044239ea775c8128013204f0", null ], + [ "__USADA8", "group__intrinsic___s_i_m_d__gr.html#gad032bd21f013c5d29f5fcb6b0f02bc3f", null ], + [ "__USAT16", "group__intrinsic___s_i_m_d__gr.html#ga967f516afff5900cf30f1a81907cdd89", null ], + [ "__USAX", "group__intrinsic___s_i_m_d__gr.html#ga578a082747436772c482c96d7a58e45e", null ], + [ "__USUB16", "group__intrinsic___s_i_m_d__gr.html#ga9f2b77e11fc4a77b26c36c423ed45b4e", null ], + [ "__USUB8", "group__intrinsic___s_i_m_d__gr.html#gacb7257dc3b8e9acbd0ef0e31ff87d4b8", null ], + [ "__UXTAB16", "group__intrinsic___s_i_m_d__gr.html#gad25ce96db0f17096bbd815f4817faf09", null ], + [ "__UXTB16", "group__intrinsic___s_i_m_d__gr.html#gab41d713653b16f8d9fef44d14e397228", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group__peripheral__gr.html b/CMSIS/Documentation/Core/html/group__peripheral__gr.html new file mode 100644 index 0000000..fdd97e4 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__peripheral__gr.html @@ -0,0 +1,351 @@ + + + + + +Peripheral Access +CMSIS-CORE: Peripheral Access + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
Peripheral Access
+
+
+ +

Describes naming conventions, requirements, and optional features for accessing peripherals. +More...

+ + + + + + + + +

+Macros

#define _VAL2FLD(field, value)
 Mask and shift a bit field value for assigning to result to a peripheral register.
 
#define _FLD2VAL(field, value)
 Extract from a peripheral register value the a bit field value.
 
+

Description

+

The section below describes the naming conventions, requirements, and optional features for accessing device specific peripherals. Most of the rules also apply to the core peripherals. The Device Header File <device.h> contains typically these definition and also includes the core specific header files.

+

Most of the definitions can be generated using the CMSIS-SVD System View Description for Peripherals. Refer to SVDConv.exe for more information.

+

Each peripheral provides a data type definition with a name that is composed of:

+
    +
  • prefix <device abbreviation>_
  • +
  • <peripheral name>
  • +
  • postfix _Type or _TypeDef to identify a type definition.
  • +
+

Example: LPC_UART_TypeDef for the device LPC and the peripheral UART.

+

The data type definition uses standard C data types defined by the ANSI C header file <stdint.h>.

+
    +
  • IO Type Qualifiers are used to specify the access to peripheral variables. + + + + + + + + + + + + + + +
    IO Type Qualifier Type Description
    __IM Struct member Defines 'read only' permissions
    __OM Struct member Defines 'write only' permissions
    __IOM Struct member Defines 'read / write' permissions
    __I Scalar variable Defines 'read only' permissions
    __O Scalar variable Defines 'write only' permissions
    __IO Scalar variable Defines 'read / write' permissions
    +
  • +
+
Note
__IM, __OM, __IOM are added in CMSIS-Core V4.20 to enhance support for C++. Prior version used __I, __O, __IO also for struct member definitions.
+

The typedef <device abbreviation>_UART_TypeDef shown below defines the generic register layout for all UART channels in a device.

+
typedef struct
+
{
+
union {
+
__IM uint8_t RBR; /* Offset: 0x000 (R/ ) Receiver Buffer Register */
+
__OM uint8_t THR; /* Offset: 0x000 ( /W) Transmit Holding Register */
+
__IOM uint8_t DLL; /* Offset: 0x000 (R/W) Divisor Latch LSB */
+
uint32_t RESERVED0;
+
};
+
union {
+
__IOM uint8_t DLM; /* Offset: 0x004 (R/W) Divisor Latch MSB */
+
__IOM uint32_t IER; /* Offset: 0x004 (R/W) Interrupt Enable Register */
+
};
+
union {
+
__IM uint32_t IIR; /* Offset: 0x008 (R/ ) Interrupt ID Register */
+
__OM uint8_t FCR; /* Offset: 0x008 ( /W) FIFO Control Register */
+
};
+
__IOM uint8_t LCR; /* Offset: 0x00C (R/W) Line Control Register */
+
uint8_t RESERVED1[7];
+
__IM uint8_t LSR; /* Offset: 0x014 (R/ ) Line Status Register */
+
uint8_t RESERVED2[7];
+
__IOM uint8_t SCR; /* Offset: 0x01C (R/W) Scratch Pad Register */
+
uint8_t RESERVED3[3];
+
__IOM uint32_t ACR; /* Offset: 0x020 (R/W) Autobaud Control Register */
+
__IOM uint8_t ICR; /* Offset: 0x024 (R/W) IrDA Control Register */
+
uint8_t RESERVED4[3];
+
__IOM uint8_t FDR; /* Offset: 0x028 (R/W) Fractional Divider Register */
+
uint8_t RESERVED5[7];
+
__IOM uint8_t TER; /* Offset: 0x030 (R/W) Transmit Enable Register */
+
uint8_t RESERVED6[39];
+
__IM uint8_t FIFOLVL; /* Offset: 0x058 (R/ ) FIFO Level Register */
+
} LPC_UART_TypeDef;
+

To access the registers of the UART defined above, pointers to this register structure are defined. If more instances of a peripheral exist, the variables have a postfix (digit or letter) that identifies the peripheral.

+

Example: In this example LPC_UART2 and LPC_UART3 are two pointers to UARTs defined with above register structure.
+

+
#define LPC_UART2 ((LPC_UART_TypeDef *) LPC_UART2_BASE )
+
#define LPC_UART3 ((LPC_UART_TypeDef *) LPC_UART3_BASE )
+

The registers in the various UARTs can now be referred in the user code as shown below:
+

+
val = LPC_UART2->DR // is the data register of UART1.
+

+

+Minimal Requirements

+

To access the peripheral registers and related function in a device, the files device.h and core_cm#.h define as a minimum:
+
+

+
    +
  • The Register Layout Typedef for each peripheral that defines all register names. RESERVED is used to introduce space into the structure for adjusting the addresses of the peripheral registers.
    +
    + Example:
    typedef struct
    +
    {
    +
    __IOM uint32_t CTRL; /* Offset: 0x000 (R/W) SysTick Control and Status Register */
    +
    __IOM uint32_t LOAD; /* Offset: 0x004 (R/W) SysTick Reload Value Register */
    +
    __IOM uint32_t VAL; /* Offset: 0x008 (R/W) SysTick Current Value Register */
    +
    __IM uint32_t CALIB; /* Offset: 0x00C (R/ ) SysTick Calibration Register */
    + +
  • +
+
    +
  • Base Address for each peripheral (in case of multiple peripherals that use the same register layout typedef multiple base addresses are defined).
    +
    + Example:
    #define SysTick_BASE (SCS_BASE + 0x0010) /* SysTick Base Address */
    +
  • +
+
    +
  • Access Definitions for each peripheral. In case of multiple peripherals that are using the same register layout typdef, multiple access definitions exist (LPC_UART0, LPC_UART2).
    +
    + Example:
    #define SysTick ((SysTick_Type *) Systick_BASE) /* SysTick access definition */
    +
  • +
+

These definitions allow accessing peripheral registers with simple assignments.

+
    +
  • Example:
    +
    SysTick->CTRL = 0;
    +
  • +
+
+

+Optional Features

+

Optionally, the file device.h may define:

+
    +
  • Register Bit Fields and #define constants that simplify access to peripheral registers. These constants may define bit-positions or other specific patterns that are required for programming peripheral registers. The identifiers should start with <device abbreviation>_ and <peripheral name>_. It is recommended to use CAPITAL letters for #define constants.
  • +
+
    +
  • More complex functions (i.e. status query before a sending register is accessed). Again, these functions start with <device abbreviation>_ and <peripheral name>_.
  • +
+
+

+Register Bit Fields

+

For Core Register, macros define the position and the mask value for a bit field. It is recommended to create such definitions also for other peripheral registers.

+

Example:

+

Bit field definitions for register CPUID in SCB (System Control Block).

+
/* SCB CPUID Register Definitions */
+
#define SCB_CPUID_IMPLEMENTER_Pos 24U
+
#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos)
+
#define SCB_CPUID_VARIANT_Pos 20U
+
#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos)
+
#define SCB_CPUID_ARCHITECTURE_Pos 16U
+
#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos)
+
#define SCB_CPUID_PARTNO_Pos 4U
+
#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos)
+
#define SCB_CPUID_REVISION_Pos 0U
+
#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/)
+

The macros _VAL2FLD(field, value) and _FLD2VAL(field, value) enable access to bit fields.

+

Macro Definition Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define _FLD2VAL( field,
 value 
)
+
+
Parameters
+ + + +
fieldname of bit field.
valuevalue of the register
+
+
+

The macro _FLD2VAL uses the #define's _Pos and _Msk of the related bit field to extract the value of a bit field from a register.

+

Example:

+
id = = _FLD2VAL(SCB_CPUID_REVISION, SCB->CPUID);
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
#define _VAL2FLD( field,
 value 
)
+
+
Parameters
+ + + +
fieldname of bit field.
valuevalue for the bit field.
+
+
+

The macro _VAL2FLD uses the #define's _Pos and _Msk of the related bit field to shift bit-field values for assigning to a register.

+

Example:

+
SCB->CPUID = _VAL2FLD(SCB_CPUID_REVISION, 0x3) | _VAL2FLD(SCB_CPUID_VARIANT, 0x3);
+
+
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group__peripheral__gr.js b/CMSIS/Documentation/Core/html/group__peripheral__gr.js new file mode 100644 index 0000000..39b83c7 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__peripheral__gr.js @@ -0,0 +1,5 @@ +var group__peripheral__gr = +[ + [ "_FLD2VAL", "group__peripheral__gr.html#ga139b6e261c981f014f386927ca4a8444", null ], + [ "_VAL2FLD", "group__peripheral__gr.html#ga286e3b913dbd236c7f48ea70c8821f4e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/group__system__init__gr.html b/CMSIS/Documentation/Core/html/group__system__init__gr.html new file mode 100644 index 0000000..91fd650 --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__system__init__gr.html @@ -0,0 +1,230 @@ + + + + + +System and Clock Configuration +CMSIS-CORE: System and Clock Configuration + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
System and Clock Configuration
+
+
+ +

Describes system_device.c file that contains functions for system and clock setup. +More...

+ + + + + + + + +

+Functions

void SystemInit (void)
 Function to Initialize the system.
 
void SystemCoreClockUpdate (void)
 Function to update the variable SystemCoreClock.
 
+ + + + +

+Variables

uint32_t SystemCoreClock
 Variable to hold the system core clock value.
 
+

Description

+

ARM provides a template file system_device.c that must be adapted by the silicon vendor to match their actual device. As a minimum requirement, this file must provide:

+
    +
  • A device-specific system configuration function, SystemInit().
  • +
  • A global variable that contains the system frequency, SystemCoreClock.
  • +
+

The file configures the device and, typically, initializes the oscillator (PLL) that is part of the microcontroller device. This file might export other functions or variables that provide a more flexible configuration of the microcontroller system.

+

+Code Example

+

The code below shows the usage of the variable SystemCoreClock and the functions SystemInit() and SystemCoreClockUpdate() with an LPC1700.

+
#include "LPC17xx.h"
+
+
uint32_t coreClock_1 = 0; /* Variables to store core clock values */
+
uint32_t coreClock_2 = 0;
+
+
+
int main (void) {
+
+
coreClock_1 = SystemCoreClock; /* Store value of predefined SystemCoreClock */
+
+
SystemCoreClockUpdate(); /* Update SystemCoreClock according to register settings */
+
+
coreClock_2 = SystemCoreClock; /* Store value of calculated SystemCoreClock */
+
+
if (coreClock_2 != coreClock_1) { /* Without changing the clock setting both core clock values should be the same */
+
// Error Handling
+
}
+
+
while(1);
+
}
+

Function Documentation

+ +
+
+ + + + + + + + +
void SystemCoreClockUpdate (void )
+
+

Updates the variable SystemCoreClock and must be called whenever the core clock is changed during program execution. The function evaluates the clock register settings and calculates the current core clock.

+ +
+
+ +
+
+ + + + + + + + +
void SystemInit (void )
+
+

Initializes the microcontroller system. Typically, this function configures the oscillator (PLL) that is part of the microcontroller device. For systems with a variable clock speed, it updates the variable SystemCoreClock. SystemInit is called from the file startup_device.

+ +
+
+

Variable Documentation

+ +
+
+ + + + +
uint32_t SystemCoreClock
+
+

Holds the system core clock, which is the system clock frequency supplied to the SysTick timer and the processor core clock. This variable can be used by debuggers to query the frequency of the debug timer or to configure the trace clock speed.

+
Attention
Compilers must be configured to avoid removing this variable in case the application program is not using it. Debugging systems require the variable to be physically present in memory so that it can be examined to configure the debugger.
+ +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/group__system__init__gr.js b/CMSIS/Documentation/Core/html/group__system__init__gr.js new file mode 100644 index 0000000..1ed21ea --- /dev/null +++ b/CMSIS/Documentation/Core/html/group__system__init__gr.js @@ -0,0 +1,6 @@ +var group__system__init__gr = +[ + [ "SystemCoreClockUpdate", "group__system__init__gr.html#gae0c36a9591fe6e9c45ecb21a794f0f0f", null ], + [ "SystemInit", "group__system__init__gr.html#ga93f514700ccf00d08dbdcff7f1224eb2", null ], + [ "SystemCoreClock", "group__system__init__gr.html#gaa3cd3e43291e81e795d642b79b6088e6", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/index.html b/CMSIS/Documentation/Core/html/index.html new file mode 100644 index 0000000..0799a18 --- /dev/null +++ b/CMSIS/Documentation/Core/html/index.html @@ -0,0 +1,181 @@ + + + + + +Overview +CMSIS-CORE: Overview + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Overview
+
+
+

CMSIS-CORE implements the basic run-time system for a Cortex-M device and gives the user access to the processor core and the device peripherals. In detail it defines:

+
    +
  • Hardware Abstraction Layer (HAL) for Cortex-M processor registers with standardized definitions for the SysTick, NVIC, System Control Block registers, MPU registers, FPU registers, and core access functions.
  • +
  • System exception names to interface to system exceptions without having compatibility issues.
  • +
  • Methods to organize header files that makes it easy to learn new Cortex-M microcontroller products and improve software portability. This includes naming conventions for device-specific interrupts.
  • +
  • Methods for system initialization to be used by each MCU vendor. For example, the standardized SystemInit() function is essential for configuring the clock system of the device.
  • +
  • Intrinsic functions used to generate CPU instructions that are not supported by standard C functions.
  • +
  • A variable to determine the system clock frequency which simplifies the setup the SysTick timer.
  • +
+

The following sections provide details about the CMSIS-CORE:

+ +
+

CMSIS-CORE in ARM::CMSIS Pack

+

Files relevant to CMSIS-CORE are present in the following ARM::CMSIS directories:

+ + + + + + + + + + + +
File/Folder Content
CMSIS\Documentation\Core This documentation
CMSIS\Include CMSIS-CORE header files (for example core_cm3.h, core_cmInstr.h, etc.)
Device ARM reference implementations of Cortex-M devices
Device\_Template_Vendor Template Files for extension by silicon vendors
+
+

+Cortex-M Reference Manuals

+

The Cortex-M Reference Manuals are generic user guides for devices that implement the various ARM Cortex-M processors. These manuals contain the programmers model and detailed information about the core peripherals.

+ +
+

+Tested and Verified Toolchains

+

The CMSIS-CORE Template Files supplied by ARM have been tested and verified with the following toolchains:

+
    +
  • ARM: MDK-ARM Version 5.16
  • +
  • GNU: GNU Tools ARM Embedded 4.9 2015.q2
  • +
  • IAR: IAR Embedded Workbench Kickstart Edition V6.10
  • +
+
+
+
+ + + + diff --git a/CMSIS/Documentation/Core/html/jquery.js b/CMSIS/Documentation/Core/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/Core/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
+
+
Reference
+
+
+
Here is a list of all modules:
+
[detail level 12]
+ + + + + + + + + + + + +
oPeripheral AccessDescribes naming conventions, requirements, and optional features for accessing peripherals
oSystem and Clock ConfigurationDescribes system_device.c file that contains functions for system and clock setup
oInterrupts and Exceptions (NVIC)Explains how to use interrupts and exceptions and access functions for the Nested Vector Interrupt Controller (NVIC)
oCore Register AccessFunctions to access the Cortex-M core registers
oIntrinsic Functions for CPU InstructionsFunctions that generate specific Cortex-M CPU Instructions
oIntrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7]Access to dedicated SIMD instructions
oSystick Timer (SYSTICK)Initialize and start the SysTick timer
oDebug AccessDebug Access to the Instrumented Trace Macrocell (ITM)
oFPU Functions (only Cortex-M7)Functions that relate to the Floating-Point Arithmetic Unit
\Cache Functions (only Cortex-M7)Functions for Instruction and Data Cache
 oI-Cache FunctionsFunctions for the instruction cache
 \D-Cache FunctionsFunctions for the data cache
+ + + + + + + diff --git a/CMSIS/Documentation/Core/html/modules.js b/CMSIS/Documentation/Core/html/modules.js new file mode 100644 index 0000000..16d8338 --- /dev/null +++ b/CMSIS/Documentation/Core/html/modules.js @@ -0,0 +1,13 @@ +var modules = +[ + [ "Peripheral Access", "group__peripheral__gr.html", "group__peripheral__gr" ], + [ "System and Clock Configuration", "group__system__init__gr.html", "group__system__init__gr" ], + [ "Interrupts and Exceptions (NVIC)", "group___n_v_i_c__gr.html", "group___n_v_i_c__gr" ], + [ "Core Register Access", "group___core___register__gr.html", "group___core___register__gr" ], + [ "Intrinsic Functions for CPU Instructions", "group__intrinsic___c_p_u__gr.html", "group__intrinsic___c_p_u__gr" ], + [ "Intrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7]", "group__intrinsic___s_i_m_d__gr.html", "group__intrinsic___s_i_m_d__gr" ], + [ "Systick Timer (SYSTICK)", "group___sys_tick__gr.html", "group___sys_tick__gr" ], + [ "Debug Access", "group___i_t_m___debug__gr.html", "group___i_t_m___debug__gr" ], + [ "FPU Functions (only Cortex-M7)", "group__fpu__functions__m7.html", "group__fpu__functions__m7" ], + [ "Cache Functions (only Cortex-M7)", "group__cache__functions__m7.html", "group__cache__functions__m7" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/nav_f.png b/CMSIS/Documentation/Core/html/nav_f.png new file mode 100644 index 0000000..a8f400a Binary files /dev/null and b/CMSIS/Documentation/Core/html/nav_f.png differ diff --git a/CMSIS/Documentation/Core/html/nav_g.png b/CMSIS/Documentation/Core/html/nav_g.png new file mode 100644 index 0000000..2093a23 Binary files /dev/null and b/CMSIS/Documentation/Core/html/nav_g.png differ diff --git a/CMSIS/Documentation/Core/html/nav_h.png b/CMSIS/Documentation/Core/html/nav_h.png new file mode 100644 index 0000000..b6c7f01 Binary files /dev/null and b/CMSIS/Documentation/Core/html/nav_h.png differ diff --git a/CMSIS/Documentation/Core/html/navtree.css b/CMSIS/Documentation/Core/html/navtree.css new file mode 100644 index 0000000..8001f82 --- /dev/null +++ b/CMSIS/Documentation/Core/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 300px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/CMSIS/Documentation/Core/html/navtree.js b/CMSIS/Documentation/Core/html/navtree.js new file mode 100644 index 0000000..8e46618 --- /dev/null +++ b/CMSIS/Documentation/Core/html/navtree.js @@ -0,0 +1,522 @@ +var NAVTREE = +[ + [ "CMSIS-CORE", "index.html", [ + [ "Overview", "index.html", null ], + [ "Revision History of CMSIS-CORE", "core_revision_history.html", null ], + [ "Using CMSIS in Embedded Applications", "_using_pg.html", "_using_pg" ], + [ "Template Files", "_templates_pg.html", "_templates_pg" ], + [ "MISRA-C:2004 Compliance Exceptions", "_c_o_r_e__m_i_s_r_a__exceptions_pg.html", null ], + [ "Register Mapping", "_reg_map_pg.html", null ], + [ "Reference", "modules.html", "modules" ], + [ "Data Structures", "annotated.html", "annotated" ], + [ "Data Fields", "functions.html", [ + [ "All", "functions.html", null ], + [ "Variables", "functions_vars.html", null ] + ] ] + ] ] +]; + +var NAVTREEINDEX = +[ +"_c_o_r_e__m_i_s_r_a__exceptions_pg.html", +"struct_m_p_u___type.html#a4d81d6aa73a9287bafba2bcc5ffc6d18" +]; + +var SYNCONMSG = 'click to disable panel synchronisation'; +var SYNCOFFMSG = 'click to enable panel synchronisation'; +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + if (node.parentNode && node.parentNode.parentNode) { + createIndent(o,domNode,node.parentNode,level+1); + } + var imgNode = document.createElement("img"); + imgNode.width = 16; + imgNode.height = 22; + if (level==0 && node.childrenData) { + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2plastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2pnode.png"; + } + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + domNode.appendChild(imgNode); + } + if (level==0) { + if (node.isLast) { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2plastnode.png"; + } else { + imgNode.src = node.relpath+"ftv2lastnode.png"; + domNode.appendChild(imgNode); + } + } else { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2pnode.png"; + } else { + imgNode.src = node.relpath+"ftv2node.png"; + domNode.appendChild(imgNode); + } + } + } else { + if (node.isLast) { + imgNode.src = node.relpath+"ftv2blank.png"; + } else { + imgNode.src = node.relpath+"ftv2vertline.png"; + } + } + imgNode.border = "0"; +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath($(location).attr('pathname')); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : '#'; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var pos, anchor = $(aname), docContent = $('#doc-content'); + if (anchor.parent().attr('class')=='memItemLeft') { + pos = anchor.parent().position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + window.location.replace(aname); + }); + } + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var anchor = $($(location).attr('hash')); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+ + window.location.hash.substring(1)+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parents().slice(2).prop('tagName')=='TR') { + glowEffect(anchor.parents('div.memitem'),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).show(); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1]; + else hash=''; + } + if (root==NAVTREE[0][1]) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + //root=root.replace(/_source\./,'.'); // source link to doc link + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash')); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + navTo(o,toroot,window.location.hash,relpath); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath($(location).attr('pathname'))+':'+ + $(location).attr('hash').substring(1); + a=$('.item a[class$="'+clslink+'"]'); + } + if (a==null || !$(a).parent().parent().hasClass('selected')){ + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + } + var link=stripPath2($(location).attr('pathname')); + navTo(o,link,$(location).attr('hash'),relpath); + } + }) + + $(window).load(showRoot); +} + diff --git a/CMSIS/Documentation/Core/html/navtreeindex0.js b/CMSIS/Documentation/Core/html/navtreeindex0.js new file mode 100644 index 0000000..c87a2ba --- /dev/null +++ b/CMSIS/Documentation/Core/html/navtreeindex0.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX0 = +{ +"_c_o_r_e__m_i_s_r_a__exceptions_pg.html":[4], +"_reg_map_pg.html":[5], +"_templates_pg.html":[3], +"_templates_pg.html#adapt_template_files_sec":[3,1], +"_templates_pg.html#template_files_sec":[3,0], +"_using__a_r_m_pg.html":[2,2], +"_using__a_r_m_pg.html#Using_ARM_Lib_sec":[2,2,0], +"_using__c_m_s_i_s.html":[2,0], +"_using__v_t_o_r_pg.html":[2,1], +"_using_pg.html":[2], +"annotated.html":[7], +"core_revision_history.html":[1], +"device_h_pg.html":[3,4], +"device_h_pg.html#core_config_sect":[3,4,1], +"device_h_pg.html#core_version_sect":[3,4,2], +"device_h_pg.html#device_access":[3,4,3], +"device_h_pg.html#device_h_sec":[3,4,4], +"device_h_pg.html#interrupt_number_sec":[3,4,0], +"functions.html":[8,0], +"functions_vars.html":[8,1], +"group___core___register__gr.html":[6,3], +"group___core___register__gr.html#ga0bf9564ebc1613a8faba014275dac2a4":[6,3,19], +"group___core___register__gr.html#ga0f98dfbd252b89d12564472dbeba9c27":[6,3,3], +"group___core___register__gr.html#ga2c32fc5c7f8f07fb3d436c6f6fe4e8c8":[6,3,9], +"group___core___register__gr.html#ga32da759f46e52c95bcfbde5012260667":[6,3,5], +"group___core___register__gr.html#ga360c73eb7ffb16088556f9278953b882":[6,3,14], +"group___core___register__gr.html#ga48e5853f417e17a8a65080f6a605b743":[6,3,21], +"group___core___register__gr.html#ga62fa63d39cf22df348857d5f44ab64d9":[6,3,15], +"group___core___register__gr.html#ga6575d37863cec5d334864f93b5b783bf":[6,3,2], +"group___core___register__gr.html#ga6f26bd75ca7e3247f27b272acc10536b":[6,3,18], +"group___core___register__gr.html#ga70b4e1a6c1c86eb913fb9d6e8400156f":[6,3,20], +"group___core___register__gr.html#ga732e08184154f44a617963cc65ff95bd":[6,3,13], +"group___core___register__gr.html#ga799b5d9a2ae75e459264c8512c7c0e02":[6,3,11], +"group___core___register__gr.html#ga811c0012221ee918a75111ca84c4d5e7":[6,3,4], +"group___core___register__gr.html#ga914dfa8eff7ca53380dd54cf1d8bebd9":[6,3,12], +"group___core___register__gr.html#ga963cf236b73219ce78e965deb01b81a7":[6,3,6], +"group___core___register__gr.html#ga9d174f979b2f76fdb3228a9b338fd939":[6,3,0], +"group___core___register__gr.html#gaa5587cc09031053a40a35c14ec36078a":[6,3,17], +"group___core___register__gr.html#gaa78e4e6bf619a65e9f01b4af13fed3a8":[6,3,7], +"group___core___register__gr.html#gab898559392ba027814e5bbb5a98b38d2":[6,3,10], +"group___core___register__gr.html#gac64d37e7ff9de06437f9fb94bbab8b6c":[6,3,16], +"group___core___register__gr.html#gad6d7eca9ddd1d9072dd7b020cfe64905":[6,3,8], +"group___core___register__gr.html#gaeb8e5f7564a8ea23678fe3c987b04013":[6,3,1], +"group___dcache__functions__m7.html":[6,9,1], +"group___dcache__functions__m7.html#ga1b741def9e3b2ca97dc9ea49b8ce505c":[6,9,1,2], +"group___dcache__functions__m7.html#ga503ef7ef58c0773defd15a82f6336c09":[6,9,1,7], +"group___dcache__functions__m7.html#ga55583e3065c6eabca204b8b89b121c4c":[6,9,1,0], +"group___dcache__functions__m7.html#ga630131b2572eaa16b569ed364dfc895e":[6,9,1,3], +"group___dcache__functions__m7.html#ga63aa640d9006021a796a5dcf9c7180b6":[6,9,1,5], +"group___dcache__functions__m7.html#ga6468170f90d270caab8116e7a4f0b5fe":[6,9,1,4], +"group___dcache__functions__m7.html#ga696fadbf7b9cc71dad42fab61873a40d":[6,9,1,1], +"group___dcache__functions__m7.html#gace2d30db08887d0bdb818b8a785a5ce6":[6,9,1,6], +"group___i_t_m___debug__gr.html":[6,7], +"group___i_t_m___debug__gr.html#ga12e68e55a7badc271b948d6c7230b2a8":[6,7,3], +"group___i_t_m___debug__gr.html#ga37b8f41cae703b5ff6947e271065558c":[6,7,1], +"group___i_t_m___debug__gr.html#ga7f9bbabd9756d1a7eafb2d9bf27e0535":[6,7,0], +"group___i_t_m___debug__gr.html#gaaa7c716331f74d644bf6bf25cd3392d1":[6,7,2], +"group___icache__functions__m7.html":[6,9,0], +"group___icache__functions__m7.html#ga50d373a785edd782c5de5a3b55e30ff3":[6,9,0,2], +"group___icache__functions__m7.html#gaba757390852f95b3ac2d8638c717d8d8":[6,9,0,0], +"group___icache__functions__m7.html#gaf9e7c6c8e16ada1f95e5bf5a03505b68":[6,9,0,1], +"group___n_v_i_c__gr.html":[6,2], +"group___n_v_i_c__gr.html#ga0688c59605b119c53c71b2505ab23eb5":[6,2,5], +"group___n_v_i_c__gr.html#ga1b47d17e90b6a03e7bd1ec6a0d549b46":[6,2,13], +"group___n_v_i_c__gr.html#ga382ad6bedd6eecfdabd1b94dd128a01a":[6,2,1], +"group___n_v_i_c__gr.html#ga3b885147ef9965ecede49614de8df9d2":[6,2,10], +"group___n_v_i_c__gr.html#ga530ad9fda2ed1c8b70e439ecfe80591f":[6,2,4], +"group___n_v_i_c__gr.html#ga5bb7f43ad92937c039dee3d36c3c2798":[6,2,11], +"group___n_v_i_c__gr.html#ga736ba13a76eb37ef6e2c253be8b0331c":[6,2,3], +"group___n_v_i_c__gr.html#ga7e1129cd8a196f4284d41db3e82ad5c8":[6,2,0], +"group___n_v_i_c__gr.html#ga95a8329a680b051ecf3ee8f516acc662":[6,2,7], +"group___n_v_i_c__gr.html#gaa81b19849367d3cdb95ac108c500fa78":[6,2,9], +"group___n_v_i_c__gr.html#gab18fb9f6c5f4c70fdd73047f0f7c8395":[6,2,8], +"group___n_v_i_c__gr.html#gad3cbca1be7a4726afa9448a9acd89377":[6,2,2], +"group___n_v_i_c__gr.html#gad78f447e891789b4d8f2e5b21eeda354":[6,2,12], +"group___n_v_i_c__gr.html#gadf4252e600661fd762cfc0d1a9f5b892":[6,2,6], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a03c3cc89984928816d81793fc7bce4a2":[6,2,0,7], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a33ff1cf7098de65d61b6354fee6cd5aa":[6,2,0,2], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a4ce820b3cc6cf3a796b41aadc0cf1237":[6,2,0,5], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6895237c9443601ac832efa635dd8bbf":[6,2,0,4], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6dbff8f8543325f3474cbae2446776e7":[6,2,0,8], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a853e0f318108110e0527f29733d11f86":[6,2,0,10], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8693500eff174f16119e96234fee73af":[6,2,0,3], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8e033fcef7aed98a31c60a7de206722c":[6,2,0,6], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8aa62e040960b4beb6cba107e4703c12d2":[6,2,0,9], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ab1a222a34a32f0ef5ac65e714efc1f85":[6,2,0,1], +"group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ade177d9c70c89e084093024b932a4e30":[6,2,0,0], +"group___sys_tick__gr.html":[6,6], +"group___sys_tick__gr.html#gabe47de40e9b0ad465b752297a9d9f427":[6,6,0], +"group__cache__functions__m7.html":[6,9], +"group__fpu__functions__m7.html":[6,8], +"group__fpu__functions__m7.html#ga6bcad99ce80a0e7e4ddc6f2379081756":[6,8,0], +"group__intrinsic___c_p_u__gr.html":[6,4], +"group__intrinsic___c_p_u__gr.html#ga0a354bdf71caa52f081a4a54e84c8d2a":[6,4,23], +"group__intrinsic___c_p_u__gr.html#ga1ec006e6d79063363cb0c2a2e0b3adbe":[6,4,16], +"group__intrinsic___c_p_u__gr.html#ga2b5d93b8e461755b1072a03df3f1722e":[6,4,25], +"group__intrinsic___c_p_u__gr.html#ga335deaaa7991490e1450cb7d1e4c5197":[6,4,24], +"group__intrinsic___c_p_u__gr.html#ga354c5ac8870cc3dfb823367af9c4b412":[6,4,1], +"group__intrinsic___c_p_u__gr.html#ga3c34da7eb16496ae2668a5b95fa441e7":[6,4,19], +"group__intrinsic___c_p_u__gr.html#ga4717abc17af5ba29b1e4c055e0a0d9b8":[6,4,14], +"group__intrinsic___c_p_u__gr.html#ga616504f5da979ba8a073d428d6e8d5c7":[6,4,11], +"group__intrinsic___c_p_u__gr.html#ga625bc4ac0b1d50de9bcd13d9f050030e":[6,4,26], +"group__intrinsic___c_p_u__gr.html#ga76bbe4374a5912362866cdc1ded4064a":[6,4,27], +"group__intrinsic___c_p_u__gr.html#ga7d9dddda18805abbf51ac21c639845e1":[6,4,20], +"group__intrinsic___c_p_u__gr.html#ga90884c591ac5d73d6069334eba9d6c02":[6,4,2], +"group__intrinsic___c_p_u__gr.html#ga92f5621626711931da71eaa8bf301af7":[6,4,0], +"group__intrinsic___c_p_u__gr.html#ga93c09b4709394d81977300d5f84950e5":[6,4,5], +"group__intrinsic___c_p_u__gr.html#ga9464d75db32846aa8295c3c3adfacb41":[6,4,6], +"group__intrinsic___c_p_u__gr.html#ga9e3ac13d8dcf4331176b624cf6234a7e":[6,4,7], +"group__intrinsic___c_p_u__gr.html#ga9feffc093d6f68b120d592a7a0d45a15":[6,4,8], +"group__intrinsic___c_p_u__gr.html#gaa762b8bc5634ce38cb14d62a6b2aee32":[6,4,10], +"group__intrinsic___c_p_u__gr.html#gaab6482d1f59f59e2b6b7efc1af391c99":[6,4,22], +"group__intrinsic___c_p_u__gr.html#gab1c9b393641dc2d397b3408fdbe72b96":[6,4,3], +"group__intrinsic___c_p_u__gr.html#gabd78840a0f2464905b7cec791ebc6a4c":[6,4,9], +"group__intrinsic___c_p_u__gr.html#gac09134f1bf9c49db07282001afcc9380":[6,4,18], +"group__intrinsic___c_p_u__gr.html#gac71fad9f0a91980fecafcb450ee0a63e":[6,4,12], +"group__intrinsic___c_p_u__gr.html#gacb2a8ca6eae1ba4b31161578b720c199":[6,4,4], +"group__intrinsic___c_p_u__gr.html#gad3efec76c3bfa2b8528ded530386c563":[6,4,28], +"group__intrinsic___c_p_u__gr.html#gad41aa59c92c0a165b7f98428d3320cd5":[6,4,21], +"group__intrinsic___c_p_u__gr.html#gad6f9f297f6b91a995ee199fbc796b863":[6,4,13], +"group__intrinsic___c_p_u__gr.html#gaed91dfbf3d7d7b7fba8d912fcbeaad88":[6,4,29], +"group__intrinsic___c_p_u__gr.html#gaeef6f853b6df3a365c838ee5b49a7a26":[6,4,15], +"group__intrinsic___c_p_u__gr.html#gaf66beb577bb9d90424c3d1d7f684c024":[6,4,17], +"group__intrinsic___s_i_m_d__gr.html":[6,5], +"group__intrinsic___s_i_m_d__gr.html#ga028f0732b961fb6e5209326fb3855261":[6,5,44], +"group__intrinsic___s_i_m_d__gr.html#ga039142a5368840683cf329cb55b73f84":[6,5,31], +"group__intrinsic___s_i_m_d__gr.html#ga09e129e6613329aab87c89f1108b7ed7":[6,5,45], +"group__intrinsic___s_i_m_d__gr.html#ga15d8899a173effb8ad8c7268da32b60e":[6,5,14], +"group__intrinsic___s_i_m_d__gr.html#ga17b873f246c9f5e9355760ffef3dad4a":[6,5,2], +"group__intrinsic___s_i_m_d__gr.html#ga1f7545b8dc33bb97982731cb9d427a69":[6,5,46], +"group__intrinsic___s_i_m_d__gr.html#ga31328467f0f91b8ff9ae9a01682ad3bf":[6,5,18], +"group__intrinsic___s_i_m_d__gr.html#ga38dce3dd13ba212e80ec3cff4abeb11a":[6,5,38], +"group__intrinsic___s_i_m_d__gr.html#ga3a14e5485e59bf0f23595b7c2a94eb0b":[6,5,43], +"group__intrinsic___s_i_m_d__gr.html#ga3ba259f8f05a36f7b88b469a71ffc096":[6,5,7], +"group__intrinsic___s_i_m_d__gr.html#ga4262f73be75efbac6b46ab7c71aa6cbc":[6,5,35], +"group__intrinsic___s_i_m_d__gr.html#ga48a55df1c3e73923b73819d7c19b392d":[6,5,47], +"group__intrinsic___s_i_m_d__gr.html#ga524575b442ea01aec10c762bf4d85fea":[6,5,15], +"group__intrinsic___s_i_m_d__gr.html#ga5290ce5564770ad124910d2583dc0a9e":[6,5,25], +"group__intrinsic___s_i_m_d__gr.html#ga5611f7314e0c8f53da377918dfbf42ee":[6,5,26], +"group__intrinsic___s_i_m_d__gr.html#ga578a082747436772c482c96d7a58e45e":[6,5,57], +"group__intrinsic___s_i_m_d__gr.html#ga5845084fd99c872e98cf5553d554de2a":[6,5,12], +"group__intrinsic___s_i_m_d__gr.html#ga5ec4e2e231d15e5c692233feb3806187":[6,5,52], +"group__intrinsic___s_i_m_d__gr.html#ga5eff3ae5eabcd73f3049996ca391becb":[6,5,50], +"group__intrinsic___s_i_m_d__gr.html#ga753493a65493880c28baa82c151a0d61":[6,5,9], +"group__intrinsic___s_i_m_d__gr.html#ga83e69ef81057d3cbd06863d729385187":[6,5,27], +"group__intrinsic___s_i_m_d__gr.html#ga87618799672e1511e33964bc71467eb3":[6,5,5], +"group__intrinsic___s_i_m_d__gr.html#ga95e666b82216066bf6064d1244e6883c":[6,5,33], +"group__intrinsic___s_i_m_d__gr.html#ga967f516afff5900cf30f1a81907cdd89":[6,5,56], +"group__intrinsic___s_i_m_d__gr.html#ga9736fe816aec74fe886e7fb949734eab":[6,5,53], +"group__intrinsic___s_i_m_d__gr.html#ga980353d2c72ebb879282e49f592fddc0":[6,5,41], +"group__intrinsic___s_i_m_d__gr.html#ga9c286d330f4fb29b256335add91eec9f":[6,5,21], +"group__intrinsic___s_i_m_d__gr.html#ga9d3bc5c539f9bd50f7d59ffa37ac6a65":[6,5,34], +"group__intrinsic___s_i_m_d__gr.html#ga9e2cc5117e79578a08b25f1e89022966":[6,5,48], +"group__intrinsic___s_i_m_d__gr.html#ga9f2b77e11fc4a77b26c36c423ed45b4e":[6,5,58], +"group__intrinsic___s_i_m_d__gr.html#gaa1160f0cf76d6aa292fbad54a1aa6b74":[6,5,39], +"group__intrinsic___s_i_m_d__gr.html#gab3d7fd00d113b20fb3741a17394da762":[6,5,40], +"group__intrinsic___s_i_m_d__gr.html#gab41d713653b16f8d9fef44d14e397228":[6,5,61], +"group__intrinsic___s_i_m_d__gr.html#gab41eb2b17512ab01d476fc9d5bd19520":[6,5,6], +"group__intrinsic___s_i_m_d__gr.html#gaba63bb52e1e93fb527e26f3d474da12e":[6,5,36], +"group__intrinsic___s_i_m_d__gr.html#gabb5bcba694bf17b141c32e6a8474f60e":[6,5,32], +"group__intrinsic___s_i_m_d__gr.html#gabd0b0e2da2e6364e176d051687702b86":[6,5,42], +"group__intrinsic___s_i_m_d__gr.html#gac20aa0f741d0a1494d58c531e38d5785":[6,5,11], +"group__intrinsic___s_i_m_d__gr.html#gac3ec7215b354d925a239f3b31df2b77b":[6,5,19], +"group__intrinsic___s_i_m_d__gr.html#gac540b4fc41d30778ba102d2a65db5589":[6,5,37], +"group__intrinsic___s_i_m_d__gr.html#gac8855c07044239ea775c8128013204f0":[6,5,54], +"group__intrinsic___s_i_m_d__gr.html#gacb7257dc3b8e9acbd0ef0e31ff87d4b8":[6,5,59], +"group__intrinsic___s_i_m_d__gr.html#gad032bd21f013c5d29f5fcb6b0f02bc3f":[6,5,55], +"group__intrinsic___s_i_m_d__gr.html#gad089605c16df9823a2c8aaa37777aae5":[6,5,8], +"group__intrinsic___s_i_m_d__gr.html#gad0bf46373a1c05aabf64517e84be5984":[6,5,10], +"group__intrinsic___s_i_m_d__gr.html#gad1adad1b3f2667328cc0db6c6b4f41cf":[6,5,23], +"group__intrinsic___s_i_m_d__gr.html#gad25ce96db0f17096bbd815f4817faf09":[6,5,60], +"group__intrinsic___s_i_m_d__gr.html#gad80e9b20c1736fd798f897362273a146":[6,5,22], +"group__intrinsic___s_i_m_d__gr.html#gadecfdfabc328d8939d49d996f2fd4482":[6,5,51], +"group__intrinsic___s_i_m_d__gr.html#gae0a649035f67627464fd80e7218c89d5":[6,5,16], +"group__intrinsic___s_i_m_d__gr.html#gae0c86f3298532183f3a29f5bb454d354":[6,5,20], +"group__intrinsic___s_i_m_d__gr.html#gae326e368a1624d2dfb4b97c626939257":[6,5,29], +"group__intrinsic___s_i_m_d__gr.html#gae83a53ec04b496304bed6d9fe8f7461b":[6,5,3], +"group__intrinsic___s_i_m_d__gr.html#gaea60757232f740ec6b09980eebb614ff":[6,5,28], +"group__intrinsic___s_i_m_d__gr.html#gaee6390f86965cb662500f690b0012092":[6,5,30], +"group__intrinsic___s_i_m_d__gr.html#gaefb8ebf3a54e197464da1ff69a44f4b5":[6,5,0], +"group__intrinsic___s_i_m_d__gr.html#gaf2f5a9132dcfc6d01d34cd971c425713":[6,5,4], +"group__intrinsic___s_i_m_d__gr.html#gaf4350af7f2030c36f43b2c104a9d16cd":[6,5,24], +"group__intrinsic___s_i_m_d__gr.html#gaf5448e591fe49161b6759b48aecb08fe":[6,5,13], +"group__intrinsic___s_i_m_d__gr.html#gafa9af218db3934a692fb06fa728d8031":[6,5,49], +"group__intrinsic___s_i_m_d__gr.html#gafadbd89c36b5addcf1ca10dd392db3e9":[6,5,17], +"group__intrinsic___s_i_m_d__gr.html#gafd8fe4a6d87e947caa81a69ec36c1666":[6,5,1], +"group__peripheral__gr.html":[6,0], +"group__peripheral__gr.html#ga139b6e261c981f014f386927ca4a8444":[6,0,0], +"group__peripheral__gr.html#ga286e3b913dbd236c7f48ea70c8821f4e":[6,0,1], +"group__system__init__gr.html":[6,1], +"group__system__init__gr.html#ga93f514700ccf00d08dbdcff7f1224eb2":[6,1,1], +"group__system__init__gr.html#gaa3cd3e43291e81e795d642b79b6088e6":[6,1,2], +"group__system__init__gr.html#gae0c36a9591fe6e9c45ecb21a794f0f0f":[6,1,0], +"index.html":[], +"index.html":[0], +"modules.html":[6], +"pages.html":[], +"startup_s_pg.html":[3,2], +"startup_s_pg.html#startup_s_sec":[3,2,0], +"struct_core_debug___type.html":[7,2], +"struct_core_debug___type.html#aab3cc92ef07bc1f04b3a3aa6db2c2d55":[7,2,0], +"struct_core_debug___type.html#ad63554e4650da91a8e79929cbb63db66":[7,2,3], +"struct_core_debug___type.html#aeb3126abc4c258a858f21f356c0df6ee":[7,2,2], +"struct_core_debug___type.html#af907cf64577eaf927dac6787df6dd98b":[7,2,1], +"struct_d_w_t___type.html":[7,3], +"struct_d_w_t___type.html#a00ac4d830dfe0070a656cda9baed170f":[7,3,16], +"struct_d_w_t___type.html#a069871233a8c1df03521e6d7094f1de4":[7,3,20], +"struct_d_w_t___type.html#a102eaa529d9098242851cb57c52b42d9":[7,3,6], +"struct_d_w_t___type.html#a1cfc48384ebd8fd8fb7e5d955aae6c97":[7,3,8], +"struct_d_w_t___type.html#a2a509d8505c37a3b64f6b24993df5f3f":[7,3,17], +"struct_d_w_t___type.html#a2c08096c82abe245c0fa97badc458154":[7,3,4], +"struct_d_w_t___type.html#a38714af6b7fa7c64d68f5e1efbe7a931":[7,3,1], +"struct_d_w_t___type.html#a416a54e2084ce66e5ca74f152a5ecc70":[7,3,22], +"struct_d_w_t___type.html#a52d4ff278fae6f9216c63b74ce328841":[7,3,12], +"struct_d_w_t___type.html#a579ae082f58a0317b7ef029b20f52889":[7,3,9], +"struct_d_w_t___type.html#a5ae6dde39989f27bae90afc2347deb46":[7,3,2], +"struct_d_w_t___type.html#a61c2965af5bc0643f9af65620b0e67c9":[7,3,0], +"struct_d_w_t___type.html#a6353ca1d1ad9bc1be05d3b5632960113":[7,3,18], +"struct_d_w_t___type.html#a821eb5e71f340ec077efc064cfc567db":[7,3,14], +"struct_d_w_t___type.html#a8556ca1c32590517602d92fe0cd55738":[7,3,21], +"struct_d_w_t___type.html#a85eb73d1848ac3f82d39d6c3e8910847":[7,3,3], +"struct_d_w_t___type.html#a8dfcf25675f9606aa305c46e85182e4e":[7,3,10], +"struct_d_w_t___type.html#a9fe20c16c5167ca61486caf6832686d1":[7,3,7], +"struct_d_w_t___type.html#aabf94936c9340e62fed836dcfb152405":[7,3,15], +"struct_d_w_t___type.html#ab1b60d6600c38abae515bab8e86a188f":[7,3,11], +"struct_d_w_t___type.html#acc05d89bdb1b4fe2fa499920ec02d0b1":[7,3,13], +"struct_d_w_t___type.html#add790c53410023b3b581919bb681fe2a":[7,3,5], +"struct_d_w_t___type.html#addd893d655ed90d40705b20170daac59":[7,3,19], +"struct_f_p_u___type.html":[7,4], +"struct_f_p_u___type.html#a4f19014defe6033d070b80af19ef627c":[7,4,3], +"struct_f_p_u___type.html#a55263b468d0f8e11ac77aec9ff87c820":[7,4,0], +"struct_f_p_u___type.html#a58d1989664a06db6ec2e122eefa9f04a":[7,4,2], +"struct_f_p_u___type.html#a66f8cfa49a423b480001a4e101bf842d":[7,4,4], +"struct_f_p_u___type.html#a7b2967b069046c8544adbbc1db143a36":[7,4,5], +"struct_f_p_u___type.html#af1b708c5e413739150df3d16ca3b7061":[7,4,1], +"struct_i_t_m___type.html":[7,6], +"struct_i_t_m___type.html#a04b9fbc83759cb818dfa161d39628426":[7,6,4], +"struct_i_t_m___type.html#a2c5ae30385b5f370d023468ea9914c0e":[7,6,1], +"struct_i_t_m___type.html#a5834885903a557674f078f3b71fa8bc8":[7,6,8], +"struct_i_t_m___type.html#a962a970dfd286cad7f8a8577e87d4ad3":[7,6,7], +"struct_i_t_m___type.html#acd03c6858f7b678dab6a6121462e7807":[7,6,5], +"struct_i_t_m___type.html#ae773bf9f9dac64e6c28b14aa39f74275":[7,6,9], +"struct_i_t_m___type.html#ae907229ba50538bf370fbdfd54c099a2":[7,6,6], +"struct_i_t_m___type.html#af4c205be465780a20098387120bdb482":[7,6,0], +"struct_i_t_m___type.html#af56b2f07bc6b42cd3e4d17e1b27cff7b":[7,6,3], +"struct_i_t_m___type.html#afffce5b93bbfedbaee85357d0b07ebce":[7,6,2], +"struct_m_p_u___type.html":[7,7], +"struct_m_p_u___type.html#a0433efc1383674bc8e86cc0e830b462d":[7,7,10], +"struct_m_p_u___type.html#a13d69b9bea12861383f3a62764b02f63":[7,7,6], +"struct_m_p_u___type.html#a345911aabecd1f7d93a1bff7738b0d86":[7,7,8] +}; diff --git a/CMSIS/Documentation/Core/html/navtreeindex1.js b/CMSIS/Documentation/Core/html/navtreeindex1.js new file mode 100644 index 0000000..d7651cb --- /dev/null +++ b/CMSIS/Documentation/Core/html/navtreeindex1.js @@ -0,0 +1,117 @@ +var NAVTREEINDEX1 = +{ +"struct_m_p_u___type.html#a4d81d6aa73a9287bafba2bcc5ffc6d18":[7,7,0], +"struct_m_p_u___type.html#a57dc551614932150e684fcc60590c2c4":[7,7,7], +"struct_m_p_u___type.html#a9236c629b7cf86f8bd2459c610fdf715":[7,7,1], +"struct_m_p_u___type.html#a9c0b2d3e3e16bb4e7dfa069652d5a155":[7,7,4], +"struct_m_p_u___type.html#aa800d44f4d3520cc891d7b8d711320c1":[7,7,9], +"struct_m_p_u___type.html#ab5a224ccd12ac55ddfe11d9eca42de48":[7,7,2], +"struct_m_p_u___type.html#ac60e0919871b66446a039838bcaaec3b":[7,7,3], +"struct_m_p_u___type.html#ac953770d38a7d322b971d93eb8a5b062":[7,7,5], +"struct_n_v_i_c___type.html":[7,8], +"struct_n_v_i_c___type.html#a0953af43af8ec7fd5869a1d826ce5b72":[7,8,7], +"struct_n_v_i_c___type.html#a245df8bac1da05c39eadabede9323203":[7,8,1], +"struct_n_v_i_c___type.html#a2de17698945ea49abd58a2d45bdc9c80":[7,8,6], +"struct_n_v_i_c___type.html#a37de89637466e007171c6b135299bc75":[7,8,12], +"struct_n_v_i_c___type.html#a4bca5452748ba84d64536fb6a5d795af":[7,8,0], +"struct_n_v_i_c___type.html#a4f753b4f824270175af045ac99bc12e8":[7,8,10], +"struct_n_v_i_c___type.html#a5c0e5d507ac3c1bd5cdaaf9bbd177790":[7,8,9], +"struct_n_v_i_c___type.html#a6d1daf7ab6f2ba83f57ff67ae6f571fe":[7,8,11], +"struct_n_v_i_c___type.html#a7ff7364a4260df67a2784811e8da4efd":[7,8,3], +"struct_n_v_i_c___type.html#a8d8f45d9c5c67bba3c153c55574bac95":[7,8,2], +"struct_n_v_i_c___type.html#a8f731a9f428efc86e8d311b52ce823d0":[7,8,5], +"struct_n_v_i_c___type.html#a9dd330835dbf21471e7b5be8692d77ab":[7,8,8], +"struct_n_v_i_c___type.html#a9fccef5a60a0d5e81fcd7869a6274f47":[7,8,4], +"struct_s_c_b___type.html":[7,9], +"struct_s_c_b___type.html#a0ca18ef984d132c6bf4d9b61cd00f05a":[7,9,11], +"struct_s_c_b___type.html#a0cda9e061b42373383418663092ad19a":[7,9,5], +"struct_s_c_b___type.html#a14ad254659362b9752c69afe3fd80934":[7,9,10], +"struct_s_c_b___type.html#a187a4578e920544ed967f98020fb8170":[7,9,20], +"struct_s_c_b___type.html#a191579bde0d21ff51d30a714fd887033":[7,9,9], +"struct_s_c_b___type.html#a21e08d546d8b641bee298a459ea73e46":[7,9,7], +"struct_s_c_b___type.html#a2d03d0b7cec2254f39eb1c46c7445e80":[7,9,13], +"struct_s_c_b___type.html#a2d6653b0b70faac936046a02809b577f":[7,9,4], +"struct_s_c_b___type.html#a3a4840c6fa4d1ee75544f4032c88ec34":[7,9,17], +"struct_s_c_b___type.html#a3f8e7e58be4e41c88dfa78f54589271c":[7,9,3], +"struct_s_c_b___type.html#a681c9d9e518b217976bef38c2423d83d":[7,9,15], +"struct_s_c_b___type.html#a7b5ae9741a99808043394c4743b635c4":[7,9,18], +"struct_s_c_b___type.html#a85768f4b3dbbc41fd760041ee1202162":[7,9,19], +"struct_s_c_b___type.html#a85dd6fe77aab17e7ea89a52c59da6004":[7,9,8], +"struct_s_c_b___type.html#aa11887804412bda283cc85a83fdafa7c":[7,9,14], +"struct_s_c_b___type.html#ab65372404ce64b0f0b35e2709429404e":[7,9,1], +"struct_s_c_b___type.html#ac6a860c1b8d8154a1f00d99d23b67764":[7,9,6], +"struct_s_c_b___type.html#ac89a5d9901e3748d22a7090bfca2bee6":[7,9,16], +"struct_s_c_b___type.html#ad3e5b8934c647eb1b7383c1894f01380":[7,9,2], +"struct_s_c_b___type.html#ae0136a2d2d3c45f016b2c449e92b2066":[7,9,12], +"struct_s_c_b___type.html#af084e1b2dad004a88668efea1dfe7fa1":[7,9,0], +"struct_s_cn_s_c_b___type.html":[7,10], +"struct_s_cn_s_c_b___type.html#a13af9b718dde7481f1c0344f00593c23":[7,10,0], +"struct_s_cn_s_c_b___type.html#a34ec1d771245eb9bd0e3ec9336949762":[7,10,1], +"struct_s_cn_s_c_b___type.html#afe1d5fd2966d5062716613b05c8d0ae1":[7,10,2], +"struct_sys_tick___type.html":[7,11], +"struct_sys_tick___type.html#a4780a489256bb9f54d0ba8ed4de191cd":[7,11,2], +"struct_sys_tick___type.html#a875e7afa5c4fd43997fb544a4ac6e37e":[7,11,1], +"struct_sys_tick___type.html#a9b5420d17e8e43104ddd4ae5a610af93":[7,11,3], +"struct_sys_tick___type.html#afcadb0c6d35b21cdc0018658a13942de":[7,11,0], +"struct_t_p_i___type.html":[7,12], +"struct_t_p_i___type.html#a061372fcd72f1eea871e2d9c1be849bc":[7,12,9], +"struct_t_p_i___type.html#a0e10e292cb019a832b03ddd055b2f6ac":[7,12,1], +"struct_t_p_i___type.html#a12f79d4e3ddc69893ba8bff890d04cc5":[7,12,21], +"struct_t_p_i___type.html#a31700c8cdd26e4c094db72af33d9f24c":[7,12,17], +"struct_t_p_i___type.html#a3f68b6e73561b4849ebf953a894df8d2":[7,12,6], +"struct_t_p_i___type.html#a3f80dd93f6bab6524603a7aa58de9a30":[7,12,19], +"struct_t_p_i___type.html#a476ca23fbc9480f1697fbec871130550":[7,12,20], +"struct_t_p_i___type.html#a4d4cd2357f72333a82a1313228287bbd":[7,12,23], +"struct_t_p_i___type.html#a684071216fafee4e80be6aaa932cec46":[7,12,18], +"struct_t_p_i___type.html#a6c47a0b4c7ffc66093ef993d36bb441c":[7,12,7], +"struct_t_p_i___type.html#a7b72598e20066133e505bb781690dc22":[7,12,22], +"struct_t_p_i___type.html#a8826aa84e5806053395a742d38d59d0f":[7,12,3], +"struct_t_p_i___type.html#a9e5e4421ef9c3d5b7ff8b24abd4e99b3":[7,12,0], +"struct_t_p_i___type.html#aa4d7b5cf39dff9f53bf7f69bc287a814":[7,12,8], +"struct_t_p_i___type.html#aaa4c823c10f115f7517c82ef86a5a68d":[7,12,13], +"struct_t_p_i___type.html#aaa573b2e073e76e93c51ecec79c616d0":[7,12,11], +"struct_t_p_i___type.html#ab358319b969d3fed0f89bbe33e9f1652":[7,12,12], +"struct_t_p_i___type.html#abc0ecda8a5446bc754080276bad77514":[7,12,4], +"struct_t_p_i___type.html#ac3956fe93987b725d89d3be32738da12":[7,12,15], +"struct_t_p_i___type.html#ac7bbb92e6231b9b38ac483f7d161a096":[7,12,16], +"struct_t_p_i___type.html#ad6901bfd8a0089ca7e8a20475cf494a8":[7,12,10], +"struct_t_p_i___type.html#ad98855854a719bbea33061e71529a472":[7,12,5], +"struct_t_p_i___type.html#af143c5e8fc9a3b2be2878e9c1f331aa9":[7,12,14], +"struct_t_p_i___type.html#af8b7d15fa5252b733dd4b11fa1b5730a":[7,12,2], +"system_c_pg.html":[3,3], +"system_c_pg.html#system_Device_h_sec":[3,3,1], +"system_c_pg.html#system_Device_sec":[3,3,0], +"union_a_p_s_r___type.html":[7,0], +"union_a_p_s_r___type.html#a22d10913489d24ab08bd83457daa88de":[7,0,4], +"union_a_p_s_r___type.html#a3b04d58738b66a28ff13f23d8b0ba7e5":[7,0,7], +"union_a_p_s_r___type.html#a7dbc79a057ded4b11ca5323fc2d5ab14":[7,0,1], +"union_a_p_s_r___type.html#a7e7bbba9b00b0bb3283dc07f1abe37e0":[7,0,3], +"union_a_p_s_r___type.html#a8004d224aacb78ca37774c35f9156e7e":[7,0,5], +"union_a_p_s_r___type.html#a86e2c5b891ecef1ab55b1edac0da79a6":[7,0,2], +"union_a_p_s_r___type.html#ae4c2ef8c9430d7b7bef5cbfbbaed3a94":[7,0,6], +"union_a_p_s_r___type.html#afbce95646fd514c10aa85ec0a33db728":[7,0,0], +"union_c_o_n_t_r_o_l___type.html":[7,1], +"union_c_o_n_t_r_o_l___type.html#a35c1732cf153b7b5c4bd321cf1de9605":[7,1,3], +"union_c_o_n_t_r_o_l___type.html#a6b642cca3d96da660b1198c133ca2a1f":[7,1,5], +"union_c_o_n_t_r_o_l___type.html#a8cc085fea1c50a8bd9adea63931ee8e2":[7,1,4], +"union_c_o_n_t_r_o_l___type.html#ac62cfff08e6f055e0101785bad7094cd":[7,1,2], +"union_c_o_n_t_r_o_l___type.html#adc6a38ab2980d0e9577b5a871da14eb9":[7,1,1], +"union_c_o_n_t_r_o_l___type.html#af8c314273a1e4970a5671bd7f8184f50":[7,1,0], +"union_i_p_s_r___type.html":[7,5], +"union_i_p_s_r___type.html#a4adca999d3a0bc1ae682d73ea7cfa879":[7,5,3], +"union_i_p_s_r___type.html#ab46e5f1b2f4d17cfb9aca4fffcbb2fa5":[7,5,2], +"union_i_p_s_r___type.html#ad2eb0a06de4f03f58874a727716aa9aa":[7,5,0], +"union_i_p_s_r___type.html#add0d6497bd50c25569ea22b48a03ec50":[7,5,1], +"unionx_p_s_r___type.html":[7,13], +"unionx_p_s_r___type.html#a1a47176768f45f79076c4f5b1b534bc2":[7,13,9], +"unionx_p_s_r___type.html#a1e5d9801013d5146f2e02d9b7b3da562":[7,13,10], +"unionx_p_s_r___type.html#a2db9a52f6d42809627d1a7a607c5dbc5":[7,13,5], +"unionx_p_s_r___type.html#a3200966922a194d84425e2807a7f1328":[7,13,4], +"unionx_p_s_r___type.html#a3b1063bb5cdad67e037cba993b693b70":[7,13,1], +"unionx_p_s_r___type.html#a3e9120dcf1a829fc8d2302b4d0673970":[7,13,3], +"unionx_p_s_r___type.html#a40213a6b5620410cac83b0d89564609d":[7,13,2], +"unionx_p_s_r___type.html#a7eed9fe24ae8d354cd76ae1c1110a658":[7,13,7], +"unionx_p_s_r___type.html#add7cbd2b0abd8954d62cd7831796ac7c":[7,13,6], +"unionx_p_s_r___type.html#af14df16ea0690070c45b95f2116b7a0a":[7,13,8], +"unionx_p_s_r___type.html#af438e0f407357e914a70b5bd4d6a97c5":[7,13,0] +}; diff --git a/CMSIS/Documentation/Core/html/open.png b/CMSIS/Documentation/Core/html/open.png new file mode 100644 index 0000000..3c4e2e0 Binary files /dev/null and b/CMSIS/Documentation/Core/html/open.png differ diff --git a/CMSIS/Documentation/Core/html/pages.html b/CMSIS/Documentation/Core/html/pages.html new file mode 100644 index 0000000..c584f96 --- /dev/null +++ b/CMSIS/Documentation/Core/html/pages.html @@ -0,0 +1,143 @@ + + + + + +Usage and Description +CMSIS-CORE: Usage and Description + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
CMSIS-CORE +  Version 4.30 +
+
CMSIS-CORE support for Cortex-M processor-based devices
+
+
+ +
+
    + +
+
+ + + +
+
+ +
+
+
+ + + + + + diff --git a/CMSIS/Documentation/Core/html/printComponentTabs.js b/CMSIS/Documentation/Core/html/printComponentTabs.js new file mode 100644 index 0000000..64d846b --- /dev/null +++ b/CMSIS/Documentation/Core/html/printComponentTabs.js @@ -0,0 +1,36 @@ +var strgURL = location.pathname; // path of current component + +// constuctor for the array of objects +function tabElement(id, folderName, tabTxt ) { + this.id = id; // elementID as needed in html; + this.folderName = folderName; // folder name of the component + this.tabTxt = tabTxt; // Text displayed as menu on the web + this.currentListItem = '
  • ' + this.tabTxt + '
  • '; + this.listItem = '
  • ' + this.tabTxt + '
  • '; +}; + +// array of objects +var arr = []; + +// fill array + arr.push( new tabElement( "GEN", "/General/html/", "General") ); + arr.push( new tabElement( "CORE", "/Core/html/", "Core") ); + arr.push( new tabElement( "DRV", "/Driver/html/", "Driver") ); + arr.push( new tabElement( "DSP", "/DSP/html/", "DSP") ); + arr.push( new tabElement( "RTOS", "/RTOS/html/", "RTOS API") ); + arr.push( new tabElement( "RTX", "/RTX/html/", "RTX") ); + arr.push( new tabElement( "PACK", "/Pack/html/", "Pack") ); + arr.push( new tabElement( "SVD", "/SVD/html/", "SVD") ); + arr.push( new tabElement( "DAP", "/DAP/html/", "DAP") ); + +// write tabs +// called from the header file. +function writeComponentTabs() { + for ( var i=0; i < arr.length; i++ ) { + if (strgURL.search(arr[i].folderName) > 0) { // if this is the current folder + document.write(arr[i].currentListItem); // then print and hightlight the tab + } else { + document.write(arr[i].listItem); // else, print the tab + } + } +}; diff --git a/CMSIS/Documentation/Core/html/resize.js b/CMSIS/Documentation/Core/html/resize.js new file mode 100644 index 0000000..9fe82ba --- /dev/null +++ b/CMSIS/Documentation/Core/html/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).width(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.height(); + var footerHeight = footer.height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/CMSIS/Documentation/Core/html/search.css b/CMSIS/Documentation/Core/html/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/Core/html/search/all_5f.html b/CMSIS/Documentation/Core/html/search/all_5f.html new file mode 100644 index 0000000..1f27755 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_5f.js b/CMSIS/Documentation/Core/html/search/all_5f.js new file mode 100644 index 0000000..aa08873 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_5f.js @@ -0,0 +1,120 @@ +var searchData= +[ + ['_5f_5fbkpt',['__BKPT',['../group__intrinsic___c_p_u__gr.html#ga92f5621626711931da71eaa8bf301af7',1,'Ref_cmInstr.txt']]], + ['_5f_5fclrex',['__CLREX',['../group__intrinsic___c_p_u__gr.html#ga354c5ac8870cc3dfb823367af9c4b412',1,'Ref_cmInstr.txt']]], + ['_5f_5fclz',['__CLZ',['../group__intrinsic___c_p_u__gr.html#ga90884c591ac5d73d6069334eba9d6c02',1,'Ref_cmInstr.txt']]], + ['_5f_5fdisable_5ffault_5firq',['__disable_fault_irq',['../group___core___register__gr.html#ga9d174f979b2f76fdb3228a9b338fd939',1,'Ref_CoreReg.txt']]], + ['_5f_5fdisable_5firq',['__disable_irq',['../group___core___register__gr.html#gaeb8e5f7564a8ea23678fe3c987b04013',1,'Ref_CoreReg.txt']]], + ['_5f_5fdmb',['__DMB',['../group__intrinsic___c_p_u__gr.html#gab1c9b393641dc2d397b3408fdbe72b96',1,'Ref_cmInstr.txt']]], + ['_5f_5fdsb',['__DSB',['../group__intrinsic___c_p_u__gr.html#gacb2a8ca6eae1ba4b31161578b720c199',1,'Ref_cmInstr.txt']]], + ['_5f_5fenable_5ffault_5firq',['__enable_fault_irq',['../group___core___register__gr.html#ga6575d37863cec5d334864f93b5b783bf',1,'Ref_CoreReg.txt']]], + ['_5f_5fenable_5firq',['__enable_irq',['../group___core___register__gr.html#ga0f98dfbd252b89d12564472dbeba9c27',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fapsr',['__get_APSR',['../group___core___register__gr.html#ga811c0012221ee918a75111ca84c4d5e7',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fbasepri',['__get_BASEPRI',['../group___core___register__gr.html#ga32da759f46e52c95bcfbde5012260667',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fcontrol',['__get_CONTROL',['../group___core___register__gr.html#ga963cf236b73219ce78e965deb01b81a7',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5ffaultmask',['__get_FAULTMASK',['../group___core___register__gr.html#gaa78e4e6bf619a65e9f01b4af13fed3a8',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5ffpscr',['__get_FPSCR',['../group___core___register__gr.html#gad6d7eca9ddd1d9072dd7b020cfe64905',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fipsr',['__get_IPSR',['../group___core___register__gr.html#ga2c32fc5c7f8f07fb3d436c6f6fe4e8c8',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fmsp',['__get_MSP',['../group___core___register__gr.html#gab898559392ba027814e5bbb5a98b38d2',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fprimask',['__get_PRIMASK',['../group___core___register__gr.html#ga799b5d9a2ae75e459264c8512c7c0e02',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fpsp',['__get_PSP',['../group___core___register__gr.html#ga914dfa8eff7ca53380dd54cf1d8bebd9',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fxpsr',['__get_xPSR',['../group___core___register__gr.html#ga732e08184154f44a617963cc65ff95bd',1,'Ref_CoreReg.txt']]], + ['_5f_5fisb',['__ISB',['../group__intrinsic___c_p_u__gr.html#ga93c09b4709394d81977300d5f84950e5',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrbt',['__LDRBT',['../group__intrinsic___c_p_u__gr.html#ga9464d75db32846aa8295c3c3adfacb41',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrexb',['__LDREXB',['../group__intrinsic___c_p_u__gr.html#ga9e3ac13d8dcf4331176b624cf6234a7e',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrexh',['__LDREXH',['../group__intrinsic___c_p_u__gr.html#ga9feffc093d6f68b120d592a7a0d45a15',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrexw',['__LDREXW',['../group__intrinsic___c_p_u__gr.html#gabd78840a0f2464905b7cec791ebc6a4c',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrht',['__LDRHT',['../group__intrinsic___c_p_u__gr.html#gaa762b8bc5634ce38cb14d62a6b2aee32',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrt',['__LDRT',['../group__intrinsic___c_p_u__gr.html#ga616504f5da979ba8a073d428d6e8d5c7',1,'Ref_cmInstr.txt']]], + ['_5f_5fnop',['__NOP',['../group__intrinsic___c_p_u__gr.html#gac71fad9f0a91980fecafcb450ee0a63e',1,'Ref_cmInstr.txt']]], + ['_5f_5fpkhbt',['__PKHBT',['../group__intrinsic___s_i_m_d__gr.html#gaefb8ebf3a54e197464da1ff69a44f4b5',1,'Ref_cm4_simd.txt']]], + ['_5f_5fpkhtb',['__PKHTB',['../group__intrinsic___s_i_m_d__gr.html#gafd8fe4a6d87e947caa81a69ec36c1666',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqadd',['__QADD',['../group__intrinsic___s_i_m_d__gr.html#ga17b873f246c9f5e9355760ffef3dad4a',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqadd16',['__QADD16',['../group__intrinsic___s_i_m_d__gr.html#gae83a53ec04b496304bed6d9fe8f7461b',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqadd8',['__QADD8',['../group__intrinsic___s_i_m_d__gr.html#gaf2f5a9132dcfc6d01d34cd971c425713',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqasx',['__QASX',['../group__intrinsic___s_i_m_d__gr.html#ga87618799672e1511e33964bc71467eb3',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsax',['__QSAX',['../group__intrinsic___s_i_m_d__gr.html#gab41eb2b17512ab01d476fc9d5bd19520',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsub',['__QSUB',['../group__intrinsic___s_i_m_d__gr.html#ga3ba259f8f05a36f7b88b469a71ffc096',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsub16',['__QSUB16',['../group__intrinsic___s_i_m_d__gr.html#gad089605c16df9823a2c8aaa37777aae5',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsub8',['__QSUB8',['../group__intrinsic___s_i_m_d__gr.html#ga753493a65493880c28baa82c151a0d61',1,'Ref_cm4_simd.txt']]], + ['_5f_5frbit',['__RBIT',['../group__intrinsic___c_p_u__gr.html#gad6f9f297f6b91a995ee199fbc796b863',1,'Ref_cmInstr.txt']]], + ['_5f_5frev',['__REV',['../group__intrinsic___c_p_u__gr.html#ga4717abc17af5ba29b1e4c055e0a0d9b8',1,'Ref_cmInstr.txt']]], + ['_5f_5frev16',['__REV16',['../group__intrinsic___c_p_u__gr.html#gaeef6f853b6df3a365c838ee5b49a7a26',1,'Ref_cmInstr.txt']]], + ['_5f_5frevsh',['__REVSH',['../group__intrinsic___c_p_u__gr.html#ga1ec006e6d79063363cb0c2a2e0b3adbe',1,'Ref_cmInstr.txt']]], + ['_5f_5fror',['__ROR',['../group__intrinsic___c_p_u__gr.html#gaf66beb577bb9d90424c3d1d7f684c024',1,'Ref_cmInstr.txt']]], + ['_5f_5frrx',['__RRX',['../group__intrinsic___c_p_u__gr.html#gac09134f1bf9c49db07282001afcc9380',1,'Ref_cmInstr.txt']]], + ['_5f_5fsadd16',['__SADD16',['../group__intrinsic___s_i_m_d__gr.html#gad0bf46373a1c05aabf64517e84be5984',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsadd8',['__SADD8',['../group__intrinsic___s_i_m_d__gr.html#gac20aa0f741d0a1494d58c531e38d5785',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsasx',['__SASX',['../group__intrinsic___s_i_m_d__gr.html#ga5845084fd99c872e98cf5553d554de2a',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsel',['__SEL',['../group__intrinsic___s_i_m_d__gr.html#gaf5448e591fe49161b6759b48aecb08fe',1,'Ref_cm4_simd.txt']]], + ['_5f_5fset_5fbasepri',['__set_BASEPRI',['../group___core___register__gr.html#ga360c73eb7ffb16088556f9278953b882',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fbasepri_5fmax',['__set_BASEPRI_MAX',['../group___core___register__gr.html#ga62fa63d39cf22df348857d5f44ab64d9',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fcontrol',['__set_CONTROL',['../group___core___register__gr.html#gac64d37e7ff9de06437f9fb94bbab8b6c',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5ffaultmask',['__set_FAULTMASK',['../group___core___register__gr.html#gaa5587cc09031053a40a35c14ec36078a',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5ffpscr',['__set_FPSCR',['../group___core___register__gr.html#ga6f26bd75ca7e3247f27b272acc10536b',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fmsp',['__set_MSP',['../group___core___register__gr.html#ga0bf9564ebc1613a8faba014275dac2a4',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fprimask',['__set_PRIMASK',['../group___core___register__gr.html#ga70b4e1a6c1c86eb913fb9d6e8400156f',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fpsp',['__set_PSP',['../group___core___register__gr.html#ga48e5853f417e17a8a65080f6a605b743',1,'Ref_CoreReg.txt']]], + ['_5f_5fsev',['__SEV',['../group__intrinsic___c_p_u__gr.html#ga3c34da7eb16496ae2668a5b95fa441e7',1,'Ref_cmInstr.txt']]], + ['_5f_5fshadd16',['__SHADD16',['../group__intrinsic___s_i_m_d__gr.html#ga15d8899a173effb8ad8c7268da32b60e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshadd8',['__SHADD8',['../group__intrinsic___s_i_m_d__gr.html#ga524575b442ea01aec10c762bf4d85fea',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshasx',['__SHASX',['../group__intrinsic___s_i_m_d__gr.html#gae0a649035f67627464fd80e7218c89d5',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshsax',['__SHSAX',['../group__intrinsic___s_i_m_d__gr.html#gafadbd89c36b5addcf1ca10dd392db3e9',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshsub16',['__SHSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga31328467f0f91b8ff9ae9a01682ad3bf',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshsub8',['__SHSUB8',['../group__intrinsic___s_i_m_d__gr.html#gac3ec7215b354d925a239f3b31df2b77b',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlad',['__SMLAD',['../group__intrinsic___s_i_m_d__gr.html#gae0c86f3298532183f3a29f5bb454d354',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmladx',['__SMLADX',['../group__intrinsic___s_i_m_d__gr.html#ga9c286d330f4fb29b256335add91eec9f',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlald',['__SMLALD',['../group__intrinsic___s_i_m_d__gr.html#gad80e9b20c1736fd798f897362273a146',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlaldx',['__SMLALDX',['../group__intrinsic___s_i_m_d__gr.html#gad1adad1b3f2667328cc0db6c6b4f41cf',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsd',['__SMLSD',['../group__intrinsic___s_i_m_d__gr.html#gaf4350af7f2030c36f43b2c104a9d16cd',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsdx',['__SMLSDX',['../group__intrinsic___s_i_m_d__gr.html#ga5290ce5564770ad124910d2583dc0a9e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsld',['__SMLSLD',['../group__intrinsic___s_i_m_d__gr.html#ga5611f7314e0c8f53da377918dfbf42ee',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsldx',['__SMLSLDX',['../group__intrinsic___s_i_m_d__gr.html#ga83e69ef81057d3cbd06863d729385187',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmmla',['__SMMLA',['../group__intrinsic___s_i_m_d__gr.html#gaea60757232f740ec6b09980eebb614ff',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmuad',['__SMUAD',['../group__intrinsic___s_i_m_d__gr.html#gae326e368a1624d2dfb4b97c626939257',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmuadx',['__SMUADX',['../group__intrinsic___s_i_m_d__gr.html#gaee6390f86965cb662500f690b0012092',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmusd',['__SMUSD',['../group__intrinsic___s_i_m_d__gr.html#ga039142a5368840683cf329cb55b73f84',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmusdx',['__SMUSDX',['../group__intrinsic___s_i_m_d__gr.html#gabb5bcba694bf17b141c32e6a8474f60e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssat',['__SSAT',['../group__intrinsic___c_p_u__gr.html#ga7d9dddda18805abbf51ac21c639845e1',1,'Ref_cmInstr.txt']]], + ['_5f_5fssat16',['__SSAT16',['../group__intrinsic___s_i_m_d__gr.html#ga95e666b82216066bf6064d1244e6883c',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssax',['__SSAX',['../group__intrinsic___s_i_m_d__gr.html#ga9d3bc5c539f9bd50f7d59ffa37ac6a65',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssub16',['__SSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga4262f73be75efbac6b46ab7c71aa6cbc',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssub8',['__SSUB8',['../group__intrinsic___s_i_m_d__gr.html#gaba63bb52e1e93fb527e26f3d474da12e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fstrbt',['__STRBT',['../group__intrinsic___c_p_u__gr.html#gad41aa59c92c0a165b7f98428d3320cd5',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrexb',['__STREXB',['../group__intrinsic___c_p_u__gr.html#gaab6482d1f59f59e2b6b7efc1af391c99',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrexh',['__STREXH',['../group__intrinsic___c_p_u__gr.html#ga0a354bdf71caa52f081a4a54e84c8d2a',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrexw',['__STREXW',['../group__intrinsic___c_p_u__gr.html#ga335deaaa7991490e1450cb7d1e4c5197',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrht',['__STRHT',['../group__intrinsic___c_p_u__gr.html#ga2b5d93b8e461755b1072a03df3f1722e',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrt',['__STRT',['../group__intrinsic___c_p_u__gr.html#ga625bc4ac0b1d50de9bcd13d9f050030e',1,'Ref_cmInstr.txt']]], + ['_5f_5fsxtab16',['__SXTAB16',['../group__intrinsic___s_i_m_d__gr.html#gac540b4fc41d30778ba102d2a65db5589',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsxtb16',['__SXTB16',['../group__intrinsic___s_i_m_d__gr.html#ga38dce3dd13ba212e80ec3cff4abeb11a',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuadd16',['__UADD16',['../group__intrinsic___s_i_m_d__gr.html#gaa1160f0cf76d6aa292fbad54a1aa6b74',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuadd8',['__UADD8',['../group__intrinsic___s_i_m_d__gr.html#gab3d7fd00d113b20fb3741a17394da762',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuasx',['__UASX',['../group__intrinsic___s_i_m_d__gr.html#ga980353d2c72ebb879282e49f592fddc0',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhadd16',['__UHADD16',['../group__intrinsic___s_i_m_d__gr.html#gabd0b0e2da2e6364e176d051687702b86',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhadd8',['__UHADD8',['../group__intrinsic___s_i_m_d__gr.html#ga3a14e5485e59bf0f23595b7c2a94eb0b',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhasx',['__UHASX',['../group__intrinsic___s_i_m_d__gr.html#ga028f0732b961fb6e5209326fb3855261',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhsax',['__UHSAX',['../group__intrinsic___s_i_m_d__gr.html#ga09e129e6613329aab87c89f1108b7ed7',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhsub16',['__UHSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga1f7545b8dc33bb97982731cb9d427a69',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhsub8',['__UHSUB8',['../group__intrinsic___s_i_m_d__gr.html#ga48a55df1c3e73923b73819d7c19b392d',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqadd16',['__UQADD16',['../group__intrinsic___s_i_m_d__gr.html#ga9e2cc5117e79578a08b25f1e89022966',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqadd8',['__UQADD8',['../group__intrinsic___s_i_m_d__gr.html#gafa9af218db3934a692fb06fa728d8031',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqasx',['__UQASX',['../group__intrinsic___s_i_m_d__gr.html#ga5eff3ae5eabcd73f3049996ca391becb',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqsax',['__UQSAX',['../group__intrinsic___s_i_m_d__gr.html#gadecfdfabc328d8939d49d996f2fd4482',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqsub16',['__UQSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga5ec4e2e231d15e5c692233feb3806187',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqsub8',['__UQSUB8',['../group__intrinsic___s_i_m_d__gr.html#ga9736fe816aec74fe886e7fb949734eab',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusad8',['__USAD8',['../group__intrinsic___s_i_m_d__gr.html#gac8855c07044239ea775c8128013204f0',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusada8',['__USADA8',['../group__intrinsic___s_i_m_d__gr.html#gad032bd21f013c5d29f5fcb6b0f02bc3f',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusat',['__USAT',['../group__intrinsic___c_p_u__gr.html#ga76bbe4374a5912362866cdc1ded4064a',1,'Ref_cmInstr.txt']]], + ['_5f_5fusat16',['__USAT16',['../group__intrinsic___s_i_m_d__gr.html#ga967f516afff5900cf30f1a81907cdd89',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusax',['__USAX',['../group__intrinsic___s_i_m_d__gr.html#ga578a082747436772c482c96d7a58e45e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusub16',['__USUB16',['../group__intrinsic___s_i_m_d__gr.html#ga9f2b77e11fc4a77b26c36c423ed45b4e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusub8',['__USUB8',['../group__intrinsic___s_i_m_d__gr.html#gacb7257dc3b8e9acbd0ef0e31ff87d4b8',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuxtab16',['__UXTAB16',['../group__intrinsic___s_i_m_d__gr.html#gad25ce96db0f17096bbd815f4817faf09',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuxtb16',['__UXTB16',['../group__intrinsic___s_i_m_d__gr.html#gab41d713653b16f8d9fef44d14e397228',1,'Ref_cm4_simd.txt']]], + ['_5f_5fwfe',['__WFE',['../group__intrinsic___c_p_u__gr.html#gad3efec76c3bfa2b8528ded530386c563',1,'Ref_cmInstr.txt']]], + ['_5f_5fwfi',['__WFI',['../group__intrinsic___c_p_u__gr.html#gaed91dfbf3d7d7b7fba8d912fcbeaad88',1,'Ref_cmInstr.txt']]], + ['_5ffld2val',['_FLD2VAL',['../group__peripheral__gr.html#ga139b6e261c981f014f386927ca4a8444',1,'Ref_Peripheral.txt']]], + ['_5freserved0',['_reserved0',['../union_a_p_s_r___type.html#afbce95646fd514c10aa85ec0a33db728',1,'APSR_Type::_reserved0()'],['../union_i_p_s_r___type.html#ad2eb0a06de4f03f58874a727716aa9aa',1,'IPSR_Type::_reserved0()'],['../unionx_p_s_r___type.html#af438e0f407357e914a70b5bd4d6a97c5',1,'xPSR_Type::_reserved0()'],['../union_c_o_n_t_r_o_l___type.html#af8c314273a1e4970a5671bd7f8184f50',1,'CONTROL_Type::_reserved0()']]], + ['_5fval2fld',['_VAL2FLD',['../group__peripheral__gr.html#ga286e3b913dbd236c7f48ea70c8821f4e',1,'Ref_Peripheral.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_61.html b/CMSIS/Documentation/Core/html/search/all_61.html new file mode 100644 index 0000000..a3164d5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_61.js b/CMSIS/Documentation/Core/html/search/all_61.js new file mode 100644 index 0000000..4c2ca9b --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_61.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['acpr',['ACPR',['../struct_t_p_i___type.html#a9e5e4421ef9c3d5b7ff8b24abd4e99b3',1,'TPI_Type']]], + ['actlr',['ACTLR',['../struct_s_cn_s_c_b___type.html#a13af9b718dde7481f1c0344f00593c23',1,'SCnSCB_Type']]], + ['adr',['ADR',['../struct_s_c_b___type.html#af084e1b2dad004a88668efea1dfe7fa1',1,'SCB_Type']]], + ['afsr',['AFSR',['../struct_s_c_b___type.html#ab65372404ce64b0f0b35e2709429404e',1,'SCB_Type']]], + ['aircr',['AIRCR',['../struct_s_c_b___type.html#ad3e5b8934c647eb1b7383c1894f01380',1,'SCB_Type']]], + ['apsr_5ftype',['APSR_Type',['../union_a_p_s_r___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_62.html b/CMSIS/Documentation/Core/html/search/all_62.html new file mode 100644 index 0000000..ee8871c --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_62.js b/CMSIS/Documentation/Core/html/search/all_62.js new file mode 100644 index 0000000..5febfad --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_62.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['b',['b',['../union_a_p_s_r___type.html#a7dbc79a057ded4b11ca5323fc2d5ab14',1,'APSR_Type::b()'],['../union_i_p_s_r___type.html#add0d6497bd50c25569ea22b48a03ec50',1,'IPSR_Type::b()'],['../unionx_p_s_r___type.html#a3b1063bb5cdad67e037cba993b693b70',1,'xPSR_Type::b()'],['../union_c_o_n_t_r_o_l___type.html#adc6a38ab2980d0e9577b5a871da14eb9',1,'CONTROL_Type::b()']]], + ['bfar',['BFAR',['../struct_s_c_b___type.html#a3f8e7e58be4e41c88dfa78f54589271c',1,'SCB_Type']]], + ['busfault_5firqn',['BusFault_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8693500eff174f16119e96234fee73af',1,'Ref_NVIC.txt']]], + ['basic_20cmsis_20example',['Basic CMSIS Example',['../_using__c_m_s_i_s.html',1,'Using_pg']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_63.html b/CMSIS/Documentation/Core/html/search/all_63.html new file mode 100644 index 0000000..56b5ad1 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_63.js b/CMSIS/Documentation/Core/html/search/all_63.js new file mode 100644 index 0000000..02b69c2 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_63.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['c',['C',['../union_a_p_s_r___type.html#a86e2c5b891ecef1ab55b1edac0da79a6',1,'APSR_Type::C()'],['../unionx_p_s_r___type.html#a40213a6b5620410cac83b0d89564609d',1,'xPSR_Type::C()']]], + ['cache_20functions_20_20_28only_20cortex_2dm7_29',['Cache Functions (only Cortex-M7)',['../group__cache__functions__m7.html',1,'']]], + ['calib',['CALIB',['../struct_sys_tick___type.html#afcadb0c6d35b21cdc0018658a13942de',1,'SysTick_Type']]], + ['ccr',['CCR',['../struct_s_c_b___type.html#a2d6653b0b70faac936046a02809b577f',1,'SCB_Type']]], + ['cfsr',['CFSR',['../struct_s_c_b___type.html#a0cda9e061b42373383418663092ad19a',1,'SCB_Type']]], + ['claimclr',['CLAIMCLR',['../struct_t_p_i___type.html#a0e10e292cb019a832b03ddd055b2f6ac',1,'TPI_Type']]], + ['claimset',['CLAIMSET',['../struct_t_p_i___type.html#af8b7d15fa5252b733dd4b11fa1b5730a',1,'TPI_Type']]], + ['comp0',['COMP0',['../struct_d_w_t___type.html#a61c2965af5bc0643f9af65620b0e67c9',1,'DWT_Type']]], + ['comp1',['COMP1',['../struct_d_w_t___type.html#a38714af6b7fa7c64d68f5e1efbe7a931',1,'DWT_Type']]], + ['comp2',['COMP2',['../struct_d_w_t___type.html#a5ae6dde39989f27bae90afc2347deb46',1,'DWT_Type']]], + ['comp3',['COMP3',['../struct_d_w_t___type.html#a85eb73d1848ac3f82d39d6c3e8910847',1,'DWT_Type']]], + ['control_5ftype',['CONTROL_Type',['../union_c_o_n_t_r_o_l___type.html',1,'']]], + ['core_5fcm7_2etxt',['core_cm7.txt',['../core__cm7_8txt.html',1,'']]], + ['core_20register_20access',['Core Register Access',['../group___core___register__gr.html',1,'']]], + ['coredebug_5ftype',['CoreDebug_Type',['../struct_core_debug___type.html',1,'']]], + ['cpacr',['CPACR',['../struct_s_c_b___type.html#ac6a860c1b8d8154a1f00d99d23b67764',1,'SCB_Type']]], + ['cpicnt',['CPICNT',['../struct_d_w_t___type.html#a2c08096c82abe245c0fa97badc458154',1,'DWT_Type']]], + ['cpuid',['CPUID',['../struct_s_c_b___type.html#a21e08d546d8b641bee298a459ea73e46',1,'SCB_Type']]], + ['cspsr',['CSPSR',['../struct_t_p_i___type.html#a8826aa84e5806053395a742d38d59d0f',1,'TPI_Type']]], + ['ctrl',['CTRL',['../struct_sys_tick___type.html#a875e7afa5c4fd43997fb544a4ac6e37e',1,'SysTick_Type::CTRL()'],['../struct_m_p_u___type.html#a4d81d6aa73a9287bafba2bcc5ffc6d18',1,'MPU_Type::CTRL()'],['../struct_d_w_t___type.html#add790c53410023b3b581919bb681fe2a',1,'DWT_Type::CTRL()']]], + ['cyccnt',['CYCCNT',['../struct_d_w_t___type.html#a102eaa529d9098242851cb57c52b42d9',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_64.html b/CMSIS/Documentation/Core/html/search/all_64.html new file mode 100644 index 0000000..b53ff08 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_64.js b/CMSIS/Documentation/Core/html/search/all_64.js new file mode 100644 index 0000000..c09b11f --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_64.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['d_2dcache_20functions',['D-Cache Functions',['../group___dcache__functions__m7.html',1,'']]], + ['dcrdr',['DCRDR',['../struct_core_debug___type.html#aab3cc92ef07bc1f04b3a3aa6db2c2d55',1,'CoreDebug_Type']]], + ['dcrsr',['DCRSR',['../struct_core_debug___type.html#af907cf64577eaf927dac6787df6dd98b',1,'CoreDebug_Type']]], + ['debugmonitor_5firqn',['DebugMonitor_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8e033fcef7aed98a31c60a7de206722c',1,'Ref_NVIC.txt']]], + ['demcr',['DEMCR',['../struct_core_debug___type.html#aeb3126abc4c258a858f21f356c0df6ee',1,'CoreDebug_Type']]], + ['device_20header_20file_20_3cdevice_2eh_3e',['Device Header File <device.h>',['../device_h_pg.html',1,'Templates_pg']]], + ['devid',['DEVID',['../struct_t_p_i___type.html#abc0ecda8a5446bc754080276bad77514',1,'TPI_Type']]], + ['devtype',['DEVTYPE',['../struct_t_p_i___type.html#ad98855854a719bbea33061e71529a472',1,'TPI_Type']]], + ['dfr',['DFR',['../struct_s_c_b___type.html#a85dd6fe77aab17e7ea89a52c59da6004',1,'SCB_Type']]], + ['dfsr',['DFSR',['../struct_s_c_b___type.html#a191579bde0d21ff51d30a714fd887033',1,'SCB_Type']]], + ['dhcsr',['DHCSR',['../struct_core_debug___type.html#ad63554e4650da91a8e79929cbb63db66',1,'CoreDebug_Type']]], + ['dwt_5ftype',['DWT_Type',['../struct_d_w_t___type.html',1,'']]], + ['debug_20access',['Debug Access',['../group___i_t_m___debug__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_65.html b/CMSIS/Documentation/Core/html/search/all_65.html new file mode 100644 index 0000000..66cc834 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_65.js b/CMSIS/Documentation/Core/html/search/all_65.js new file mode 100644 index 0000000..f7e1c65 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_65.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['exccnt',['EXCCNT',['../struct_d_w_t___type.html#a9fe20c16c5167ca61486caf6832686d1',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_66.html b/CMSIS/Documentation/Core/html/search/all_66.html new file mode 100644 index 0000000..3d1f8b3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_66.js b/CMSIS/Documentation/Core/html/search/all_66.js new file mode 100644 index 0000000..7a878be --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_66.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['ffcr',['FFCR',['../struct_t_p_i___type.html#a3f68b6e73561b4849ebf953a894df8d2',1,'TPI_Type']]], + ['ffsr',['FFSR',['../struct_t_p_i___type.html#a6c47a0b4c7ffc66093ef993d36bb441c',1,'TPI_Type']]], + ['fifo0',['FIFO0',['../struct_t_p_i___type.html#aa4d7b5cf39dff9f53bf7f69bc287a814',1,'TPI_Type']]], + ['fifo1',['FIFO1',['../struct_t_p_i___type.html#a061372fcd72f1eea871e2d9c1be849bc',1,'TPI_Type']]], + ['foldcnt',['FOLDCNT',['../struct_d_w_t___type.html#a1cfc48384ebd8fd8fb7e5d955aae6c97',1,'DWT_Type']]], + ['fpca',['FPCA',['../union_c_o_n_t_r_o_l___type.html#ac62cfff08e6f055e0101785bad7094cd',1,'CONTROL_Type']]], + ['fpcar',['FPCAR',['../struct_f_p_u___type.html#a55263b468d0f8e11ac77aec9ff87c820',1,'FPU_Type']]], + ['fpccr',['FPCCR',['../struct_f_p_u___type.html#af1b708c5e413739150df3d16ca3b7061',1,'FPU_Type']]], + ['fpdscr',['FPDSCR',['../struct_f_p_u___type.html#a58d1989664a06db6ec2e122eefa9f04a',1,'FPU_Type']]], + ['fpu_20functions_20_28only_20cortex_2dm7_29',['FPU Functions (only Cortex-M7)',['../group__fpu__functions__m7.html',1,'']]], + ['fpu_5ftype',['FPU_Type',['../struct_f_p_u___type.html',1,'']]], + ['fscr',['FSCR',['../struct_t_p_i___type.html#ad6901bfd8a0089ca7e8a20475cf494a8',1,'TPI_Type']]], + ['function0',['FUNCTION0',['../struct_d_w_t___type.html#a579ae082f58a0317b7ef029b20f52889',1,'DWT_Type']]], + ['function1',['FUNCTION1',['../struct_d_w_t___type.html#a8dfcf25675f9606aa305c46e85182e4e',1,'DWT_Type']]], + ['function2',['FUNCTION2',['../struct_d_w_t___type.html#ab1b60d6600c38abae515bab8e86a188f',1,'DWT_Type']]], + ['function3',['FUNCTION3',['../struct_d_w_t___type.html#a52d4ff278fae6f9216c63b74ce328841',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_68.html b/CMSIS/Documentation/Core/html/search/all_68.html new file mode 100644 index 0000000..6df9097 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_68.js b/CMSIS/Documentation/Core/html/search/all_68.js new file mode 100644 index 0000000..9b98111 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_68.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['hardfault_5firqn',['HardFault_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ab1a222a34a32f0ef5ac65e714efc1f85',1,'Ref_NVIC.txt']]], + ['hfsr',['HFSR',['../struct_s_c_b___type.html#a14ad254659362b9752c69afe3fd80934',1,'SCB_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_69.html b/CMSIS/Documentation/Core/html/search/all_69.html new file mode 100644 index 0000000..1a00b55 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_69.js b/CMSIS/Documentation/Core/html/search/all_69.js new file mode 100644 index 0000000..eb39731 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_69.js @@ -0,0 +1,28 @@ +var searchData= +[ + ['iabr',['IABR',['../struct_n_v_i_c___type.html#a4bca5452748ba84d64536fb6a5d795af',1,'NVIC_Type']]], + ['i_2dcache_20functions',['I-Cache Functions',['../group___icache__functions__m7.html',1,'']]], + ['icer',['ICER',['../struct_n_v_i_c___type.html#a245df8bac1da05c39eadabede9323203',1,'NVIC_Type']]], + ['icpr',['ICPR',['../struct_n_v_i_c___type.html#a8d8f45d9c5c67bba3c153c55574bac95',1,'NVIC_Type']]], + ['icsr',['ICSR',['../struct_s_c_b___type.html#a0ca18ef984d132c6bf4d9b61cd00f05a',1,'SCB_Type']]], + ['ictr',['ICTR',['../struct_s_cn_s_c_b___type.html#a34ec1d771245eb9bd0e3ec9336949762',1,'SCnSCB_Type']]], + ['intrinsic_20functions_20for_20cpu_20instructions',['Intrinsic Functions for CPU Instructions',['../group__intrinsic___c_p_u__gr.html',1,'']]], + ['intrinsic_20functions_20for_20simd_20instructions_20_5bonly_20cortex_2dm4_20and_20cortex_2dm7_5d',['Intrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7]',['../group__intrinsic___s_i_m_d__gr.html',1,'']]], + ['ip',['IP',['../struct_n_v_i_c___type.html#a7ff7364a4260df67a2784811e8da4efd',1,'NVIC_Type']]], + ['ipsr_5ftype',['IPSR_Type',['../union_i_p_s_r___type.html',1,'']]], + ['irqn_5ftype',['IRQn_Type',['../group___n_v_i_c__gr.html#ga7e1129cd8a196f4284d41db3e82ad5c8',1,'Ref_NVIC.txt']]], + ['isar',['ISAR',['../struct_s_c_b___type.html#ae0136a2d2d3c45f016b2c449e92b2066',1,'SCB_Type']]], + ['iser',['ISER',['../struct_n_v_i_c___type.html#a9fccef5a60a0d5e81fcd7869a6274f47',1,'NVIC_Type']]], + ['ispr',['ISPR',['../struct_n_v_i_c___type.html#a8f731a9f428efc86e8d311b52ce823d0',1,'NVIC_Type']]], + ['isr',['ISR',['../union_i_p_s_r___type.html#ab46e5f1b2f4d17cfb9aca4fffcbb2fa5',1,'IPSR_Type::ISR()'],['../unionx_p_s_r___type.html#a3e9120dcf1a829fc8d2302b4d0673970',1,'xPSR_Type::ISR()']]], + ['it',['IT',['../unionx_p_s_r___type.html#a3200966922a194d84425e2807a7f1328',1,'xPSR_Type']]], + ['itatbctr0',['ITATBCTR0',['../struct_t_p_i___type.html#aaa573b2e073e76e93c51ecec79c616d0',1,'TPI_Type']]], + ['itatbctr2',['ITATBCTR2',['../struct_t_p_i___type.html#ab358319b969d3fed0f89bbe33e9f1652',1,'TPI_Type']]], + ['itctrl',['ITCTRL',['../struct_t_p_i___type.html#aaa4c823c10f115f7517c82ef86a5a68d',1,'TPI_Type']]], + ['itm_5fcheckchar',['ITM_CheckChar',['../group___i_t_m___debug__gr.html#ga7f9bbabd9756d1a7eafb2d9bf27e0535',1,'Ref_Debug.txt']]], + ['itm_5freceivechar',['ITM_ReceiveChar',['../group___i_t_m___debug__gr.html#ga37b8f41cae703b5ff6947e271065558c',1,'Ref_Debug.txt']]], + ['itm_5frxbuffer',['ITM_RxBuffer',['../group___i_t_m___debug__gr.html#ga12e68e55a7badc271b948d6c7230b2a8',1,'Ref_Debug.txt']]], + ['itm_5fsendchar',['ITM_SendChar',['../group___i_t_m___debug__gr.html#gaaa7c716331f74d644bf6bf25cd3392d1',1,'Ref_Debug.txt']]], + ['itm_5ftype',['ITM_Type',['../struct_i_t_m___type.html',1,'']]], + ['interrupts_20and_20exceptions_20_28nvic_29',['Interrupts and Exceptions (NVIC)',['../group___n_v_i_c__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_6c.html b/CMSIS/Documentation/Core/html/search/all_6c.html new file mode 100644 index 0000000..f6383cc --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_6c.js b/CMSIS/Documentation/Core/html/search/all_6c.js new file mode 100644 index 0000000..ae3bc1b --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6c.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['load',['LOAD',['../struct_sys_tick___type.html#a4780a489256bb9f54d0ba8ed4de191cd',1,'SysTick_Type']]], + ['lsucnt',['LSUCNT',['../struct_d_w_t___type.html#acc05d89bdb1b4fe2fa499920ec02d0b1',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_6d.html b/CMSIS/Documentation/Core/html/search/all_6d.html new file mode 100644 index 0000000..2e27d4d --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_6d.js b/CMSIS/Documentation/Core/html/search/all_6d.js new file mode 100644 index 0000000..fd87e41 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6d.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['misra_2dc_3a2004_20compliance_20exceptions',['MISRA-C:2004 Compliance Exceptions',['../_c_o_r_e__m_i_s_r_a__exceptions_pg.html',1,'']]], + ['mask0',['MASK0',['../struct_d_w_t___type.html#a821eb5e71f340ec077efc064cfc567db',1,'DWT_Type']]], + ['mask1',['MASK1',['../struct_d_w_t___type.html#aabf94936c9340e62fed836dcfb152405',1,'DWT_Type']]], + ['mask2',['MASK2',['../struct_d_w_t___type.html#a00ac4d830dfe0070a656cda9baed170f',1,'DWT_Type']]], + ['mask3',['MASK3',['../struct_d_w_t___type.html#a2a509d8505c37a3b64f6b24993df5f3f',1,'DWT_Type']]], + ['memorymanagement_5firqn',['MemoryManagement_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a33ff1cf7098de65d61b6354fee6cd5aa',1,'Ref_NVIC.txt']]], + ['misra_2etxt',['MISRA.txt',['../_m_i_s_r_a_8txt.html',1,'']]], + ['mmfar',['MMFAR',['../struct_s_c_b___type.html#a2d03d0b7cec2254f39eb1c46c7445e80',1,'SCB_Type']]], + ['mmfr',['MMFR',['../struct_s_c_b___type.html#aa11887804412bda283cc85a83fdafa7c',1,'SCB_Type']]], + ['mpu_5ftype',['MPU_Type',['../struct_m_p_u___type.html',1,'']]], + ['mvfr0',['MVFR0',['../struct_f_p_u___type.html#a4f19014defe6033d070b80af19ef627c',1,'FPU_Type']]], + ['mvfr1',['MVFR1',['../struct_f_p_u___type.html#a66f8cfa49a423b480001a4e101bf842d',1,'FPU_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_6e.html b/CMSIS/Documentation/Core/html/search/all_6e.html new file mode 100644 index 0000000..1f92ee5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_6e.js b/CMSIS/Documentation/Core/html/search/all_6e.js new file mode 100644 index 0000000..a1941a7 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6e.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['n',['N',['../union_a_p_s_r___type.html#a7e7bbba9b00b0bb3283dc07f1abe37e0',1,'APSR_Type::N()'],['../unionx_p_s_r___type.html#a2db9a52f6d42809627d1a7a607c5dbc5',1,'xPSR_Type::N()']]], + ['nonmaskableint_5firqn',['NonMaskableInt_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ade177d9c70c89e084093024b932a4e30',1,'Ref_NVIC.txt']]], + ['npriv',['nPRIV',['../union_c_o_n_t_r_o_l___type.html#a35c1732cf153b7b5c4bd321cf1de9605',1,'CONTROL_Type']]], + ['nvic_5fclearpendingirq',['NVIC_ClearPendingIRQ',['../group___n_v_i_c__gr.html#ga382ad6bedd6eecfdabd1b94dd128a01a',1,'Ref_NVIC.txt']]], + ['nvic_5fdecodepriority',['NVIC_DecodePriority',['../group___n_v_i_c__gr.html#gad3cbca1be7a4726afa9448a9acd89377',1,'Ref_NVIC.txt']]], + ['nvic_5fdisableirq',['NVIC_DisableIRQ',['../group___n_v_i_c__gr.html#ga736ba13a76eb37ef6e2c253be8b0331c',1,'Ref_NVIC.txt']]], + ['nvic_5fenableirq',['NVIC_EnableIRQ',['../group___n_v_i_c__gr.html#ga530ad9fda2ed1c8b70e439ecfe80591f',1,'Ref_NVIC.txt']]], + ['nvic_5fencodepriority',['NVIC_EncodePriority',['../group___n_v_i_c__gr.html#ga0688c59605b119c53c71b2505ab23eb5',1,'Ref_NVIC.txt']]], + ['nvic_5fgetactive',['NVIC_GetActive',['../group___n_v_i_c__gr.html#gadf4252e600661fd762cfc0d1a9f5b892',1,'Ref_NVIC.txt']]], + ['nvic_5fgetpendingirq',['NVIC_GetPendingIRQ',['../group___n_v_i_c__gr.html#ga95a8329a680b051ecf3ee8f516acc662',1,'Ref_NVIC.txt']]], + ['nvic_5fgetpriority',['NVIC_GetPriority',['../group___n_v_i_c__gr.html#gab18fb9f6c5f4c70fdd73047f0f7c8395',1,'Ref_NVIC.txt']]], + ['nvic_5fgetprioritygrouping',['NVIC_GetPriorityGrouping',['../group___n_v_i_c__gr.html#gaa81b19849367d3cdb95ac108c500fa78',1,'Ref_NVIC.txt']]], + ['nvic_5fsetpendingirq',['NVIC_SetPendingIRQ',['../group___n_v_i_c__gr.html#ga3b885147ef9965ecede49614de8df9d2',1,'Ref_NVIC.txt']]], + ['nvic_5fsetpriority',['NVIC_SetPriority',['../group___n_v_i_c__gr.html#ga5bb7f43ad92937c039dee3d36c3c2798',1,'Ref_NVIC.txt']]], + ['nvic_5fsetprioritygrouping',['NVIC_SetPriorityGrouping',['../group___n_v_i_c__gr.html#gad78f447e891789b4d8f2e5b21eeda354',1,'Ref_NVIC.txt']]], + ['nvic_5fsystemreset',['NVIC_SystemReset',['../group___n_v_i_c__gr.html#ga1b47d17e90b6a03e7bd1ec6a0d549b46',1,'Ref_NVIC.txt']]], + ['nvic_5ftype',['NVIC_Type',['../struct_n_v_i_c___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_6f.html b/CMSIS/Documentation/Core/html/search/all_6f.html new file mode 100644 index 0000000..61827e8 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_6f.js b/CMSIS/Documentation/Core/html/search/all_6f.js new file mode 100644 index 0000000..407bf09 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_6f.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['overview',['Overview',['../index.html',1,'']]], + ['overview_2etxt',['Overview.txt',['../_overview_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_70.html b/CMSIS/Documentation/Core/html/search/all_70.html new file mode 100644 index 0000000..0340151 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_70.js b/CMSIS/Documentation/Core/html/search/all_70.js new file mode 100644 index 0000000..b5d0c4d --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_70.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['pcsr',['PCSR',['../struct_d_w_t___type.html#a6353ca1d1ad9bc1be05d3b5632960113',1,'DWT_Type']]], + ['pendsv_5firqn',['PendSV_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a03c3cc89984928816d81793fc7bce4a2',1,'Ref_NVIC.txt']]], + ['peripheral_20access',['Peripheral Access',['../group__peripheral__gr.html',1,'']]], + ['pfr',['PFR',['../struct_s_c_b___type.html#a681c9d9e518b217976bef38c2423d83d',1,'SCB_Type']]], + ['port',['PORT',['../struct_i_t_m___type.html#af4c205be465780a20098387120bdb482',1,'ITM_Type']]], + ['pvd_5fstm_5firqn',['PVD_STM_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a853e0f318108110e0527f29733d11f86',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_71.html b/CMSIS/Documentation/Core/html/search/all_71.html new file mode 100644 index 0000000..b4dc1e6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_71.js b/CMSIS/Documentation/Core/html/search/all_71.js new file mode 100644 index 0000000..107ca70 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_71.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['q',['Q',['../union_a_p_s_r___type.html#a22d10913489d24ab08bd83457daa88de',1,'APSR_Type::Q()'],['../unionx_p_s_r___type.html#add7cbd2b0abd8954d62cd7831796ac7c',1,'xPSR_Type::Q()']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_72.html b/CMSIS/Documentation/Core/html/search/all_72.html new file mode 100644 index 0000000..0ab18d6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_72.js b/CMSIS/Documentation/Core/html/search/all_72.js new file mode 100644 index 0000000..6497317 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_72.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['revision_20history_20of_20cmsis_2dcore',['Revision History of CMSIS-CORE',['../core_revision_history.html',1,'']]], + ['rasr',['RASR',['../struct_m_p_u___type.html#a9236c629b7cf86f8bd2459c610fdf715',1,'MPU_Type']]], + ['rasr_5fa1',['RASR_A1',['../struct_m_p_u___type.html#ab5a224ccd12ac55ddfe11d9eca42de48',1,'MPU_Type']]], + ['rasr_5fa2',['RASR_A2',['../struct_m_p_u___type.html#ac60e0919871b66446a039838bcaaec3b',1,'MPU_Type']]], + ['rasr_5fa3',['RASR_A3',['../struct_m_p_u___type.html#a9c0b2d3e3e16bb4e7dfa069652d5a155',1,'MPU_Type']]], + ['rbar',['RBAR',['../struct_m_p_u___type.html#ac953770d38a7d322b971d93eb8a5b062',1,'MPU_Type']]], + ['rbar_5fa1',['RBAR_A1',['../struct_m_p_u___type.html#a13d69b9bea12861383f3a62764b02f63',1,'MPU_Type']]], + ['rbar_5fa2',['RBAR_A2',['../struct_m_p_u___type.html#a57dc551614932150e684fcc60590c2c4',1,'MPU_Type']]], + ['rbar_5fa3',['RBAR_A3',['../struct_m_p_u___type.html#a345911aabecd1f7d93a1bff7738b0d86',1,'MPU_Type']]], + ['ref_5fcm4_5fsimd_2etxt',['Ref_cm4_simd.txt',['../_ref__cm4__simd_8txt.html',1,'']]], + ['ref_5fcminstr_2etxt',['Ref_cmInstr.txt',['../_ref__cm_instr_8txt.html',1,'']]], + ['ref_5fcorereg_2etxt',['Ref_CoreReg.txt',['../_ref___core_reg_8txt.html',1,'']]], + ['ref_5fdatastructs_2etxt',['Ref_DataStructs.txt',['../_ref___data_structs_8txt.html',1,'']]], + ['ref_5fdebug_2etxt',['Ref_Debug.txt',['../_ref___debug_8txt.html',1,'']]], + ['ref_5fnvic_2etxt',['Ref_NVIC.txt',['../_ref___n_v_i_c_8txt.html',1,'']]], + ['ref_5fperipheral_2etxt',['Ref_Peripheral.txt',['../_ref___peripheral_8txt.html',1,'']]], + ['ref_5fsystemandclock_2etxt',['Ref_SystemAndClock.txt',['../_ref___system_and_clock_8txt.html',1,'']]], + ['ref_5fsystick_2etxt',['Ref_Systick.txt',['../_ref___systick_8txt.html',1,'']]], + ['regmap_5fcmsis2arm_5fdoc_2etxt',['RegMap_CMSIS2ARM_Doc.txt',['../_reg_map___c_m_s_i_s2_a_r_m___doc_8txt.html',1,'']]], + ['register_20mapping',['Register Mapping',['../_reg_map_pg.html',1,'']]], + ['reserved0',['RESERVED0',['../struct_n_v_i_c___type.html#a2de17698945ea49abd58a2d45bdc9c80',1,'NVIC_Type::RESERVED0()'],['../struct_s_c_b___type.html#ac89a5d9901e3748d22a7090bfca2bee6',1,'SCB_Type::RESERVED0()'],['../struct_s_cn_s_c_b___type.html#afe1d5fd2966d5062716613b05c8d0ae1',1,'SCnSCB_Type::RESERVED0()'],['../struct_i_t_m___type.html#a2c5ae30385b5f370d023468ea9914c0e',1,'ITM_Type::RESERVED0()'],['../struct_f_p_u___type.html#a7b2967b069046c8544adbbc1db143a36',1,'FPU_Type::RESERVED0()'],['../struct_d_w_t___type.html#addd893d655ed90d40705b20170daac59',1,'DWT_Type::RESERVED0()'],['../struct_t_p_i___type.html#af143c5e8fc9a3b2be2878e9c1f331aa9',1,'TPI_Type::RESERVED0()']]], + ['reserved1',['RESERVED1',['../struct_i_t_m___type.html#afffce5b93bbfedbaee85357d0b07ebce',1,'ITM_Type::RESERVED1()'],['../struct_d_w_t___type.html#a069871233a8c1df03521e6d7094f1de4',1,'DWT_Type::RESERVED1()'],['../struct_t_p_i___type.html#ac3956fe93987b725d89d3be32738da12',1,'TPI_Type::RESERVED1()']]], + ['reserved2',['RESERVED2',['../struct_n_v_i_c___type.html#a0953af43af8ec7fd5869a1d826ce5b72',1,'NVIC_Type::RESERVED2()'],['../struct_i_t_m___type.html#af56b2f07bc6b42cd3e4d17e1b27cff7b',1,'ITM_Type::RESERVED2()'],['../struct_d_w_t___type.html#a8556ca1c32590517602d92fe0cd55738',1,'DWT_Type::RESERVED2()'],['../struct_t_p_i___type.html#ac7bbb92e6231b9b38ac483f7d161a096',1,'TPI_Type::RESERVED2()']]], + ['reserved3',['RESERVED3',['../struct_n_v_i_c___type.html#a9dd330835dbf21471e7b5be8692d77ab',1,'NVIC_Type::RESERVED3()'],['../struct_t_p_i___type.html#a31700c8cdd26e4c094db72af33d9f24c',1,'TPI_Type::RESERVED3()']]], + ['reserved4',['RESERVED4',['../struct_n_v_i_c___type.html#a5c0e5d507ac3c1bd5cdaaf9bbd177790',1,'NVIC_Type::RESERVED4()'],['../struct_t_p_i___type.html#a684071216fafee4e80be6aaa932cec46',1,'TPI_Type::RESERVED4()']]], + ['reserved5',['RESERVED5',['../struct_n_v_i_c___type.html#a4f753b4f824270175af045ac99bc12e8',1,'NVIC_Type::RESERVED5()'],['../struct_t_p_i___type.html#a3f80dd93f6bab6524603a7aa58de9a30',1,'TPI_Type::RESERVED5()']]], + ['reserved7',['RESERVED7',['../struct_t_p_i___type.html#a476ca23fbc9480f1697fbec871130550',1,'TPI_Type']]], + ['rnr',['RNR',['../struct_m_p_u___type.html#aa800d44f4d3520cc891d7b8d711320c1',1,'MPU_Type']]], + ['rserved1',['RSERVED1',['../struct_n_v_i_c___type.html#a6d1daf7ab6f2ba83f57ff67ae6f571fe',1,'NVIC_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_73.html b/CMSIS/Documentation/Core/html/search/all_73.html new file mode 100644 index 0000000..1ec8f17 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_73.js b/CMSIS/Documentation/Core/html/search/all_73.js new file mode 100644 index 0000000..06d6c87 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_73.js @@ -0,0 +1,36 @@ +var searchData= +[ + ['scb_5fcleandcache',['SCB_CleanDCache',['../group___dcache__functions__m7.html#ga55583e3065c6eabca204b8b89b121c4c',1,'core_cm7.txt']]], + ['scb_5fcleandcache_5fby_5faddr',['SCB_CleanDCache_by_Addr',['../group___dcache__functions__m7.html#ga696fadbf7b9cc71dad42fab61873a40d',1,'core_cm7.txt']]], + ['scb_5fcleaninvalidatedcache',['SCB_CleanInvalidateDCache',['../group___dcache__functions__m7.html#ga1b741def9e3b2ca97dc9ea49b8ce505c',1,'core_cm7.txt']]], + ['scb_5fcleaninvalidatedcache_5fby_5faddr',['SCB_CleanInvalidateDCache_by_Addr',['../group___dcache__functions__m7.html#ga630131b2572eaa16b569ed364dfc895e',1,'core_cm7.txt']]], + ['scb_5fdisabledcache',['SCB_DisableDCache',['../group___dcache__functions__m7.html#ga6468170f90d270caab8116e7a4f0b5fe',1,'core_cm7.txt']]], + ['scb_5fdisableicache',['SCB_DisableICache',['../group___icache__functions__m7.html#gaba757390852f95b3ac2d8638c717d8d8',1,'core_cm7.txt']]], + ['scb_5fenabledcache',['SCB_EnableDCache',['../group___dcache__functions__m7.html#ga63aa640d9006021a796a5dcf9c7180b6',1,'core_cm7.txt']]], + ['scb_5fenableicache',['SCB_EnableICache',['../group___icache__functions__m7.html#gaf9e7c6c8e16ada1f95e5bf5a03505b68',1,'core_cm7.txt']]], + ['scb_5fgetfputype',['SCB_GetFPUType',['../group__fpu__functions__m7.html#ga6bcad99ce80a0e7e4ddc6f2379081756',1,'core_cm7.txt']]], + ['scb_5finvalidatedcache',['SCB_InvalidateDCache',['../group___dcache__functions__m7.html#gace2d30db08887d0bdb818b8a785a5ce6',1,'core_cm7.txt']]], + ['scb_5finvalidatedcache_5fby_5faddr',['SCB_InvalidateDCache_by_Addr',['../group___dcache__functions__m7.html#ga503ef7ef58c0773defd15a82f6336c09',1,'core_cm7.txt']]], + ['scb_5finvalidateicache',['SCB_InvalidateICache',['../group___icache__functions__m7.html#ga50d373a785edd782c5de5a3b55e30ff3',1,'core_cm7.txt']]], + ['scb_5ftype',['SCB_Type',['../struct_s_c_b___type.html',1,'']]], + ['scnscb_5ftype',['SCnSCB_Type',['../struct_s_cn_s_c_b___type.html',1,'']]], + ['scr',['SCR',['../struct_s_c_b___type.html#a3a4840c6fa4d1ee75544f4032c88ec34',1,'SCB_Type']]], + ['shcsr',['SHCSR',['../struct_s_c_b___type.html#a7b5ae9741a99808043394c4743b635c4',1,'SCB_Type']]], + ['shp',['SHP',['../struct_s_c_b___type.html#a85768f4b3dbbc41fd760041ee1202162',1,'SCB_Type']]], + ['sleepcnt',['SLEEPCNT',['../struct_d_w_t___type.html#a416a54e2084ce66e5ca74f152a5ecc70',1,'DWT_Type']]], + ['sppr',['SPPR',['../struct_t_p_i___type.html#a12f79d4e3ddc69893ba8bff890d04cc5',1,'TPI_Type']]], + ['spsel',['SPSEL',['../union_c_o_n_t_r_o_l___type.html#a8cc085fea1c50a8bd9adea63931ee8e2',1,'CONTROL_Type']]], + ['sspsr',['SSPSR',['../struct_t_p_i___type.html#a7b72598e20066133e505bb781690dc22',1,'TPI_Type']]], + ['startup_20file_20startup_5f_3cdevice_3e_2es',['Startup File startup_<device>.s',['../startup_s_pg.html',1,'Templates_pg']]], + ['stir',['STIR',['../struct_n_v_i_c___type.html#a37de89637466e007171c6b135299bc75',1,'NVIC_Type']]], + ['svcall_5firqn',['SVCall_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a4ce820b3cc6cf3a796b41aadc0cf1237',1,'Ref_NVIC.txt']]], + ['system_20configuration_20files_20system_5f_3cdevice_3e_2ec_20and_20system_5f_3cdevice_3e_2eh',['System Configuration Files system_<device>.c and system_<device>.h',['../system_c_pg.html',1,'Templates_pg']]], + ['system_20and_20clock_20configuration',['System and Clock Configuration',['../group__system__init__gr.html',1,'']]], + ['systemcoreclock',['SystemCoreClock',['../group__system__init__gr.html#gaa3cd3e43291e81e795d642b79b6088e6',1,'Ref_SystemAndClock.txt']]], + ['systemcoreclockupdate',['SystemCoreClockUpdate',['../group__system__init__gr.html#gae0c36a9591fe6e9c45ecb21a794f0f0f',1,'Ref_SystemAndClock.txt']]], + ['systeminit',['SystemInit',['../group__system__init__gr.html#ga93f514700ccf00d08dbdcff7f1224eb2',1,'Ref_SystemAndClock.txt']]], + ['systick_5fconfig',['SysTick_Config',['../group___sys_tick__gr.html#gabe47de40e9b0ad465b752297a9d9f427',1,'Ref_Systick.txt']]], + ['systick_20timer_20_28systick_29',['Systick Timer (SYSTICK)',['../group___sys_tick__gr.html',1,'']]], + ['systick_5firqn',['SysTick_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6dbff8f8543325f3474cbae2446776e7',1,'Ref_NVIC.txt']]], + ['systick_5ftype',['SysTick_Type',['../struct_sys_tick___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_74.html b/CMSIS/Documentation/Core/html/search/all_74.html new file mode 100644 index 0000000..fdc6589 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_74.js b/CMSIS/Documentation/Core/html/search/all_74.js new file mode 100644 index 0000000..32519be --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_74.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['t',['T',['../unionx_p_s_r___type.html#a7eed9fe24ae8d354cd76ae1c1110a658',1,'xPSR_Type']]], + ['tcr',['TCR',['../struct_i_t_m___type.html#a04b9fbc83759cb818dfa161d39628426',1,'ITM_Type']]], + ['template_2etxt',['Template.txt',['../_template_8txt.html',1,'']]], + ['template_20files',['Template Files',['../_templates_pg.html',1,'']]], + ['ter',['TER',['../struct_i_t_m___type.html#acd03c6858f7b678dab6a6121462e7807',1,'ITM_Type']]], + ['tpi_5ftype',['TPI_Type',['../struct_t_p_i___type.html',1,'']]], + ['tpr',['TPR',['../struct_i_t_m___type.html#ae907229ba50538bf370fbdfd54c099a2',1,'ITM_Type']]], + ['trigger',['TRIGGER',['../struct_t_p_i___type.html#a4d4cd2357f72333a82a1313228287bbd',1,'TPI_Type']]], + ['type',['TYPE',['../struct_m_p_u___type.html#a0433efc1383674bc8e86cc0e830b462d',1,'MPU_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_75.html b/CMSIS/Documentation/Core/html/search/all_75.html new file mode 100644 index 0000000..ab8455e --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_75.js b/CMSIS/Documentation/Core/html/search/all_75.js new file mode 100644 index 0000000..ff9ddd5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_75.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['u16',['u16',['../struct_i_t_m___type.html#a962a970dfd286cad7f8a8577e87d4ad3',1,'ITM_Type']]], + ['u32',['u32',['../struct_i_t_m___type.html#a5834885903a557674f078f3b71fa8bc8',1,'ITM_Type']]], + ['u8',['u8',['../struct_i_t_m___type.html#ae773bf9f9dac64e6c28b14aa39f74275',1,'ITM_Type']]], + ['usagefault_5firqn',['UsageFault_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6895237c9443601ac832efa635dd8bbf',1,'Ref_NVIC.txt']]], + ['using_2etxt',['Using.txt',['../_using_8txt.html',1,'']]], + ['using_20cmsis_20with_20generic_20arm_20processors',['Using CMSIS with generic ARM Processors',['../_using__a_r_m_pg.html',1,'Using_pg']]], + ['using_20cmsis_20in_20embedded_20applications',['Using CMSIS in Embedded Applications',['../_using_pg.html',1,'']]], + ['using_20interrupt_20vector_20remap',['Using Interrupt Vector Remap',['../_using__v_t_o_r_pg.html',1,'Using_pg']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_76.html b/CMSIS/Documentation/Core/html/search/all_76.html new file mode 100644 index 0000000..0ff5edd --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_76.js b/CMSIS/Documentation/Core/html/search/all_76.js new file mode 100644 index 0000000..698e362 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_76.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['v',['V',['../union_a_p_s_r___type.html#a8004d224aacb78ca37774c35f9156e7e',1,'APSR_Type::V()'],['../unionx_p_s_r___type.html#af14df16ea0690070c45b95f2116b7a0a',1,'xPSR_Type::V()']]], + ['val',['VAL',['../struct_sys_tick___type.html#a9b5420d17e8e43104ddd4ae5a610af93',1,'SysTick_Type']]], + ['vtor',['VTOR',['../struct_s_c_b___type.html#a187a4578e920544ed967f98020fb8170',1,'SCB_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_77.html b/CMSIS/Documentation/Core/html/search/all_77.html new file mode 100644 index 0000000..73323d3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_77.js b/CMSIS/Documentation/Core/html/search/all_77.js new file mode 100644 index 0000000..a148462 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_77.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['w',['w',['../union_a_p_s_r___type.html#ae4c2ef8c9430d7b7bef5cbfbbaed3a94',1,'APSR_Type::w()'],['../union_i_p_s_r___type.html#a4adca999d3a0bc1ae682d73ea7cfa879',1,'IPSR_Type::w()'],['../unionx_p_s_r___type.html#a1a47176768f45f79076c4f5b1b534bc2',1,'xPSR_Type::w()'],['../union_c_o_n_t_r_o_l___type.html#a6b642cca3d96da660b1198c133ca2a1f',1,'CONTROL_Type::w()']]], + ['wwdg_5fstm_5firqn',['WWDG_STM_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8aa62e040960b4beb6cba107e4703c12d2',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_78.html b/CMSIS/Documentation/Core/html/search/all_78.html new file mode 100644 index 0000000..10780d6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_78.js b/CMSIS/Documentation/Core/html/search/all_78.js new file mode 100644 index 0000000..0167f51 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['xpsr_5ftype',['xPSR_Type',['../unionx_p_s_r___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/all_7a.html b/CMSIS/Documentation/Core/html/search/all_7a.html new file mode 100644 index 0000000..0593a62 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_7a.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/all_7a.js b/CMSIS/Documentation/Core/html/search/all_7a.js new file mode 100644 index 0000000..ed348a5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/all_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['z',['Z',['../union_a_p_s_r___type.html#a3b04d58738b66a28ff13f23d8b0ba7e5',1,'APSR_Type::Z()'],['../unionx_p_s_r___type.html#a1e5d9801013d5146f2e02d9b7b3da562',1,'xPSR_Type::Z()']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_61.html b/CMSIS/Documentation/Core/html/search/classes_61.html new file mode 100644 index 0000000..85e5d72 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_61.js b/CMSIS/Documentation/Core/html/search/classes_61.js new file mode 100644 index 0000000..c29bd4c --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['apsr_5ftype',['APSR_Type',['../union_a_p_s_r___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_63.html b/CMSIS/Documentation/Core/html/search/classes_63.html new file mode 100644 index 0000000..72c66b9 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_63.js b/CMSIS/Documentation/Core/html/search/classes_63.js new file mode 100644 index 0000000..d88954d --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['control_5ftype',['CONTROL_Type',['../union_c_o_n_t_r_o_l___type.html',1,'']]], + ['coredebug_5ftype',['CoreDebug_Type',['../struct_core_debug___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_64.html b/CMSIS/Documentation/Core/html/search/classes_64.html new file mode 100644 index 0000000..5902708 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_64.js b/CMSIS/Documentation/Core/html/search/classes_64.js new file mode 100644 index 0000000..5a47b74 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['dwt_5ftype',['DWT_Type',['../struct_d_w_t___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_66.html b/CMSIS/Documentation/Core/html/search/classes_66.html new file mode 100644 index 0000000..941988c --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_66.js b/CMSIS/Documentation/Core/html/search/classes_66.js new file mode 100644 index 0000000..f77ca13 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['fpu_5ftype',['FPU_Type',['../struct_f_p_u___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_69.html b/CMSIS/Documentation/Core/html/search/classes_69.html new file mode 100644 index 0000000..961dbea --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_69.js b/CMSIS/Documentation/Core/html/search/classes_69.js new file mode 100644 index 0000000..a639ed9 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_69.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['ipsr_5ftype',['IPSR_Type',['../union_i_p_s_r___type.html',1,'']]], + ['itm_5ftype',['ITM_Type',['../struct_i_t_m___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_6d.html b/CMSIS/Documentation/Core/html/search/classes_6d.html new file mode 100644 index 0000000..abe6f0d --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_6d.js b/CMSIS/Documentation/Core/html/search/classes_6d.js new file mode 100644 index 0000000..70da5ab --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['mpu_5ftype',['MPU_Type',['../struct_m_p_u___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_6e.html b/CMSIS/Documentation/Core/html/search/classes_6e.html new file mode 100644 index 0000000..44803ba --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_6e.js b/CMSIS/Documentation/Core/html/search/classes_6e.js new file mode 100644 index 0000000..295c3af --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_6e.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['nvic_5ftype',['NVIC_Type',['../struct_n_v_i_c___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_73.html b/CMSIS/Documentation/Core/html/search/classes_73.html new file mode 100644 index 0000000..a1bf0b9 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_73.js b/CMSIS/Documentation/Core/html/search/classes_73.js new file mode 100644 index 0000000..24ac519 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_73.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['scb_5ftype',['SCB_Type',['../struct_s_c_b___type.html',1,'']]], + ['scnscb_5ftype',['SCnSCB_Type',['../struct_s_cn_s_c_b___type.html',1,'']]], + ['systick_5ftype',['SysTick_Type',['../struct_sys_tick___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_74.html b/CMSIS/Documentation/Core/html/search/classes_74.html new file mode 100644 index 0000000..f7f27ce --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_74.js b/CMSIS/Documentation/Core/html/search/classes_74.js new file mode 100644 index 0000000..1e04b5d --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['tpi_5ftype',['TPI_Type',['../struct_t_p_i___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/classes_78.html b/CMSIS/Documentation/Core/html/search/classes_78.html new file mode 100644 index 0000000..dfce8ec --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/classes_78.js b/CMSIS/Documentation/Core/html/search/classes_78.js new file mode 100644 index 0000000..0167f51 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/classes_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['xpsr_5ftype',['xPSR_Type',['../unionx_p_s_r___type.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/close.png b/CMSIS/Documentation/Core/html/search/close.png new file mode 100644 index 0000000..9342d3d Binary files /dev/null and b/CMSIS/Documentation/Core/html/search/close.png differ diff --git a/CMSIS/Documentation/Core/html/search/enums_69.html b/CMSIS/Documentation/Core/html/search/enums_69.html new file mode 100644 index 0000000..0b211f2 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enums_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enums_69.js b/CMSIS/Documentation/Core/html/search/enums_69.js new file mode 100644 index 0000000..c9f8f4e --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enums_69.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['irqn_5ftype',['IRQn_Type',['../group___n_v_i_c__gr.html#ga7e1129cd8a196f4284d41db3e82ad5c8',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_62.html b/CMSIS/Documentation/Core/html/search/enumvalues_62.html new file mode 100644 index 0000000..e770838 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_62.js b/CMSIS/Documentation/Core/html/search/enumvalues_62.js new file mode 100644 index 0000000..eb1ab56 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_62.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['busfault_5firqn',['BusFault_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8693500eff174f16119e96234fee73af',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_64.html b/CMSIS/Documentation/Core/html/search/enumvalues_64.html new file mode 100644 index 0000000..2cae30b --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_64.js b/CMSIS/Documentation/Core/html/search/enumvalues_64.js new file mode 100644 index 0000000..a18acaa --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['debugmonitor_5firqn',['DebugMonitor_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a8e033fcef7aed98a31c60a7de206722c',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_68.html b/CMSIS/Documentation/Core/html/search/enumvalues_68.html new file mode 100644 index 0000000..0f58de6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_68.js b/CMSIS/Documentation/Core/html/search/enumvalues_68.js new file mode 100644 index 0000000..c8b95ba --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hardfault_5firqn',['HardFault_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ab1a222a34a32f0ef5ac65e714efc1f85',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_6d.html b/CMSIS/Documentation/Core/html/search/enumvalues_6d.html new file mode 100644 index 0000000..5e0c86b --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_6d.js b/CMSIS/Documentation/Core/html/search/enumvalues_6d.js new file mode 100644 index 0000000..cd9f6ba --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['memorymanagement_5firqn',['MemoryManagement_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a33ff1cf7098de65d61b6354fee6cd5aa',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_6e.html b/CMSIS/Documentation/Core/html/search/enumvalues_6e.html new file mode 100644 index 0000000..3c41b09 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_6e.js b/CMSIS/Documentation/Core/html/search/enumvalues_6e.js new file mode 100644 index 0000000..05bc07e --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_6e.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['nonmaskableint_5firqn',['NonMaskableInt_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8ade177d9c70c89e084093024b932a4e30',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_70.html b/CMSIS/Documentation/Core/html/search/enumvalues_70.html new file mode 100644 index 0000000..35a05be --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_70.js b/CMSIS/Documentation/Core/html/search/enumvalues_70.js new file mode 100644 index 0000000..f20d630 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_70.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['pendsv_5firqn',['PendSV_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a03c3cc89984928816d81793fc7bce4a2',1,'Ref_NVIC.txt']]], + ['pvd_5fstm_5firqn',['PVD_STM_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a853e0f318108110e0527f29733d11f86',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_73.html b/CMSIS/Documentation/Core/html/search/enumvalues_73.html new file mode 100644 index 0000000..f2f7db4 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_73.js b/CMSIS/Documentation/Core/html/search/enumvalues_73.js new file mode 100644 index 0000000..f1c4dd0 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_73.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['svcall_5firqn',['SVCall_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a4ce820b3cc6cf3a796b41aadc0cf1237',1,'Ref_NVIC.txt']]], + ['systick_5firqn',['SysTick_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6dbff8f8543325f3474cbae2446776e7',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_75.html b/CMSIS/Documentation/Core/html/search/enumvalues_75.html new file mode 100644 index 0000000..c0a1504 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_75.js b/CMSIS/Documentation/Core/html/search/enumvalues_75.js new file mode 100644 index 0000000..807b165 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['usagefault_5firqn',['UsageFault_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8a6895237c9443601ac832efa635dd8bbf',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_77.html b/CMSIS/Documentation/Core/html/search/enumvalues_77.html new file mode 100644 index 0000000..591e608 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/enumvalues_77.js b/CMSIS/Documentation/Core/html/search/enumvalues_77.js new file mode 100644 index 0000000..4b97a00 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/enumvalues_77.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['wwdg_5fstm_5firqn',['WWDG_STM_IRQn',['../group___n_v_i_c__gr.html#gga7e1129cd8a196f4284d41db3e82ad5c8aa62e040960b4beb6cba107e4703c12d2',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/files_63.html b/CMSIS/Documentation/Core/html/search/files_63.html new file mode 100644 index 0000000..6611a5b --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/files_63.js b/CMSIS/Documentation/Core/html/search/files_63.js new file mode 100644 index 0000000..d541d55 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['core_5fcm7_2etxt',['core_cm7.txt',['../core__cm7_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/files_6d.html b/CMSIS/Documentation/Core/html/search/files_6d.html new file mode 100644 index 0000000..d9d9300 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/files_6d.js b/CMSIS/Documentation/Core/html/search/files_6d.js new file mode 100644 index 0000000..ce45f6c --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['misra_2etxt',['MISRA.txt',['../_m_i_s_r_a_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/files_6f.html b/CMSIS/Documentation/Core/html/search/files_6f.html new file mode 100644 index 0000000..127aac1 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/files_6f.js b/CMSIS/Documentation/Core/html/search/files_6f.js new file mode 100644 index 0000000..10dbfa4 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['overview_2etxt',['Overview.txt',['../_overview_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/files_72.html b/CMSIS/Documentation/Core/html/search/files_72.html new file mode 100644 index 0000000..609fb48 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/files_72.js b/CMSIS/Documentation/Core/html/search/files_72.js new file mode 100644 index 0000000..c93f349 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_72.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['ref_5fcm4_5fsimd_2etxt',['Ref_cm4_simd.txt',['../_ref__cm4__simd_8txt.html',1,'']]], + ['ref_5fcminstr_2etxt',['Ref_cmInstr.txt',['../_ref__cm_instr_8txt.html',1,'']]], + ['ref_5fcorereg_2etxt',['Ref_CoreReg.txt',['../_ref___core_reg_8txt.html',1,'']]], + ['ref_5fdatastructs_2etxt',['Ref_DataStructs.txt',['../_ref___data_structs_8txt.html',1,'']]], + ['ref_5fdebug_2etxt',['Ref_Debug.txt',['../_ref___debug_8txt.html',1,'']]], + ['ref_5fnvic_2etxt',['Ref_NVIC.txt',['../_ref___n_v_i_c_8txt.html',1,'']]], + ['ref_5fperipheral_2etxt',['Ref_Peripheral.txt',['../_ref___peripheral_8txt.html',1,'']]], + ['ref_5fsystemandclock_2etxt',['Ref_SystemAndClock.txt',['../_ref___system_and_clock_8txt.html',1,'']]], + ['ref_5fsystick_2etxt',['Ref_Systick.txt',['../_ref___systick_8txt.html',1,'']]], + ['regmap_5fcmsis2arm_5fdoc_2etxt',['RegMap_CMSIS2ARM_Doc.txt',['../_reg_map___c_m_s_i_s2_a_r_m___doc_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/files_74.html b/CMSIS/Documentation/Core/html/search/files_74.html new file mode 100644 index 0000000..017b3fe --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/files_74.js b/CMSIS/Documentation/Core/html/search/files_74.js new file mode 100644 index 0000000..406ff42 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['template_2etxt',['Template.txt',['../_template_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/files_75.html b/CMSIS/Documentation/Core/html/search/files_75.html new file mode 100644 index 0000000..8ea7b3d --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/files_75.js b/CMSIS/Documentation/Core/html/search/files_75.js new file mode 100644 index 0000000..798267b --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/files_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['using_2etxt',['Using.txt',['../_using_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/functions_5f.html b/CMSIS/Documentation/Core/html/search/functions_5f.html new file mode 100644 index 0000000..cb54e92 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/functions_5f.js b/CMSIS/Documentation/Core/html/search/functions_5f.js new file mode 100644 index 0000000..a8b79d1 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_5f.js @@ -0,0 +1,117 @@ +var searchData= +[ + ['_5f_5fbkpt',['__BKPT',['../group__intrinsic___c_p_u__gr.html#ga92f5621626711931da71eaa8bf301af7',1,'Ref_cmInstr.txt']]], + ['_5f_5fclrex',['__CLREX',['../group__intrinsic___c_p_u__gr.html#ga354c5ac8870cc3dfb823367af9c4b412',1,'Ref_cmInstr.txt']]], + ['_5f_5fclz',['__CLZ',['../group__intrinsic___c_p_u__gr.html#ga90884c591ac5d73d6069334eba9d6c02',1,'Ref_cmInstr.txt']]], + ['_5f_5fdisable_5ffault_5firq',['__disable_fault_irq',['../group___core___register__gr.html#ga9d174f979b2f76fdb3228a9b338fd939',1,'Ref_CoreReg.txt']]], + ['_5f_5fdisable_5firq',['__disable_irq',['../group___core___register__gr.html#gaeb8e5f7564a8ea23678fe3c987b04013',1,'Ref_CoreReg.txt']]], + ['_5f_5fdmb',['__DMB',['../group__intrinsic___c_p_u__gr.html#gab1c9b393641dc2d397b3408fdbe72b96',1,'Ref_cmInstr.txt']]], + ['_5f_5fdsb',['__DSB',['../group__intrinsic___c_p_u__gr.html#gacb2a8ca6eae1ba4b31161578b720c199',1,'Ref_cmInstr.txt']]], + ['_5f_5fenable_5ffault_5firq',['__enable_fault_irq',['../group___core___register__gr.html#ga6575d37863cec5d334864f93b5b783bf',1,'Ref_CoreReg.txt']]], + ['_5f_5fenable_5firq',['__enable_irq',['../group___core___register__gr.html#ga0f98dfbd252b89d12564472dbeba9c27',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fapsr',['__get_APSR',['../group___core___register__gr.html#ga811c0012221ee918a75111ca84c4d5e7',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fbasepri',['__get_BASEPRI',['../group___core___register__gr.html#ga32da759f46e52c95bcfbde5012260667',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fcontrol',['__get_CONTROL',['../group___core___register__gr.html#ga963cf236b73219ce78e965deb01b81a7',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5ffaultmask',['__get_FAULTMASK',['../group___core___register__gr.html#gaa78e4e6bf619a65e9f01b4af13fed3a8',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5ffpscr',['__get_FPSCR',['../group___core___register__gr.html#gad6d7eca9ddd1d9072dd7b020cfe64905',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fipsr',['__get_IPSR',['../group___core___register__gr.html#ga2c32fc5c7f8f07fb3d436c6f6fe4e8c8',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fmsp',['__get_MSP',['../group___core___register__gr.html#gab898559392ba027814e5bbb5a98b38d2',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fprimask',['__get_PRIMASK',['../group___core___register__gr.html#ga799b5d9a2ae75e459264c8512c7c0e02',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fpsp',['__get_PSP',['../group___core___register__gr.html#ga914dfa8eff7ca53380dd54cf1d8bebd9',1,'Ref_CoreReg.txt']]], + ['_5f_5fget_5fxpsr',['__get_xPSR',['../group___core___register__gr.html#ga732e08184154f44a617963cc65ff95bd',1,'Ref_CoreReg.txt']]], + ['_5f_5fisb',['__ISB',['../group__intrinsic___c_p_u__gr.html#ga93c09b4709394d81977300d5f84950e5',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrbt',['__LDRBT',['../group__intrinsic___c_p_u__gr.html#ga9464d75db32846aa8295c3c3adfacb41',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrexb',['__LDREXB',['../group__intrinsic___c_p_u__gr.html#ga9e3ac13d8dcf4331176b624cf6234a7e',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrexh',['__LDREXH',['../group__intrinsic___c_p_u__gr.html#ga9feffc093d6f68b120d592a7a0d45a15',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrexw',['__LDREXW',['../group__intrinsic___c_p_u__gr.html#gabd78840a0f2464905b7cec791ebc6a4c',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrht',['__LDRHT',['../group__intrinsic___c_p_u__gr.html#gaa762b8bc5634ce38cb14d62a6b2aee32',1,'Ref_cmInstr.txt']]], + ['_5f_5fldrt',['__LDRT',['../group__intrinsic___c_p_u__gr.html#ga616504f5da979ba8a073d428d6e8d5c7',1,'Ref_cmInstr.txt']]], + ['_5f_5fnop',['__NOP',['../group__intrinsic___c_p_u__gr.html#gac71fad9f0a91980fecafcb450ee0a63e',1,'Ref_cmInstr.txt']]], + ['_5f_5fpkhbt',['__PKHBT',['../group__intrinsic___s_i_m_d__gr.html#gaefb8ebf3a54e197464da1ff69a44f4b5',1,'Ref_cm4_simd.txt']]], + ['_5f_5fpkhtb',['__PKHTB',['../group__intrinsic___s_i_m_d__gr.html#gafd8fe4a6d87e947caa81a69ec36c1666',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqadd',['__QADD',['../group__intrinsic___s_i_m_d__gr.html#ga17b873f246c9f5e9355760ffef3dad4a',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqadd16',['__QADD16',['../group__intrinsic___s_i_m_d__gr.html#gae83a53ec04b496304bed6d9fe8f7461b',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqadd8',['__QADD8',['../group__intrinsic___s_i_m_d__gr.html#gaf2f5a9132dcfc6d01d34cd971c425713',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqasx',['__QASX',['../group__intrinsic___s_i_m_d__gr.html#ga87618799672e1511e33964bc71467eb3',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsax',['__QSAX',['../group__intrinsic___s_i_m_d__gr.html#gab41eb2b17512ab01d476fc9d5bd19520',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsub',['__QSUB',['../group__intrinsic___s_i_m_d__gr.html#ga3ba259f8f05a36f7b88b469a71ffc096',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsub16',['__QSUB16',['../group__intrinsic___s_i_m_d__gr.html#gad089605c16df9823a2c8aaa37777aae5',1,'Ref_cm4_simd.txt']]], + ['_5f_5fqsub8',['__QSUB8',['../group__intrinsic___s_i_m_d__gr.html#ga753493a65493880c28baa82c151a0d61',1,'Ref_cm4_simd.txt']]], + ['_5f_5frbit',['__RBIT',['../group__intrinsic___c_p_u__gr.html#gad6f9f297f6b91a995ee199fbc796b863',1,'Ref_cmInstr.txt']]], + ['_5f_5frev',['__REV',['../group__intrinsic___c_p_u__gr.html#ga4717abc17af5ba29b1e4c055e0a0d9b8',1,'Ref_cmInstr.txt']]], + ['_5f_5frev16',['__REV16',['../group__intrinsic___c_p_u__gr.html#gaeef6f853b6df3a365c838ee5b49a7a26',1,'Ref_cmInstr.txt']]], + ['_5f_5frevsh',['__REVSH',['../group__intrinsic___c_p_u__gr.html#ga1ec006e6d79063363cb0c2a2e0b3adbe',1,'Ref_cmInstr.txt']]], + ['_5f_5fror',['__ROR',['../group__intrinsic___c_p_u__gr.html#gaf66beb577bb9d90424c3d1d7f684c024',1,'Ref_cmInstr.txt']]], + ['_5f_5frrx',['__RRX',['../group__intrinsic___c_p_u__gr.html#gac09134f1bf9c49db07282001afcc9380',1,'Ref_cmInstr.txt']]], + ['_5f_5fsadd16',['__SADD16',['../group__intrinsic___s_i_m_d__gr.html#gad0bf46373a1c05aabf64517e84be5984',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsadd8',['__SADD8',['../group__intrinsic___s_i_m_d__gr.html#gac20aa0f741d0a1494d58c531e38d5785',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsasx',['__SASX',['../group__intrinsic___s_i_m_d__gr.html#ga5845084fd99c872e98cf5553d554de2a',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsel',['__SEL',['../group__intrinsic___s_i_m_d__gr.html#gaf5448e591fe49161b6759b48aecb08fe',1,'Ref_cm4_simd.txt']]], + ['_5f_5fset_5fbasepri',['__set_BASEPRI',['../group___core___register__gr.html#ga360c73eb7ffb16088556f9278953b882',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fbasepri_5fmax',['__set_BASEPRI_MAX',['../group___core___register__gr.html#ga62fa63d39cf22df348857d5f44ab64d9',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fcontrol',['__set_CONTROL',['../group___core___register__gr.html#gac64d37e7ff9de06437f9fb94bbab8b6c',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5ffaultmask',['__set_FAULTMASK',['../group___core___register__gr.html#gaa5587cc09031053a40a35c14ec36078a',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5ffpscr',['__set_FPSCR',['../group___core___register__gr.html#ga6f26bd75ca7e3247f27b272acc10536b',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fmsp',['__set_MSP',['../group___core___register__gr.html#ga0bf9564ebc1613a8faba014275dac2a4',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fprimask',['__set_PRIMASK',['../group___core___register__gr.html#ga70b4e1a6c1c86eb913fb9d6e8400156f',1,'Ref_CoreReg.txt']]], + ['_5f_5fset_5fpsp',['__set_PSP',['../group___core___register__gr.html#ga48e5853f417e17a8a65080f6a605b743',1,'Ref_CoreReg.txt']]], + ['_5f_5fsev',['__SEV',['../group__intrinsic___c_p_u__gr.html#ga3c34da7eb16496ae2668a5b95fa441e7',1,'Ref_cmInstr.txt']]], + ['_5f_5fshadd16',['__SHADD16',['../group__intrinsic___s_i_m_d__gr.html#ga15d8899a173effb8ad8c7268da32b60e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshadd8',['__SHADD8',['../group__intrinsic___s_i_m_d__gr.html#ga524575b442ea01aec10c762bf4d85fea',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshasx',['__SHASX',['../group__intrinsic___s_i_m_d__gr.html#gae0a649035f67627464fd80e7218c89d5',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshsax',['__SHSAX',['../group__intrinsic___s_i_m_d__gr.html#gafadbd89c36b5addcf1ca10dd392db3e9',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshsub16',['__SHSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga31328467f0f91b8ff9ae9a01682ad3bf',1,'Ref_cm4_simd.txt']]], + ['_5f_5fshsub8',['__SHSUB8',['../group__intrinsic___s_i_m_d__gr.html#gac3ec7215b354d925a239f3b31df2b77b',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlad',['__SMLAD',['../group__intrinsic___s_i_m_d__gr.html#gae0c86f3298532183f3a29f5bb454d354',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmladx',['__SMLADX',['../group__intrinsic___s_i_m_d__gr.html#ga9c286d330f4fb29b256335add91eec9f',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlald',['__SMLALD',['../group__intrinsic___s_i_m_d__gr.html#gad80e9b20c1736fd798f897362273a146',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlaldx',['__SMLALDX',['../group__intrinsic___s_i_m_d__gr.html#gad1adad1b3f2667328cc0db6c6b4f41cf',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsd',['__SMLSD',['../group__intrinsic___s_i_m_d__gr.html#gaf4350af7f2030c36f43b2c104a9d16cd',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsdx',['__SMLSDX',['../group__intrinsic___s_i_m_d__gr.html#ga5290ce5564770ad124910d2583dc0a9e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsld',['__SMLSLD',['../group__intrinsic___s_i_m_d__gr.html#ga5611f7314e0c8f53da377918dfbf42ee',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmlsldx',['__SMLSLDX',['../group__intrinsic___s_i_m_d__gr.html#ga83e69ef81057d3cbd06863d729385187',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmmla',['__SMMLA',['../group__intrinsic___s_i_m_d__gr.html#gaea60757232f740ec6b09980eebb614ff',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmuad',['__SMUAD',['../group__intrinsic___s_i_m_d__gr.html#gae326e368a1624d2dfb4b97c626939257',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmuadx',['__SMUADX',['../group__intrinsic___s_i_m_d__gr.html#gaee6390f86965cb662500f690b0012092',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmusd',['__SMUSD',['../group__intrinsic___s_i_m_d__gr.html#ga039142a5368840683cf329cb55b73f84',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsmusdx',['__SMUSDX',['../group__intrinsic___s_i_m_d__gr.html#gabb5bcba694bf17b141c32e6a8474f60e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssat',['__SSAT',['../group__intrinsic___c_p_u__gr.html#ga7d9dddda18805abbf51ac21c639845e1',1,'Ref_cmInstr.txt']]], + ['_5f_5fssat16',['__SSAT16',['../group__intrinsic___s_i_m_d__gr.html#ga95e666b82216066bf6064d1244e6883c',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssax',['__SSAX',['../group__intrinsic___s_i_m_d__gr.html#ga9d3bc5c539f9bd50f7d59ffa37ac6a65',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssub16',['__SSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga4262f73be75efbac6b46ab7c71aa6cbc',1,'Ref_cm4_simd.txt']]], + ['_5f_5fssub8',['__SSUB8',['../group__intrinsic___s_i_m_d__gr.html#gaba63bb52e1e93fb527e26f3d474da12e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fstrbt',['__STRBT',['../group__intrinsic___c_p_u__gr.html#gad41aa59c92c0a165b7f98428d3320cd5',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrexb',['__STREXB',['../group__intrinsic___c_p_u__gr.html#gaab6482d1f59f59e2b6b7efc1af391c99',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrexh',['__STREXH',['../group__intrinsic___c_p_u__gr.html#ga0a354bdf71caa52f081a4a54e84c8d2a',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrexw',['__STREXW',['../group__intrinsic___c_p_u__gr.html#ga335deaaa7991490e1450cb7d1e4c5197',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrht',['__STRHT',['../group__intrinsic___c_p_u__gr.html#ga2b5d93b8e461755b1072a03df3f1722e',1,'Ref_cmInstr.txt']]], + ['_5f_5fstrt',['__STRT',['../group__intrinsic___c_p_u__gr.html#ga625bc4ac0b1d50de9bcd13d9f050030e',1,'Ref_cmInstr.txt']]], + ['_5f_5fsxtab16',['__SXTAB16',['../group__intrinsic___s_i_m_d__gr.html#gac540b4fc41d30778ba102d2a65db5589',1,'Ref_cm4_simd.txt']]], + ['_5f_5fsxtb16',['__SXTB16',['../group__intrinsic___s_i_m_d__gr.html#ga38dce3dd13ba212e80ec3cff4abeb11a',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuadd16',['__UADD16',['../group__intrinsic___s_i_m_d__gr.html#gaa1160f0cf76d6aa292fbad54a1aa6b74',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuadd8',['__UADD8',['../group__intrinsic___s_i_m_d__gr.html#gab3d7fd00d113b20fb3741a17394da762',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuasx',['__UASX',['../group__intrinsic___s_i_m_d__gr.html#ga980353d2c72ebb879282e49f592fddc0',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhadd16',['__UHADD16',['../group__intrinsic___s_i_m_d__gr.html#gabd0b0e2da2e6364e176d051687702b86',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhadd8',['__UHADD8',['../group__intrinsic___s_i_m_d__gr.html#ga3a14e5485e59bf0f23595b7c2a94eb0b',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhasx',['__UHASX',['../group__intrinsic___s_i_m_d__gr.html#ga028f0732b961fb6e5209326fb3855261',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhsax',['__UHSAX',['../group__intrinsic___s_i_m_d__gr.html#ga09e129e6613329aab87c89f1108b7ed7',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhsub16',['__UHSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga1f7545b8dc33bb97982731cb9d427a69',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuhsub8',['__UHSUB8',['../group__intrinsic___s_i_m_d__gr.html#ga48a55df1c3e73923b73819d7c19b392d',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqadd16',['__UQADD16',['../group__intrinsic___s_i_m_d__gr.html#ga9e2cc5117e79578a08b25f1e89022966',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqadd8',['__UQADD8',['../group__intrinsic___s_i_m_d__gr.html#gafa9af218db3934a692fb06fa728d8031',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqasx',['__UQASX',['../group__intrinsic___s_i_m_d__gr.html#ga5eff3ae5eabcd73f3049996ca391becb',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqsax',['__UQSAX',['../group__intrinsic___s_i_m_d__gr.html#gadecfdfabc328d8939d49d996f2fd4482',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqsub16',['__UQSUB16',['../group__intrinsic___s_i_m_d__gr.html#ga5ec4e2e231d15e5c692233feb3806187',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuqsub8',['__UQSUB8',['../group__intrinsic___s_i_m_d__gr.html#ga9736fe816aec74fe886e7fb949734eab',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusad8',['__USAD8',['../group__intrinsic___s_i_m_d__gr.html#gac8855c07044239ea775c8128013204f0',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusada8',['__USADA8',['../group__intrinsic___s_i_m_d__gr.html#gad032bd21f013c5d29f5fcb6b0f02bc3f',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusat',['__USAT',['../group__intrinsic___c_p_u__gr.html#ga76bbe4374a5912362866cdc1ded4064a',1,'Ref_cmInstr.txt']]], + ['_5f_5fusat16',['__USAT16',['../group__intrinsic___s_i_m_d__gr.html#ga967f516afff5900cf30f1a81907cdd89',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusax',['__USAX',['../group__intrinsic___s_i_m_d__gr.html#ga578a082747436772c482c96d7a58e45e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusub16',['__USUB16',['../group__intrinsic___s_i_m_d__gr.html#ga9f2b77e11fc4a77b26c36c423ed45b4e',1,'Ref_cm4_simd.txt']]], + ['_5f_5fusub8',['__USUB8',['../group__intrinsic___s_i_m_d__gr.html#gacb7257dc3b8e9acbd0ef0e31ff87d4b8',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuxtab16',['__UXTAB16',['../group__intrinsic___s_i_m_d__gr.html#gad25ce96db0f17096bbd815f4817faf09',1,'Ref_cm4_simd.txt']]], + ['_5f_5fuxtb16',['__UXTB16',['../group__intrinsic___s_i_m_d__gr.html#gab41d713653b16f8d9fef44d14e397228',1,'Ref_cm4_simd.txt']]], + ['_5f_5fwfe',['__WFE',['../group__intrinsic___c_p_u__gr.html#gad3efec76c3bfa2b8528ded530386c563',1,'Ref_cmInstr.txt']]], + ['_5f_5fwfi',['__WFI',['../group__intrinsic___c_p_u__gr.html#gaed91dfbf3d7d7b7fba8d912fcbeaad88',1,'Ref_cmInstr.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/functions_69.html b/CMSIS/Documentation/Core/html/search/functions_69.html new file mode 100644 index 0000000..e204197 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/functions_69.js b/CMSIS/Documentation/Core/html/search/functions_69.js new file mode 100644 index 0000000..74756cd --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_69.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['itm_5fcheckchar',['ITM_CheckChar',['../group___i_t_m___debug__gr.html#ga7f9bbabd9756d1a7eafb2d9bf27e0535',1,'Ref_Debug.txt']]], + ['itm_5freceivechar',['ITM_ReceiveChar',['../group___i_t_m___debug__gr.html#ga37b8f41cae703b5ff6947e271065558c',1,'Ref_Debug.txt']]], + ['itm_5fsendchar',['ITM_SendChar',['../group___i_t_m___debug__gr.html#gaaa7c716331f74d644bf6bf25cd3392d1',1,'Ref_Debug.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/functions_6e.html b/CMSIS/Documentation/Core/html/search/functions_6e.html new file mode 100644 index 0000000..d734dd0 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/functions_6e.js b/CMSIS/Documentation/Core/html/search/functions_6e.js new file mode 100644 index 0000000..d667500 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_6e.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['nvic_5fclearpendingirq',['NVIC_ClearPendingIRQ',['../group___n_v_i_c__gr.html#ga382ad6bedd6eecfdabd1b94dd128a01a',1,'Ref_NVIC.txt']]], + ['nvic_5fdecodepriority',['NVIC_DecodePriority',['../group___n_v_i_c__gr.html#gad3cbca1be7a4726afa9448a9acd89377',1,'Ref_NVIC.txt']]], + ['nvic_5fdisableirq',['NVIC_DisableIRQ',['../group___n_v_i_c__gr.html#ga736ba13a76eb37ef6e2c253be8b0331c',1,'Ref_NVIC.txt']]], + ['nvic_5fenableirq',['NVIC_EnableIRQ',['../group___n_v_i_c__gr.html#ga530ad9fda2ed1c8b70e439ecfe80591f',1,'Ref_NVIC.txt']]], + ['nvic_5fencodepriority',['NVIC_EncodePriority',['../group___n_v_i_c__gr.html#ga0688c59605b119c53c71b2505ab23eb5',1,'Ref_NVIC.txt']]], + ['nvic_5fgetactive',['NVIC_GetActive',['../group___n_v_i_c__gr.html#gadf4252e600661fd762cfc0d1a9f5b892',1,'Ref_NVIC.txt']]], + ['nvic_5fgetpendingirq',['NVIC_GetPendingIRQ',['../group___n_v_i_c__gr.html#ga95a8329a680b051ecf3ee8f516acc662',1,'Ref_NVIC.txt']]], + ['nvic_5fgetpriority',['NVIC_GetPriority',['../group___n_v_i_c__gr.html#gab18fb9f6c5f4c70fdd73047f0f7c8395',1,'Ref_NVIC.txt']]], + ['nvic_5fgetprioritygrouping',['NVIC_GetPriorityGrouping',['../group___n_v_i_c__gr.html#gaa81b19849367d3cdb95ac108c500fa78',1,'Ref_NVIC.txt']]], + ['nvic_5fsetpendingirq',['NVIC_SetPendingIRQ',['../group___n_v_i_c__gr.html#ga3b885147ef9965ecede49614de8df9d2',1,'Ref_NVIC.txt']]], + ['nvic_5fsetpriority',['NVIC_SetPriority',['../group___n_v_i_c__gr.html#ga5bb7f43ad92937c039dee3d36c3c2798',1,'Ref_NVIC.txt']]], + ['nvic_5fsetprioritygrouping',['NVIC_SetPriorityGrouping',['../group___n_v_i_c__gr.html#gad78f447e891789b4d8f2e5b21eeda354',1,'Ref_NVIC.txt']]], + ['nvic_5fsystemreset',['NVIC_SystemReset',['../group___n_v_i_c__gr.html#ga1b47d17e90b6a03e7bd1ec6a0d549b46',1,'Ref_NVIC.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/functions_73.html b/CMSIS/Documentation/Core/html/search/functions_73.html new file mode 100644 index 0000000..774d577 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/functions_73.js b/CMSIS/Documentation/Core/html/search/functions_73.js new file mode 100644 index 0000000..cc5dbf6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/functions_73.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['scb_5fcleandcache',['SCB_CleanDCache',['../group___dcache__functions__m7.html#ga55583e3065c6eabca204b8b89b121c4c',1,'core_cm7.txt']]], + ['scb_5fcleandcache_5fby_5faddr',['SCB_CleanDCache_by_Addr',['../group___dcache__functions__m7.html#ga696fadbf7b9cc71dad42fab61873a40d',1,'core_cm7.txt']]], + ['scb_5fcleaninvalidatedcache',['SCB_CleanInvalidateDCache',['../group___dcache__functions__m7.html#ga1b741def9e3b2ca97dc9ea49b8ce505c',1,'core_cm7.txt']]], + ['scb_5fcleaninvalidatedcache_5fby_5faddr',['SCB_CleanInvalidateDCache_by_Addr',['../group___dcache__functions__m7.html#ga630131b2572eaa16b569ed364dfc895e',1,'core_cm7.txt']]], + ['scb_5fdisabledcache',['SCB_DisableDCache',['../group___dcache__functions__m7.html#ga6468170f90d270caab8116e7a4f0b5fe',1,'core_cm7.txt']]], + ['scb_5fdisableicache',['SCB_DisableICache',['../group___icache__functions__m7.html#gaba757390852f95b3ac2d8638c717d8d8',1,'core_cm7.txt']]], + ['scb_5fenabledcache',['SCB_EnableDCache',['../group___dcache__functions__m7.html#ga63aa640d9006021a796a5dcf9c7180b6',1,'core_cm7.txt']]], + ['scb_5fenableicache',['SCB_EnableICache',['../group___icache__functions__m7.html#gaf9e7c6c8e16ada1f95e5bf5a03505b68',1,'core_cm7.txt']]], + ['scb_5fgetfputype',['SCB_GetFPUType',['../group__fpu__functions__m7.html#ga6bcad99ce80a0e7e4ddc6f2379081756',1,'core_cm7.txt']]], + ['scb_5finvalidatedcache',['SCB_InvalidateDCache',['../group___dcache__functions__m7.html#gace2d30db08887d0bdb818b8a785a5ce6',1,'core_cm7.txt']]], + ['scb_5finvalidatedcache_5fby_5faddr',['SCB_InvalidateDCache_by_Addr',['../group___dcache__functions__m7.html#ga503ef7ef58c0773defd15a82f6336c09',1,'core_cm7.txt']]], + ['scb_5finvalidateicache',['SCB_InvalidateICache',['../group___icache__functions__m7.html#ga50d373a785edd782c5de5a3b55e30ff3',1,'core_cm7.txt']]], + ['systemcoreclockupdate',['SystemCoreClockUpdate',['../group__system__init__gr.html#gae0c36a9591fe6e9c45ecb21a794f0f0f',1,'Ref_SystemAndClock.txt']]], + ['systeminit',['SystemInit',['../group__system__init__gr.html#ga93f514700ccf00d08dbdcff7f1224eb2',1,'Ref_SystemAndClock.txt']]], + ['systick_5fconfig',['SysTick_Config',['../group___sys_tick__gr.html#gabe47de40e9b0ad465b752297a9d9f427',1,'Ref_Systick.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/groups_63.html b/CMSIS/Documentation/Core/html/search/groups_63.html new file mode 100644 index 0000000..dd75625 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/groups_63.js b/CMSIS/Documentation/Core/html/search/groups_63.js new file mode 100644 index 0000000..16a0053 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['cache_20functions_20_20_28only_20cortex_2dm7_29',['Cache Functions (only Cortex-M7)',['../group__cache__functions__m7.html',1,'']]], + ['core_20register_20access',['Core Register Access',['../group___core___register__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/groups_64.html b/CMSIS/Documentation/Core/html/search/groups_64.html new file mode 100644 index 0000000..ab9c76f --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/groups_64.js b/CMSIS/Documentation/Core/html/search/groups_64.js new file mode 100644 index 0000000..b961582 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_64.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['d_2dcache_20functions',['D-Cache Functions',['../group___dcache__functions__m7.html',1,'']]], + ['debug_20access',['Debug Access',['../group___i_t_m___debug__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/groups_66.html b/CMSIS/Documentation/Core/html/search/groups_66.html new file mode 100644 index 0000000..b1879e4 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/groups_66.js b/CMSIS/Documentation/Core/html/search/groups_66.js new file mode 100644 index 0000000..19997bc --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['fpu_20functions_20_28only_20cortex_2dm7_29',['FPU Functions (only Cortex-M7)',['../group__fpu__functions__m7.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/groups_69.html b/CMSIS/Documentation/Core/html/search/groups_69.html new file mode 100644 index 0000000..2bcea06 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/groups_69.js b/CMSIS/Documentation/Core/html/search/groups_69.js new file mode 100644 index 0000000..b641b4c --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_69.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['i_2dcache_20functions',['I-Cache Functions',['../group___icache__functions__m7.html',1,'']]], + ['intrinsic_20functions_20for_20cpu_20instructions',['Intrinsic Functions for CPU Instructions',['../group__intrinsic___c_p_u__gr.html',1,'']]], + ['intrinsic_20functions_20for_20simd_20instructions_20_5bonly_20cortex_2dm4_20and_20cortex_2dm7_5d',['Intrinsic Functions for SIMD Instructions [only Cortex-M4 and Cortex-M7]',['../group__intrinsic___s_i_m_d__gr.html',1,'']]], + ['interrupts_20and_20exceptions_20_28nvic_29',['Interrupts and Exceptions (NVIC)',['../group___n_v_i_c__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/groups_70.html b/CMSIS/Documentation/Core/html/search/groups_70.html new file mode 100644 index 0000000..2cb8f74 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/groups_70.js b/CMSIS/Documentation/Core/html/search/groups_70.js new file mode 100644 index 0000000..46a7250 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_70.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['peripheral_20access',['Peripheral Access',['../group__peripheral__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/groups_73.html b/CMSIS/Documentation/Core/html/search/groups_73.html new file mode 100644 index 0000000..feab00e --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/groups_73.js b/CMSIS/Documentation/Core/html/search/groups_73.js new file mode 100644 index 0000000..e5758ab --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/groups_73.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['system_20and_20clock_20configuration',['System and Clock Configuration',['../group__system__init__gr.html',1,'']]], + ['systick_20timer_20_28systick_29',['Systick Timer (SYSTICK)',['../group___sys_tick__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/mag_sel.png b/CMSIS/Documentation/Core/html/search/mag_sel.png new file mode 100644 index 0000000..81f6040 Binary files /dev/null and b/CMSIS/Documentation/Core/html/search/mag_sel.png differ diff --git a/CMSIS/Documentation/Core/html/search/nomatches.html b/CMSIS/Documentation/Core/html/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_62.html b/CMSIS/Documentation/Core/html/search/pages_62.html new file mode 100644 index 0000000..d777475 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_62.js b/CMSIS/Documentation/Core/html/search/pages_62.js new file mode 100644 index 0000000..c696ece --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_62.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['basic_20cmsis_20example',['Basic CMSIS Example',['../_using__c_m_s_i_s.html',1,'Using_pg']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/pages_64.html b/CMSIS/Documentation/Core/html/search/pages_64.html new file mode 100644 index 0000000..f416a91 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_64.js b/CMSIS/Documentation/Core/html/search/pages_64.js new file mode 100644 index 0000000..538e9d3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['device_20header_20file_20_3cdevice_2eh_3e',['Device Header File <device.h>',['../device_h_pg.html',1,'Templates_pg']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/pages_6d.html b/CMSIS/Documentation/Core/html/search/pages_6d.html new file mode 100644 index 0000000..958ccc6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_6d.js b/CMSIS/Documentation/Core/html/search/pages_6d.js new file mode 100644 index 0000000..84ebce3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['misra_2dc_3a2004_20compliance_20exceptions',['MISRA-C:2004 Compliance Exceptions',['../_c_o_r_e__m_i_s_r_a__exceptions_pg.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/pages_6f.html b/CMSIS/Documentation/Core/html/search/pages_6f.html new file mode 100644 index 0000000..9c79c3f --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_6f.js b/CMSIS/Documentation/Core/html/search/pages_6f.js new file mode 100644 index 0000000..277cca0 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['overview',['Overview',['../index.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/pages_72.html b/CMSIS/Documentation/Core/html/search/pages_72.html new file mode 100644 index 0000000..ee0d002 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_72.js b/CMSIS/Documentation/Core/html/search/pages_72.js new file mode 100644 index 0000000..2abc5dc --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_72.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['revision_20history_20of_20cmsis_2dcore',['Revision History of CMSIS-CORE',['../core_revision_history.html',1,'']]], + ['register_20mapping',['Register Mapping',['../_reg_map_pg.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/pages_73.html b/CMSIS/Documentation/Core/html/search/pages_73.html new file mode 100644 index 0000000..ba42c50 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_73.js b/CMSIS/Documentation/Core/html/search/pages_73.js new file mode 100644 index 0000000..85147d5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_73.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['startup_20file_20startup_5f_3cdevice_3e_2es',['Startup File startup_<device>.s',['../startup_s_pg.html',1,'Templates_pg']]], + ['system_20configuration_20files_20system_5f_3cdevice_3e_2ec_20and_20system_5f_3cdevice_3e_2eh',['System Configuration Files system_<device>.c and system_<device>.h',['../system_c_pg.html',1,'Templates_pg']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/pages_74.html b/CMSIS/Documentation/Core/html/search/pages_74.html new file mode 100644 index 0000000..bbff83e --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_74.js b/CMSIS/Documentation/Core/html/search/pages_74.js new file mode 100644 index 0000000..abdc31d --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['template_20files',['Template Files',['../_templates_pg.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/pages_75.html b/CMSIS/Documentation/Core/html/search/pages_75.html new file mode 100644 index 0000000..25bde52 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/pages_75.js b/CMSIS/Documentation/Core/html/search/pages_75.js new file mode 100644 index 0000000..6a7b878 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/pages_75.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['using_20cmsis_20with_20generic_20arm_20processors',['Using CMSIS with generic ARM Processors',['../_using__a_r_m_pg.html',1,'Using_pg']]], + ['using_20cmsis_20in_20embedded_20applications',['Using CMSIS in Embedded Applications',['../_using_pg.html',1,'']]], + ['using_20interrupt_20vector_20remap',['Using Interrupt Vector Remap',['../_using__v_t_o_r_pg.html',1,'Using_pg']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/search.css b/CMSIS/Documentation/Core/html/search/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/Core/html/search/search.js b/CMSIS/Documentation/Core/html/search/search.js new file mode 100644 index 0000000..6fb8704 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/search.js @@ -0,0 +1,811 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111011001111111111111010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101101001000110000110001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000101001011000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000001000010000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111011001110111111110010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010100010000110100101010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001101001000000100100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 8: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010100000000101001111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "files", + 3: "functions", + 4: "variables", + 5: "enums", + 6: "enumvalues", + 7: "groups", + 8: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_5f.js b/CMSIS/Documentation/Core/html/search/variables_5f.js new file mode 100644 index 0000000..208e0d9 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_5f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['_5freserved0',['_reserved0',['../union_a_p_s_r___type.html#afbce95646fd514c10aa85ec0a33db728',1,'APSR_Type::_reserved0()'],['../union_i_p_s_r___type.html#ad2eb0a06de4f03f58874a727716aa9aa',1,'IPSR_Type::_reserved0()'],['../unionx_p_s_r___type.html#af438e0f407357e914a70b5bd4d6a97c5',1,'xPSR_Type::_reserved0()'],['../union_c_o_n_t_r_o_l___type.html#af8c314273a1e4970a5671bd7f8184f50',1,'CONTROL_Type::_reserved0()']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_61.html b/CMSIS/Documentation/Core/html/search/variables_61.html new file mode 100644 index 0000000..ff1f937 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_61.js b/CMSIS/Documentation/Core/html/search/variables_61.js new file mode 100644 index 0000000..1a8097a --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_61.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['acpr',['ACPR',['../struct_t_p_i___type.html#a9e5e4421ef9c3d5b7ff8b24abd4e99b3',1,'TPI_Type']]], + ['actlr',['ACTLR',['../struct_s_cn_s_c_b___type.html#a13af9b718dde7481f1c0344f00593c23',1,'SCnSCB_Type']]], + ['adr',['ADR',['../struct_s_c_b___type.html#af084e1b2dad004a88668efea1dfe7fa1',1,'SCB_Type']]], + ['afsr',['AFSR',['../struct_s_c_b___type.html#ab65372404ce64b0f0b35e2709429404e',1,'SCB_Type']]], + ['aircr',['AIRCR',['../struct_s_c_b___type.html#ad3e5b8934c647eb1b7383c1894f01380',1,'SCB_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_62.html b/CMSIS/Documentation/Core/html/search/variables_62.html new file mode 100644 index 0000000..c55a15e --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_62.js b/CMSIS/Documentation/Core/html/search/variables_62.js new file mode 100644 index 0000000..f7fe206 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_62.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['b',['b',['../union_a_p_s_r___type.html#a7dbc79a057ded4b11ca5323fc2d5ab14',1,'APSR_Type::b()'],['../union_i_p_s_r___type.html#add0d6497bd50c25569ea22b48a03ec50',1,'IPSR_Type::b()'],['../unionx_p_s_r___type.html#a3b1063bb5cdad67e037cba993b693b70',1,'xPSR_Type::b()'],['../union_c_o_n_t_r_o_l___type.html#adc6a38ab2980d0e9577b5a871da14eb9',1,'CONTROL_Type::b()']]], + ['bfar',['BFAR',['../struct_s_c_b___type.html#a3f8e7e58be4e41c88dfa78f54589271c',1,'SCB_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_63.html b/CMSIS/Documentation/Core/html/search/variables_63.html new file mode 100644 index 0000000..c649c81 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_63.js b/CMSIS/Documentation/Core/html/search/variables_63.js new file mode 100644 index 0000000..4b10abd --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_63.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['c',['C',['../union_a_p_s_r___type.html#a86e2c5b891ecef1ab55b1edac0da79a6',1,'APSR_Type::C()'],['../unionx_p_s_r___type.html#a40213a6b5620410cac83b0d89564609d',1,'xPSR_Type::C()']]], + ['calib',['CALIB',['../struct_sys_tick___type.html#afcadb0c6d35b21cdc0018658a13942de',1,'SysTick_Type']]], + ['ccr',['CCR',['../struct_s_c_b___type.html#a2d6653b0b70faac936046a02809b577f',1,'SCB_Type']]], + ['cfsr',['CFSR',['../struct_s_c_b___type.html#a0cda9e061b42373383418663092ad19a',1,'SCB_Type']]], + ['claimclr',['CLAIMCLR',['../struct_t_p_i___type.html#a0e10e292cb019a832b03ddd055b2f6ac',1,'TPI_Type']]], + ['claimset',['CLAIMSET',['../struct_t_p_i___type.html#af8b7d15fa5252b733dd4b11fa1b5730a',1,'TPI_Type']]], + ['comp0',['COMP0',['../struct_d_w_t___type.html#a61c2965af5bc0643f9af65620b0e67c9',1,'DWT_Type']]], + ['comp1',['COMP1',['../struct_d_w_t___type.html#a38714af6b7fa7c64d68f5e1efbe7a931',1,'DWT_Type']]], + ['comp2',['COMP2',['../struct_d_w_t___type.html#a5ae6dde39989f27bae90afc2347deb46',1,'DWT_Type']]], + ['comp3',['COMP3',['../struct_d_w_t___type.html#a85eb73d1848ac3f82d39d6c3e8910847',1,'DWT_Type']]], + ['cpacr',['CPACR',['../struct_s_c_b___type.html#ac6a860c1b8d8154a1f00d99d23b67764',1,'SCB_Type']]], + ['cpicnt',['CPICNT',['../struct_d_w_t___type.html#a2c08096c82abe245c0fa97badc458154',1,'DWT_Type']]], + ['cpuid',['CPUID',['../struct_s_c_b___type.html#a21e08d546d8b641bee298a459ea73e46',1,'SCB_Type']]], + ['cspsr',['CSPSR',['../struct_t_p_i___type.html#a8826aa84e5806053395a742d38d59d0f',1,'TPI_Type']]], + ['ctrl',['CTRL',['../struct_sys_tick___type.html#a875e7afa5c4fd43997fb544a4ac6e37e',1,'SysTick_Type::CTRL()'],['../struct_m_p_u___type.html#a4d81d6aa73a9287bafba2bcc5ffc6d18',1,'MPU_Type::CTRL()'],['../struct_d_w_t___type.html#add790c53410023b3b581919bb681fe2a',1,'DWT_Type::CTRL()']]], + ['cyccnt',['CYCCNT',['../struct_d_w_t___type.html#a102eaa529d9098242851cb57c52b42d9',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_64.html b/CMSIS/Documentation/Core/html/search/variables_64.html new file mode 100644 index 0000000..fee6769 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_64.js b/CMSIS/Documentation/Core/html/search/variables_64.js new file mode 100644 index 0000000..c545d18 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_64.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['dcrdr',['DCRDR',['../struct_core_debug___type.html#aab3cc92ef07bc1f04b3a3aa6db2c2d55',1,'CoreDebug_Type']]], + ['dcrsr',['DCRSR',['../struct_core_debug___type.html#af907cf64577eaf927dac6787df6dd98b',1,'CoreDebug_Type']]], + ['demcr',['DEMCR',['../struct_core_debug___type.html#aeb3126abc4c258a858f21f356c0df6ee',1,'CoreDebug_Type']]], + ['devid',['DEVID',['../struct_t_p_i___type.html#abc0ecda8a5446bc754080276bad77514',1,'TPI_Type']]], + ['devtype',['DEVTYPE',['../struct_t_p_i___type.html#ad98855854a719bbea33061e71529a472',1,'TPI_Type']]], + ['dfr',['DFR',['../struct_s_c_b___type.html#a85dd6fe77aab17e7ea89a52c59da6004',1,'SCB_Type']]], + ['dfsr',['DFSR',['../struct_s_c_b___type.html#a191579bde0d21ff51d30a714fd887033',1,'SCB_Type']]], + ['dhcsr',['DHCSR',['../struct_core_debug___type.html#ad63554e4650da91a8e79929cbb63db66',1,'CoreDebug_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_65.html b/CMSIS/Documentation/Core/html/search/variables_65.html new file mode 100644 index 0000000..95b64e6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_65.js b/CMSIS/Documentation/Core/html/search/variables_65.js new file mode 100644 index 0000000..f7e1c65 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_65.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['exccnt',['EXCCNT',['../struct_d_w_t___type.html#a9fe20c16c5167ca61486caf6832686d1',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_66.html b/CMSIS/Documentation/Core/html/search/variables_66.html new file mode 100644 index 0000000..9ff42ab --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_66.js b/CMSIS/Documentation/Core/html/search/variables_66.js new file mode 100644 index 0000000..a49f247 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_66.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['ffcr',['FFCR',['../struct_t_p_i___type.html#a3f68b6e73561b4849ebf953a894df8d2',1,'TPI_Type']]], + ['ffsr',['FFSR',['../struct_t_p_i___type.html#a6c47a0b4c7ffc66093ef993d36bb441c',1,'TPI_Type']]], + ['fifo0',['FIFO0',['../struct_t_p_i___type.html#aa4d7b5cf39dff9f53bf7f69bc287a814',1,'TPI_Type']]], + ['fifo1',['FIFO1',['../struct_t_p_i___type.html#a061372fcd72f1eea871e2d9c1be849bc',1,'TPI_Type']]], + ['foldcnt',['FOLDCNT',['../struct_d_w_t___type.html#a1cfc48384ebd8fd8fb7e5d955aae6c97',1,'DWT_Type']]], + ['fpca',['FPCA',['../union_c_o_n_t_r_o_l___type.html#ac62cfff08e6f055e0101785bad7094cd',1,'CONTROL_Type']]], + ['fpcar',['FPCAR',['../struct_f_p_u___type.html#a55263b468d0f8e11ac77aec9ff87c820',1,'FPU_Type']]], + ['fpccr',['FPCCR',['../struct_f_p_u___type.html#af1b708c5e413739150df3d16ca3b7061',1,'FPU_Type']]], + ['fpdscr',['FPDSCR',['../struct_f_p_u___type.html#a58d1989664a06db6ec2e122eefa9f04a',1,'FPU_Type']]], + ['fscr',['FSCR',['../struct_t_p_i___type.html#ad6901bfd8a0089ca7e8a20475cf494a8',1,'TPI_Type']]], + ['function0',['FUNCTION0',['../struct_d_w_t___type.html#a579ae082f58a0317b7ef029b20f52889',1,'DWT_Type']]], + ['function1',['FUNCTION1',['../struct_d_w_t___type.html#a8dfcf25675f9606aa305c46e85182e4e',1,'DWT_Type']]], + ['function2',['FUNCTION2',['../struct_d_w_t___type.html#ab1b60d6600c38abae515bab8e86a188f',1,'DWT_Type']]], + ['function3',['FUNCTION3',['../struct_d_w_t___type.html#a52d4ff278fae6f9216c63b74ce328841',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_68.html b/CMSIS/Documentation/Core/html/search/variables_68.html new file mode 100644 index 0000000..f11c2c9 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_68.js b/CMSIS/Documentation/Core/html/search/variables_68.js new file mode 100644 index 0000000..6473211 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hfsr',['HFSR',['../struct_s_c_b___type.html#a14ad254659362b9752c69afe3fd80934',1,'SCB_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_69.html b/CMSIS/Documentation/Core/html/search/variables_69.html new file mode 100644 index 0000000..d4ddaf0 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_69.js b/CMSIS/Documentation/Core/html/search/variables_69.js new file mode 100644 index 0000000..0e38a5a --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_69.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['iabr',['IABR',['../struct_n_v_i_c___type.html#a4bca5452748ba84d64536fb6a5d795af',1,'NVIC_Type']]], + ['icer',['ICER',['../struct_n_v_i_c___type.html#a245df8bac1da05c39eadabede9323203',1,'NVIC_Type']]], + ['icpr',['ICPR',['../struct_n_v_i_c___type.html#a8d8f45d9c5c67bba3c153c55574bac95',1,'NVIC_Type']]], + ['icsr',['ICSR',['../struct_s_c_b___type.html#a0ca18ef984d132c6bf4d9b61cd00f05a',1,'SCB_Type']]], + ['ictr',['ICTR',['../struct_s_cn_s_c_b___type.html#a34ec1d771245eb9bd0e3ec9336949762',1,'SCnSCB_Type']]], + ['ip',['IP',['../struct_n_v_i_c___type.html#a7ff7364a4260df67a2784811e8da4efd',1,'NVIC_Type']]], + ['isar',['ISAR',['../struct_s_c_b___type.html#ae0136a2d2d3c45f016b2c449e92b2066',1,'SCB_Type']]], + ['iser',['ISER',['../struct_n_v_i_c___type.html#a9fccef5a60a0d5e81fcd7869a6274f47',1,'NVIC_Type']]], + ['ispr',['ISPR',['../struct_n_v_i_c___type.html#a8f731a9f428efc86e8d311b52ce823d0',1,'NVIC_Type']]], + ['isr',['ISR',['../union_i_p_s_r___type.html#ab46e5f1b2f4d17cfb9aca4fffcbb2fa5',1,'IPSR_Type::ISR()'],['../unionx_p_s_r___type.html#a3e9120dcf1a829fc8d2302b4d0673970',1,'xPSR_Type::ISR()']]], + ['it',['IT',['../unionx_p_s_r___type.html#a3200966922a194d84425e2807a7f1328',1,'xPSR_Type']]], + ['itatbctr0',['ITATBCTR0',['../struct_t_p_i___type.html#aaa573b2e073e76e93c51ecec79c616d0',1,'TPI_Type']]], + ['itatbctr2',['ITATBCTR2',['../struct_t_p_i___type.html#ab358319b969d3fed0f89bbe33e9f1652',1,'TPI_Type']]], + ['itctrl',['ITCTRL',['../struct_t_p_i___type.html#aaa4c823c10f115f7517c82ef86a5a68d',1,'TPI_Type']]], + ['itm_5frxbuffer',['ITM_RxBuffer',['../group___i_t_m___debug__gr.html#ga12e68e55a7badc271b948d6c7230b2a8',1,'Ref_Debug.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_6c.html b/CMSIS/Documentation/Core/html/search/variables_6c.html new file mode 100644 index 0000000..6016f5c --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_6c.js b/CMSIS/Documentation/Core/html/search/variables_6c.js new file mode 100644 index 0000000..ae3bc1b --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_6c.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['load',['LOAD',['../struct_sys_tick___type.html#a4780a489256bb9f54d0ba8ed4de191cd',1,'SysTick_Type']]], + ['lsucnt',['LSUCNT',['../struct_d_w_t___type.html#acc05d89bdb1b4fe2fa499920ec02d0b1',1,'DWT_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_6d.html b/CMSIS/Documentation/Core/html/search/variables_6d.html new file mode 100644 index 0000000..b7924e3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_6d.js b/CMSIS/Documentation/Core/html/search/variables_6d.js new file mode 100644 index 0000000..698d812 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_6d.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['mask0',['MASK0',['../struct_d_w_t___type.html#a821eb5e71f340ec077efc064cfc567db',1,'DWT_Type']]], + ['mask1',['MASK1',['../struct_d_w_t___type.html#aabf94936c9340e62fed836dcfb152405',1,'DWT_Type']]], + ['mask2',['MASK2',['../struct_d_w_t___type.html#a00ac4d830dfe0070a656cda9baed170f',1,'DWT_Type']]], + ['mask3',['MASK3',['../struct_d_w_t___type.html#a2a509d8505c37a3b64f6b24993df5f3f',1,'DWT_Type']]], + ['mmfar',['MMFAR',['../struct_s_c_b___type.html#a2d03d0b7cec2254f39eb1c46c7445e80',1,'SCB_Type']]], + ['mmfr',['MMFR',['../struct_s_c_b___type.html#aa11887804412bda283cc85a83fdafa7c',1,'SCB_Type']]], + ['mvfr0',['MVFR0',['../struct_f_p_u___type.html#a4f19014defe6033d070b80af19ef627c',1,'FPU_Type']]], + ['mvfr1',['MVFR1',['../struct_f_p_u___type.html#a66f8cfa49a423b480001a4e101bf842d',1,'FPU_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_6e.html b/CMSIS/Documentation/Core/html/search/variables_6e.html new file mode 100644 index 0000000..4cc41d5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_6e.js b/CMSIS/Documentation/Core/html/search/variables_6e.js new file mode 100644 index 0000000..765faed --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_6e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['n',['N',['../union_a_p_s_r___type.html#a7e7bbba9b00b0bb3283dc07f1abe37e0',1,'APSR_Type::N()'],['../unionx_p_s_r___type.html#a2db9a52f6d42809627d1a7a607c5dbc5',1,'xPSR_Type::N()']]], + ['npriv',['nPRIV',['../union_c_o_n_t_r_o_l___type.html#a35c1732cf153b7b5c4bd321cf1de9605',1,'CONTROL_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_70.html b/CMSIS/Documentation/Core/html/search/variables_70.html new file mode 100644 index 0000000..bc5c193 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_70.js b/CMSIS/Documentation/Core/html/search/variables_70.js new file mode 100644 index 0000000..6477e26 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_70.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['pcsr',['PCSR',['../struct_d_w_t___type.html#a6353ca1d1ad9bc1be05d3b5632960113',1,'DWT_Type']]], + ['pfr',['PFR',['../struct_s_c_b___type.html#a681c9d9e518b217976bef38c2423d83d',1,'SCB_Type']]], + ['port',['PORT',['../struct_i_t_m___type.html#af4c205be465780a20098387120bdb482',1,'ITM_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_71.html b/CMSIS/Documentation/Core/html/search/variables_71.html new file mode 100644 index 0000000..cceeff2 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_71.js b/CMSIS/Documentation/Core/html/search/variables_71.js new file mode 100644 index 0000000..107ca70 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_71.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['q',['Q',['../union_a_p_s_r___type.html#a22d10913489d24ab08bd83457daa88de',1,'APSR_Type::Q()'],['../unionx_p_s_r___type.html#add7cbd2b0abd8954d62cd7831796ac7c',1,'xPSR_Type::Q()']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_72.html b/CMSIS/Documentation/Core/html/search/variables_72.html new file mode 100644 index 0000000..29b87f0 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_72.js b/CMSIS/Documentation/Core/html/search/variables_72.js new file mode 100644 index 0000000..579b489 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_72.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['rasr',['RASR',['../struct_m_p_u___type.html#a9236c629b7cf86f8bd2459c610fdf715',1,'MPU_Type']]], + ['rasr_5fa1',['RASR_A1',['../struct_m_p_u___type.html#ab5a224ccd12ac55ddfe11d9eca42de48',1,'MPU_Type']]], + ['rasr_5fa2',['RASR_A2',['../struct_m_p_u___type.html#ac60e0919871b66446a039838bcaaec3b',1,'MPU_Type']]], + ['rasr_5fa3',['RASR_A3',['../struct_m_p_u___type.html#a9c0b2d3e3e16bb4e7dfa069652d5a155',1,'MPU_Type']]], + ['rbar',['RBAR',['../struct_m_p_u___type.html#ac953770d38a7d322b971d93eb8a5b062',1,'MPU_Type']]], + ['rbar_5fa1',['RBAR_A1',['../struct_m_p_u___type.html#a13d69b9bea12861383f3a62764b02f63',1,'MPU_Type']]], + ['rbar_5fa2',['RBAR_A2',['../struct_m_p_u___type.html#a57dc551614932150e684fcc60590c2c4',1,'MPU_Type']]], + ['rbar_5fa3',['RBAR_A3',['../struct_m_p_u___type.html#a345911aabecd1f7d93a1bff7738b0d86',1,'MPU_Type']]], + ['reserved0',['RESERVED0',['../struct_n_v_i_c___type.html#a2de17698945ea49abd58a2d45bdc9c80',1,'NVIC_Type::RESERVED0()'],['../struct_s_c_b___type.html#ac89a5d9901e3748d22a7090bfca2bee6',1,'SCB_Type::RESERVED0()'],['../struct_s_cn_s_c_b___type.html#afe1d5fd2966d5062716613b05c8d0ae1',1,'SCnSCB_Type::RESERVED0()'],['../struct_i_t_m___type.html#a2c5ae30385b5f370d023468ea9914c0e',1,'ITM_Type::RESERVED0()'],['../struct_f_p_u___type.html#a7b2967b069046c8544adbbc1db143a36',1,'FPU_Type::RESERVED0()'],['../struct_d_w_t___type.html#addd893d655ed90d40705b20170daac59',1,'DWT_Type::RESERVED0()'],['../struct_t_p_i___type.html#af143c5e8fc9a3b2be2878e9c1f331aa9',1,'TPI_Type::RESERVED0()']]], + ['reserved1',['RESERVED1',['../struct_i_t_m___type.html#afffce5b93bbfedbaee85357d0b07ebce',1,'ITM_Type::RESERVED1()'],['../struct_d_w_t___type.html#a069871233a8c1df03521e6d7094f1de4',1,'DWT_Type::RESERVED1()'],['../struct_t_p_i___type.html#ac3956fe93987b725d89d3be32738da12',1,'TPI_Type::RESERVED1()']]], + ['reserved2',['RESERVED2',['../struct_n_v_i_c___type.html#a0953af43af8ec7fd5869a1d826ce5b72',1,'NVIC_Type::RESERVED2()'],['../struct_i_t_m___type.html#af56b2f07bc6b42cd3e4d17e1b27cff7b',1,'ITM_Type::RESERVED2()'],['../struct_d_w_t___type.html#a8556ca1c32590517602d92fe0cd55738',1,'DWT_Type::RESERVED2()'],['../struct_t_p_i___type.html#ac7bbb92e6231b9b38ac483f7d161a096',1,'TPI_Type::RESERVED2()']]], + ['reserved3',['RESERVED3',['../struct_n_v_i_c___type.html#a9dd330835dbf21471e7b5be8692d77ab',1,'NVIC_Type::RESERVED3()'],['../struct_t_p_i___type.html#a31700c8cdd26e4c094db72af33d9f24c',1,'TPI_Type::RESERVED3()']]], + ['reserved4',['RESERVED4',['../struct_n_v_i_c___type.html#a5c0e5d507ac3c1bd5cdaaf9bbd177790',1,'NVIC_Type::RESERVED4()'],['../struct_t_p_i___type.html#a684071216fafee4e80be6aaa932cec46',1,'TPI_Type::RESERVED4()']]], + ['reserved5',['RESERVED5',['../struct_n_v_i_c___type.html#a4f753b4f824270175af045ac99bc12e8',1,'NVIC_Type::RESERVED5()'],['../struct_t_p_i___type.html#a3f80dd93f6bab6524603a7aa58de9a30',1,'TPI_Type::RESERVED5()']]], + ['reserved7',['RESERVED7',['../struct_t_p_i___type.html#a476ca23fbc9480f1697fbec871130550',1,'TPI_Type']]], + ['rnr',['RNR',['../struct_m_p_u___type.html#aa800d44f4d3520cc891d7b8d711320c1',1,'MPU_Type']]], + ['rserved1',['RSERVED1',['../struct_n_v_i_c___type.html#a6d1daf7ab6f2ba83f57ff67ae6f571fe',1,'NVIC_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_73.html b/CMSIS/Documentation/Core/html/search/variables_73.html new file mode 100644 index 0000000..65b8f64 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_73.js b/CMSIS/Documentation/Core/html/search/variables_73.js new file mode 100644 index 0000000..bbb0467 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_73.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['scr',['SCR',['../struct_s_c_b___type.html#a3a4840c6fa4d1ee75544f4032c88ec34',1,'SCB_Type']]], + ['shcsr',['SHCSR',['../struct_s_c_b___type.html#a7b5ae9741a99808043394c4743b635c4',1,'SCB_Type']]], + ['shp',['SHP',['../struct_s_c_b___type.html#a85768f4b3dbbc41fd760041ee1202162',1,'SCB_Type']]], + ['sleepcnt',['SLEEPCNT',['../struct_d_w_t___type.html#a416a54e2084ce66e5ca74f152a5ecc70',1,'DWT_Type']]], + ['sppr',['SPPR',['../struct_t_p_i___type.html#a12f79d4e3ddc69893ba8bff890d04cc5',1,'TPI_Type']]], + ['spsel',['SPSEL',['../union_c_o_n_t_r_o_l___type.html#a8cc085fea1c50a8bd9adea63931ee8e2',1,'CONTROL_Type']]], + ['sspsr',['SSPSR',['../struct_t_p_i___type.html#a7b72598e20066133e505bb781690dc22',1,'TPI_Type']]], + ['stir',['STIR',['../struct_n_v_i_c___type.html#a37de89637466e007171c6b135299bc75',1,'NVIC_Type']]], + ['systemcoreclock',['SystemCoreClock',['../group__system__init__gr.html#gaa3cd3e43291e81e795d642b79b6088e6',1,'Ref_SystemAndClock.txt']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_74.html b/CMSIS/Documentation/Core/html/search/variables_74.html new file mode 100644 index 0000000..6093922 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_74.js b/CMSIS/Documentation/Core/html/search/variables_74.js new file mode 100644 index 0000000..05cdaf4 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_74.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['t',['T',['../unionx_p_s_r___type.html#a7eed9fe24ae8d354cd76ae1c1110a658',1,'xPSR_Type']]], + ['tcr',['TCR',['../struct_i_t_m___type.html#a04b9fbc83759cb818dfa161d39628426',1,'ITM_Type']]], + ['ter',['TER',['../struct_i_t_m___type.html#acd03c6858f7b678dab6a6121462e7807',1,'ITM_Type']]], + ['tpr',['TPR',['../struct_i_t_m___type.html#ae907229ba50538bf370fbdfd54c099a2',1,'ITM_Type']]], + ['trigger',['TRIGGER',['../struct_t_p_i___type.html#a4d4cd2357f72333a82a1313228287bbd',1,'TPI_Type']]], + ['type',['TYPE',['../struct_m_p_u___type.html#a0433efc1383674bc8e86cc0e830b462d',1,'MPU_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_75.html b/CMSIS/Documentation/Core/html/search/variables_75.html new file mode 100644 index 0000000..b9cc25c --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_75.js b/CMSIS/Documentation/Core/html/search/variables_75.js new file mode 100644 index 0000000..ee2aaca --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_75.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['u16',['u16',['../struct_i_t_m___type.html#a962a970dfd286cad7f8a8577e87d4ad3',1,'ITM_Type']]], + ['u32',['u32',['../struct_i_t_m___type.html#a5834885903a557674f078f3b71fa8bc8',1,'ITM_Type']]], + ['u8',['u8',['../struct_i_t_m___type.html#ae773bf9f9dac64e6c28b14aa39f74275',1,'ITM_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_76.html b/CMSIS/Documentation/Core/html/search/variables_76.html new file mode 100644 index 0000000..ab1aba9 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_76.js b/CMSIS/Documentation/Core/html/search/variables_76.js new file mode 100644 index 0000000..698e362 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_76.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['v',['V',['../union_a_p_s_r___type.html#a8004d224aacb78ca37774c35f9156e7e',1,'APSR_Type::V()'],['../unionx_p_s_r___type.html#af14df16ea0690070c45b95f2116b7a0a',1,'xPSR_Type::V()']]], + ['val',['VAL',['../struct_sys_tick___type.html#a9b5420d17e8e43104ddd4ae5a610af93',1,'SysTick_Type']]], + ['vtor',['VTOR',['../struct_s_c_b___type.html#a187a4578e920544ed967f98020fb8170',1,'SCB_Type']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_77.html b/CMSIS/Documentation/Core/html/search/variables_77.html new file mode 100644 index 0000000..25c3e3a --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_77.js b/CMSIS/Documentation/Core/html/search/variables_77.js new file mode 100644 index 0000000..7681c0f --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_77.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['w',['w',['../union_a_p_s_r___type.html#ae4c2ef8c9430d7b7bef5cbfbbaed3a94',1,'APSR_Type::w()'],['../union_i_p_s_r___type.html#a4adca999d3a0bc1ae682d73ea7cfa879',1,'IPSR_Type::w()'],['../unionx_p_s_r___type.html#a1a47176768f45f79076c4f5b1b534bc2',1,'xPSR_Type::w()'],['../union_c_o_n_t_r_o_l___type.html#a6b642cca3d96da660b1198c133ca2a1f',1,'CONTROL_Type::w()']]] +]; diff --git a/CMSIS/Documentation/Core/html/search/variables_7a.html b/CMSIS/Documentation/Core/html/search/variables_7a.html new file mode 100644 index 0000000..2ae1676 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_7a.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Core/html/search/variables_7a.js b/CMSIS/Documentation/Core/html/search/variables_7a.js new file mode 100644 index 0000000..ed348a5 --- /dev/null +++ b/CMSIS/Documentation/Core/html/search/variables_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['z',['Z',['../union_a_p_s_r___type.html#a3b04d58738b66a28ff13f23d8b0ba7e5',1,'APSR_Type::Z()'],['../unionx_p_s_r___type.html#a1e5d9801013d5146f2e02d9b7b3da562',1,'xPSR_Type::Z()']]] +]; diff --git a/CMSIS/Documentation/Core/html/startup_s_pg.html b/CMSIS/Documentation/Core/html/startup_s_pg.html new file mode 100644 index 0000000..1541b71 --- /dev/null +++ b/CMSIS/Documentation/Core/html/startup_s_pg.html @@ -0,0 +1,370 @@ + + + + + +Startup File startup_<device>.s +CMSIS-CORE: Startup File startup_<device>.s + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Startup File startup_<device>.s
    +
    +
    +

    The Startup File startup_<device>.s contains:

    +
      +
    • The reset handler which is executed after CPU reset and typically calls the SystemInit function.
    • +
    • The setup values for the Main Stack Pointer (MSP).
    • +
    • Exception vectors of the Cortex-M Processor with weak functions that implement default routines.
    • +
    • Interrupt vectors that are device specific with weak functions that implement default routines.
    • +
    +

    The file exists for each supported toolchain and is the only tool-chain specific CMSIS file.

    +

    To adapt the file to a new device only the interrupt vector table needs to be extended with the device-specific interrupt handlers. The naming convention for the interrupt handler names are <interrupt_name>_IRQHandler. This table needs to be consistent with IRQn_Type that defines all the IRQ numbers for each interrupt.

    +

    Example:

    +

    The following example shows the extension of the interrupt vector table for the LPC1100 device family.

    +
    ; External Interrupts
    +
    DCD WAKEUP0_IRQHandler ; 16+ 0: Wakeup PIO0.0
    +
    DCD WAKEUP1_IRQHandler ; 16+ 1: Wakeup PIO0.1
    +
    DCD WAKEUP2_IRQHandler ; 16+ 2: Wakeup PIO0.2
    +
    : :
    +
    : :
    +
    DCD EINT1_IRQHandler ; 16+30: PIO INT1
    +
    DCD EINT0_IRQHandler ; 16+31: PIO INT0
    +
    :
    +
    :
    +
    EXPORT WAKEUP0_IRQHandler [WEAK]
    +
    EXPORT WAKEUP1_IRQHandler [WEAK]
    +
    EXPORT WAKEUP2_IRQHandler [WEAK]
    +
    : :
    +
    : :
    +
    EXPORT EINT1_IRQHandler [WEAK]
    +
    EXPORT EINT0_IRQHandler [WEAK]
    +
    +
    WAKEUP0_IRQHandler
    +
    WAKEUP1_IRQHandler
    +
    WAKEUP1_IRQHandler
    +
    :
    +
    :
    +
    EINT1_IRQHandler
    +
    EINT0_IRQHandler
    +
    B .
    +

    +startup_Device.s Template File

    +

    The startup_Device.s Template File for the Cortex-M3 and the ARMCC compiler is shown below. The files for other compiler vendors differ slightly in the syntax, but not in the overall structure.

    +
    ;/**************************************************************************//**
    +; * @file     startup_<Device>.s
    +; * @brief    CMSIS Cortex-M# Core Device Startup File for
    +; *           Device <Device>
    +; * @version  V3.10
    +; * @date     23. November 2012
    +; *
    +; * @note
    +; *
    +; ******************************************************************************/
    +;/* Copyright (c) 2012 ARM LIMITED
    +;
    +;   All rights reserved.
    +;   Redistribution and use in source and binary forms, with or without
    +;   modification, are permitted provided that the following conditions are met:
    +;   - Redistributions of source code must retain the above copyright
    +;     notice, this list of conditions and the following disclaimer.
    +;   - Redistributions in binary form must reproduce the above copyright
    +;     notice, this list of conditions and the following disclaimer in the
    +;     documentation and/or other materials provided with the distribution.
    +;   - Neither the name of ARM nor the names of its contributors may be used
    +;     to endorse or promote products derived from this software without
    +;     specific prior written permission.
    +;   *
    +;   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    +;   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    +;   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    +;   ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
    +;   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    +;   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    +;   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    +;   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    +;   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    +;   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +;   POSSIBILITY OF SUCH DAMAGE.
    +;   ---------------------------------------------------------------------------*/
    +;/*
    +;//-------- <<< Use Configuration Wizard in Context Menu >>> ------------------
    +;*/
    +
    +
    +; <h> Stack Configuration
    +;   <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
    +; </h>
    +
    +Stack_Size      EQU     0x00000400
    +
    +                AREA    STACK, NOINIT, READWRITE, ALIGN=3
    +Stack_Mem       SPACE   Stack_Size
    +__initial_sp
    +
    +
    +; <h> Heap Configuration
    +;   <o>  Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
    +; </h>
    +
    +Heap_Size       EQU     0x00000100
    +
    +                AREA    HEAP, NOINIT, READWRITE, ALIGN=3
    +__heap_base
    +Heap_Mem        SPACE   Heap_Size
    +__heap_limit
    +
    +
    +                PRESERVE8
    +                THUMB
    +
    +
    +; Vector Table Mapped to Address 0 at Reset
    +
    +                AREA    RESET, DATA, READONLY
    +                EXPORT  __Vectors
    +                EXPORT  __Vectors_End
    +                EXPORT  __Vectors_Size
    +
    +__Vectors       DCD     __initial_sp              ; Top of Stack
    +                DCD     Reset_Handler             ; Reset Handler
    +                DCD     NMI_Handler               ; NMI Handler
    +                DCD     HardFault_Handler         ; Hard Fault Handler
    +                DCD     MemManage_Handler         ; MPU Fault Handler
    +                DCD     BusFault_Handler          ; Bus Fault Handler
    +                DCD     UsageFault_Handler        ; Usage Fault Handler
    +                DCD     0                         ; Reserved
    +                DCD     0                         ; Reserved
    +                DCD     0                         ; Reserved
    +                DCD     0                         ; Reserved
    +                DCD     SVC_Handler               ; SVCall Handler
    +                DCD     DebugMon_Handler          ; Debug Monitor Handler
    +                DCD     0                         ; Reserved
    +                DCD     PendSV_Handler            ; PendSV Handler
    +                DCD     SysTick_Handler           ; SysTick Handler
    +
    +                ; External Interrupts
    +; ToDo:  Add here the vectors for the device specific external interrupts handler
    +                DCD     <DeviceInterrupt>_IRQHandler       ;  0: Default
    +__Vectors_End
    +
    +__Vectors_Size  EQU     __Vectors_End - __Vectors
    +
    +                AREA    |.text|, CODE, READONLY
    +
    +
    +; Reset Handler
    +
    +Reset_Handler   PROC
    +                EXPORT  Reset_Handler             [WEAK]
    +                IMPORT  SystemInit
    +                IMPORT  __main
    +                LDR     R0, =SystemInit
    +                BLX     R0
    +                LDR     R0, =__main
    +                BX      R0
    +                ENDP
    +
    +
    +; Dummy Exception Handlers (infinite loops which can be modified)
    +
    +NMI_Handler     PROC
    +                EXPORT  NMI_Handler               [WEAK]
    +                B       .
    +                ENDP
    +HardFault_Handler\
    +                PROC
    +                EXPORT  HardFault_Handler         [WEAK]
    +                B       .
    +                ENDP
    +MemManage_Handler\
    +                PROC
    +                EXPORT  MemManage_Handler         [WEAK]
    +                B       .
    +                ENDP
    +BusFault_Handler\
    +                PROC
    +                EXPORT  BusFault_Handler          [WEAK]
    +                B       .
    +                ENDP
    +UsageFault_Handler\
    +                PROC
    +                EXPORT  UsageFault_Handler        [WEAK]
    +                B       .
    +                ENDP
    +SVC_Handler     PROC
    +                EXPORT  SVC_Handler               [WEAK]
    +                B       .
    +                ENDP
    +DebugMon_Handler\
    +                PROC
    +                EXPORT  DebugMon_Handler          [WEAK]
    +                B       .
    +                ENDP
    +PendSV_Handler\
    +                PROC
    +                EXPORT  PendSV_Handler            [WEAK]
    +                B       .
    +                ENDP
    +SysTick_Handler\
    +                PROC
    +                EXPORT  SysTick_Handler           [WEAK]
    +                B       .
    +                ENDP
    +
    +Default_Handler PROC
    +; ToDo:  Add here the export definition for the device specific external interrupts handler
    +                EXPORT  <DeviceInterrupt>_IRQHandler         [WEAK]
    +
    +; ToDo:  Add here the names for the device specific external interrupts handler
    +<DeviceInterrupt>_IRQHandler
    +                B       .
    +                ENDP
    +
    +
    +                ALIGN
    +
    +
    +; User Initial Stack & Heap
    +
    +                IF      :DEF:__MICROLIB
    +
    +                EXPORT  __initial_sp
    +                EXPORT  __heap_base
    +                EXPORT  __heap_limit
    +
    +                ELSE
    +
    +                IMPORT  __use_two_region_memory
    +                EXPORT  __user_initial_stackheap
    +
    +__user_initial_stackheap PROC
    +                LDR     R0, =  Heap_Mem
    +                LDR     R1, =(Stack_Mem + Stack_Size)
    +                LDR     R2, = (Heap_Mem +  Heap_Size)
    +                LDR     R3, = Stack_Mem
    +                BX      LR
    +                ENDP
    +
    +                ALIGN
    +
    +                ENDIF
    +
    +
    +                END
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_core_debug___type.html b/CMSIS/Documentation/Core/html/struct_core_debug___type.html new file mode 100644 index 0000000..9f82c8c --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_core_debug___type.html @@ -0,0 +1,205 @@ + + + + + +CoreDebug_Type Struct Reference +CMSIS-CORE: CoreDebug_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CoreDebug_Type Struct Reference
    +
    +
    + +

    Structure type to access the Core Debug Register (CoreDebug). +

    + + + + + + + + + + + + + + +

    +Data Fields

    __IOM uint32_t DHCSR
     Offset: 0x000 (R/W) Debug Halting Control and Status Register.
     
    __OM uint32_t DCRSR
     Offset: 0x004 ( /W) Debug Core Register Selector Register.
     
    __IOM uint32_t DCRDR
     Offset: 0x008 (R/W) Debug Core Register Data Register.
     
    __IOM uint32_t DEMCR
     Offset: 0x00C (R/W) Debug Exception and Monitor Control Register.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IOM uint32_t CoreDebug_Type::DCRDR
    +
    + +
    +
    + +
    +
    + + + + +
    __OM uint32_t CoreDebug_Type::DCRSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t CoreDebug_Type::DEMCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t CoreDebug_Type::DHCSR
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_core_debug___type.js b/CMSIS/Documentation/Core/html/struct_core_debug___type.js new file mode 100644 index 0000000..812a293 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_core_debug___type.js @@ -0,0 +1,7 @@ +var struct_core_debug___type = +[ + [ "DCRDR", "struct_core_debug___type.html#aab3cc92ef07bc1f04b3a3aa6db2c2d55", null ], + [ "DCRSR", "struct_core_debug___type.html#af907cf64577eaf927dac6787df6dd98b", null ], + [ "DEMCR", "struct_core_debug___type.html#aeb3126abc4c258a858f21f356c0df6ee", null ], + [ "DHCSR", "struct_core_debug___type.html#ad63554e4650da91a8e79929cbb63db66", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_d_w_t___type.html b/CMSIS/Documentation/Core/html/struct_d_w_t___type.html new file mode 100644 index 0000000..2e85193 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_d_w_t___type.html @@ -0,0 +1,490 @@ + + + + + +DWT_Type Struct Reference +CMSIS-CORE: DWT_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    DWT_Type Struct Reference
    +
    +
    + +

    Structure type to access the Data Watchpoint and Trace Register (DWT). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    __IOM uint32_t CTRL
     Offset: 0x000 (R/W) Control Register.
     
    __IOM uint32_t CYCCNT
     Offset: 0x004 (R/W) Cycle Count Register.
     
    __IOM uint32_t CPICNT
     Offset: 0x008 (R/W) CPI Count Register.
     
    __IOM uint32_t EXCCNT
     Offset: 0x00C (R/W) Exception Overhead Count Register.
     
    __IOM uint32_t SLEEPCNT
     Offset: 0x010 (R/W) Sleep Count Register.
     
    __IOM uint32_t LSUCNT
     Offset: 0x014 (R/W) LSU Count Register.
     
    __IOM uint32_t FOLDCNT
     Offset: 0x018 (R/W) Folded-instruction Count Register.
     
    __IM uint32_t PCSR
     Offset: 0x01C (R/ ) Program Counter Sample Register.
     
    __IOM uint32_t COMP0
     Offset: 0x020 (R/W) Comparator Register 0.
     
    __IOM uint32_t MASK0
     Offset: 0x024 (R/W) Mask Register 0.
     
    __IOM uint32_t FUNCTION0
     Offset: 0x028 (R/W) Function Register 0.
     
    uint32_t RESERVED0 [1]
     Reserved.
     
    __IOM uint32_t COMP1
     Offset: 0x030 (R/W) Comparator Register 1.
     
    __IOM uint32_t MASK1
     Offset: 0x034 (R/W) Mask Register 1.
     
    __IOM uint32_t FUNCTION1
     Offset: 0x038 (R/W) Function Register 1.
     
    uint32_t RESERVED1 [1]
     Reserved.
     
    __IOM uint32_t COMP2
     Offset: 0x040 (R/W) Comparator Register 2.
     
    __IOM uint32_t MASK2
     Offset: 0x044 (R/W) Mask Register 2.
     
    __IOM uint32_t FUNCTION2
     Offset: 0x048 (R/W) Function Register 2.
     
    uint32_t RESERVED2 [1]
     Reserved.
     
    __IOM uint32_t COMP3
     Offset: 0x050 (R/W) Comparator Register 3.
     
    __IOM uint32_t MASK3
     Offset: 0x054 (R/W) Mask Register 3.
     
    __IOM uint32_t FUNCTION3
     Offset: 0x058 (R/W) Function Register 3.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::COMP0
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::COMP1
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::COMP2
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::COMP3
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::CPICNT
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::CTRL
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::CYCCNT
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::EXCCNT
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::FOLDCNT
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::FUNCTION0
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::FUNCTION1
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::FUNCTION2
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::FUNCTION3
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::LSUCNT
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::MASK0
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::MASK1
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::MASK2
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::MASK3
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t DWT_Type::PCSR
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t DWT_Type::RESERVED0[1]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t DWT_Type::RESERVED1[1]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t DWT_Type::RESERVED2[1]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t DWT_Type::SLEEPCNT
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_d_w_t___type.js b/CMSIS/Documentation/Core/html/struct_d_w_t___type.js new file mode 100644 index 0000000..8551743 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_d_w_t___type.js @@ -0,0 +1,26 @@ +var struct_d_w_t___type = +[ + [ "COMP0", "struct_d_w_t___type.html#a61c2965af5bc0643f9af65620b0e67c9", null ], + [ "COMP1", "struct_d_w_t___type.html#a38714af6b7fa7c64d68f5e1efbe7a931", null ], + [ "COMP2", "struct_d_w_t___type.html#a5ae6dde39989f27bae90afc2347deb46", null ], + [ "COMP3", "struct_d_w_t___type.html#a85eb73d1848ac3f82d39d6c3e8910847", null ], + [ "CPICNT", "struct_d_w_t___type.html#a2c08096c82abe245c0fa97badc458154", null ], + [ "CTRL", "struct_d_w_t___type.html#add790c53410023b3b581919bb681fe2a", null ], + [ "CYCCNT", "struct_d_w_t___type.html#a102eaa529d9098242851cb57c52b42d9", null ], + [ "EXCCNT", "struct_d_w_t___type.html#a9fe20c16c5167ca61486caf6832686d1", null ], + [ "FOLDCNT", "struct_d_w_t___type.html#a1cfc48384ebd8fd8fb7e5d955aae6c97", null ], + [ "FUNCTION0", "struct_d_w_t___type.html#a579ae082f58a0317b7ef029b20f52889", null ], + [ "FUNCTION1", "struct_d_w_t___type.html#a8dfcf25675f9606aa305c46e85182e4e", null ], + [ "FUNCTION2", "struct_d_w_t___type.html#ab1b60d6600c38abae515bab8e86a188f", null ], + [ "FUNCTION3", "struct_d_w_t___type.html#a52d4ff278fae6f9216c63b74ce328841", null ], + [ "LSUCNT", "struct_d_w_t___type.html#acc05d89bdb1b4fe2fa499920ec02d0b1", null ], + [ "MASK0", "struct_d_w_t___type.html#a821eb5e71f340ec077efc064cfc567db", null ], + [ "MASK1", "struct_d_w_t___type.html#aabf94936c9340e62fed836dcfb152405", null ], + [ "MASK2", "struct_d_w_t___type.html#a00ac4d830dfe0070a656cda9baed170f", null ], + [ "MASK3", "struct_d_w_t___type.html#a2a509d8505c37a3b64f6b24993df5f3f", null ], + [ "PCSR", "struct_d_w_t___type.html#a6353ca1d1ad9bc1be05d3b5632960113", null ], + [ "RESERVED0", "struct_d_w_t___type.html#addd893d655ed90d40705b20170daac59", null ], + [ "RESERVED1", "struct_d_w_t___type.html#a069871233a8c1df03521e6d7094f1de4", null ], + [ "RESERVED2", "struct_d_w_t___type.html#a8556ca1c32590517602d92fe0cd55738", null ], + [ "SLEEPCNT", "struct_d_w_t___type.html#a416a54e2084ce66e5ca74f152a5ecc70", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_f_p_u___type.html b/CMSIS/Documentation/Core/html/struct_f_p_u___type.html new file mode 100644 index 0000000..b84f3c3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_f_p_u___type.html @@ -0,0 +1,235 @@ + + + + + +FPU_Type Struct Reference +CMSIS-CORE: FPU_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    FPU_Type Struct Reference
    +
    +
    + +

    Structure type to access the Floating Point Unit (FPU). +

    + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    uint32_t RESERVED0 [1]
     Reserved.
     
    __IOM uint32_t FPCCR
     Offset: 0x004 (R/W) Floating-Point Context Control Register.
     
    __IOM uint32_t FPCAR
     Offset: 0x008 (R/W) Floating-Point Context Address Register.
     
    __IOM uint32_t FPDSCR
     Offset: 0x00C (R/W) Floating-Point Default Status Control Register.
     
    __IM uint32_t MVFR0
     Offset: 0x010 (R/ ) Media and FP Feature Register 0.
     
    __IM uint32_t MVFR1
     Offset: 0x014 (R/ ) Media and FP Feature Register 1.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IOM uint32_t FPU_Type::FPCAR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t FPU_Type::FPCCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t FPU_Type::FPDSCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t FPU_Type::MVFR0
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t FPU_Type::MVFR1
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t FPU_Type::RESERVED0[1]
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_f_p_u___type.js b/CMSIS/Documentation/Core/html/struct_f_p_u___type.js new file mode 100644 index 0000000..8af3cda --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_f_p_u___type.js @@ -0,0 +1,9 @@ +var struct_f_p_u___type = +[ + [ "FPCAR", "struct_f_p_u___type.html#a55263b468d0f8e11ac77aec9ff87c820", null ], + [ "FPCCR", "struct_f_p_u___type.html#af1b708c5e413739150df3d16ca3b7061", null ], + [ "FPDSCR", "struct_f_p_u___type.html#a58d1989664a06db6ec2e122eefa9f04a", null ], + [ "MVFR0", "struct_f_p_u___type.html#a4f19014defe6033d070b80af19ef627c", null ], + [ "MVFR1", "struct_f_p_u___type.html#a66f8cfa49a423b480001a4e101bf842d", null ], + [ "RESERVED0", "struct_f_p_u___type.html#a7b2967b069046c8544adbbc1db143a36", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_i_t_m___type.html b/CMSIS/Documentation/Core/html/struct_i_t_m___type.html new file mode 100644 index 0000000..ba162b2 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_i_t_m___type.html @@ -0,0 +1,296 @@ + + + + + +ITM_Type Struct Reference +CMSIS-CORE: ITM_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    ITM_Type Struct Reference
    +
    +
    + +

    Structure type to access the Instrumentation Trace Macrocell Register (ITM). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    union {
       __OM uint8_t   u8
     Offset: 0x000 ( /W) ITM Stimulus Port 8-bit.
     
       __OM uint16_t   u16
     Offset: 0x000 ( /W) ITM Stimulus Port 16-bit.
     
       __OM uint32_t   u32
     Offset: 0x000 ( /W) ITM Stimulus Port 32-bit.
     
    PORT [32]
     Offset: 0x000 ( /W) ITM Stimulus Port Registers.
     
    uint32_t RESERVED0 [864]
     Reserved.
     
    __IOM uint32_t TER
     Offset: 0xE00 (R/W) ITM Trace Enable Register.
     
    uint32_t RESERVED1 [15]
     Reserved.
     
    __IOM uint32_t TPR
     Offset: 0xE40 (R/W) ITM Trace Privilege Register.
     
    uint32_t RESERVED2 [15]
     Reserved.
     
    __IOM uint32_t TCR
     Offset: 0xE80 (R/W) ITM Trace Control Register.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __OM { ... } ITM_Type::PORT[32]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t ITM_Type::RESERVED0[864]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t ITM_Type::RESERVED1[15]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t ITM_Type::RESERVED2[15]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t ITM_Type::TCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t ITM_Type::TER
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t ITM_Type::TPR
    +
    + +
    +
    + +
    +
    + + + + +
    __OM uint16_t ITM_Type::u16
    +
    + +
    +
    + +
    +
    + + + + +
    __OM uint32_t ITM_Type::u32
    +
    + +
    +
    + +
    +
    + + + + +
    __OM uint8_t ITM_Type::u8
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_i_t_m___type.js b/CMSIS/Documentation/Core/html/struct_i_t_m___type.js new file mode 100644 index 0000000..4c165a2 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_i_t_m___type.js @@ -0,0 +1,13 @@ +var struct_i_t_m___type = +[ + [ "PORT", "struct_i_t_m___type.html#af4c205be465780a20098387120bdb482", null ], + [ "RESERVED0", "struct_i_t_m___type.html#a2c5ae30385b5f370d023468ea9914c0e", null ], + [ "RESERVED1", "struct_i_t_m___type.html#afffce5b93bbfedbaee85357d0b07ebce", null ], + [ "RESERVED2", "struct_i_t_m___type.html#af56b2f07bc6b42cd3e4d17e1b27cff7b", null ], + [ "TCR", "struct_i_t_m___type.html#a04b9fbc83759cb818dfa161d39628426", null ], + [ "TER", "struct_i_t_m___type.html#acd03c6858f7b678dab6a6121462e7807", null ], + [ "TPR", "struct_i_t_m___type.html#ae907229ba50538bf370fbdfd54c099a2", null ], + [ "u16", "struct_i_t_m___type.html#a962a970dfd286cad7f8a8577e87d4ad3", null ], + [ "u32", "struct_i_t_m___type.html#a5834885903a557674f078f3b71fa8bc8", null ], + [ "u8", "struct_i_t_m___type.html#ae773bf9f9dac64e6c28b14aa39f74275", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_m_p_u___type.html b/CMSIS/Documentation/Core/html/struct_m_p_u___type.html new file mode 100644 index 0000000..ee63cbe --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_m_p_u___type.html @@ -0,0 +1,310 @@ + + + + + +MPU_Type Struct Reference +CMSIS-CORE: MPU_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MPU_Type Struct Reference
    +
    +
    + +

    Structure type to access the Memory Protection Unit (MPU). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    __IM uint32_t TYPE
     Offset: 0x000 (R/ ) MPU Type Register.
     
    __IOM uint32_t CTRL
     Offset: 0x004 (R/W) MPU Control Register.
     
    __IOM uint32_t RNR
     Offset: 0x008 (R/W) MPU Region RNRber Register.
     
    __IOM uint32_t RBAR
     Offset: 0x00C (R/W) MPU Region Base Address Register.
     
    __IOM uint32_t RASR
     Offset: 0x010 (R/W) MPU Region Attribute and Size Register.
     
    __IOM uint32_t RBAR_A1
     Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register.
     
    __IOM uint32_t RASR_A1
     Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register.
     
    __IOM uint32_t RBAR_A2
     Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register.
     
    __IOM uint32_t RASR_A2
     Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register.
     
    __IOM uint32_t RBAR_A3
     Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register.
     
    __IOM uint32_t RASR_A3
     Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::CTRL
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RASR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RASR_A1
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RASR_A2
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RASR_A3
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RBAR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RBAR_A1
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RBAR_A2
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RBAR_A3
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t MPU_Type::RNR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t MPU_Type::TYPE
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_m_p_u___type.js b/CMSIS/Documentation/Core/html/struct_m_p_u___type.js new file mode 100644 index 0000000..26696b1 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_m_p_u___type.js @@ -0,0 +1,14 @@ +var struct_m_p_u___type = +[ + [ "CTRL", "struct_m_p_u___type.html#a4d81d6aa73a9287bafba2bcc5ffc6d18", null ], + [ "RASR", "struct_m_p_u___type.html#a9236c629b7cf86f8bd2459c610fdf715", null ], + [ "RASR_A1", "struct_m_p_u___type.html#ab5a224ccd12ac55ddfe11d9eca42de48", null ], + [ "RASR_A2", "struct_m_p_u___type.html#ac60e0919871b66446a039838bcaaec3b", null ], + [ "RASR_A3", "struct_m_p_u___type.html#a9c0b2d3e3e16bb4e7dfa069652d5a155", null ], + [ "RBAR", "struct_m_p_u___type.html#ac953770d38a7d322b971d93eb8a5b062", null ], + [ "RBAR_A1", "struct_m_p_u___type.html#a13d69b9bea12861383f3a62764b02f63", null ], + [ "RBAR_A2", "struct_m_p_u___type.html#a57dc551614932150e684fcc60590c2c4", null ], + [ "RBAR_A3", "struct_m_p_u___type.html#a345911aabecd1f7d93a1bff7738b0d86", null ], + [ "RNR", "struct_m_p_u___type.html#aa800d44f4d3520cc891d7b8d711320c1", null ], + [ "TYPE", "struct_m_p_u___type.html#a0433efc1383674bc8e86cc0e830b462d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_n_v_i_c___type.html b/CMSIS/Documentation/Core/html/struct_n_v_i_c___type.html new file mode 100644 index 0000000..a6b9a0a --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_n_v_i_c___type.html @@ -0,0 +1,340 @@ + + + + + +NVIC_Type Struct Reference +CMSIS-CORE: NVIC_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NVIC_Type Struct Reference
    +
    +
    + +

    Structure type to access the Nested Vectored Interrupt Controller (NVIC). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    __IOM uint32_t ISER [8]
     Offset: 0x000 (R/W) Interrupt Set Enable Register.
     
    uint32_t RESERVED0 [24]
     Reserved.
     
    __IOM uint32_t ICER [8]
     Offset: 0x080 (R/W) Interrupt Clear Enable Register.
     
    uint32_t RSERVED1 [24]
     Reserved.
     
    __IOM uint32_t ISPR [8]
     Offset: 0x100 (R/W) Interrupt Set Pending Register.
     
    uint32_t RESERVED2 [24]
     Reserved.
     
    __IOM uint32_t ICPR [8]
     Offset: 0x180 (R/W) Interrupt Clear Pending Register.
     
    uint32_t RESERVED3 [24]
     Reserved.
     
    __IOM uint32_t IABR [8]
     Offset: 0x200 (R/W) Interrupt Active bit Register.
     
    uint32_t RESERVED4 [56]
     Reserved.
     
    __IOM uint8_t IP [240]
     Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide)
     
    uint32_t RESERVED5 [644]
     Reserved.
     
    __OM uint32_t STIR
     Offset: 0xE00 ( /W) Software Trigger Interrupt Register.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IOM uint32_t NVIC_Type::IABR[8]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t NVIC_Type::ICER[8]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t NVIC_Type::ICPR[8]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint8_t NVIC_Type::IP[240]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t NVIC_Type::ISER[8]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t NVIC_Type::ISPR[8]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t NVIC_Type::RESERVED0[24]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t NVIC_Type::RESERVED2[24]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t NVIC_Type::RESERVED3[24]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t NVIC_Type::RESERVED4[56]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t NVIC_Type::RESERVED5[644]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t NVIC_Type::RSERVED1[24]
    +
    + +
    +
    + +
    +
    + + + + +
    __OM uint32_t NVIC_Type::STIR
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_n_v_i_c___type.js b/CMSIS/Documentation/Core/html/struct_n_v_i_c___type.js new file mode 100644 index 0000000..ca47fe6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_n_v_i_c___type.js @@ -0,0 +1,16 @@ +var struct_n_v_i_c___type = +[ + [ "IABR", "struct_n_v_i_c___type.html#a4bca5452748ba84d64536fb6a5d795af", null ], + [ "ICER", "struct_n_v_i_c___type.html#a245df8bac1da05c39eadabede9323203", null ], + [ "ICPR", "struct_n_v_i_c___type.html#a8d8f45d9c5c67bba3c153c55574bac95", null ], + [ "IP", "struct_n_v_i_c___type.html#a7ff7364a4260df67a2784811e8da4efd", null ], + [ "ISER", "struct_n_v_i_c___type.html#a9fccef5a60a0d5e81fcd7869a6274f47", null ], + [ "ISPR", "struct_n_v_i_c___type.html#a8f731a9f428efc86e8d311b52ce823d0", null ], + [ "RESERVED0", "struct_n_v_i_c___type.html#a2de17698945ea49abd58a2d45bdc9c80", null ], + [ "RESERVED2", "struct_n_v_i_c___type.html#a0953af43af8ec7fd5869a1d826ce5b72", null ], + [ "RESERVED3", "struct_n_v_i_c___type.html#a9dd330835dbf21471e7b5be8692d77ab", null ], + [ "RESERVED4", "struct_n_v_i_c___type.html#a5c0e5d507ac3c1bd5cdaaf9bbd177790", null ], + [ "RESERVED5", "struct_n_v_i_c___type.html#a4f753b4f824270175af045ac99bc12e8", null ], + [ "RSERVED1", "struct_n_v_i_c___type.html#a6d1daf7ab6f2ba83f57ff67ae6f571fe", null ], + [ "STIR", "struct_n_v_i_c___type.html#a37de89637466e007171c6b135299bc75", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_s_c_b___type.html b/CMSIS/Documentation/Core/html/struct_s_c_b___type.html new file mode 100644 index 0000000..2bc4a47 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_s_c_b___type.html @@ -0,0 +1,460 @@ + + + + + +SCB_Type Struct Reference +CMSIS-CORE: SCB_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SCB_Type Struct Reference
    +
    +
    + +

    Structure type to access the System Control Block (SCB). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    __IM uint32_t CPUID
     Offset: 0x000 (R/ ) CPUID Base Register.
     
    __IOM uint32_t ICSR
     Offset: 0x004 (R/W) Interrupt Control and State Register.
     
    __IOM uint32_t VTOR
     Offset: 0x008 (R/W) Vector Table Offset Register.
     
    __IOM uint32_t AIRCR
     Offset: 0x00C (R/W) Application Interrupt and Reset Control Register.
     
    __IOM uint32_t SCR
     Offset: 0x010 (R/W) System Control Register.
     
    __IOM uint32_t CCR
     Offset: 0x014 (R/W) Configuration Control Register.
     
    __IOM uint8_t SHP [12]
     Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15)
     
    __IOM uint32_t SHCSR
     Offset: 0x024 (R/W) System Handler Control and State Register.
     
    __IOM uint32_t CFSR
     Offset: 0x028 (R/W) Configurable Fault Status Register.
     
    __IOM uint32_t HFSR
     Offset: 0x02C (R/W) HardFault Status Register.
     
    __IOM uint32_t DFSR
     Offset: 0x030 (R/W) Debug Fault Status Register.
     
    __IOM uint32_t MMFAR
     Offset: 0x034 (R/W) MemManage Fault Address Register.
     
    __IOM uint32_t BFAR
     Offset: 0x038 (R/W) BusFault Address Register.
     
    __IOM uint32_t AFSR
     Offset: 0x03C (R/W) Auxiliary Fault Status Register.
     
    __IM uint32_t PFR [2]
     Offset: 0x040 (R/ ) Processor Feature Register.
     
    __IM uint32_t DFR
     Offset: 0x048 (R/ ) Debug Feature Register.
     
    __IM uint32_t ADR
     Offset: 0x04C (R/ ) Auxiliary Feature Register.
     
    __IM uint32_t MMFR [4]
     Offset: 0x050 (R/ ) Memory Model Feature Register.
     
    __IM uint32_t ISAR [5]
     Offset: 0x060 (R/ ) Instruction Set Attributes Register.
     
    uint32_t RESERVED0 [5]
     Reserved.
     
    __IOM uint32_t CPACR
     Offset: 0x088 (R/W) Coprocessor Access Control Register.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IM uint32_t SCB_Type::ADR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::AFSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::AIRCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::BFAR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::CCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::CFSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::CPACR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t SCB_Type::CPUID
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t SCB_Type::DFR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::DFSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::HFSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::ICSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t SCB_Type::ISAR[5]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::MMFAR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t SCB_Type::MMFR[4]
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t SCB_Type::PFR[2]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t SCB_Type::RESERVED0[5]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::SCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::SHCSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint8_t SCB_Type::SHP[12]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SCB_Type::VTOR
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_s_c_b___type.js b/CMSIS/Documentation/Core/html/struct_s_c_b___type.js new file mode 100644 index 0000000..d82ca54 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_s_c_b___type.js @@ -0,0 +1,24 @@ +var struct_s_c_b___type = +[ + [ "ADR", "struct_s_c_b___type.html#af084e1b2dad004a88668efea1dfe7fa1", null ], + [ "AFSR", "struct_s_c_b___type.html#ab65372404ce64b0f0b35e2709429404e", null ], + [ "AIRCR", "struct_s_c_b___type.html#ad3e5b8934c647eb1b7383c1894f01380", null ], + [ "BFAR", "struct_s_c_b___type.html#a3f8e7e58be4e41c88dfa78f54589271c", null ], + [ "CCR", "struct_s_c_b___type.html#a2d6653b0b70faac936046a02809b577f", null ], + [ "CFSR", "struct_s_c_b___type.html#a0cda9e061b42373383418663092ad19a", null ], + [ "CPACR", "struct_s_c_b___type.html#ac6a860c1b8d8154a1f00d99d23b67764", null ], + [ "CPUID", "struct_s_c_b___type.html#a21e08d546d8b641bee298a459ea73e46", null ], + [ "DFR", "struct_s_c_b___type.html#a85dd6fe77aab17e7ea89a52c59da6004", null ], + [ "DFSR", "struct_s_c_b___type.html#a191579bde0d21ff51d30a714fd887033", null ], + [ "HFSR", "struct_s_c_b___type.html#a14ad254659362b9752c69afe3fd80934", null ], + [ "ICSR", "struct_s_c_b___type.html#a0ca18ef984d132c6bf4d9b61cd00f05a", null ], + [ "ISAR", "struct_s_c_b___type.html#ae0136a2d2d3c45f016b2c449e92b2066", null ], + [ "MMFAR", "struct_s_c_b___type.html#a2d03d0b7cec2254f39eb1c46c7445e80", null ], + [ "MMFR", "struct_s_c_b___type.html#aa11887804412bda283cc85a83fdafa7c", null ], + [ "PFR", "struct_s_c_b___type.html#a681c9d9e518b217976bef38c2423d83d", null ], + [ "RESERVED0", "struct_s_c_b___type.html#ac89a5d9901e3748d22a7090bfca2bee6", null ], + [ "SCR", "struct_s_c_b___type.html#a3a4840c6fa4d1ee75544f4032c88ec34", null ], + [ "SHCSR", "struct_s_c_b___type.html#a7b5ae9741a99808043394c4743b635c4", null ], + [ "SHP", "struct_s_c_b___type.html#a85768f4b3dbbc41fd760041ee1202162", null ], + [ "VTOR", "struct_s_c_b___type.html#a187a4578e920544ed967f98020fb8170", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.html b/CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.html new file mode 100644 index 0000000..96a0c00 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.html @@ -0,0 +1,190 @@ + + + + + +SCnSCB_Type Struct Reference +CMSIS-CORE: SCnSCB_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SCnSCB_Type Struct Reference
    +
    +
    + +

    Structure type to access the System Control and ID Register not in the SCB. +

    + + + + + + + + + + + +

    +Data Fields

    uint32_t RESERVED0 [1]
     Reserved.
     
    __IM uint32_t ICTR
     Offset: 0x004 (R/ ) Interrupt Controller Type Register.
     
    __IOM uint32_t ACTLR
     Offset: 0x008 (R/W) Auxiliary Control Register.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IOM uint32_t SCnSCB_Type::ACTLR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t SCnSCB_Type::ICTR
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t SCnSCB_Type::RESERVED0[1]
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.js b/CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.js new file mode 100644 index 0000000..f0d6f06 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_s_cn_s_c_b___type.js @@ -0,0 +1,6 @@ +var struct_s_cn_s_c_b___type = +[ + [ "ACTLR", "struct_s_cn_s_c_b___type.html#a13af9b718dde7481f1c0344f00593c23", null ], + [ "ICTR", "struct_s_cn_s_c_b___type.html#a34ec1d771245eb9bd0e3ec9336949762", null ], + [ "RESERVED0", "struct_s_cn_s_c_b___type.html#afe1d5fd2966d5062716613b05c8d0ae1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_sys_tick___type.html b/CMSIS/Documentation/Core/html/struct_sys_tick___type.html new file mode 100644 index 0000000..7cea3e3 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_sys_tick___type.html @@ -0,0 +1,205 @@ + + + + + +SysTick_Type Struct Reference +CMSIS-CORE: SysTick_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SysTick_Type Struct Reference
    +
    +
    + +

    Structure type to access the System Timer (SysTick). +

    + + + + + + + + + + + + + + +

    +Data Fields

    __IOM uint32_t CTRL
     Offset: 0x000 (R/W) SysTick Control and Status Register.
     
    __IOM uint32_t LOAD
     Offset: 0x004 (R/W) SysTick Reload Value Register.
     
    __IOM uint32_t VAL
     Offset: 0x008 (R/W) SysTick Current Value Register.
     
    __IM uint32_t CALIB
     Offset: 0x00C (R/ ) SysTick Calibration Register.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IM uint32_t SysTick_Type::CALIB
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SysTick_Type::CTRL
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SysTick_Type::LOAD
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t SysTick_Type::VAL
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_sys_tick___type.js b/CMSIS/Documentation/Core/html/struct_sys_tick___type.js new file mode 100644 index 0000000..8833522 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_sys_tick___type.js @@ -0,0 +1,7 @@ +var struct_sys_tick___type = +[ + [ "CALIB", "struct_sys_tick___type.html#afcadb0c6d35b21cdc0018658a13942de", null ], + [ "CTRL", "struct_sys_tick___type.html#a875e7afa5c4fd43997fb544a4ac6e37e", null ], + [ "LOAD", "struct_sys_tick___type.html#a4780a489256bb9f54d0ba8ed4de191cd", null ], + [ "VAL", "struct_sys_tick___type.html#a9b5420d17e8e43104ddd4ae5a610af93", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/struct_t_p_i___type.html b/CMSIS/Documentation/Core/html/struct_t_p_i___type.html new file mode 100644 index 0000000..5b68d26 --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_t_p_i___type.html @@ -0,0 +1,505 @@ + + + + + +TPI_Type Struct Reference +CMSIS-CORE: TPI_Type Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    TPI_Type Struct Reference
    +
    +
    + +

    Structure type to access the Trace Port Interface Register (TPI). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    __IOM uint32_t SSPSR
     Offset: 0x000 (R/ ) Supported Parallel Port Size Register.
     
    __IOM uint32_t CSPSR
     Offset: 0x004 (R/W) Current Parallel Port Size Register.
     
    uint32_t RESERVED0 [2]
     Reserved.
     
    __IOM uint32_t ACPR
     Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register.
     
    uint32_t RESERVED1 [55]
     Reserved.
     
    __IOM uint32_t SPPR
     Offset: 0x0F0 (R/W) Selected Pin Protocol Register.
     
    uint32_t RESERVED2 [131]
     Reserved.
     
    __IM uint32_t FFSR
     Offset: 0x300 (R/ ) Formatter and Flush Status Register.
     
    __IOM uint32_t FFCR
     Offset: 0x304 (R/W) Formatter and Flush Control Register.
     
    __IM uint32_t FSCR
     Offset: 0x308 (R/ ) Formatter Synchronization Counter Register.
     
    uint32_t RESERVED3 [759]
     Reserved.
     
    __IM uint32_t TRIGGER
     Offset: 0xEE8 (R/ ) TRIGGER.
     
    __IM uint32_t FIFO0
     Offset: 0xEEC (R/ ) Integration ETM Data.
     
    __IM uint32_t ITATBCTR2
     Offset: 0xEF0 (R/ ) ITATBCTR2.
     
    uint32_t RESERVED4 [1]
     Reserved.
     
    __IM uint32_t ITATBCTR0
     Offset: 0xEF8 (R/ ) ITATBCTR0.
     
    __IM uint32_t FIFO1
     Offset: 0xEFC (R/ ) Integration ITM Data.
     
    __IOM uint32_t ITCTRL
     Offset: 0xF00 (R/W) Integration Mode Control.
     
    uint32_t RESERVED5 [39]
     Reserved.
     
    __IOM uint32_t CLAIMSET
     Offset: 0xFA0 (R/W) Claim tag set.
     
    __IOM uint32_t CLAIMCLR
     Offset: 0xFA4 (R/W) Claim tag clear.
     
    uint32_t RESERVED7 [8]
     Reserved.
     
    __IM uint32_t DEVID
     Offset: 0xFC8 (R/ ) TPIU_DEVID.
     
    __IM uint32_t DEVTYPE
     Offset: 0xFCC (R/ ) TPIU_DEVTYPE.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::ACPR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::CLAIMCLR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::CLAIMSET
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::CSPSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::DEVID
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::DEVTYPE
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::FFCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::FFSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::FIFO0
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::FIFO1
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::FSCR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::ITATBCTR0
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::ITATBCTR2
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::ITCTRL
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t TPI_Type::RESERVED0[2]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t TPI_Type::RESERVED1[55]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t TPI_Type::RESERVED2[131]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t TPI_Type::RESERVED3[759]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t TPI_Type::RESERVED4[1]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t TPI_Type::RESERVED5[39]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t TPI_Type::RESERVED7[8]
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::SPPR
    +
    + +
    +
    + +
    +
    + + + + +
    __IOM uint32_t TPI_Type::SSPSR
    +
    + +
    +
    + +
    +
    + + + + +
    __IM uint32_t TPI_Type::TRIGGER
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/struct_t_p_i___type.js b/CMSIS/Documentation/Core/html/struct_t_p_i___type.js new file mode 100644 index 0000000..e95d25f --- /dev/null +++ b/CMSIS/Documentation/Core/html/struct_t_p_i___type.js @@ -0,0 +1,27 @@ +var struct_t_p_i___type = +[ + [ "ACPR", "struct_t_p_i___type.html#a9e5e4421ef9c3d5b7ff8b24abd4e99b3", null ], + [ "CLAIMCLR", "struct_t_p_i___type.html#a0e10e292cb019a832b03ddd055b2f6ac", null ], + [ "CLAIMSET", "struct_t_p_i___type.html#af8b7d15fa5252b733dd4b11fa1b5730a", null ], + [ "CSPSR", "struct_t_p_i___type.html#a8826aa84e5806053395a742d38d59d0f", null ], + [ "DEVID", "struct_t_p_i___type.html#abc0ecda8a5446bc754080276bad77514", null ], + [ "DEVTYPE", "struct_t_p_i___type.html#ad98855854a719bbea33061e71529a472", null ], + [ "FFCR", "struct_t_p_i___type.html#a3f68b6e73561b4849ebf953a894df8d2", null ], + [ "FFSR", "struct_t_p_i___type.html#a6c47a0b4c7ffc66093ef993d36bb441c", null ], + [ "FIFO0", "struct_t_p_i___type.html#aa4d7b5cf39dff9f53bf7f69bc287a814", null ], + [ "FIFO1", "struct_t_p_i___type.html#a061372fcd72f1eea871e2d9c1be849bc", null ], + [ "FSCR", "struct_t_p_i___type.html#ad6901bfd8a0089ca7e8a20475cf494a8", null ], + [ "ITATBCTR0", "struct_t_p_i___type.html#aaa573b2e073e76e93c51ecec79c616d0", null ], + [ "ITATBCTR2", "struct_t_p_i___type.html#ab358319b969d3fed0f89bbe33e9f1652", null ], + [ "ITCTRL", "struct_t_p_i___type.html#aaa4c823c10f115f7517c82ef86a5a68d", null ], + [ "RESERVED0", "struct_t_p_i___type.html#af143c5e8fc9a3b2be2878e9c1f331aa9", null ], + [ "RESERVED1", "struct_t_p_i___type.html#ac3956fe93987b725d89d3be32738da12", null ], + [ "RESERVED2", "struct_t_p_i___type.html#ac7bbb92e6231b9b38ac483f7d161a096", null ], + [ "RESERVED3", "struct_t_p_i___type.html#a31700c8cdd26e4c094db72af33d9f24c", null ], + [ "RESERVED4", "struct_t_p_i___type.html#a684071216fafee4e80be6aaa932cec46", null ], + [ "RESERVED5", "struct_t_p_i___type.html#a3f80dd93f6bab6524603a7aa58de9a30", null ], + [ "RESERVED7", "struct_t_p_i___type.html#a476ca23fbc9480f1697fbec871130550", null ], + [ "SPPR", "struct_t_p_i___type.html#a12f79d4e3ddc69893ba8bff890d04cc5", null ], + [ "SSPSR", "struct_t_p_i___type.html#a7b72598e20066133e505bb781690dc22", null ], + [ "TRIGGER", "struct_t_p_i___type.html#a4d4cd2357f72333a82a1313228287bbd", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/sync_off.png b/CMSIS/Documentation/Core/html/sync_off.png new file mode 100644 index 0000000..e8e314d Binary files /dev/null and b/CMSIS/Documentation/Core/html/sync_off.png differ diff --git a/CMSIS/Documentation/Core/html/sync_on.png b/CMSIS/Documentation/Core/html/sync_on.png new file mode 100644 index 0000000..f80906a Binary files /dev/null and b/CMSIS/Documentation/Core/html/sync_on.png differ diff --git a/CMSIS/Documentation/Core/html/system_c_pg.html b/CMSIS/Documentation/Core/html/system_c_pg.html new file mode 100644 index 0000000..c298350 --- /dev/null +++ b/CMSIS/Documentation/Core/html/system_c_pg.html @@ -0,0 +1,310 @@ + + + + + +System Configuration Files system_<device>.c and system_<device>.h +CMSIS-CORE: System Configuration Files system_<device>.c and system_<device>.h + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    System Configuration Files system_<device>.c and system_<device>.h
    +
    +
    +

    The System Configuration Files system_<device>.c and system_<device>.h provides as a minimum the functions described under System and Clock Configuration. These functions are device specific and need adaptations. In addition, the file might have configuration settings for the device such as XTAL frequency or PLL prescaler settings.

    +

    For devices with external memory BUS the system_<device>.c also configures the BUS system.

    +

    The silicon vendor might expose other functions (i.e. for power configuration) in the system_<device>.c file. In case of additional features the function prototypes need to be added to the system_<device>.h header file.

    +

    +system_Device.c Template File

    +

    The system_Device.c Template File for the Cortex-M3 is shown below.

    +
    /**************************************************************************//**
    + * @file     system_<Device>.c
    + * @brief    CMSIS Cortex-M# Device Peripheral Access Layer Source File for
    + *           Device <Device>
    + * @version  V3.10
    + * @date     23. November 2012
    + *
    + * @note
    + *
    + ******************************************************************************/
    +/* Copyright (c) 2012 ARM LIMITED
    +
    +   All rights reserved.
    +   Redistribution and use in source and binary forms, with or without
    +   modification, are permitted provided that the following conditions are met:
    +   - Redistributions of source code must retain the above copyright
    +     notice, this list of conditions and the following disclaimer.
    +   - Redistributions in binary form must reproduce the above copyright
    +     notice, this list of conditions and the following disclaimer in the
    +     documentation and/or other materials provided with the distribution.
    +   - Neither the name of ARM nor the names of its contributors may be used
    +     to endorse or promote products derived from this software without
    +     specific prior written permission.
    +   *
    +   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    +   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    +   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    +   ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
    +   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    +   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    +   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    +   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    +   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    +   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +   POSSIBILITY OF SUCH DAMAGE.
    +   ---------------------------------------------------------------------------*/
    +
    +
    +#include <stdint.h>
    +#include "<Device>.h"
    +
    +
    +/*----------------------------------------------------------------------------
    +  DEFINES
    + *----------------------------------------------------------------------------*/
    +
    +/*----------------------------------------------------------------------------
    +  Define clocks
    + *----------------------------------------------------------------------------*/
    +/* ToDo: add here your necessary defines for device initialization
    +         following is an example for different system frequencies             */
    +#define __HSI             ( 6000000UL)
    +#define __XTAL            (12000000UL)    /* Oscillator frequency             */
    +#define __SYS_OSC_CLK     (    ___HSI)    /* Main oscillator frequency        */
    +
    +#define __SYSTEM_CLOCK    (4*__XTAL)
    +
    +
    +/*----------------------------------------------------------------------------
    +  Clock Variable definitions
    + *----------------------------------------------------------------------------*/
    +/* ToDo: initialize SystemCoreClock with the system core clock frequency value
    +         achieved after system intitialization.
    +         This means system core clock frequency after call to SystemInit()    */
    +uint32_t SystemCoreClock = __SYSTEM_CLOCK;  /*!< System Clock Frequency (Core Clock)*/
    +
    +
    +/*----------------------------------------------------------------------------
    +  Clock functions
    + *----------------------------------------------------------------------------*/
    +void SystemCoreClockUpdate (void)            /* Get Core Clock Frequency      */
    +{
    +/* ToDo: add code to calculate the system frequency based upon the current
    +         register settings.
    +         This function can be used to retrieve the system core clock frequeny
    +         after user changed register sittings.                                */
    +  SystemCoreClock = __SYSTEM_CLOCK;
    +}
    +
    +/**
    + * Initialize the system
    + *
    + * @param  none
    + * @return none
    + *
    + * @brief  Setup the microcontroller system.
    + *         Initialize the System.
    + */
    +void SystemInit (void)
    +{
    +/* ToDo: add code to initialize the system
    +         do not use global variables because this function is called before
    +         reaching pre-main. RW section maybe overwritten afterwards.          */
    +  SystemCoreClock = __SYSTEM_CLOCK;
    +}
    +

    +system_Device.h Template File

    +

    The system_<device>.h header file contains prototypes to access the public functions in the system_<device>.c file. The system_Device.h Template File is shown below.

    +
    /**************************************************************************//**
    + * @file     system_<Device>.h
    + * @brief    CMSIS Cortex-M# Device Peripheral Access Layer Header File for
    + *           Device <Device>
    + * @version  V3.10
    + * @date     23. November 2012
    + *
    + * @note
    + *
    + ******************************************************************************/
    +/* Copyright (c) 2012 ARM LIMITED
    +
    +   All rights reserved.
    +   Redistribution and use in source and binary forms, with or without
    +   modification, are permitted provided that the following conditions are met:
    +   - Redistributions of source code must retain the above copyright
    +     notice, this list of conditions and the following disclaimer.
    +   - Redistributions in binary form must reproduce the above copyright
    +     notice, this list of conditions and the following disclaimer in the
    +     documentation and/or other materials provided with the distribution.
    +   - Neither the name of ARM nor the names of its contributors may be used
    +     to endorse or promote products derived from this software without
    +     specific prior written permission.
    +   *
    +   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    +   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    +   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    +   ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
    +   LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    +   CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    +   SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    +   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    +   CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    +   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +   POSSIBILITY OF SUCH DAMAGE.
    +   ---------------------------------------------------------------------------*/
    +
    +
    +#ifndef SYSTEM_<Device>_H   /* ToDo: replace '<Device>' with your device name */
    +#define SYSTEM_<Device>_H
    +
    +#ifdef __cplusplus
    +extern "C" {
    +#endif
    +
    +#include <stdint.h>
    +
    +extern uint32_t SystemCoreClock;     /*!< System Clock Frequency (Core Clock)  */
    +
    +
    +/**
    + * Initialize the system
    + *
    + * @param  none
    + * @return none
    + *
    + * @brief  Setup the microcontroller system.
    + *         Initialize the System and update the SystemCoreClock variable.
    + */
    +extern void SystemInit (void);
    +
    +/**
    + * Update SystemCoreClock variable
    + *
    + * @param  none
    + * @return none
    + *
    + * @brief  Updates the SystemCoreClock with current core Clock
    + *         retrieved from cpu registers.
    + */
    +extern void SystemCoreClockUpdate (void);
    +
    +#ifdef __cplusplus
    +}
    +#endif
    +
    +#endif /* SYSTEM_<Device>_H */
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/tab_a.png b/CMSIS/Documentation/Core/html/tab_a.png new file mode 100644 index 0000000..fffadc1 Binary files /dev/null and b/CMSIS/Documentation/Core/html/tab_a.png differ diff --git a/CMSIS/Documentation/Core/html/tab_b.png b/CMSIS/Documentation/Core/html/tab_b.png new file mode 100644 index 0000000..f69d988 Binary files /dev/null and b/CMSIS/Documentation/Core/html/tab_b.png differ diff --git a/CMSIS/Documentation/Core/html/tab_h.png b/CMSIS/Documentation/Core/html/tab_h.png new file mode 100644 index 0000000..5e9188f Binary files /dev/null and b/CMSIS/Documentation/Core/html/tab_h.png differ diff --git a/CMSIS/Documentation/Core/html/tab_s.png b/CMSIS/Documentation/Core/html/tab_s.png new file mode 100644 index 0000000..956e1c2 Binary files /dev/null and b/CMSIS/Documentation/Core/html/tab_s.png differ diff --git a/CMSIS/Documentation/Core/html/tab_topnav.png b/CMSIS/Documentation/Core/html/tab_topnav.png new file mode 100644 index 0000000..b257b77 Binary files /dev/null and b/CMSIS/Documentation/Core/html/tab_topnav.png differ diff --git a/CMSIS/Documentation/Core/html/tabs.css b/CMSIS/Documentation/Core/html/tabs.css new file mode 100644 index 0000000..ffbab50 --- /dev/null +++ b/CMSIS/Documentation/Core/html/tabs.css @@ -0,0 +1,71 @@ +.tabs, .tabs1, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 10px; +} + +.tabs1 { + background-image: url('tab_topnav.png'); + font-size: 12px; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; + line-height: 24px; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + list-style: none; +} + +.tabs1 .tablist li { + float: left; + display: table-cell; + background-image: url('tab_topnav.png'); + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/CMSIS/Documentation/Core/html/union_a_p_s_r___type.html b/CMSIS/Documentation/Core/html/union_a_p_s_r___type.html new file mode 100644 index 0000000..5450446 --- /dev/null +++ b/CMSIS/Documentation/Core/html/union_a_p_s_r___type.html @@ -0,0 +1,266 @@ + + + + + +APSR_Type Union Reference +CMSIS-CORE: APSR_Type Union Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    APSR_Type Union Reference
    +
    +
    + +

    Union type to access the Application Program Status Register (APSR). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    struct {
       uint32_t   _reserved0:27
     bit: 0..26 Reserved
     
       uint32_t   Q:1
     bit: 27 Saturation condition flag
     
       uint32_t   V:1
     bit: 28 Overflow condition code flag
     
       uint32_t   C:1
     bit: 29 Carry condition code flag
     
       uint32_t   Z:1
     bit: 30 Zero condition code flag
     
       uint32_t   N:1
     bit: 31 Negative condition code flag
     
    b
     Structure used for bit access.
     
    uint32_t w
     Type used for word access.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t APSR_Type::_reserved0
    +
    + +
    +
    + +
    +
    + + + + +
    struct { ... } APSR_Type::b
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t APSR_Type::C
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t APSR_Type::N
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t APSR_Type::Q
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t APSR_Type::V
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t APSR_Type::w
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t APSR_Type::Z
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/union_a_p_s_r___type.js b/CMSIS/Documentation/Core/html/union_a_p_s_r___type.js new file mode 100644 index 0000000..cbea61b --- /dev/null +++ b/CMSIS/Documentation/Core/html/union_a_p_s_r___type.js @@ -0,0 +1,11 @@ +var union_a_p_s_r___type = +[ + [ "_reserved0", "union_a_p_s_r___type.html#afbce95646fd514c10aa85ec0a33db728", null ], + [ "b", "union_a_p_s_r___type.html#a7dbc79a057ded4b11ca5323fc2d5ab14", null ], + [ "C", "union_a_p_s_r___type.html#a86e2c5b891ecef1ab55b1edac0da79a6", null ], + [ "N", "union_a_p_s_r___type.html#a7e7bbba9b00b0bb3283dc07f1abe37e0", null ], + [ "Q", "union_a_p_s_r___type.html#a22d10913489d24ab08bd83457daa88de", null ], + [ "V", "union_a_p_s_r___type.html#a8004d224aacb78ca37774c35f9156e7e", null ], + [ "w", "union_a_p_s_r___type.html#ae4c2ef8c9430d7b7bef5cbfbbaed3a94", null ], + [ "Z", "union_a_p_s_r___type.html#a3b04d58738b66a28ff13f23d8b0ba7e5", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.html b/CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.html new file mode 100644 index 0000000..f9b889b --- /dev/null +++ b/CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.html @@ -0,0 +1,236 @@ + + + + + +CONTROL_Type Union Reference +CMSIS-CORE: CONTROL_Type Union Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CONTROL_Type Union Reference
    +
    +
    + +

    Union type to access the Control Registers (CONTROL). +

    + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    struct {
       uint32_t   nPRIV:1
     bit: 0 Execution privilege in Thread mode
     
       uint32_t   SPSEL:1
     bit: 1 Stack to be used
     
       uint32_t   FPCA:1
     bit: 2 FP extension active flag
     
       uint32_t   _reserved0:29
     bit: 3..31 Reserved
     
    b
     Structure used for bit access.
     
    uint32_t w
     Type used for word access.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t CONTROL_Type::_reserved0
    +
    + +
    +
    + +
    +
    + + + + +
    struct { ... } CONTROL_Type::b
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t CONTROL_Type::FPCA
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t CONTROL_Type::nPRIV
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t CONTROL_Type::SPSEL
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t CONTROL_Type::w
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.js b/CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.js new file mode 100644 index 0000000..eb2c173 --- /dev/null +++ b/CMSIS/Documentation/Core/html/union_c_o_n_t_r_o_l___type.js @@ -0,0 +1,9 @@ +var union_c_o_n_t_r_o_l___type = +[ + [ "_reserved0", "union_c_o_n_t_r_o_l___type.html#af8c314273a1e4970a5671bd7f8184f50", null ], + [ "b", "union_c_o_n_t_r_o_l___type.html#adc6a38ab2980d0e9577b5a871da14eb9", null ], + [ "FPCA", "union_c_o_n_t_r_o_l___type.html#ac62cfff08e6f055e0101785bad7094cd", null ], + [ "nPRIV", "union_c_o_n_t_r_o_l___type.html#a35c1732cf153b7b5c4bd321cf1de9605", null ], + [ "SPSEL", "union_c_o_n_t_r_o_l___type.html#a8cc085fea1c50a8bd9adea63931ee8e2", null ], + [ "w", "union_c_o_n_t_r_o_l___type.html#a6b642cca3d96da660b1198c133ca2a1f", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/union_i_p_s_r___type.html b/CMSIS/Documentation/Core/html/union_i_p_s_r___type.html new file mode 100644 index 0000000..9685687 --- /dev/null +++ b/CMSIS/Documentation/Core/html/union_i_p_s_r___type.html @@ -0,0 +1,206 @@ + + + + + +IPSR_Type Union Reference +CMSIS-CORE: IPSR_Type Union Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    IPSR_Type Union Reference
    +
    +
    + +

    Union type to access the Interrupt Program Status Register (IPSR). +

    + + + + + + + + + + + + + + + +

    +Data Fields

    struct {
       uint32_t   ISR:9
     bit: 0.. 8 Exception number
     
       uint32_t   _reserved0:23
     bit: 9..31 Reserved
     
    b
     Structure used for bit access.
     
    uint32_t w
     Type used for word access.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t IPSR_Type::_reserved0
    +
    + +
    +
    + +
    +
    + + + + +
    struct { ... } IPSR_Type::b
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t IPSR_Type::ISR
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t IPSR_Type::w
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/union_i_p_s_r___type.js b/CMSIS/Documentation/Core/html/union_i_p_s_r___type.js new file mode 100644 index 0000000..ca9eac6 --- /dev/null +++ b/CMSIS/Documentation/Core/html/union_i_p_s_r___type.js @@ -0,0 +1,7 @@ +var union_i_p_s_r___type = +[ + [ "_reserved0", "union_i_p_s_r___type.html#ad2eb0a06de4f03f58874a727716aa9aa", null ], + [ "b", "union_i_p_s_r___type.html#add0d6497bd50c25569ea22b48a03ec50", null ], + [ "ISR", "union_i_p_s_r___type.html#ab46e5f1b2f4d17cfb9aca4fffcbb2fa5", null ], + [ "w", "union_i_p_s_r___type.html#a4adca999d3a0bc1ae682d73ea7cfa879", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Core/html/unionx_p_s_r___type.html b/CMSIS/Documentation/Core/html/unionx_p_s_r___type.html new file mode 100644 index 0000000..1cd3267 --- /dev/null +++ b/CMSIS/Documentation/Core/html/unionx_p_s_r___type.html @@ -0,0 +1,311 @@ + + + + + +xPSR_Type Union Reference +CMSIS-CORE: xPSR_Type Union Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-CORE +  Version 4.30 +
    +
    CMSIS-CORE support for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    xPSR_Type Union Reference
    +
    +
    + +

    Union type to access the Special-Purpose Program Status Registers (xPSR). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Fields

    struct {
       uint32_t   ISR:9
     bit: 0.. 8 Exception number
     
       uint32_t   _reserved0:15
     bit: 9..23 Reserved
     
       uint32_t   T:1
     bit: 24 Thumb bit (read 0)
     
       uint32_t   IT:2
     bit: 25..26 saved IT state (read 0)
     
       uint32_t   Q:1
     bit: 27 Saturation condition flag
     
       uint32_t   V:1
     bit: 28 Overflow condition code flag
     
       uint32_t   C:1
     bit: 29 Carry condition code flag
     
       uint32_t   Z:1
     bit: 30 Zero condition code flag
     
       uint32_t   N:1
     bit: 31 Negative condition code flag
     
    b
     Structure used for bit access.
     
    uint32_t w
     Type used for word access.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t xPSR_Type::_reserved0
    +
    + +
    +
    + +
    +
    + + + + +
    struct { ... } xPSR_Type::b
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::C
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::ISR
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::IT
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::N
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::Q
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::T
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::V
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::w
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t xPSR_Type::Z
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Core/html/unionx_p_s_r___type.js b/CMSIS/Documentation/Core/html/unionx_p_s_r___type.js new file mode 100644 index 0000000..b02f482 --- /dev/null +++ b/CMSIS/Documentation/Core/html/unionx_p_s_r___type.js @@ -0,0 +1,14 @@ +var unionx_p_s_r___type = +[ + [ "_reserved0", "unionx_p_s_r___type.html#af438e0f407357e914a70b5bd4d6a97c5", null ], + [ "b", "unionx_p_s_r___type.html#a3b1063bb5cdad67e037cba993b693b70", null ], + [ "C", "unionx_p_s_r___type.html#a40213a6b5620410cac83b0d89564609d", null ], + [ "ISR", "unionx_p_s_r___type.html#a3e9120dcf1a829fc8d2302b4d0673970", null ], + [ "IT", "unionx_p_s_r___type.html#a3200966922a194d84425e2807a7f1328", null ], + [ "N", "unionx_p_s_r___type.html#a2db9a52f6d42809627d1a7a607c5dbc5", null ], + [ "Q", "unionx_p_s_r___type.html#add7cbd2b0abd8954d62cd7831796ac7c", null ], + [ "T", "unionx_p_s_r___type.html#a7eed9fe24ae8d354cd76ae1c1110a658", null ], + [ "V", "unionx_p_s_r___type.html#af14df16ea0690070c45b95f2116b7a0a", null ], + [ "w", "unionx_p_s_r___type.html#a1a47176768f45f79076c4f5b1b534bc2", null ], + [ "Z", "unionx_p_s_r___type.html#a1e5d9801013d5146f2e02d9b7b3da562", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT.png b/CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT.png new file mode 100644 index 0000000..9dc949a Binary files /dev/null and b/CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT.png differ diff --git a/CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT_ISO.png b/CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT_ISO.png new file mode 100644 index 0000000..8080e1d Binary files /dev/null and b/CMSIS/Documentation/DAP/html/CMSIS_DAP_DEBUG_UNIT_ISO.png differ diff --git a/CMSIS/Documentation/DAP/html/CMSIS_DAP_INTERFACE.png b/CMSIS/Documentation/DAP/html/CMSIS_DAP_INTERFACE.png new file mode 100644 index 0000000..85fe972 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/CMSIS_DAP_INTERFACE.png differ diff --git a/CMSIS/Documentation/DAP/html/CMSIS_DAP_SWStack.png b/CMSIS/Documentation/DAP/html/CMSIS_DAP_SWStack.png new file mode 100644 index 0000000..201214c Binary files /dev/null and b/CMSIS/Documentation/DAP/html/CMSIS_DAP_SWStack.png differ diff --git a/CMSIS/Documentation/DAP/html/CMSIS_Logo_Final.png b/CMSIS/Documentation/DAP/html/CMSIS_Logo_Final.png new file mode 100644 index 0000000..2056b7e Binary files /dev/null and b/CMSIS/Documentation/DAP/html/CMSIS_Logo_Final.png differ diff --git a/CMSIS/Documentation/DAP/html/MDK_Device.png b/CMSIS/Documentation/DAP/html/MDK_Device.png new file mode 100644 index 0000000..202ea3c Binary files /dev/null and b/CMSIS/Documentation/DAP/html/MDK_Device.png differ diff --git a/CMSIS/Documentation/DAP/html/MDK_Flash.png b/CMSIS/Documentation/DAP/html/MDK_Flash.png new file mode 100644 index 0000000..cd0c1d5 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/MDK_Flash.png differ diff --git a/CMSIS/Documentation/DAP/html/MDK_USB.png b/CMSIS/Documentation/DAP/html/MDK_USB.png new file mode 100644 index 0000000..710b681 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/MDK_USB.png differ diff --git a/CMSIS/Documentation/DAP/html/MDK_Validation.png b/CMSIS/Documentation/DAP/html/MDK_Validation.png new file mode 100644 index 0000000..01244d7 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/MDK_Validation.png differ diff --git a/CMSIS/Documentation/DAP/html/RTE.png b/CMSIS/Documentation/DAP/html/RTE.png new file mode 100644 index 0000000..9949b64 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/RTE.png differ diff --git a/CMSIS/Documentation/DAP/html/bc_s.png b/CMSIS/Documentation/DAP/html/bc_s.png new file mode 100644 index 0000000..66f8e9a Binary files /dev/null and b/CMSIS/Documentation/DAP/html/bc_s.png differ diff --git a/CMSIS/Documentation/DAP/html/bdwn.png b/CMSIS/Documentation/DAP/html/bdwn.png new file mode 100644 index 0000000..d400769 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/bdwn.png differ diff --git a/CMSIS/Documentation/DAP/html/closed.png b/CMSIS/Documentation/DAP/html/closed.png new file mode 100644 index 0000000..ccbcf62 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/closed.png differ diff --git a/CMSIS/Documentation/DAP/html/cmsis.css b/CMSIS/Documentation/DAP/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/DAP/html/doxygen.png b/CMSIS/Documentation/DAP/html/doxygen.png new file mode 100644 index 0000000..7765a33 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/doxygen.png differ diff --git a/CMSIS/Documentation/DAP/html/dynsections.js b/CMSIS/Documentation/DAP/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/DAP/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +CMSIS-DAP Commands +CMSIS-DAP: CMSIS-DAP Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CMSIS-DAP Commands
    +
    +
    + +

    Commands between Debug Unit and host computer. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Content

     General Commands
     Information and Control commands for the CMSIS-DAP Debug Unit.
     
     Common SWD/JTAG Commands
     Set SWD/JTAG clock and control/monitor SWD/JTAG I/O pins.
     
     SWD Commands
     Configure the parameters for SWD mode.
     
     SWO Commands
     Configure the parameters for SWO mode.
     
     JTAG Commands
     Detect and configure the JTAG device chain.
     
     Transfer Commands
     Read and Writes to CoreSight registers.
     
     Atomic Commands
     Execute atomic commands.
     
     Response Status
     Status Information in Response Data.
     
    +

    Description

    +

    Commands between Debug Unit and host computer.

    +

    This section explains each command that is exchanged between the Debug Unit and the host computer. Every Command starts with a Command-ID and optional data. Depending on the Command, the CMSIS-DAP firmware replies with a Response that repeats the Command-ID and delivers additional data.

    +

    Command and Response data have a package size limitation that is defined with DAP_PACKET_SIZE. This configuration setting can be obtained with the command DAP_Info and is used to optimize the performance for Full-Speed or High-Speed USB. The debugger must ensure that each data package fits within the limitations of the configured DAP_PACKET_SIZE.

    +

    Conventions and Command Structure

    +

    The following conventions describe the command semantic used in the following documentation:

    + + + + + + + + + + + + + + + + + + + + + + + +
    Symbol Description
    > Prefix indicating the direction: Command from host to Debug Unit.
    < Prefix indicating the direction: Response from Debug Unit to host.
    BYTE 8-bit value.
    SHORT 16-bit value.
    WORD 32-bit value.
    0x01 Fixed HEX value in C notation. Used for example to identify a command.
    Reserved The field above is reserved for future extension.
    **** The field above has exactly one occurrence.
    ++++ The field above has a variable length.
    ////// The field above is repeated and may appear 0..n times.
    +

    The commands are described in a structure consisting of three lines.

    +
      +
    • The first line indicates the field type.
    • +
    • The second line indicates the communication direction and the command structure.
    • +
    • The third line indicates the occurrence of the field.
    • +
    +

    Examples:

    +
    BYTE | SHORT *| WORD ***|
    +
    > 0x99 | RecLen | Data |
    +
    ******|********|+++++++++|
    +

    The Command with the Command-ID 0x99 is sent from the host computer to the Debug Unit. The value of RecLen indicates the number of WORDS that follow with Data. Data is repeated several times depending on the value of RecLen.

    +

    Depending on the Command the Debug Unit may send a Response.

    +
    BYTE ***| WORD***********|
    +
    < 0 | Register Value |
    +
    *Reserved|****************|
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___commands__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p___commands__gr.js new file mode 100644 index 0000000..a9ea680 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___commands__gr.js @@ -0,0 +1,11 @@ +var group___d_a_p___commands__gr = +[ + [ "General Commands", "group___d_a_p__gen_commands__gr.html", "group___d_a_p__gen_commands__gr" ], + [ "Common SWD/JTAG Commands", "group___d_a_p__swj__gr.html", "group___d_a_p__swj__gr" ], + [ "SWD Commands", "group___d_a_p__swd__gr.html", "group___d_a_p__swd__gr" ], + [ "SWO Commands", "group___d_a_p__swo__gr.html", "group___d_a_p__swo__gr" ], + [ "JTAG Commands", "group___d_a_p__jtag__gr.html", "group___d_a_p__jtag__gr" ], + [ "Transfer Commands", "group___d_a_p__transfer__gr.html", "group___d_a_p__transfer__gr" ], + [ "Atomic Commands", "group___d_a_p__atomic__gr.html", "group___d_a_p__atomic__gr" ], + [ "Response Status", "group___d_a_p___response___status.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.html new file mode 100644 index 0000000..8618524 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.html @@ -0,0 +1,399 @@ + + + + + +CMSIS-DAP Debug Unit Information +CMSIS-DAP: CMSIS-DAP Debug Unit Information + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CMSIS-DAP Debug Unit Information
    +
    +
    + +

    Provides definitions about the hardware and configuration of the Debug Unit. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define CPU_CLOCK   100000000U
     Processor Clock of the Cortex-M MCU used in the Debug Unit. This value is used to calculate the SWD/JTAG clock speed.
     
    #define IO_PORT_WRITE_CYCLES   2U
     Number of processor cycles for I/O Port write operations. This value is used to calculate the SWD/JTAG clock speed that is generated with I/O Port write operations in the Debug Unit by a Cortex-M MCU. Most Cortex-M processors require 2 processor cycles for a I/O Port Write operation. If the Debug Unit uses a Cortex-M0+ processor with high-speed peripheral I/O only 1 processor cycle might be required.
     
    #define DAP_SWD   1
     Indicate that Serial Wire Debug (SWD) communication mode is available at the Debug Access Port. This information is returned by the command DAP_Info as part of Capabilities.
     
    #define DAP_JTAG   1
     Indicate that JTAG communication mode is available at the Debug Port. This information is returned by the command DAP_Info as part of Capabilities.
     
    #define DAP_JTAG_DEV_CNT   8U
     Configure maximum number of JTAG devices on the scan chain connected to the Debug Access Port. This setting impacts the RAM requirements of the Debug Unit. Valid range is 1 .. 255.
     
    #define DAP_DEFAULT_PORT   1U
     Default communication mode on the Debug Access Port. Used for the command DAP_Connect when Port Default mode is selected.
     
    #define DAP_DEFAULT_SWJ_CLOCK   1000000U
     Default communication speed on the Debug Access Port for SWD and JTAG mode. Used to initialize the default SWD/JTAG clock frequency. The command DAP_SWJ_Clock can be used to overwrite this default setting.
     
    #define DAP_PACKET_SIZE   64U
     Maximum Package Size for Command and Response data. This configuration settings is used to optimized the communication performance with the debugger and depends on the USB peripheral. Change setting to 1024 for High-Speed USB.
     
    #define DAP_PACKET_COUNT   64U
     Maximum Package Buffers for Command and Response data. This configuration settings is used to optimized the communication performance with the debugger and depends on the USB peripheral. For devices with limited RAM or USB buffer the setting can be reduced (valid range is 1 .. 255). Change setting to 4 for High-Speed USB.
     
    #define SWO_UART   1
     Indicate that UART Serial Wire Output (SWO) trace is available. This information is returned by the command DAP_Info as part of Capabilities.
     
    #define SWO_UART_MAX_BAUDRATE   10000000U
     Maximum SWO UART Baudrate.
     
    #define SWO_MANCHESTER   0
     Indicate that Manchester Serial Wire Output (SWO) trace is available. This information is returned by the command DAP_Info as part of Capabilities.
     
    #define SWO_BUFFER_SIZE   4096U
     SWO Trace Buffer Size.
     
    #define TARGET_DEVICE_FIXED   0
     Debug Unit is connected to fixed Target Device. The Debug Unit may be part of an evaluation board and always connected to a fixed known device. In this case a Device Vendor and Device Name string is stored which may be used by the debugger or IDE to configure device parameters.
     
    +

    Description

    +

    Provides definitions about the hardware and configuration of the Debug Unit.

    +

    This information includes:

    +
      +
    • Definition of Cortex-M processor parameters used in CMSIS-DAP Debug Unit.
    • +
    • Debug Unit communication packet size.
    • +
    • Debug Access Port communication mode (JTAG or SWD).
    • +
    • Optional information about a connected Target Device (for Evaluation Boards).
    • +
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define CPU_CLOCK   100000000U
    +
    + +

    Processor Clock of the Cortex-M MCU used in the Debug Unit. This value is used to calculate the SWD/JTAG clock speed.

    +

    Specifies the CPU Clock in Hz

    + +
    +
    + +
    +
    + + + + +
    #define DAP_DEFAULT_PORT   1U
    +
    + +

    Default communication mode on the Debug Access Port. Used for the command DAP_Connect when Port Default mode is selected.

    +

    Default JTAG/SWJ Port Mode: 1 = SWD, 2 = JTAG.

    + +
    +
    + +
    +
    + + + + +
    #define DAP_DEFAULT_SWJ_CLOCK   1000000U
    +
    + +

    Default communication speed on the Debug Access Port for SWD and JTAG mode. Used to initialize the default SWD/JTAG clock frequency. The command DAP_SWJ_Clock can be used to overwrite this default setting.

    +

    Default SWD/JTAG clock frequency in Hz.

    + +
    +
    + +
    +
    + + + + +
    #define DAP_JTAG   1
    +
    + +

    Indicate that JTAG communication mode is available at the Debug Port. This information is returned by the command DAP_Info as part of Capabilities.

    +

    JTAG Mode: 1 = available, 0 = not available.

    + +
    +
    + +
    +
    + + + + +
    #define DAP_JTAG_DEV_CNT   8U
    +
    + +

    Configure maximum number of JTAG devices on the scan chain connected to the Debug Access Port. This setting impacts the RAM requirements of the Debug Unit. Valid range is 1 .. 255.

    +

    Maximum number of JTAG devices on scan chain

    + +
    +
    + +
    +
    + + + + +
    #define DAP_PACKET_COUNT   64U
    +
    + +

    Maximum Package Buffers for Command and Response data. This configuration settings is used to optimized the communication performance with the debugger and depends on the USB peripheral. For devices with limited RAM or USB buffer the setting can be reduced (valid range is 1 .. 255). Change setting to 4 for High-Speed USB.

    +

    Buffers: 64 = Full-Speed, 4 = High-Speed.

    + +
    +
    + +
    +
    + + + + +
    #define DAP_PACKET_SIZE   64U
    +
    + +

    Maximum Package Size for Command and Response data. This configuration settings is used to optimized the communication performance with the debugger and depends on the USB peripheral. Change setting to 1024 for High-Speed USB.

    +

    USB: 64 = Full-Speed, 1024 = High-Speed.

    + +
    +
    + +
    +
    + + + + +
    #define DAP_SWD   1
    +
    + +

    Indicate that Serial Wire Debug (SWD) communication mode is available at the Debug Access Port. This information is returned by the command DAP_Info as part of Capabilities.

    +

    SWD Mode: 1 = available, 0 = not available

    + +
    +
    + +
    +
    + + + + +
    #define IO_PORT_WRITE_CYCLES   2U
    +
    + +

    Number of processor cycles for I/O Port write operations. This value is used to calculate the SWD/JTAG clock speed that is generated with I/O Port write operations in the Debug Unit by a Cortex-M MCU. Most Cortex-M processors require 2 processor cycles for a I/O Port Write operation. If the Debug Unit uses a Cortex-M0+ processor with high-speed peripheral I/O only 1 processor cycle might be required.

    +

    I/O Cycles: 2=default, 1=Cortex-M0+ fast I/0

    + +
    +
    + +
    +
    + + + + +
    #define SWO_BUFFER_SIZE   4096U
    +
    + +

    SWO Trace Buffer Size.

    +

    SWO Trace Buffer Size in bytes (must be 2^n)

    + +
    +
    + +
    +
    + + + + +
    #define SWO_MANCHESTER   0
    +
    + +

    Indicate that Manchester Serial Wire Output (SWO) trace is available. This information is returned by the command DAP_Info as part of Capabilities.

    +

    SWO Manchester: 1 = available, 0 = not available

    + +
    +
    + +
    +
    + + + + +
    #define SWO_UART   1
    +
    + +

    Indicate that UART Serial Wire Output (SWO) trace is available. This information is returned by the command DAP_Info as part of Capabilities.

    +

    SWO UART: 1 = available, 0 = not available

    + +
    +
    + +
    +
    + + + + +
    #define SWO_UART_MAX_BAUDRATE   10000000U
    +
    + +

    Maximum SWO UART Baudrate.

    +

    SWO UART Maximum Baudrate in Hz

    + +
    +
    + +
    +
    + + + + +
    #define TARGET_DEVICE_FIXED   0
    +
    + +

    Debug Unit is connected to fixed Target Device. The Debug Unit may be part of an evaluation board and always connected to a fixed known device. In this case a Device Vendor and Device Name string is stored which may be used by the debugger or IDE to configure device parameters.

    +

    Target Device: 1 = known, 0 = unknown;

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.js new file mode 100644 index 0000000..d3e8057 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___debug__gr.js @@ -0,0 +1,17 @@ +var group___d_a_p___config___debug__gr = +[ + [ "CPU_CLOCK", "group___d_a_p___config___debug__gr.html#ga512016e5f1966a8fd45b3f1a81ba5b8f", null ], + [ "DAP_DEFAULT_PORT", "group___d_a_p___config___debug__gr.html#ga89462514881c12c1508395050ce160eb", null ], + [ "DAP_DEFAULT_SWJ_CLOCK", "group___d_a_p___config___debug__gr.html#gab52710df89c3e3c19de577c638f954ea", null ], + [ "DAP_JTAG", "group___d_a_p___config___debug__gr.html#ga3bbd310146b348db48a842ee804a0adf", null ], + [ "DAP_JTAG_DEV_CNT", "group___d_a_p___config___debug__gr.html#gab29200a0988c7d1454f63661a8450dbf", null ], + [ "DAP_PACKET_COUNT", "group___d_a_p___config___debug__gr.html#ga03ed6a5aae34f4379ea97435122f83dd", null ], + [ "DAP_PACKET_SIZE", "group___d_a_p___config___debug__gr.html#gaa28bb1da2661291634c4a8fb3e227404", null ], + [ "DAP_SWD", "group___d_a_p___config___debug__gr.html#gaf886ab35e52d1ff2935351817786c8af", null ], + [ "IO_PORT_WRITE_CYCLES", "group___d_a_p___config___debug__gr.html#ga119c70409a24e3a8bb35df07dffeb8c8", null ], + [ "SWO_BUFFER_SIZE", "group___d_a_p___config___debug__gr.html#ga5d89633a43ee3296e1754c7392ad856e", null ], + [ "SWO_MANCHESTER", "group___d_a_p___config___debug__gr.html#ga213ee3d1501adeca4c9c660072922c7e", null ], + [ "SWO_UART", "group___d_a_p___config___debug__gr.html#gaf0d60b30fb0eef2d249bc89a6e454ab6", null ], + [ "SWO_UART_MAX_BAUDRATE", "group___d_a_p___config___debug__gr.html#gad19240f209f055db7d70cb5eb2431d31", null ], + [ "TARGET_DEVICE_FIXED", "group___d_a_p___config___debug__gr.html#ga792651aa4035a7ad712c6bb201db8a6a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.html new file mode 100644 index 0000000..96fb24e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.html @@ -0,0 +1,208 @@ + + + + + +CMSIS-DAP Initialization +CMSIS-DAP: CMSIS-DAP Initialization + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CMSIS-DAP Initialization
    +
    +
    + +

    CMSIS-DAP Hardware I/O and LED Pins are initialized with the function DAP_SETUP. +More...

    + + + + + + + + +

    +Functions

    static __inline void DAP_SETUP (void)
     Setup of the Debug Unit I/O pins and LEDs (called when Debug Unit is initialized).
     
    static __inline uint8_t RESET_TARGET (void)
     Reset Target Device with custom specific I/O pin or command sequence.
     
    +

    Description

    +

    CMSIS-DAP Hardware I/O and LED Pins are initialized with the function DAP_SETUP.

    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + +
    static __inline void DAP_SETUP (void )
    +
    +static
    +
    + +

    Setup of the Debug Unit I/O pins and LEDs (called when Debug Unit is initialized).

    +

    This function performs the initialization of the CMSIS-DAP Hardware I/O Pins and the Status LEDs. In detail the operation of Hardware I/O and LED pins are enabled and set:

    +
      +
    • I/O clock system enabled.
    • +
    • all I/O pins: input buffer enabled, output pins are set to HighZ mode.
    • +
    • for nTRST, nRESET a weak pull-up (if available) is enabled.
    • +
    • LED output pins are enabled and LEDs are turned off.
    • +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __inline uint8_t RESET_TARGET (void )
    +
    +static
    +
    + +

    Reset Target Device with custom specific I/O pin or command sequence.

    +

    This function allows the optional implementation of a device specific reset sequence. It is called when the command DAP_ResetTarget and is for example required when a device needs a time-critical unlock sequence that enables the debug port.

    +
    Returns
    0 = no device specific reset sequence is implemented.
    + 1 = a device specific reset sequence is implemented.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.js new file mode 100644 index 0000000..0d008a4 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___initialization__gr.js @@ -0,0 +1,5 @@ +var group___d_a_p___config___initialization__gr = +[ + [ "DAP_SETUP", "group___d_a_p___config___initialization__gr.html#ga18407e5070a3aad09ba3773acffb05cf", null ], + [ "RESET_TARGET", "group___d_a_p___config___initialization__gr.html#gac9d308f719319dd892cc8be7459c83f0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.html new file mode 100644 index 0000000..5222c8c --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.html @@ -0,0 +1,223 @@ + + + + + +CMSIS-DAP Hardware Status LEDs +CMSIS-DAP: CMSIS-DAP Hardware Status LEDs + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CMSIS-DAP Hardware Status LEDs
    +
    +
    + +

    CMSIS-DAP Hardware may provide LEDs that indicate the status of the CMSIS-DAP Debug Unit. +More...

    + + + + + + + + +

    +Functions

    static __inline void LED_CONNECTED_OUT (uint32_t bit)
     Debug Unit: Set status of Connected LED.
     
    static __inline void LED_RUNNING_OUT (uint32_t bit)
     Debug Unit: Set status Target Running LED.
     
    +

    Description

    +

    CMSIS-DAP Hardware may provide LEDs that indicate the status of the CMSIS-DAP Debug Unit.

    +

    It is recommended to provide the following LEDs for status indication:

    +
      +
    • Connect LED: is active when the DAP hardware is connected to a debugger.
    • +
    • Running LED: is active when the debugger has put the target device into running state.
    • +
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + +
    static __inline void LED_CONNECTED_OUT (uint32_t bit)
    +
    +static
    +
    + +

    Debug Unit: Set status of Connected LED.

    +
    Parameters
    + + +
    bitstatus of the Connect LED.
      +
    • 1: Connect LED ON: debugger is connected to CMSIS-DAP Debug Unit.
    • +
    • 0: Connect LED OFF: debugger is not connected to CMSIS-DAP Debug Unit.
    • +
    +
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __inline void LED_RUNNING_OUT (uint32_t bit)
    +
    +static
    +
    + +

    Debug Unit: Set status Target Running LED.

    +
    Parameters
    + + +
    bitstatus of the Target Running LED.
      +
    • 1: Target Running LED ON: program execution in target started.
    • +
    • 0: Target Running LED OFF: program execution in target stopped.
    • +
    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.js new file mode 100644 index 0000000..841723a --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___l_e_ds__gr.js @@ -0,0 +1,5 @@ +var group___d_a_p___config___l_e_ds__gr = +[ + [ "LED_CONNECTED_OUT", "group___d_a_p___config___l_e_ds__gr.html#ga519ba0a5ae485365e01fc2a9df77ce90", null ], + [ "LED_RUNNING_OUT", "group___d_a_p___config___l_e_ds__gr.html#ga6231ce4a4d4b83fe5a3b290997b8d550", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.html new file mode 100644 index 0000000..7b9b50b --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.html @@ -0,0 +1,805 @@ + + + + + +CMSIS-DAP Hardware I/O Pin Access +CMSIS-DAP: CMSIS-DAP Hardware I/O Pin Access + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CMSIS-DAP Hardware I/O Pin Access
    +
    +
    + +

    Standard I/O Pins of the CMSIS-DAP Hardware Debug Port support standard JTAG mode and Serial Wire Debug (SWD) mode. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    static __inline void PORT_JTAG_SETUP (void)
     Setup JTAG I/O pins: TCK, TMS, TDI, TDO, nTRST, and nRESET.
     
    static __inline void PORT_SWD_SETUP (void)
     Setup SWD I/O pins: SWCLK, SWDIO, and nRESET.
     
    static __inline void PORT_OFF (void)
     Disable JTAG/SWD I/O Pins.
     
    static __forceinline uint32_t PIN_SWCLK_TCK_IN (void)
     SWCLK/TCK I/O pin: Get Input.
     
    static __forceinline void PIN_SWCLK_TCK_SET (void)
     SWCLK/TCK I/O pin: Set Output to High.
     
    static __forceinline void PIN_SWCLK_TCK_CLR (void)
     SWCLK/TCK I/O pin: Set Output to Low.
     
    static __forceinline uint32_t PIN_SWDIO_TMS_IN (void)
     SWDIO/TMS I/O pin: Get Input.
     
    static __forceinline void PIN_SWDIO_TMS_SET (void)
     SWDIO/TMS I/O pin: Set Output to High.
     
    static __forceinline void PIN_SWDIO_TMS_CLR (void)
     SWDIO/TMS I/O pin: Set Output to Low.
     
    static __forceinline uint32_t PIN_SWDIO_IN (void)
     SWDIO I/O pin: Get Input (used in SWD mode only).
     
    static __forceinline void PIN_SWDIO_OUT (uint32_t bit)
     SWDIO I/O pin: Set Output (used in SWD mode only).
     
    static __forceinline void PIN_SWDIO_OUT_ENABLE (void)
     SWDIO I/O pin: Switch to Output mode (used in SWD mode only).
     
    static __forceinline void PIN_SWDIO_OUT_DISABLE (void)
     SWDIO I/O pin: Switch to Input mode (used in SWD mode only).
     
    static __forceinline uint32_t PIN_TDI_IN (void)
     TDI I/O pin: Get Input.
     
    static __forceinline void PIN_TDI_OUT (uint32_t bit)
     TDI I/O pin: Set Output.
     
    static __forceinline uint32_t PIN_TDO_IN (void)
     TDO I/O pin: Get Input.
     
    static __forceinline uint32_t PIN_nTRST_IN (void)
     nTRST I/O pin: Get Input.
     
    static __forceinline void PIN_nTRST_OUT (uint32_t bit)
     nTRST I/O pin: Set Output.
     
    static __forceinline uint32_t PIN_nRESET_IN (void)
     nRESET I/O pin: Get Input.
     
    static __forceinline void PIN_nRESET_OUT (uint32_t bit)
     nRESET I/O pin: Set Output.
     
    +

    Description

    +

    Standard I/O Pins of the CMSIS-DAP Hardware Debug Port support standard JTAG mode and Serial Wire Debug (SWD) mode.

    +

    In SWD mode only 2 pins are required to implement the debug interface of a device. The following I/O Pins are provided:

    + + + + + + + + + + + + + + + +
    JTAG I/O Pin SWD I/O Pin CMSIS-DAP Hardware pin mode
    TCK: Test Clock SWCLK: Clock Output Push/Pull
    TMS: Test Mode Select SWDIO: Data I/O Output Push/Pull; Input (for receiving data)
    TDI: Test Data Input Output Push/Pull
    TDO: Test Data Output Input
    nTRST: Test Reset (optional) Output Open Drain with pull-up resistor
    nRESET: Device Reset nRESET: Device Reset Output Open Drain with pull-up resistor
    +

    DAP Hardware I/O Pin Access Functions

    +

    The various I/O Pins are accessed by functions that implement the Read, Write, Set, or Clear to these I/O Pins.

    +

    For the SWDIO I/O Pin there are additional functions that are called in SWD I/O mode only. This functions are provided to achieve faster I/O that is possible with some advanced GPIO peripherals that can independently write/read a single I/O pin without affecting any other pins of the same I/O port. The following SWDIO I/O Pin functions are provided:

    + +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline uint32_t PIN_nRESET_IN (void )
    +
    +static
    +
    + +

    nRESET I/O pin: Get Input.

    +
    Returns
    Current status of the nRESET DAP hardware I/O pin.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_nRESET_OUT (uint32_t bit)
    +
    +static
    +
    + +

    nRESET I/O pin: Set Output.

    +
    Parameters
    + + +
    bittarget device hardware reset pin status:
      +
    • 0: issue a device hardware reset.
    • +
    • 1: release device hardware reset.
    • +
    +
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline uint32_t PIN_nTRST_IN (void )
    +
    +static
    +
    + +

    nTRST I/O pin: Get Input.

    +
    Returns
    Current status of the nTRST DAP hardware I/O pin.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_nTRST_OUT (uint32_t bit)
    +
    +static
    +
    + +

    nTRST I/O pin: Set Output.

    +
    Parameters
    + + +
    bitJTAG TRST Test Reset pin status:
      +
    • 0: issue a JTAG TRST Test Reset.
    • +
    • 1: release JTAG TRST Test Reset.
    • +
    +
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_SWCLK_TCK_CLR (void )
    +
    +static
    +
    + +

    SWCLK/TCK I/O pin: Set Output to Low.

    +

    Set the SWCLK/TCK DAP hardware I/O pin to low level.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline uint32_t PIN_SWCLK_TCK_IN (void )
    +
    +static
    +
    + +

    SWCLK/TCK I/O pin: Get Input.

    +
    Returns
    Current status of the SWCLK/TCK DAP hardware I/O pin.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_SWCLK_TCK_SET (void )
    +
    +static
    +
    + +

    SWCLK/TCK I/O pin: Set Output to High.

    +

    Set the SWCLK/TCK DAP hardware I/O pin to high level.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline uint32_t PIN_SWDIO_IN (void )
    +
    +static
    +
    + +

    SWDIO I/O pin: Get Input (used in SWD mode only).

    +
    Returns
    Current status of the SWDIO DAP hardware I/O pin.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_SWDIO_OUT (uint32_t bit)
    +
    +static
    +
    + +

    SWDIO I/O pin: Set Output (used in SWD mode only).

    +
    Parameters
    + + +
    bitOutput value for the SWDIO DAP hardware I/O pin.
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_SWDIO_OUT_DISABLE (void )
    +
    +static
    +
    + +

    SWDIO I/O pin: Switch to Input mode (used in SWD mode only).

    +

    Configure the SWDIO DAP hardware I/O pin to input mode. This function is called prior PIN_SWDIO_IN function calls.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_SWDIO_OUT_ENABLE (void )
    +
    +static
    +
    + +

    SWDIO I/O pin: Switch to Output mode (used in SWD mode only).

    +

    Configure the SWDIO DAP hardware I/O pin to output mode. This function is called prior PIN_SWDIO_OUT function calls.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_SWDIO_TMS_CLR (void )
    +
    +static
    +
    + +

    SWDIO/TMS I/O pin: Set Output to Low.

    +

    Set the SWDIO/TMS DAP hardware I/O pin to low level.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline uint32_t PIN_SWDIO_TMS_IN (void )
    +
    +static
    +
    + +

    SWDIO/TMS I/O pin: Get Input.

    +
    Returns
    Current status of the SWDIO/TMS DAP hardware I/O pin.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_SWDIO_TMS_SET (void )
    +
    +static
    +
    + +

    SWDIO/TMS I/O pin: Set Output to High.

    +

    Set the SWDIO/TMS DAP hardware I/O pin to high level.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline uint32_t PIN_TDI_IN (void )
    +
    +static
    +
    + +

    TDI I/O pin: Get Input.

    +
    Returns
    Current status of the TDI DAP hardware I/O pin.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline void PIN_TDI_OUT (uint32_t bit)
    +
    +static
    +
    + +

    TDI I/O pin: Set Output.

    +
    Parameters
    + + +
    bitOutput value for the TDI DAP hardware I/O pin.
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __forceinline uint32_t PIN_TDO_IN (void )
    +
    +static
    +
    + +

    TDO I/O pin: Get Input.

    +
    Returns
    Current status of the TDO DAP hardware I/O pin.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __inline void PORT_JTAG_SETUP (void )
    +
    +static
    +
    + +

    Setup JTAG I/O pins: TCK, TMS, TDI, TDO, nTRST, and nRESET.

    +

    Configures the DAP Hardware I/O pins for JTAG mode:

    +
      +
    • TCK, TMS, TDI, nTRST, nRESET to output mode and set to high level.
    • +
    • TDO to input mode.
    • +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __inline void PORT_OFF (void )
    +
    +static
    +
    + +

    Disable JTAG/SWD I/O Pins.

    +

    Disables the DAP Hardware I/O pins which configures:

    +
      +
    • TCK/SWCLK, TMS/SWDIO, TDI, TDO, nTRST, nRESET to High-Z mode.
    • +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __inline void PORT_SWD_SETUP (void )
    +
    +static
    +
    + +

    Setup SWD I/O pins: SWCLK, SWDIO, and nRESET.

    +

    Configures the DAP Hardware I/O pins for Serial Wire Debug (SWD) mode:

    +
      +
    • SWCLK, SWDIO, nRESET to output mode and set to default high level.
    • +
    • TDI, nTRST to HighZ mode (pins are unused in SWD mode).
    • +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.js new file mode 100644 index 0000000..58d9a5d --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config___port_i_o__gr.js @@ -0,0 +1,23 @@ +var group___d_a_p___config___port_i_o__gr = +[ + [ "PIN_nRESET_IN", "group___d_a_p___config___port_i_o__gr.html#gad0de1a17d02af9a9959e4031d58b1eca", null ], + [ "PIN_nRESET_OUT", "group___d_a_p___config___port_i_o__gr.html#ga6764592e610237a3e325ebaecba83760", null ], + [ "PIN_nTRST_IN", "group___d_a_p___config___port_i_o__gr.html#gaa3849d1a7cc9945c05578bc4616f3e63", null ], + [ "PIN_nTRST_OUT", "group___d_a_p___config___port_i_o__gr.html#ga4eebf6aa9628de5176632db0458cd234", null ], + [ "PIN_SWCLK_TCK_CLR", "group___d_a_p___config___port_i_o__gr.html#gac95e157f51e8073cf740761bf59f09f3", null ], + [ "PIN_SWCLK_TCK_IN", "group___d_a_p___config___port_i_o__gr.html#gaac4a182db3a1f3a3de04280dccb8d9d3", null ], + [ "PIN_SWCLK_TCK_SET", "group___d_a_p___config___port_i_o__gr.html#ga197ad2824c91a8ea9ad0132951125217", null ], + [ "PIN_SWDIO_IN", "group___d_a_p___config___port_i_o__gr.html#ga545a6a01ae522683c32e830683511c17", null ], + [ "PIN_SWDIO_OUT", "group___d_a_p___config___port_i_o__gr.html#ga5e163176ee6bc9925f8f702d27d08f96", null ], + [ "PIN_SWDIO_OUT_DISABLE", "group___d_a_p___config___port_i_o__gr.html#ga1fb4b84b48b39bcc28790cb45abb0c59", null ], + [ "PIN_SWDIO_OUT_ENABLE", "group___d_a_p___config___port_i_o__gr.html#ga3fd30f1eb2feb4bb52d3c7e8c373d4d9", null ], + [ "PIN_SWDIO_TMS_CLR", "group___d_a_p___config___port_i_o__gr.html#gab29c2d8f97388bb6ba336bab41b0ca53", null ], + [ "PIN_SWDIO_TMS_IN", "group___d_a_p___config___port_i_o__gr.html#gaef0a34cb4eb3882c7ae05b9e1b0b7574", null ], + [ "PIN_SWDIO_TMS_SET", "group___d_a_p___config___port_i_o__gr.html#gaad5e63cde6ce0b523d66ab4e05f974e7", null ], + [ "PIN_TDI_IN", "group___d_a_p___config___port_i_o__gr.html#gaffb848049cb9da42e55731aa40c35429", null ], + [ "PIN_TDI_OUT", "group___d_a_p___config___port_i_o__gr.html#ga57bf14c857b0c2d0227f2fd2a588c03b", null ], + [ "PIN_TDO_IN", "group___d_a_p___config___port_i_o__gr.html#ga8f34a3b7d1c1ecdf7dbc0c527e16c0e5", null ], + [ "PORT_JTAG_SETUP", "group___d_a_p___config___port_i_o__gr.html#ga33c16f83b54b07e2a62bb3423341537e", null ], + [ "PORT_OFF", "group___d_a_p___config___port_i_o__gr.html#ga6522dd62895ffbb299294ec0b7c1b316", null ], + [ "PORT_SWD_SETUP", "group___d_a_p___config___port_i_o__gr.html#gab8876acfd193c31fbe5246ca6ba9249e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.html new file mode 100644 index 0000000..75e62eb --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.html @@ -0,0 +1,194 @@ + + + + + +Firmware Configuration +CMSIS-DAP: Firmware Configuration + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Firmware Configuration
    +
    +
    + +

    CMSIS-DAP is designed for Debug Units with Cortex-M microcontroller. +More...

    + + + + + + + + + + + + + + +

    +Content

     Debug Unit Processor
     CMSIS-DAP Firmware runs on Debug Units with a Cortex-M Microcontroller.
     
     Configure I/O Ports and Debug Unit
     DAP_config.h configures I/O ports and Debug Unit hardware parameters.
     
     Configure USB Peripheral
     CMSIS-DAP Firmware uses USB HID as interface to host computer.
     
     Flash Program Firmware
     The CMSIS-DAP Firmware is programmed into Flash ROM of a Debug Unit.
     
    +

    Description

    +

    CMSIS-DAP is designed for Debug Units with Cortex-M microcontroller.

    +

    The CMSIS-DAP firmware can be deployed to a Debug Unit that is based on Cortex-M processor-based microcontroller.

    +
    +CMSIS_DAP_DEBUG_UNIT.png +
    +CMSIS-DAP Debug Unit Hardware
    +

    The picture below shows the setup with an isolation adapter.

    +
    +CMSIS_DAP_DEBUG_UNIT_ISO.png +
    +CMSIS-DAP Debug Unit with Isolation adapter
    +

    Hardware Requirements

    +

    The CMSIS-DAP Firmware is designed for Debug Units that fulfill the following hardware requirements:

    +
      +
    • Cortex-M0, Cortex-M0+, Cortex-M3, or Cortex-M4 processor-based microcontroller.
    • +
    • CPU Clock: 48MHz or higher; Microcontroller must have a SYSTICK timer.
    • +
    • RAM: 8KB or more; Flash ROM: 16KB or more.
    • +
    • Full-speed or High-speed USB Device Peripheral.
    • +
    • 7 standard I/O pins for JTAG/SWD Device Interface.
    • +
    • optional 2 I/O pins for Status LEDs.
    • +
    • optional UART to support SWO capturing (Rx pin connected to SWO)
    • +
    +

    CMSIS-DAP Firmware

    +

    The CMSIS-DAP Firmware can be configured for a new Debug Unit using the Keil MDK Professional Edition. Reference implementations are provided as source code with complete project files and may be used as starting point for the firmware deployment to a new Debug Unit.

    +

    The folder .\Firmware\Config contains a template of the DAP_config.h configuration file. Various adaptations for different target hardware are provided.

    + + + + + + + +
    Folders and Files Description
    .\Firmware\Example\LPC-Link-II CMSIS-DAP Firmware adapted to the NXP LPC-Link-II Debug Unit that is part of the LPCxpresso-II platform.
    .\Firmware\Example\XMC4200 CMSIS-DAP Firmware adapted to the Infineon XMC4200-based Debug Unit.
    +

    The CMSIS-DAP Firmware is designed to execute on a Debug Unit that is using a Cortex-M0, Cortex-M0+, Cortex-M3, or Cortex-M4 processor-based microcontroller. To deploy the firmware to a new Debug Unit copy an existing firmware adaption to a new folder. For example, copy the folder .\Firmware\XMC4200 to a folder called .\Firmware\MyDebugUnit.

    +

    To following steps describe the adaption of the CMSIS-DAP Firmware to a new Debug Unit:

    +
      +
    1. Debug Unit Processor : Select the microcontroller and replace the CMSIS-CORE files.
    2. +
    3. Configure I/O Ports and Debug Unit : Adapt the I/O Ports and specify other parameters for the Debug Unit.
    4. +
    5. Configure USB Peripheral : Adapt the USB Peripheral to the microcontroller.
    6. +
    7. Connect SWO Trace : Optional you may add a CMSIS-Driver USART to interface to SWO.
    8. +
    9. CMSIS-DAP Vendor Commands : Optional you may add vendor specific commands to the Debug Unit.
    10. +
    11. Flash Program Firmware : Program the adapted firmware to the Flash ROM of the new Debug Unit.
    12. +
    13. Validate Debug Unit : Validate the CMSIS-DAP firmware of the new Debug Unit.
    14. +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.js new file mode 100644 index 0000000..6b0ab20 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config__gr.js @@ -0,0 +1,7 @@ +var group___d_a_p___config__gr = +[ + [ "Debug Unit Processor", "group___d_a_p___config_m_c_u__gr.html", null ], + [ "Configure I/O Ports and Debug Unit", "group___d_a_p___config_i_o__gr.html", "group___d_a_p___config_i_o__gr" ], + [ "Configure USB Peripheral", "group___d_a_p___config_u_s_b__gr.html", null ], + [ "Flash Program Firmware", "group___d_a_p___config_flash__gr.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config_flash__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config_flash__gr.html new file mode 100644 index 0000000..cd367be --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config_flash__gr.html @@ -0,0 +1,138 @@ + + + + + +Flash Program Firmware +CMSIS-DAP: Flash Program Firmware + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Flash Program Firmware
    +
    +
    + +

    The CMSIS-DAP Firmware is programmed into Flash ROM of a Debug Unit. +More...

    +

    The CMSIS-DAP Firmware is programmed into Flash ROM of a Debug Unit.

    +

    Once the CMSIS-DAP Firmware is configured it needs to be programmed into the Flash ROM of the new Debug Unit. MDK provides already Flash algorithms for many Cortex-M based microcontrollers and therefore you may use the Flash programming facilities that are provide in uVision.

    +

    Once Flash programming is configured you may use the uVision menu item Flash - Download.

    +
    +MDK_Flash.png +
    +Download CMSIS-DAP Firmware to new Debug Unit using MDK
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.html new file mode 100644 index 0000000..afe9d01 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.html @@ -0,0 +1,152 @@ + + + + + +Configure I/O Ports and Debug Unit +CMSIS-DAP: Configure I/O Ports and Debug Unit + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Configure I/O Ports and Debug Unit
    +
    +
    + +

    DAP_config.h configures I/O ports and Debug Unit hardware parameters. +More...

    + + + + + + + + + + + + + + +

    +Content

     CMSIS-DAP Debug Unit Information
     Provides definitions about the hardware and configuration of the Debug Unit.
     
     CMSIS-DAP Hardware I/O Pin Access
     Standard I/O Pins of the CMSIS-DAP Hardware Debug Port support standard JTAG mode and Serial Wire Debug (SWD) mode.
     
     CMSIS-DAP Hardware Status LEDs
     CMSIS-DAP Hardware may provide LEDs that indicate the status of the CMSIS-DAP Debug Unit.
     
     CMSIS-DAP Initialization
     CMSIS-DAP Hardware I/O and LED Pins are initialized with the function DAP_SETUP.
     
    +

    Description

    +

    DAP_config.h configures I/O ports and Debug Unit hardware parameters.

    +

    The CMSIS-DAP Firmware configuration file DAP_config.h provides the interface functions and configuration parameters for the hardware of the CMSIS-DAP Debug Unit.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.js new file mode 100644 index 0000000..4bc9f95 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config_i_o__gr.js @@ -0,0 +1,7 @@ +var group___d_a_p___config_i_o__gr = +[ + [ "CMSIS-DAP Debug Unit Information", "group___d_a_p___config___debug__gr.html", "group___d_a_p___config___debug__gr" ], + [ "CMSIS-DAP Hardware I/O Pin Access", "group___d_a_p___config___port_i_o__gr.html", "group___d_a_p___config___port_i_o__gr" ], + [ "CMSIS-DAP Hardware Status LEDs", "group___d_a_p___config___l_e_ds__gr.html", "group___d_a_p___config___l_e_ds__gr" ], + [ "CMSIS-DAP Initialization", "group___d_a_p___config___initialization__gr.html", "group___d_a_p___config___initialization__gr" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config_m_c_u__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config_m_c_u__gr.html new file mode 100644 index 0000000..2e1b073 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config_m_c_u__gr.html @@ -0,0 +1,149 @@ + + + + + +Debug Unit Processor +CMSIS-DAP: Debug Unit Processor + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Debug Unit Processor
    +
    +
    + +

    CMSIS-DAP Firmware runs on Debug Units with a Cortex-M Microcontroller. +More...

    +

    CMSIS-DAP Firmware runs on Debug Units with a Cortex-M Microcontroller.

    +

    The CMSIS-DAP Firmware is designed to execute on a Debug Unit that is using a Cortex-M0, Cortex-M0+, Cortex-M3, or Cortex-M4 processor-based microcontroller.

    +

    The following steps describe how to change the microcontroller in the CMSIS-DAP Firmware project:

    +
      +
    1. Open in the uVision IDE the project file .\Firmware\MyDebugUnit\CMSIS_DAP.uvproj.
    2. +
    3. Open the Project - Options - Device dialog and select the microcontroller of the new Debug Unit.
    4. +
    5. In the Project Window replace the files that belong to the group Startup Code with the relevant files for the new device.
    6. +
    7. Optionally you may modify the project file Target name and the file Abstract.txt to reflect the new Debug Unit.
    8. +
    +
    +MDK_Device.png +
    +Select the microcontroller
    +

    In MDK Version 5 changing the microcontroller should bring in already the relevant software components for the new target. However, depending on the availability you may need to replace some components with custom implementations.

    +
    +RTE.png +
    +Replace missing software components
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___config_u_s_b__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___config_u_s_b__gr.html new file mode 100644 index 0000000..8905774 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___config_u_s_b__gr.html @@ -0,0 +1,157 @@ + + + + + +Configure USB Peripheral +CMSIS-DAP: Configure USB Peripheral + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Configure USB Peripheral
    +
    +
    + +

    CMSIS-DAP Firmware uses USB HID as interface to host computer. +More...

    +

    CMSIS-DAP Firmware uses USB HID as interface to host computer.

    +

    The CMSIS-DAP Firmware uses MDK Professional middleware components to access the USB peripheral of the microcontroller. The CMSIS-DAP Firmware uses the USB Human Interface Device (HID) class that does not require any USB driver development for the host computer. However it is important to provide correct configuration information for the USB Peripheral as described in this section.

    +

    The following steps describe how to change and configure the USB peripheral in the CMSIS-DAP Firmware project:

    +
      +
    1. In the Project Window, the group USB contains USB interface with the relevant configuration files.
    2. +
    3. Open the file usb_config_0.c in the editor and select Configuration Wizard as edit mode; then change the following settings:
        +
      • USB Device 0 - High-speed: enable this option only for a high-speed USB peripheral; disable for full-speed USB.
      • +
      • Update Device Settings - Vendor ID which is provided by the USB Implementers Forum.
      • +
      • Update Device Settings - Product ID to provide a unique identification for the Debug Unit.
      • +
      • Update Device Settings - Device Release Number to indicate the revision of the adaptation.
      • +
      • Update String Settings - Manufacturer String to reflect the vendor of the Debug Unit. This setting should match the Vendor ID.
      • +
      • Update String Settings - Product String to indicate the Debug Unit. Note that "CMSIS-DAP" must be part of that string to allow identification by debuggers.
      • +
      • Optionally each Debug Unit may provide a unique Serial Number String. If the String Settings - Serial Number String is not provided, only one Debug Unit can be connected at the same time to a host computer since it is impossible to identify multiple Debug Units.
      • +
      +
    4. +
    +

    The CMSIS-DAP Firmware can be also part of a USB composite device. If this case, the HID Interface String must contain the sub-string CMSIS-DAP. The HID Interface String is configured in the file USBD_Config_HID_0.h under the category Human Interface Device Class Settings.

    +
    Note
      +
    • The USB Device setting high-speed / full-speed USB must be reflected in the DAP_config.h file as described under Firmware Configuration.
    • +
    • The String Settings - Product String must contain "CMSIS-DAP" somewhere in the string. This is used by the debuggers to identify a CMSIS-DAP compliant Debug Unit that is connected to a host computer.
    • +
    +
    +
    +MDK_USB.png +
    +Adapt the USB Peripheral to the microcontroller
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___connect.html b/CMSIS/Documentation/DAP/html/group___d_a_p___connect.html new file mode 100644 index 0000000..8f62b80 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___connect.html @@ -0,0 +1,157 @@ + + + + + +DAP_Connect +CMSIS-DAP: DAP_Connect + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_Connect
    +
    +
    + +

    Connect to Device and selected DAP mode. +More...

    +

    Connect to Device and selected DAP mode.

    +

    The DAP_Connect Command initializes the DAP I/O pins for the specified DAP mode (JTAG or SWD). This command calls the function PORT_SWD_SETUP or PORT_JTAG_SETUP which prepares the connection to the Target Device.

    +

    DAP_Connect Command:

    +
    BYTE | BYTE |
    +
    > 0x02 | Port |
    +
    ******|******|
    +
      +
    • Port: Selects the DAP port mode and configures the DAP I/O pins. The possible values are:
        +
      • 0 = Default mode: configuration of the DAP port mode is derived from DAP_DEFAULT_PORT (zero configuration).
      • +
      • 1 = SWD mode: connect with Serial Wire Debug mode.
      • +
      • 2 = JTAG mode: connect with 4/5-pin JTAG mode.
      • +
      +
    • +
    +

    DAP_Connect Response:

    +
    BYTE | BYTE |
    +
    < 0x02 | Port |
    +
    ******|******|
    +
      +
    • Port: DAP port mode initialized. The possible values are:
        +
      • 0 = initialization failed; no mode pre-configured.
      • +
      • 1 = initialization for SWD mode.
      • +
      • 2 = initialization for JTAG mode.
      • +
      +
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___delay.html b/CMSIS/Documentation/DAP/html/group___d_a_p___delay.html new file mode 100644 index 0000000..43f75cc --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___delay.html @@ -0,0 +1,147 @@ + + + + + +DAP_Delay +CMSIS-DAP: DAP_Delay + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_Delay
    +
    +
    + +

    Wait for specified delay. +More...

    +

    Wait for specified delay.

    +

    The DAP_Delay< Command waits for a time period specified in micro-seconds.

    +

    DAP_Delay Command:

    +
    BYTE | SHORT |
    +
    > 0x09 | Delay |
    +
    ******|*******|
    +
      +
    • Delay: wait time in µs.
    • +
    +

    DAP_Delay Response:

    +
    BYTE | BYTE |
    +
    < 0x09 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___disconnect.html b/CMSIS/Documentation/DAP/html/group___d_a_p___disconnect.html new file mode 100644 index 0000000..fd7af44 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___disconnect.html @@ -0,0 +1,144 @@ + + + + + +DAP_Disconnect +CMSIS-DAP: DAP_Disconnect + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_Disconnect
    +
    +
    + +

    Disconnect from active Debug Port. +More...

    +

    Disconnect from active Debug Port.

    +

    The DAP_Disconnect Command de-initializes the DAP I/O pins by calling the function PORT_OFF.

    +

    DAP_Disconnect Command:

    +
    BYTE |
    +
    > 0x03 |
    +
    ******|
    +

    DAP_Disconnect Response:

    +
    BYTE | BYTE |
    +
    < 0x03 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___execute_commands__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___execute_commands__gr.html new file mode 100644 index 0000000..7f41b88 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___execute_commands__gr.html @@ -0,0 +1,161 @@ + + + + + +DAP_ExecuteCommands +CMSIS-DAP: DAP_ExecuteCommands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_ExecuteCommands
    +
    +
    + +

    Execute multiple DAP commands from a single packet. +More...

    +

    Execute multiple DAP commands from a single packet.

    +

    Executes multiple DAP commands that are provided in a single packet. Packet size limitation for requests and responses needs to respected.

    +

    DAP_ExecuteCommands Request:

    +
    BYTE | BYTE | |
    +
    > 0x7F | NumCmd | Command Requests |
    +
    ******|********|+++++++++++++++++++|
    +
      +
    • NumCmd: Number of commands to execute
    • +
    • Commands Requests: Concatenated command requests
    • +
    +

    DAP_ExecuteCommands Response:

    +
    BYTE | BYTE | |
    +
    < 0x7F | NumCmd | Command Responses |
    +
    ******|********|+++++++++++++++++++|
    +
      +
    • NumCmd: Number of commands executed
    • +
    • Commands Responses: Concatenated command responses
    • +
    +

    Example:

    +

    Execute two DAP_SWJ_Pins commands with DAP_Delay in between.

    +

    Request:

    +
    BYTE | BYTE | BYTE | BYTE | BYTE | WORD | BYTE | SHORT | BYTE | BYTE | BYTE | WORD |
    +
    > 0x7F | 0x03 | 0x10 | Pin Output | Pin Select | Pin Wait | 0x09 | Delay | 0x10 | Pin Output | Pin Select | Pin Wait |
    +
    ******|******|******|************|************|**********|******|*******|******|************|************|**********|
    +
    |NumCmd| DAP_SWJ_Pins | DAP_Delay | DAP_SWJ_Pins |
    +

    Response:

    +
    BYTE | BYTE | BYTE | BYTE | BYTE | BYTE | BYTE | BYTE |
    +
    < 0x7F | 0x03 | 0x10 | Pin Input | 0x09 | Status | 0x10 | Pin Input |
    +
    ******|******|******|***********|******|********|******|***********|
    +
    |NumCmd| DAP_SWJ_Pins | DAP_Delay | DAP_SWJ_Pins |
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___host_status.html b/CMSIS/Documentation/DAP/html/group___d_a_p___host_status.html new file mode 100644 index 0000000..a23c3a5 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___host_status.html @@ -0,0 +1,157 @@ + + + + + +DAP_HostStatus +CMSIS-DAP: DAP_HostStatus + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_HostStatus
    +
    +
    + +

    Sent status information of the debugger to Debug Unit. +More...

    +

    Sent status information of the debugger to Debug Unit.

    +

    The DAP_HostStatus Command is used to sent the status information about the debugger to the Debug Unit. This status information may be displayed on the Debug Unit. Therefore a Debug Unit may provide optional Status LEDs:

    +
      +
    • Connect LED: is active when the DAP hardware is connected to a debugger.
    • +
    • Running LED: is active when the debugger has put the target device into running state.
    • +
    +

    DAP_HostStatus Command:

    +
    BYTE | BYTE **| BYTE **|
    +
    > 0x01 | Type | Status |
    +
    ******|********|********|
    +
      +
    • Type: specifies the type of the information that is sent in Status:
        +
      • 0 = Connect: Status indicates that the debugger is connected to the Debug Unit.
      • +
      • 1 = Running: Status indicates that the target hardware is executing application code.
      • +
      +
    • +
    • Status: contains the actual status information:
        +
      • 0 = False: may be used to turn off a status LED (Connect or Running) on the Debug Unit.
      • +
      • 1 = True: may be used to turn on a status LED (Connect or Running) on the Debug Unit.
      • +
      +
    • +
    +

    DAP_HostStatus Response:

    +
    BYTE | BYTE **|
    +
    < 0x01 | 0x00 |
    +
    ******|********|
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___info.html b/CMSIS/Documentation/DAP/html/group___d_a_p___info.html new file mode 100644 index 0000000..88ffe98 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___info.html @@ -0,0 +1,176 @@ + + + + + +DAP_Info +CMSIS-DAP: DAP_Info + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_Info
    +
    +
    + +

    Get Information about CMSIS-DAP Debug Unit. +More...

    +

    Get Information about CMSIS-DAP Debug Unit.

    +

    The DAP_Info Command provides configuration information about the Debug Unit itself and the capabilities.

    +

    DAP_Info Command:

    +
    BYTE | BYTE |
    +
    > 0x00 | ID |
    +
    ******|******|
    +
      +
    • ID: Request Identifier to obtain information in the Response:
        +
      • 0x01 = Get the Vendor ID (string).
      • +
      • 0x02 = Get the Product ID (string).
      • +
      • 0x03 = Get the Serial Number (string).
      • +
      • 0x04 = Get the CMSIS-DAP Firmware Version (string).
      • +
      • 0x05 = Get the Target Device Vendor (string).
      • +
      • 0x06 = Get the Target Device Name (string).
      • +
      • 0xF0 = Get information about the Capabilities (BYTE) of the Debug Unit.
      • +
      • 0xFD = Get the SWO Trace Buffer Size (WORD).
      • +
      • 0xFE = Get the maximum Packet Count (BYTE).
      • +
      • 0xFF = Get the maximum Packet Size (SHORT).
      • +
      +
    • +
    +

    DAP_Info Response:

    +
    BYTE | BYTE | BYTE |
    +
    < 0x00 | Len | Info |
    +
    ******|******|++++++|
    +
      +
    • Len: Info length in bytes.
    • +
    • Info:
        +
      • a string encoded in US ASCII. Len is the string length including the \x00 terminator. Len = 0 indicates no information.
      • +
      • a BYTE value (indicated with Len = 1).
      • +
      • a SHORT value (indicated with Len = 2).
      • +
      • a WORD value (indicated with Len = 4).
      • +
      +
    • +
    +

    The ID Capabilities obtains information about the available interface to the Device. The information BYTE contains bits that indicate which communication methods are provided to the Device.

    +
      +
    • Bit 0: 1 = SWD Serial Wire Debug communication is implemented (0 = not implemented).
    • +
    • Bit 1: 1 = JTAG communication is implemented (0 = not implemented).
    • +
    • Bit 2: 1 = SWO UART - UART Serial Wire Output is implemented (0 = not implemented).
    • +
    • Bit 3: 1 = SWO Manchester - Manchester Serial Wire Output is implemented (0 = not implemented).
    • +
    +
    Note
    The ID for Vendor ID, Product ID, and Serial Number may return no string (indicated by Len = 0). In this case the USB Device Information is used to obtain Vendor, Product, and Serial Number.
    +
    +Target Device Vendor and Target Device Name are only available on Debug Units with known Target Device. Refer to TARGET_DEVICE_FIXED for more information. If the Target Device is not known no string is returned (indicated by Len = 0).
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___configure.html b/CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___configure.html new file mode 100644 index 0000000..108f784 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___configure.html @@ -0,0 +1,148 @@ + + + + + +DAP_JTAG_Configure +CMSIS-DAP: DAP_JTAG_Configure + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_JTAG_Configure
    +
    +
    + +

    Configure JTAG Chain. +More...

    +

    Configure JTAG Chain.

    +

    The DAP_JTAG_Configure Command sets the JTAG device chain information for communication with Transfer Commands. The JTAG device chain needs to be iterated with DAP_JTAG_Sequence or manually configured by the debugger on the host computer.

    +

    DAP_JTAG_Configure Command:

    +
    BYTE | BYTE *| BYTE *****|
    +
    > 0x15 | Count | IR Length |
    +
    ******|*******|+++++++++++|
    +
      +
    • Count: Number of devices in chain
    • +
    • IR Length: JTAG IR register length (in bits) for each device.
    • +
    +

    DAP_JTAG_Configure Response:

    +
    BYTE | BYTE **|
    +
    < 0x15 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___sequence.html b/CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___sequence.html new file mode 100644 index 0000000..7d395a8 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___j_t_a_g___sequence.html @@ -0,0 +1,163 @@ + + + + + +DAP_JTAG_Sequence +CMSIS-DAP: DAP_JTAG_Sequence + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_JTAG_Sequence
    +
    +
    + +

    Generate JTAG sequence TMS,TDI and capture TDO. +More...

    +

    Generate JTAG sequence TMS,TDI and capture TDO.

    +

    The DAP_JTAG_Sequence Command may be used to auto-detect devices on the JTAG chain. The result of this command can be used to calculate on the host computer the number of JTAG devices and the JTAG IR register length. This information is the input for DAP_JTAG_Configure.

    +

    DAP_JTAG_Sequence Command:

    +
    BYTE | BYTE **********| BYTE *********| BYTE ****|
    +
    > 0x14 | Sequence Count | Sequence Info | TDI Data |
    +
    ******|****************|///////////////|//////////|
    +
      +
    • Sequence Count: Number of Sequences
    • +
    • Sequence Info: Contains number of TDI bits and fixed TMS value
        +
      • Bit 5 .. 0: Number of TCK cycles: 1 .. 64 (64 encoded as 0)
      • +
      • Bit 6: TMS value
      • +
      • Bit 7: TDO Capture
      • +
      +
    • +
    • TDI Data: Data generated on TDI
        +
      • One bit for each TCK cycle
      • +
      • LSB transmitted first, padded to BYTE boundary
      • +
      +
    • +
    +

    DAP_JTAG_Sequence Response:

    +
    BYTE | BYTE **| BYTE ****|
    +
    < 0x14 | Status |TDO Data |
    +
    ******|********|++++++++++|
    +
      +
    • TDO Data: Data captured from TDO
        +
      • One bit for each TCK cycle when TDO Capture is enabled
      • +
      • LSB received first, padded to BYTE boundary
      • +
      +
    • +
    • Status: Response Status
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___queue_commands__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___queue_commands__gr.html new file mode 100644 index 0000000..0b82b46 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___queue_commands__gr.html @@ -0,0 +1,210 @@ + + + + + +DAP_QueueCommands +CMSIS-DAP: DAP_QueueCommands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_QueueCommands
    +
    +
    + +

    Queue multiple DAP commands provided in a multiple packets. +More...

    +

    Queue multiple DAP commands provided in a multiple packets.

    +

    Queues multiple DAP commands provided in multiple packets. Queuing starts with the first packet that includes DAP_QueueCommands command and continues with all subsequent packets that also include this command. Queued commands execute when a packet without DAP_QueueCommands command is received. Packet size and count limitation for requests and responses needs to respected.

    +

    The command is similar to DAP_ExecuteCommands on a packet level but queues multiple packets before processing them.

    +

    DAP_QueueCommands Request:

    +
    BYTE | BYTE | |
    +
    > 0x7E | NumCmd | Command Requests | First queued packet
    +
    ******|********|+++++++++++++++++++|
    +
    .
    +
    .
    +
    .
    +
    BYTE | BYTE | |
    +
    > 0x7E | NumCmd | Command Requests | Last queued packet
    +
    ******|********|+++++++++++++++++++|
    +
      +
    • > Command Request (any command except DAP_QueueCommands)
      + Queued commands are executed before this command
    • +
    • NumCmd: Number of commands to queue (single packet)
    • +
    • Commands Requests: Concatenated command requests (single packet)
    • +
    +

    DAP_QueueCommands Response:

    +
    BYTE | BYTE | |
    +
    < 0x7F | NumCmd | Command Responses |
    +
    ******|********|+++++++++++++++++++|
    +
    .
    +
    .
    +
    .
    +
    BYTE | BYTE | |
    +
    < 0x7F | NumCmd | Command Responses |
    +
    ******|********|+++++++++++++++++++|
    +
      +
    • < Command Response (first non DAP_QueueCommands command)
    • +
    • NumCmd: Number of commands executed (single packet)
    • +
    • Commands Responses: Concatenated command responses (single packet)
    • +
    +

    Example:

    +

    Queue DAP_SWJ_Pins and DAP_Delay in first packet.
    + Queue DAP_SWJ_Pins in second packet.
    + Queue DAP_Delay in third packet.
    + Send DAP_SWJ_Pins in fourth packet which executes queued commands and command in the last packet.

    +

    Request:

    +
    BYTE | BYTE | BYTE | BYTE | BYTE | WORD | BYTE | SHORT |
    +
    > 0x7E | 0x02 | 0x10 | Pin Output | Pin Select | Pin Wait | 0x09 | Delay |
    +
    ******|******|******|************|************|**********|******|*******|
    +
    Queue|NumCmd| DAP_SWJ_Pins | DAP_Delay |
    +
    +
    BYTE | BYTE | BYTE | BYTE | BYTE | WORD |
    +
    > 0x7E | 0x01 | 0x10 | Pin Output | Pin Select | Pin Wait |
    +
    ******|******|******|************|************|**********|
    +
    Queue|NumCmd| DAP_SWJ_Pins |
    +
    +
    BYTE | BYTE | BYTE | SHORT |
    +
    > 0x7E | 0x01 | 0x09 | Delay |
    +
    ******|******|******|*******|
    +
    Queue|NumCmd| DAP_Delay |
    +
    +
    BYTE | BYTE | BYTE | WORD |
    +
    > 0x10 | Pin Output | Pin Select | Pin Wait |
    +
    ******|************|************|**********|
    +
    DAP_SWJ_Pins |
    +

    Response:

    +
    BYTE | BYTE | BYTE | BYTE | BYTE | BYTE |
    +
    < 0x7F | 0x02 | 0x10 | Pin Input | 0x09 | Status |
    +
    ******|******|******|***********|******|********|
    +
    |NumCmd| DAP_SWJ_Pins | DAP_Delay |
    +
    +
    BYTE | BYTE | BYTE | BYTE |
    +
    < 0x7F | 0x01 | 0x10 | Pin Input |
    +
    ******|******|******|***********|
    +
    |NumCmd| DAP_SWJ_Pins |
    +
    +
    BYTE | BYTE | BYTE | BYTE |
    +
    < 0x7F | 0x01 | 0x09 | Status |
    +
    ******|******|******|********|
    +
    |NumCmd| DAP_Delay |
    +
    +
    BYTE | BYTE |
    +
    < 0x10 | Pin Input |
    +
    ******|***********|
    +
    DAP_SWJ_Pins |
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___reset_target.html b/CMSIS/Documentation/DAP/html/group___d_a_p___reset_target.html new file mode 100644 index 0000000..bda2ff5 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___reset_target.html @@ -0,0 +1,149 @@ + + + + + +DAP_ResetTarget +CMSIS-DAP: DAP_ResetTarget + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_ResetTarget
    +
    +
    + +

    Reset Target with Device specific sequence. +More...

    +

    Reset Target with Device specific sequence.

    +

    The DAP_ResetTarget Command requests a target reset with a device specific command sequence. This command calls the user configurable function RESET_TARGET.

    +

    DAP_ResetTarget Command:

    +
    BYTE |
    +
    > 0x0A |
    +
    ******|
    +

    DAP_ResetTarget Response:

    +
    BYTE | BYTE | BYTE |
    +
    < 0x0A | Status | Execute |
    +
    ******|********|*********|
    +
      +
    • Execute: indicates whether a device specific reset sequence was executed.
        +
      • no device specific reset sequence is implemented.
      • +
      • 1 = a device specific reset sequence is implemented.
      • +
      +
    • +
    • Status: Response Status
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___response___status.html b/CMSIS/Documentation/DAP/html/group___d_a_p___response___status.html new file mode 100644 index 0000000..8267cc2 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___response___status.html @@ -0,0 +1,137 @@ + + + + + +Response Status +CMSIS-DAP: Response Status + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Response Status
    +
    +
    + +

    Status Information in Response Data. +More...

    +

    Status Information in Response Data.

    +

    The Response data of a command frequently include a Status that indicates correct execution or command failures. Currently the following Status codes are returned:

    +
      +
    • 0x00 = DAP_OK: Command has been successfully executed
    • +
    • 0xFF = DAP_ERROR: Command did not execute due to communication failure with the device.
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_d___configure.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_d___configure.html new file mode 100644 index 0000000..5b3139e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_d___configure.html @@ -0,0 +1,155 @@ + + + + + +DAP_SWD_Configure +CMSIS-DAP: DAP_SWD_Configure + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWD_Configure
    +
    +
    + +

    Configure SWD Protocol. +More...

    +

    Configure SWD Protocol.

    +

    The DAP_SWD_Configure Command sets the SWD protocol configuration. For more information about the SWD protocol refer to the ARM Debug Interface v5 - Interface Specification.

    +

    DAP_SWD_Configure Command:

    +
    BYTE | BYTE *********|
    +
    > 0x13 | Configuration |
    +
    ******|***************|
    +
      +
    • Configuration: Contains information about SWD specific features
      +

      +
        +
      • Bit 1 .. 0: Turnaround clock period of the SWD device (should be identical with the WCR [Write Control Register] value of the target): 0 = 1 clock cycle (default), 1 = 2 clock cycles, 2 = 3 clock cycles, 3 = 4 clock cycles.
      • +
      +
        +
      • Bit 2: DataPhase: 0 = Do not generate Data Phase on WAIT/FAULT (default), 1 = Always generate Data Phase (also on WAIT/FAULT; Required for Sticky Overrun behavior).
      • +
      +
    • +
    +

    DAP_SWD_Configure Response:

    +
    BYTE | BYTE **|
    +
    < 0x13 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___clock.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___clock.html new file mode 100644 index 0000000..7121aab --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___clock.html @@ -0,0 +1,147 @@ + + + + + +DAP_SWJ_Clock +CMSIS-DAP: DAP_SWJ_Clock + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWJ_Clock
    +
    +
    + +

    Select SWD/JTAG Clock. +More...

    +

    Select SWD/JTAG Clock.

    +

    The DAP_SWJ_Clock Command sets the clock frequency for JTAG and SWD communication mode.

    +

    DAP_SWJ_Clock Command:

    +
    BYTE | WORD *|
    +
    > 0x11 | Clock |
    +
    ******|*******|
    +
      +
    • Clock: Selects maximum SWD/JTAG Clock (SWCLK/TCK) value in Hz
    • +
    +

    DAP_SWJ_Clock Response:

    +
    BYTE | BYTE **|
    +
    < 0x11 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___pins.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___pins.html new file mode 100644 index 0000000..57fa31a --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___pins.html @@ -0,0 +1,163 @@ + + + + + +DAP_SWJ_Pins +CMSIS-DAP: DAP_SWJ_Pins + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWJ_Pins
    +
    +
    + +

    Control and monitor SWD/JTAG Pins. +More...

    +

    Control and monitor SWD/JTAG Pins.

    +

    The DAP_SWJ_Pins Command is used to monitor and control the I/O Pins including the nRESET Device reset line.

    +

    The Pin Wait time is useful in systems where the nRESET pin is implemented as open-drain output. After nRESET is de-asserted by the debugger, external circuit may still hold the target Device under reset for a time. Using the Pin Wait time, the debugger may monitor selected I/O Pins and wait until they the expected value appears or a timeout expires.

    +

    I/O Pin Mapping for the fields Pin Output, Pin Select, and Pin Input:

    +
      +
    • Bit 0: SWCLK/TCK
    • +
    • Bit 1: SWDIO/TMS
    • +
    • Bit 2: TDI
    • +
    • Bit 3: TDO
    • +
    • Bit 5: nTRST
    • +
    • Bit 7: nRESET
    • +
    +

    DAP_SWJ_Pins Command:

    +
    BYTE | BYTE ******| BYTE ******| Word ****|
    +
    > 0x10 | Pin Output | Pin Select | Pin Wait |
    +
    ******|************|************|**********|
    +
      +
    • Pin Output: Value for selected output pins
    • +
    • Pin Select: Selects which output pins will be modified
    • +
    • Pin Wait: Wait timeout for the selected output to stabilize
        +
      • 0 = no wait
      • +
      • 1 .. 3000000 = time in µs (max 3s)
      • +
      +
    • +
    +

    DAP_SWJ_Pins Response:

    +
    BYTE | BYTE *****|
    +
    < 0x10 | Pin Input |
    +
    ******|***********|
    +
      +
    • Pin Input: Pin state read from target Device.
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___sequence.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___sequence.html new file mode 100644 index 0000000..3773c20 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_j___sequence.html @@ -0,0 +1,148 @@ + + + + + +DAP_SWJ_Sequence +CMSIS-DAP: DAP_SWJ_Sequence + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWJ_Sequence
    +
    +
    + +

    Generate SWJ sequence SWDIO/TMS @SWCLK/TCK. +More...

    +

    Generate SWJ sequence SWDIO/TMS @SWCLK/TCK.

    +

    The DAP_SWJ_Sequence Command can be used to generate required SWJ sequences for SWD/JTAG Reset, SWD<->JTAG switch and Dormant operation.

    +

    DAP_SWJ_Sequence Command

    +
    BYTE | BYTE **************| BYTE *************|
    +
    > 0x12 | Sequence Bit Count | Sequence Bit Data |
    +
    ******|********************|+++++++++++++++++++|
    +
      +
    • Sequence Bit Count: Number of bits in sequence: 1..256 (256 encoded as 0)
    • +
    • Sequence Bit Data: Sequence generated on SWDIO/TMS (with clock @SWCLK/TCK) LSB is transmitted first
    • +
    +

    DAP_SWJ_Sequence Response:

    +
    BYTE | BYTE **|
    +
    < 0x12 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___baudrate.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___baudrate.html new file mode 100644 index 0000000..ffab844 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___baudrate.html @@ -0,0 +1,149 @@ + + + + + +DAP_SWO_Baudrate +CMSIS-DAP: DAP_SWO_Baudrate + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWO_Baudrate
    +
    +
    + +

    Set SWO baudrate. +More...

    +

    Set SWO baudrate.

    +

    DAP_SWO_Baudrate (0x19):

    +

    Sets the baudrate for capturing SWO trace data. Can be called iteratively to determine supported baudrates.

    +

    DAP_SWO_Baudrate Request:

    +
    BYTE | WORD |
    +
    > 0x19 | Baudrate |
    +
    ******|**********|
    +
      +
    • Baudrate: Requested baudrate
    • +
    +

    DAP_SWO_Baudrate Response:

    +
    BYTE | WORD |
    +
    < 0x19 | Baudrate |
    +
    ******|**********|
    +
      +
    • Baudrate: Actual baudrate or 0 (baudrate not configured) When requested baudrate is not achievable the closest configured baudrate can be returned or 0 which indicates that baudrate was not configured.
    • +
    +
    Note
    When Manchester Mode is used and if decoder is implemented with clock recovery then baudrate is not required since clock is automatically decoded. However such decoders are harder to implement (especially for high frequencies) and the clock recovery might not be implemented. Therefore the baudrate should be provided also for Manchester mode.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___control.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___control.html new file mode 100644 index 0000000..71dfe75 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___control.html @@ -0,0 +1,153 @@ + + + + + +DAP_SWO_Control +CMSIS-DAP: DAP_SWO_Control + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWO_Control
    +
    +
    + +

    Control SWO trace data capture. +More...

    +

    Control SWO trace data capture.

    +

    DAP_SWO_Control (0x1A):

    +

    Controls the SWO trace data capture.

    +

    DAP_SWO_Control Request:

    +
    BYTE | BYTE |
    +
    > 0x1A | Control |
    +
    ******|*********|
    +
      +
    • Control:
        +
      • 0 - Stop
      • +
      • 1 - Start
      • +
      +
    • +
    +

    DAP_SWO_Control Response:

    +
    BYTE | BYTE |
    +
    < 0x1A | Status |
    +
    ******|********|
    +
    +
    Note
    Starting capture automatically flushes any existing trace data in buffers which has not yet been read
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___data.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___data.html new file mode 100644 index 0000000..f618fcf --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___data.html @@ -0,0 +1,155 @@ + + + + + +DAP_SWO_Data +CMSIS-DAP: DAP_SWO_Data + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWO_Data
    +
    +
    + +

    Read SWO trace data. +More...

    +

    Read SWO trace data.

    +

    DAP_SWO_Data (0x1C):

    +

    Reads the captured SWO trace data from Trace Buffer.

    +

    DAP_SWO_Data Request:

    +
    BYTE | SHORT |
    +
    > 0x1C | Trace Count |
    +
    ******|*************|
    +
      +
    • Trace Count: Maxim number of Trace Data bytes to read
    • +
    +

    DAP_SWO_Data Response:

    +
    BYTE | BYTE | SHORT | BYTE |
    +
    < 0x1C | Trace Status | Trace Count | Trace Data |
    +
    ******|**************|*************|////////////|
    +
      +
    • Trace Status:
        +
      • Bit 0: Trace Capture (1 - active, 0 - inactive)
      • +
      • Bit 6: Trace Stream Error
      • +
      • Bit 7: Trace Buffer Overrun
      • +
      +
    • +
    • Trace Count: Number of Trace Data bytes read
    • +
    • Trace Data: Trace Data bytes read
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___mode.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___mode.html new file mode 100644 index 0000000..bb57f43 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___mode.html @@ -0,0 +1,153 @@ + + + + + +DAP_SWO_Mode +CMSIS-DAP: DAP_SWO_Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWO_Mode
    +
    +
    + +

    Set SWO capture mode. +More...

    +

    Set SWO capture mode.

    +

    DAP_SWO_Mode (0x18):

    +

    Sets the SWO trace capture mode.

    +

    DAP_SWO_Mode Request:

    +
    BYTE | BYTE |
    +
    > 0x18 | Mode |
    +
    ******|******|
    +
      +
    • Mode:
        +
      • 0 - Off (default)
      • +
      • 1 - UART
      • +
      • 2 - Manchester
      • +
      +
    • +
    +

    DAP_SWO_Mode Response:

    +
    BYTE | BYTE |
    +
    < 0x18 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___status.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___status.html new file mode 100644 index 0000000..eb5be4c --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___status.html @@ -0,0 +1,151 @@ + + + + + +DAP_SWO_Status +CMSIS-DAP: DAP_SWO_Status + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWO_Status
    +
    +
    + +

    Read SWO trace status. +More...

    +

    Read SWO trace status.

    +

    DAP_SWO_Status (0x1B):

    +

    Reads the SWO trace status.

    +

    DAP_SWO_Status Request:

    +
    BYTE |
    +
    > 0x1B |
    +
    ******|
    +

    DAP_SWO_Status Response:

    +
    BYTE | BYTE | WORD |
    +
    < 0x1B | Trace Status | Trace Count |
    +
    ******|**************|*************|
    +
      +
    • Trace Status:
        +
      • Bit 0: Trace Capture (1 - active, 0 - inactive)
      • +
      • Bit 6: Trace Stream Error
      • +
      • Bit 7: Trace Buffer Overrun
      • +
      +
    • +
    • Trace Count: Number of bytes in Trace Buffer (not yet read)
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___transport.html b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___transport.html new file mode 100644 index 0000000..21648e2 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___s_w_o___transport.html @@ -0,0 +1,154 @@ + + + + + +DAP_SWO_Transport +CMSIS-DAP: DAP_SWO_Transport + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_SWO_Transport
    +
    +
    + +

    Set SWO transport mode. +More...

    +

    Set SWO transport mode.

    +

    DAP_SWO_Transport (0x17):

    +

    Sets the SWO transport mode for reading trace data.

    +

    DAP_SWO_Transport Request:

    +
    BYTE | BYTE |
    +
    > 0x17 | Transport |
    +
    ******|***********|
    +
      +
    • Transport:
        +
      • 0 - None (default)
      • +
      • 1 - Read trace data via DAP_SWO_Data command
      • +
      • ... - reserved
      • +
      +
    • +
    +

    DAP_SWO_Transport Response:

    +
    BYTE | BYTE |
    +
    < 0x17 | Status |
    +
    ******|********|
    +
    +
    Note
    Currently the trace data can only be read via the existing DAP command request/response channel by using DAP_SWO_Data. Future extension might provide separate channels for reading trace data.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___transfer.html b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer.html new file mode 100644 index 0000000..6467c20 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer.html @@ -0,0 +1,197 @@ + + + + + +DAP_Transfer +CMSIS-DAP: DAP_Transfer + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_Transfer
    +
    +
    + +

    Read/write single and multiple registers. +More...

    +

    Read/write single and multiple registers.

    +

    The DAP_Transfer Command reads or writes data to CoreSight registers. Each CoreSight register is accessed with a single 32-bit read or write. The CoreSight registers are addressed with DPBANKSEL/APBANKSEL and address lines A2, A3 (A0 = 0 and A1 = 0). This command executes several read/write operations on the selected DP/AP registers. The Transfer Data in the Response are in the order of the Transfer Request in the Command but might be shorter in case of communication failures. The data transfer is aborted on a communication error:

    +
      +
    • Protocol Error
    • +
    • Target FAULT response
    • +
    • Target WAIT responses exceed configured value
    • +
    • Value Mismatch (Read Register with Value Match)
    • +
    +

    DAP_Transfer Command:

    +
    BYTE | BYTE *****| BYTE **********| BYTE *************| WORD *********|
    +
    > 0x05 | DAP Index | Transfer Count | Transfer Request | Transfer Data |
    +
    ******|***********|****************|+++++++++++++++++++++++++++++++++++|
    +
      +
    • DAP Index: Zero based device index of the selected JTAG device. For SWD mode the value is ignored.
    • +
    +
      +
    • Transfer Count: Number of transfers: 1 .. 255. For each transfer a Transfer Request BYTE is sent. Depending on the request an additional Transfer Data WORD is sent.
    • +
    +
      +
    • Transfer Request: Contains information about requested access from host debugger.
        +
      • Bit 0: APnDP: 0 = Debug Port (DP), 1 = Access Port (AP).
      • +
      • Bit 1: RnW: 0 = Write Register, 1 = Read Register.
      • +
      • Bit 2: A2 Register Address bit 2.
      • +
      • Bit 3: A3 Register Address bit 3.
      • +
      • Bit 4: Value Match (only valid for Read Register): 0 = Normal Read Register, 1 = Read Register with Value Match.
      • +
      • Bit 5: Match Mask (only valid for Write Register): 0 = Normal Write Register, 1 = Write Match Mask (instead of Register).
      • +
      +
    • +
    +
      +
    • Transfer Data: register value or match value
        +
      • for Write Register transfer request: the register value for the CoreSight register.
      • +
      • for Match Mask transfer request: the match mask for the CoreSight register.
      • +
      • for Value Match transfer request: the match value of the CoreSight register.
      • +
      • no data is sent for other operations.
      • +
      +
    • +
    +

    DAP_Transfer Response:

    +
    BYTE | BYTE **********| BYTE *************| WORD *********|
    +
    < 0x05 | Transfer Count | Transfer Response | Transfer Data |
    +
    ******|****************|*******************|+++++++++++++++|
    +
      +
    • Transfer Count: Number of transfers: 1 .. 255 that are executed.
    • +
    +
      +
    • Transfer Response: Contains information about last response from target Device.
        +
      • Bit 2..0: ACK (Acknowledge) value:
          +
        • 1 = OK (for SWD protocol), OK or FAULT (for JTAG protocol),
        • +
        • 2 = WAIT
        • +
        • 4 = FAULT
        • +
        • 7 = NO_ACK (no response from target)
        • +
        +
      • +
      • Bit 3: 1 = Protocol Error (SWD)
      • +
      • Bit 4: 1 = Value Mismatch (Read Register with Value Match)
      • +
      +
    • +
    +
      +
    • Transfer Data: register value or match value in the order of the Transfer Request.
        +
      • for Read Register transfer request: the register value of the CoreSight register.
      • +
      • no data is sent for other operations.
      • +
      +
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_abort.html b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_abort.html new file mode 100644 index 0000000..143ec37 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_abort.html @@ -0,0 +1,137 @@ + + + + + +DAP_TransferAbort +CMSIS-DAP: DAP_TransferAbort + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_TransferAbort
    +
    +
    + +

    Abort current Transfer. +More...

    +

    Abort current Transfer.

    +

    The DAP_TransferAbort Command aborts the current transfer. The command can be executed while DAP_Transfer or DAP_TransferBlock command is still in progress. The command is ignored if there is no transfer in progress. The command itself has no response, however the aborted DAP_Transfer or DAP_TransferBlock command will respond with information about the actually transferred data.

    +

    DAP_TransferAbort Command:

    +
    BYTE |
    +
    > 0x07 |
    +
    ******|
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_block.html b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_block.html new file mode 100644 index 0000000..475b8f4 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_block.html @@ -0,0 +1,195 @@ + + + + + +DAP_TransferBlock +CMSIS-DAP: DAP_TransferBlock + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_TransferBlock
    +
    +
    + +

    Read/Write a block of data from/to a single register. +More...

    +

    Read/Write a block of data from/to a single register.

    +

    The DAP_TransferBlock Command read or write a data block to the same CoreSight register. A data block are multiple 32-bit values which are read or written from/to the same CoreSight register. The CoreSight register is addressed with DPBANKSEL/APBANKSEL and address lines A2, A3 (A0 = 0 and A1 = 0). The command can execute several read/write operations to a single DP/AP register.

    +

    The data transfer is aborted on a communication error:

    +
      +
    • Protocol Error
    • +
    • Target FAULT response
    • +
    • Target WAIT responses exceed configured value
    • +
    +

    DAP_TransferBlock Command:

    +
    BYTE | BYTE *****| SHORT**********| BYTE *************| WORD *********|
    +
    > 0x06 | DAP Index | Transfer Count | Transfer Request | Transfer Data |
    +
    ******|***********|****************|*******************|+++++++++++++++|
    +
      +
    • DAP Index: Zero based device index of the selected JTAG device. For SWD mode the value is ignored.
    • +
    +
      +
    • Transfer Count: Number of transfers: 1 .. 65535.
    • +
    +
      +
    • Transfer Request: Contains information about requested access from host
        +
      • Bit0: APnDP: 0 = DP (Debug Port), 1 = AP (Access Port)
      • +
      • Bit1: RnW: 0 = Write Register, 1 = Read Register
      • +
      • Bit2: A2 := Register Address bit 2
      • +
      • Bit3: A3 := Register Address bit 3
      • +
      +
    • +
    +
      +
    • Transfer Data: register values
        +
      • for Write Register transfer request: the register values written to the CoreSight register.
      • +
      • no data is sent for Read Register operations.
      • +
      +
    • +
    +

    DAP_TransferBlock Response:

    +
    BYTE | SHORT *********| BYTE *************| WORD *********|
    +
    < 0x06 | Transfer Count | Transfer Response | Transfer Data |
    +
    ******|****************|*******************|+++++++++++++++|
    +
      +
    • DAP Index: Zero based device index of the selected JTAG device. For SWD mode the value is ignored.
    • +
    +
      +
    • Transfer Count: Number of transfers (1 .. 65535) that are executed.
    • +
    +
      +
    • Transfer Response: Contains information about last response from target
        +
      • Bit 2..0: ACK (Acknowledge) value:
          +
        • 1 = OK (for SWD protocol), OK or FAULT (for JTAG protocol),
        • +
        • 2 = WAIT
        • +
        • 4 = FAULT
        • +
        • 7 = NO_ACK (no response from target)
        • +
        +
      • +
      • Bit3: Protocol Error (SWD)
      • +
      +
    • +
    +
      +
    • Transfer Data: register values
        +
      • no data is receive for Write Register operations.
      • +
      • for Read Register transfer request: the register values read from CoreSight register.
      • +
      +
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_configure.html b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_configure.html new file mode 100644 index 0000000..c4702cc --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___transfer_configure.html @@ -0,0 +1,154 @@ + + + + + +DAP_TransferConfigure +CMSIS-DAP: DAP_TransferConfigure + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_TransferConfigure
    +
    +
    + +

    Configure Transfers. +More...

    +

    Configure Transfers.

    +

    The DAP_TransferConfigure Command sets parameters for DAP_Transfer and DAP_TransferBlock.

    +

    DAP_TransferConfigure Command:

    +
    BYTE | BYTE ******** SHORT *****| SHORT ******|
    +
    > 0x04 | Idle Cycles | WAIT Retry | Match Retry |
    +
    ******|*************|************|*************|
    +
      +
    • Idle Cycles: Number of extra idle cycles after each transfer.
    • +
    • WAIT Retry: Number of transfer retries after WAIT response.
    • +
    • Match Retry: Number of retries on reads with Value Match in DAP_Transfer. On value mismatch the Register is read again until its value matches or the Match Retry count exceeds.
      +
      retry = Match_Retry;
      +
      do {
      +
      if ((Register_Value & Match_Mask) == Match_Value) break;
      +
      } while (retry--);
      +
    • +
    +

    DAP_TransferConfigure Response:

    +
    BYTE | BYTE **|
    +
    < 0x04 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___u_s_a_r_t__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___u_s_a_r_t__gr.html new file mode 100644 index 0000000..e7bd5b4 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___u_s_a_r_t__gr.html @@ -0,0 +1,134 @@ + + + + + +Connect SWO Trace +CMSIS-DAP: Connect SWO Trace + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Connect SWO Trace
    +
    +
    + +

    Optional you may add a CMSIS-Driver USART to interface to SWO. +More...

    +

    Optional you may add a CMSIS-Driver USART to interface to SWO.

    +

    A CMSIS-Driver USART can be used to capture the trace output on the SWO pin using a UART RX input on the microcontroller. To use a UART for SWO capturing, it is required to set the #define SWO_UART to 1. Refer to CMSIS-DAP Debug Unit Information for more information.

    +

    The actual USART Driver instance is defined in the source file SWO.c using the #define USART_PORT. You may change this define with a compiler option.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___validate__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___validate__gr.html new file mode 100644 index 0000000..de74b68 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___validate__gr.html @@ -0,0 +1,137 @@ + + + + + +Validate Debug Unit +CMSIS-DAP: Validate Debug Unit + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Validate Debug Unit
    +
    +
    + +

    A CMSIS-DAP conforming Debug Unit must be validated. +More...

    +

    A CMSIS-DAP conforming Debug Unit must be validated.

    +

    A CMSIS-DAP Debug Unit must be validate using the Keil MDK-ARM Debugger. A validation project for MDK is provided in the folder .\Validation\MDK. The project Blinky.uvproj is a "Blinky" application and needs to be adapted for the target hardware that is connected to the Debug Unit. Once the adaption is complete, you may open a Command Prompt and call the batch file TestAll.bat optionally with the path to UV4.EXE. This should generate the following output.

    +
    +MDK_Validation.png +
    +Validate Debug Unit using a target hardware and MDK
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___vendor__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p___vendor__gr.html new file mode 100644 index 0000000..405d58d --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___vendor__gr.html @@ -0,0 +1,133 @@ + + + + + +CMSIS-DAP Vendor Commands +CMSIS-DAP: CMSIS-DAP Vendor Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    CMSIS-DAP Vendor Commands
    +
    +
    + +

    Extend CMSIS-DAP Firmware with commands. +More...

    +

    Extend CMSIS-DAP Firmware with commands.

    +

    The CMSIS-DAP Firmware may be extended with commands that are specific to a Debug Unit. Vendor Commands may implement additional functionality such as interfaces to serial printf-style communication. The RDDI-DAP interface offers the function CMSIS_DAP_Commands to exchange information with vendor-specific commands.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p___write_a_b_o_r_t.html b/CMSIS/Documentation/DAP/html/group___d_a_p___write_a_b_o_r_t.html new file mode 100644 index 0000000..8692eb6 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p___write_a_b_o_r_t.html @@ -0,0 +1,148 @@ + + + + + +DAP_WriteABORT +CMSIS-DAP: DAP_WriteABORT + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_WriteABORT
    +
    +
    + +

    Write ABORT Register. +More...

    +

    Write ABORT Register.

    +

    The DAP_WriteABORT Command writes an abort request to the CoreSight ABORT register of the Target Device.

    +

    DAP_WriteABORT Command:

    +
    BYTE | BYTE *****| WORD *|
    +
    > 0x08 | DAP Index | Abort |
    +
    ******|***********|*******|
    +
      +
    • DAP Index: Zero based device index of the selected JTAG device. For SWD mode the value is ignored.
    • +
    • Abort: 32-bit value to write into the CoreSight ABORT register.
    • +
    +

    DAP_WriteABORT Response:

    +
    BYTE | BYTE **|
    +
    < 0x08 | Status |
    +
    ******|********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.html new file mode 100644 index 0000000..2f05f79 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.html @@ -0,0 +1,151 @@ + + + + + +Atomic Commands +CMSIS-DAP: Atomic Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Atomic Commands
    +
    +
    + +

    Execute atomic commands. +More...

    + + + + + + + + +

    +Content

     DAP_ExecuteCommands
     Execute multiple DAP commands from a single packet.
     
     DAP_QueueCommands
     Queue multiple DAP commands provided in a multiple packets.
     
    +

    Description

    +

    Execute atomic commands.

    +

    CMSIS-DAP command set is extended with two top level commands that allow the execution of multiple DAP commands further USB communication. Executing multiple CMSIS-DAP commands is typically a requirement at the reset time of some devices. The sequence after reset can be time critical and any USB communication would violate the available time window.

    + +

    These two DAP commands are used to collect several other DAP commands before execution. Packet Size and Packet Count limitation (as reported via DAP_Info) must be respected by the debugger.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.js new file mode 100644 index 0000000..f34fb57 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__atomic__gr.js @@ -0,0 +1,5 @@ +var group___d_a_p__atomic__gr = +[ + [ "DAP_ExecuteCommands", "group___d_a_p___execute_commands__gr.html", null ], + [ "DAP_QueueCommands", "group___d_a_p___queue_commands__gr.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.html new file mode 100644 index 0000000..3b6c8ab --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.html @@ -0,0 +1,168 @@ + + + + + +General Commands +CMSIS-DAP: General Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    General Commands
    +
    +
    + +

    Information and Control commands for the CMSIS-DAP Debug Unit. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Content

     DAP_Info
     Get Information about CMSIS-DAP Debug Unit.
     
     DAP_HostStatus
     Sent status information of the debugger to Debug Unit.
     
     DAP_Connect
     Connect to Device and selected DAP mode.
     
     DAP_Disconnect
     Disconnect from active Debug Port.
     
     DAP_WriteABORT
     Write ABORT Register.
     
     DAP_Delay
     Wait for specified delay.
     
     DAP_ResetTarget
     Reset Target with Device specific sequence.
     
    +

    Description

    +

    Information and Control commands for the CMSIS-DAP Debug Unit.

    +

    The General Commands allow to:

    +
      +
    • Connect, disconnect, and identify the Debug Unit.
    • +
    • Control the Status LEDs of the Debug Unit.
    • +
    • Issue and hardware reset to the connected Device.
    • +
    • Terminate previous CMSIS-DAP Commands.
    • +
    • Wait for a specified time.
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.js new file mode 100644 index 0000000..ba061b2 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__gen_commands__gr.js @@ -0,0 +1,10 @@ +var group___d_a_p__gen_commands__gr = +[ + [ "DAP_Info", "group___d_a_p___info.html", null ], + [ "DAP_HostStatus", "group___d_a_p___host_status.html", null ], + [ "DAP_Connect", "group___d_a_p___connect.html", null ], + [ "DAP_Disconnect", "group___d_a_p___disconnect.html", null ], + [ "DAP_WriteABORT", "group___d_a_p___write_a_b_o_r_t.html", null ], + [ "DAP_Delay", "group___d_a_p___delay.html", null ], + [ "DAP_ResetTarget", "group___d_a_p___reset_target.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.html new file mode 100644 index 0000000..8adf773 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.html @@ -0,0 +1,154 @@ + + + + + +JTAG Commands +CMSIS-DAP: JTAG Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    JTAG Commands
    +
    +
    + +

    Detect and configure the JTAG device chain. +More...

    + + + + + + + + + + + +

    +Content

     DAP_JTAG_Sequence
     Generate JTAG sequence TMS,TDI and capture TDO.
     
     DAP_JTAG_Configure
     Configure JTAG Chain.
     
     DAP_JTAG_IDCODE
     Read JTAG IDCODE.
     
    +

    Description

    +

    Detect and configure the JTAG device chain.

    +

    The JTAG Commands allow to:

    +
      +
    • Detect the devices connect to the JTAG chain.
    • +
    • Configure the IR register length of each device on the JTAG chain.
    • +
    • Read the JTAG IDCODE value of each device on the JTAG chain.
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.js new file mode 100644 index 0000000..bea5a10 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__gr.js @@ -0,0 +1,6 @@ +var group___d_a_p__jtag__gr = +[ + [ "DAP_JTAG_Sequence", "group___d_a_p___j_t_a_g___sequence.html", null ], + [ "DAP_JTAG_Configure", "group___d_a_p___j_t_a_g___configure.html", null ], + [ "DAP_JTAG_IDCODE", "group___d_a_p__jtag__idcode.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__idcode.html b/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__idcode.html new file mode 100644 index 0000000..93ba8d4 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__jtag__idcode.html @@ -0,0 +1,148 @@ + + + + + +DAP_JTAG_IDCODE +CMSIS-DAP: DAP_JTAG_IDCODE + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DAP_JTAG_IDCODE
    +
    +
    + +

    Read JTAG IDCODE. +More...

    +

    Read JTAG IDCODE.

    +

    The DAP_JTAG_IDCODE Command request the JTAG IDCODE for the selected device on the JTAG chain.

    +

    DAP_JTAG_IDCODE Command:

    +
    BYTE | BYTE ******|
    +
    > 0x16 | JTAG Index |
    +
    ******|************|
    +
      +
    • JTAG Index: Zero based JTAG index of selected device.
    • +
    +

    DAP_JTAG_IDCODE Response:

    +
    BYTE | BYTE **| WORD ***|
    +
    < 0x16 | Status | ID Code |
    +
    ******|********|*********|
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.html new file mode 100644 index 0000000..9bafb2b --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.html @@ -0,0 +1,143 @@ + + + + + +SWD Commands +CMSIS-DAP: SWD Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SWD Commands
    +
    +
    + +

    Configure the parameters for SWD mode. +More...

    + + + + + +

    +Content

     DAP_SWD_Configure
     Configure SWD Protocol.
     
    +

    Description

    +

    Configure the parameters for SWD mode.

    +

    The SWD Commands allow you to configure the parameters for the Serial Wire Debug (SWD) communication mode.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.js new file mode 100644 index 0000000..7063e92 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__swd__gr.js @@ -0,0 +1,4 @@ +var group___d_a_p__swd__gr = +[ + [ "DAP_SWD_Configure", "group___d_a_p___s_w_d___configure.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.html new file mode 100644 index 0000000..fd367a9 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.html @@ -0,0 +1,154 @@ + + + + + +Common SWD/JTAG Commands +CMSIS-DAP: Common SWD/JTAG Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Common SWD/JTAG Commands
    +
    +
    + +

    Set SWD/JTAG clock and control/monitor SWD/JTAG I/O pins. +More...

    + + + + + + + + + + + +

    +Content

     DAP_SWJ_Pins
     Control and monitor SWD/JTAG Pins.
     
     DAP_SWJ_Clock
     Select SWD/JTAG Clock.
     
     DAP_SWJ_Sequence
     Generate SWJ sequence SWDIO/TMS @SWCLK/TCK.
     
    +

    Description

    +

    Set SWD/JTAG clock and control/monitor SWD/JTAG I/O pins.

    +

    The Common SWD/JTAG Commands allow to:

    +
      +
    • Read and Write the SWD/JTAG I/O pins including nRESET.
    • +
    • Configure the SWD/JTAG clock speed.
    • +
    • Generate a sequence on the SWD/JTAG I/O pins for SWD<->JTAG mode switch.
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.js new file mode 100644 index 0000000..23ccd3d --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__swj__gr.js @@ -0,0 +1,6 @@ +var group___d_a_p__swj__gr = +[ + [ "DAP_SWJ_Pins", "group___d_a_p___s_w_j___pins.html", null ], + [ "DAP_SWJ_Clock", "group___d_a_p___s_w_j___clock.html", null ], + [ "DAP_SWJ_Sequence", "group___d_a_p___s_w_j___sequence.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.html new file mode 100644 index 0000000..d529830 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.html @@ -0,0 +1,175 @@ + + + + + +SWO Commands +CMSIS-DAP: SWO Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SWO Commands
    +
    +
    + +

    Configure the parameters for SWO mode. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Content

     DAP_SWO_Transport
     Set SWO transport mode.
     
     DAP_SWO_Mode
     Set SWO capture mode.
     
     DAP_SWO_Baudrate
     Set SWO baudrate.
     
     DAP_SWO_Control
     Control SWO trace data capture.
     
     DAP_SWO_Status
     Read SWO trace status.
     
     DAP_SWO_Data
     Read SWO trace data.
     
    +

    Description

    +

    Configure the parameters for SWO mode.

    +

    CMSIS-DAP SWO (Serial Wire Output)

    +

    CMSIS-DAP (CoreSight Debug Access Port) specifies debug protocol and interface for devices with CoreSight Debug and Trace. Currently it only supports debug but not also trace.

    +

    The following extension adds support for trace over SWO (Serial Wire Output).

    +

    SWO add-on is a compatible extension of the existing CMSIS-DAP specification. Existing debugger implementations on PC do not require any modifications for debugging. They only need to be extended in order to support trace.

    +

    The following new commands are added:

    + +

    Format of the new commands is specified below using CMSIS-DAP documentation style. Note: 16-bit values (SHORT) and 32-bit values (WORD) are encoded as little-endian.

    +

    The following existing commands are extended:

    + +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.js new file mode 100644 index 0000000..f64e43f --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__swo__gr.js @@ -0,0 +1,9 @@ +var group___d_a_p__swo__gr = +[ + [ "DAP_SWO_Transport", "group___d_a_p___s_w_o___transport.html", null ], + [ "DAP_SWO_Mode", "group___d_a_p___s_w_o___mode.html", null ], + [ "DAP_SWO_Baudrate", "group___d_a_p___s_w_o___baudrate.html", null ], + [ "DAP_SWO_Control", "group___d_a_p___s_w_o___control.html", null ], + [ "DAP_SWO_Status", "group___d_a_p___s_w_o___status.html", null ], + [ "DAP_SWO_Data", "group___d_a_p___s_w_o___data.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.html b/CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.html new file mode 100644 index 0000000..a440df8 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.html @@ -0,0 +1,157 @@ + + + + + +Transfer Commands +CMSIS-DAP: Transfer Commands + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Transfer Commands
    +
    +
    + +

    Read and Writes to CoreSight registers. +More...

    + + + + + + + + + + + + + + +

    +Content

     DAP_TransferConfigure
     Configure Transfers.
     
     DAP_Transfer
     Read/write single and multiple registers.
     
     DAP_TransferBlock
     Read/Write a block of data from/to a single register.
     
     DAP_TransferAbort
     Abort current Transfer.
     
    +

    Description

    +

    Read and Writes to CoreSight registers.

    +

    The Transfer Commands allow to:

    +
      +
    • Configure the parameters for information exchange with CoreSight registers.
    • +
    • Transfer (read or write) a single data word or a data block with CoreSight registers.
    • +
    • Terminate an active data transfer.
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.js b/CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.js new file mode 100644 index 0000000..2e3537b --- /dev/null +++ b/CMSIS/Documentation/DAP/html/group___d_a_p__transfer__gr.js @@ -0,0 +1,7 @@ +var group___d_a_p__transfer__gr = +[ + [ "DAP_TransferConfigure", "group___d_a_p___transfer_configure.html", null ], + [ "DAP_Transfer", "group___d_a_p___transfer.html", null ], + [ "DAP_TransferBlock", "group___d_a_p___transfer_block.html", null ], + [ "DAP_TransferAbort", "group___d_a_p___transfer_abort.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/index.html b/CMSIS/Documentation/DAP/html/index.html new file mode 100644 index 0000000..d4c08ac --- /dev/null +++ b/CMSIS/Documentation/DAP/html/index.html @@ -0,0 +1,187 @@ + + + + + +Firmware for CoreSight Debug Access Port +CMSIS-DAP: Firmware for CoreSight Debug Access Port + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Firmware for CoreSight Debug Access Port
    +
    +
    +

    CMSIS-DAP is a specification and a implementation of a Firmware that supports access to the CoreSight Debug Access Port (DAP).ARM Cortex processors provide CoreSight Debug and Trace. CMSIS-DAP supports target Devices that contain one or more Cortex processors. A Device provides a Debug Access Port (DAP) typically either with a 5-pin JTAG or with a 2-pin Serial Wired Debug (SWD) interface that connects to a Debug Unit. CMSIS-DAP is the interface firmware for a Debug Unit that connects the Debug Port to USB. Debuggers that execute on a host computer connect via USB and the Debug Unit to the Device which runs the application software.

    +
    +CMSIS_DAP_INTERFACE.png +
    +CMSIS-DAP Overview
    +

    Benefits of CMSIS-DAP

    +
      +
    • Provides a standardized interface for debuggers.
        +
      • Interfaces to many standard debuggers is already available. This includes also ARM DS-5 and Keil MDK-ARM.
      • +
      +
    • +
    • Access to CoreSight registers of all Cortex processor architectures (Cortex-A/R/M).
    • +
    • Connects via 5-pin JTAG or 2-pin Serial Wire Debug (SWD).
    • +
    • Supports multi-core debugging.
    • +
    • Supports Serial Wire Output of Cortex-M devices (new in CMSIS-DAP Version 1.10).
    • +
    • Easy to deploy to Debug Units based on Cortex-M microcontrollers.
    • +
    • Debug Unit may be integrated on an evaluation board.
    • +
    • USB using HID (Human Interface Device) driver class that avoids driver installation on host PC.
    • +
    • Supports time-critical JTAG or SWD command execution (new in CMSIS-DAP Version 1.10).
    • +
    +

    CMSIS-DAP Firmware

    +

    The CMSIS-DAP Firmware is provided as source code and is fully configurable to a new Debug Unit. A source code template and several reference implementations for popular Debug Units are provided. Refer to Firmware Configuration for more information.

    +

    The CMSIS-DAP Software Stack is composed of the following components:

    +
      +
    • CMSIS-DAP Firmware that interfaces to JTAG or SWD Debug pins using standard I/O pins of the Cortex-M device.
    • +
    • CMSIS-Driver USART that connects the UART of the Cortex-M device to the SWO output from the target.
    • +
    • USB Communication Stack that interfaces to the USB Port of the Host Computer using the HID class.
        +
      • The USB Device middleware may require CMSIS-RTOS and a CMSIS-Driver USB.
      • +
      +
    • +
    +
    +CMSIS_DAP_SWStack.png +
    +CMSIS-DAP Software Stack
    +

    In the examples provided the MDK Version 5 USB Communication Stack has been used. However it is possible to use alternative USB stacks instead.

    +

    The CMSIS-DAP Firmware is provided in the following directory structure.

    + + + + + + + + + + + + + +
    Directory Description
    .\CMSIS\DAP\Firmware\Config CMSIS-DAP Firmware configuration
    .\CMSIS\DAP\Firmware\Examples CMSIS-DAP Firmware adapted to various Debug Units
    .\CMSIS\DAP\Firmware\Include CMSIS-DAP Firmware header file
    .\CMSIS\DAP\Firmware\Source CMSIS-DAP Firmware source code
    .\CMSIS\DAP\Firmware\Template Interface Templates for MDK Version 5 middleware
    +

    Debug Access

    +
    Note
    ARM plans to provide the RDDI-DAP Access DLL that connects a debugger to the CMSIS-DAP Firmware. However as the DAP registers are standard in all Cortex devices, the debug access is well understood by the industry.
    +

    Validation

    +

    CMSIS-DAP compliant Debug Units must be validated using the scripts provided in Validate Debug Unit.

    +
    +

    License

    +

    The CMSIS-DAP is provided free of charge by ARM and can be freely distributed as part of Cortex-M processor-based Debug Units that are stand-alone or integrated evaluation boards. used for all Cortex-M based devices. View the LICENCE AGREEMENT for CMSIS-DAP in detail.

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/jquery.js b/CMSIS/Documentation/DAP/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/DAP/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
    +
    +
    Reference
    +
    +
    +
    Here is a list of all modules:
    +
    [detail level 123]
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    oFirmware ConfigurationCMSIS-DAP is designed for Debug Units with Cortex-M microcontroller
    |oDebug Unit ProcessorCMSIS-DAP Firmware runs on Debug Units with a Cortex-M Microcontroller
    |oConfigure I/O Ports and Debug UnitDAP_config.h configures I/O ports and Debug Unit hardware parameters
    ||oCMSIS-DAP Debug Unit InformationProvides definitions about the hardware and configuration of the Debug Unit
    ||oCMSIS-DAP Hardware I/O Pin AccessStandard I/O Pins of the CMSIS-DAP Hardware Debug Port support standard JTAG mode and Serial Wire Debug (SWD) mode
    ||oCMSIS-DAP Hardware Status LEDsCMSIS-DAP Hardware may provide LEDs that indicate the status of the CMSIS-DAP Debug Unit
    ||\CMSIS-DAP InitializationCMSIS-DAP Hardware I/O and LED Pins are initialized with the function DAP_SETUP
    |oConfigure USB PeripheralCMSIS-DAP Firmware uses USB HID as interface to host computer
    |\Flash Program FirmwareThe CMSIS-DAP Firmware is programmed into Flash ROM of a Debug Unit
    oConnect SWO TraceOptional you may add a CMSIS-Driver USART to interface to SWO
    oValidate Debug UnitA CMSIS-DAP conforming Debug Unit must be validated
    oCMSIS-DAP CommandsCommands between Debug Unit and host computer
    |oGeneral CommandsInformation and Control commands for the CMSIS-DAP Debug Unit
    ||oDAP_InfoGet Information about CMSIS-DAP Debug Unit
    ||oDAP_HostStatusSent status information of the debugger to Debug Unit
    ||oDAP_ConnectConnect to Device and selected DAP mode
    ||oDAP_DisconnectDisconnect from active Debug Port
    ||oDAP_WriteABORTWrite ABORT Register
    ||oDAP_DelayWait for specified delay
    ||\DAP_ResetTargetReset Target with Device specific sequence
    |oCommon SWD/JTAG CommandsSet SWD/JTAG clock and control/monitor SWD/JTAG I/O pins
    ||oDAP_SWJ_PinsControl and monitor SWD/JTAG Pins
    ||oDAP_SWJ_ClockSelect SWD/JTAG Clock
    ||\DAP_SWJ_SequenceGenerate SWJ sequence SWDIO/TMS @SWCLK/TCK
    |oSWD CommandsConfigure the parameters for SWD mode
    ||\DAP_SWD_ConfigureConfigure SWD Protocol
    |oSWO CommandsConfigure the parameters for SWO mode
    ||oDAP_SWO_TransportSet SWO transport mode
    ||oDAP_SWO_ModeSet SWO capture mode
    ||oDAP_SWO_BaudrateSet SWO baudrate
    ||oDAP_SWO_ControlControl SWO trace data capture
    ||oDAP_SWO_StatusRead SWO trace status
    ||\DAP_SWO_DataRead SWO trace data
    |oJTAG CommandsDetect and configure the JTAG device chain
    ||oDAP_JTAG_SequenceGenerate JTAG sequence TMS,TDI and capture TDO
    ||oDAP_JTAG_ConfigureConfigure JTAG Chain
    ||\DAP_JTAG_IDCODERead JTAG IDCODE
    |oTransfer CommandsRead and Writes to CoreSight registers
    ||oDAP_TransferConfigureConfigure Transfers
    ||oDAP_TransferRead/write single and multiple registers
    ||oDAP_TransferBlockRead/Write a block of data from/to a single register
    ||\DAP_TransferAbortAbort current Transfer
    |oAtomic CommandsExecute atomic commands
    ||oDAP_ExecuteCommandsExecute multiple DAP commands from a single packet
    ||\DAP_QueueCommandsQueue multiple DAP commands provided in a multiple packets
    |\Response StatusStatus Information in Response Data
    \CMSIS-DAP Vendor CommandsExtend CMSIS-DAP Firmware with commands
    + + + + + + + diff --git a/CMSIS/Documentation/DAP/html/modules.js b/CMSIS/Documentation/DAP/html/modules.js new file mode 100644 index 0000000..4a5ee7b --- /dev/null +++ b/CMSIS/Documentation/DAP/html/modules.js @@ -0,0 +1,8 @@ +var modules = +[ + [ "Firmware Configuration", "group___d_a_p___config__gr.html", "group___d_a_p___config__gr" ], + [ "Connect SWO Trace", "group___d_a_p___u_s_a_r_t__gr.html", null ], + [ "Validate Debug Unit", "group___d_a_p___validate__gr.html", null ], + [ "CMSIS-DAP Commands", "group___d_a_p___commands__gr.html", "group___d_a_p___commands__gr" ], + [ "CMSIS-DAP Vendor Commands", "group___d_a_p___vendor__gr.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DAP/html/nav_f.png b/CMSIS/Documentation/DAP/html/nav_f.png new file mode 100644 index 0000000..a8f400a Binary files /dev/null and b/CMSIS/Documentation/DAP/html/nav_f.png differ diff --git a/CMSIS/Documentation/DAP/html/nav_g.png b/CMSIS/Documentation/DAP/html/nav_g.png new file mode 100644 index 0000000..2093a23 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/nav_g.png differ diff --git a/CMSIS/Documentation/DAP/html/nav_h.png b/CMSIS/Documentation/DAP/html/nav_h.png new file mode 100644 index 0000000..b6c7f01 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/nav_h.png differ diff --git a/CMSIS/Documentation/DAP/html/navtree.css b/CMSIS/Documentation/DAP/html/navtree.css new file mode 100644 index 0000000..8001f82 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 300px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/CMSIS/Documentation/DAP/html/navtree.js b/CMSIS/Documentation/DAP/html/navtree.js new file mode 100644 index 0000000..1293dc6 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/navtree.js @@ -0,0 +1,512 @@ +var NAVTREE = +[ + [ "CMSIS-DAP", "index.html", [ + [ "Firmware for CoreSight Debug Access Port", "index.html", null ], + [ "Revision History of CMSIS-DAP", "rev_hist_dap.html", null ], + [ "Reference", "modules.html", "modules" ] + ] ] +]; + +var NAVTREEINDEX = +[ +"group___d_a_p___commands__gr.html" +]; + +var SYNCONMSG = 'click to disable panel synchronisation'; +var SYNCOFFMSG = 'click to enable panel synchronisation'; +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + if (node.parentNode && node.parentNode.parentNode) { + createIndent(o,domNode,node.parentNode,level+1); + } + var imgNode = document.createElement("img"); + imgNode.width = 16; + imgNode.height = 22; + if (level==0 && node.childrenData) { + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2plastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2pnode.png"; + } + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + domNode.appendChild(imgNode); + } + if (level==0) { + if (node.isLast) { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2plastnode.png"; + } else { + imgNode.src = node.relpath+"ftv2lastnode.png"; + domNode.appendChild(imgNode); + } + } else { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2pnode.png"; + } else { + imgNode.src = node.relpath+"ftv2node.png"; + domNode.appendChild(imgNode); + } + } + } else { + if (node.isLast) { + imgNode.src = node.relpath+"ftv2blank.png"; + } else { + imgNode.src = node.relpath+"ftv2vertline.png"; + } + } + imgNode.border = "0"; +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath($(location).attr('pathname')); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : '#'; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var pos, anchor = $(aname), docContent = $('#doc-content'); + if (anchor.parent().attr('class')=='memItemLeft') { + pos = anchor.parent().position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + window.location.replace(aname); + }); + } + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var anchor = $($(location).attr('hash')); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+ + window.location.hash.substring(1)+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parents().slice(2).prop('tagName')=='TR') { + glowEffect(anchor.parents('div.memitem'),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).show(); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1]; + else hash=''; + } + if (root==NAVTREE[0][1]) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + //root=root.replace(/_source\./,'.'); // source link to doc link + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash')); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + navTo(o,toroot,window.location.hash,relpath); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath($(location).attr('pathname'))+':'+ + $(location).attr('hash').substring(1); + a=$('.item a[class$="'+clslink+'"]'); + } + if (a==null || !$(a).parent().parent().hasClass('selected')){ + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + } + var link=stripPath2($(location).attr('pathname')); + navTo(o,link,$(location).attr('hash'),relpath); + } + }) + + $(window).load(showRoot); +} + diff --git a/CMSIS/Documentation/DAP/html/navtreeindex0.js b/CMSIS/Documentation/DAP/html/navtreeindex0.js new file mode 100644 index 0000000..c820c24 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/navtreeindex0.js @@ -0,0 +1,93 @@ +var NAVTREEINDEX0 = +{ +"group___d_a_p___commands__gr.html":[2,3], +"group___d_a_p___config___debug__gr.html":[2,0,1,0], +"group___d_a_p___config___debug__gr.html#ga03ed6a5aae34f4379ea97435122f83dd":[2,0,1,0,5], +"group___d_a_p___config___debug__gr.html#ga119c70409a24e3a8bb35df07dffeb8c8":[2,0,1,0,8], +"group___d_a_p___config___debug__gr.html#ga213ee3d1501adeca4c9c660072922c7e":[2,0,1,0,10], +"group___d_a_p___config___debug__gr.html#ga3bbd310146b348db48a842ee804a0adf":[2,0,1,0,3], +"group___d_a_p___config___debug__gr.html#ga512016e5f1966a8fd45b3f1a81ba5b8f":[2,0,1,0,0], +"group___d_a_p___config___debug__gr.html#ga5d89633a43ee3296e1754c7392ad856e":[2,0,1,0,9], +"group___d_a_p___config___debug__gr.html#ga792651aa4035a7ad712c6bb201db8a6a":[2,0,1,0,13], +"group___d_a_p___config___debug__gr.html#ga89462514881c12c1508395050ce160eb":[2,0,1,0,1], +"group___d_a_p___config___debug__gr.html#gaa28bb1da2661291634c4a8fb3e227404":[2,0,1,0,6], +"group___d_a_p___config___debug__gr.html#gab29200a0988c7d1454f63661a8450dbf":[2,0,1,0,4], +"group___d_a_p___config___debug__gr.html#gab52710df89c3e3c19de577c638f954ea":[2,0,1,0,2], +"group___d_a_p___config___debug__gr.html#gad19240f209f055db7d70cb5eb2431d31":[2,0,1,0,12], +"group___d_a_p___config___debug__gr.html#gaf0d60b30fb0eef2d249bc89a6e454ab6":[2,0,1,0,11], +"group___d_a_p___config___debug__gr.html#gaf886ab35e52d1ff2935351817786c8af":[2,0,1,0,7], +"group___d_a_p___config___initialization__gr.html":[2,0,1,3], +"group___d_a_p___config___initialization__gr.html#ga18407e5070a3aad09ba3773acffb05cf":[2,0,1,3,0], +"group___d_a_p___config___initialization__gr.html#gac9d308f719319dd892cc8be7459c83f0":[2,0,1,3,1], +"group___d_a_p___config___l_e_ds__gr.html":[2,0,1,2], +"group___d_a_p___config___l_e_ds__gr.html#ga519ba0a5ae485365e01fc2a9df77ce90":[2,0,1,2,0], +"group___d_a_p___config___l_e_ds__gr.html#ga6231ce4a4d4b83fe5a3b290997b8d550":[2,0,1,2,1], +"group___d_a_p___config___port_i_o__gr.html":[2,0,1,1], +"group___d_a_p___config___port_i_o__gr.html#ga197ad2824c91a8ea9ad0132951125217":[2,0,1,1,6], +"group___d_a_p___config___port_i_o__gr.html#ga1fb4b84b48b39bcc28790cb45abb0c59":[2,0,1,1,9], +"group___d_a_p___config___port_i_o__gr.html#ga33c16f83b54b07e2a62bb3423341537e":[2,0,1,1,17], +"group___d_a_p___config___port_i_o__gr.html#ga3fd30f1eb2feb4bb52d3c7e8c373d4d9":[2,0,1,1,10], +"group___d_a_p___config___port_i_o__gr.html#ga4eebf6aa9628de5176632db0458cd234":[2,0,1,1,3], +"group___d_a_p___config___port_i_o__gr.html#ga545a6a01ae522683c32e830683511c17":[2,0,1,1,7], +"group___d_a_p___config___port_i_o__gr.html#ga57bf14c857b0c2d0227f2fd2a588c03b":[2,0,1,1,15], +"group___d_a_p___config___port_i_o__gr.html#ga5e163176ee6bc9925f8f702d27d08f96":[2,0,1,1,8], +"group___d_a_p___config___port_i_o__gr.html#ga6522dd62895ffbb299294ec0b7c1b316":[2,0,1,1,18], +"group___d_a_p___config___port_i_o__gr.html#ga6764592e610237a3e325ebaecba83760":[2,0,1,1,1], +"group___d_a_p___config___port_i_o__gr.html#ga8f34a3b7d1c1ecdf7dbc0c527e16c0e5":[2,0,1,1,16], +"group___d_a_p___config___port_i_o__gr.html#gaa3849d1a7cc9945c05578bc4616f3e63":[2,0,1,1,2], +"group___d_a_p___config___port_i_o__gr.html#gaac4a182db3a1f3a3de04280dccb8d9d3":[2,0,1,1,5], +"group___d_a_p___config___port_i_o__gr.html#gaad5e63cde6ce0b523d66ab4e05f974e7":[2,0,1,1,13], +"group___d_a_p___config___port_i_o__gr.html#gab29c2d8f97388bb6ba336bab41b0ca53":[2,0,1,1,11], +"group___d_a_p___config___port_i_o__gr.html#gab8876acfd193c31fbe5246ca6ba9249e":[2,0,1,1,19], +"group___d_a_p___config___port_i_o__gr.html#gac95e157f51e8073cf740761bf59f09f3":[2,0,1,1,4], +"group___d_a_p___config___port_i_o__gr.html#gad0de1a17d02af9a9959e4031d58b1eca":[2,0,1,1,0], +"group___d_a_p___config___port_i_o__gr.html#gaef0a34cb4eb3882c7ae05b9e1b0b7574":[2,0,1,1,12], +"group___d_a_p___config___port_i_o__gr.html#gaffb848049cb9da42e55731aa40c35429":[2,0,1,1,14], +"group___d_a_p___config__gr.html":[2,0], +"group___d_a_p___config_flash__gr.html":[2,0,3], +"group___d_a_p___config_i_o__gr.html":[2,0,1], +"group___d_a_p___config_m_c_u__gr.html":[2,0,0], +"group___d_a_p___config_u_s_b__gr.html":[2,0,2], +"group___d_a_p___connect.html":[2,3,0,2], +"group___d_a_p___delay.html":[2,3,0,5], +"group___d_a_p___disconnect.html":[2,3,0,3], +"group___d_a_p___execute_commands__gr.html":[2,3,6,0], +"group___d_a_p___host_status.html":[2,3,0,1], +"group___d_a_p___info.html":[2,3,0,0], +"group___d_a_p___j_t_a_g___configure.html":[2,3,4,1], +"group___d_a_p___j_t_a_g___sequence.html":[2,3,4,0], +"group___d_a_p___queue_commands__gr.html":[2,3,6,1], +"group___d_a_p___reset_target.html":[2,3,0,6], +"group___d_a_p___response___status.html":[2,3,7], +"group___d_a_p___s_w_d___configure.html":[2,3,2,0], +"group___d_a_p___s_w_j___clock.html":[2,3,1,1], +"group___d_a_p___s_w_j___pins.html":[2,3,1,0], +"group___d_a_p___s_w_j___sequence.html":[2,3,1,2], +"group___d_a_p___s_w_o___baudrate.html":[2,3,3,2], +"group___d_a_p___s_w_o___control.html":[2,3,3,3], +"group___d_a_p___s_w_o___data.html":[2,3,3,5], +"group___d_a_p___s_w_o___mode.html":[2,3,3,1], +"group___d_a_p___s_w_o___status.html":[2,3,3,4], +"group___d_a_p___s_w_o___transport.html":[2,3,3,0], +"group___d_a_p___transfer.html":[2,3,5,1], +"group___d_a_p___transfer_abort.html":[2,3,5,3], +"group___d_a_p___transfer_block.html":[2,3,5,2], +"group___d_a_p___transfer_configure.html":[2,3,5,0], +"group___d_a_p___u_s_a_r_t__gr.html":[2,1], +"group___d_a_p___validate__gr.html":[2,2], +"group___d_a_p___vendor__gr.html":[2,4], +"group___d_a_p___write_a_b_o_r_t.html":[2,3,0,4], +"group___d_a_p__atomic__gr.html":[2,3,6], +"group___d_a_p__gen_commands__gr.html":[2,3,0], +"group___d_a_p__jtag__gr.html":[2,3,4], +"group___d_a_p__jtag__idcode.html":[2,3,4,2], +"group___d_a_p__swd__gr.html":[2,3,2], +"group___d_a_p__swj__gr.html":[2,3,1], +"group___d_a_p__swo__gr.html":[2,3,3], +"group___d_a_p__transfer__gr.html":[2,3,5], +"index.html":[0], +"index.html":[], +"modules.html":[2], +"pages.html":[], +"rev_hist_dap.html":[1] +}; diff --git a/CMSIS/Documentation/DAP/html/open.png b/CMSIS/Documentation/DAP/html/open.png new file mode 100644 index 0000000..3c4e2e0 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/open.png differ diff --git a/CMSIS/Documentation/DAP/html/pages.html b/CMSIS/Documentation/DAP/html/pages.html new file mode 100644 index 0000000..e647fc8 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/pages.html @@ -0,0 +1,133 @@ + + + + + +Usage and Description +CMSIS-DAP: Usage and Description + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Usage and Description
    +
    +
    +
    Here is a list of all related documentation pages:
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/printComponentTabs.js b/CMSIS/Documentation/DAP/html/printComponentTabs.js new file mode 100644 index 0000000..64d846b --- /dev/null +++ b/CMSIS/Documentation/DAP/html/printComponentTabs.js @@ -0,0 +1,36 @@ +var strgURL = location.pathname; // path of current component + +// constuctor for the array of objects +function tabElement(id, folderName, tabTxt ) { + this.id = id; // elementID as needed in html; + this.folderName = folderName; // folder name of the component + this.tabTxt = tabTxt; // Text displayed as menu on the web + this.currentListItem = '
  • ' + this.tabTxt + '
  • '; + this.listItem = '
  • ' + this.tabTxt + '
  • '; +}; + +// array of objects +var arr = []; + +// fill array + arr.push( new tabElement( "GEN", "/General/html/", "General") ); + arr.push( new tabElement( "CORE", "/Core/html/", "Core") ); + arr.push( new tabElement( "DRV", "/Driver/html/", "Driver") ); + arr.push( new tabElement( "DSP", "/DSP/html/", "DSP") ); + arr.push( new tabElement( "RTOS", "/RTOS/html/", "RTOS API") ); + arr.push( new tabElement( "RTX", "/RTX/html/", "RTX") ); + arr.push( new tabElement( "PACK", "/Pack/html/", "Pack") ); + arr.push( new tabElement( "SVD", "/SVD/html/", "SVD") ); + arr.push( new tabElement( "DAP", "/DAP/html/", "DAP") ); + +// write tabs +// called from the header file. +function writeComponentTabs() { + for ( var i=0; i < arr.length; i++ ) { + if (strgURL.search(arr[i].folderName) > 0) { // if this is the current folder + document.write(arr[i].currentListItem); // then print and hightlight the tab + } else { + document.write(arr[i].listItem); // else, print the tab + } + } +}; diff --git a/CMSIS/Documentation/DAP/html/resize.js b/CMSIS/Documentation/DAP/html/resize.js new file mode 100644 index 0000000..9fe82ba --- /dev/null +++ b/CMSIS/Documentation/DAP/html/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).width(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.height(); + var footerHeight = footer.height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/CMSIS/Documentation/DAP/html/rev_hist_dap.html b/CMSIS/Documentation/DAP/html/rev_hist_dap.html new file mode 100644 index 0000000..6c9d334 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/rev_hist_dap.html @@ -0,0 +1,141 @@ + + + + + +Revision History of CMSIS-DAP +CMSIS-DAP: Revision History of CMSIS-DAP + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DAP +  Version 1.1.0 +
    +
    Interface Firmware for CoreSight Debug Access Port
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Revision History of CMSIS-DAP
    +
    +
    +
    + + + + + + + + + + +
    Version Description
    V1.10 Added: SWO Commands to support Serial Wire Output (SWO) in UART mode
    + Added: Atomic Commands support for executing time critical DAP commands
    V1.00 Version 1.00 was never released; version number skipped.
    V0.02 Renamed DAP_LED to DAP_HostStatus.
    V0.01 Beta Release.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DAP/html/search/all_61.html b/CMSIS/Documentation/DAP/html/search/all_61.html new file mode 100644 index 0000000..a3164d5 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_61.js b/CMSIS/Documentation/DAP/html/search/all_61.js new file mode 100644 index 0000000..823c38c --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['atomic_20commands',['Atomic Commands',['../group___d_a_p__atomic__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_63.html b/CMSIS/Documentation/DAP/html/search/all_63.html new file mode 100644 index 0000000..56b5ad1 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_63.js b/CMSIS/Documentation/DAP/html/search/all_63.js new file mode 100644 index 0000000..28e6e71 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_63.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['cpu_5fclock',['CPU_CLOCK',['../group___d_a_p___config___debug__gr.html#ga512016e5f1966a8fd45b3f1a81ba5b8f',1,'DAP_config.h']]], + ['cmsis_2ddap_20commands',['CMSIS-DAP Commands',['../group___d_a_p___commands__gr.html',1,'']]], + ['cmsis_2ddap_20debug_20unit_20information',['CMSIS-DAP Debug Unit Information',['../group___d_a_p___config___debug__gr.html',1,'']]], + ['cmsis_2ddap_20initialization',['CMSIS-DAP Initialization',['../group___d_a_p___config___initialization__gr.html',1,'']]], + ['cmsis_2ddap_20hardware_20status_20leds',['CMSIS-DAP Hardware Status LEDs',['../group___d_a_p___config___l_e_ds__gr.html',1,'']]], + ['cmsis_2ddap_20hardware_20i_2fo_20pin_20access',['CMSIS-DAP Hardware I/O Pin Access',['../group___d_a_p___config___port_i_o__gr.html',1,'']]], + ['configure_20i_2fo_20ports_20and_20debug_20unit',['Configure I/O Ports and Debug Unit',['../group___d_a_p___config_i_o__gr.html',1,'']]], + ['configure_20usb_20peripheral',['Configure USB Peripheral',['../group___d_a_p___config_u_s_b__gr.html',1,'']]], + ['common_20swd_2fjtag_20commands',['Common SWD/JTAG Commands',['../group___d_a_p__swj__gr.html',1,'']]], + ['connect_20swo_20trace',['Connect SWO Trace',['../group___d_a_p___u_s_a_r_t__gr.html',1,'']]], + ['cmsis_2ddap_20vendor_20commands',['CMSIS-DAP Vendor Commands',['../group___d_a_p___vendor__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_64.html b/CMSIS/Documentation/DAP/html/search/all_64.html new file mode 100644 index 0000000..b53ff08 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_64.js b/CMSIS/Documentation/DAP/html/search/all_64.js new file mode 100644 index 0000000..8d7abdd --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_64.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['debug_20unit_20processor',['Debug Unit Processor',['../group___d_a_p___config_m_c_u__gr.html',1,'']]], + ['dap_5fconnect',['DAP_Connect',['../group___d_a_p___connect.html',1,'']]], + ['dap_5fdefault_5fport',['DAP_DEFAULT_PORT',['../group___d_a_p___config___debug__gr.html#ga89462514881c12c1508395050ce160eb',1,'DAP_config.h']]], + ['dap_5fdefault_5fswj_5fclock',['DAP_DEFAULT_SWJ_CLOCK',['../group___d_a_p___config___debug__gr.html#gab52710df89c3e3c19de577c638f954ea',1,'DAP_config.h']]], + ['dap_5fdelay',['DAP_Delay',['../group___d_a_p___delay.html',1,'']]], + ['dap_5fdisconnect',['DAP_Disconnect',['../group___d_a_p___disconnect.html',1,'']]], + ['dap_5fexecutecommands',['DAP_ExecuteCommands',['../group___d_a_p___execute_commands__gr.html',1,'']]], + ['dap_5fhoststatus',['DAP_HostStatus',['../group___d_a_p___host_status.html',1,'']]], + ['dap_5finfo',['DAP_Info',['../group___d_a_p___info.html',1,'']]], + ['dap_5fjtag',['DAP_JTAG',['../group___d_a_p___config___debug__gr.html#ga3bbd310146b348db48a842ee804a0adf',1,'DAP_config.h']]], + ['dap_5fjtag_5fconfigure',['DAP_JTAG_Configure',['../group___d_a_p___j_t_a_g___configure.html',1,'']]], + ['dap_5fjtag_5fdev_5fcnt',['DAP_JTAG_DEV_CNT',['../group___d_a_p___config___debug__gr.html#gab29200a0988c7d1454f63661a8450dbf',1,'DAP_config.h']]], + ['dap_5fjtag_5fidcode',['DAP_JTAG_IDCODE',['../group___d_a_p__jtag__idcode.html',1,'']]], + ['dap_5fjtag_5fsequence',['DAP_JTAG_Sequence',['../group___d_a_p___j_t_a_g___sequence.html',1,'']]], + ['dap_5fpacket_5fcount',['DAP_PACKET_COUNT',['../group___d_a_p___config___debug__gr.html#ga03ed6a5aae34f4379ea97435122f83dd',1,'DAP_config.h']]], + ['dap_5fpacket_5fsize',['DAP_PACKET_SIZE',['../group___d_a_p___config___debug__gr.html#gaa28bb1da2661291634c4a8fb3e227404',1,'DAP_config.h']]], + ['dap_5fqueuecommands',['DAP_QueueCommands',['../group___d_a_p___queue_commands__gr.html',1,'']]], + ['dap_5fresettarget',['DAP_ResetTarget',['../group___d_a_p___reset_target.html',1,'']]], + ['dap_5fsetup',['DAP_SETUP',['../group___d_a_p___config___initialization__gr.html#ga18407e5070a3aad09ba3773acffb05cf',1,'DAP_config.h']]], + ['dap_5fswd',['DAP_SWD',['../group___d_a_p___config___debug__gr.html#gaf886ab35e52d1ff2935351817786c8af',1,'DAP_config.h']]], + ['dap_5fswd_5fconfigure',['DAP_SWD_Configure',['../group___d_a_p___s_w_d___configure.html',1,'']]], + ['dap_5fswj_5fclock',['DAP_SWJ_Clock',['../group___d_a_p___s_w_j___clock.html',1,'']]], + ['dap_5fswj_5fpins',['DAP_SWJ_Pins',['../group___d_a_p___s_w_j___pins.html',1,'']]], + ['dap_5fswj_5fsequence',['DAP_SWJ_Sequence',['../group___d_a_p___s_w_j___sequence.html',1,'']]], + ['dap_5fswo_5fbaudrate',['DAP_SWO_Baudrate',['../group___d_a_p___s_w_o___baudrate.html',1,'']]], + ['dap_5fswo_5fcontrol',['DAP_SWO_Control',['../group___d_a_p___s_w_o___control.html',1,'']]], + ['dap_5fswo_5fdata',['DAP_SWO_Data',['../group___d_a_p___s_w_o___data.html',1,'']]], + ['dap_5fswo_5fmode',['DAP_SWO_Mode',['../group___d_a_p___s_w_o___mode.html',1,'']]], + ['dap_5fswo_5fstatus',['DAP_SWO_Status',['../group___d_a_p___s_w_o___status.html',1,'']]], + ['dap_5fswo_5ftransport',['DAP_SWO_Transport',['../group___d_a_p___s_w_o___transport.html',1,'']]], + ['dap_5ftransfer',['DAP_Transfer',['../group___d_a_p___transfer.html',1,'']]], + ['dap_5ftransferabort',['DAP_TransferAbort',['../group___d_a_p___transfer_abort.html',1,'']]], + ['dap_5ftransferblock',['DAP_TransferBlock',['../group___d_a_p___transfer_block.html',1,'']]], + ['dap_5ftransferconfigure',['DAP_TransferConfigure',['../group___d_a_p___transfer_configure.html',1,'']]], + ['dap_5fwriteabort',['DAP_WriteABORT',['../group___d_a_p___write_a_b_o_r_t.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_66.html b/CMSIS/Documentation/DAP/html/search/all_66.html new file mode 100644 index 0000000..3d1f8b3 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_66.js b/CMSIS/Documentation/DAP/html/search/all_66.js new file mode 100644 index 0000000..d387669 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_66.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['firmware_20configuration',['Firmware Configuration',['../group___d_a_p___config__gr.html',1,'']]], + ['flash_20program_20firmware',['Flash Program Firmware',['../group___d_a_p___config_flash__gr.html',1,'']]], + ['firmware_20for_20coresight_20debug_20access_20port',['Firmware for CoreSight Debug Access Port',['../index.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_67.html b/CMSIS/Documentation/DAP/html/search/all_67.html new file mode 100644 index 0000000..41a459a --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_67.js b/CMSIS/Documentation/DAP/html/search/all_67.js new file mode 100644 index 0000000..5c2c27e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_67.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['general_20commands',['General Commands',['../group___d_a_p__gen_commands__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_69.html b/CMSIS/Documentation/DAP/html/search/all_69.html new file mode 100644 index 0000000..1a00b55 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_69.js b/CMSIS/Documentation/DAP/html/search/all_69.js new file mode 100644 index 0000000..de22ed2 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_69.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['io_5fport_5fwrite_5fcycles',['IO_PORT_WRITE_CYCLES',['../group___d_a_p___config___debug__gr.html#ga119c70409a24e3a8bb35df07dffeb8c8',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_6a.html b/CMSIS/Documentation/DAP/html/search/all_6a.html new file mode 100644 index 0000000..969ef1e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_6a.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_6a.js b/CMSIS/Documentation/DAP/html/search/all_6a.js new file mode 100644 index 0000000..4f60a84 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_6a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['jtag_20commands',['JTAG Commands',['../group___d_a_p__jtag__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_6c.html b/CMSIS/Documentation/DAP/html/search/all_6c.html new file mode 100644 index 0000000..f6383cc --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_6c.js b/CMSIS/Documentation/DAP/html/search/all_6c.js new file mode 100644 index 0000000..b00ea2e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_6c.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['led_5fconnected_5fout',['LED_CONNECTED_OUT',['../group___d_a_p___config___l_e_ds__gr.html#ga519ba0a5ae485365e01fc2a9df77ce90',1,'DAP_config.h']]], + ['led_5frunning_5fout',['LED_RUNNING_OUT',['../group___d_a_p___config___l_e_ds__gr.html#ga6231ce4a4d4b83fe5a3b290997b8d550',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_70.html b/CMSIS/Documentation/DAP/html/search/all_70.html new file mode 100644 index 0000000..0340151 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_70.js b/CMSIS/Documentation/DAP/html/search/all_70.js new file mode 100644 index 0000000..85ed724 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_70.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['pin_5fnreset_5fin',['PIN_nRESET_IN',['../group___d_a_p___config___port_i_o__gr.html#gad0de1a17d02af9a9959e4031d58b1eca',1,'DAP_config.h']]], + ['pin_5fnreset_5fout',['PIN_nRESET_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga6764592e610237a3e325ebaecba83760',1,'DAP_config.h']]], + ['pin_5fntrst_5fin',['PIN_nTRST_IN',['../group___d_a_p___config___port_i_o__gr.html#gaa3849d1a7cc9945c05578bc4616f3e63',1,'DAP_config.h']]], + ['pin_5fntrst_5fout',['PIN_nTRST_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga4eebf6aa9628de5176632db0458cd234',1,'DAP_config.h']]], + ['pin_5fswclk_5ftck_5fclr',['PIN_SWCLK_TCK_CLR',['../group___d_a_p___config___port_i_o__gr.html#gac95e157f51e8073cf740761bf59f09f3',1,'DAP_config.h']]], + ['pin_5fswclk_5ftck_5fin',['PIN_SWCLK_TCK_IN',['../group___d_a_p___config___port_i_o__gr.html#gaac4a182db3a1f3a3de04280dccb8d9d3',1,'DAP_config.h']]], + ['pin_5fswclk_5ftck_5fset',['PIN_SWCLK_TCK_SET',['../group___d_a_p___config___port_i_o__gr.html#ga197ad2824c91a8ea9ad0132951125217',1,'DAP_config.h']]], + ['pin_5fswdio_5fin',['PIN_SWDIO_IN',['../group___d_a_p___config___port_i_o__gr.html#ga545a6a01ae522683c32e830683511c17',1,'DAP_config.h']]], + ['pin_5fswdio_5fout',['PIN_SWDIO_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga5e163176ee6bc9925f8f702d27d08f96',1,'DAP_config.h']]], + ['pin_5fswdio_5fout_5fdisable',['PIN_SWDIO_OUT_DISABLE',['../group___d_a_p___config___port_i_o__gr.html#ga1fb4b84b48b39bcc28790cb45abb0c59',1,'DAP_config.h']]], + ['pin_5fswdio_5fout_5fenable',['PIN_SWDIO_OUT_ENABLE',['../group___d_a_p___config___port_i_o__gr.html#ga3fd30f1eb2feb4bb52d3c7e8c373d4d9',1,'DAP_config.h']]], + ['pin_5fswdio_5ftms_5fclr',['PIN_SWDIO_TMS_CLR',['../group___d_a_p___config___port_i_o__gr.html#gab29c2d8f97388bb6ba336bab41b0ca53',1,'DAP_config.h']]], + ['pin_5fswdio_5ftms_5fin',['PIN_SWDIO_TMS_IN',['../group___d_a_p___config___port_i_o__gr.html#gaef0a34cb4eb3882c7ae05b9e1b0b7574',1,'DAP_config.h']]], + ['pin_5fswdio_5ftms_5fset',['PIN_SWDIO_TMS_SET',['../group___d_a_p___config___port_i_o__gr.html#gaad5e63cde6ce0b523d66ab4e05f974e7',1,'DAP_config.h']]], + ['pin_5ftdi_5fin',['PIN_TDI_IN',['../group___d_a_p___config___port_i_o__gr.html#gaffb848049cb9da42e55731aa40c35429',1,'DAP_config.h']]], + ['pin_5ftdi_5fout',['PIN_TDI_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga57bf14c857b0c2d0227f2fd2a588c03b',1,'DAP_config.h']]], + ['pin_5ftdo_5fin',['PIN_TDO_IN',['../group___d_a_p___config___port_i_o__gr.html#ga8f34a3b7d1c1ecdf7dbc0c527e16c0e5',1,'DAP_config.h']]], + ['port_5fjtag_5fsetup',['PORT_JTAG_SETUP',['../group___d_a_p___config___port_i_o__gr.html#ga33c16f83b54b07e2a62bb3423341537e',1,'DAP_config.h']]], + ['port_5foff',['PORT_OFF',['../group___d_a_p___config___port_i_o__gr.html#ga6522dd62895ffbb299294ec0b7c1b316',1,'DAP_config.h']]], + ['port_5fswd_5fsetup',['PORT_SWD_SETUP',['../group___d_a_p___config___port_i_o__gr.html#gab8876acfd193c31fbe5246ca6ba9249e',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_72.html b/CMSIS/Documentation/DAP/html/search/all_72.html new file mode 100644 index 0000000..0ab18d6 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_72.js b/CMSIS/Documentation/DAP/html/search/all_72.js new file mode 100644 index 0000000..ff52133 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_72.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['response_20status',['Response Status',['../group___d_a_p___response___status.html',1,'']]], + ['reset_5ftarget',['RESET_TARGET',['../group___d_a_p___config___initialization__gr.html#gac9d308f719319dd892cc8be7459c83f0',1,'DAP_config.h']]], + ['revision_20history_20of_20cmsis_2ddap',['Revision History of CMSIS-DAP',['../rev_hist_dap.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_73.html b/CMSIS/Documentation/DAP/html/search/all_73.html new file mode 100644 index 0000000..1ec8f17 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_73.js b/CMSIS/Documentation/DAP/html/search/all_73.js new file mode 100644 index 0000000..6ff8123 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_73.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['swd_20commands',['SWD Commands',['../group___d_a_p__swd__gr.html',1,'']]], + ['swo_20commands',['SWO Commands',['../group___d_a_p__swo__gr.html',1,'']]], + ['swo_5fbuffer_5fsize',['SWO_BUFFER_SIZE',['../group___d_a_p___config___debug__gr.html#ga5d89633a43ee3296e1754c7392ad856e',1,'DAP_config.h']]], + ['swo_5fmanchester',['SWO_MANCHESTER',['../group___d_a_p___config___debug__gr.html#ga213ee3d1501adeca4c9c660072922c7e',1,'DAP_config.h']]], + ['swo_5fuart',['SWO_UART',['../group___d_a_p___config___debug__gr.html#gaf0d60b30fb0eef2d249bc89a6e454ab6',1,'DAP_config.h']]], + ['swo_5fuart_5fmax_5fbaudrate',['SWO_UART_MAX_BAUDRATE',['../group___d_a_p___config___debug__gr.html#gad19240f209f055db7d70cb5eb2431d31',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_74.html b/CMSIS/Documentation/DAP/html/search/all_74.html new file mode 100644 index 0000000..fdc6589 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_74.js b/CMSIS/Documentation/DAP/html/search/all_74.js new file mode 100644 index 0000000..0174568 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_74.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['transfer_20commands',['Transfer Commands',['../group___d_a_p__transfer__gr.html',1,'']]], + ['target_5fdevice_5ffixed',['TARGET_DEVICE_FIXED',['../group___d_a_p___config___debug__gr.html#ga792651aa4035a7ad712c6bb201db8a6a',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/all_76.html b/CMSIS/Documentation/DAP/html/search/all_76.html new file mode 100644 index 0000000..0ff5edd --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/all_76.js b/CMSIS/Documentation/DAP/html/search/all_76.js new file mode 100644 index 0000000..42dd9ab --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/all_76.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['validate_20debug_20unit',['Validate Debug Unit',['../group___d_a_p___validate__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/close.png b/CMSIS/Documentation/DAP/html/search/close.png new file mode 100644 index 0000000..9342d3d Binary files /dev/null and b/CMSIS/Documentation/DAP/html/search/close.png differ diff --git a/CMSIS/Documentation/DAP/html/search/functions_64.html b/CMSIS/Documentation/DAP/html/search/functions_64.html new file mode 100644 index 0000000..d8b6394 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/functions_64.js b/CMSIS/Documentation/DAP/html/search/functions_64.js new file mode 100644 index 0000000..d738eeb --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['dap_5fsetup',['DAP_SETUP',['../group___d_a_p___config___initialization__gr.html#ga18407e5070a3aad09ba3773acffb05cf',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/functions_6c.html b/CMSIS/Documentation/DAP/html/search/functions_6c.html new file mode 100644 index 0000000..da371cf --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/functions_6c.js b/CMSIS/Documentation/DAP/html/search/functions_6c.js new file mode 100644 index 0000000..b00ea2e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_6c.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['led_5fconnected_5fout',['LED_CONNECTED_OUT',['../group___d_a_p___config___l_e_ds__gr.html#ga519ba0a5ae485365e01fc2a9df77ce90',1,'DAP_config.h']]], + ['led_5frunning_5fout',['LED_RUNNING_OUT',['../group___d_a_p___config___l_e_ds__gr.html#ga6231ce4a4d4b83fe5a3b290997b8d550',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/functions_70.html b/CMSIS/Documentation/DAP/html/search/functions_70.html new file mode 100644 index 0000000..c62125e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/functions_70.js b/CMSIS/Documentation/DAP/html/search/functions_70.js new file mode 100644 index 0000000..85ed724 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_70.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['pin_5fnreset_5fin',['PIN_nRESET_IN',['../group___d_a_p___config___port_i_o__gr.html#gad0de1a17d02af9a9959e4031d58b1eca',1,'DAP_config.h']]], + ['pin_5fnreset_5fout',['PIN_nRESET_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga6764592e610237a3e325ebaecba83760',1,'DAP_config.h']]], + ['pin_5fntrst_5fin',['PIN_nTRST_IN',['../group___d_a_p___config___port_i_o__gr.html#gaa3849d1a7cc9945c05578bc4616f3e63',1,'DAP_config.h']]], + ['pin_5fntrst_5fout',['PIN_nTRST_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga4eebf6aa9628de5176632db0458cd234',1,'DAP_config.h']]], + ['pin_5fswclk_5ftck_5fclr',['PIN_SWCLK_TCK_CLR',['../group___d_a_p___config___port_i_o__gr.html#gac95e157f51e8073cf740761bf59f09f3',1,'DAP_config.h']]], + ['pin_5fswclk_5ftck_5fin',['PIN_SWCLK_TCK_IN',['../group___d_a_p___config___port_i_o__gr.html#gaac4a182db3a1f3a3de04280dccb8d9d3',1,'DAP_config.h']]], + ['pin_5fswclk_5ftck_5fset',['PIN_SWCLK_TCK_SET',['../group___d_a_p___config___port_i_o__gr.html#ga197ad2824c91a8ea9ad0132951125217',1,'DAP_config.h']]], + ['pin_5fswdio_5fin',['PIN_SWDIO_IN',['../group___d_a_p___config___port_i_o__gr.html#ga545a6a01ae522683c32e830683511c17',1,'DAP_config.h']]], + ['pin_5fswdio_5fout',['PIN_SWDIO_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga5e163176ee6bc9925f8f702d27d08f96',1,'DAP_config.h']]], + ['pin_5fswdio_5fout_5fdisable',['PIN_SWDIO_OUT_DISABLE',['../group___d_a_p___config___port_i_o__gr.html#ga1fb4b84b48b39bcc28790cb45abb0c59',1,'DAP_config.h']]], + ['pin_5fswdio_5fout_5fenable',['PIN_SWDIO_OUT_ENABLE',['../group___d_a_p___config___port_i_o__gr.html#ga3fd30f1eb2feb4bb52d3c7e8c373d4d9',1,'DAP_config.h']]], + ['pin_5fswdio_5ftms_5fclr',['PIN_SWDIO_TMS_CLR',['../group___d_a_p___config___port_i_o__gr.html#gab29c2d8f97388bb6ba336bab41b0ca53',1,'DAP_config.h']]], + ['pin_5fswdio_5ftms_5fin',['PIN_SWDIO_TMS_IN',['../group___d_a_p___config___port_i_o__gr.html#gaef0a34cb4eb3882c7ae05b9e1b0b7574',1,'DAP_config.h']]], + ['pin_5fswdio_5ftms_5fset',['PIN_SWDIO_TMS_SET',['../group___d_a_p___config___port_i_o__gr.html#gaad5e63cde6ce0b523d66ab4e05f974e7',1,'DAP_config.h']]], + ['pin_5ftdi_5fin',['PIN_TDI_IN',['../group___d_a_p___config___port_i_o__gr.html#gaffb848049cb9da42e55731aa40c35429',1,'DAP_config.h']]], + ['pin_5ftdi_5fout',['PIN_TDI_OUT',['../group___d_a_p___config___port_i_o__gr.html#ga57bf14c857b0c2d0227f2fd2a588c03b',1,'DAP_config.h']]], + ['pin_5ftdo_5fin',['PIN_TDO_IN',['../group___d_a_p___config___port_i_o__gr.html#ga8f34a3b7d1c1ecdf7dbc0c527e16c0e5',1,'DAP_config.h']]], + ['port_5fjtag_5fsetup',['PORT_JTAG_SETUP',['../group___d_a_p___config___port_i_o__gr.html#ga33c16f83b54b07e2a62bb3423341537e',1,'DAP_config.h']]], + ['port_5foff',['PORT_OFF',['../group___d_a_p___config___port_i_o__gr.html#ga6522dd62895ffbb299294ec0b7c1b316',1,'DAP_config.h']]], + ['port_5fswd_5fsetup',['PORT_SWD_SETUP',['../group___d_a_p___config___port_i_o__gr.html#gab8876acfd193c31fbe5246ca6ba9249e',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/functions_72.html b/CMSIS/Documentation/DAP/html/search/functions_72.html new file mode 100644 index 0000000..a4336f7 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/functions_72.js b/CMSIS/Documentation/DAP/html/search/functions_72.js new file mode 100644 index 0000000..4c372f1 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/functions_72.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['reset_5ftarget',['RESET_TARGET',['../group___d_a_p___config___initialization__gr.html#gac9d308f719319dd892cc8be7459c83f0',1,'DAP_config.h']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_61.html b/CMSIS/Documentation/DAP/html/search/groups_61.html new file mode 100644 index 0000000..260ea61 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_61.js b/CMSIS/Documentation/DAP/html/search/groups_61.js new file mode 100644 index 0000000..823c38c --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['atomic_20commands',['Atomic Commands',['../group___d_a_p__atomic__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_63.html b/CMSIS/Documentation/DAP/html/search/groups_63.html new file mode 100644 index 0000000..dd75625 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_63.js b/CMSIS/Documentation/DAP/html/search/groups_63.js new file mode 100644 index 0000000..fa14482 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_63.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['cmsis_2ddap_20commands',['CMSIS-DAP Commands',['../group___d_a_p___commands__gr.html',1,'']]], + ['cmsis_2ddap_20debug_20unit_20information',['CMSIS-DAP Debug Unit Information',['../group___d_a_p___config___debug__gr.html',1,'']]], + ['cmsis_2ddap_20initialization',['CMSIS-DAP Initialization',['../group___d_a_p___config___initialization__gr.html',1,'']]], + ['cmsis_2ddap_20hardware_20status_20leds',['CMSIS-DAP Hardware Status LEDs',['../group___d_a_p___config___l_e_ds__gr.html',1,'']]], + ['cmsis_2ddap_20hardware_20i_2fo_20pin_20access',['CMSIS-DAP Hardware I/O Pin Access',['../group___d_a_p___config___port_i_o__gr.html',1,'']]], + ['configure_20i_2fo_20ports_20and_20debug_20unit',['Configure I/O Ports and Debug Unit',['../group___d_a_p___config_i_o__gr.html',1,'']]], + ['configure_20usb_20peripheral',['Configure USB Peripheral',['../group___d_a_p___config_u_s_b__gr.html',1,'']]], + ['common_20swd_2fjtag_20commands',['Common SWD/JTAG Commands',['../group___d_a_p__swj__gr.html',1,'']]], + ['connect_20swo_20trace',['Connect SWO Trace',['../group___d_a_p___u_s_a_r_t__gr.html',1,'']]], + ['cmsis_2ddap_20vendor_20commands',['CMSIS-DAP Vendor Commands',['../group___d_a_p___vendor__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_64.html b/CMSIS/Documentation/DAP/html/search/groups_64.html new file mode 100644 index 0000000..ab9c76f --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_64.js b/CMSIS/Documentation/DAP/html/search/groups_64.js new file mode 100644 index 0000000..c547f0d --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_64.js @@ -0,0 +1,30 @@ +var searchData= +[ + ['debug_20unit_20processor',['Debug Unit Processor',['../group___d_a_p___config_m_c_u__gr.html',1,'']]], + ['dap_5fconnect',['DAP_Connect',['../group___d_a_p___connect.html',1,'']]], + ['dap_5fdelay',['DAP_Delay',['../group___d_a_p___delay.html',1,'']]], + ['dap_5fdisconnect',['DAP_Disconnect',['../group___d_a_p___disconnect.html',1,'']]], + ['dap_5fexecutecommands',['DAP_ExecuteCommands',['../group___d_a_p___execute_commands__gr.html',1,'']]], + ['dap_5fhoststatus',['DAP_HostStatus',['../group___d_a_p___host_status.html',1,'']]], + ['dap_5finfo',['DAP_Info',['../group___d_a_p___info.html',1,'']]], + ['dap_5fjtag_5fconfigure',['DAP_JTAG_Configure',['../group___d_a_p___j_t_a_g___configure.html',1,'']]], + ['dap_5fjtag_5fidcode',['DAP_JTAG_IDCODE',['../group___d_a_p__jtag__idcode.html',1,'']]], + ['dap_5fjtag_5fsequence',['DAP_JTAG_Sequence',['../group___d_a_p___j_t_a_g___sequence.html',1,'']]], + ['dap_5fqueuecommands',['DAP_QueueCommands',['../group___d_a_p___queue_commands__gr.html',1,'']]], + ['dap_5fresettarget',['DAP_ResetTarget',['../group___d_a_p___reset_target.html',1,'']]], + ['dap_5fswd_5fconfigure',['DAP_SWD_Configure',['../group___d_a_p___s_w_d___configure.html',1,'']]], + ['dap_5fswj_5fclock',['DAP_SWJ_Clock',['../group___d_a_p___s_w_j___clock.html',1,'']]], + ['dap_5fswj_5fpins',['DAP_SWJ_Pins',['../group___d_a_p___s_w_j___pins.html',1,'']]], + ['dap_5fswj_5fsequence',['DAP_SWJ_Sequence',['../group___d_a_p___s_w_j___sequence.html',1,'']]], + ['dap_5fswo_5fbaudrate',['DAP_SWO_Baudrate',['../group___d_a_p___s_w_o___baudrate.html',1,'']]], + ['dap_5fswo_5fcontrol',['DAP_SWO_Control',['../group___d_a_p___s_w_o___control.html',1,'']]], + ['dap_5fswo_5fdata',['DAP_SWO_Data',['../group___d_a_p___s_w_o___data.html',1,'']]], + ['dap_5fswo_5fmode',['DAP_SWO_Mode',['../group___d_a_p___s_w_o___mode.html',1,'']]], + ['dap_5fswo_5fstatus',['DAP_SWO_Status',['../group___d_a_p___s_w_o___status.html',1,'']]], + ['dap_5fswo_5ftransport',['DAP_SWO_Transport',['../group___d_a_p___s_w_o___transport.html',1,'']]], + ['dap_5ftransfer',['DAP_Transfer',['../group___d_a_p___transfer.html',1,'']]], + ['dap_5ftransferabort',['DAP_TransferAbort',['../group___d_a_p___transfer_abort.html',1,'']]], + ['dap_5ftransferblock',['DAP_TransferBlock',['../group___d_a_p___transfer_block.html',1,'']]], + ['dap_5ftransferconfigure',['DAP_TransferConfigure',['../group___d_a_p___transfer_configure.html',1,'']]], + ['dap_5fwriteabort',['DAP_WriteABORT',['../group___d_a_p___write_a_b_o_r_t.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_66.html b/CMSIS/Documentation/DAP/html/search/groups_66.html new file mode 100644 index 0000000..b1879e4 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_66.js b/CMSIS/Documentation/DAP/html/search/groups_66.js new file mode 100644 index 0000000..fa7b8a8 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_66.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['firmware_20configuration',['Firmware Configuration',['../group___d_a_p___config__gr.html',1,'']]], + ['flash_20program_20firmware',['Flash Program Firmware',['../group___d_a_p___config_flash__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_67.html b/CMSIS/Documentation/DAP/html/search/groups_67.html new file mode 100644 index 0000000..4fc9422 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_67.js b/CMSIS/Documentation/DAP/html/search/groups_67.js new file mode 100644 index 0000000..5c2c27e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_67.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['general_20commands',['General Commands',['../group___d_a_p__gen_commands__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_6a.html b/CMSIS/Documentation/DAP/html/search/groups_6a.html new file mode 100644 index 0000000..3ee7f86 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_6a.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_6a.js b/CMSIS/Documentation/DAP/html/search/groups_6a.js new file mode 100644 index 0000000..4f60a84 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_6a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['jtag_20commands',['JTAG Commands',['../group___d_a_p__jtag__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_72.html b/CMSIS/Documentation/DAP/html/search/groups_72.html new file mode 100644 index 0000000..a4430da --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_72.js b/CMSIS/Documentation/DAP/html/search/groups_72.js new file mode 100644 index 0000000..8e8d167 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_72.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['response_20status',['Response Status',['../group___d_a_p___response___status.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_73.html b/CMSIS/Documentation/DAP/html/search/groups_73.html new file mode 100644 index 0000000..feab00e --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_73.js b/CMSIS/Documentation/DAP/html/search/groups_73.js new file mode 100644 index 0000000..86c7de8 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_73.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['swd_20commands',['SWD Commands',['../group___d_a_p__swd__gr.html',1,'']]], + ['swo_20commands',['SWO Commands',['../group___d_a_p__swo__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_74.html b/CMSIS/Documentation/DAP/html/search/groups_74.html new file mode 100644 index 0000000..315d58c --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_74.js b/CMSIS/Documentation/DAP/html/search/groups_74.js new file mode 100644 index 0000000..ced3a5b --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['transfer_20commands',['Transfer Commands',['../group___d_a_p__transfer__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/groups_76.html b/CMSIS/Documentation/DAP/html/search/groups_76.html new file mode 100644 index 0000000..881bf59 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/groups_76.js b/CMSIS/Documentation/DAP/html/search/groups_76.js new file mode 100644 index 0000000..42dd9ab --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/groups_76.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['validate_20debug_20unit',['Validate Debug Unit',['../group___d_a_p___validate__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/mag_sel.png b/CMSIS/Documentation/DAP/html/search/mag_sel.png new file mode 100644 index 0000000..81f6040 Binary files /dev/null and b/CMSIS/Documentation/DAP/html/search/mag_sel.png differ diff --git a/CMSIS/Documentation/DAP/html/search/nomatches.html b/CMSIS/Documentation/DAP/html/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/pages_66.html b/CMSIS/Documentation/DAP/html/search/pages_66.html new file mode 100644 index 0000000..4051434 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/pages_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/pages_66.js b/CMSIS/Documentation/DAP/html/search/pages_66.js new file mode 100644 index 0000000..84f63e3 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/pages_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['firmware_20for_20coresight_20debug_20access_20port',['Firmware for CoreSight Debug Access Port',['../index.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/pages_72.html b/CMSIS/Documentation/DAP/html/search/pages_72.html new file mode 100644 index 0000000..ee0d002 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/pages_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DAP/html/search/pages_72.js b/CMSIS/Documentation/DAP/html/search/pages_72.js new file mode 100644 index 0000000..529787f --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/pages_72.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['revision_20history_20of_20cmsis_2ddap',['Revision History of CMSIS-DAP',['../rev_hist_dap.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DAP/html/search/search.css b/CMSIS/Documentation/DAP/html/search/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/DAP/html/search/search.js b/CMSIS/Documentation/DAP/html/search/search.js new file mode 100644 index 0000000..d5c42e6 --- /dev/null +++ b/CMSIS/Documentation/DAP/html/search/search.js @@ -0,0 +1,801 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101101101101000101110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000001000101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101101100100000001110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "functions", + 2: "groups", + 3: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + +arm_class_marks_example_f32.c File Reference +CMSIS-DSP: arm_class_marks_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    ARM/arm_class_marks_example_f32.c File Reference
    +
    +
    + + + + + + + + + + +

    +Macros

    #define USE_STATIC_INIT
     
    #define TEST_LENGTH_SAMPLES
     
    #define NUMSTUDENTS
     
    #define NUMSUBJECTS
     
    + + + +

    +Functions

    int32_t main ()
     
    + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    const float32_t testMarks_f32 [TEST_LENGTH_SAMPLES]
     
    const float32_t testUnity_f32 [4]
     
    static float32_t testOutput [TEST_LENGTH_SAMPLES]
     
    uint32_t numStudents
     
    uint32_t numSubjects
     
    float32_t max_marks
     
    float32_t min_marks
     
    float32_t mean
     
    float32_t std
     
    float32_t var
     
    uint32_t student_num
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define NUMSTUDENTS
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define NUMSUBJECTS
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + + + +
    +
    + + + + +
    #define USE_STATIC_INIT
    +
    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t max_marks
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t mean
    +
    +
    + +
    +
    + + + + +
    float32_t min_marks
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    uint32_t numStudents
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    uint32_t numSubjects
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t std
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    uint32_t student_num
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    const float32_t testMarks_f32[TEST_LENGTH_SAMPLES]
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + + + +
    +
    + + + + +
    const float32_t testUnity_f32[4]
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t var
    +
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    Referenced by arm_std_f32(), and main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_a_r_m_2arm__convolution__example__f32_8c.html b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__convolution__example__f32_8c.html new file mode 100644 index 0000000..9b30514 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__convolution__example__f32_8c.html @@ -0,0 +1,385 @@ + + + + + +arm_convolution_example_f32.c File Reference +CMSIS-DSP: arm_convolution_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    ARM/arm_convolution_example_f32.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define MAX_BLOCKSIZE
     
    #define DELTA
     
    #define SNR_THRESHOLD
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    float32_t Ak [MAX_BLOCKSIZE]
     
    float32_t Bk [MAX_BLOCKSIZE]
     
    float32_t AxB [MAX_BLOCKSIZE *2]
     
    float32_t testInputA_f32 [64]
     
    float32_t testInputB_f32 [64]
     
    const float testRefOutput_f32 [127]
     
    uint32_t srcALen
     
    uint32_t srcBLen
     
    uint32_t outLen
     
    float32_t snr
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define DELTA
    +
    +
    + +
    +
    + + + + +
    #define MAX_BLOCKSIZE
    +
    +
    + +
    +
    + + + + +
    #define SNR_THRESHOLD
    +
    +
    Examples:
    arm_convolution_example_f32.c, and arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t Ak[MAX_BLOCKSIZE]
    +
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t AxB[MAX_BLOCKSIZE *2]
    +
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t Bk[MAX_BLOCKSIZE]
    +
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    uint32_t outLen
    +
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + + + + + + + +
    +
    + + + + +
    float32_t testInputA_f32[64]
    +
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testInputB_f32[64]
    +
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    const float testRefOutput_f32[127]
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_a_r_m_2arm__dotproduct__example__f32_8c.html b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__dotproduct__example__f32_8c.html new file mode 100644 index 0000000..76b279f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__dotproduct__example__f32_8c.html @@ -0,0 +1,297 @@ + + + + + +arm_dotproduct_example_f32.c File Reference +CMSIS-DSP: arm_dotproduct_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    ARM/arm_dotproduct_example_f32.c File Reference
    +
    +
    + + + + + + +

    +Macros

    #define MAX_BLOCKSIZE
     
    #define DELTA
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + +

    +Variables

    float32_t srcA_buf_f32 [MAX_BLOCKSIZE]
     
    float32_t srcB_buf_f32 [MAX_BLOCKSIZE]
     
    float32_t refDotProdOut
     
    float32_t multOutput [MAX_BLOCKSIZE]
     
    float32_t testOutput
     
    arm_status status
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define DELTA
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define MAX_BLOCKSIZE
    +
    + +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    int32_t main (void )
    +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t multOutput[MAX_BLOCKSIZE]
    +
    +
    Examples:
    arm_dotproduct_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t refDotProdOut
    +
    +
    Examples:
    arm_dotproduct_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t srcA_buf_f32[MAX_BLOCKSIZE]
    +
    +
    Examples:
    arm_dotproduct_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t srcB_buf_f32[MAX_BLOCKSIZE]
    +
    +
    Examples:
    arm_dotproduct_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    arm_status status
    +
    +
    Examples:
    arm_convolution_example_f32.c, arm_dotproduct_example_f32.c, arm_fft_bin_example_f32.c, arm_fir_example_f32.c, arm_graphic_equalizer_example_q31.c, arm_linear_interp_example_f32.c, arm_matrix_example_f32.c, arm_signal_converge_example_f32.c, arm_sin_cos_example_f32.c, and arm_variance_example_f32.c.
    +
    +

    Referenced by arm_cfft_radix2_init_f32(), arm_cfft_radix2_init_q15(), arm_cfft_radix2_init_q31(), arm_cfft_radix4_init_f32(), arm_cfft_radix4_init_q15(), arm_cfft_radix4_init_q31(), arm_conv_partial_f32(), arm_conv_partial_fast_opt_q15(), arm_conv_partial_fast_q15(), arm_conv_partial_fast_q31(), arm_conv_partial_opt_q15(), arm_conv_partial_opt_q7(), arm_conv_partial_q15(), arm_conv_partial_q31(), arm_conv_partial_q7(), arm_dct4_init_f32(), arm_dct4_init_q15(), arm_dct4_init_q31(), arm_fir_decimate_init_f32(), arm_fir_decimate_init_q15(), arm_fir_decimate_init_q31(), arm_fir_init_q15(), arm_fir_interpolate_init_f32(), arm_fir_interpolate_init_q15(), arm_fir_interpolate_init_q31(), arm_mat_add_f32(), arm_mat_add_q15(), arm_mat_add_q31(), arm_mat_cmplx_mult_f32(), arm_mat_cmplx_mult_q15(), arm_mat_cmplx_mult_q31(), arm_mat_inverse_f32(), arm_mat_inverse_f64(), arm_mat_mult_f32(), arm_mat_mult_fast_q15(), arm_mat_mult_fast_q31(), arm_mat_mult_q15(), arm_mat_mult_q31(), arm_mat_scale_f32(), arm_mat_scale_q15(), arm_mat_scale_q31(), arm_mat_sub_f32(), arm_mat_sub_q15(), arm_mat_sub_q31(), arm_mat_trans_f32(), arm_mat_trans_q15(), arm_mat_trans_q31(), arm_rfft_fast_init_f32(), arm_rfft_init_f32(), arm_rfft_init_q15(), arm_rfft_init_q31(), and main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testOutput
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__data_8c.html b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__data_8c.html new file mode 100644 index 0000000..1e8ddfc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__data_8c.html @@ -0,0 +1,153 @@ + + + + + +arm_fft_bin_data.c File Reference +CMSIS-DSP: arm_fft_bin_data.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    ARM/arm_fft_bin_data.c File Reference
    +
    +
    + + + + +

    +Variables

    float32_t testInput_f32_10khz [2048]
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t testInput_f32_10khz[2048]
    +
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__example__f32_8c.html b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__example__f32_8c.html new file mode 100644 index 0000000..accf978 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_a_r_m_2arm__fft__bin__example__f32_8c.html @@ -0,0 +1,301 @@ + + + + + +arm_fft_bin_example_f32.c File Reference +CMSIS-DSP: arm_fft_bin_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    ARM/arm_fft_bin_example_f32.c File Reference
    +
    +
    + + + + +

    +Macros

    #define TEST_LENGTH_SAMPLES
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + +

    +Variables

    float32_t testInput_f32_10khz [TEST_LENGTH_SAMPLES]
     
    static float32_t testOutput [TEST_LENGTH_SAMPLES/2]
     
    uint32_t fftSize
     
    uint32_t ifftFlag
     
    uint32_t doBitReverse
     
    uint32_t refIndex
     
    uint32_t testIndex
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define TEST_LENGTH_SAMPLES
    +
    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t doBitReverse
    +
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    uint32_t fftSize
    +
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + + + +
    +
    + + + + +
    uint32_t refIndex
    +
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    uint32_t testIndex
    +
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32_10khz[TEST_LENGTH_SAMPLES]
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    float32_t testOutput[TEST_LENGTH_SAMPLES/2]
    +
    +static
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_change_01_log_8txt.html b/CMSIS/Documentation/DSP/html/_change_01_log_8txt.html new file mode 100644 index 0000000..1efb727 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_change_01_log_8txt.html @@ -0,0 +1,129 @@ + + + + + +Change Log.txt File Reference +CMSIS-DSP: Change Log.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/_change_log_pg.html b/CMSIS/Documentation/DSP/html/_change_log_pg.html new file mode 100644 index 0000000..8b03721 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_change_log_pg.html @@ -0,0 +1,371 @@ + + + + + +Change Log +CMSIS-DSP: Change Log + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Change Log
    +
    +
    +

    + Version 1.4.7 (no source code change [still labeled 1.4.5]) 2015/10/20

    +

    Modified arm_math.h

    +
      +
    • Added explicit type casts to remove compiler warnings.
    • +
    • Supressed irrelevant warnings for toolchain GCC.
    • +
    +

    Updated documentation

    +
      +
    • functions arm_cos_f32, arm_sin_f32 use table lookup combined with linear interpolation (since V1.4.2). This is now documented.
    • +
    +
    + Version 1.4.6 (no source code change [still labeled 1.4.5]) 2015/08/26

    +

    Modified arm_math.h

    + +
    + Version 1.4.5 2015/03/19

    +

    Added support for the Cortex-M7 processor

    +

    Fixed bug in arm_mat_inverse_f32.c and arm_mat_inverse_f64.c. They weren't properly handling diagonal matrices.

    +

    arm_cfft_f32.c - help documentation updated

    +

    Updated documentation to show deprecated functions

    +
    + Version 1.4.4 2014/07/31

    +

    Added the following new files:

    + +

    Optimizations to the following files:

    + +
    + Version 1.4.3 2014/03/12

    +

    Undid changes to arm_biquad_cascade_df1_q31.c

    +

    Added support for COSMIC

    +

    Changed 'short' to 'q15_t' where appropriate

    +

    Fixed arm_conv_partial_fast_q15.c for UNALIGNED_SUPPORT_DISABLE

    +

    Fixed arm_mat_cmplx_mult_q15.c for UNALIGNED_SUPPORT_DISABLE

    +

    Fixed arm_conv_partial_opt_q7.c for UNALIGNED_SUPPORT_DISABLE

    +

    Restored the internal fftlen of 16 to arm_rfft_fast_init_f32.c

    +

    Updated core_xxx.h files to newer versions from ARM

    +
    + Version 1.4.2 2013/10/16

    +

    Moved const structures from arm_const_structs.h to arm_const_structs.c

    +

    Rfft_fast_f32 no longer allows fft length of 16 as it wouldn't have worked anyways

    +

    Partial convolution was producing the wrong results in some cases

    +

    arm_lms_q31 and q15 now saturate the results in the M0 code to match the M3 & M4 code

    +

    Rfft_q15 and q31 had potential overflow issues resolved

    +

    arm_biquad_cascade_df1_q31.c had a typo which resulted in incorrect outputs

    +

    fast math sine and cosine now use linear interpolation

    +

    controller sin/cos now uses a more accurate interpolation algorithm

    +

    arm_mat_inverse was reading outside its input array

    +

    arm_cmplx_dot_prod was incorrect

    +

    switched some incorrect usages of __ssat to clip_q63_to_q31

    +

    changed var & std q31 to downshift input data by 8

    +

    var q31 & q15 no longer output larger data types

    +

    arm_mat_cmplx_mult_q15.c was done incorrectly for big vs little endian

    +

    arm_mat_mult_q31.c was inconsistent with the other multiplies, so added saturation

    +

    arm_conv_partial_q15 had an incorrect comparison between signed & unsigned values

    +
    + Version 1.4.1 2013/02/20

    +

    Updated licenses in headers to 2013

    +

    Fixed ALIGN4 macro in arm_math.h

    +

    Added files to Cortex-M0 projects so that all projects have same file list

    +

    Fixed bugs in

    + +
    + Version 1.4.0 2013/01/09

    +

    Updated with more optimizations, bug fixes and new license information in headers

    +

    Optimized functions:

    +
      +
    • arm_biquad_cascade_df2T_f32
    • +
    • arm_biquad_cascade_df1_q31
    • +
    • arm_fir_f32
    • +
    • arm_fir_fast_q31
    • +
    • arm_cfft_f32
    • +
    • arm_cfft_radix2_q31
    • +
    • arm_rfft_fast_f32 (new function)
    • +
    +

    Fixed compiler warnings in arm_math.h for comparing signed and unsigned ints

    +

    Fixed a saturation bug in arm_rms_q15

    +

    Simplified the code in arm_sin_cos_q31

    +

    Added a preprocessor directive to treat the Cortex M0+ just like the Cortex M0

    +

    The following functions were deprecated and will be removed in a future version

    +
      +
    • arm_cfft_radix2_f32
    • +
    • arm_cfft_radix2_init_f32
    • +
    • arm_cfft_radix4_f32
    • +
    • arm_cfft_radix4_init_f32
    • +
    +
    + Version 1.3.0

    +

    Added CMSIS DSP Software Library

    +

    The CMSIS DSP Software Library is a suite of common signal processing functions targeted to Cortex-M processor based microcontrollers. Even though the code has been specifically optimized towards using the extended DSP instruction set of the Cortex-M4 processor, the library can be compiled for any Cortex-M processor.

    +

    For more information please see CMSIS DSP Library documentation. Added Cortex-M4 Core Support

    +

    Additional folder CM4, containing the Cortex-M4 core support files, has been added. CM0 CM3 CM4 CoreSupport DeviceSupport

    +

    New naming for Core Support Files

    +

    The new Core Support Files are:

    +
      +
    • core_cm#.h (# = 0, 3, 4)
    • +
    • core_cmFunc.h (Cortex-M Core Register access functions)
    • +
    • core_cmInstr.h (Cortex-M Core instructions)
    • +
    • core_cm4_simd.h (Cortex-M4 SIMD instructions)
    • +
    +
    + Version 1.2.0

    +

    Removed CMSIS Middelware packages

    +

    CMSIS Middleware is on hold from ARM side until a agreement between all CMSIS partners is found. SystemFrequency renamed to SystemCoreClock

    +

    The variable name SystemCoreClock is more precise than SystemFrequency because the variable holds the clock value at which the core is running. Changed startup concept

    +

    The old startup concept (calling SystemInit_ExtMemCtl from startup file and calling SystemInit from main) has the weakness that it does not work for controllers which need a already configuerd clock system to configure the external memory controller.

    +

    Changed startup concept

    +
      +
    • SystemInit() is called from startup file before premain.
    • +
    • SystemInit() configures the clock system and also configures an existing external memory controller.
    • +
    • SystemInit() must not use global variables.
    • +
    • SystemCoreClock is initialized with a correct predefined value.
    • +
    • Additional function void SystemCoreClockUpdate (void) is provided.
    • +
    • SystemCoreClockUpdate() updates the variable SystemCoreClock and must be called whenever the core clock is changed.
    • +
    • SystemCoreClockUpdate() evaluates the clock register settings and calculates the current core clock.
    • +
    +

    Advanced Debug Functions

    +

    ITM communication channel is only capable for OUT direction. To allow also communication for IN direction a simple concept is provided.

    +
      +
    • Global variable volatile int ITM_RxBuffer used for IN data.
    • +
    • Function int ITM_CheckChar (void) checks if a new character is available.
    • +
    • Function int ITM_ReceiveChar (void) retrieves the new character.
    • +
    +

    For detailed explanation see file CMSIS debug support.htm.

    +

    Core Register Bit Definitions

    +

    Files core_cm3.h and core_cm0.h contain now bit definitions for Core Registers. The name for the defines correspond with the Cortex-M Technical Reference Manual.

    +

    e.g. SysTick structure with bit definitions

    +
    +
    typedef struct
    +
    {
    +
    __IO uint32_t CTRL;
    +
    __IO uint32_t LOAD;
    +
    __IO uint32_t VAL;
    +
    __I uint32_t CALIB;
    +
    } SysTick_Type;
    +
    +
    /* SysTick Control / Status Register Definitions */
    +
    #define SysTick_CTRL_COUNTFLAG_Pos 16
    +
    #define SysTick_CTRL_COUNTFLAG_Msk (1ul << SysTick_CTRL_COUNTFLAG_Pos)
    +
    #define SysTick_CTRL_CLKSOURCE_Pos 2
    +
    #define SysTick_CTRL_CLKSOURCE_Msk (1ul << SysTick_CTRL_CLKSOURCE_Pos)
    +
    #define SysTick_CTRL_TICKINT_Pos 1
    +
    #define SysTick_CTRL_TICKINT_Msk (1ul << SysTick_CTRL_TICKINT_Pos)
    +
    #define SysTick_CTRL_ENABLE_Pos 0
    +
    #define SysTick_CTRL_ENABLE_Msk (1ul << SysTick_CTRL_ENABLE_Pos)
    +
    /* SysTick Reload Register Definitions */
    +
    #define SysTick_LOAD_RELOAD_Pos 0
    +
    #define SysTick_LOAD_RELOAD_Msk (0xFFFFFFul << SysTick_LOAD_RELOAD_Pos)
    +
    /* SysTick Current Register Definitions */
    +
    #define SysTick_VAL_CURRENT_Pos 0
    +
    #define SysTick_VAL_CURRENT_Msk (0xFFFFFFul << SysTick_VAL_CURRENT_Pos)
    +
    /* SysTick Calibration Register Definitions */
    +
    #define SysTick_CALIB_NOREF_Pos 31
    +
    #define SysTick_CALIB_NOREF_Msk (1ul << SysTick_CALIB_NOREF_Pos)
    +
    #define SysTick_CALIB_SKEW_Pos 30
    +
    #define SysTick_CALIB_SKEW_Msk (1ul << SysTick_CALIB_SKEW_Pos)
    +
    #define SysTick_CALIB_TENMS_Pos 0
    +
    #define SysTick_CALIB_TENMS_Msk (0xFFFFFFul << SysTick_VAL_CURRENT_Pos)
    +
    /* end of group CMSIS_CM3_SysTick */
    +

    DoxyGen Tags

    +

    DoxyGen tags in files core_cm3.[c,h] and core_cm0.[c,h] are reworked to create proper documentation using DoxyGen. Folder Structure

    +

    The folder structure is changed to differentiate the single support packages.

    +
    CM0
    +CM3
    +    CoreSupport
    +    DeviceSupport
    +        Vendor
    +            Device
    +                Startup
    +                    Toolchain
    +                    Toolchain
    +                    ...
    +            Device
    +            ...
    +        Vendor
    +        ...
    +    Example (optional)
    +        Toolchain
    +            Device
    +            Device
    +            ...
    +        Toolchain
    +        ...
    +Documentation
    +

    + Version 1.1.0 2012/02/15

    +

    Updated with more optimizations, bug fixes and minor API changes.

    +
    + Version 1.0.11 2011/10/18

    +

    Bug Fix in conv, correlation, partial convolution.

    +
    + Version 1.0.10 2011/7/15

    +

    Big Endian support added and Merged M0 and M3/M4 Source code.

    +
    + Version 1.0.3 2010/11/29

    +

    Re-organized the CMSIS folders and updated documentation.

    +
    + Version 1.0.2 2010/11/11

    +

    Documentation updated.

    +
    + Version 1.0.1 2010/10/05

    +

    Production release and review comments incorporated.

    +
    + Version 1.0.0 2010/09/20

    +

    Production release and review comments incorporated.

    +
    + Version 0.0.9 2010/08/27

    +

    Added files: arm_biquad_cascade_df1_fast_q15.c arm_biquad_cascade_df1_fast_q31.c arm_fir_fast_q31.c arm_fir_fast_q15.c

    +
    + Version 0.0.7 2010/06/10

    +

    Misra-C changes done

    +
    + Version 0.0.5 2010/04/26

    +

    incorporated review comments and updated with latest CMSIS layer

    +
    + Version 0.0.3 2010/03/10 DP

    +

    Initial version

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_g_c_c_2arm__class__marks__example__f32_8c.html b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__class__marks__example__f32_8c.html new file mode 100644 index 0000000..762f476 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__class__marks__example__f32_8c.html @@ -0,0 +1,388 @@ + + + + + +arm_class_marks_example_f32.c File Reference +CMSIS-DSP: arm_class_marks_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    GCC/arm_class_marks_example_f32.c File Reference
    +
    +
    + + + + + + + + + + +

    +Macros

    #define USE_STATIC_INIT
     
    #define TEST_LENGTH_SAMPLES
     
    #define NUMSTUDENTS
     
    #define NUMSUBJECTS
     
    + + + +

    +Functions

    int32_t main ()
     
    + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    const float32_t testMarks_f32 [TEST_LENGTH_SAMPLES]
     
    const float32_t testUnity_f32 [4]
     
    static float32_t testOutput [TEST_LENGTH_SAMPLES]
     
    uint32_t numStudents
     
    uint32_t numSubjects
     
    float32_t max_marks
     
    float32_t min_marks
     
    float32_t mean
     
    float32_t std
     
    float32_t var
     
    uint32_t student_num
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define NUMSTUDENTS
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define NUMSUBJECTS
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define TEST_LENGTH_SAMPLES
    +
    + +
    +
    + +
    +
    + + + + +
    #define USE_STATIC_INIT
    +
    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t max_marks
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t mean
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t min_marks
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t numStudents
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t numSubjects
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t std
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t student_num
    +
    + +
    +
    + +
    +
    + + + + +
    const float32_t testMarks_f32[TEST_LENGTH_SAMPLES]
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    float32_t testOutput[TEST_LENGTH_SAMPLES]
    +
    +static
    +
    + +
    +
    + +
    +
    + + + + +
    const float32_t testUnity_f32[4]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t var
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_g_c_c_2arm__convolution__example__f32_8c.html b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__convolution__example__f32_8c.html new file mode 100644 index 0000000..86872bf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__convolution__example__f32_8c.html @@ -0,0 +1,352 @@ + + + + + +arm_convolution_example_f32.c File Reference +CMSIS-DSP: arm_convolution_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    GCC/arm_convolution_example_f32.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define MAX_BLOCKSIZE
     
    #define DELTA
     
    #define SNR_THRESHOLD
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    float32_t Ak [MAX_BLOCKSIZE]
     
    float32_t Bk [MAX_BLOCKSIZE]
     
    float32_t AxB [MAX_BLOCKSIZE *2]
     
    float32_t testInputA_f32 [64]
     
    float32_t testInputB_f32 [64]
     
    const float testRefOutput_f32 [127]
     
    uint32_t srcALen
     
    uint32_t srcBLen
     
    uint32_t outLen
     
    float32_t snr
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define DELTA
    +
    + +
    +
    + +
    +
    + + + + +
    #define MAX_BLOCKSIZE
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define SNR_THRESHOLD
    +
    + +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t Ak[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t AxB[MAX_BLOCKSIZE *2]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t Bk[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t outLen
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t snr
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t srcALen
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t srcBLen
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testInputA_f32[64]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testInputB_f32[64]
    +
    + +
    +
    + +
    +
    + + + + +
    const float testRefOutput_f32[127]
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_g_c_c_2arm__dotproduct__example__f32_8c.html b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__dotproduct__example__f32_8c.html new file mode 100644 index 0000000..544f2ae --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__dotproduct__example__f32_8c.html @@ -0,0 +1,282 @@ + + + + + +arm_dotproduct_example_f32.c File Reference +CMSIS-DSP: arm_dotproduct_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    GCC/arm_dotproduct_example_f32.c File Reference
    +
    +
    + + + + + + +

    +Macros

    #define MAX_BLOCKSIZE
     
    #define DELTA
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + +

    +Variables

    float32_t srcA_buf_f32 [MAX_BLOCKSIZE]
     
    float32_t srcB_buf_f32 [MAX_BLOCKSIZE]
     
    float32_t refDotProdOut
     
    float32_t multOutput [MAX_BLOCKSIZE]
     
    float32_t testOutput
     
    arm_status status
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define DELTA
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define MAX_BLOCKSIZE
    +
    + +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    int32_t main (void )
    +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t multOutput[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t refDotProdOut
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t srcA_buf_f32[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t srcB_buf_f32[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    arm_status status
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testOutput
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__data_8c.html b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__data_8c.html new file mode 100644 index 0000000..1f015ba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__data_8c.html @@ -0,0 +1,150 @@ + + + + + +arm_fft_bin_data.c File Reference +CMSIS-DSP: arm_fft_bin_data.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    GCC/arm_fft_bin_data.c File Reference
    +
    +
    + + + + +

    +Variables

    float32_t testInput_f32_10khz [2048]
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t testInput_f32_10khz[2048]
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__example__f32_8c.html b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__example__f32_8c.html new file mode 100644 index 0000000..3d4c31c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/_g_c_c_2arm__fft__bin__example__f32_8c.html @@ -0,0 +1,288 @@ + + + + + +arm_fft_bin_example_f32.c File Reference +CMSIS-DSP: arm_fft_bin_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    GCC/arm_fft_bin_example_f32.c File Reference
    +
    +
    + + + + +

    +Macros

    #define TEST_LENGTH_SAMPLES
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + +

    +Variables

    float32_t testInput_f32_10khz [TEST_LENGTH_SAMPLES]
     
    static float32_t testOutput [TEST_LENGTH_SAMPLES/2]
     
    uint32_t fftSize
     
    uint32_t ifftFlag
     
    uint32_t doBitReverse
     
    uint32_t refIndex
     
    uint32_t testIndex
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define TEST_LENGTH_SAMPLES
    +
    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t doBitReverse
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t fftSize
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t ifftFlag
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t refIndex
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t testIndex
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32_10khz[TEST_LENGTH_SAMPLES]
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    float32_t testOutput[TEST_LENGTH_SAMPLES/2]
    +
    +static
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/annotated.html b/CMSIS/Documentation/DSP/html/annotated.html new file mode 100644 index 0000000..e676fe3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/annotated.html @@ -0,0 +1,199 @@ + + + + + +Data Structures +CMSIS-DSP: Data Structures + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Data Structures
    +
    +
    +
    Here are the data structures with brief descriptions:
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    oCarm_bilinear_interp_instance_f32Instance structure for the floating-point bilinear interpolation function
    oCarm_bilinear_interp_instance_q15Instance structure for the Q15 bilinear interpolation function
    oCarm_bilinear_interp_instance_q31Instance structure for the Q31 bilinear interpolation function
    oCarm_bilinear_interp_instance_q7Instance structure for the Q15 bilinear interpolation function
    oCarm_biquad_cas_df1_32x64_ins_q31Instance structure for the high precision Q31 Biquad cascade filter
    oCarm_biquad_cascade_df2T_instance_f32Instance structure for the floating-point transposed direct form II Biquad cascade filter
    oCarm_biquad_cascade_df2T_instance_f64Instance structure for the floating-point transposed direct form II Biquad cascade filter
    oCarm_biquad_cascade_stereo_df2T_instance_f32Instance structure for the floating-point transposed direct form II Biquad cascade filter
    oCarm_biquad_casd_df1_inst_f32Instance structure for the floating-point Biquad cascade filter
    oCarm_biquad_casd_df1_inst_q15Instance structure for the Q15 Biquad cascade filter
    oCarm_biquad_casd_df1_inst_q31Instance structure for the Q31 Biquad cascade filter
    oCarm_cfft_instance_f32Instance structure for the floating-point CFFT/CIFFT function
    oCarm_cfft_instance_q15Instance structure for the fixed-point CFFT/CIFFT function
    oCarm_cfft_instance_q31Instance structure for the fixed-point CFFT/CIFFT function
    oCarm_cfft_radix2_instance_f32Instance structure for the floating-point CFFT/CIFFT function
    oCarm_cfft_radix2_instance_q15Instance structure for the Q15 CFFT/CIFFT function
    oCarm_cfft_radix2_instance_q31Instance structure for the Radix-2 Q31 CFFT/CIFFT function
    oCarm_cfft_radix4_instance_f32Instance structure for the floating-point CFFT/CIFFT function
    oCarm_cfft_radix4_instance_q15Instance structure for the Q15 CFFT/CIFFT function
    oCarm_cfft_radix4_instance_q31Instance structure for the Q31 CFFT/CIFFT function
    oCarm_dct4_instance_f32Instance structure for the floating-point DCT4/IDCT4 function
    oCarm_dct4_instance_q15Instance structure for the Q15 DCT4/IDCT4 function
    oCarm_dct4_instance_q31Instance structure for the Q31 DCT4/IDCT4 function
    oCarm_fir_decimate_instance_f32Instance structure for the floating-point FIR decimator
    oCarm_fir_decimate_instance_q15Instance structure for the Q15 FIR decimator
    oCarm_fir_decimate_instance_q31Instance structure for the Q31 FIR decimator
    oCarm_fir_instance_f32Instance structure for the floating-point FIR filter
    oCarm_fir_instance_q15Instance structure for the Q15 FIR filter
    oCarm_fir_instance_q31Instance structure for the Q31 FIR filter
    oCarm_fir_instance_q7Instance structure for the Q7 FIR filter
    oCarm_fir_interpolate_instance_f32Instance structure for the floating-point FIR interpolator
    oCarm_fir_interpolate_instance_q15Instance structure for the Q15 FIR interpolator
    oCarm_fir_interpolate_instance_q31Instance structure for the Q31 FIR interpolator
    oCarm_fir_lattice_instance_f32Instance structure for the floating-point FIR lattice filter
    oCarm_fir_lattice_instance_q15Instance structure for the Q15 FIR lattice filter
    oCarm_fir_lattice_instance_q31Instance structure for the Q31 FIR lattice filter
    oCarm_fir_sparse_instance_f32Instance structure for the floating-point sparse FIR filter
    oCarm_fir_sparse_instance_q15Instance structure for the Q15 sparse FIR filter
    oCarm_fir_sparse_instance_q31Instance structure for the Q31 sparse FIR filter
    oCarm_fir_sparse_instance_q7Instance structure for the Q7 sparse FIR filter
    oCarm_iir_lattice_instance_f32Instance structure for the floating-point IIR lattice filter
    oCarm_iir_lattice_instance_q15Instance structure for the Q15 IIR lattice filter
    oCarm_iir_lattice_instance_q31Instance structure for the Q31 IIR lattice filter
    oCarm_linear_interp_instance_f32Instance structure for the floating-point Linear Interpolate function
    oCarm_lms_instance_f32Instance structure for the floating-point LMS filter
    oCarm_lms_instance_q15Instance structure for the Q15 LMS filter
    oCarm_lms_instance_q31Instance structure for the Q31 LMS filter
    oCarm_lms_norm_instance_f32Instance structure for the floating-point normalized LMS filter
    oCarm_lms_norm_instance_q15Instance structure for the Q15 normalized LMS filter
    oCarm_lms_norm_instance_q31Instance structure for the Q31 normalized LMS filter
    oCarm_matrix_instance_f32Instance structure for the floating-point matrix structure
    oCarm_matrix_instance_f64Instance structure for the floating-point matrix structure
    oCarm_matrix_instance_q15Instance structure for the Q15 matrix structure
    oCarm_matrix_instance_q31Instance structure for the Q31 matrix structure
    oCarm_pid_instance_f32Instance structure for the floating-point PID Control
    oCarm_pid_instance_q15Instance structure for the Q15 PID Control
    oCarm_pid_instance_q31Instance structure for the Q31 PID Control
    oCarm_rfft_fast_instance_f32Instance structure for the floating-point RFFT/RIFFT function
    oCarm_rfft_instance_f32Instance structure for the floating-point RFFT/RIFFT function
    oCarm_rfft_instance_q15Instance structure for the Q15 RFFT/RIFFT function
    \Carm_rfft_instance_q31Instance structure for the Q31 RFFT/RIFFT function
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/annotated.js b/CMSIS/Documentation/DSP/html/annotated.js new file mode 100644 index 0000000..4649803 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/annotated.js @@ -0,0 +1,64 @@ +var annotated = +[ + [ "arm_bilinear_interp_instance_f32", "structarm__bilinear__interp__instance__f32.html", "structarm__bilinear__interp__instance__f32" ], + [ "arm_bilinear_interp_instance_q15", "structarm__bilinear__interp__instance__q15.html", "structarm__bilinear__interp__instance__q15" ], + [ "arm_bilinear_interp_instance_q31", "structarm__bilinear__interp__instance__q31.html", "structarm__bilinear__interp__instance__q31" ], + [ "arm_bilinear_interp_instance_q7", "structarm__bilinear__interp__instance__q7.html", "structarm__bilinear__interp__instance__q7" ], + [ "arm_biquad_cas_df1_32x64_ins_q31", "structarm__biquad__cas__df1__32x64__ins__q31.html", "structarm__biquad__cas__df1__32x64__ins__q31" ], + [ "arm_biquad_cascade_df2T_instance_f32", "structarm__biquad__cascade__df2_t__instance__f32.html", "structarm__biquad__cascade__df2_t__instance__f32" ], + [ "arm_biquad_cascade_df2T_instance_f64", "structarm__biquad__cascade__df2_t__instance__f64.html", "structarm__biquad__cascade__df2_t__instance__f64" ], + [ "arm_biquad_cascade_stereo_df2T_instance_f32", "structarm__biquad__cascade__stereo__df2_t__instance__f32.html", "structarm__biquad__cascade__stereo__df2_t__instance__f32" ], + [ "arm_biquad_casd_df1_inst_f32", "structarm__biquad__casd__df1__inst__f32.html", "structarm__biquad__casd__df1__inst__f32" ], + [ "arm_biquad_casd_df1_inst_q15", "structarm__biquad__casd__df1__inst__q15.html", "structarm__biquad__casd__df1__inst__q15" ], + [ "arm_biquad_casd_df1_inst_q31", "structarm__biquad__casd__df1__inst__q31.html", "structarm__biquad__casd__df1__inst__q31" ], + [ "arm_cfft_instance_f32", "structarm__cfft__instance__f32.html", "structarm__cfft__instance__f32" ], + [ "arm_cfft_instance_q15", "structarm__cfft__instance__q15.html", "structarm__cfft__instance__q15" ], + [ "arm_cfft_instance_q31", "structarm__cfft__instance__q31.html", "structarm__cfft__instance__q31" ], + [ "arm_cfft_radix2_instance_f32", "structarm__cfft__radix2__instance__f32.html", "structarm__cfft__radix2__instance__f32" ], + [ "arm_cfft_radix2_instance_q15", "structarm__cfft__radix2__instance__q15.html", "structarm__cfft__radix2__instance__q15" ], + [ "arm_cfft_radix2_instance_q31", "structarm__cfft__radix2__instance__q31.html", "structarm__cfft__radix2__instance__q31" ], + [ "arm_cfft_radix4_instance_f32", "structarm__cfft__radix4__instance__f32.html", "structarm__cfft__radix4__instance__f32" ], + [ "arm_cfft_radix4_instance_q15", "structarm__cfft__radix4__instance__q15.html", "structarm__cfft__radix4__instance__q15" ], + [ "arm_cfft_radix4_instance_q31", "structarm__cfft__radix4__instance__q31.html", "structarm__cfft__radix4__instance__q31" ], + [ "arm_dct4_instance_f32", "structarm__dct4__instance__f32.html", "structarm__dct4__instance__f32" ], + [ "arm_dct4_instance_q15", "structarm__dct4__instance__q15.html", "structarm__dct4__instance__q15" ], + [ "arm_dct4_instance_q31", "structarm__dct4__instance__q31.html", "structarm__dct4__instance__q31" ], + [ "arm_fir_decimate_instance_f32", "structarm__fir__decimate__instance__f32.html", "structarm__fir__decimate__instance__f32" ], + [ "arm_fir_decimate_instance_q15", "structarm__fir__decimate__instance__q15.html", "structarm__fir__decimate__instance__q15" ], + [ "arm_fir_decimate_instance_q31", "structarm__fir__decimate__instance__q31.html", "structarm__fir__decimate__instance__q31" ], + [ "arm_fir_instance_f32", "structarm__fir__instance__f32.html", "structarm__fir__instance__f32" ], + [ "arm_fir_instance_q15", "structarm__fir__instance__q15.html", "structarm__fir__instance__q15" ], + [ "arm_fir_instance_q31", "structarm__fir__instance__q31.html", "structarm__fir__instance__q31" ], + [ "arm_fir_instance_q7", "structarm__fir__instance__q7.html", "structarm__fir__instance__q7" ], + [ "arm_fir_interpolate_instance_f32", "structarm__fir__interpolate__instance__f32.html", "structarm__fir__interpolate__instance__f32" ], + [ "arm_fir_interpolate_instance_q15", "structarm__fir__interpolate__instance__q15.html", "structarm__fir__interpolate__instance__q15" ], + [ "arm_fir_interpolate_instance_q31", "structarm__fir__interpolate__instance__q31.html", "structarm__fir__interpolate__instance__q31" ], + [ "arm_fir_lattice_instance_f32", "structarm__fir__lattice__instance__f32.html", "structarm__fir__lattice__instance__f32" ], + [ "arm_fir_lattice_instance_q15", "structarm__fir__lattice__instance__q15.html", "structarm__fir__lattice__instance__q15" ], + [ "arm_fir_lattice_instance_q31", "structarm__fir__lattice__instance__q31.html", "structarm__fir__lattice__instance__q31" ], + [ "arm_fir_sparse_instance_f32", "structarm__fir__sparse__instance__f32.html", "structarm__fir__sparse__instance__f32" ], + [ "arm_fir_sparse_instance_q15", "structarm__fir__sparse__instance__q15.html", "structarm__fir__sparse__instance__q15" ], + [ "arm_fir_sparse_instance_q31", "structarm__fir__sparse__instance__q31.html", "structarm__fir__sparse__instance__q31" ], + [ "arm_fir_sparse_instance_q7", "structarm__fir__sparse__instance__q7.html", "structarm__fir__sparse__instance__q7" ], + [ "arm_iir_lattice_instance_f32", "structarm__iir__lattice__instance__f32.html", "structarm__iir__lattice__instance__f32" ], + [ "arm_iir_lattice_instance_q15", "structarm__iir__lattice__instance__q15.html", "structarm__iir__lattice__instance__q15" ], + [ "arm_iir_lattice_instance_q31", "structarm__iir__lattice__instance__q31.html", "structarm__iir__lattice__instance__q31" ], + [ "arm_linear_interp_instance_f32", "structarm__linear__interp__instance__f32.html", "structarm__linear__interp__instance__f32" ], + [ "arm_lms_instance_f32", "structarm__lms__instance__f32.html", "structarm__lms__instance__f32" ], + [ "arm_lms_instance_q15", "structarm__lms__instance__q15.html", "structarm__lms__instance__q15" ], + [ "arm_lms_instance_q31", "structarm__lms__instance__q31.html", "structarm__lms__instance__q31" ], + [ "arm_lms_norm_instance_f32", "structarm__lms__norm__instance__f32.html", "structarm__lms__norm__instance__f32" ], + [ "arm_lms_norm_instance_q15", "structarm__lms__norm__instance__q15.html", "structarm__lms__norm__instance__q15" ], + [ "arm_lms_norm_instance_q31", "structarm__lms__norm__instance__q31.html", "structarm__lms__norm__instance__q31" ], + [ "arm_matrix_instance_f32", "structarm__matrix__instance__f32.html", "structarm__matrix__instance__f32" ], + [ "arm_matrix_instance_f64", "structarm__matrix__instance__f64.html", "structarm__matrix__instance__f64" ], + [ "arm_matrix_instance_q15", "structarm__matrix__instance__q15.html", "structarm__matrix__instance__q15" ], + [ "arm_matrix_instance_q31", "structarm__matrix__instance__q31.html", "structarm__matrix__instance__q31" ], + [ "arm_pid_instance_f32", "structarm__pid__instance__f32.html", "structarm__pid__instance__f32" ], + [ "arm_pid_instance_q15", "structarm__pid__instance__q15.html", "structarm__pid__instance__q15" ], + [ "arm_pid_instance_q31", "structarm__pid__instance__q31.html", "structarm__pid__instance__q31" ], + [ "arm_rfft_fast_instance_f32", "structarm__rfft__fast__instance__f32.html", "structarm__rfft__fast__instance__f32" ], + [ "arm_rfft_instance_f32", "structarm__rfft__instance__f32.html", "structarm__rfft__instance__f32" ], + [ "arm_rfft_instance_q15", "structarm__rfft__instance__q15.html", "structarm__rfft__instance__q15" ], + [ "arm_rfft_instance_q31", "structarm__rfft__instance__q31.html", "structarm__rfft__instance__q31" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/arm__abs__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__abs__f32_8c.html new file mode 100644 index 0000000..66bf4eb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__abs__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_abs_f32.c File Reference +CMSIS-DSP: arm_abs_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_abs_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_abs_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Floating-point vector absolute value.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__abs__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__abs__q15_8c.html new file mode 100644 index 0000000..e24c5ba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__abs__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_abs_q15.c File Reference +CMSIS-DSP: arm_abs_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_abs_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_abs_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Q15 vector absolute value.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__abs__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__abs__q31_8c.html new file mode 100644 index 0000000..d9f3ae5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__abs__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_abs_q31.c File Reference +CMSIS-DSP: arm_abs_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_abs_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_abs_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Q31 vector absolute value.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__abs__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__abs__q7_8c.html new file mode 100644 index 0000000..a39ebdf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__abs__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_abs_q7.c File Reference +CMSIS-DSP: arm_abs_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_abs_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_abs_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Q7 vector absolute value.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__add__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__add__f32_8c.html new file mode 100644 index 0000000..8c72457 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__add__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_add_f32.c File Reference +CMSIS-DSP: arm_add_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_add_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_add_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector addition.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__add__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__add__q15_8c.html new file mode 100644 index 0000000..938ca53 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__add__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_add_q15.c File Reference +CMSIS-DSP: arm_add_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_add_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_add_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector addition.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__add__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__add__q31_8c.html new file mode 100644 index 0000000..5f0414c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__add__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_add_q31.c File Reference +CMSIS-DSP: arm_add_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_add_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_add_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector addition.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__add__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__add__q7_8c.html new file mode 100644 index 0000000..47dd883 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__add__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_add_q7.c File Reference +CMSIS-DSP: arm_add_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_add_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_add_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector addition.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__init__q31_8c.html new file mode 100644 index 0000000..85dc9c4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__init__q31_8c.html @@ -0,0 +1,137 @@ + + + + + +arm_biquad_cascade_df1_32x64_init_q31.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_32x64_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_32x64_init_q31.c File Reference
    +
    +
    + + + + +

    +Functions

    void arm_biquad_cas_df1_32x64_init_q31 (arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift)
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__q31_8c.html new file mode 100644 index 0000000..9be9487 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__32x64__q31_8c.html @@ -0,0 +1,137 @@ + + + + + +arm_biquad_cascade_df1_32x64_q31.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_32x64_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_32x64_q31.c File Reference
    +
    +
    + + + + +

    +Functions

    void arm_biquad_cas_df1_32x64_q31 (const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__f32_8c.html new file mode 100644 index 0000000..9362abf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_f32.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_f32 (const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q15_8c.html new file mode 100644 index 0000000..c942093 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_fast_q15.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_fast_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_fast_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_fast_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Fast but less precise processing function for the Q15 Biquad cascade filter for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q31_8c.html new file mode 100644 index 0000000..6621f6e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__fast__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_fast_q31.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_fast_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_fast_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_fast_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Fast but less precise processing function for the Q31 Biquad cascade filter for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__f32_8c.html new file mode 100644 index 0000000..6fb47f3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_init_f32.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_init_f32 (arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q15_8c.html new file mode 100644 index 0000000..0e5e535 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_init_q15.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_init_q15 (arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift)
     Initialization function for the Q15 Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q31_8c.html new file mode 100644 index 0000000..ae17a63 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_init_q31.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_init_q31 (arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift)
     Initialization function for the Q31 Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q15_8c.html new file mode 100644 index 0000000..b6e2e75 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_q15.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q31_8c.html new file mode 100644 index 0000000..106463b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df1__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df1_q31.c File Reference +CMSIS-DSP: arm_biquad_cascade_df1_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df1_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df1_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f32_8c.html new file mode 100644 index 0000000..b6e0707 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df2T_f32.c File Reference +CMSIS-DSP: arm_biquad_cascade_df2T_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df2T_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_df2T_f32 (const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f64_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f64_8c.html new file mode 100644 index 0000000..fc085ad --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__f64_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df2T_f64.c File Reference +CMSIS-DSP: arm_biquad_cascade_df2T_f64.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df2T_f64.c File Reference
    +
    +
    + + + + + +

    +Functions

    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_df2T_f64 (const arm_biquad_cascade_df2T_instance_f64 *S, float64_t *pSrc, float64_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f32_8c.html new file mode 100644 index 0000000..1acdbc0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df2T_init_f32.c File Reference +CMSIS-DSP: arm_biquad_cascade_df2T_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df2T_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df2T_init_f32 (arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f64_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f64_8c.html new file mode 100644 index 0000000..997f7b1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__df2_t__init__f64_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_df2T_init_f64.c File Reference +CMSIS-DSP: arm_biquad_cascade_df2T_init_f64.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df2T_init_f64.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_df2T_init_f64 (arm_biquad_cascade_df2T_instance_f64 *S, uint8_t numStages, float64_t *pCoeffs, float64_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__f32_8c.html new file mode 100644 index 0000000..8a43ac4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_stereo_df2T_f32.c File Reference +CMSIS-DSP: arm_biquad_cascade_stereo_df2T_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_stereo_df2T_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_stereo_df2T_f32 (const arm_biquad_cascade_stereo_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__init__f32_8c.html new file mode 100644 index 0000000..99f58f5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__biquad__cascade__stereo__df2_t__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_biquad_cascade_stereo_df2T_init_f32.c File Reference +CMSIS-DSP: arm_biquad_cascade_stereo_df2T_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_stereo_df2T_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_biquad_cascade_stereo_df2T_init_f32 (arm_biquad_cascade_stereo_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__bitreversal_8c.html b/CMSIS/Documentation/DSP/html/arm__bitreversal_8c.html new file mode 100644 index 0000000..8066ee5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__bitreversal_8c.html @@ -0,0 +1,262 @@ + + + + + +arm_bitreversal.c File Reference +CMSIS-DSP: arm_bitreversal.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_bitreversal.c File Reference
    +
    +
    + + + + + + + + +

    +Functions

    void arm_bitreversal_f32 (float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_bitreversal_q31 (q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTable)
     
    void arm_bitreversal_q15 (q15_t *pSrc16, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_f32 (float32_tpSrc,
    uint16_t fftSize,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_q15 (q15_tpSrc16,
    uint32_t fftLen,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    + +

    Referenced by arm_cfft_radix2_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_q31 (q31_tpSrc,
    uint32_t fftLen,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTable 
    )
    +
    + +

    Referenced by arm_cfft_radix2_q31(), and arm_cfft_radix4_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__f32_8c.html new file mode 100644 index 0000000..8fe7b72 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__f32_8c.html @@ -0,0 +1,281 @@ + + + + + +arm_cfft_f32.c File Reference +CMSIS-DSP: arm_cfft_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_f32.c File Reference
    +
    +
    + + + + + + + + + + + + + +

    +Functions

    void arm_radix8_butterfly_f32 (float32_t *pSrc, uint16_t fftLen, const float32_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_bitreversal_32 (uint32_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable)
     
    void arm_cfft_radix8by2_f32 (arm_cfft_instance_f32 *S, float32_t *p1)
     
    void arm_cfft_radix8by4_f32 (arm_cfft_instance_f32 *S, float32_t *p1)
     
    void arm_cfft_f32 (const arm_cfft_instance_f32 *S, float32_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the floating-point complex FFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_32 (uint32_t * pSrc,
    const uint16_t bitRevLen,
    const uint16_t * pBitRevTable 
    )
    +
    + +

    Referenced by arm_cfft_f32(), and arm_cfft_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix8by2_f32 (arm_cfft_instance_f32S,
    float32_tp1 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix8by4_f32 (arm_cfft_instance_f32S,
    float32_tp1 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix8_butterfly_f32 (float32_tpSrc,
    uint16_t fftLen,
    const float32_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__q15_8c.html new file mode 100644 index 0000000..2ce3507 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__q15_8c.html @@ -0,0 +1,363 @@ + + + + + +arm_cfft_q15.c File Reference +CMSIS-DSP: arm_cfft_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_q15.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_radix4_butterfly_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint32_t twidCoefModifier)
     Core function for the Q15 CFFT butterfly process.
     
    void arm_radix4_butterfly_inverse_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint32_t twidCoefModifier)
     Core function for the Q15 CIFFT butterfly process.
     
    void arm_bitreversal_16 (uint16_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable)
     
    void arm_cfft_radix4by2_q15 (q15_t *pSrc, uint32_t fftLen, const q15_t *pCoef)
     
    void arm_cfft_radix4by2_inverse_q15 (q15_t *pSrc, uint32_t fftLen, const q15_t *pCoef)
     
    void arm_cfft_q15 (const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the Q15 complex FFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_16 (uint16_t * pSrc,
    const uint16_t bitRevLen,
    const uint16_t * pBitRevTable 
    )
    +
    + +

    Referenced by arm_cfft_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix4by2_inverse_q15 (q15_tpSrc,
    uint32_t fftLen,
    const q15_tpCoef 
    )
    +
    + +

    References _SIMD32_OFFSET, and arm_radix4_butterfly_inverse_q15().

    + +

    Referenced by arm_cfft_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix4by2_q15 (q15_tpSrc,
    uint32_t fftLen,
    const q15_tpCoef 
    )
    +
    +

    end of ComplexFFT group

    + +

    References _SIMD32_OFFSET, and arm_radix4_butterfly_q15().

    + +

    Referenced by arm_cfft_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_inverse_q15 (q15_tpSrc16,
    uint32_t fftLen,
    q15_tpCoef16,
    uint32_t twidCoefModifier 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*pSrc16points to the in-place buffer of Q15 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoef16points to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, and _SIMD32_OFFSET.

    + +

    Referenced by arm_cfft_q15(), arm_cfft_radix4_q15(), and arm_cfft_radix4by2_inverse_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_q15 (q15_tpSrc16,
    uint32_t fftLen,
    q15_tpCoef16,
    uint32_t twidCoefModifier 
    )
    +
    +

    end of ComplexFFT group

    +
    Parameters
    + + + + + +
    [in,out]*pSrc16points to the in-place buffer of Q15 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoef16points to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, and _SIMD32_OFFSET.

    + +

    Referenced by arm_cfft_q15(), arm_cfft_radix4_q15(), and arm_cfft_radix4by2_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__q31_8c.html new file mode 100644 index 0000000..6700e87 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__q31_8c.html @@ -0,0 +1,361 @@ + + + + + +arm_cfft_q31.c File Reference +CMSIS-DSP: arm_cfft_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_q31.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_radix4_butterfly_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier)
     Core function for the Q31 CFFT butterfly process.
     
    void arm_radix4_butterfly_inverse_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier)
     Core function for the Q31 CIFFT butterfly process.
     
    void arm_bitreversal_32 (uint32_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable)
     
    void arm_cfft_radix4by2_q31 (q31_t *pSrc, uint32_t fftLen, const q31_t *pCoef)
     
    void arm_cfft_radix4by2_inverse_q31 (q31_t *pSrc, uint32_t fftLen, const q31_t *pCoef)
     
    void arm_cfft_q31 (const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the fixed-point complex FFT in Q31 format.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_32 (uint32_t * pSrc,
    const uint16_t bitRevLen,
    const uint16_t * pBitRevTable 
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix4by2_inverse_q31 (q31_tpSrc,
    uint32_t fftLen,
    const q31_tpCoef 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix4by2_q31 (q31_tpSrc,
    uint32_t fftLen,
    const q31_tpCoef 
    )
    +
    +

    end of ComplexFFT group

    + +

    References arm_radix4_butterfly_q31(), mult_32x32_keep32_R, multAcc_32x32_keep32_R, and multSub_32x32_keep32_R.

    + +

    Referenced by arm_cfft_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_inverse_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpCoef,
    uint32_t twidCoefModifier 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*pSrcpoints to the in-place buffer of Q31 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoefpoints to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD64.

    + +

    Referenced by arm_cfft_q31(), arm_cfft_radix4_q31(), and arm_cfft_radix4by2_inverse_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpCoef,
    uint32_t twidCoefModifier 
    )
    +
    +

    end of ComplexFFT group

    +
    Parameters
    + + + + + +
    [in,out]*pSrcpoints to the in-place buffer of Q31 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoefpoints to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD64.

    + +

    Referenced by arm_cfft_q31(), arm_cfft_radix4_q31(), and arm_cfft_radix4by2_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix2__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__f32_8c.html new file mode 100644 index 0000000..09f0277 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__f32_8c.html @@ -0,0 +1,270 @@ + + + + + +arm_cfft_radix2_f32.c File Reference +CMSIS-DSP: arm_cfft_radix2_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_f32.c File Reference
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_radix2_butterfly_f32 (float32_t *pSrc, uint32_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_radix2_butterfly_inverse_f32 (float32_t *pSrc, uint32_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen)
     
    void arm_bitreversal_f32 (float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_cfft_radix2_f32 (const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc)
     Radix-2 CFFT/CIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_f32 (float32_tpSrc,
    uint16_t fftSize,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix2_butterfly_f32 (float32_tpSrc,
    uint32_t fftLen,
    float32_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    +

    end of ComplexFFT group

    + +

    Referenced by arm_cfft_radix2_f32().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix2_butterfly_inverse_f32 (float32_tpSrc,
    uint32_t fftLen,
    float32_tpCoef,
    uint16_t twidCoefModifier,
    float32_t onebyfftLen 
    )
    +
    + +

    Referenced by arm_cfft_radix2_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__f32_8c.html new file mode 100644 index 0000000..d95a004 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cfft_radix2_init_f32.c File Reference +CMSIS-DSP: arm_cfft_radix2_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_cfft_radix2_init_f32 (arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the floating-point CFFT/CIFFT.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q15_8c.html new file mode 100644 index 0000000..656a34c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cfft_radix2_init_q15.c File Reference +CMSIS-DSP: arm_cfft_radix2_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_cfft_radix2_init_q15 (arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q15 CFFT/CIFFT.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q31_8c.html new file mode 100644 index 0000000..ce0fc48 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cfft_radix2_init_q31.c File Reference +CMSIS-DSP: arm_cfft_radix2_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_cfft_radix2_init_q31 (arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q31 CFFT/CIFFT.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix2__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__q15_8c.html new file mode 100644 index 0000000..72536b0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__q15_8c.html @@ -0,0 +1,268 @@ + + + + + +arm_cfft_radix2_q15.c File Reference +CMSIS-DSP: arm_cfft_radix2_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_q15.c File Reference
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_radix2_butterfly_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_radix2_butterfly_inverse_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_bitreversal_q15 (q15_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_cfft_radix2_q15 (const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc)
     Processing function for the fixed-point CFFT/CIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_q15 (q15_tpSrc,
    uint32_t fftLen,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix2_butterfly_inverse_q15 (q15_tpSrc,
    uint32_t fftLen,
    q15_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    + +

    References _SIMD32_OFFSET.

    + +

    Referenced by arm_cfft_radix2_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix2_butterfly_q15 (q15_tpSrc,
    uint32_t fftLen,
    q15_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    +

    end of ComplexFFT group

    + +

    References _SIMD32_OFFSET.

    + +

    Referenced by arm_cfft_radix2_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix2__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__q31_8c.html new file mode 100644 index 0000000..d2a9594 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix2__q31_8c.html @@ -0,0 +1,268 @@ + + + + + +arm_cfft_radix2_q31.c File Reference +CMSIS-DSP: arm_cfft_radix2_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_q31.c File Reference
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_radix2_butterfly_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_radix2_butterfly_inverse_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_bitreversal_q31 (q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_cfft_radix2_q31 (const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc)
     Processing function for the fixed-point CFFT/CIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_q31 (q31_tpSrc,
    uint32_t fftLen,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix2_butterfly_inverse_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix2_butterfly_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    +

    end of ComplexFFT group

    + +

    References mult_32x32_keep32_R, multAcc_32x32_keep32_R, and multSub_32x32_keep32_R.

    + +

    Referenced by arm_cfft_radix2_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix4__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__f32_8c.html new file mode 100644 index 0000000..d715bbb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__f32_8c.html @@ -0,0 +1,229 @@ + + + + + +arm_cfft_radix4_f32.c File Reference +CMSIS-DSP: arm_cfft_radix4_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_f32.c File Reference
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_bitreversal_f32 (float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_radix4_butterfly_f32 (float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_radix4_butterfly_inverse_f32 (float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen)
     
    void arm_cfft_radix4_f32 (const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc)
     Processing function for the floating-point Radix-4 CFFT/CIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_f32 (float32_tpSrc,
    uint16_t fftSize,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_inverse_f32 (float32_tpSrc,
    uint16_t fftLen,
    float32_tpCoef,
    uint16_t twidCoefModifier,
    float32_t onebyfftLen 
    )
    +
    + +

    Referenced by arm_cfft_radix4_f32(), and arm_rfft_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__f32_8c.html new file mode 100644 index 0000000..1c50744 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cfft_radix4_init_f32.c File Reference +CMSIS-DSP: arm_cfft_radix4_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_cfft_radix4_init_f32 (arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the floating-point CFFT/CIFFT.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q15_8c.html new file mode 100644 index 0000000..24056eb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cfft_radix4_init_q15.c File Reference +CMSIS-DSP: arm_cfft_radix4_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_cfft_radix4_init_q15 (arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q15 CFFT/CIFFT.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q31_8c.html new file mode 100644 index 0000000..2022e2a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cfft_radix4_init_q31.c File Reference +CMSIS-DSP: arm_cfft_radix4_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_cfft_radix4_init_q31 (arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q31 CFFT/CIFFT.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix4__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__q15_8c.html new file mode 100644 index 0000000..80ba0bb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__q15_8c.html @@ -0,0 +1,292 @@ + + + + + +arm_cfft_radix4_q15.c File Reference +CMSIS-DSP: arm_cfft_radix4_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_q15.c File Reference
    +
    +
    + + + + + + + + + + + + + +

    +Functions

    void arm_radix4_butterfly_q15 (q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier)
     Core function for the Q15 CFFT butterfly process.
     
    void arm_radix4_butterfly_inverse_q15 (q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier)
     Core function for the Q15 CIFFT butterfly process.
     
    void arm_bitreversal_q15 (q15_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc)
     Processing function for the Q15 CFFT/CIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_q15 (q15_tpSrc,
    uint32_t fftLen,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    + +

    Referenced by arm_cfft_radix2_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_inverse_q15 (q15_tpSrc16,
    uint32_t fftLen,
    q15_tpCoef16,
    uint32_t twidCoefModifier 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*pSrc16points to the in-place buffer of Q15 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoef16points to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, and _SIMD32_OFFSET.

    + +

    Referenced by arm_cfft_q15(), arm_cfft_radix4_q15(), and arm_cfft_radix4by2_inverse_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_q15 (q15_tpSrc16,
    uint32_t fftLen,
    q15_tpCoef16,
    uint32_t twidCoefModifier 
    )
    +
    +

    end of ComplexFFT group

    +
    Parameters
    + + + + + +
    [in,out]*pSrc16points to the in-place buffer of Q15 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoef16points to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, and _SIMD32_OFFSET.

    + +

    Referenced by arm_cfft_q15(), arm_cfft_radix4_q15(), and arm_cfft_radix4by2_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix4__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__q31_8c.html new file mode 100644 index 0000000..2892c02 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix4__q31_8c.html @@ -0,0 +1,292 @@ + + + + + +arm_cfft_radix4_q31.c File Reference +CMSIS-DSP: arm_cfft_radix4_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_q31.c File Reference
    +
    +
    + + + + + + + + + + + + + +

    +Functions

    void arm_radix4_butterfly_inverse_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier)
     Core function for the Q31 CIFFT butterfly process.
     
    void arm_radix4_butterfly_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier)
     Core function for the Q31 CFFT butterfly process.
     
    void arm_bitreversal_q31 (q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_cfft_radix4_q31 (const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc)
     Processing function for the Q31 CFFT/CIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_q31 (q31_tpSrc,
    uint32_t fftLen,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    + +

    Referenced by arm_cfft_radix2_q31(), and arm_cfft_radix4_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_inverse_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpCoef,
    uint32_t twidCoefModifier 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*pSrcpoints to the in-place buffer of Q31 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoefpoints to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD64.

    + +

    Referenced by arm_cfft_q31(), arm_cfft_radix4_q31(), and arm_cfft_radix4by2_inverse_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpCoef,
    uint32_t twidCoefModifier 
    )
    +
    +

    end of ComplexFFT group

    +
    Parameters
    + + + + + +
    [in,out]*pSrcpoints to the in-place buffer of Q31 data type.
    [in]fftLenlength of the FFT.
    [in]*pCoefpoints to twiddle coefficient buffer.
    [in]twidCoefModifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD64.

    + +

    Referenced by arm_cfft_q31(), arm_cfft_radix4_q31(), and arm_cfft_radix4by2_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cfft__radix8__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cfft__radix8__f32_8c.html new file mode 100644 index 0000000..74e8271 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cfft__radix8__f32_8c.html @@ -0,0 +1,178 @@ + + + + + +arm_cfft_radix8_f32.c File Reference +CMSIS-DSP: arm_cfft_radix8_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix8_f32.c File Reference
    +
    +
    + + + + +

    +Functions

    void arm_radix8_butterfly_f32 (float32_t *pSrc, uint16_t fftLen, const float32_t *pCoef, uint16_t twidCoefModifier)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix8_butterfly_f32 (float32_tpSrc,
    uint16_t fftLen,
    const float32_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..5e0e892 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_class_marks_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_class_marks_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..3beb926 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,256 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_class_marks_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..5ab0445 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_class_marks_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..61ac521 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_class_marks_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..96a63ef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_class_marks_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..c326759 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_class_marks_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_abstract_8txt.html new file mode 100644 index 0000000..d03f9d2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_class_marks_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_class_marks_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..31ab829 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_class_marks_example/GCC/Startup/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..9c3f91c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_class_marks_example/GCC/Startup/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..96d4474 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_class_marks_example/GCC/Startup/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__conj__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__conj__f32_8c.html new file mode 100644 index 0000000..5d8f8ab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__conj__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_conj_f32.c File Reference +CMSIS-DSP: arm_cmplx_conj_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_conj_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_conj_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex conjugate.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__conj__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__conj__q15_8c.html new file mode 100644 index 0000000..16b30fd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__conj__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_conj_q15.c File Reference +CMSIS-DSP: arm_cmplx_conj_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_conj_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_conj_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex conjugate.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__conj__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__conj__q31_8c.html new file mode 100644 index 0000000..e331699 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__conj__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_conj_q31.c File Reference +CMSIS-DSP: arm_cmplx_conj_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_conj_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_conj_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex conjugate.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__f32_8c.html new file mode 100644 index 0000000..f0c031b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_dot_prod_f32.c File Reference +CMSIS-DSP: arm_cmplx_dot_prod_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_dot_prod_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult)
     Floating-point complex dot product.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q15_8c.html new file mode 100644 index 0000000..567715a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_dot_prod_q15.c File Reference +CMSIS-DSP: arm_cmplx_dot_prod_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_dot_prod_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult)
     Q15 complex dot product.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q31_8c.html new file mode 100644 index 0000000..f5a52a4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__dot__prod__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_dot_prod_q31.c File Reference +CMSIS-DSP: arm_cmplx_dot_prod_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_dot_prod_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult)
     Q31 complex dot product.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mag__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__f32_8c.html new file mode 100644 index 0000000..5f850fc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mag_f32.c File Reference +CMSIS-DSP: arm_cmplx_mag_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mag_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mag_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex magnitude.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mag__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__q15_8c.html new file mode 100644 index 0000000..592d6bd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mag_q15.c File Reference +CMSIS-DSP: arm_cmplx_mag_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mag_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mag_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex magnitude.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mag__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__q31_8c.html new file mode 100644 index 0000000..4c6c8d4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mag_q31.c File Reference +CMSIS-DSP: arm_cmplx_mag_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mag_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mag_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex magnitude.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__f32_8c.html new file mode 100644 index 0000000..a778b99 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mag_squared_f32.c File Reference +CMSIS-DSP: arm_cmplx_mag_squared_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mag_squared_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mag_squared_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex magnitude squared.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q15_8c.html new file mode 100644 index 0000000..a6ecacb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mag_squared_q15.c File Reference +CMSIS-DSP: arm_cmplx_mag_squared_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mag_squared_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mag_squared_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex magnitude squared.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q31_8c.html new file mode 100644 index 0000000..5234cc5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mag__squared__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mag_squared_q31.c File Reference +CMSIS-DSP: arm_cmplx_mag_squared_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mag_squared_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mag_squared_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex magnitude squared.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__f32_8c.html new file mode 100644 index 0000000..bbc39ab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mult_cmplx_f32.c File Reference +CMSIS-DSP: arm_cmplx_mult_cmplx_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mult_cmplx_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mult_cmplx_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples)
     Floating-point complex-by-complex multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q15_8c.html new file mode 100644 index 0000000..4717fcc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mult_cmplx_q15.c File Reference +CMSIS-DSP: arm_cmplx_mult_cmplx_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mult_cmplx_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mult_cmplx_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples)
     Q15 complex-by-complex multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q31_8c.html new file mode 100644 index 0000000..deaedd2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__cmplx__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mult_cmplx_q31.c File Reference +CMSIS-DSP: arm_cmplx_mult_cmplx_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mult_cmplx_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mult_cmplx_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples)
     Q31 complex-by-complex multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__f32_8c.html new file mode 100644 index 0000000..53a14da --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mult_real_f32.c File Reference +CMSIS-DSP: arm_cmplx_mult_real_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mult_real_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mult_real_f32 (float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples)
     Floating-point complex-by-real multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q15_8c.html new file mode 100644 index 0000000..fad116c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mult_real_q15.c File Reference +CMSIS-DSP: arm_cmplx_mult_real_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mult_real_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mult_real_q15 (q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples)
     Q15 complex-by-real multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q31_8c.html new file mode 100644 index 0000000..470d69a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cmplx__mult__real__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cmplx_mult_real_q31.c File Reference +CMSIS-DSP: arm_cmplx_mult_real_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cmplx_mult_real_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_cmplx_mult_real_q31 (q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples)
     Q31 complex-by-real multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__common__tables_8c.html b/CMSIS/Documentation/DSP/html/arm__common__tables_8c.html new file mode 100644 index 0000000..21197db --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__common__tables_8c.html @@ -0,0 +1,695 @@ + + + + + +arm_common_tables.c File Reference +CMSIS-DSP: arm_common_tables.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_common_tables.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    const uint16_t armBitRevTable [1024]
     
    const float32_t twiddleCoef_16 [32]
     
    const float32_t twiddleCoef_32 [64]
     
    const float32_t twiddleCoef_64 [128]
     
    const float32_t twiddleCoef_128 [256]
     
    const float32_t twiddleCoef_256 [512]
     
    const float32_t twiddleCoef_512 [1024]
     
    const float32_t twiddleCoef_1024 [2048]
     
    const float32_t twiddleCoef_2048 [4096]
     
    const float32_t twiddleCoef_4096 [8192]
     
    const q31_t twiddleCoef_16_q31 [24]
     
    const q31_t twiddleCoef_32_q31 [48]
     
    const q31_t twiddleCoef_64_q31 [96]
     
    const q31_t twiddleCoef_128_q31 [192]
     
    const q31_t twiddleCoef_256_q31 [384]
     
    const q31_t twiddleCoef_512_q31 [768]
     
    const q31_t twiddleCoef_1024_q31 [1536]
     
    const q31_t twiddleCoef_2048_q31 [3072]
     
    const q31_t twiddleCoef_4096_q31 [6144]
     
    const q15_t twiddleCoef_16_q15 [24]
     
    const q15_t twiddleCoef_32_q15 [48]
     
    const q15_t twiddleCoef_64_q15 [96]
     
    const q15_t twiddleCoef_128_q15 [192]
     
    const q15_t twiddleCoef_256_q15 [384]
     
    const q15_t twiddleCoef_512_q15 [768]
     
    const q15_t twiddleCoef_1024_q15 [1536]
     
    const q15_t twiddleCoef_2048_q15 [3072]
     
    const q15_t twiddleCoef_4096_q15 [6144]
     
    const q15_t ALIGN4 armRecipTableQ15 [64]
     
    const q31_t armRecipTableQ31 [64]
     
    const uint16_t armBitRevIndexTable16 [ARMBITREVINDEXTABLE__16_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable32 [ARMBITREVINDEXTABLE__32_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable64 [ARMBITREVINDEXTABLE__64_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable128 [ARMBITREVINDEXTABLE_128_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable256 [ARMBITREVINDEXTABLE_256_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable512 [ARMBITREVINDEXTABLE_512_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable1024 [ARMBITREVINDEXTABLE1024_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable2048 [ARMBITREVINDEXTABLE2048_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable4096 [ARMBITREVINDEXTABLE4096_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_16 [ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_32 [ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_64 [ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_128 [ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_256 [ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_512 [ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_1024 [ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_2048 [ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_4096 [ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH]
     
    const float32_t twiddleCoef_rfft_32 [32]
     
    const float32_t twiddleCoef_rfft_64 [64]
     
    const float32_t twiddleCoef_rfft_128 [128]
     
    const float32_t twiddleCoef_rfft_256 [256]
     
    const float32_t twiddleCoef_rfft_512 [512]
     
    const float32_t twiddleCoef_rfft_1024 [1024]
     
    const float32_t twiddleCoef_rfft_2048 [2048]
     
    const float32_t twiddleCoef_rfft_4096 [4096]
     
    const float32_t sinTable_f32 [FAST_MATH_TABLE_SIZE+1]
     
    const q31_t sinTable_q31 [FAST_MATH_TABLE_SIZE+1]
     
    const q15_t sinTable_q15 [FAST_MATH_TABLE_SIZE+1]
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable1024[ARMBITREVINDEXTABLE1024_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable128[ARMBITREVINDEXTABLE_128_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable16[ARMBITREVINDEXTABLE__16_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable2048[ARMBITREVINDEXTABLE2048_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable256[ARMBITREVINDEXTABLE_256_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable32[ARMBITREVINDEXTABLE__32_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable4096[ARMBITREVINDEXTABLE4096_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable512[ARMBITREVINDEXTABLE_512_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable64[ARMBITREVINDEXTABLE__64_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_1024[ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_128[ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_16[ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_2048[ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_256[ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_32[ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_4096[ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_512[ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_64[ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const q15_t ALIGN4 armRecipTableQ15[64]
    +
    +

    end of CFFT_CIFFT group

    + +

    Referenced by arm_lms_norm_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const q31_t armRecipTableQ31[64]
    +
    + +

    Referenced by arm_lms_norm_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const float32_t sinTable_f32[FAST_MATH_TABLE_SIZE+1]
    +
    +
    Example code for the generation of the floating-point sine table:
    +tableSize = 512;    
    +for(n = 0; n < (tableSize + 1); n++)    
    +{    
    +     sinTable[n]=sin(2*pi*n/tableSize);    
    +}
    +
    where pi value is 3.14159265358979
    + +

    Referenced by arm_cos_f32(), arm_sin_cos_f32(), and arm_sin_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t sinTable_q15[FAST_MATH_TABLE_SIZE+1]
    +
    +
    Table values are in Q15 (1.15 fixed-point format) and generation is done in three steps. First, generate sin values in floating point:
    +tableSize = 512;      
    +for(n = 0; n < (tableSize + 1); n++)    
    +{    
    +     sinTable[n]= sin(2*pi*n/tableSize);    
    +} 
    where pi value is 3.14159265358979
    +
    Second, convert floating-point to Q15 (Fixed point): (sinTable[i] * pow(2, 15))
    +
    Finally, round to the nearest integer value: sinTable[i] += (sinTable[i] > 0 ? 0.5 :-0.5);
    + +

    Referenced by arm_cos_q15(), and arm_sin_q15().

    + +
    +
    + +
    +
    + + + + +
    const q31_t sinTable_q31[FAST_MATH_TABLE_SIZE+1]
    +
    +
    Table values are in Q31 (1.31 fixed-point format) and generation is done in three steps. First, generate sin values in floating point:
    +tableSize = 512;      
    +for(n = 0; n < (tableSize + 1); n++)    
    +{    
    +     sinTable[n]= sin(2*pi*n/tableSize);    
    +} 
    where pi value is 3.14159265358979
    +
    Second, convert floating-point to Q31 (Fixed point): (sinTable[i] * pow(2, 31))
    +
    Finally, round to the nearest integer value: sinTable[i] += (sinTable[i] > 0 ? 0.5 :-0.5);
    + +

    Referenced by arm_cos_q31(), arm_sin_cos_q31(), and arm_sin_q31().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_1024[1024]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_128[128]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_2048[2048]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_256[256]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_32[32]
    +
    +
    Example code for Floating-point RFFT Twiddle factors Generation:
    +
    TW = exp(2*pi*i*[0:L/2-1]/L - pi/2*i).' 
    +
    Real and Imag values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_4096[4096]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_512[512]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_64[64]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__common__tables_8h.html b/CMSIS/Documentation/DSP/html/arm__common__tables_8h.html new file mode 100644 index 0000000..98b62bb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__common__tables_8h.html @@ -0,0 +1,984 @@ + + + + + +arm_common_tables.h File Reference +CMSIS-DSP: arm_common_tables.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_common_tables.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define twiddleCoef
     
    #define ARMBITREVINDEXTABLE__16_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE__32_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE__64_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_128_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_256_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_512_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE1024_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE2048_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE4096_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH
     
    #define ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    const uint16_t armBitRevTable [1024]
     
    const q15_t armRecipTableQ15 [64]
     
    const q31_t armRecipTableQ31 [64]
     
    const float32_t twiddleCoef_16 [32]
     
    const float32_t twiddleCoef_32 [64]
     
    const float32_t twiddleCoef_64 [128]
     
    const float32_t twiddleCoef_128 [256]
     
    const float32_t twiddleCoef_256 [512]
     
    const float32_t twiddleCoef_512 [1024]
     
    const float32_t twiddleCoef_1024 [2048]
     
    const float32_t twiddleCoef_2048 [4096]
     
    const float32_t twiddleCoef_4096 [8192]
     
    const q31_t twiddleCoef_16_q31 [24]
     
    const q31_t twiddleCoef_32_q31 [48]
     
    const q31_t twiddleCoef_64_q31 [96]
     
    const q31_t twiddleCoef_128_q31 [192]
     
    const q31_t twiddleCoef_256_q31 [384]
     
    const q31_t twiddleCoef_512_q31 [768]
     
    const q31_t twiddleCoef_1024_q31 [1536]
     
    const q31_t twiddleCoef_2048_q31 [3072]
     
    const q31_t twiddleCoef_4096_q31 [6144]
     
    const q15_t twiddleCoef_16_q15 [24]
     
    const q15_t twiddleCoef_32_q15 [48]
     
    const q15_t twiddleCoef_64_q15 [96]
     
    const q15_t twiddleCoef_128_q15 [192]
     
    const q15_t twiddleCoef_256_q15 [384]
     
    const q15_t twiddleCoef_512_q15 [768]
     
    const q15_t twiddleCoef_1024_q15 [1536]
     
    const q15_t twiddleCoef_2048_q15 [3072]
     
    const q15_t twiddleCoef_4096_q15 [6144]
     
    const float32_t twiddleCoef_rfft_32 [32]
     
    const float32_t twiddleCoef_rfft_64 [64]
     
    const float32_t twiddleCoef_rfft_128 [128]
     
    const float32_t twiddleCoef_rfft_256 [256]
     
    const float32_t twiddleCoef_rfft_512 [512]
     
    const float32_t twiddleCoef_rfft_1024 [1024]
     
    const float32_t twiddleCoef_rfft_2048 [2048]
     
    const float32_t twiddleCoef_rfft_4096 [4096]
     
    const uint16_t armBitRevIndexTable16 [ARMBITREVINDEXTABLE__16_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable32 [ARMBITREVINDEXTABLE__32_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable64 [ARMBITREVINDEXTABLE__64_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable128 [ARMBITREVINDEXTABLE_128_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable256 [ARMBITREVINDEXTABLE_256_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable512 [ARMBITREVINDEXTABLE_512_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable1024 [ARMBITREVINDEXTABLE1024_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable2048 [ARMBITREVINDEXTABLE2048_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable4096 [ARMBITREVINDEXTABLE4096_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_16 [ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_32 [ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_64 [ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_128 [ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_256 [ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_512 [ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_1024 [ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_2048 [ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH]
     
    const uint16_t armBitRevIndexTable_fixed_4096 [ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH]
     
    const float32_t sinTable_f32 [FAST_MATH_TABLE_SIZE+1]
     
    const q31_t sinTable_q31 [FAST_MATH_TABLE_SIZE+1]
     
    const q15_t sinTable_q15 [FAST_MATH_TABLE_SIZE+1]
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE1024_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE2048_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE4096_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_128_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_256_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_512_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE__16_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE__32_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE__64_TABLE_LENGTH
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH
    +
    + +
    +
    + +
    +
    + + + + +
    #define twiddleCoef
    +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable1024[ARMBITREVINDEXTABLE1024_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable128[ARMBITREVINDEXTABLE_128_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable16[ARMBITREVINDEXTABLE__16_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable2048[ARMBITREVINDEXTABLE2048_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable256[ARMBITREVINDEXTABLE_256_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable32[ARMBITREVINDEXTABLE__32_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable4096[ARMBITREVINDEXTABLE4096_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable512[ARMBITREVINDEXTABLE_512_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable64[ARMBITREVINDEXTABLE__64_TABLE_LENGTH]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_1024[ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_128[ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_16[ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_2048[ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_256[ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_32[ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_4096[ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_512[ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const uint16_t armBitRevIndexTable_fixed_64[ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH]
    +
    + +
    +
    + +
    +
    + + + + +
    const q15_t armRecipTableQ15[64]
    +
    +

    end of CFFT_CIFFT group

    + +

    Referenced by arm_lms_norm_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const q31_t armRecipTableQ31[64]
    +
    + +

    Referenced by arm_lms_norm_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const float32_t sinTable_f32[FAST_MATH_TABLE_SIZE+1]
    +
    +
    Example code for the generation of the floating-point sine table:
    +tableSize = 512;    
    +for(n = 0; n < (tableSize + 1); n++)    
    +{    
    +     sinTable[n]=sin(2*pi*n/tableSize);    
    +}
    +
    where pi value is 3.14159265358979
    + +

    Referenced by arm_cos_f32(), arm_sin_cos_f32(), and arm_sin_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t sinTable_q15[FAST_MATH_TABLE_SIZE+1]
    +
    +
    Table values are in Q15 (1.15 fixed-point format) and generation is done in three steps. First, generate sin values in floating point:
    +tableSize = 512;      
    +for(n = 0; n < (tableSize + 1); n++)    
    +{    
    +     sinTable[n]= sin(2*pi*n/tableSize);    
    +} 
    where pi value is 3.14159265358979
    +
    Second, convert floating-point to Q15 (Fixed point): (sinTable[i] * pow(2, 15))
    +
    Finally, round to the nearest integer value: sinTable[i] += (sinTable[i] > 0 ? 0.5 :-0.5);
    + +

    Referenced by arm_cos_q15(), and arm_sin_q15().

    + +
    +
    + +
    +
    + + + + +
    const q31_t sinTable_q31[FAST_MATH_TABLE_SIZE+1]
    +
    +
    Table values are in Q31 (1.31 fixed-point format) and generation is done in three steps. First, generate sin values in floating point:
    +tableSize = 512;      
    +for(n = 0; n < (tableSize + 1); n++)    
    +{    
    +     sinTable[n]= sin(2*pi*n/tableSize);    
    +} 
    where pi value is 3.14159265358979
    +
    Second, convert floating-point to Q31 (Fixed point): (sinTable[i] * pow(2, 31))
    +
    Finally, round to the nearest integer value: sinTable[i] += (sinTable[i] > 0 ? 0.5 :-0.5);
    + +

    Referenced by arm_cos_q31(), arm_sin_cos_q31(), and arm_sin_q31().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_1024[1024]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_128[128]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_2048[2048]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_256[256]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_32[32]
    +
    +
    Example code for Floating-point RFFT Twiddle factors Generation:
    +
    TW = exp(2*pi*i*[0:L/2-1]/L - pi/2*i).' 
    +
    Real and Imag values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_4096[4096]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_512[512]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_rfft_64[64]
    +
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__const__structs_8c.html b/CMSIS/Documentation/DSP/html/arm__const__structs_8c.html new file mode 100644 index 0000000..391c687 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__const__structs_8c.html @@ -0,0 +1,553 @@ + + + + + +arm_const_structs.c File Reference +CMSIS-DSP: arm_const_structs.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_const_structs.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    const arm_cfft_instance_f32 arm_cfft_sR_f32_len16
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len32
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len64
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len128
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len256
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len512
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len1024
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len2048
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len4096
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len16
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len32
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len64
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len128
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len256
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len512
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len1024
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len2048
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len4096
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len16
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len32
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len64
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len128
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len256
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len512
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len1024
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len2048
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len4096
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len1024
    +
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len128
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len16
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len2048
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len256
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len32
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len4096
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len512
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len64
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len1024
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len128
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len16
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len2048
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len256
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len32
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len4096
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len512
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len64
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len1024
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len128
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len16
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len2048
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len256
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len32
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len4096
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len512
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len64
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__const__structs_8h.html b/CMSIS/Documentation/DSP/html/arm__const__structs_8h.html new file mode 100644 index 0000000..bc4656d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__const__structs_8h.html @@ -0,0 +1,552 @@ + + + + + +arm_const_structs.h File Reference +CMSIS-DSP: arm_const_structs.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_const_structs.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    const arm_cfft_instance_f32 arm_cfft_sR_f32_len16
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len32
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len64
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len128
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len256
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len512
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len1024
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len2048
     
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len4096
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len16
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len32
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len64
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len128
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len256
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len512
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len1024
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len2048
     
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len4096
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len16
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len32
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len64
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len128
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len256
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len512
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len1024
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len2048
     
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len4096
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len1024
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len128
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len16
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len2048
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len256
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len32
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len4096
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len512
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_f32 arm_cfft_sR_f32_len64
    +
    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len1024
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len128
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len16
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len2048
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len256
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len32
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len4096
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len512
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15 arm_cfft_sR_q15_len64
    +
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len1024
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len128
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len16
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len2048
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len256
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len32
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len4096
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len512
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31 arm_cfft_sR_q31_len64
    +
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__f32_8c.html new file mode 100644 index 0000000..fd3ac18 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_f32.c File Reference +CMSIS-DSP: arm_conv_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst)
     Convolution of floating-point sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__fast__opt__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__fast__opt__q15_8c.html new file mode 100644 index 0000000..8481a46 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__fast__opt__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_fast_opt_q15.c File Reference +CMSIS-DSP: arm_conv_fast_opt_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_fast_opt_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__fast__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__fast__q15_8c.html new file mode 100644 index 0000000..39198dd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__fast__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_fast_q15.c File Reference +CMSIS-DSP: arm_conv_fast_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_fast_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__fast__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__fast__q31_8c.html new file mode 100644 index 0000000..40edb11 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__fast__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_fast_q31.c File Reference +CMSIS-DSP: arm_conv_fast_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_fast_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__opt__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__opt__q15_8c.html new file mode 100644 index 0000000..15cf4ab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__opt__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_opt_q15.c File Reference +CMSIS-DSP: arm_conv_opt_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_opt_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q15 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__opt__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__opt__q7_8c.html new file mode 100644 index 0000000..036e8f9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__opt__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_opt_q7.c File Reference +CMSIS-DSP: arm_conv_opt_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_opt_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q7 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__f32_8c.html new file mode 100644 index 0000000..ed72dc8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_f32.c File Reference +CMSIS-DSP: arm_conv_partial_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of floating-point sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__opt__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__opt__q15_8c.html new file mode 100644 index 0000000..9fb9cbb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__opt__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_fast_opt_q15.c File Reference +CMSIS-DSP: arm_conv_partial_fast_opt_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_fast_opt_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q15_8c.html new file mode 100644 index 0000000..53425ce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_fast_q15.c File Reference +CMSIS-DSP: arm_conv_partial_fast_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_fast_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q31_8c.html new file mode 100644 index 0000000..c9e1832 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__fast__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_fast_q31.c File Reference +CMSIS-DSP: arm_conv_partial_fast_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_fast_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q15_8c.html new file mode 100644 index 0000000..fe8ddeb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_opt_q15.c File Reference +CMSIS-DSP: arm_conv_partial_opt_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_opt_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q15 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q7_8c.html new file mode 100644 index 0000000..5d0244e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__opt__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_opt_q7.c File Reference +CMSIS-DSP: arm_conv_partial_opt_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_opt_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q7 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__q15_8c.html new file mode 100644 index 0000000..b19e0b6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_q15.c File Reference +CMSIS-DSP: arm_conv_partial_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q15 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__q31_8c.html new file mode 100644 index 0000000..1771cce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_q31.c File Reference +CMSIS-DSP: arm_conv_partial_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q31 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__partial__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__partial__q7_8c.html new file mode 100644 index 0000000..dccd8fa --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__partial__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_partial_q7.c File Reference +CMSIS-DSP: arm_conv_partial_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_partial_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_conv_partial_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q7 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__q15_8c.html new file mode 100644 index 0000000..63fe128 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_q15.c File Reference +CMSIS-DSP: arm_conv_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Convolution of Q15 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__q31_8c.html new file mode 100644 index 0000000..4a4d36b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_q31.c File Reference +CMSIS-DSP: arm_conv_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Convolution of Q31 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__conv__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__conv__q7_8c.html new file mode 100644 index 0000000..e01f1fb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__conv__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_conv_q7.c File Reference +CMSIS-DSP: arm_conv_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_conv_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_conv_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst)
     Convolution of Q7 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..b4e0adf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_convolution_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_convolution_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..76fe15c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..71b036a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..0d3b6df --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..36f4d35 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..c4f35d9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_convolution_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8c.html new file mode 100644 index 0000000..f3ae89d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8c.html @@ -0,0 +1,748 @@ + + + + + +math_helper.c File Reference +CMSIS-DSP: math_helper.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/ARM/math_helper.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q7 (q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_calc_2pow (uint32_t numShifts)
     Calculates pow(2, numShifts)
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +

    Referenced by arm_apply_guard_bits().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q7 (q7_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    +
    Examples:
    arm_convolution_example_f32.c, arm_fir_example_f32.c, arm_graphic_equalizer_example_q31.c, arm_linear_interp_example_f32.c, and arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8h.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8h.html new file mode 100644 index 0000000..8bbbc59 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_a_r_m_2math__helper_8h.html @@ -0,0 +1,697 @@ + + + + + +math_helper.h File Reference +CMSIS-DSP: math_helper.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/ARM/math_helper.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_calc_2pow (uint32_t guard_bits)
     Calculates pow(2, numShifts)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_abstract_8txt.html new file mode 100644 index 0000000..e80de01 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_convolution_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_convolution_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..c50734f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/GCC/Startup/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..03ab03e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/GCC/Startup/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..76f1c27 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/GCC/Startup/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8c.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8c.html new file mode 100644 index 0000000..6d78c25 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8c.html @@ -0,0 +1,749 @@ + + + + + +math_helper.c File Reference +CMSIS-DSP: math_helper.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/GCC/math_helper.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q7 (q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_calc_2pow (uint32_t numShifts)
     Calculates pow(2, numShifts)
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +

    References arm_calc_2pow().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q7 (q7_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8h.html b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8h.html new file mode 100644 index 0000000..345f091 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__convolution__example_2_g_c_c_2math__helper_8h.html @@ -0,0 +1,697 @@ + + + + + +math_helper.h File Reference +CMSIS-DSP: math_helper.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_convolution_example/GCC/math_helper.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_calc_2pow (uint32_t guard_bits)
     Calculates pow(2, numShifts)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__copy__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__copy__f32_8c.html new file mode 100644 index 0000000..aed0a27 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__copy__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_copy_f32.c File Reference +CMSIS-DSP: arm_copy_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_copy_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_copy_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Copies the elements of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__copy__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__copy__q15_8c.html new file mode 100644 index 0000000..a379cb0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__copy__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_copy_q15.c File Reference +CMSIS-DSP: arm_copy_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_copy_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_copy_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Copies the elements of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__copy__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__copy__q31_8c.html new file mode 100644 index 0000000..4d107b0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__copy__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_copy_q31.c File Reference +CMSIS-DSP: arm_copy_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_copy_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_copy_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Copies the elements of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__copy__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__copy__q7_8c.html new file mode 100644 index 0000000..701e76b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__copy__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_copy_q7.c File Reference +CMSIS-DSP: arm_copy_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_copy_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_copy_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Copies the elements of a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__f32_8c.html new file mode 100644 index 0000000..9cb9645 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_f32.c File Reference +CMSIS-DSP: arm_correlate_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst)
     Correlation of floating-point sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__fast__opt__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__fast__opt__q15_8c.html new file mode 100644 index 0000000..897197e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__fast__opt__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_fast_opt_q15.c File Reference +CMSIS-DSP: arm_correlate_fast_opt_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_fast_opt_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch)
     Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__fast__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__fast__q15_8c.html new file mode 100644 index 0000000..73f8e15 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__fast__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_fast_q15.c File Reference +CMSIS-DSP: arm_correlate_fast_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_fast_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__fast__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__fast__q31_8c.html new file mode 100644 index 0000000..cacd255 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__fast__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_fast_q31.c File Reference +CMSIS-DSP: arm_correlate_fast_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_fast_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Correlation of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__opt__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__opt__q15_8c.html new file mode 100644 index 0000000..e562084 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__opt__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_opt_q15.c File Reference +CMSIS-DSP: arm_correlate_opt_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_opt_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch)
     Correlation of Q15 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__opt__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__opt__q7_8c.html new file mode 100644 index 0000000..0901258 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__opt__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_opt_q7.c File Reference +CMSIS-DSP: arm_correlate_opt_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_opt_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Correlation of Q7 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__q15_8c.html new file mode 100644 index 0000000..aef11ba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_q15.c File Reference +CMSIS-DSP: arm_correlate_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Correlation of Q15 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__q31_8c.html new file mode 100644 index 0000000..1e2aa98 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_q31.c File Reference +CMSIS-DSP: arm_correlate_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Correlation of Q31 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__correlate__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__correlate__q7_8c.html new file mode 100644 index 0000000..65beba7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__correlate__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_correlate_q7.c File Reference +CMSIS-DSP: arm_correlate_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_correlate_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_correlate_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst)
     Correlation of Q7 sequences.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cos__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__cos__f32_8c.html new file mode 100644 index 0000000..6bb1789 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cos__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cos_f32.c File Reference +CMSIS-DSP: arm_cos_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cos_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    float32_t arm_cos_f32 (float32_t x)
     Fast approximation to the trigonometric cosine function for floating-point data.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cos__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__cos__q15_8c.html new file mode 100644 index 0000000..15b1143 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cos__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cos_q15.c File Reference +CMSIS-DSP: arm_cos_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cos_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    q15_t arm_cos_q15 (q15_t x)
     Fast approximation to the trigonometric cosine function for Q15 data.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__cos__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__cos__q31_8c.html new file mode 100644 index 0000000..8b9f43e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__cos__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_cos_q31.c File Reference +CMSIS-DSP: arm_cos_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cos_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    q31_t arm_cos_q31 (q31_t x)
     Fast approximation to the trigonometric cosine function for Q31 data.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dct4__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__dct4__f32_8c.html new file mode 100644 index 0000000..4659e7a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dct4__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_dct4_f32.c File Reference +CMSIS-DSP: arm_dct4_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_dct4_f32 (const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer)
     Processing function for the floating-point DCT4/IDCT4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dct4__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__dct4__init__f32_8c.html new file mode 100644 index 0000000..20483ad --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dct4__init__f32_8c.html @@ -0,0 +1,158 @@ + + + + + +arm_dct4_init_f32.c File Reference +CMSIS-DSP: arm_dct4_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_dct4_init_f32 (arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize)
     Initialization function for the floating-point DCT4/IDCT4.
     
    + + + + + + + + + + + + + + + + + +

    +Variables

    static const float32_t Weights_128 [256]
     
    static const float32_t Weights_512 [1024]
     
    static const float32_t Weights_2048 [4096]
     
    static const float32_t Weights_8192 [16384]
     
    static const float32_t cos_factors_128 [128]
     
    static const float32_t cos_factors_512 [512]
     
    static const float32_t cos_factors_2048 [2048]
     
    static const float32_t cos_factors_8192 [8192]
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dct4__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__dct4__init__q15_8c.html new file mode 100644 index 0000000..3f08f98 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dct4__init__q15_8c.html @@ -0,0 +1,158 @@ + + + + + +arm_dct4_init_q15.c File Reference +CMSIS-DSP: arm_dct4_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_dct4_init_q15 (arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize)
     Initialization function for the Q15 DCT4/IDCT4.
     
    + + + + + + + + + + + + + + + + + +

    +Variables

    static const q15_t ALIGN4 WeightsQ15_128 [256]
     
    static const q15_t ALIGN4 WeightsQ15_512 [1024]
     
    static const q15_t ALIGN4 WeightsQ15_2048 [4096]
     
    static const q15_t ALIGN4 WeightsQ15_8192 [16384]
     
    static const q15_t ALIGN4 cos_factorsQ15_128 [128]
     
    static const q15_t ALIGN4 cos_factorsQ15_512 [512]
     
    static const q15_t ALIGN4 cos_factorsQ15_2048 [2048]
     
    static const q15_t ALIGN4 cos_factorsQ15_8192 [8192]
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dct4__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__dct4__init__q31_8c.html new file mode 100644 index 0000000..da30961 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dct4__init__q31_8c.html @@ -0,0 +1,158 @@ + + + + + +arm_dct4_init_q31.c File Reference +CMSIS-DSP: arm_dct4_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_dct4_init_q31 (arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize)
     Initialization function for the Q31 DCT4/IDCT4.
     
    + + + + + + + + + + + + + + + + + +

    +Variables

    static const q31_t WeightsQ31_128 [256]
     
    static const q31_t WeightsQ31_512 [1024]
     
    static const q31_t WeightsQ31_2048 [4096]
     
    static const q31_t WeightsQ31_8192 [16384]
     
    static const q31_t cos_factorsQ31_128 [128]
     
    static const q31_t cos_factorsQ31_512 [512]
     
    static const q31_t cos_factorsQ31_2048 [2048]
     
    static const q31_t cos_factorsQ31_8192 [8192]
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dct4__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__dct4__q15_8c.html new file mode 100644 index 0000000..8bca3c3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dct4__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_dct4_q15.c File Reference +CMSIS-DSP: arm_dct4_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_dct4_q15 (const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer)
     Processing function for the Q15 DCT4/IDCT4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dct4__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__dct4__q31_8c.html new file mode 100644 index 0000000..e3bcef0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dct4__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_dct4_q31.c File Reference +CMSIS-DSP: arm_dct4_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_dct4_q31 (const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer)
     Processing function for the Q31 DCT4/IDCT4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dot__prod__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__dot__prod__f32_8c.html new file mode 100644 index 0000000..a80ebd8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dot__prod__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_dot_prod_f32.c File Reference +CMSIS-DSP: arm_dot_prod_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dot_prod_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result)
     Dot product of floating-point vectors.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dot__prod__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__dot__prod__q15_8c.html new file mode 100644 index 0000000..df89e64 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dot__prod__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_dot_prod_q15.c File Reference +CMSIS-DSP: arm_dot_prod_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dot_prod_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result)
     Dot product of Q15 vectors.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dot__prod__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__dot__prod__q31_8c.html new file mode 100644 index 0000000..08a3356 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dot__prod__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_dot_prod_q31.c File Reference +CMSIS-DSP: arm_dot_prod_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dot_prod_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result)
     Dot product of Q31 vectors.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dot__prod__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__dot__prod__q7_8c.html new file mode 100644 index 0000000..aaff19b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dot__prod__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_dot_prod_q7.c File Reference +CMSIS-DSP: arm_dot_prod_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dot_prod_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_dot_prod_q7 (q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result)
     Dot product of Q7 vectors.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..fef245f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_dotproduct_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_dotproduct_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..732af09 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dotproduct_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..314fcee --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dotproduct_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..1d31414 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dotproduct_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..e478d88 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dotproduct_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..4015a0c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_dotproduct_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html new file mode 100644 index 0000000..510f981 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_dotproduct_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_dotproduct_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..6fd3e8c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dotproduct_example/GCC/Startup/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..6c50f16 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dotproduct_example/GCC/Startup/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..4a71973 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dotproduct_example/GCC/Startup/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..bbf3b5c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,151 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_fft_bin_example for Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_fft_bin_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..b2c7fb6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fft_bin_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..b1a18e8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fft_bin_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..99737ea --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fft_bin_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..bd37de2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fft_bin_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..270a317 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_fft_bin_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html new file mode 100644 index 0000000..e45fdc0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html @@ -0,0 +1,151 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_fft_bin_example for Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_fft_bin_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..2dcdb66 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fft_bin_example/GCC/Startup/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..745fc35 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fft_bin_example/GCC/Startup/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..094998a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fft_bin_example/GCC/Startup/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fill__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fill__f32_8c.html new file mode 100644 index 0000000..ecd0490 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fill__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fill_f32.c File Reference +CMSIS-DSP: arm_fill_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fill_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fill_f32 (float32_t value, float32_t *pDst, uint32_t blockSize)
     Fills a constant value into a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fill__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fill__q15_8c.html new file mode 100644 index 0000000..467680d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fill__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fill_q15.c File Reference +CMSIS-DSP: arm_fill_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fill_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fill_q15 (q15_t value, q15_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fill__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fill__q31_8c.html new file mode 100644 index 0000000..21217d5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fill__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fill_q31.c File Reference +CMSIS-DSP: arm_fill_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fill_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fill_q31 (q31_t value, q31_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fill__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__fill__q7_8c.html new file mode 100644 index 0000000..7a82e55 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fill__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fill_q7.c File Reference +CMSIS-DSP: arm_fill_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fill_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fill_q7 (q7_t value, q7_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__data_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__data_8c.html new file mode 100644 index 0000000..4176597 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__data_8c.html @@ -0,0 +1,170 @@ + + + + + +arm_fir_data.c File Reference +CMSIS-DSP: arm_fir_data.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_data.c File Reference
    +
    +
    + + + + + + +

    +Variables

    float32_t testInput_f32_1kHz_15kHz [320]
     
    float32_t refOutput [320]
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t refOutput[320]
    +
    +
    Examples:
    arm_fir_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32_1kHz_15kHz[320]
    +
    +
    Examples:
    arm_fir_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__f32_8c.html new file mode 100644 index 0000000..8f538af --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_f32.c File Reference +CMSIS-DSP: arm_fir_decimate_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_decimate_f32 (const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR decimator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q15_8c.html new file mode 100644 index 0000000..a8fa868 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_fast_q15.c File Reference +CMSIS-DSP: arm_fir_decimate_fast_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_fast_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_decimate_fast_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q31_8c.html new file mode 100644 index 0000000..53749fd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__fast__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_fast_q31.c File Reference +CMSIS-DSP: arm_fir_decimate_fast_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_fast_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_decimate_fast_q31 (arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__f32_8c.html new file mode 100644 index 0000000..fe6a2a5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_init_f32.c File Reference +CMSIS-DSP: arm_fir_decimate_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_fir_decimate_init_f32 (arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR decimator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q15_8c.html new file mode 100644 index 0000000..080621d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_init_q15.c File Reference +CMSIS-DSP: arm_fir_decimate_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_fir_decimate_init_q15 (arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR decimator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q31_8c.html new file mode 100644 index 0000000..d35ad73 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_init_q31.c File Reference +CMSIS-DSP: arm_fir_decimate_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_fir_decimate_init_q31 (arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR decimator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__q15_8c.html new file mode 100644 index 0000000..6a13011 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_q15.c File Reference +CMSIS-DSP: arm_fir_decimate_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_decimate_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR decimator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__decimate__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__decimate__q31_8c.html new file mode 100644 index 0000000..b5d75b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__decimate__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_decimate_q31.c File Reference +CMSIS-DSP: arm_fir_decimate_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_decimate_q31 (const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR decimator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..b7e8399 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,151 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_fir_example for Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_fir_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..7cc8a43 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..8735da4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..976c33e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..d53d034 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..12c8a6f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_fir_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8c.html new file mode 100644 index 0000000..d28dc0d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8c.html @@ -0,0 +1,749 @@ + + + + + +math_helper.c File Reference +CMSIS-DSP: math_helper.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_example/ARM/math_helper.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q7 (q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_calc_2pow (uint32_t numShifts)
     Calculates pow(2, numShifts)
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +

    References arm_calc_2pow().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q7 (q7_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8h.html b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8h.html new file mode 100644 index 0000000..15b6d94 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example_2_a_r_m_2math__helper_8h.html @@ -0,0 +1,697 @@ + + + + + +math_helper.h File Reference +CMSIS-DSP: math_helper.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_example/ARM/math_helper.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_calc_2pow (uint32_t guard_bits)
     Calculates pow(2, numShifts)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__example__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__example__f32_8c.html new file mode 100644 index 0000000..27a7966 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__example__f32_8c.html @@ -0,0 +1,374 @@ + + + + + +arm_fir_example_f32.c File Reference +CMSIS-DSP: arm_fir_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_example_f32.c File Reference
    +
    +
    + + + + + + + + + + +

    +Macros

    #define TEST_LENGTH_SAMPLES
     
    #define SNR_THRESHOLD_F32
     
    #define BLOCK_SIZE
     
    #define NUM_TAPS
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + + + +

    +Variables

    float32_t testInput_f32_1kHz_15kHz [TEST_LENGTH_SAMPLES]
     
    float32_t refOutput [TEST_LENGTH_SAMPLES]
     
    static float32_t testOutput [TEST_LENGTH_SAMPLES]
     
    static float32_t firStateF32 [BLOCK_SIZE+NUM_TAPS-1]
     
    const float32_t firCoeffs32 [NUM_TAPS]
     
    uint32_t blockSize
     
    uint32_t numBlocks
     
    float32_t snr
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define BLOCK_SIZE
    +
    +
    Examples:
    arm_fir_example_f32.c.
    +
    +
    +
    + +
    +
    + + + + +
    #define NUM_TAPS
    +
    +
    Examples:
    arm_fir_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define SNR_THRESHOLD_F32
    +
    +
    Examples:
    arm_fir_example_f32.c, and arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define TEST_LENGTH_SAMPLES
    +
    + +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t blockSize
    +
    +
    Examples:
    arm_fir_example_f32.c, arm_signal_converge_example_f32.c, arm_sin_cos_example_f32.c, and arm_variance_example_f32.c.
    +
    +

    Referenced by arm_abs_f32(), arm_abs_q15(), arm_abs_q31(), arm_abs_q7(), arm_add_f32(), arm_add_q15(), arm_add_q31(), arm_add_q7(), arm_biquad_cas_df1_32x64_q31(), arm_biquad_cascade_df1_f32(), arm_biquad_cascade_df1_q31(), arm_biquad_cascade_df2T_f32(), arm_biquad_cascade_df2T_f64(), arm_biquad_cascade_stereo_df2T_f32(), arm_circularRead_f32(), arm_circularRead_q15(), arm_circularRead_q7(), arm_circularWrite_f32(), arm_circularWrite_q15(), arm_circularWrite_q7(), arm_copy_f32(), arm_copy_q15(), arm_copy_q31(), arm_copy_q7(), arm_dot_prod_f32(), arm_dot_prod_q15(), arm_dot_prod_q31(), arm_dot_prod_q7(), arm_fill_f32(), arm_fill_q15(), arm_fill_q31(), arm_fill_q7(), arm_fir_lattice_f32(), arm_fir_lattice_q15(), arm_fir_q31(), arm_fir_q7(), arm_fir_sparse_f32(), arm_fir_sparse_q15(), arm_fir_sparse_q31(), arm_fir_sparse_q7(), arm_float_to_q15(), arm_float_to_q31(), arm_float_to_q7(), arm_iir_lattice_f32(), arm_iir_lattice_q15(), arm_iir_lattice_q31(), arm_lms_f32(), arm_lms_norm_f32(), arm_lms_norm_q15(), arm_lms_norm_q31(), arm_lms_q15(), arm_lms_q31(), arm_mean_f32(), arm_mean_q15(), arm_mean_q31(), arm_mean_q7(), arm_mult_f32(), arm_mult_q15(), arm_mult_q31(), arm_mult_q7(), arm_negate_f32(), arm_negate_q15(), arm_negate_q31(), arm_negate_q7(), arm_offset_f32(), arm_offset_q15(), arm_offset_q31(), arm_offset_q7(), arm_power_f32(), arm_power_q15(), arm_power_q31(), arm_power_q7(), arm_provide_guard_bits_q15(), arm_provide_guard_bits_q31(), arm_provide_guard_bits_q7(), arm_q15_to_float(), arm_q15_to_q31(), arm_q15_to_q7(), arm_q31_to_float(), arm_q31_to_q15(), arm_q31_to_q7(), arm_q7_to_float(), arm_q7_to_q15(), arm_q7_to_q31(), arm_rms_f32(), arm_rms_q15(), arm_rms_q31(), arm_scale_f32(), arm_scale_q15(), arm_scale_q31(), arm_scale_q7(), arm_shift_q15(), arm_shift_q31(), arm_shift_q7(), arm_std_f32(), arm_std_q15(), arm_std_q31(), arm_sub_f32(), arm_sub_q15(), arm_sub_q31(), arm_sub_q7(), arm_var_f32(), arm_var_q15(), arm_var_q31(), and main().

    + +
    +
    + +
    +
    + + + + +
    const float32_t firCoeffs32[NUM_TAPS]
    +
    +
    Examples:
    arm_fir_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    float32_t firStateF32[BLOCK_SIZE+NUM_TAPS-1]
    +
    +static
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    uint32_t numBlocks
    +
    +
    Examples:
    arm_fir_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t refOutput[TEST_LENGTH_SAMPLES]
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t snr
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32_1kHz_15kHz[TEST_LENGTH_SAMPLES]
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    float32_t testOutput[TEST_LENGTH_SAMPLES]
    +
    +static
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__f32_8c.html new file mode 100644 index 0000000..fda7aee --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_f32.c File Reference +CMSIS-DSP: arm_fir_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_f32 (const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__fast__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__fast__q15_8c.html new file mode 100644 index 0000000..34e3d25 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__fast__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_fast_q15.c File Reference +CMSIS-DSP: arm_fir_fast_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_fast_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_fast_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the fast Q15 FIR filter for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__fast__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__fast__q31_8c.html new file mode 100644 index 0000000..521672d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__fast__q31_8c.html @@ -0,0 +1,139 @@ + + + + + +arm_fir_fast_q31.c File Reference +CMSIS-DSP: arm_fir_fast_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_fast_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    IAR_ONLY_LOW_OPTIMIZATION_ENTER
    +void 
    arm_fir_fast_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the fast Q31 FIR filter for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__init__f32_8c.html new file mode 100644 index 0000000..07f83b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_init_f32.c File Reference +CMSIS-DSP: arm_fir_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_init_f32 (arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__init__q15_8c.html new file mode 100644 index 0000000..4f3b87d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_init_q15.c File Reference +CMSIS-DSP: arm_fir_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_fir_init_q15 (arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__init__q31_8c.html new file mode 100644 index 0000000..0756399 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_init_q31.c File Reference +CMSIS-DSP: arm_fir_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_init_q31 (arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__init__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__init__q7_8c.html new file mode 100644 index 0000000..fca3e55 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__init__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_init_q7.c File Reference +CMSIS-DSP: arm_fir_init_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_init_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_init_q7 (arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize)
     Initialization function for the Q7 FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__interpolate__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__f32_8c.html new file mode 100644 index 0000000..ac4115c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_interpolate_f32.c File Reference +CMSIS-DSP: arm_fir_interpolate_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_interpolate_f32 (const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR interpolator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__f32_8c.html new file mode 100644 index 0000000..9ff34cc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_interpolate_init_f32.c File Reference +CMSIS-DSP: arm_fir_interpolate_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_fir_interpolate_init_f32 (arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR interpolator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q15_8c.html new file mode 100644 index 0000000..fe7509d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_interpolate_init_q15.c File Reference +CMSIS-DSP: arm_fir_interpolate_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_fir_interpolate_init_q15 (arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR interpolator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q31_8c.html new file mode 100644 index 0000000..807bce0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_interpolate_init_q31.c File Reference +CMSIS-DSP: arm_fir_interpolate_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_fir_interpolate_init_q31 (arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR interpolator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__interpolate__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__q15_8c.html new file mode 100644 index 0000000..b793cf0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_interpolate_q15.c File Reference +CMSIS-DSP: arm_fir_interpolate_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_interpolate_q15 (const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR interpolator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__interpolate__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__q31_8c.html new file mode 100644 index 0000000..185b933 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__interpolate__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_interpolate_q31.c File Reference +CMSIS-DSP: arm_fir_interpolate_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_interpolate_q31 (const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR interpolator.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__lattice__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__lattice__f32_8c.html new file mode 100644 index 0000000..9880a43 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__lattice__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_lattice_f32.c File Reference +CMSIS-DSP: arm_fir_lattice_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_lattice_f32 (const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__f32_8c.html new file mode 100644 index 0000000..4b164fa --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_lattice_init_f32.c File Reference +CMSIS-DSP: arm_fir_lattice_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_lattice_init_f32 (arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point FIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q15_8c.html new file mode 100644 index 0000000..2166249 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_lattice_init_q15.c File Reference +CMSIS-DSP: arm_fir_lattice_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_lattice_init_q15 (arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState)
     Initialization function for the Q15 FIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q31_8c.html new file mode 100644 index 0000000..e69a7ca --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__lattice__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_lattice_init_q31.c File Reference +CMSIS-DSP: arm_fir_lattice_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_lattice_init_q31 (arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState)
     Initialization function for the Q31 FIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__lattice__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__lattice__q15_8c.html new file mode 100644 index 0000000..4a84c90 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__lattice__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_lattice_q15.c File Reference +CMSIS-DSP: arm_fir_lattice_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_lattice_q15 (const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__lattice__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__lattice__q31_8c.html new file mode 100644 index 0000000..dc11cf1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__lattice__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_lattice_q31.c File Reference +CMSIS-DSP: arm_fir_lattice_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_lattice_q31 (const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__q15_8c.html new file mode 100644 index 0000000..e9d113a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_q15.c File Reference +CMSIS-DSP: arm_fir_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__q31_8c.html new file mode 100644 index 0000000..3ec87e2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_q31.c File Reference +CMSIS-DSP: arm_fir_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__q7_8c.html new file mode 100644 index 0000000..b7fa690 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_q7.c File Reference +CMSIS-DSP: arm_fir_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_q7 (const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Processing function for the Q7 FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__f32_8c.html new file mode 100644 index 0000000..5a999d1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_f32.c File Reference +CMSIS-DSP: arm_fir_sparse_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_f32 (arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize)
     Processing function for the floating-point sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__f32_8c.html new file mode 100644 index 0000000..656e75c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_init_f32.c File Reference +CMSIS-DSP: arm_fir_sparse_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_init_f32 (arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the floating-point sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q15_8c.html new file mode 100644 index 0000000..b210817 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_init_q15.c File Reference +CMSIS-DSP: arm_fir_sparse_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_init_q15 (arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q15 sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q31_8c.html new file mode 100644 index 0000000..08ec873 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_init_q31.c File Reference +CMSIS-DSP: arm_fir_sparse_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_init_q31 (arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q31 sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q7_8c.html new file mode 100644 index 0000000..3001ae9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__init__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_init_q7.c File Reference +CMSIS-DSP: arm_fir_sparse_init_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_init_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_init_q7 (arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q7 sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__q15_8c.html new file mode 100644 index 0000000..dfadeac --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_q15.c File Reference +CMSIS-DSP: arm_fir_sparse_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_q15 (arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize)
     Processing function for the Q15 sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__q31_8c.html new file mode 100644 index 0000000..9c82fee --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_q31.c File Reference +CMSIS-DSP: arm_fir_sparse_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_q31 (arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize)
     Processing function for the Q31 sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__fir__sparse__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__fir__sparse__q7_8c.html new file mode 100644 index 0000000..a0fef5e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__fir__sparse__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_fir_sparse_q7.c File Reference +CMSIS-DSP: arm_fir_sparse_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_fir_sparse_q7 (arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize)
     Processing function for the Q7 sparse FIR filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__float__to__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__float__to__q15_8c.html new file mode 100644 index 0000000..6237fce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__float__to__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_float_to_q15.c File Reference +CMSIS-DSP: arm_float_to_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_float_to_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_float_to_q15 (float32_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__float__to__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__float__to__q31_8c.html new file mode 100644 index 0000000..1bb5af0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__float__to__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_float_to_q31.c File Reference +CMSIS-DSP: arm_float_to_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_float_to_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_float_to_q31 (float32_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__float__to__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__float__to__q7_8c.html new file mode 100644 index 0000000..23ea916 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__float__to__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_float_to_q7.c File Reference +CMSIS-DSP: arm_float_to_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_float_to_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_float_to_q7 (float32_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__data_8c.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__data_8c.html new file mode 100644 index 0000000..71359df --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__data_8c.html @@ -0,0 +1,167 @@ + + + + + +arm_graphic_equalizer_data.c File Reference +CMSIS-DSP: arm_graphic_equalizer_data.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_data.c File Reference
    +
    +
    + + + + + + +

    +Variables

    float32_t testRefOutput_f32 [320]
     
    float32_t testInput_f32 [320]
     
    +

    Variable Documentation

    + + + +
    +
    + + + + +
    float32_t testRefOutput_f32[320]
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..89a0d1b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_graphic_equalizer_example
    +for Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_graphic_equalizer_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..920d549 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..a77c00d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..a7d054b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..9a350a0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..19fa7a2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_graphic_equalizer_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html new file mode 100644 index 0000000..5c463bd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html @@ -0,0 +1,749 @@ + + + + + +math_helper.c File Reference +CMSIS-DSP: math_helper.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_example/ARM/math_helper.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q7 (q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_calc_2pow (uint32_t numShifts)
     Calculates pow(2, numShifts)
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +

    References arm_calc_2pow().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q7 (q7_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html new file mode 100644 index 0000000..51be1b1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html @@ -0,0 +1,697 @@ + + + + + +math_helper.h File Reference +CMSIS-DSP: math_helper.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_example/ARM/math_helper.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_calc_2pow (uint32_t guard_bits)
     Calculates pow(2, numShifts)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example__q31_8c.html new file mode 100644 index 0000000..6ed43b3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__graphic__equalizer__example__q31_8c.html @@ -0,0 +1,509 @@ + + + + + +arm_graphic_equalizer_example_q31.c File Reference +CMSIS-DSP: arm_graphic_equalizer_example_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_graphic_equalizer_example_q31.c File Reference
    +
    +
    + + + + + + + + + + + + +

    +Macros

    #define TESTLENGTH
     
    #define BLOCKSIZE
     
    #define NUMBLOCKS
     
    #define NUMSTAGES
     
    #define SNR_THRESHOLD_F32
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    float32_t testInput_f32 [TESTLENGTH]
     
    static float32_t testOutput [TESTLENGTH]
     
    float32_t testRefOutput_f32 [TESTLENGTH]
     
    static q63_t biquadStateBand1Q31 [4 *2]
     
    static q63_t biquadStateBand2Q31 [4 *2]
     
    static q31_t biquadStateBand3Q31 [4 *2]
     
    static q31_t biquadStateBand4Q31 [4 *2]
     
    static q31_t biquadStateBand5Q31 [4 *2]
     
    q31_t inputQ31 [BLOCKSIZE]
     
    q31_t outputQ31 [BLOCKSIZE]
     
    const q31_t coeffTable [950]
     
    int gainDB [5]
     
    float32_t snr
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define BLOCKSIZE
    +
    +
    + +
    +
    + + + + +
    #define NUMBLOCKS
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define NUMSTAGES
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define SNR_THRESHOLD_F32
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define TESTLENGTH
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + + +
    + + + + +
    q63_t biquadStateBand1Q31[4 *2]
    +
    +static
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    q63_t biquadStateBand2Q31[4 *2]
    +
    +static
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    q31_t biquadStateBand3Q31[4 *2]
    +
    +static
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    q31_t biquadStateBand4Q31[4 *2]
    +
    +static
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    q31_t biquadStateBand5Q31[4 *2]
    +
    +static
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    const q31_t coeffTable[950]
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    int gainDB[5]
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    q31_t inputQ31[BLOCKSIZE]
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    q31_t outputQ31[BLOCKSIZE]
    +
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t snr
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32[TESTLENGTH]
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    float32_t testOutput[TESTLENGTH]
    +
    +static
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testRefOutput_f32[TESTLENGTH]
    +
    + +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__iir__lattice__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__iir__lattice__f32_8c.html new file mode 100644 index 0000000..aa41109 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__iir__lattice__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_iir_lattice_f32.c File Reference +CMSIS-DSP: arm_iir_lattice_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_iir_lattice_f32 (const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point IIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__f32_8c.html new file mode 100644 index 0000000..b185619 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_iir_lattice_init_f32.c File Reference +CMSIS-DSP: arm_iir_lattice_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_iir_lattice_init_f32 (arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point IIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q15_8c.html new file mode 100644 index 0000000..22f1b7e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_iir_lattice_init_q15.c File Reference +CMSIS-DSP: arm_iir_lattice_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_iir_lattice_init_q15 (arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 IIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q31_8c.html new file mode 100644 index 0000000..c762c35 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__iir__lattice__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_iir_lattice_init_q31.c File Reference +CMSIS-DSP: arm_iir_lattice_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_iir_lattice_init_q31 (arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 IIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__iir__lattice__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__iir__lattice__q15_8c.html new file mode 100644 index 0000000..a358e98 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__iir__lattice__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_iir_lattice_q15.c File Reference +CMSIS-DSP: arm_iir_lattice_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_iir_lattice_q15 (const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 IIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__iir__lattice__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__iir__lattice__q31_8c.html new file mode 100644 index 0000000..ca10124 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__iir__lattice__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_iir_lattice_q31.c File Reference +CMSIS-DSP: arm_iir_lattice_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_iir_lattice_q31 (const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 IIR lattice filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__data_8c.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__data_8c.html new file mode 100644 index 0000000..1d117f7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__data_8c.html @@ -0,0 +1,153 @@ + + + + + +arm_linear_interp_data.c File Reference +CMSIS-DSP: arm_linear_interp_data.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_data.c File Reference
    +
    +
    + + + + +

    +Variables

    float arm_linear_interep_table [188495]
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    float arm_linear_interep_table[188495]
    +
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..7649c5a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_linear_interp_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_linear_interp_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..213f1be --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..a896634 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..49f8250 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..3a9033a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..3e11f6f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_linear_interp_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8c.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8c.html new file mode 100644 index 0000000..79fa804 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8c.html @@ -0,0 +1,749 @@ + + + + + +math_helper.c File Reference +CMSIS-DSP: math_helper.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_example/ARM/math_helper.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q7 (q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_calc_2pow (uint32_t numShifts)
     Calculates pow(2, numShifts)
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +

    References arm_calc_2pow().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q7 (q7_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8h.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8h.html new file mode 100644 index 0000000..d46f22d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example_2_a_r_m_2math__helper_8h.html @@ -0,0 +1,697 @@ + + + + + +math_helper.h File Reference +CMSIS-DSP: math_helper.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_example/ARM/math_helper.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_calc_2pow (uint32_t guard_bits)
     Calculates pow(2, numShifts)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__linear__interp__example__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__linear__interp__example__f32_8c.html new file mode 100644 index 0000000..6063b03 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__linear__interp__example__f32_8c.html @@ -0,0 +1,328 @@ + + + + + +arm_linear_interp_example_f32.c File Reference +CMSIS-DSP: arm_linear_interp_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_example_f32.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define SNR_THRESHOLD
     
    #define TEST_LENGTH_SAMPLES
     
    #define XSPACING
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + +

    +Variables

    float32_t testInputSin_f32 [TEST_LENGTH_SAMPLES]
     
    float32_t testRefSinOutput32_f32 [TEST_LENGTH_SAMPLES]
     
    float32_t testOutput [TEST_LENGTH_SAMPLES]
     
    float32_t testLinIntOutput [TEST_LENGTH_SAMPLES]
     
    float arm_linear_interep_table [188495]
     
    float32_t snr1
     
    float32_t snr2
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define SNR_THRESHOLD
    +
    + +
    +
    + +
    +
    + + + + +
    #define TEST_LENGTH_SAMPLES
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define XSPACING
    +
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    float arm_linear_interep_table[188495]
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t snr1
    +
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t snr2
    +
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testInputSin_f32[TEST_LENGTH_SAMPLES]
    +
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testLinIntOutput[TEST_LENGTH_SAMPLES]
    +
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testOutput[TEST_LENGTH_SAMPLES]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testRefSinOutput32_f32[TEST_LENGTH_SAMPLES]
    +
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__f32_8c.html new file mode 100644 index 0000000..08f7ac9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_f32.c File Reference +CMSIS-DSP: arm_lms_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_f32 (const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize)
     Processing function for floating-point LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__init__f32_8c.html new file mode 100644 index 0000000..2201c8f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_init_f32.c File Reference +CMSIS-DSP: arm_lms_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_init_f32 (arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize)
     Initialization function for floating-point LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__init__q15_8c.html new file mode 100644 index 0000000..44a963d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_init_q15.c File Reference +CMSIS-DSP: arm_lms_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_init_q15 (arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift)
     Initialization function for the Q15 LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__init__q31_8c.html new file mode 100644 index 0000000..85596c6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_init_q31.c File Reference +CMSIS-DSP: arm_lms_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_init_q31 (arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift)
     Initialization function for Q31 LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__norm__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__norm__f32_8c.html new file mode 100644 index 0000000..4601c97 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__norm__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_norm_f32.c File Reference +CMSIS-DSP: arm_lms_norm_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_norm_f32 (arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize)
     Processing function for floating-point normalized LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__norm__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__norm__init__f32_8c.html new file mode 100644 index 0000000..ee4ef87 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__norm__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_norm_init_f32.c File Reference +CMSIS-DSP: arm_lms_norm_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_norm_init_f32 (arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize)
     Initialization function for floating-point normalized LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__norm__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__norm__init__q15_8c.html new file mode 100644 index 0000000..91aa267 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__norm__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_norm_init_q15.c File Reference +CMSIS-DSP: arm_lms_norm_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_norm_init_q15 (arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift)
     Initialization function for Q15 normalized LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__norm__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__norm__init__q31_8c.html new file mode 100644 index 0000000..a6a237b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__norm__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_norm_init_q31.c File Reference +CMSIS-DSP: arm_lms_norm_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_norm_init_q31 (arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift)
     Initialization function for Q31 normalized LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__norm__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__norm__q15_8c.html new file mode 100644 index 0000000..f27253b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__norm__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_norm_q15.c File Reference +CMSIS-DSP: arm_lms_norm_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_norm_q15 (arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize)
     Processing function for Q15 normalized LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__norm__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__norm__q31_8c.html new file mode 100644 index 0000000..bb87ded --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__norm__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_norm_q31.c File Reference +CMSIS-DSP: arm_lms_norm_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_norm_q31 (arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize)
     Processing function for Q31 normalized LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__q15_8c.html new file mode 100644 index 0000000..bf04301 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_q15.c File Reference +CMSIS-DSP: arm_lms_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_q15 (const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize)
     Processing function for Q15 LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__lms__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__lms__q31_8c.html new file mode 100644 index 0000000..3b43d77 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__lms__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_lms_q31.c File Reference +CMSIS-DSP: arm_lms_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_lms_q31 (const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize)
     Processing function for Q31 LMS filter.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__add__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__add__f32_8c.html new file mode 100644 index 0000000..a749e5f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__add__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_add_f32.c File Reference +CMSIS-DSP: arm_mat_add_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_add_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_add_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix addition.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__add__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__add__q15_8c.html new file mode 100644 index 0000000..7dcb822 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__add__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_add_q15.c File Reference +CMSIS-DSP: arm_mat_add_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_add_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_add_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst)
     Q15 matrix addition.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__add__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__add__q31_8c.html new file mode 100644 index 0000000..eef091d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__add__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_add_q31.c File Reference +CMSIS-DSP: arm_mat_add_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_add_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_add_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix addition.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__f32_8c.html new file mode 100644 index 0000000..f67dfc3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_cmplx_mult_f32.c File Reference +CMSIS-DSP: arm_mat_cmplx_mult_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_cmplx_mult_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_cmplx_mult_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point Complex matrix multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q15_8c.html new file mode 100644 index 0000000..3dd114d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_cmplx_mult_q15.c File Reference +CMSIS-DSP: arm_mat_cmplx_mult_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_cmplx_mult_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_cmplx_mult_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pScratch)
     Q15 Complex matrix multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q31_8c.html new file mode 100644 index 0000000..835f999 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__cmplx__mult__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_cmplx_mult_q31.c File Reference +CMSIS-DSP: arm_mat_cmplx_mult_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_cmplx_mult_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_cmplx_mult_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 Complex matrix multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__init__f32_8c.html new file mode 100644 index 0000000..ed976d1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_init_f32.c File Reference +CMSIS-DSP: arm_mat_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mat_init_f32 (arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData)
     Floating-point matrix initialization.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__init__q15_8c.html new file mode 100644 index 0000000..b33e8b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_init_q15.c File Reference +CMSIS-DSP: arm_mat_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mat_init_q15 (arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData)
     Q15 matrix initialization.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__init__q31_8c.html new file mode 100644 index 0000000..304ffac --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_init_q31.c File Reference +CMSIS-DSP: arm_mat_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mat_init_q31 (arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData)
     Q31 matrix initialization.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__inverse__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__inverse__f32_8c.html new file mode 100644 index 0000000..0c6153f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__inverse__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_inverse_f32.c File Reference +CMSIS-DSP: arm_mat_inverse_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_inverse_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_inverse_f32 (const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst)
     Floating-point matrix inverse.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__inverse__f64_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__inverse__f64_8c.html new file mode 100644 index 0000000..9881096 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__inverse__f64_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_inverse_f64.c File Reference +CMSIS-DSP: arm_mat_inverse_f64.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_inverse_f64.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_inverse_f64 (const arm_matrix_instance_f64 *pSrc, arm_matrix_instance_f64 *pDst)
     Floating-point matrix inverse.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__mult__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__mult__f32_8c.html new file mode 100644 index 0000000..deaef64 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__mult__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_mult_f32.c File Reference +CMSIS-DSP: arm_mat_mult_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_mult_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_mult_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q15_8c.html new file mode 100644 index 0000000..7104796 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_mult_fast_q15.c File Reference +CMSIS-DSP: arm_mat_mult_fast_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_mult_fast_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_mult_fast_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState)
     Q15 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q31_8c.html new file mode 100644 index 0000000..5472dab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__mult__fast__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_mult_fast_q31.c File Reference +CMSIS-DSP: arm_mat_mult_fast_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_mult_fast_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_mult_fast_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__mult__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__mult__q15_8c.html new file mode 100644 index 0000000..0111f74 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__mult__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_mult_q15.c File Reference +CMSIS-DSP: arm_mat_mult_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_mult_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_mult_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState CMSIS_UNUSED)
     Q15 matrix multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__mult__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__mult__q31_8c.html new file mode 100644 index 0000000..2ff768d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__mult__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_mult_q31.c File Reference +CMSIS-DSP: arm_mat_mult_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_mult_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_mult_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__scale__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__scale__f32_8c.html new file mode 100644 index 0000000..f5df83e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__scale__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_scale_f32.c File Reference +CMSIS-DSP: arm_mat_scale_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_scale_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_scale_f32 (const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst)
     Floating-point matrix scaling.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__scale__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__scale__q15_8c.html new file mode 100644 index 0000000..fa47e5e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__scale__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_scale_q15.c File Reference +CMSIS-DSP: arm_mat_scale_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_scale_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_scale_q15 (const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst)
     Q15 matrix scaling.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__scale__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__scale__q31_8c.html new file mode 100644 index 0000000..8054d7b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__scale__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_scale_q31.c File Reference +CMSIS-DSP: arm_mat_scale_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_scale_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_scale_q31 (const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst)
     Q31 matrix scaling.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__sub__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__sub__f32_8c.html new file mode 100644 index 0000000..2a2d1fb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__sub__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_sub_f32.c File Reference +CMSIS-DSP: arm_mat_sub_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_sub_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_sub_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix subtraction.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__sub__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__sub__q15_8c.html new file mode 100644 index 0000000..cbc8da9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__sub__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_sub_q15.c File Reference +CMSIS-DSP: arm_mat_sub_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_sub_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_sub_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst)
     Q15 matrix subtraction.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__sub__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__sub__q31_8c.html new file mode 100644 index 0000000..36871e1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__sub__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_sub_q31.c File Reference +CMSIS-DSP: arm_mat_sub_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_sub_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_sub_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix subtraction.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__trans__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__trans__f32_8c.html new file mode 100644 index 0000000..4a01253 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__trans__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_trans_f32.c File Reference +CMSIS-DSP: arm_mat_trans_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_trans_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_trans_f32 (const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst)
     Floating-point matrix transpose.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__trans__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__trans__q15_8c.html new file mode 100644 index 0000000..0f4beb6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__trans__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_trans_q15.c File Reference +CMSIS-DSP: arm_mat_trans_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_trans_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_trans_q15 (const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst)
     Q15 matrix transpose.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mat__trans__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mat__trans__q31_8c.html new file mode 100644 index 0000000..7b54d2d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mat__trans__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mat_trans_q31.c File Reference +CMSIS-DSP: arm_mat_trans_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mat_trans_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_mat_trans_q31 (const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst)
     Q31 matrix transpose.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__math_8h.html b/CMSIS/Documentation/DSP/html/arm__math_8h.html new file mode 100644 index 0000000..6b53172 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__math_8h.html @@ -0,0 +1,2630 @@ + + + + + +arm_math.h File Reference +CMSIS-DSP: arm_math.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_math.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  arm_fir_instance_q7
     Instance structure for the Q7 FIR filter. More...
     
    struct  arm_fir_instance_q15
     Instance structure for the Q15 FIR filter. More...
     
    struct  arm_fir_instance_q31
     Instance structure for the Q31 FIR filter. More...
     
    struct  arm_fir_instance_f32
     Instance structure for the floating-point FIR filter. More...
     
    struct  arm_biquad_casd_df1_inst_q15
     Instance structure for the Q15 Biquad cascade filter. More...
     
    struct  arm_biquad_casd_df1_inst_q31
     Instance structure for the Q31 Biquad cascade filter. More...
     
    struct  arm_biquad_casd_df1_inst_f32
     Instance structure for the floating-point Biquad cascade filter. More...
     
    struct  arm_matrix_instance_f32
     Instance structure for the floating-point matrix structure. More...
     
    struct  arm_matrix_instance_f64
     Instance structure for the floating-point matrix structure. More...
     
    struct  arm_matrix_instance_q15
     Instance structure for the Q15 matrix structure. More...
     
    struct  arm_matrix_instance_q31
     Instance structure for the Q31 matrix structure. More...
     
    struct  arm_pid_instance_q15
     Instance structure for the Q15 PID Control. More...
     
    struct  arm_pid_instance_q31
     Instance structure for the Q31 PID Control. More...
     
    struct  arm_pid_instance_f32
     Instance structure for the floating-point PID Control. More...
     
    struct  arm_linear_interp_instance_f32
     Instance structure for the floating-point Linear Interpolate function. More...
     
    struct  arm_bilinear_interp_instance_f32
     Instance structure for the floating-point bilinear interpolation function. More...
     
    struct  arm_bilinear_interp_instance_q31
     Instance structure for the Q31 bilinear interpolation function. More...
     
    struct  arm_bilinear_interp_instance_q15
     Instance structure for the Q15 bilinear interpolation function. More...
     
    struct  arm_bilinear_interp_instance_q7
     Instance structure for the Q15 bilinear interpolation function. More...
     
    struct  arm_cfft_radix2_instance_q15
     Instance structure for the Q15 CFFT/CIFFT function. More...
     
    struct  arm_cfft_radix4_instance_q15
     Instance structure for the Q15 CFFT/CIFFT function. More...
     
    struct  arm_cfft_radix2_instance_q31
     Instance structure for the Radix-2 Q31 CFFT/CIFFT function. More...
     
    struct  arm_cfft_radix4_instance_q31
     Instance structure for the Q31 CFFT/CIFFT function. More...
     
    struct  arm_cfft_radix2_instance_f32
     Instance structure for the floating-point CFFT/CIFFT function. More...
     
    struct  arm_cfft_radix4_instance_f32
     Instance structure for the floating-point CFFT/CIFFT function. More...
     
    struct  arm_cfft_instance_q15
     Instance structure for the fixed-point CFFT/CIFFT function. More...
     
    struct  arm_cfft_instance_q31
     Instance structure for the fixed-point CFFT/CIFFT function. More...
     
    struct  arm_cfft_instance_f32
     Instance structure for the floating-point CFFT/CIFFT function. More...
     
    struct  arm_rfft_instance_q15
     Instance structure for the Q15 RFFT/RIFFT function. More...
     
    struct  arm_rfft_instance_q31
     Instance structure for the Q31 RFFT/RIFFT function. More...
     
    struct  arm_rfft_instance_f32
     Instance structure for the floating-point RFFT/RIFFT function. More...
     
    struct  arm_rfft_fast_instance_f32
     Instance structure for the floating-point RFFT/RIFFT function. More...
     
    struct  arm_dct4_instance_f32
     Instance structure for the floating-point DCT4/IDCT4 function. More...
     
    struct  arm_dct4_instance_q31
     Instance structure for the Q31 DCT4/IDCT4 function. More...
     
    struct  arm_dct4_instance_q15
     Instance structure for the Q15 DCT4/IDCT4 function. More...
     
    struct  arm_fir_decimate_instance_q15
     Instance structure for the Q15 FIR decimator. More...
     
    struct  arm_fir_decimate_instance_q31
     Instance structure for the Q31 FIR decimator. More...
     
    struct  arm_fir_decimate_instance_f32
     Instance structure for the floating-point FIR decimator. More...
     
    struct  arm_fir_interpolate_instance_q15
     Instance structure for the Q15 FIR interpolator. More...
     
    struct  arm_fir_interpolate_instance_q31
     Instance structure for the Q31 FIR interpolator. More...
     
    struct  arm_fir_interpolate_instance_f32
     Instance structure for the floating-point FIR interpolator. More...
     
    struct  arm_biquad_cas_df1_32x64_ins_q31
     Instance structure for the high precision Q31 Biquad cascade filter. More...
     
    struct  arm_biquad_cascade_df2T_instance_f32
     Instance structure for the floating-point transposed direct form II Biquad cascade filter. More...
     
    struct  arm_biquad_cascade_stereo_df2T_instance_f32
     Instance structure for the floating-point transposed direct form II Biquad cascade filter. More...
     
    struct  arm_biquad_cascade_df2T_instance_f64
     Instance structure for the floating-point transposed direct form II Biquad cascade filter. More...
     
    struct  arm_fir_lattice_instance_q15
     Instance structure for the Q15 FIR lattice filter. More...
     
    struct  arm_fir_lattice_instance_q31
     Instance structure for the Q31 FIR lattice filter. More...
     
    struct  arm_fir_lattice_instance_f32
     Instance structure for the floating-point FIR lattice filter. More...
     
    struct  arm_iir_lattice_instance_q15
     Instance structure for the Q15 IIR lattice filter. More...
     
    struct  arm_iir_lattice_instance_q31
     Instance structure for the Q31 IIR lattice filter. More...
     
    struct  arm_iir_lattice_instance_f32
     Instance structure for the floating-point IIR lattice filter. More...
     
    struct  arm_lms_instance_f32
     Instance structure for the floating-point LMS filter. More...
     
    struct  arm_lms_instance_q15
     Instance structure for the Q15 LMS filter. More...
     
    struct  arm_lms_instance_q31
     Instance structure for the Q31 LMS filter. More...
     
    struct  arm_lms_norm_instance_f32
     Instance structure for the floating-point normalized LMS filter. More...
     
    struct  arm_lms_norm_instance_q31
     Instance structure for the Q31 normalized LMS filter. More...
     
    struct  arm_lms_norm_instance_q15
     Instance structure for the Q15 normalized LMS filter. More...
     
    struct  arm_fir_sparse_instance_f32
     Instance structure for the floating-point sparse FIR filter. More...
     
    struct  arm_fir_sparse_instance_q31
     Instance structure for the Q31 sparse FIR filter. More...
     
    struct  arm_fir_sparse_instance_q15
     Instance structure for the Q15 sparse FIR filter. More...
     
    struct  arm_fir_sparse_instance_q7
     Instance structure for the Q7 sparse FIR filter. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define __CMSIS_GENERIC
     
    #define DELTA_Q31
     Macros required for reciprocal calculation in Normalized LMS.
     
    #define DELTA_Q15
     
    #define INDEX_MASK
     
    #define PI
     
    #define FAST_MATH_TABLE_SIZE
     Macros required for SINE and COSINE Fast math approximations.
     
    #define FAST_MATH_Q31_SHIFT
     
    #define FAST_MATH_Q15_SHIFT
     
    #define CONTROLLER_Q31_SHIFT
     
    #define TABLE_SIZE
     
    #define TABLE_SPACING_Q31
     
    #define TABLE_SPACING_Q15
     
    #define INPUT_SPACING
     Macros required for SINE and COSINE Controller functions.
     
    #define ALIGN4
     Macro for Unaligned Support.
     
    #define __SIMD32(addr)
     definition to read/write two 16 bit values.
     
    #define __SIMD32_CONST(addr)
     
    #define _SIMD32_OFFSET(addr)
     
    #define __SIMD64(addr)
     
    #define __PACKq7(v0, v1, v2, v3)
     definition to pack four 8 bit values.
     
    #define multAcc_32x32_keep32_R(a, x, y)
     
    #define multSub_32x32_keep32_R(a, x, y)
     
    #define mult_32x32_keep32_R(a, x, y)
     
    #define multAcc_32x32_keep32(a, x, y)
     
    #define multSub_32x32_keep32(a, x, y)
     
    #define mult_32x32_keep32(a, x, y)
     
    + + + + + + + + + + + + + + + + + + + +

    +Typedefs

    typedef int8_t q7_t
     8-bit fractional data type in 1.7 format.
     
    typedef int16_t q15_t
     16-bit fractional data type in 1.15 format.
     
    typedef int32_t q31_t
     32-bit fractional data type in 1.31 format.
     
    typedef int64_t q63_t
     64-bit fractional data type in 1.63 format.
     
    typedef float float32_t
     32-bit floating-point type definition.
     
    typedef double float64_t
     64-bit floating-point type definition.
     
    + + + + +

    +Enumerations

    enum  arm_status
     Error status returned by some functions in the library. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    static __INLINE q31_t clip_q63_to_q31 (q63_t x)
     Clips Q63 to Q31 values.
     
    static __INLINE q15_t clip_q63_to_q15 (q63_t x)
     Clips Q63 to Q15 values.
     
    static __INLINE q7_t clip_q31_to_q7 (q31_t x)
     Clips Q31 to Q7 values.
     
    static __INLINE q15_t clip_q31_to_q15 (q31_t x)
     Clips Q31 to Q15 values.
     
    static __INLINE q63_t mult32x64 (q63_t x, q31_t y)
     Multiplies 32 X 64 and returns 32 bit result in 2.30 format.
     
    static __INLINE uint32_t arm_recip_q31 (q31_t in, q31_t *dst, q31_t *pRecipTable)
     Function to Calculates 1/in (reciprocal) value of Q31 Data type.
     
    static __INLINE uint32_t arm_recip_q15 (q15_t in, q15_t *dst, q15_t *pRecipTable)
     Function to Calculates 1/in (reciprocal) value of Q15 Data type.
     
    void arm_fir_q7 (const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Processing function for the Q7 FIR filter.
     
    void arm_fir_init_q7 (arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize)
     Initialization function for the Q7 FIR filter.
     
    void arm_fir_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR filter.
     
    void arm_fir_fast_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the fast Q15 FIR filter for Cortex-M3 and Cortex-M4.
     
    arm_status arm_fir_init_q15 (arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR filter.
     
    void arm_fir_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR filter.
     
    void arm_fir_fast_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the fast Q31 FIR filter for Cortex-M3 and Cortex-M4.
     
    void arm_fir_init_q31 (arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR filter.
     
    void arm_fir_f32 (const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR filter.
     
    void arm_fir_init_f32 (arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR filter.
     
    void arm_biquad_cascade_df1_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 Biquad cascade filter.
     
    void arm_biquad_cascade_df1_init_q15 (arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift)
     Initialization function for the Q15 Biquad cascade filter.
     
    void arm_biquad_cascade_df1_fast_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Fast but less precise processing function for the Q15 Biquad cascade filter for Cortex-M3 and Cortex-M4.
     
    void arm_biquad_cascade_df1_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 Biquad cascade filter.
     
    void arm_biquad_cascade_df1_fast_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Fast but less precise processing function for the Q31 Biquad cascade filter for Cortex-M3 and Cortex-M4.
     
    void arm_biquad_cascade_df1_init_q31 (arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift)
     Initialization function for the Q31 Biquad cascade filter.
     
    void arm_biquad_cascade_df1_f32 (const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point Biquad cascade filter.
     
    void arm_biquad_cascade_df1_init_f32 (arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point Biquad cascade filter.
     
    arm_status arm_mat_add_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix addition.
     
    arm_status arm_mat_add_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst)
     Q15 matrix addition.
     
    arm_status arm_mat_add_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix addition.
     
    arm_status arm_mat_cmplx_mult_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point, complex, matrix multiplication.
     
    arm_status arm_mat_cmplx_mult_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pScratch)
     Q15, complex, matrix multiplication.
     
    arm_status arm_mat_cmplx_mult_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31, complex, matrix multiplication.
     
    arm_status arm_mat_trans_f32 (const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst)
     Floating-point matrix transpose.
     
    arm_status arm_mat_trans_q15 (const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst)
     Q15 matrix transpose.
     
    arm_status arm_mat_trans_q31 (const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst)
     Q31 matrix transpose.
     
    arm_status arm_mat_mult_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix multiplication.
     
    arm_status arm_mat_mult_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState)
     Q15 matrix multiplication.
     
    arm_status arm_mat_mult_fast_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState)
     Q15 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_mat_mult_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix multiplication.
     
    arm_status arm_mat_mult_fast_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_mat_sub_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix subtraction.
     
    arm_status arm_mat_sub_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst)
     Q15 matrix subtraction.
     
    arm_status arm_mat_sub_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix subtraction.
     
    arm_status arm_mat_scale_f32 (const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst)
     Floating-point matrix scaling.
     
    arm_status arm_mat_scale_q15 (const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst)
     Q15 matrix scaling.
     
    arm_status arm_mat_scale_q31 (const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst)
     Q31 matrix scaling.
     
    void arm_mat_init_q31 (arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData)
     Q31 matrix initialization.
     
    void arm_mat_init_q15 (arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData)
     Q15 matrix initialization.
     
    void arm_mat_init_f32 (arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData)
     Floating-point matrix initialization.
     
    void arm_pid_init_f32 (arm_pid_instance_f32 *S, int32_t resetStateFlag)
     Initialization function for the floating-point PID Control.
     
    void arm_pid_reset_f32 (arm_pid_instance_f32 *S)
     Reset function for the floating-point PID Control.
     
    void arm_pid_init_q31 (arm_pid_instance_q31 *S, int32_t resetStateFlag)
     Initialization function for the Q31 PID Control.
     
    void arm_pid_reset_q31 (arm_pid_instance_q31 *S)
     Reset function for the Q31 PID Control.
     
    void arm_pid_init_q15 (arm_pid_instance_q15 *S, int32_t resetStateFlag)
     Initialization function for the Q15 PID Control.
     
    void arm_pid_reset_q15 (arm_pid_instance_q15 *S)
     Reset function for the Q15 PID Control.
     
    void arm_mult_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector multiplication.
     
    void arm_mult_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector multiplication.
     
    void arm_mult_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector multiplication.
     
    void arm_mult_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector multiplication.
     
    arm_status arm_cfft_radix2_init_q15 (arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q15 CFFT/CIFFT.
     
    void arm_cfft_radix2_q15 (const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc)
     Processing function for the fixed-point CFFT/CIFFT.
     
    arm_status arm_cfft_radix4_init_q15 (arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q15 CFFT/CIFFT.
     
    void arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc)
     Processing function for the Q15 CFFT/CIFFT.
     
    arm_status arm_cfft_radix2_init_q31 (arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q31 CFFT/CIFFT.
     
    void arm_cfft_radix2_q31 (const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc)
     Processing function for the fixed-point CFFT/CIFFT.
     
    void arm_cfft_radix4_q31 (const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc)
     Processing function for the Q31 CFFT/CIFFT.
     
    arm_status arm_cfft_radix4_init_q31 (arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q31 CFFT/CIFFT.
     
    arm_status arm_cfft_radix2_init_f32 (arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the floating-point CFFT/CIFFT.
     
    void arm_cfft_radix2_f32 (const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc)
     Radix-2 CFFT/CIFFT.
     
    arm_status arm_cfft_radix4_init_f32 (arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the floating-point CFFT/CIFFT.
     
    void arm_cfft_radix4_f32 (const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc)
     Processing function for the floating-point Radix-4 CFFT/CIFFT.
     
    void arm_cfft_q15 (const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the Q15 complex FFT.
     
    void arm_cfft_q31 (const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the fixed-point complex FFT in Q31 format.
     
    void arm_cfft_f32 (const arm_cfft_instance_f32 *S, float32_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the floating-point complex FFT.
     
    arm_status arm_rfft_init_q15 (arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the Q15 RFFT/RIFFT.
     
    void arm_rfft_q15 (const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst)
     Processing function for the Q15 RFFT/RIFFT.
     
    arm_status arm_rfft_init_q31 (arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the Q31 RFFT/RIFFT.
     
    void arm_rfft_q31 (const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst)
     Processing function for the Q31 RFFT/RIFFT.
     
    arm_status arm_rfft_init_f32 (arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the floating-point RFFT/RIFFT.
     
    void arm_rfft_f32 (const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst)
     Processing function for the floating-point RFFT/RIFFT.
     
    arm_status arm_rfft_fast_init_f32 (arm_rfft_fast_instance_f32 *S, uint16_t fftLen)
     Initialization function for the floating-point real FFT.
     
    void arm_rfft_fast_f32 (arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag)
     Processing function for the floating-point real FFT.
     
    arm_status arm_dct4_init_f32 (arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize)
     Initialization function for the floating-point DCT4/IDCT4.
     
    void arm_dct4_f32 (const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer)
     Processing function for the floating-point DCT4/IDCT4.
     
    arm_status arm_dct4_init_q31 (arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize)
     Initialization function for the Q31 DCT4/IDCT4.
     
    void arm_dct4_q31 (const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer)
     Processing function for the Q31 DCT4/IDCT4.
     
    arm_status arm_dct4_init_q15 (arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize)
     Initialization function for the Q15 DCT4/IDCT4.
     
    void arm_dct4_q15 (const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer)
     Processing function for the Q15 DCT4/IDCT4.
     
    void arm_add_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector addition.
     
    void arm_add_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector addition.
     
    void arm_add_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector addition.
     
    void arm_add_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector addition.
     
    void arm_sub_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector subtraction.
     
    void arm_sub_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector subtraction.
     
    void arm_sub_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector subtraction.
     
    void arm_sub_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector subtraction.
     
    void arm_scale_f32 (float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize)
     Multiplies a floating-point vector by a scalar.
     
    void arm_scale_q7 (q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize)
     Multiplies a Q7 vector by a scalar.
     
    void arm_scale_q15 (q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize)
     Multiplies a Q15 vector by a scalar.
     
    void arm_scale_q31 (q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize)
     Multiplies a Q31 vector by a scalar.
     
    void arm_abs_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Q7 vector absolute value.
     
    void arm_abs_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Floating-point vector absolute value.
     
    void arm_abs_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Q15 vector absolute value.
     
    void arm_abs_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Q31 vector absolute value.
     
    void arm_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result)
     Dot product of floating-point vectors.
     
    void arm_dot_prod_q7 (q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result)
     Dot product of Q7 vectors.
     
    void arm_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result)
     Dot product of Q15 vectors.
     
    void arm_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result)
     Dot product of Q31 vectors.
     
    void arm_shift_q7 (q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q7 vector a specified number of bits.
     
    void arm_shift_q15 (q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q15 vector a specified number of bits.
     
    void arm_shift_q31 (q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q31 vector a specified number of bits.
     
    void arm_offset_f32 (float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize)
     Adds a constant offset to a floating-point vector.
     
    void arm_offset_q7 (q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q7 vector.
     
    void arm_offset_q15 (q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q15 vector.
     
    void arm_offset_q31 (q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q31 vector.
     
    void arm_negate_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Negates the elements of a floating-point vector.
     
    void arm_negate_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Negates the elements of a Q7 vector.
     
    void arm_negate_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Negates the elements of a Q15 vector.
     
    void arm_negate_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Negates the elements of a Q31 vector.
     
    void arm_copy_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Copies the elements of a floating-point vector.
     
    void arm_copy_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Copies the elements of a Q7 vector.
     
    void arm_copy_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Copies the elements of a Q15 vector.
     
    void arm_copy_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Copies the elements of a Q31 vector.
     
    void arm_fill_f32 (float32_t value, float32_t *pDst, uint32_t blockSize)
     Fills a constant value into a floating-point vector.
     
    void arm_fill_q7 (q7_t value, q7_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q7 vector.
     
    void arm_fill_q15 (q15_t value, q15_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q15 vector.
     
    void arm_fill_q31 (q31_t value, q31_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q31 vector.
     
    void arm_conv_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst)
     Convolution of floating-point sequences.
     
    void arm_conv_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q15 sequences.
     
    void arm_conv_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Convolution of Q15 sequences.
     
    void arm_conv_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_conv_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_conv_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Convolution of Q31 sequences.
     
    void arm_conv_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_conv_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q7 sequences.
     
    void arm_conv_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst)
     Convolution of Q7 sequences.
     
    arm_status arm_conv_partial_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of floating-point sequences.
     
    arm_status arm_conv_partial_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q15 sequences.
     
    arm_status arm_conv_partial_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q15 sequences.
     
    arm_status arm_conv_partial_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_conv_partial_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_conv_partial_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q31 sequences.
     
    arm_status arm_conv_partial_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_conv_partial_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q7 sequences.
     
    arm_status arm_conv_partial_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q7 sequences.
     
    void arm_fir_decimate_f32 (const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR decimator.
     
    arm_status arm_fir_decimate_init_f32 (arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR decimator.
     
    void arm_fir_decimate_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR decimator.
     
    void arm_fir_decimate_fast_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_fir_decimate_init_q15 (arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR decimator.
     
    void arm_fir_decimate_q31 (const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR decimator.
     
    void arm_fir_decimate_fast_q31 (arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_fir_decimate_init_q31 (arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR decimator.
     
    void arm_fir_interpolate_q15 (const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR interpolator.
     
    arm_status arm_fir_interpolate_init_q15 (arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR interpolator.
     
    void arm_fir_interpolate_q31 (const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR interpolator.
     
    arm_status arm_fir_interpolate_init_q31 (arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR interpolator.
     
    void arm_fir_interpolate_f32 (const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR interpolator.
     
    arm_status arm_fir_interpolate_init_f32 (arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR interpolator.
     
    void arm_biquad_cas_df1_32x64_q31 (const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     
    void arm_biquad_cas_df1_32x64_init_q31 (arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift)
     
    void arm_biquad_cascade_df2T_f32 (const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_biquad_cascade_stereo_df2T_f32 (const arm_biquad_cascade_stereo_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter. 2 channels.
     
    void arm_biquad_cascade_df2T_f64 (const arm_biquad_cascade_df2T_instance_f64 *S, float64_t *pSrc, float64_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_biquad_cascade_df2T_init_f32 (arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_biquad_cascade_stereo_df2T_init_f32 (arm_biquad_cascade_stereo_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_biquad_cascade_df2T_init_f64 (arm_biquad_cascade_df2T_instance_f64 *S, uint8_t numStages, float64_t *pCoeffs, float64_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_fir_lattice_init_q15 (arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState)
     Initialization function for the Q15 FIR lattice filter.
     
    void arm_fir_lattice_q15 (const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR lattice filter.
     
    void arm_fir_lattice_init_q31 (arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState)
     Initialization function for the Q31 FIR lattice filter.
     
    void arm_fir_lattice_q31 (const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR lattice filter.
     
    void arm_fir_lattice_init_f32 (arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point FIR lattice filter.
     
    void arm_fir_lattice_f32 (const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR lattice filter.
     
    void arm_iir_lattice_f32 (const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point IIR lattice filter.
     
    void arm_iir_lattice_init_f32 (arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point IIR lattice filter.
     
    void arm_iir_lattice_q31 (const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 IIR lattice filter.
     
    void arm_iir_lattice_init_q31 (arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 IIR lattice filter.
     
    void arm_iir_lattice_q15 (const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 IIR lattice filter.
     
    void arm_iir_lattice_init_q15 (arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 IIR lattice filter.
     
    void arm_lms_f32 (const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize)
     Processing function for floating-point LMS filter.
     
    void arm_lms_init_f32 (arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize)
     Initialization function for floating-point LMS filter.
     
    void arm_lms_init_q15 (arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift)
     Initialization function for the Q15 LMS filter.
     
    void arm_lms_q15 (const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize)
     Processing function for Q15 LMS filter.
     
    void arm_lms_q31 (const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize)
     Processing function for Q31 LMS filter.
     
    void arm_lms_init_q31 (arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift)
     Initialization function for Q31 LMS filter.
     
    void arm_lms_norm_f32 (arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize)
     Processing function for floating-point normalized LMS filter.
     
    void arm_lms_norm_init_f32 (arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize)
     Initialization function for floating-point normalized LMS filter.
     
    void arm_lms_norm_q31 (arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize)
     Processing function for Q31 normalized LMS filter.
     
    void arm_lms_norm_init_q31 (arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift)
     Initialization function for Q31 normalized LMS filter.
     
    void arm_lms_norm_q15 (arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize)
     Processing function for Q15 normalized LMS filter.
     
    void arm_lms_norm_init_q15 (arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift)
     Initialization function for Q15 normalized LMS filter.
     
    void arm_correlate_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst)
     Correlation of floating-point sequences.
     
    void arm_correlate_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch)
     Correlation of Q15 sequences.
     
    void arm_correlate_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Correlation of Q15 sequences.
     
    void arm_correlate_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_correlate_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch)
     Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_correlate_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Correlation of Q31 sequences.
     
    void arm_correlate_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Correlation of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_correlate_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Correlation of Q7 sequences.
     
    void arm_correlate_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst)
     Correlation of Q7 sequences.
     
    void arm_fir_sparse_f32 (arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize)
     Processing function for the floating-point sparse FIR filter.
     
    void arm_fir_sparse_init_f32 (arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the floating-point sparse FIR filter.
     
    void arm_fir_sparse_q31 (arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize)
     Processing function for the Q31 sparse FIR filter.
     
    void arm_fir_sparse_init_q31 (arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q31 sparse FIR filter.
     
    void arm_fir_sparse_q15 (arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize)
     Processing function for the Q15 sparse FIR filter.
     
    void arm_fir_sparse_init_q15 (arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q15 sparse FIR filter.
     
    void arm_fir_sparse_q7 (arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize)
     Processing function for the Q7 sparse FIR filter.
     
    void arm_fir_sparse_init_q7 (arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q7 sparse FIR filter.
     
    void arm_sin_cos_f32 (float32_t theta, float32_t *pSinVal, float32_t *pCosVal)
     Floating-point sin_cos function.
     
    void arm_sin_cos_q31 (q31_t theta, q31_t *pSinVal, q31_t *pCosVal)
     Q31 sin_cos function.
     
    void arm_cmplx_conj_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex conjugate.
     
    void arm_cmplx_conj_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex conjugate.
     
    void arm_cmplx_conj_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex conjugate.
     
    void arm_cmplx_mag_squared_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex magnitude squared.
     
    void arm_cmplx_mag_squared_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex magnitude squared.
     
    void arm_cmplx_mag_squared_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex magnitude squared.
     
    static __INLINE float32_t arm_pid_f32 (arm_pid_instance_f32 *S, float32_t in)
     Process function for the floating-point PID Control.
     
    static __INLINE q31_t arm_pid_q31 (arm_pid_instance_q31 *S, q31_t in)
     Process function for the Q31 PID Control.
     
    static __INLINE q15_t arm_pid_q15 (arm_pid_instance_q15 *S, q15_t in)
     Process function for the Q15 PID Control.
     
    arm_status arm_mat_inverse_f32 (const arm_matrix_instance_f32 *src, arm_matrix_instance_f32 *dst)
     Floating-point matrix inverse.
     
    arm_status arm_mat_inverse_f64 (const arm_matrix_instance_f64 *src, arm_matrix_instance_f64 *dst)
     Floating-point matrix inverse.
     
    static __INLINE void arm_clarke_f32 (float32_t Ia, float32_t Ib, float32_t *pIalpha, float32_t *pIbeta)
     Floating-point Clarke transform.
     
    static __INLINE void arm_clarke_q31 (q31_t Ia, q31_t Ib, q31_t *pIalpha, q31_t *pIbeta)
     Clarke transform for Q31 version.
     
    void arm_q7_to_q31 (q7_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to Q31 vector.
     
    static __INLINE void arm_inv_clarke_f32 (float32_t Ialpha, float32_t Ibeta, float32_t *pIa, float32_t *pIb)
     Floating-point Inverse Clarke transform.
     
    static __INLINE void arm_inv_clarke_q31 (q31_t Ialpha, q31_t Ibeta, q31_t *pIa, q31_t *pIb)
     Inverse Clarke transform for Q31 version.
     
    void arm_q7_to_q15 (q7_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to Q15 vector.
     
    static __INLINE void arm_park_f32 (float32_t Ialpha, float32_t Ibeta, float32_t *pId, float32_t *pIq, float32_t sinVal, float32_t cosVal)
     Floating-point Park transform.
     
    static __INLINE void arm_park_q31 (q31_t Ialpha, q31_t Ibeta, q31_t *pId, q31_t *pIq, q31_t sinVal, q31_t cosVal)
     Park transform for Q31 version.
     
    void arm_q7_to_float (q7_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to floating-point vector.
     
    static __INLINE void arm_inv_park_f32 (float32_t Id, float32_t Iq, float32_t *pIalpha, float32_t *pIbeta, float32_t sinVal, float32_t cosVal)
     Floating-point Inverse Park transform.
     
    static __INLINE void arm_inv_park_q31 (q31_t Id, q31_t Iq, q31_t *pIalpha, q31_t *pIbeta, q31_t sinVal, q31_t cosVal)
     Inverse Park transform for Q31 version.
     
    void arm_q31_to_float (q31_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to floating-point vector.
     
    static __INLINE float32_t arm_linear_interp_f32 (arm_linear_interp_instance_f32 *S, float32_t x)
     Process function for the floating-point Linear Interpolation Function.
     
    static __INLINE q31_t arm_linear_interp_q31 (q31_t *pYData, q31_t x, uint32_t nValues)
     Process function for the Q31 Linear Interpolation Function.
     
    static __INLINE q15_t arm_linear_interp_q15 (q15_t *pYData, q31_t x, uint32_t nValues)
     Process function for the Q15 Linear Interpolation Function.
     
    static __INLINE q7_t arm_linear_interp_q7 (q7_t *pYData, q31_t x, uint32_t nValues)
     Process function for the Q7 Linear Interpolation Function.
     
    float32_t arm_sin_f32 (float32_t x)
     Fast approximation to the trigonometric sine function for floating-point data.
     
    q31_t arm_sin_q31 (q31_t x)
     Fast approximation to the trigonometric sine function for Q31 data.
     
    q15_t arm_sin_q15 (q15_t x)
     Fast approximation to the trigonometric sine function for Q15 data.
     
    float32_t arm_cos_f32 (float32_t x)
     Fast approximation to the trigonometric cosine function for floating-point data.
     
    q31_t arm_cos_q31 (q31_t x)
     Fast approximation to the trigonometric cosine function for Q31 data.
     
    q15_t arm_cos_q15 (q15_t x)
     Fast approximation to the trigonometric cosine function for Q15 data.
     
    static __INLINE arm_status arm_sqrt_f32 (float32_t in, float32_t *pOut)
     Floating-point square root function.
     
    arm_status arm_sqrt_q31 (q31_t in, q31_t *pOut)
     Q31 square root function.
     
    arm_status arm_sqrt_q15 (q15_t in, q15_t *pOut)
     Q15 square root function.
     
    static __INLINE void arm_circularWrite_f32 (int32_t *circBuffer, int32_t L, uint16_t *writeOffset, int32_t bufferInc, const int32_t *src, int32_t srcInc, uint32_t blockSize)
     floating-point Circular write function.
     
    static __INLINE void arm_circularRead_f32 (int32_t *circBuffer, int32_t L, int32_t *readOffset, int32_t bufferInc, int32_t *dst, int32_t *dst_base, int32_t dst_length, int32_t dstInc, uint32_t blockSize)
     floating-point Circular Read function.
     
    static __INLINE void arm_circularWrite_q15 (q15_t *circBuffer, int32_t L, uint16_t *writeOffset, int32_t bufferInc, const q15_t *src, int32_t srcInc, uint32_t blockSize)
     Q15 Circular write function.
     
    static __INLINE void arm_circularRead_q15 (q15_t *circBuffer, int32_t L, int32_t *readOffset, int32_t bufferInc, q15_t *dst, q15_t *dst_base, int32_t dst_length, int32_t dstInc, uint32_t blockSize)
     Q15 Circular Read function.
     
    static __INLINE void arm_circularWrite_q7 (q7_t *circBuffer, int32_t L, uint16_t *writeOffset, int32_t bufferInc, const q7_t *src, int32_t srcInc, uint32_t blockSize)
     Q7 Circular write function.
     
    static __INLINE void arm_circularRead_q7 (q7_t *circBuffer, int32_t L, int32_t *readOffset, int32_t bufferInc, q7_t *dst, q7_t *dst_base, int32_t dst_length, int32_t dstInc, uint32_t blockSize)
     Q7 Circular Read function.
     
    void arm_power_q31 (q31_t *pSrc, uint32_t blockSize, q63_t *pResult)
     Sum of the squares of the elements of a Q31 vector.
     
    void arm_power_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Sum of the squares of the elements of a floating-point vector.
     
    void arm_power_q15 (q15_t *pSrc, uint32_t blockSize, q63_t *pResult)
     Sum of the squares of the elements of a Q15 vector.
     
    void arm_power_q7 (q7_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Sum of the squares of the elements of a Q7 vector.
     
    void arm_mean_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult)
     Mean value of a Q7 vector.
     
    void arm_mean_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Mean value of a Q15 vector.
     
    void arm_mean_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Mean value of a Q31 vector.
     
    void arm_mean_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Mean value of a floating-point vector.
     
    void arm_var_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Variance of the elements of a floating-point vector.
     
    void arm_var_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Variance of the elements of a Q31 vector.
     
    void arm_var_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Variance of the elements of a Q15 vector.
     
    void arm_rms_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Root Mean Square of the elements of a floating-point vector.
     
    void arm_rms_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Root Mean Square of the elements of a Q31 vector.
     
    void arm_rms_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Root Mean Square of the elements of a Q15 vector.
     
    void arm_std_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Standard deviation of the elements of a floating-point vector.
     
    void arm_std_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Standard deviation of the elements of a Q31 vector.
     
    void arm_std_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Standard deviation of the elements of a Q15 vector.
     
    void arm_cmplx_mag_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex magnitude.
     
    void arm_cmplx_mag_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex magnitude.
     
    void arm_cmplx_mag_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex magnitude.
     
    void arm_cmplx_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult)
     Q15 complex dot product.
     
    void arm_cmplx_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult)
     Q31 complex dot product.
     
    void arm_cmplx_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult)
     Floating-point complex dot product.
     
    void arm_cmplx_mult_real_q15 (q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples)
     Q15 complex-by-real multiplication.
     
    void arm_cmplx_mult_real_q31 (q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples)
     Q31 complex-by-real multiplication.
     
    void arm_cmplx_mult_real_f32 (float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples)
     Floating-point complex-by-real multiplication.
     
    void arm_min_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *result, uint32_t *index)
     Minimum value of a Q7 vector.
     
    void arm_min_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex)
     Minimum value of a Q15 vector.
     
    void arm_min_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex)
     Minimum value of a Q31 vector.
     
    void arm_min_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex)
     Minimum value of a floating-point vector.
     
    void arm_max_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex)
     Maximum value of a Q7 vector.
     
    void arm_max_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex)
     Maximum value of a Q15 vector.
     
    void arm_max_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex)
     Maximum value of a Q31 vector.
     
    void arm_max_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex)
     Maximum value of a floating-point vector.
     
    void arm_cmplx_mult_cmplx_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples)
     Q15 complex-by-complex multiplication.
     
    void arm_cmplx_mult_cmplx_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples)
     Q31 complex-by-complex multiplication.
     
    void arm_cmplx_mult_cmplx_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples)
     Floating-point complex-by-complex multiplication.
     
    void arm_float_to_q31 (float32_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q31 vector.
     
    void arm_float_to_q15 (float32_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q15 vector.
     
    void arm_float_to_q7 (float32_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q7 vector.
     
    void arm_q31_to_q15 (q31_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to Q15 vector.
     
    void arm_q31_to_q7 (q31_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to Q7 vector.
     
    void arm_q15_to_float (q15_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to floating-point vector.
     
    void arm_q15_to_q31 (q15_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to Q31 vector.
     
    void arm_q15_to_q7 (q15_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to Q7 vector.
     
    static __INLINE float32_t arm_bilinear_interp_f32 (const arm_bilinear_interp_instance_f32 *S, float32_t X, float32_t Y)
     Floating-point bilinear interpolation.
     
    static __INLINE q31_t arm_bilinear_interp_q31 (arm_bilinear_interp_instance_q31 *S, q31_t X, q31_t Y)
     Q31 bilinear interpolation.
     
    static __INLINE q15_t arm_bilinear_interp_q15 (arm_bilinear_interp_instance_q15 *S, q31_t X, q31_t Y)
     Q15 bilinear interpolation.
     
    static __INLINE q7_t arm_bilinear_interp_q7 (arm_bilinear_interp_instance_q7 *S, q31_t X, q31_t Y)
     Q7 bilinear interpolation.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __CMSIS_GENERIC
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #define __PACKq7( v0,
     v1,
     v2,
     v3 
    )
    +
    +
    + +
    +
    + + + + + + + + +
    #define __SIMD32( addr)
    +
    + +

    Referenced by arm_add_q15(), arm_add_q7(), arm_biquad_cascade_df1_fast_q15(), arm_biquad_cascade_df1_q15(), arm_cmplx_conj_q15(), arm_cmplx_mag_q15(), arm_cmplx_mag_squared_q15(), arm_cmplx_mult_real_q15(), arm_conv_fast_opt_q15(), arm_conv_fast_q15(), arm_conv_opt_q15(), arm_conv_opt_q7(), arm_conv_partial_fast_opt_q15(), arm_conv_partial_fast_q15(), arm_conv_partial_opt_q15(), arm_conv_partial_opt_q7(), arm_conv_partial_q15(), arm_conv_q15(), arm_copy_q15(), arm_copy_q7(), arm_correlate_fast_opt_q15(), arm_correlate_fast_q15(), arm_correlate_opt_q15(), arm_correlate_opt_q7(), arm_correlate_q15(), arm_dot_prod_q15(), arm_dot_prod_q7(), arm_fill_q15(), arm_fill_q7(), arm_fir_decimate_fast_q15(), arm_fir_decimate_q15(), arm_fir_fast_q15(), arm_fir_interpolate_q15(), arm_fir_lattice_q15(), arm_fir_q15(), arm_fir_sparse_q15(), arm_fir_sparse_q7(), arm_iir_lattice_q15(), arm_lms_norm_q15(), arm_lms_q15(), arm_mat_add_q15(), arm_mat_cmplx_mult_q15(), arm_mat_mult_fast_q15(), arm_mat_mult_q15(), arm_mat_sub_q15(), arm_mat_trans_q15(), arm_mean_q15(), arm_mean_q7(), arm_mult_q15(), arm_mult_q7(), arm_negate_q7(), arm_offset_q15(), arm_offset_q7(), arm_power_q15(), arm_power_q7(), arm_q15_to_q31(), arm_q15_to_q7(), arm_q31_to_q15(), arm_q31_to_q7(), arm_q7_to_q15(), arm_q7_to_q31(), arm_radix4_butterfly_inverse_q15(), arm_radix4_butterfly_q15(), arm_rms_q15(), arm_scale_q15(), arm_scale_q7(), arm_shift_q15(), arm_shift_q7(), arm_split_rfft_q15(), arm_split_rifft_q15(), arm_std_q15(), arm_sub_q15(), arm_sub_q7(), and arm_var_q15().

    + +
    +
    + +
    +
    + + + + + + + + +
    #define __SIMD32_CONST( addr)
    +
    + +

    Referenced by arm_abs_q15(), and arm_pid_q15().

    + +
    +
    + +
    +
    + + + + + + + + +
    #define __SIMD64( addr)
    +
    +
    + + + +
    +
    + + + + +
    #define ALIGN4
    +
    + +
    +
    + +
    +
    + + + + +
    #define CONTROLLER_Q31_SHIFT
    +
    + +

    Referenced by arm_sin_cos_q31().

    + +
    +
    + +
    +
    + + + + +
    #define DELTA_Q15
    +
    + +

    Referenced by arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    #define DELTA_Q31
    +
    + +

    Referenced by arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    #define FAST_MATH_Q15_SHIFT
    +
    + +

    Referenced by arm_cos_q15(), and arm_sin_q15().

    + +
    +
    + +
    +
    + + + + +
    #define FAST_MATH_Q31_SHIFT
    +
    + +

    Referenced by arm_cos_q31(), and arm_sin_q31().

    + +
    +
    + +
    +
    + + + + +
    #define FAST_MATH_TABLE_SIZE
    +
    + +

    Referenced by arm_cos_f32(), arm_sin_cos_f32(), and arm_sin_f32().

    + +
    +
    + +
    +
    + + + + +
    #define INDEX_MASK
    +
    + +

    Referenced by arm_recip_q15(), and arm_recip_q31().

    + +
    +
    + +
    +
    + + + + +
    #define INPUT_SPACING
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define mult_32x32_keep32( a,
     x,
     
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define mult_32x32_keep32_R( a,
     x,
     
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define multAcc_32x32_keep32( a,
     x,
     
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define multAcc_32x32_keep32_R( a,
     x,
     
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define multSub_32x32_keep32( a,
     x,
     
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define multSub_32x32_keep32_R( a,
     x,
     
    )
    +
    +
    + +
    +
    + + + + +
    #define PI
    +
    + +
    +
    + +
    +
    + + + + +
    #define TABLE_SIZE
    +
    + +
    +
    + +
    +
    + + + + +
    #define TABLE_SPACING_Q15
    +
    + +
    +
    + +
    +
    + + + + +
    #define TABLE_SPACING_Q31
    +
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    typedef float float32_t
    +
    + +
    +
    + +
    +
    + + + + +
    typedef double float64_t
    +
    + +
    +
    + +
    +
    + + + + +
    typedef int16_t q15_t
    +
    + +
    +
    + +
    +
    + + + + +
    typedef int32_t q31_t
    +
    + +
    +
    + +
    +
    + + + + +
    typedef int64_t q63_t
    +
    + +
    +
    + +
    +
    + + + + +
    typedef int8_t q7_t
    +
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum arm_status
    +
    +
    Enumerator:
    + + + + + + + +
    ARM_MATH_SUCCESS  +

    No error

    +
    ARM_MATH_ARGUMENT_ERROR  +

    One or more arguments are incorrect

    +
    ARM_MATH_LENGTH_ERROR  +

    Length of data buffer is incorrect

    +
    ARM_MATH_SIZE_MISMATCH  +

    Size of matrices is not compatible with the operation.

    +
    ARM_MATH_NANINF  +

    Not-a-number (NaN) or infinity is generated

    +
    ARM_MATH_SINGULAR  +

    Generated by matrix inversion if the input matrix is singular and cannot be inverted.

    +
    ARM_MATH_TEST_FAILURE  +

    Test Failed

    +
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_circularRead_f32 (int32_t * circBuffer,
    int32_t L,
    int32_t * readOffset,
    int32_t bufferInc,
    int32_t * dst,
    int32_t * dst_base,
    int32_t dst_length,
    int32_t dstInc,
    uint32_t blockSize 
    )
    +
    +static
    +
    + +

    References blockSize.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_circularRead_q15 (q15_tcircBuffer,
    int32_t L,
    int32_t * readOffset,
    int32_t bufferInc,
    q15_tdst,
    q15_tdst_base,
    int32_t dst_length,
    int32_t dstInc,
    uint32_t blockSize 
    )
    +
    +static
    +
    + +

    References blockSize.

    + +

    Referenced by arm_fir_sparse_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_circularRead_q7 (q7_tcircBuffer,
    int32_t L,
    int32_t * readOffset,
    int32_t bufferInc,
    q7_tdst,
    q7_tdst_base,
    int32_t dst_length,
    int32_t dstInc,
    uint32_t blockSize 
    )
    +
    +static
    +
    + +

    References blockSize.

    + +

    Referenced by arm_fir_sparse_q7().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_circularWrite_f32 (int32_t * circBuffer,
    int32_t L,
    uint16_t * writeOffset,
    int32_t bufferInc,
    const int32_t * src,
    int32_t srcInc,
    uint32_t blockSize 
    )
    +
    +static
    +
    +

    end of SQRT group

    + +

    References blockSize.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_circularWrite_q15 (q15_tcircBuffer,
    int32_t L,
    uint16_t * writeOffset,
    int32_t bufferInc,
    const q15_tsrc,
    int32_t srcInc,
    uint32_t blockSize 
    )
    +
    +static
    +
    + +

    References blockSize.

    + +

    Referenced by arm_fir_sparse_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_circularWrite_q7 (q7_tcircBuffer,
    int32_t L,
    uint16_t * writeOffset,
    int32_t bufferInc,
    const q7_tsrc,
    int32_t srcInc,
    uint32_t blockSize 
    )
    +
    +static
    +
    + +

    References blockSize.

    + +

    Referenced by arm_fir_sparse_q7().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_mult_q15 (const arm_matrix_instance_q15pSrcA,
    const arm_matrix_instance_q15pSrcB,
    arm_matrix_instance_q15pDst,
    q15_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in]pSrcApoints to the first input matrix structure
    [in]pSrcBpoints to the second input matrix structure
    [out]pDstpoints to output matrix structure
    [in]pStatepoints to the array for storing intermediate results
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE uint32_t arm_recip_q15 (q15_t in,
    q15_tdst,
    q15_tpRecipTable 
    )
    +
    +static
    +
    + +

    References INDEX_MASK.

    + +

    Referenced by arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE uint32_t arm_recip_q31 (q31_t in,
    q31_tdst,
    q31_tpRecipTable 
    )
    +
    +static
    +
    + +

    References clip_q63_to_q31(), and INDEX_MASK.

    + +

    Referenced by arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __INLINE q15_t clip_q31_to_q15 (q31_t x)
    +
    +static
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __INLINE q7_t clip_q31_to_q7 (q31_t x)
    +
    +static
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + +
    static __INLINE q15_t clip_q63_to_q15 (q63_t x)
    +
    +static
    +
    + +
    +
    + + + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    static __INLINE q63_t mult32x64 (q63_t x,
    q31_t y 
    )
    +
    +static
    +
    + +

    Referenced by arm_biquad_cas_df1_32x64_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..db9f22d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,151 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_matrix_example for Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_matrix_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..6eb295e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..f0f2eb0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..d07b96f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..8416ad1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..2c8e531 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_matrix_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8c.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8c.html new file mode 100644 index 0000000..d9b11bb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8c.html @@ -0,0 +1,749 @@ + + + + + +math_helper.c File Reference +CMSIS-DSP: math_helper.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_example/ARM/math_helper.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q7 (q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_calc_2pow (uint32_t numShifts)
     Calculates pow(2, numShifts)
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +

    References arm_calc_2pow().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q7 (q7_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8h.html b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8h.html new file mode 100644 index 0000000..20938ee --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example_2_a_r_m_2math__helper_8h.html @@ -0,0 +1,697 @@ + + + + + +math_helper.h File Reference +CMSIS-DSP: math_helper.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_example/ARM/math_helper.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_calc_2pow (uint32_t guard_bits)
     Calculates pow(2, numShifts)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__matrix__example__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__matrix__example__f32_8c.html new file mode 100644 index 0000000..599d47a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__matrix__example__f32_8c.html @@ -0,0 +1,315 @@ + + + + + +arm_matrix_example_f32.c File Reference +CMSIS-DSP: arm_matrix_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_example_f32.c File Reference
    +
    +
    + + + + +

    +Macros

    #define SNR_THRESHOLD
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + + + +

    +Variables

    const float32_t B_f32 [4]
     
    const float32_t A_f32 [16]
     
    float32_t AT_f32 [16]
     
    float32_t ATMA_f32 [16]
     
    float32_t ATMAI_f32 [16]
     
    float32_t X_f32 [4]
     
    const float32_t xRef_f32 [4]
     
    float32_t snr
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define SNR_THRESHOLD
    +
    + +

    Referenced by main().

    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    const float32_t A_f32[16]
    +
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t AT_f32[16]
    +
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t ATMA_f32[16]
    +
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t ATMAI_f32[16]
    +
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    const float32_t B_f32[4]
    +
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t snr
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t X_f32[4]
    +
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    const float32_t xRef_f32[4]
    +
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__max__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__max__f32_8c.html new file mode 100644 index 0000000..824d8c5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__max__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_max_f32.c File Reference +CMSIS-DSP: arm_max_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_max_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_max_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex)
     Maximum value of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__max__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__max__q15_8c.html new file mode 100644 index 0000000..453ad6e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__max__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_max_q15.c File Reference +CMSIS-DSP: arm_max_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_max_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_max_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex)
     Maximum value of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__max__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__max__q31_8c.html new file mode 100644 index 0000000..f68130a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__max__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_max_q31.c File Reference +CMSIS-DSP: arm_max_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_max_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_max_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex)
     Maximum value of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__max__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__max__q7_8c.html new file mode 100644 index 0000000..3001704 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__max__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_max_q7.c File Reference +CMSIS-DSP: arm_max_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_max_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_max_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex)
     Maximum value of a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mean__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mean__f32_8c.html new file mode 100644 index 0000000..074156a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mean__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mean_f32.c File Reference +CMSIS-DSP: arm_mean_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mean_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mean_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Mean value of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mean__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mean__q15_8c.html new file mode 100644 index 0000000..e328b6f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mean__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mean_q15.c File Reference +CMSIS-DSP: arm_mean_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mean_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mean_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Mean value of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mean__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mean__q31_8c.html new file mode 100644 index 0000000..8a3d974 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mean__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mean_q31.c File Reference +CMSIS-DSP: arm_mean_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mean_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mean_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Mean value of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mean__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__mean__q7_8c.html new file mode 100644 index 0000000..63d1900 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mean__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mean_q7.c File Reference +CMSIS-DSP: arm_mean_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mean_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mean_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult)
     Mean value of a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__min__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__min__f32_8c.html new file mode 100644 index 0000000..25af532 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__min__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_min_f32.c File Reference +CMSIS-DSP: arm_min_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_min_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_min_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex)
     Minimum value of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__min__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__min__q15_8c.html new file mode 100644 index 0000000..f7b1e3c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__min__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_min_q15.c File Reference +CMSIS-DSP: arm_min_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_min_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_min_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex)
     Minimum value of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__min__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__min__q31_8c.html new file mode 100644 index 0000000..b489cca --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__min__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_min_q31.c File Reference +CMSIS-DSP: arm_min_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_min_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_min_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex)
     Minimum value of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__min__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__min__q7_8c.html new file mode 100644 index 0000000..334062e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__min__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_min_q7.c File Reference +CMSIS-DSP: arm_min_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_min_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_min_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex)
     Minimum value of a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mult__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__mult__f32_8c.html new file mode 100644 index 0000000..ffe5f8d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mult__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mult_f32.c File Reference +CMSIS-DSP: arm_mult_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mult_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mult_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mult__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__mult__q15_8c.html new file mode 100644 index 0000000..714a4e9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mult__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mult_q15.c File Reference +CMSIS-DSP: arm_mult_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mult_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mult_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mult__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__mult__q31_8c.html new file mode 100644 index 0000000..cfe953a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mult__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mult_q31.c File Reference +CMSIS-DSP: arm_mult_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mult_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mult_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__mult__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__mult__q7_8c.html new file mode 100644 index 0000000..488d072 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__mult__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_mult_q7.c File Reference +CMSIS-DSP: arm_mult_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_mult_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_mult_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector multiplication.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__negate__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__negate__f32_8c.html new file mode 100644 index 0000000..a7ff0b8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__negate__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_negate_f32.c File Reference +CMSIS-DSP: arm_negate_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_negate_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_negate_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Negates the elements of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__negate__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__negate__q15_8c.html new file mode 100644 index 0000000..5edcb60 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__negate__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_negate_q15.c File Reference +CMSIS-DSP: arm_negate_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_negate_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_negate_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Negates the elements of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__negate__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__negate__q31_8c.html new file mode 100644 index 0000000..031f74d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__negate__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_negate_q31.c File Reference +CMSIS-DSP: arm_negate_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_negate_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_negate_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Negates the elements of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__negate__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__negate__q7_8c.html new file mode 100644 index 0000000..7e13da3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__negate__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_negate_q7.c File Reference +CMSIS-DSP: arm_negate_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_negate_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_negate_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Negates the elements of a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__offset__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__offset__f32_8c.html new file mode 100644 index 0000000..3b2d383 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__offset__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_offset_f32.c File Reference +CMSIS-DSP: arm_offset_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_offset_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_offset_f32 (float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize)
     Adds a constant offset to a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__offset__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__offset__q15_8c.html new file mode 100644 index 0000000..40c64da --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__offset__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_offset_q15.c File Reference +CMSIS-DSP: arm_offset_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_offset_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_offset_q15 (q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__offset__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__offset__q31_8c.html new file mode 100644 index 0000000..cb81cef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__offset__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_offset_q31.c File Reference +CMSIS-DSP: arm_offset_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_offset_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_offset_q31 (q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__offset__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__offset__q7_8c.html new file mode 100644 index 0000000..b29f8f7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__offset__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_offset_q7.c File Reference +CMSIS-DSP: arm_offset_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_offset_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_offset_q7 (q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__pid__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__pid__init__f32_8c.html new file mode 100644 index 0000000..27c05a6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__pid__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_pid_init_f32.c File Reference +CMSIS-DSP: arm_pid_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_pid_init_f32 (arm_pid_instance_f32 *S, int32_t resetStateFlag)
     Initialization function for the floating-point PID Control.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__pid__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__pid__init__q15_8c.html new file mode 100644 index 0000000..1edd34d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__pid__init__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_pid_init_q15.c File Reference +CMSIS-DSP: arm_pid_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_pid_init_q15 (arm_pid_instance_q15 *S, int32_t resetStateFlag)
     Initialization function for the Q15 PID Control.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__pid__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__pid__init__q31_8c.html new file mode 100644 index 0000000..25c2029 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__pid__init__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_pid_init_q31.c File Reference +CMSIS-DSP: arm_pid_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_pid_init_q31 (arm_pid_instance_q31 *S, int32_t resetStateFlag)
     Initialization function for the Q31 PID Control.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__pid__reset__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__pid__reset__f32_8c.html new file mode 100644 index 0000000..31fc289 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__pid__reset__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_pid_reset_f32.c File Reference +CMSIS-DSP: arm_pid_reset_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_reset_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_pid_reset_f32 (arm_pid_instance_f32 *S)
     Reset function for the floating-point PID Control.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__pid__reset__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__pid__reset__q15_8c.html new file mode 100644 index 0000000..fbd1152 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__pid__reset__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_pid_reset_q15.c File Reference +CMSIS-DSP: arm_pid_reset_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_reset_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_pid_reset_q15 (arm_pid_instance_q15 *S)
     Reset function for the Q15 PID Control.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__pid__reset__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__pid__reset__q31_8c.html new file mode 100644 index 0000000..163e288 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__pid__reset__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_pid_reset_q31.c File Reference +CMSIS-DSP: arm_pid_reset_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_reset_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_pid_reset_q31 (arm_pid_instance_q31 *S)
     Reset function for the Q31 PID Control.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__power__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__power__f32_8c.html new file mode 100644 index 0000000..5719500 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__power__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_power_f32.c File Reference +CMSIS-DSP: arm_power_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_power_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_power_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Sum of the squares of the elements of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__power__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__power__q15_8c.html new file mode 100644 index 0000000..562bdfd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__power__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_power_q15.c File Reference +CMSIS-DSP: arm_power_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_power_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_power_q15 (q15_t *pSrc, uint32_t blockSize, q63_t *pResult)
     Sum of the squares of the elements of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__power__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__power__q31_8c.html new file mode 100644 index 0000000..3aed0a9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__power__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_power_q31.c File Reference +CMSIS-DSP: arm_power_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_power_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_power_q31 (q31_t *pSrc, uint32_t blockSize, q63_t *pResult)
     Sum of the squares of the elements of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__power__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__power__q7_8c.html new file mode 100644 index 0000000..5a8c1c5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__power__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_power_q7.c File Reference +CMSIS-DSP: arm_power_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_power_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_power_q7 (q7_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Sum of the squares of the elements of a Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q15__to__float_8c.html b/CMSIS/Documentation/DSP/html/arm__q15__to__float_8c.html new file mode 100644 index 0000000..ace554c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q15__to__float_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q15_to_float.c File Reference +CMSIS-DSP: arm_q15_to_float.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q15_to_float.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q15_to_float (q15_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q15__to__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__q15__to__q31_8c.html new file mode 100644 index 0000000..4b1db40 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q15__to__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q15_to_q31.c File Reference +CMSIS-DSP: arm_q15_to_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q15_to_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q15_to_q31 (q15_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q15__to__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__q15__to__q7_8c.html new file mode 100644 index 0000000..1ae350a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q15__to__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q15_to_q7.c File Reference +CMSIS-DSP: arm_q15_to_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q15_to_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q15_to_q7 (q15_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q31__to__float_8c.html b/CMSIS/Documentation/DSP/html/arm__q31__to__float_8c.html new file mode 100644 index 0000000..024b9ab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q31__to__float_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q31_to_float.c File Reference +CMSIS-DSP: arm_q31_to_float.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q31_to_float.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q31_to_float (q31_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q31__to__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__q31__to__q15_8c.html new file mode 100644 index 0000000..7517540 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q31__to__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q31_to_q15.c File Reference +CMSIS-DSP: arm_q31_to_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q31_to_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q31_to_q15 (q31_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q31__to__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__q31__to__q7_8c.html new file mode 100644 index 0000000..b7f0029 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q31__to__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q31_to_q7.c File Reference +CMSIS-DSP: arm_q31_to_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q31_to_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q31_to_q7 (q31_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to Q7 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q7__to__float_8c.html b/CMSIS/Documentation/DSP/html/arm__q7__to__float_8c.html new file mode 100644 index 0000000..7609fef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q7__to__float_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q7_to_float.c File Reference +CMSIS-DSP: arm_q7_to_float.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q7_to_float.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q7_to_float (q7_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q7__to__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__q7__to__q15_8c.html new file mode 100644 index 0000000..afb5d9c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q7__to__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q7_to_q15.c File Reference +CMSIS-DSP: arm_q7_to_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q7_to_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q7_to_q15 (q7_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__q7__to__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__q7__to__q31_8c.html new file mode 100644 index 0000000..6d0fe91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__q7__to__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_q7_to_q31.c File Reference +CMSIS-DSP: arm_q7_to_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_q7_to_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_q7_to_q31 (q7_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__f32_8c.html new file mode 100644 index 0000000..0068b93 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__f32_8c.html @@ -0,0 +1,301 @@ + + + + + +arm_rfft_f32.c File Reference +CMSIS-DSP: arm_rfft_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_f32.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_radix4_butterfly_f32 (float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_radix4_butterfly_inverse_f32 (float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen)
     
    void arm_bitreversal_f32 (float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab)
     
    void arm_split_rfft_f32 (float32_t *pSrc, uint32_t fftLen, float32_t *pATable, float32_t *pBTable, float32_t *pDst, uint32_t modifier)
     Core Real FFT process.
     
    void arm_split_rifft_f32 (float32_t *pSrc, uint32_t fftLen, float32_t *pATable, float32_t *pBTable, float32_t *pDst, uint32_t modifier)
     Core Real IFFT process.
     
    void arm_rfft_f32 (const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst)
     Processing function for the floating-point RFFT/RIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_bitreversal_f32 (float32_tpSrc,
    uint16_t fftSize,
    uint16_t bitRevFactor,
    uint16_t * pBitRevTab 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_inverse_f32 (float32_tpSrc,
    uint16_t fftLen,
    float32_tpCoef,
    uint16_t twidCoefModifier,
    float32_t onebyfftLen 
    )
    +
    + +

    Referenced by arm_cfft_radix4_f32(), and arm_rfft_f32().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_split_rifft_f32 (float32_tpSrc,
    uint32_t fftLen,
    float32_tpATable,
    float32_tpBTable,
    float32_tpDst,
    uint32_t modifier 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*pSrcpoints to the input buffer.
    [in]fftLenlength of FFT.
    [in]*pATablepoints to the twiddle Coef A buffer.
    [in]*pBTablepoints to the twiddle Coef B buffer.
    [out]*pDstpoints to the output buffer.
    [in]modifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    Referenced by arm_rfft_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__fast__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__fast__f32_8c.html new file mode 100644 index 0000000..2cc6f89 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__fast__f32_8c.html @@ -0,0 +1,215 @@ + + + + + +arm_rfft_fast_f32.c File Reference +CMSIS-DSP: arm_rfft_fast_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_fast_f32.c File Reference
    +
    +
    + + + + + + + + + +

    +Functions

    void stage_rfft_f32 (arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut)
     
    void merge_rfft_f32 (arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut)
     
    void arm_rfft_fast_f32 (arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag)
     Processing function for the floating-point real FFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void merge_rfft_f32 (arm_rfft_fast_instance_f32S,
    float32_tp,
    float32_tpOut 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void stage_rfft_f32 (arm_rfft_fast_instance_f32S,
    float32_tp,
    float32_tpOut 
    )
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__fast__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__fast__init__f32_8c.html new file mode 100644 index 0000000..899c9f4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__fast__init__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_rfft_fast_init_f32.c File Reference +CMSIS-DSP: arm_rfft_fast_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_fast_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_rfft_fast_init_f32 (arm_rfft_fast_instance_f32 *S, uint16_t fftLen)
     Initialization function for the floating-point real FFT.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__init__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__init__f32_8c.html new file mode 100644 index 0000000..9919a93 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__init__f32_8c.html @@ -0,0 +1,146 @@ + + + + + +arm_rfft_init_f32.c File Reference +CMSIS-DSP: arm_rfft_init_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_init_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_rfft_init_f32 (arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the floating-point RFFT/RIFFT.
     
    + + + + + +

    +Variables

    static const float32_t realCoefA [8192]
     
    static const float32_t realCoefB [8192]
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__init__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__init__q15_8c.html new file mode 100644 index 0000000..d04be82 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__init__q15_8c.html @@ -0,0 +1,146 @@ + + + + + +arm_rfft_init_q15.c File Reference +CMSIS-DSP: arm_rfft_init_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_init_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_rfft_init_q15 (arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the Q15 RFFT/RIFFT.
     
    + + + + + +

    +Variables

    static const q15_t ALIGN4 realCoefAQ15 [8192]
     
    static const q15_t ALIGN4 realCoefBQ15 [8192]
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__init__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__init__q31_8c.html new file mode 100644 index 0000000..333ea88 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__init__q31_8c.html @@ -0,0 +1,146 @@ + + + + + +arm_rfft_init_q31.c File Reference +CMSIS-DSP: arm_rfft_init_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_init_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_rfft_init_q31 (arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the Q31 RFFT/RIFFT.
     
    + + + + + +

    +Variables

    static const q31_t realCoefAQ31 [8192]
     
    static const q31_t realCoefBQ31 [8192]
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__q15_8c.html new file mode 100644 index 0000000..a13972e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__q15_8c.html @@ -0,0 +1,278 @@ + + + + + +arm_rfft_q15.c File Reference +CMSIS-DSP: arm_rfft_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_q15.c File Reference
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_split_rfft_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pATable, q15_t *pBTable, q15_t *pDst, uint32_t modifier)
     Core Real FFT process.
     
    void arm_split_rifft_q15 (q15_t *pSrc, uint32_t fftLen, q15_t *pATable, q15_t *pBTable, q15_t *pDst, uint32_t modifier)
     Core Real IFFT process.
     
    void arm_rfft_q15 (const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst)
     Processing function for the Q15 RFFT/RIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_split_rfft_q15 (q15_tpSrc,
    uint32_t fftLen,
    q15_tpATable,
    q15_tpBTable,
    q15_tpDst,
    uint32_t modifier 
    )
    +
    +

    end of RealFFT group

    +
    Parameters
    + + + + + + + +
    *pSrcpoints to the input buffer.
    fftLenlength of FFT.
    *pATablepoints to the A twiddle Coef buffer.
    *pBTablepoints to the B twiddle Coef buffer.
    *pDstpoints to the output buffer.
    modifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none. The function implements a Real FFT
    + +

    References __SIMD32.

    + +

    Referenced by arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_split_rifft_q15 (q15_tpSrc,
    uint32_t fftLen,
    q15_tpATable,
    q15_tpBTable,
    q15_tpDst,
    uint32_t modifier 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*pSrcpoints to the input buffer.
    [in]fftLenlength of FFT.
    [in]*pATablepoints to the twiddle Coef A buffer.
    [in]*pBTablepoints to the twiddle Coef B buffer.
    [out]*pDstpoints to the output buffer.
    [in]modifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none. The function implements a Real IFFT
    + +

    References __SIMD32.

    + +

    Referenced by arm_rfft_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rfft__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__rfft__q31_8c.html new file mode 100644 index 0000000..4efa2af --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rfft__q31_8c.html @@ -0,0 +1,278 @@ + + + + + +arm_rfft_q31.c File Reference +CMSIS-DSP: arm_rfft_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_q31.c File Reference
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_split_rfft_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pATable, q31_t *pBTable, q31_t *pDst, uint32_t modifier)
     Core Real FFT process.
     
    void arm_split_rifft_q31 (q31_t *pSrc, uint32_t fftLen, q31_t *pATable, q31_t *pBTable, q31_t *pDst, uint32_t modifier)
     Core Real IFFT process.
     
    void arm_rfft_q31 (const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst)
     Processing function for the Q31 RFFT/RIFFT.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_split_rfft_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpATable,
    q31_tpBTable,
    q31_tpDst,
    uint32_t modifier 
    )
    +
    +

    end of RealFFT group

    +
    Parameters
    + + + + + + + +
    [in]*pSrcpoints to the input buffer.
    [in]fftLenlength of FFT.
    [in]*pATablepoints to the twiddle Coef A buffer.
    [in]*pBTablepoints to the twiddle Coef B buffer.
    [out]*pDstpoints to the output buffer.
    [in]modifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References mult_32x32_keep32_R, multAcc_32x32_keep32_R, and multSub_32x32_keep32_R.

    + +

    Referenced by arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_split_rifft_q31 (q31_tpSrc,
    uint32_t fftLen,
    q31_tpATable,
    q31_tpBTable,
    q31_tpDst,
    uint32_t modifier 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*pSrcpoints to the input buffer.
    [in]fftLenlength of FFT.
    [in]*pATablepoints to the twiddle Coef A buffer.
    [in]*pBTablepoints to the twiddle Coef B buffer.
    [out]*pDstpoints to the output buffer.
    [in]modifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    References mult_32x32_keep32_R, multAcc_32x32_keep32_R, and multSub_32x32_keep32_R.

    + +

    Referenced by arm_rfft_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rms__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__rms__f32_8c.html new file mode 100644 index 0000000..dc9d801 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rms__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_rms_f32.c File Reference +CMSIS-DSP: arm_rms_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rms_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_rms_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Root Mean Square of the elements of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rms__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__rms__q15_8c.html new file mode 100644 index 0000000..e122899 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rms__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_rms_q15.c File Reference +CMSIS-DSP: arm_rms_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rms_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_rms_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Root Mean Square of the elements of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__rms__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__rms__q31_8c.html new file mode 100644 index 0000000..ef4e31e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__rms__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_rms_q31.c File Reference +CMSIS-DSP: arm_rms_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rms_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_rms_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Root Mean Square of the elements of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__scale__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__scale__f32_8c.html new file mode 100644 index 0000000..820bc03 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__scale__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_scale_f32.c File Reference +CMSIS-DSP: arm_scale_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_scale_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_scale_f32 (float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize)
     Multiplies a floating-point vector by a scalar.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__scale__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__scale__q15_8c.html new file mode 100644 index 0000000..0cf6a95 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__scale__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_scale_q15.c File Reference +CMSIS-DSP: arm_scale_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_scale_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_scale_q15 (q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize)
     Multiplies a Q15 vector by a scalar.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__scale__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__scale__q31_8c.html new file mode 100644 index 0000000..cce1be8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__scale__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_scale_q31.c File Reference +CMSIS-DSP: arm_scale_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_scale_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_scale_q31 (q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize)
     Multiplies a Q31 vector by a scalar.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__scale__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__scale__q7_8c.html new file mode 100644 index 0000000..90f677a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__scale__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_scale_q7.c File Reference +CMSIS-DSP: arm_scale_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_scale_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_scale_q7 (q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize)
     Multiplies a Q7 vector by a scalar.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__shift__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__shift__q15_8c.html new file mode 100644 index 0000000..027c6bc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__shift__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_shift_q15.c File Reference +CMSIS-DSP: arm_shift_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_shift_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_shift_q15 (q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q15 vector a specified number of bits.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__shift__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__shift__q31_8c.html new file mode 100644 index 0000000..1f11162 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__shift__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_shift_q31.c File Reference +CMSIS-DSP: arm_shift_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_shift_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_shift_q31 (q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q31 vector a specified number of bits.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__shift__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__shift__q7_8c.html new file mode 100644 index 0000000..cd08a27 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__shift__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_shift_q7.c File Reference +CMSIS-DSP: arm_shift_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_shift_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_shift_q7 (q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q7 vector a specified number of bits.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__data_8c.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__data_8c.html new file mode 100644 index 0000000..7a1c553 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__data_8c.html @@ -0,0 +1,184 @@ + + + + + +arm_signal_converge_data.c File Reference +CMSIS-DSP: arm_signal_converge_data.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_data.c File Reference
    +
    +
    + + + + + + + + +

    +Variables

    float32_t testInput_f32 [1536]
     
    float32_t lmsNormCoeff_f32 [32]
     
    const float32_t FIRCoeff_f32 [32]
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    const float32_t FIRCoeff_f32[32]
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t lmsNormCoeff_f32[32]
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32[1536]
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..fd7f681 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_signal_converge_example
    +for Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_signal_converge_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..36736ea --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..a0e3f29 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..75da6b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..d8d6550 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..f7b782d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_signal_converge_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8c.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8c.html new file mode 100644 index 0000000..59ab132 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8c.html @@ -0,0 +1,749 @@ + + + + + +math_helper.c File Reference +CMSIS-DSP: math_helper.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_example/ARM/math_helper.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q7 (q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_calc_2pow (uint32_t numShifts)
     Calculates pow(2, numShifts)
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +

    References arm_calc_2pow().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q7 (q7_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8h.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8h.html new file mode 100644 index 0000000..9c220e1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example_2_a_r_m_2math__helper_8h.html @@ -0,0 +1,707 @@ + + + + + +math_helper.h File Reference +CMSIS-DSP: math_helper.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_example/ARM/math_helper.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    float arm_snr_f32 (float *pRef, float *pTest, uint32_t buffSize)
     Caluclation of SNR.
     
    void arm_float_to_q12_20 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed in q12.20 format.
     
    void arm_provide_guard_bits_q15 (q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_provide_guard_bits_q31 (q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits)
     Provide guard bits for Input buffer.
     
    void arm_float_to_q14 (float *pIn, q15_t *pOut, uint32_t numSamples)
     Converts float to fixed q14.
     
    void arm_float_to_q29 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_float_to_q28 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q28 format.
     
    void arm_float_to_q30 (float *pIn, q31_t *pOut, uint32_t numSamples)
     Converts float to fixed q30 format.
     
    void arm_clip_f32 (float *pIn, uint32_t numSamples)
     Clip the float values to +/- 1.
     
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
     Caluclates number of guard bits.
     
    void arm_apply_guard_bits (float32_t *pIn, uint32_t numSamples, uint32_t guard_bits)
     Converts Q15 to floating-point.
     
    uint32_t arm_compare_fixed_q15 (q15_t *pIn, q15_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_compare_fixed_q31 (q31_t *pIn, q31_t *pOut, uint32_t numSamples)
     Compare MATLAB Reference Output and ARM Test output.
     
    uint32_t arm_calc_2pow (uint32_t guard_bits)
     Calculates pow(2, numShifts)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_apply_guard_bits (float32_tpIn,
    uint32_t numSamples,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +

    References arm_calc_2pow().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_2pow (uint32_t numShifts)
    +
    +
    Parameters
    + + +
    uint32_tnumber of shifts
    +
    +
    +
    Returns
    pow(2, numShifts)
    + +

    Referenced by arm_apply_guard_bits().

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t arm_calc_guard_bits (uint32_t num_adds)
    +
    +
    Parameters
    + + +
    uint32_tnumber of additions
    +
    +
    +
    Returns
    none The function Caluclates the number of guard bits depending on the numtaps
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_clip_f32 (float * pIn,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + +
    pIninput buffer
    numSamplesnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q15 (q15_tpIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to Ref buffer
    q15_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    uint32_t arm_compare_fixed_q31 (q31_tpIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to Ref buffer
    q31_t*Pointer to Test buffer
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q12_20 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point(q12.20) values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q14 (float * pIn,
    q15_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q28 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q29 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q30 (float * pIn,
    q31_tpOut,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + +
    uint32_tnumber of samples in the buffer
    +
    +
    +
    Returns
    none The function converts floating point values to fixed point values
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q15 (q15_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q15_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_provide_guard_bits_q31 (q31_tinput_buf,
    uint32_t blockSize,
    uint32_t guard_bits 
    )
    +
    +
    Parameters
    + + + + +
    q31_t*Pointer to input buffer
    uint32_tblockSize
    uint32_tguard_bits
    +
    +
    +
    Returns
    none The function Provides the guard bits for the buffer to avoid overflow
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    float arm_snr_f32 (float * pRef,
    float * pTest,
    uint32_t buffSize 
    )
    +
    +
    Parameters
    + + + + +
    float*Pointer to the reference buffer
    float*Pointer to the test buffer
    uint32_ttotal number of samples
    +
    +
    +
    Returns
    float SNR The function Caluclates signal to noise ratio for the reference output and test output
    + +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__signal__converge__example__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__signal__converge__example__f32_8c.html new file mode 100644 index 0000000..8b99bb8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__signal__converge__example__f32_8c.html @@ -0,0 +1,559 @@ + + + + + +arm_signal_converge_example_f32.c File Reference +CMSIS-DSP: arm_signal_converge_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_signal_converge_example_f32.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + +

    +Macros

    #define TEST_LENGTH_SAMPLES
     
    #define NUMTAPS
     
    #define BLOCKSIZE
     
    #define DELTA_ERROR
     
    #define DELTA_COEFF
     
    #define MU
     
    #define NUMFRAMES
     
    + + + + + + + + + +

    +Functions

    arm_status test_signal_converge_example (void)
     
    arm_status test_signal_converge (float32_t *err_signal, uint32_t blockSize)
     
    void getinput (float32_t *input, uint32_t fr_cnt, uint32_t blockSize)
     
    int32_t main (void)
     
    + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    float32_t firStateF32 [NUMTAPS+BLOCKSIZE]
     
    arm_fir_instance_f32 LPF_instance
     
    float32_t lmsStateF32 [NUMTAPS+BLOCKSIZE]
     
    float32_t errOutput [TEST_LENGTH_SAMPLES]
     
    arm_lms_norm_instance_f32 lmsNorm_instance
     
    float32_t testInput_f32 [TEST_LENGTH_SAMPLES]
     
    float32_t lmsNormCoeff_f32 [32]
     
    const float32_t FIRCoeff_f32 [32]
     
    float32_t wire1 [BLOCKSIZE]
     
    float32_t wire2 [BLOCKSIZE]
     
    float32_t wire3 [BLOCKSIZE]
     
    float32_t err_signal [BLOCKSIZE]
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define BLOCKSIZE
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define DELTA_COEFF
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define DELTA_ERROR
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define MU
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define NUMFRAMES
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define NUMTAPS
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define TEST_LENGTH_SAMPLES
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void getinput (float32_tinput,
    uint32_t fr_cnt,
    uint32_t blockSize 
    )
    +
    +
    + + + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status test_signal_converge (float32_terr_signal,
    uint32_t blockSize 
    )
    +
    +
    + +
    +
    + + + + + + + + +
    arm_status test_signal_converge_example (void )
    +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    float32_t err_signal[BLOCKSIZE]
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t errOutput[TEST_LENGTH_SAMPLES]
    +
    +
    + +
    +
    + + + + +
    const float32_t FIRCoeff_f32[32]
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t firStateF32[NUMTAPS+BLOCKSIZE]
    +
    +
    Examples:
    arm_fir_example_f32.c, and arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    arm_lms_norm_instance_f32 lmsNorm_instance
    +
    +
    + +
    +
    + + + + +
    float32_t lmsNormCoeff_f32[32]
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t lmsStateF32[NUMTAPS+BLOCKSIZE]
    +
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    arm_fir_instance_f32 LPF_instance
    +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32[TEST_LENGTH_SAMPLES]
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t wire1[BLOCKSIZE]
    +
    +
    + +
    +
    + + + + +
    float32_t wire2[BLOCKSIZE]
    +
    +
    + +
    +
    + + + + +
    float32_t wire3[BLOCKSIZE]
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..047ad24 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,151 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_sin_cos_example for Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_sin_cos_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..90af017 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_cos_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..fda1d08 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_cos_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..3f8fdc8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_cos_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..f326c34 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_cos_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..bd69256 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_sin_cos_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__example__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__example__f32_8c.html new file mode 100644 index 0000000..9eeac59 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__example__f32_8c.html @@ -0,0 +1,334 @@ + + + + + +arm_sin_cos_example_f32.c File Reference +CMSIS-DSP: arm_sin_cos_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_cos_example_f32.c File Reference
    +
    +
    + + + + + + +

    +Macros

    #define MAX_BLOCKSIZE
     
    #define DELTA
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + + + + + + + +

    +Variables

    const float32_t testInput_f32 [MAX_BLOCKSIZE]
     
    const float32_t testRefOutput_f32
     
    uint32_t blockSize
     
    float32_t testOutput
     
    float32_t cosOutput
     
    float32_t sinOutput
     
    float32_t cosSquareOutput
     
    float32_t sinSquareOutput
     
    arm_status status
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define DELTA
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define MAX_BLOCKSIZE
    +
    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t blockSize
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t cosOutput
    +
    +
    Examples:
    arm_sin_cos_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t cosSquareOutput
    +
    +
    Examples:
    arm_sin_cos_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t sinOutput
    +
    +
    Examples:
    arm_sin_cos_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t sinSquareOutput
    +
    +
    Examples:
    arm_sin_cos_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    arm_status status
    +
    + +
    +
    + +
    +
    + + + + +
    const float32_t testInput_f32[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t testOutput
    +
    + +
    +
    + +
    +
    + + + + +
    const float32_t testRefOutput_f32
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__f32_8c.html new file mode 100644 index 0000000..87ed98f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sin_cos_f32.c File Reference +CMSIS-DSP: arm_sin_cos_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_cos_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_sin_cos_f32 (float32_t theta, float32_t *pSinVal, float32_t *pCosVal)
     Floating-point sin_cos function.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__cos__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__cos__q31_8c.html new file mode 100644 index 0000000..be3fd8a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__cos__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sin_cos_q31.c File Reference +CMSIS-DSP: arm_sin_cos_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_cos_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_sin_cos_q31 (q31_t theta, q31_t *pSinVal, q31_t *pCosVal)
     Q31 sin_cos function.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__f32_8c.html new file mode 100644 index 0000000..99fb8d1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sin_f32.c File Reference +CMSIS-DSP: arm_sin_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    float32_t arm_sin_f32 (float32_t x)
     Fast approximation to the trigonometric sine function for floating-point data.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__q15_8c.html new file mode 100644 index 0000000..e9950f8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sin_q15.c File Reference +CMSIS-DSP: arm_sin_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    q15_t arm_sin_q15 (q15_t x)
     Fast approximation to the trigonometric sine function for Q15 data.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sin__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__sin__q31_8c.html new file mode 100644 index 0000000..b1c6d19 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sin__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sin_q31.c File Reference +CMSIS-DSP: arm_sin_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sin_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    q31_t arm_sin_q31 (q31_t x)
     Fast approximation to the trigonometric sine function for Q31 data.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sqrt__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__sqrt__q15_8c.html new file mode 100644 index 0000000..d2785ba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sqrt__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sqrt_q15.c File Reference +CMSIS-DSP: arm_sqrt_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sqrt_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_sqrt_q15 (q15_t in, q15_t *pOut)
     Q15 square root function.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sqrt__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__sqrt__q31_8c.html new file mode 100644 index 0000000..9f7b9ca --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sqrt__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sqrt_q31.c File Reference +CMSIS-DSP: arm_sqrt_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sqrt_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    arm_status arm_sqrt_q31 (q31_t in, q31_t *pOut)
     Q31 square root function.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__std__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__std__f32_8c.html new file mode 100644 index 0000000..662c778 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__std__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_std_f32.c File Reference +CMSIS-DSP: arm_std_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_std_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_std_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Standard deviation of the elements of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__std__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__std__q15_8c.html new file mode 100644 index 0000000..8a35a10 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__std__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_std_q15.c File Reference +CMSIS-DSP: arm_std_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_std_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_std_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Standard deviation of the elements of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__std__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__std__q31_8c.html new file mode 100644 index 0000000..bc29475 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__std__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_std_q31.c File Reference +CMSIS-DSP: arm_std_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_std_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_std_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Standard deviation of the elements of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sub__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__sub__f32_8c.html new file mode 100644 index 0000000..e7d922d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sub__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sub_f32.c File Reference +CMSIS-DSP: arm_sub_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sub_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_sub_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector subtraction.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sub__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__sub__q15_8c.html new file mode 100644 index 0000000..8c2a911 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sub__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sub_q15.c File Reference +CMSIS-DSP: arm_sub_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sub_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_sub_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector subtraction.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sub__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__sub__q31_8c.html new file mode 100644 index 0000000..c8014d9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sub__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sub_q31.c File Reference +CMSIS-DSP: arm_sub_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sub_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_sub_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector subtraction.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__sub__q7_8c.html b/CMSIS/Documentation/DSP/html/arm__sub__q7_8c.html new file mode 100644 index 0000000..bbd5f4d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__sub__q7_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_sub_q7.c File Reference +CMSIS-DSP: arm_sub_q7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_sub_q7.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_sub_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector subtraction.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__var__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__var__f32_8c.html new file mode 100644 index 0000000..77fc94e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__var__f32_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_var_f32.c File Reference +CMSIS-DSP: arm_var_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_var_f32.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_var_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Variance of the elements of a floating-point vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__var__q15_8c.html b/CMSIS/Documentation/DSP/html/arm__var__q15_8c.html new file mode 100644 index 0000000..76b7ab7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__var__q15_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_var_q15.c File Reference +CMSIS-DSP: arm_var_q15.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_var_q15.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_var_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Variance of the elements of a Q15 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__var__q31_8c.html b/CMSIS/Documentation/DSP/html/arm__var__q31_8c.html new file mode 100644 index 0000000..ce10f89 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__var__q31_8c.html @@ -0,0 +1,138 @@ + + + + + +arm_var_q31.c File Reference +CMSIS-DSP: arm_var_q31.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_var_q31.c File Reference
    +
    +
    + + + + + +

    +Functions

    void arm_var_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Variance of the elements of a Q31 vector.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_abstract_8txt.html b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_abstract_8txt.html new file mode 100644 index 0000000..36c7b05 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_abstract_8txt.html @@ -0,0 +1,152 @@ + + + + + +Abstract.txt File Reference +CMSIS-DSP: Abstract.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Abstract.txt File Reference
    +
    +
    + + + + +

    +Variables

    CMSIS DSP_Lib example
    +arm_variance_example for
    +Cortex 
    M0
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    CMSIS DSP_Lib example arm_variance_example for Cortex M0
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html new file mode 100644 index 0000000..f547325 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM0.c File Reference +CMSIS-DSP: system_ARMCM0.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_variance_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html new file mode 100644 index 0000000..844c47e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM3.c File Reference +CMSIS-DSP: system_ARMCM3.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_variance_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html new file mode 100644 index 0000000..8257f9e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html @@ -0,0 +1,254 @@ + + + + + +system_ARMCM4.c File Reference +CMSIS-DSP: system_ARMCM4.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_variance_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    +

    System Clock Frequency (Core Clock)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html new file mode 100644 index 0000000..8d0aa27 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html @@ -0,0 +1,262 @@ + + + + + +system_ARMCM7.c File Reference +CMSIS-DSP: system_ARMCM7.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_variance_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c File Reference
    +
    +
    + + + + + + + + +

    +Macros

    #define __HSI
     
    #define __XTAL
     
    #define __SYSTEM_CLOCK
     
    + + + + + + + +

    +Functions

    void SystemCoreClockUpdate (void)
     Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
     
    void SystemInit (void)
     Setup the microcontroller system. Initialize the System.
     
    + + + +

    +Variables

    uint32_t SystemCoreClock
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define __HSI
    +
    + +
    +
    + +
    +
    + + + + +
    #define __SYSTEM_CLOCK
    +
    + +

    Referenced by SystemCoreClockUpdate(), and SystemInit().

    + +
    +
    + +
    +
    + + + + +
    #define __XTAL
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void SystemCoreClockUpdate (void )
    +
    +

    Update SystemCoreClock variable

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    + +
    +
    + + + + + + + + +
    void SystemInit (void )
    +
    +

    Initialize the system

    +
    Parameters
    + + +
    none
    +
    +
    +
    Returns
    none
    + +

    References __SYSTEM_CLOCK, and SystemCoreClock.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t SystemCoreClock
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html new file mode 100644 index 0000000..9571b4a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__variance__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html @@ -0,0 +1,129 @@ + + + + + +RTE_Components.h File Reference +CMSIS-DSP: RTE_Components.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_variance_example/ARM/RTE/RTE_Components.h File Reference
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm__variance__example__f32_8c.html b/CMSIS/Documentation/DSP/html/arm__variance__example__f32_8c.html new file mode 100644 index 0000000..55995df --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm__variance__example__f32_8c.html @@ -0,0 +1,283 @@ + + + + + +arm_variance_example_f32.c File Reference +CMSIS-DSP: arm_variance_example_f32.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_variance_example_f32.c File Reference
    +
    +
    + + + + + + +

    +Macros

    #define MAX_BLOCKSIZE
     
    #define DELTA
     
    + + + +

    +Functions

    int32_t main (void)
     
    + + + + + + + + + + + + + +

    +Variables

    float32_t wire1 [MAX_BLOCKSIZE]
     
    float32_t wire2 [MAX_BLOCKSIZE]
     
    float32_t wire3 [MAX_BLOCKSIZE]
     
    float32_t testInput_f32 [32]
     
    uint32_t blockSize
     
    float32_t refVarianceOut
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define DELTA
    +
    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    #define MAX_BLOCKSIZE
    +
    + +
    +
    +

    Function Documentation

    + + +

    Variable Documentation

    + +
    +
    + + + + +
    uint32_t blockSize
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t refVarianceOut
    +
    +
    Examples:
    arm_variance_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + +
    float32_t testInput_f32[32]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t wire1[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t wire2[MAX_BLOCKSIZE]
    +
    + +
    +
    + +
    +
    + + + + +
    float32_t wire3[MAX_BLOCKSIZE]
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_class_marks_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_class_marks_example_f32_8c-example.html new file mode 100644 index 0000000..053555b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_class_marks_example_f32_8c-example.html @@ -0,0 +1,297 @@ + + + + + +arm_class_marks_example_f32.c +CMSIS-DSP: arm_class_marks_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_class_marks_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_class_marks_example_f32.c
    +
    *
    +
    * Description: Example code to calculate Minimum, Maximum
    +
    * Mean, std and variance of marks obtained in a class
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include "arm_math.h"
    +
    +
    #define USE_STATIC_INIT
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Global defines
    +
    ** ------------------------------------------------------------------- */
    +
    +
    #define TEST_LENGTH_SAMPLES (20*4)
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** List of Marks scored by 20 students for 4 subjects
    +
    ** ------------------------------------------------------------------- */
    + +
    {
    +
    42.000000, 37.000000, 81.000000, 28.000000,
    +
    83.000000, 72.000000, 36.000000, 38.000000,
    +
    32.000000, 51.000000, 63.000000, 64.000000,
    +
    97.000000, 82.000000, 95.000000, 90.000000,
    +
    66.000000, 51.000000, 54.000000, 42.000000,
    +
    67.000000, 56.000000, 45.000000, 57.000000,
    +
    67.000000, 69.000000, 35.000000, 52.000000,
    +
    29.000000, 81.000000, 58.000000, 47.000000,
    +
    38.000000, 76.000000, 100.000000, 29.000000,
    +
    33.000000, 47.000000, 29.000000, 50.000000,
    +
    34.000000, 41.000000, 61.000000, 46.000000,
    +
    52.000000, 50.000000, 48.000000, 36.000000,
    +
    47.000000, 55.000000, 44.000000, 40.000000,
    +
    100.000000, 94.000000, 84.000000, 37.000000,
    +
    32.000000, 71.000000, 47.000000, 77.000000,
    +
    31.000000, 50.000000, 49.000000, 35.000000,
    +
    63.000000, 67.000000, 40.000000, 31.000000,
    +
    29.000000, 68.000000, 61.000000, 38.000000,
    +
    31.000000, 28.000000, 28.000000, 76.000000,
    +
    55.000000, 33.000000, 29.000000, 39.000000
    +
    };
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Number of subjects X 1
    +
    * ------------------------------------------------------------------- */
    + +
    {
    +
    1.000, 1.000, 1.000, 1.000
    +
    };
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** f32 Output buffer
    +
    ** ------------------------------------------------------------------- */
    + +
    +
    +
    /* ------------------------------------------------------------------
    +
    * Global defines
    +
    *------------------------------------------------------------------- */
    +
    #define NUMSTUDENTS 20
    +
    #define NUMSUBJECTS 4
    +
    +
    /* ------------------------------------------------------------------
    +
    * Global variables
    +
    *------------------------------------------------------------------- */
    +
    +
    uint32_t numStudents = 20;
    +
    uint32_t numSubjects = 4;
    + +
    uint32_t student_num;
    +
    +
    /* ----------------------------------------------------------------------------------
    +
    * Main f32 test function. It returns maximum marks secured and student number
    +
    * ------------------------------------------------------------------------------- */
    +
    +
    int32_t main()
    +
    {
    +
    +
    #ifndef USE_STATIC_INIT
    +
    + + + +
    +
    /* Input and output matrices initializations */
    + + + +
    +
    #else
    +
    +
    /* Static Initializations of Input and output matrix sizes and array */
    + + + +
    +
    #endif
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    *Call the Matrix multiplication process function
    +
    * ------------------------------------------------------------------- */
    +
    arm_mat_mult_f32(&srcA, &srcB, &dstC);
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the Max function to calculate max marks among numStudents
    +
    ** ------------------------------------------------------------------- */
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the Min function to calculate min marks among numStudents
    +
    ** ------------------------------------------------------------------- */
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the Mean function to calculate mean
    +
    ** ------------------------------------------------------------------- */
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the std function to calculate standard deviation
    +
    ** ------------------------------------------------------------------- */
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the var function to calculate variance
    +
    ** ------------------------------------------------------------------- */
    + +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_convolution_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_convolution_example_f32_8c-example.html new file mode 100644 index 0000000..fce5994 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_convolution_example_f32_8c-example.html @@ -0,0 +1,310 @@ + + + + + +arm_convolution_example_f32.c +CMSIS-DSP: arm_convolution_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_convolution_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_convolution_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating Convolution of two input signals using fft.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include "arm_math.h"
    +
    #include "math_helper.h"
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Defines each of the tests performed
    +
    * ------------------------------------------------------------------- */
    +
    #define MAX_BLOCKSIZE 128
    +
    #define DELTA (0.000001f)
    +
    #define SNR_THRESHOLD 90
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare I/O buffers
    +
    * ------------------------------------------------------------------- */
    +
    float32_t Ak[MAX_BLOCKSIZE]; /* Input A */
    +
    float32_t Bk[MAX_BLOCKSIZE]; /* Input B */
    +
    float32_t AxB[MAX_BLOCKSIZE * 2]; /* Output */
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Test input data for Floating point Convolution example for 32-blockSize
    +
    * Generated by the MATLAB randn() function
    +
    * ------------------------------------------------------------------- */
    + +
    {
    +
    -0.808920, 1.357369, 1.180861, -0.504544, 1.762637, -0.703285,
    +
    1.696966, 0.620571, -0.151093, -0.100235, -0.872382, -0.403579,
    +
    -0.860749, -0.382648, -1.052338, 0.128113, -0.646269, 1.093377,
    +
    -2.209198, 0.471706, 0.408901, 1.266242, 0.598252, 1.176827,
    +
    -0.203421, 0.213596, -0.851964, -0.466958, 0.021841, -0.698938,
    +
    -0.604107, 0.461778, -0.318219, 0.942520, 0.577585, 0.417619,
    +
    0.614665, 0.563679, -1.295073, -0.764437, 0.952194, -0.859222,
    +
    -0.618554, -2.268542, -1.210592, 1.655853, -2.627219, -0.994249,
    +
    -1.374704, 0.343799, 0.025619, 1.227481, -0.708031, 0.069355,
    +
    -1.845228, -1.570886, 1.010668, -1.802084, 1.630088, 1.286090,
    +
    -0.161050, -0.940794, 0.367961, 0.291907
    +
    +
    };
    +
    + +
    {
    +
    0.933724, 0.046881, 1.316470, 0.438345, 0.332682, 2.094885,
    +
    0.512081, 0.035546, 0.050894, -2.320371, 0.168711, -1.830493,
    +
    -0.444834, -1.003242, -0.531494, -1.365600, -0.155420, -0.757692,
    +
    -0.431880, -0.380021, 0.096243, -0.695835, 0.558850, -1.648962,
    +
    0.020369, -0.363630, 0.887146, 0.845503, -0.252864, -0.330397,
    +
    1.269131, -1.109295, -1.027876, 0.135940, 0.116721, -0.293399,
    +
    -1.349799, 0.166078, -0.802201, 0.369367, -0.964568, -2.266011,
    +
    0.465178, 0.651222, -0.325426, 0.320245, -0.784178, -0.579456,
    +
    0.093374, 0.604778, -0.048225, 0.376297, -0.394412, 0.578182,
    +
    -1.218141, -1.387326, 0.692462, -0.631297, 0.153137, -0.638952,
    +
    0.635474, -0.970468, 1.334057, -0.111370
    +
    };
    +
    +
    const float testRefOutput_f32[127] =
    +
    {
    +
    -0.818943, 1.229484, -0.533664, 1.016604, 0.341875, -1.963656,
    +
    5.171476, 3.478033, 7.616361, 6.648384, 0.479069, 1.792012,
    +
    -1.295591, -7.447818, 0.315830, -10.657445, -2.483469, -6.524236,
    +
    -7.380591, -3.739005, -8.388957, 0.184147, -1.554888, 3.786508,
    +
    -1.684421, 5.400610, -1.578126, 7.403361, 8.315999, 2.080267,
    +
    11.077776, 2.749673, 7.138962, 2.748762, 0.660363, 0.981552,
    +
    1.442275, 0.552721, -2.576892, 4.703989, 0.989156, 8.759344,
    +
    -0.564825, -3.994680, 0.954710, -5.014144, 6.592329, 1.599488,
    +
    -13.979146, -0.391891, -4.453369, -2.311242, -2.948764, 1.761415,
    +
    -0.138322, 10.433007, -2.309103, 4.297153, 8.535523, 3.209462,
    +
    8.695819, 5.569919, 2.514304, 5.582029, 2.060199, 0.642280,
    +
    7.024616, 1.686615, -6.481756, 1.343084, -3.526451, 1.099073,
    +
    -2.965764, -0.173723, -4.111484, 6.528384, -6.965658, 1.726291,
    +
    1.535172, 11.023435, 2.338401, -4.690188, 1.298210, 3.943885,
    +
    8.407885, 5.168365, 0.684131, 1.559181, 1.859998, 2.852417,
    +
    8.574070, -6.369078, 6.023458, 11.837963, -6.027632, 4.469678,
    +
    -6.799093, -2.674048, 6.250367, -6.809971, -3.459360, 9.112410,
    +
    -2.711621, -1.336678, 1.564249, -1.564297, -1.296760, 8.904013,
    +
    -3.230109, 6.878013, -7.819823, 3.369909, -1.657410, -2.007358,
    +
    -4.112825, 1.370685, -3.420525, -6.276605, 3.244873, -3.352638,
    +
    1.545372, 0.902211, 0.197489, -1.408732, 0.523390, 0.348440, 0
    +
    };
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare Global variables
    +
    * ------------------------------------------------------------------- */
    +
    uint32_t srcALen = 64; /* Length of Input A */
    +
    uint32_t srcBLen = 64; /* Length of Input B */
    +
    uint32_t outLen; /* Length of convolution output */
    +
    float32_t snr; /* output SNR */
    +
    +
    int32_t main(void)
    +
    {
    +
    arm_status status; /* Status of the example */
    +
    arm_cfft_radix4_instance_f32 cfft_instance; /* CFFT Structure instance */
    +
    +
    /* CFFT Structure instance pointer */
    +
    arm_cfft_radix4_instance_f32 *cfft_instance_ptr =
    +
    (arm_cfft_radix4_instance_f32*) &cfft_instance;
    +
    +
    /* output length of convolution */
    + +
    +
    /* Initialise the fft input buffers with all zeros */
    + + +
    +
    /* Copy the input values to the fft input buffers */
    + + +
    +
    /* Initialize the CFFT function to compute 64 point fft */
    +
    status = arm_cfft_radix4_init_f32(cfft_instance_ptr, 64, 0, 1);
    +
    +
    /* Transform input a[n] from time domain to frequency domain A[k] */
    +
    arm_cfft_radix4_f32(cfft_instance_ptr, Ak);
    +
    /* Transform input b[n] from time domain to frequency domain B[k] */
    +
    arm_cfft_radix4_f32(cfft_instance_ptr, Bk);
    +
    +
    /* Complex Multiplication of the two input buffers in frequency domain */
    + +
    +
    /* Initialize the CIFFT function to compute 64 point ifft */
    +
    status = arm_cfft_radix4_init_f32(cfft_instance_ptr, 64, 1, 1);
    +
    +
    /* Transform the multiplication output from frequency domain to time domain,
    +
    that gives the convolved output */
    +
    arm_cfft_radix4_f32(cfft_instance_ptr, AxB);
    +
    +
    /* SNR Calculation */
    + +
    +
    /* Compare the SNR with threshold to test whether the
    +
    computed output is matched with the reference output values. */
    + +
    {
    +
    status = ARM_MATH_SUCCESS;
    +
    }
    +
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_dotproduct_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_dotproduct_example_f32_8c-example.html new file mode 100644 index 0000000..a175a6b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_dotproduct_example_f32_8c-example.html @@ -0,0 +1,260 @@ + + + + + +arm_dotproduct_example_f32.c +CMSIS-DSP: arm_dotproduct_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_dotproduct_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_dotproduct_example_f32.c
    +
    *
    +
    * Description: Example code computing dot product of two vectors.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include <math.h>
    +
    #include "arm_math.h"
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Defines each of the tests performed
    +
    * ------------------------------------------------------------------- */
    +
    #define MAX_BLOCKSIZE 32
    +
    #define DELTA (0.000001f)
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Test input data for Floating point Dot Product example for 32-blockSize
    +
    * Generated by the MATLAB randn() function
    +
    * ------------------------------------------------------------------- */
    +
    /* ----------------------------------------------------------------------
    +
    ** Test input data of srcA for blockSize 32
    +
    ** ------------------------------------------------------------------- */
    + +
    {
    +
    -0.4325648115282207, -1.6655843782380970, 0.1253323064748307,
    +
    0.2876764203585489, -1.1464713506814637, 1.1909154656429988,
    +
    1.1891642016521031, -0.0376332765933176, 0.3272923614086541,
    +
    0.1746391428209245, -0.1867085776814394, 0.7257905482933027,
    +
    -0.5883165430141887, 2.1831858181971011, -0.1363958830865957,
    +
    0.1139313135208096, 1.0667682113591888, 0.0592814605236053,
    +
    -0.0956484054836690, -0.8323494636500225, 0.2944108163926404,
    +
    -1.3361818579378040, 0.7143245518189522, 1.6235620644462707,
    +
    -0.6917757017022868, 0.8579966728282626, 1.2540014216025324,
    +
    -1.5937295764474768, -1.4409644319010200, 0.5711476236581780,
    +
    -0.3998855777153632, 0.6899973754643451
    +
    };
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Test input data of srcB for blockSize 32
    +
    ** ------------------------------------------------------------------- */
    + +
    {
    +
    1.7491401329284098, 0.1325982188803279, 0.3252281811989881,
    +
    -0.7938091410349637, 0.3149236145048914, -0.5272704888029532,
    +
    0.9322666565031119, 1.1646643544607362, -2.0456694357357357,
    +
    -0.6443728590041911, 1.7410657940825480, 0.4867684246821860,
    +
    1.0488288293660140, 1.4885752747099299, 1.2705014969484090,
    +
    -1.8561241921210170, 2.1343209047321410, 1.4358467535865909,
    +
    -0.9173023332875400, -1.1060770780029008, 0.8105708062681296,
    +
    0.6985430696369063, -0.4015827425012831, 1.2687512030669628,
    +
    -0.7836083053674872, 0.2132664971465569, 0.7878984786088954,
    +
    0.8966819356782295, -0.1869172943544062, 1.0131816724341454,
    +
    0.2484350696132857, 0.0596083377937976
    +
    };
    +
    +
    /* Reference dot product output */
    +
    float32_t refDotProdOut = 5.9273644806352142;
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare Global variables
    +
    * ------------------------------------------------------------------- */
    +
    float32_t multOutput[MAX_BLOCKSIZE]; /* Intermediate output */
    +
    float32_t testOutput; /* Final ouput */
    +
    +
    arm_status status; /* Status of the example */
    +
    +
    int32_t main(void)
    +
    {
    +
    uint32_t i; /* Loop counter */
    +
    float32_t diff; /* Difference between reference and test outputs */
    +
    +
    /* Multiplication of two input buffers */
    + +
    +
    /* Accumulate the multiplication output values to
    +
    get the dot product of the two inputs */
    +
    for(i=0; i< MAX_BLOCKSIZE; i++)
    +
    {
    + +
    }
    +
    +
    /* absolute value of difference between ref and test */
    +
    diff = fabsf(refDotProdOut - testOutput);
    +
    +
    /* Comparison of dot product value with reference */
    +
    if(diff > DELTA)
    +
    {
    + +
    }
    +
    + +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_fft_bin_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_fft_bin_example_f32_8c-example.html new file mode 100644 index 0000000..cd397aa --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_fft_bin_example_f32_8c-example.html @@ -0,0 +1,230 @@ + + + + + +arm_fft_bin_example_f32.c +CMSIS-DSP: arm_fft_bin_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_fft_bin_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_fft_bin_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating calculation of Max energy bin of
    +
    * frequency domain of input signal.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include "arm_math.h"
    + +
    +
    #define TEST_LENGTH_SAMPLES 2048
    +
    +
    /* -------------------------------------------------------------------
    +
    * External Input and Output buffer Declarations for FFT Bin Example
    +
    * ------------------------------------------------------------------- */
    + + +
    +
    /* ------------------------------------------------------------------
    +
    * Global variables for FFT Bin Example
    +
    * ------------------------------------------------------------------- */
    +
    uint32_t fftSize = 1024;
    +
    uint32_t ifftFlag = 0;
    +
    uint32_t doBitReverse = 1;
    +
    +
    /* Reference index at which max energy of bin ocuurs */
    +
    uint32_t refIndex = 213, testIndex = 0;
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Max magnitude FFT Bin test
    +
    * ------------------------------------------------------------------- */
    +
    +
    int32_t main(void)
    +
    {
    +
    + +
    float32_t maxValue;
    +
    +
    status = ARM_MATH_SUCCESS;
    +
    +
    /* Process the data through the CFFT/CIFFT module */
    + +
    +
    /* Process the data through the Complex Magnitude Module for
    +
    calculating the magnitude at each bin */
    + +
    +
    /* Calculates maxValue and returns corresponding BIN value */
    + +
    + +
    {
    + +
    }
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Loop here if the signals fail the PASS check.
    +
    ** This denotes a test failure
    +
    ** ------------------------------------------------------------------- */
    +
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_fir_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_fir_example_f32_8c-example.html new file mode 100644 index 0000000..fcef847 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_fir_example_f32_8c-example.html @@ -0,0 +1,281 @@ + + + + + +arm_fir_example_f32.c +CMSIS-DSP: arm_fir_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_fir_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_fir_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating how an FIR filter can be used
    +
    * as a low pass filter.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Include Files
    +
    ** ------------------------------------------------------------------- */
    +
    +
    #include "arm_math.h"
    +
    #include "math_helper.h"
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Macro Defines
    +
    ** ------------------------------------------------------------------- */
    +
    +
    #define TEST_LENGTH_SAMPLES 320
    +
    #define SNR_THRESHOLD_F32 140.0f
    +
    #define BLOCK_SIZE 32
    +
    #define NUM_TAPS 29
    +
    +
    /* -------------------------------------------------------------------
    +
    * The input signal and reference output (computed with MATLAB)
    +
    * are defined externally in arm_fir_lpf_data.c.
    +
    * ------------------------------------------------------------------- */
    +
    + + +
    +
    /* -------------------------------------------------------------------
    +
    * Declare Test output buffer
    +
    * ------------------------------------------------------------------- */
    +
    + +
    +
    /* -------------------------------------------------------------------
    +
    * Declare State buffer of size (numTaps + blockSize - 1)
    +
    * ------------------------------------------------------------------- */
    +
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** FIR Coefficients buffer generated using fir1() MATLAB function.
    +
    ** fir1(28, 6/24)
    +
    ** ------------------------------------------------------------------- */
    +
    + +
    -0.0018225230f, -0.0015879294f, +0.0000000000f, +0.0036977508f, +0.0080754303f, +0.0085302217f, -0.0000000000f, -0.0173976984f,
    +
    -0.0341458607f, -0.0333591565f, +0.0000000000f, +0.0676308395f, +0.1522061835f, +0.2229246956f, +0.2504960933f, +0.2229246956f,
    +
    +0.1522061835f, +0.0676308395f, +0.0000000000f, -0.0333591565f, -0.0341458607f, -0.0173976984f, -0.0000000000f, +0.0085302217f,
    +
    +0.0080754303f, +0.0036977508f, +0.0000000000f, -0.0015879294f, -0.0018225230f
    +
    };
    +
    +
    /* ------------------------------------------------------------------
    +
    * Global variables for FIR LPF Example
    +
    * ------------------------------------------------------------------- */
    +
    +
    uint32_t blockSize = BLOCK_SIZE;
    + +
    + +
    +
    /* ----------------------------------------------------------------------
    +
    * FIR LPF Example
    +
    * ------------------------------------------------------------------- */
    +
    +
    int32_t main(void)
    +
    {
    +
    uint32_t i;
    + + +
    float32_t *inputF32, *outputF32;
    +
    +
    /* Initialize input and output buffer pointers */
    +
    inputF32 = &testInput_f32_1kHz_15kHz[0];
    +
    outputF32 = &testOutput[0];
    +
    +
    /* Call FIR init function to initialize the instance structure. */
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the FIR process function for every blockSize samples
    +
    ** ------------------------------------------------------------------- */
    +
    +
    for(i=0; i < numBlocks; i++)
    +
    {
    +
    arm_fir_f32(&S, inputF32 + (i * blockSize), outputF32 + (i * blockSize), blockSize);
    +
    }
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Compare the generated output against the reference output computed
    +
    ** in MATLAB.
    +
    ** ------------------------------------------------------------------- */
    +
    + +
    + +
    {
    + +
    }
    +
    else
    +
    {
    +
    status = ARM_MATH_SUCCESS;
    +
    }
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Loop here if the signal does not match the reference output.
    +
    ** ------------------------------------------------------------------- */
    +
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_graphic_equalizer_example_q31_8c-example.html b/CMSIS/Documentation/DSP/html/arm_graphic_equalizer_example_q31_8c-example.html new file mode 100644 index 0000000..1a71c9a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_graphic_equalizer_example_q31_8c-example.html @@ -0,0 +1,448 @@ + + + + + +arm_graphic_equalizer_example_q31.c +CMSIS-DSP: arm_graphic_equalizer_example_q31.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_graphic_equalizer_example_q31.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_graphic_equalizer_example_q31.c
    +
    *
    +
    * Description: Example showing an audio graphic equalizer constructed
    +
    * out of Biquad filters.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include "arm_math.h"
    +
    #include "math_helper.h"
    +
    +
    /* Length of the overall data in the test */
    +
    #define TESTLENGTH 320
    +
    +
    /* Block size for the underlying processing */
    +
    #define BLOCKSIZE 32
    +
    +
    /* Total number of blocks to run */
    +
    #define NUMBLOCKS (TESTLENGTH/BLOCKSIZE)
    +
    +
    /* Number of 2nd order Biquad stages per filter */
    +
    #define NUMSTAGES 2
    +
    +
    #define SNR_THRESHOLD_F32 98
    +
    +
    /* -------------------------------------------------------------------
    +
    * External Declarations for Input and Output buffers
    +
    * ------------------------------------------------------------------- */
    +
    + + +
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Q31 state buffers for Band1, Band2, Band3, Band4, Band5
    +
    ** ------------------------------------------------------------------- */
    +
    +
    static q63_t biquadStateBand1Q31[4 * 2];
    +
    static q63_t biquadStateBand2Q31[4 * 2];
    +
    static q31_t biquadStateBand3Q31[4 * 2];
    +
    static q31_t biquadStateBand4Q31[4 * 2];
    +
    static q31_t biquadStateBand5Q31[4 * 2];
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Q31 input and output buffers
    +
    ** ------------------------------------------------------------------- */
    +
    + + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Entire coefficient table. There are 10 coefficients per 4th order Biquad
    +
    ** cascade filter. The first 10 coefficients correspond to the -9 dB gain
    +
    ** setting of band 1; the next 10 coefficient correspond to the -8 dB gain
    +
    ** setting of band 1; and so on. There are 10*19=190 coefficients in total
    +
    ** for band 1 (gains = -9, -8, -7, ..., 9). After this come the 190 coefficients
    +
    ** for band 2.
    +
    **
    +
    ** The coefficients are in Q29 format and require a postShift of 2.
    +
    ** ------------------------------------------------------------------- */
    +
    +
    const q31_t coeffTable[950] = {
    +
    +
    /* Band 1, -9 dB gain */
    +
    535576962, -1071153923, 535576962, 1073741824, -536870912, 535576962, -1063501998, 527979313, 1060865294, -524146981,
    +
    /* Band 1, -8 dB gain */
    +
    535723226, -1071446451, 535723226, 1073741824, -536870912, 535723226, -1063568947, 527903217, 1061230578, -524503778,
    +
    535868593, -1071737186, 535868593, 1073741824, -536870912, 535868593, -1063627467, 527819780, 1061585502, -524850686,
    +
    536013181, -1072026363, 536013181, 1073741824, -536870912, 536013181, -1063677598, 527728935, 1061930361, -525187972,
    +
    536157109, -1072314217, 536157109, 1073741824, -536870912, 536157109, -1063719372, 527630607, 1062265438, -525515897,
    +
    536300492, -1072600983, 536300492, 1073741824, -536870912, 536300492, -1063752815, 527524720, 1062591011, -525834716,
    +
    536443447, -1072886894, 536443447, 1073741824, -536870912, 536443447, -1063777945, 527411186, 1062907350, -526144676,
    +
    536586091, -1073172183, 536586091, 1073741824, -536870912, 536586091, -1063794775, 527289917, 1063214717, -526446017,
    +
    536728541, -1073457082, 536728541, 1073741824, -536870912, 536728541, -1063803308, 527160815, 1063513366, -526738975,
    +
    536870912, -1073741824, 536870912, 1073741824, -536870912, 536870912, -1063803543, 527023777, 1063803543, -527023777,
    +
    537013321, -1074026642, 537013321, 1073741824, -536870912, 537013321, -1063795470, 526878696, 1064085490, -527300648,
    +
    537155884, -1074311768, 537155884, 1073741824, -536870912, 537155884, -1063779073, 526725455, 1064359439, -527569803,
    +
    537298718, -1074597435, 537298718, 1073741824, -536870912, 537298718, -1063754328, 526563934, 1064625617, -527831454,
    +
    537441939, -1074883878, 537441939, 1073741824, -536870912, 537441939, -1063721205, 526394005, 1064884245, -528085806,
    +
    537585666, -1075171331, 537585666, 1073741824, -536870912, 537585666, -1063679666, 526215534, 1065135536, -528333059,
    +
    537730015, -1075460030, 537730015, 1073741824, -536870912, 537730015, -1063629666, 526028380, 1065379699, -528573409,
    +
    537875106, -1075750212, 537875106, 1073741824, -536870912, 537875106, -1063571152, 525832396, 1065616936, -528807045,
    +
    538021057, -1076042114, 538021057, 1073741824, -536870912, 538021057, -1063504065, 525627429, 1065847444, -529034151,
    +
    538167989, -1076335977, 538167989, 1073741824, -536870912, 538167989, -1063428338, 525413317, 1066071412, -529254907,
    +
    +
    /* Band 2, -9 dB gain */
    +
    531784976, -1055497692, 523873415, 1066213307, -529420241, 531784976, -1040357886, 509828014, 1028908252, -494627367,
    +
    /* Band 2, -8 dB gain */
    +
    532357636, -1056601982, 524400080, 1066115844, -529326645, 532357636, -1040623406, 509562600, 1030462237, -496062122,
    +
    532927392, -1057707729, 524931110, 1066024274, -529239070, 532927392, -1040848253, 509262081, 1031969246, -497457090,
    +
    533494678, -1058816094, 525467240, 1065939047, -529157961, 533494678, -1041032161, 508925950, 1033429976, -498812573,
    +
    534059929, -1059928204, 526009170, 1065860582, -529083734, 534059929, -1041174868, 508553717, 1034845124, -500128887,
    +
    534623580, -1061045148, 526557561, 1065789260, -529016764, 534623580, -1041276126, 508144920, 1036215393, -501406373,
    +
    535186068, -1062167969, 527113032, 1065725420, -528957385, 535186068, -1041335703, 507699125, 1037541500, -502645399,
    +
    535747827, -1063297666, 527676151, 1065669351, -528905879, 535747827, -1041353386, 507215934, 1038824183, -503846368,
    +
    536309295, -1064435183, 528247436, 1065621289, -528862476, 536309295, -1041328990, 506694984, 1040064203, -505009724,
    +
    536870912, -1065581413, 528827349, 1065581413, -528827349, 536870912, -1041262354, 506135953, 1041262354, -506135953,
    +
    537433117, -1066737194, 529416295, 1065549847, -528800610, 537433117, -1041153346, 505538564, 1042419457, -507225588,
    +
    537996352, -1067903307, 530014622, 1065526651, -528782316, 537996352, -1041001864, 504902578, 1043536370, -508279208,
    +
    538561061, -1069080480, 530622620, 1065511830, -528772462, 538561061, -1040807833, 504227800, 1044613981, -509297437,
    +
    539127690, -1070269387, 531240527, 1065505333, -528770987, 539127690, -1040571205, 503514074, 1045653211, -510280946,
    +
    539696690, -1071470656, 531868525, 1065507054, -528777778, 539696690, -1040291951, 502761277, 1046655011, -511230450,
    +
    540268512, -1072684867, 532506750, 1065516837, -528792672, 540268512, -1039970063, 501969320, 1047620358, -512146700,
    +
    540843613, -1073912567, 533155297, 1065534483, -528815459, 540843613, -1039605542, 501138139, 1048550251, -513030484,
    +
    541422451, -1075154268, 533814224, 1065559750, -528845892, 541422451, -1039198394, 500267687, 1049445708, -513882621,
    +
    542005489, -1076410460, 534483561, 1065592362, -528883686, 542005489, -1038748624, 499357932, 1050307760, -514703956,
    +
    518903861, -1001986830, 486725277, 1037235801, -502367695, 518903861, -945834422, 446371043, 902366163, -400700571,
    +
    520899989, -1005630916, 488289126, 1036926846, -502147311, 520899989, -946490935, 445581846, 907921945, -404936158,
    +
    522893209, -1009290002, 489869792, 1036650484, -501961419, 522893209, -947006359, 444685310, 913306106, -409075225,
    +
    524884763, -1012968199, 491470256, 1036407567, -501810737, 524884763, -947377809, 443679533, 918521018, -413116221,
    +
    526875910, -1016669649, 493093518, 1036198712, -501695739, 526875910, -947602324, 442562672, 923569247, -417057897,
    +
    528867927, -1020398503, 494742575, 1036024293, -501616651, 528867927, -947676875, 441332970, 928453558, -420899319,
    +
    530862111, -1024158905, 496420407, 1035884447, -501573457, 530862111, -947598385, 439988777, 933176909, -424639872,
    +
    532859778, -1027954970, 498129955, 1035779077, -501565907, 532859778, -947363742, 438528571, 937742446, -428279254,
    +
    534862260, -1031790763, 499874098, 1035707863, -501593525, 534862260, -946969823, 436950987, 942153486, -431817474,
    +
    536870912, -1035670279, 501655630, 1035670279, -501655630, 536870912, -946413508, 435254839, 946413508, -435254839,
    +
    538887107, -1039597419, 503477238, 1035665609, -501751354, 538887107, -945691703, 433439146, 950526127, -438591937,
    +
    540912240, -1043575967, 505341475, 1035692963, -501879659, 540912240, -944801359, 431503152, 954495080, -441829621,
    +
    542947726, -1047609569, 507250741, 1035751307, -502039364, 542947726, -943739490, 429446349, 958324201, -444968987,
    +
    544995000, -1051701717, 509207261, 1035839473, -502229165, 544995000, -942503190, 427268492, 962017400, -448011351,
    +
    547055523, -1055855728, 511213065, 1035956193, -502447657, 547055523, -941089647, 424969617, 965578640, -450958226,
    +
    549130774, -1060074734, 513269973, 1036100110, -502693359, 549130774, -939496155, 422550049, 969011913, -453811298,
    +
    551222259, -1064361672, 515379585, 1036269804, -502964731, 551222259, -937720119, 420010407, 972321228, -456572401,
    +
    553331507, -1068719280, 517543273, 1036463810, -503260192, 553331507, -935759057, 417351601, 975510582, -459243495,
    +
    555460072, -1073150100, 519762181, 1036680633, -503578144, 555460072, -933610600, 414574832, 978583948, -461826644,
    +
    494084017, -851422604, 404056273, 930151631, -423619864, 494084017, -673714108, 339502486, 561843007, -265801750,
    +
    498713542, -859177141, 406587077, 929211656, -423786402, 498713542, -673274906, 338185129, 573719128, -272222942,
    +
    503369016, -867012190, 409148384, 928362985, -424054784, 503369016, -672533059, 336693984, 585290277, -278599028,
    +
    508052536, -874935599, 411746438, 927604291, -424422151, 508052536, -671478538, 335026905, 596558312, -284920289,
    +
    512766286, -882955583, 414387826, 926933782, -424885216, 512766286, -670100998, 333182045, 607525792, -291177811,
    +
    517512534, -891080712, 417079474, 926349262, -425440318, 517512534, -668389789, 331157902, 618195914, -297363485,
    +
    522293635, -899319903, 419828635, 925848177, -426083491, 522293635, -666333963, 328953368, 628572440, -303470012,
    +
    527112032, -907682405, 422642886, 925427679, -426810526, 527112032, -663922286, 326567785, 638659631, -309490882,
    +
    531970251, -916177781, 425530105, 925084675, -427617023, 531970251, -661143261, 324000998, 648462180, -315420352,
    +
    536870912, -924815881, 428498454, 924815881, -428498454, 536870912, -657985147, 321253420, 657985147, -321253420,
    +
    541816719, -933606817, 431556352, 924617870, -429450209, 541816719, -654435997, 318326093, 667233900, -326985786,
    +
    546810467, -942560921, 434712438, 924487114, -430467639, 546810467, -650483688, 315220754, 676214053, -332613816,
    +
    551855042, -951688708, 437975532, 924420027, -431546101, 551855042, -646115970, 311939896, 684931422, -338134495,
    +
    556953421, -961000826, 441354588, 924413001, -432680993, 556953421, -641320513, 308486839, 693391970, -343545389,
    +
    562108672, -970508005, 444858642, 924462435, -433867780, 562108672, -636084967, 304865786, 701601770, -348844597,
    +
    567323959, -980220994, 448496743, 924564764, -435102022, 567323959, -630397020, 301081886, 709566963, -354030710,
    +
    572602539, -990150500, 452277894, 924716482, -436379394, 572602539, -624244471, 297141281, 717293726, -359102767,
    +
    577947763, -1000307125, 456210977, 924914158, -437695705, 577947763, -617615296, 293051155, 724788245, -364060214,
    +
    583363084, -1010701292, 460304674, 925154455, -439046908, 583363084, -610497723, 288819761, 732056685, -368902865,
    +
    387379495, -506912469, 196933274, 840112184, -347208270, 387379495, 506912469, 196933274, -840112184, -347208270,
    +
    401658082, -532275898, 207149427, 833765363, -343175316, 401658082, 532275898, 207149427, -833765363, -343175316,
    +
    416472483, -558722695, 217902617, 827270154, -339107319, 416472483, 558722695, 217902617, -827270154, -339107319,
    +
    431841949, -586290861, 229212798, 820624988, -335007540, 431841949, 586290861, 229212798, -820624988, -335007540,
    +
    447786335, -615019650, 241100489, 813828443, -330879528, 447786335, 615019650, 241100489, -813828443, -330879528,
    +
    464326111, -644949597, 253586805, 806879270, -326727141, 464326111, 644949597, 253586805, -806879270, -326727141,
    +
    481482377, -676122557, 266693475, 799776409, -322554559, 481482377, 676122557, 266693475, -799776409, -322554559,
    +
    499276882, -708581728, 280442865, 792519013, -318366296, 499276882, 708581728, 280442865, -792519013, -318366296,
    +
    517732032, -742371685, 294857996, 785106465, -314167221, 517732032, 742371685, 294857996, -785106465, -314167221,
    +
    536870912, -777538408, 309962566, 777538408, -309962566, 536870912, 777538408, 309962566, -777538408, -309962566,
    +
    556717294, -814129313, 325780968, 769814766, -305757943, 556717294, 814129313, 325780968, -769814766, -305757943,
    +
    577295658, -852193284, 342338310, 761935777, -301559360, 577295658, 852193284, 342338310, -761935777, -301559360,
    +
    598631206, -891780698, 359660433, 753902014, -297373230, 598631206, 891780698, 359660433, -753902014, -297373230,
    +
    620749877, -932943463, 377773927, 745714425, -293206383, 620749877, 932943463, 377773927, -745714425, -293206383,
    +
    643678365, -975735041, 396706151, 737374355, -289066077, 643678365, 975735041, 396706151, -737374355, -289066077,
    +
    667444134, -1020210487, 416485252, 728883588, -284960004, 667444134, 1020210487, 416485252, -728883588, -284960004,
    +
    692075438, -1066426476, 437140179, 720244375, -280896294, 692075438, 1066426476, 437140179, -720244375, -280896294,
    +
    717601336, -1114441339, 458700704, 711459472, -276883515, 717601336, 1114441339, 458700704, -711459472, -276883515,
    +
    744051710, -1164315096, 481197437, 702532174, -272930673, 744051710, 1164315096, 481197437, -702532174, -272930673
    +
    +
    };
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Desired gains, in dB, per band
    +
    ** ------------------------------------------------------------------- */
    +
    +
    int gainDB[5] = {0, -3, 6, 4, -6};
    +
    + +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Graphic equalizer Example
    +
    * ------------------------------------------------------------------- */
    +
    +
    int32_t main(void)
    +
    {
    +
    float32_t *inputF32, *outputF32;
    + + + + + +
    int i;
    +
    int32_t status;
    +
    +
    inputF32 = &testInput_f32[0];
    +
    outputF32 = &testOutput[0];
    +
    +
    /* Initialize the state and coefficient buffers for all Biquad sections */
    +
    + +
    (q31_t *) &coeffTable[190*0 + 10*(gainDB[0] + 9)],
    + +
    + +
    (q31_t *) &coeffTable[190*1 + 10*(gainDB[1] + 9)],
    + +
    + +
    (q31_t *) &coeffTable[190*2 + 10*(gainDB[2] + 9)],
    + +
    + +
    (q31_t *) &coeffTable[190*3 + 10*(gainDB[3] + 9)],
    + +
    + +
    (q31_t *) &coeffTable[190*4 + 10*(gainDB[4] + 9)],
    + +
    +
    +
    /* Call the process functions and needs to change filter coefficients
    +
    for varying the gain of each band */
    +
    +
    for(i=0; i < NUMBLOCKS; i++)
    +
    {
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Convert block of input data from float to Q31
    +
    ** ------------------------------------------------------------------- */
    +
    +
    arm_float_to_q31(inputF32 + (i*BLOCKSIZE), inputQ31, BLOCKSIZE);
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Scale down by 1/8. This provides additional headroom so that the
    +
    ** graphic EQ can apply gain.
    +
    ** ------------------------------------------------------------------- */
    +
    + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the Q31 Biquad Cascade DF1 32x64 process function for band1, band2
    +
    ** ------------------------------------------------------------------- */
    +
    + + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Call the Q31 Biquad Cascade DF1 process function for band3, band4, band5
    +
    ** ------------------------------------------------------------------- */
    +
    + + + +
    +
    /* ----------------------------------------------------------------------
    +
    ** Convert Q31 result back to float
    +
    ** ------------------------------------------------------------------- */
    +
    +
    arm_q31_to_float(outputQ31, outputF32 + (i * BLOCKSIZE), BLOCKSIZE);
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Scale back up
    +
    ** ------------------------------------------------------------------- */
    +
    +
    arm_scale_f32(outputF32 + (i * BLOCKSIZE), 8.0f, outputF32 + (i * BLOCKSIZE), BLOCKSIZE);
    +
    };
    +
    + +
    + +
    {
    + +
    }
    +
    else
    +
    {
    +
    status = ARM_MATH_SUCCESS;
    +
    }
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Loop here if the signal does not match the reference output.
    +
    ** ------------------------------------------------------------------- */
    +
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_linear_interp_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_linear_interp_example_f32_8c-example.html new file mode 100644 index 0000000..3501864 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_linear_interp_example_f32_8c-example.html @@ -0,0 +1,287 @@ + + + + + +arm_linear_interp_example_f32.c +CMSIS-DSP: arm_linear_interp_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_linear_interp_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_linear_interp_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating usage of sin function
    +
    * and uses linear interpolation to get higher precision
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    +
    #include "arm_math.h"
    +
    #include "math_helper.h"
    +
    +
    #define SNR_THRESHOLD 90
    +
    #define TEST_LENGTH_SAMPLES 10
    +
    #define XSPACING (0.00005f)
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Test input data for F32 SIN function
    +
    * Generated by the MATLAB rand() function
    +
    * randn('state', 0)
    +
    * xi = (((1/4.18318581819710)* randn(blockSize, 1) * 2* pi));
    +
    * --------------------------------------------------------------------*/
    + +
    {
    +
    -0.649716504673081170, -2.501723745497831200,
    +
    0.188250329003310100, 0.432092748487532540,
    +
    -1.722010988459680800, 1.788766476323060600,
    +
    1.786136060975809500, -0.056525543169408797,
    +
    0.491596272728153760, 0.262309671126153390
    +
    };
    +
    +
    /*------------------------------------------------------------------------------
    +
    * Reference out of SIN F32 function for Block Size = 10
    +
    * Calculated from sin(testInputSin_f32)
    +
    *------------------------------------------------------------------------------*/
    + +
    {
    +
    -0.604960695383043530, -0.597090287967934840,
    +
    0.187140422442966500, 0.418772124875992690,
    +
    -0.988588831792106880, 0.976338412038794010,
    +
    0.976903856413481100, -0.056495446835214236,
    +
    0.472033731854734240, 0.259311907228582830
    +
    };
    +
    +
    /*------------------------------------------------------------------------------
    +
    * Method 1: Test out Buffer Calculated from Cubic Interpolation
    +
    *------------------------------------------------------------------------------*/
    + +
    +
    /*------------------------------------------------------------------------------
    +
    * Method 2: Test out buffer Calculated from Linear Interpolation
    +
    *------------------------------------------------------------------------------*/
    + +
    +
    /*------------------------------------------------------------------------------
    +
    * External table used for linear interpolation
    +
    *------------------------------------------------------------------------------*/
    +
    extern float arm_linear_interep_table[188495];
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Global Variables for caluclating SNR's for Method1 & Method 2
    +
    * ------------------------------------------------------------------- */
    + + +
    +
    /* ----------------------------------------------------------------------------
    +
    * Calculation of Sine values from Cubic Interpolation and Linear interpolation
    +
    * ---------------------------------------------------------------------------- */
    +
    int32_t main(void)
    +
    {
    +
    uint32_t i;
    + +
    +
    arm_linear_interp_instance_f32 S = {188495, -3.141592653589793238, XSPACING, &arm_linear_interep_table[0]};
    +
    +
    /*------------------------------------------------------------------------------
    +
    * Method 1: Test out Calculated from Cubic Interpolation
    +
    *------------------------------------------------------------------------------*/
    +
    for(i=0; i< TEST_LENGTH_SAMPLES; i++)
    +
    {
    + +
    }
    +
    +
    /*------------------------------------------------------------------------------
    +
    * Method 2: Test out Calculated from Cubic Interpolation and Linear interpolation
    +
    *------------------------------------------------------------------------------*/
    +
    +
    for(i=0; i< TEST_LENGTH_SAMPLES; i++)
    +
    {
    + +
    }
    +
    +
    /*------------------------------------------------------------------------------
    +
    * SNR calculation for method 1
    +
    *------------------------------------------------------------------------------*/
    + +
    +
    /*------------------------------------------------------------------------------
    +
    * SNR calculation for method 2
    +
    *------------------------------------------------------------------------------*/
    + +
    +
    /*------------------------------------------------------------------------------
    +
    * Initialise status depending on SNR calculations
    +
    *------------------------------------------------------------------------------*/
    +
    if( snr2 > snr1)
    +
    {
    +
    status = ARM_MATH_SUCCESS;
    +
    }
    +
    else
    +
    {
    + +
    }
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Loop here if the signals fail the PASS check.
    +
    ** This denotes a test failure
    +
    ** ------------------------------------------------------------------- */
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_matrix_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_matrix_example_f32_8c-example.html new file mode 100644 index 0000000..18b8b05 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_matrix_example_f32_8c-example.html @@ -0,0 +1,309 @@ + + + + + +arm_matrix_example_f32.c +CMSIS-DSP: arm_matrix_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_matrix_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_matrix_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating least square fit to data
    +
    * using matrix functions
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include "arm_math.h"
    +
    #include "math_helper.h"
    +
    +
    #define SNR_THRESHOLD 90
    +
    +
    /* --------------------------------------------------------------------------------
    +
    * Test input data(Cycles) taken from FIR Q15 module for differant cases of blockSize
    +
    * and tapSize
    +
    * --------------------------------------------------------------------------------- */
    +
    +
    const float32_t B_f32[4] =
    +
    {
    +
    782.0, 7577.0, 470.0, 4505.0
    +
    };
    +
    +
    /* --------------------------------------------------------------------------------
    +
    * Formula to fit is C1 + C2 * numTaps + C3 * blockSize + C4 * numTaps * blockSize
    +
    * -------------------------------------------------------------------------------- */
    +
    +
    const float32_t A_f32[16] =
    +
    {
    +
    /* Const, numTaps, blockSize, numTaps*blockSize */
    +
    1.0, 32.0, 4.0, 128.0,
    +
    1.0, 32.0, 64.0, 2048.0,
    +
    1.0, 16.0, 4.0, 64.0,
    +
    1.0, 16.0, 64.0, 1024.0,
    +
    };
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Temporary buffers for storing intermediate values
    +
    * ------------------------------------------------------------------- */
    +
    /* Transpose of A Buffer */
    + +
    /* (Transpose of A * A) Buffer */
    + +
    /* Inverse(Transpose of A * A) Buffer */
    + +
    /* Test Output Buffer */
    + +
    +
    /* ----------------------------------------------------------------------
    +
    * Reference ouput buffer C1, C2, C3 and C4 taken from MATLAB
    +
    * ------------------------------------------------------------------- */
    +
    const float32_t xRef_f32[4] = {73.0, 8.0, 21.25, 2.875};
    +
    + +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Max magnitude FFT Bin test
    +
    * ------------------------------------------------------------------- */
    +
    +
    int32_t main(void)
    +
    {
    +
    +
    arm_matrix_instance_f32 A; /* Matrix A Instance */
    +
    arm_matrix_instance_f32 AT; /* Matrix AT(A transpose) instance */
    +
    arm_matrix_instance_f32 ATMA; /* Matrix ATMA( AT multiply with A) instance */
    +
    arm_matrix_instance_f32 ATMAI; /* Matrix ATMAI(Inverse of ATMA) instance */
    +
    arm_matrix_instance_f32 B; /* Matrix B instance */
    +
    arm_matrix_instance_f32 X; /* Matrix X(Unknown Matrix) instance */
    +
    +
    uint32_t srcRows, srcColumns; /* Temporary variables */
    + +
    +
    /* Initialise A Matrix Instance with numRows, numCols and data array(A_f32) */
    +
    srcRows = 4;
    +
    srcColumns = 4;
    +
    arm_mat_init_f32(&A, srcRows, srcColumns, (float32_t *)A_f32);
    +
    +
    /* Initialise Matrix Instance AT with numRows, numCols and data array(AT_f32) */
    +
    srcRows = 4;
    +
    srcColumns = 4;
    +
    arm_mat_init_f32(&AT, srcRows, srcColumns, AT_f32);
    +
    +
    /* calculation of A transpose */
    +
    status = arm_mat_trans_f32(&A, &AT);
    +
    +
    +
    /* Initialise ATMA Matrix Instance with numRows, numCols and data array(ATMA_f32) */
    +
    srcRows = 4;
    +
    srcColumns = 4;
    +
    arm_mat_init_f32(&ATMA, srcRows, srcColumns, ATMA_f32);
    +
    +
    /* calculation of AT Multiply with A */
    +
    status = arm_mat_mult_f32(&AT, &A, &ATMA);
    +
    +
    /* Initialise ATMAI Matrix Instance with numRows, numCols and data array(ATMAI_f32) */
    +
    srcRows = 4;
    +
    srcColumns = 4;
    +
    arm_mat_init_f32(&ATMAI, srcRows, srcColumns, ATMAI_f32);
    +
    +
    /* calculation of Inverse((Transpose(A) * A) */
    +
    status = arm_mat_inverse_f32(&ATMA, &ATMAI);
    +
    +
    /* calculation of (Inverse((Transpose(A) * A)) * Transpose(A)) */
    +
    status = arm_mat_mult_f32(&ATMAI, &AT, &ATMA);
    +
    +
    /* Initialise B Matrix Instance with numRows, numCols and data array(B_f32) */
    +
    srcRows = 4;
    +
    srcColumns = 1;
    +
    arm_mat_init_f32(&B, srcRows, srcColumns, (float32_t *)B_f32);
    +
    +
    /* Initialise X Matrix Instance with numRows, numCols and data array(X_f32) */
    +
    srcRows = 4;
    +
    srcColumns = 1;
    +
    arm_mat_init_f32(&X, srcRows, srcColumns, X_f32);
    +
    +
    /* calculation ((Inverse((Transpose(A) * A)) * Transpose(A)) * B) */
    +
    status = arm_mat_mult_f32(&ATMA, &B, &X);
    +
    +
    /* Comparison of reference with test output */
    + +
    +
    /*------------------------------------------------------------------------------
    +
    * Initialise status depending on SNR calculations
    +
    *------------------------------------------------------------------------------*/
    + +
    {
    +
    status = ARM_MATH_SUCCESS;
    +
    }
    +
    else
    +
    {
    + +
    }
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Loop here if the signals fail the PASS check.
    +
    ** This denotes a test failure
    +
    ** ------------------------------------------------------------------- */
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_signal_converge_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_signal_converge_example_f32_8c-example.html new file mode 100644 index 0000000..6450350 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_signal_converge_example_f32_8c-example.html @@ -0,0 +1,319 @@ + + + + + +arm_signal_converge_example_f32.c +CMSIS-DSP: arm_signal_converge_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_signal_converge_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_signal_converge_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating convergence of an adaptive
    +
    * filter.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include "arm_math.h"
    +
    #include "math_helper.h"
    +
    +
    /* ----------------------------------------------------------------------
    +
    ** Global defines for the simulation
    +
    * ------------------------------------------------------------------- */
    +
    +
    #define TEST_LENGTH_SAMPLES 1536
    +
    #define NUMTAPS 32
    +
    #define BLOCKSIZE 32
    +
    #define DELTA_ERROR 0.000001f
    +
    #define DELTA_COEFF 0.0001f
    +
    #define MU 0.5f
    +
    +
    #define NUMFRAMES (TEST_LENGTH_SAMPLES / BLOCKSIZE)
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare FIR state buffers and structure
    +
    * ------------------------------------------------------------------- */
    +
    + + +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare LMSNorm state buffers and structure
    +
    * ------------------------------------------------------------------- */
    +
    + + + +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Function Declarations for Signal Convergence Example
    +
    * ------------------------------------------------------------------- */
    +
    + +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Internal functions
    +
    * ------------------------------------------------------------------- */
    + +
    uint32_t blockSize);
    +
    +
    void getinput(float32_t* input,
    +
    uint32_t fr_cnt,
    +
    uint32_t blockSize);
    +
    +
    /* ----------------------------------------------------------------------
    +
    * External Declarations for FIR F32 module Test
    +
    * ------------------------------------------------------------------- */
    + + +
    extern const float32_t FIRCoeff_f32[32];
    + +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare I/O buffers
    +
    * ------------------------------------------------------------------- */
    +
    + + + + +
    +
    /* ----------------------------------------------------------------------
    +
    * Signal converge test
    +
    * ------------------------------------------------------------------- */
    +
    +
    int32_t main(void)
    +
    {
    +
    uint32_t i;
    + +
    uint32_t index;
    +
    float32_t minValue;
    +
    +
    /* Initialize the LMSNorm data structure */
    + +
    +
    /* Initialize the FIR data structure */
    + +
    +
    /* ----------------------------------------------------------------------
    +
    * Loop over the frames of data and execute each of the processing
    +
    * functions in the system.
    +
    * ------------------------------------------------------------------- */
    +
    +
    for(i=0; i < NUMFRAMES; i++)
    +
    {
    +
    /* Read the input data - uniformly distributed random noise - into wire1 */
    +
    arm_copy_f32(testInput_f32 + (i * BLOCKSIZE), wire1, BLOCKSIZE);
    +
    +
    /* Execute the FIR processing function. Input wire1 and output wire2 */
    +
    arm_fir_f32(&LPF_instance, wire1, wire2, BLOCKSIZE);
    +
    +
    /* Execute the LMS Norm processing function*/
    +
    +
    arm_lms_norm_f32(&lmsNorm_instance, /* LMSNorm instance */
    +
    wire1, /* Input signal */
    +
    wire2, /* Reference Signal */
    +
    wire3, /* Converged Signal */
    +
    err_signal, /* Error Signal, this will become small as the signal converges */
    +
    BLOCKSIZE); /* BlockSize */
    +
    +
    /* apply overall gain */
    +
    arm_scale_f32(wire3, 5, wire3, BLOCKSIZE); /* in-place buffer */
    +
    }
    +
    +
    status = ARM_MATH_SUCCESS;
    +
    +
    /* -------------------------------------------------------------------------------
    +
    * Test whether the error signal has reached towards 0.
    +
    * ----------------------------------------------------------------------------- */
    +
    + +
    arm_min_f32(err_signal, BLOCKSIZE, &minValue, &index);
    +
    +
    if (minValue > DELTA_ERROR)
    +
    {
    + +
    }
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Test whether the filter coefficients have converged.
    +
    * ------------------------------------------------------------------- */
    +
    + +
    + +
    arm_min_f32(lmsNormCoeff_f32, NUMTAPS, &minValue, &index);
    +
    +
    if (minValue > DELTA_COEFF)
    +
    {
    + +
    }
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Loop here if the signals did not pass the convergence check.
    +
    * This denotes a test failure
    +
    * ------------------------------------------------------------------- */
    +
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_sin_cos_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_sin_cos_example_f32_8c-example.html new file mode 100644 index 0000000..b66f077 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_sin_cos_example_f32_8c-example.html @@ -0,0 +1,245 @@ + + + + + +arm_sin_cos_example_f32.c +CMSIS-DSP: arm_sin_cos_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_sin_cos_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 12. March 2014
    +
    * $Revision: V1.4.3
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_sin_cos_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating sin and cos calculation of input signal.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include <math.h>
    +
    #include "arm_math.h"
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Defines each of the tests performed
    +
    * ------------------------------------------------------------------- */
    +
    #define MAX_BLOCKSIZE 32
    +
    #define DELTA (0.0001f)
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Test input data for Floating point sin_cos example for 32-blockSize
    +
    * Generated by the MATLAB randn() function
    +
    * ------------------------------------------------------------------- */
    +
    + +
    {
    +
    -1.244916875853235400, -4.793533929171324800, 0.360705030233248850, 0.827929644170887320, -3.299532218312426900, 3.427441903227623800, 3.422401784294607700, -0.108308165334010680,
    +
    0.941943896490312180, 0.502609575000365850, -0.537345278736373500, 2.088817392965764500, -1.693168684143455700, 6.283185307179590700, -0.392545884746175080, 0.327893095115825040,
    +
    3.070147440456292300, 0.170611405884662230, -0.275275082396073010, -2.395492805446796300, 0.847311163536506600, -3.845517018083148800, 2.055818378415868300, 4.672594161978930800,
    +
    -1.990923030266425800, 2.469305197656249500, 3.609002606064021000, -4.586736582331667500, -4.147080139136136300, 1.643756718868359500, -1.150866392366494800, 1.985805026477433800
    +
    +
    +
    };
    +
    +
    const float32_t testRefOutput_f32 = 1.000000000;
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare Global variables
    +
    * ------------------------------------------------------------------- */
    +
    uint32_t blockSize = 32;
    + + + + + +
    +
    /* ----------------------------------------------------------------------
    +
    * Max magnitude FFT Bin test
    +
    * ------------------------------------------------------------------- */
    +
    + +
    +
    int32_t main(void)
    +
    {
    +
    float32_t diff;
    +
    uint32_t i;
    +
    +
    for(i=0; i< blockSize; i++)
    +
    {
    + + +
    + + +
    + +
    +
    /* absolute value of difference between ref and test */
    +
    diff = fabsf(testRefOutput_f32 - testOutput);
    +
    +
    /* Comparison of sin_cos value with reference */
    +
    if(diff > DELTA)
    +
    {
    + +
    }
    +
    + +
    {
    +
    while(1);
    +
    }
    +
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/arm_variance_example_f32_8c-example.html b/CMSIS/Documentation/DSP/html/arm_variance_example_f32_8c-example.html new file mode 100644 index 0000000..2fc4e61 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/arm_variance_example_f32_8c-example.html @@ -0,0 +1,279 @@ + + + + + +arm_variance_example_f32.c +CMSIS-DSP: arm_variance_example_f32.c + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_variance_example_f32.c
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Copyright (C) 2010-2012 ARM Limited. All rights reserved.
    +
    *
    +
    * $Date: 17. January 2013
    +
    * $Revision: V1.4.0
    +
    *
    +
    * Project: CMSIS DSP Library
    +
    * Title: arm_variance_example_f32.c
    +
    *
    +
    * Description: Example code demonstrating variance calculation of input sequence.
    +
    *
    +
    * Target Processor: Cortex-M4/Cortex-M3
    +
    *
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions
    +
    * are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in
    +
    * the documentation and/or other materials provided with the
    +
    * distribution.
    +
    * - Neither the name of ARM LIMITED nor the names of its contributors
    +
    * may be used to endorse or promote products derived from this
    +
    * software without specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    +
    * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    +
    * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
    +
    * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    +
    * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
    +
    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
    +
    * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    +
    * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    +
    * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    +
    * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
    +
    * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    * -------------------------------------------------------------------- */
    +
    +
    #include <math.h>
    +
    #include "arm_math.h"
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Defines each of the tests performed
    +
    * ------------------------------------------------------------------- */
    +
    #define MAX_BLOCKSIZE 32
    +
    #define DELTA (0.000001f)
    +
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare I/O buffers
    +
    * ------------------------------------------------------------------- */
    + + + +
    +
    /* ----------------------------------------------------------------------
    +
    * Test input data for Floating point Variance example for 32-blockSize
    +
    * Generated by the MATLAB randn() function
    +
    * ------------------------------------------------------------------- */
    +
    + +
    {
    +
    -0.432564811528221, -1.665584378238097, 0.125332306474831, 0.287676420358549,
    +
    -1.146471350681464, 1.190915465642999, 1.189164201652103, -0.037633276593318,
    +
    0.327292361408654, 0.174639142820925, -0.186708577681439, 0.725790548293303,
    +
    -0.588316543014189, 2.183185818197101, -0.136395883086596, 0.113931313520810,
    +
    1.066768211359189, 0.059281460523605, -0.095648405483669, -0.832349463650022,
    +
    0.294410816392640, -1.336181857937804, 0.714324551818952, 1.623562064446271,
    +
    -0.691775701702287, 0.857996672828263, 1.254001421602532, -1.593729576447477,
    +
    -1.440964431901020, 0.571147623658178, -0.399885577715363, 0.689997375464345
    +
    +
    };
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Declare Global variables
    +
    * ------------------------------------------------------------------- */
    +
    uint32_t blockSize = 32;
    +
    float32_t refVarianceOut = 0.903941793931839;
    +
    +
    /* ----------------------------------------------------------------------
    +
    * Variance calculation test
    +
    * ------------------------------------------------------------------- */
    +
    +
    int32_t main(void)
    +
    {
    + +
    float32_t mean, oneByBlockSize;
    +
    float32_t variance;
    +
    float32_t diff;
    +
    +
    status = ARM_MATH_SUCCESS;
    +
    +
    /* Calculation of mean value of input */
    +
    +
    /* x' = 1/blockSize * (x(0)* 1 + x(1) * 1 + ... + x(n-1) * 1) */
    +
    +
    /* Fill wire1 buffer with 1.0 value */
    + +
    +
    /* Calculate the dot product of wire1 and wire2 */
    +
    /* (x(0)* 1 + x(1) * 1 + ...+ x(n-1) * 1) */
    + +
    +
    /* Calculation of 1/blockSize */
    +
    oneByBlockSize = 1.0 / (blockSize);
    +
    +
    /* 1/blockSize * (x(0)* 1 + x(1) * 1 + ... + x(n-1) * 1) */
    +
    arm_mult_f32(&mean, &oneByBlockSize, &mean, 1);
    +
    +
    +
    /* Calculation of variance value of input */
    +
    +
    /* (1/blockSize) * (x(0) - x') * (x(0) - x') + (x(1) - x') * (x(1) - x') + ... + (x(n-1) - x') * (x(n-1) - x') */
    +
    +
    /* Fill wire2 with mean value x' */
    + +
    +
    /* wire3 contains (x-x') */
    + +
    +
    /* wire2 contains (x-x') */
    + +
    +
    /* (x(0) - x') * (x(0) - x') + (x(1) - x') * (x(1) - x') + ... + (x(n-1) - x') * (x(n-1) - x') */
    + +
    +
    /* Calculation of 1/blockSize */
    +
    oneByBlockSize = 1.0 / (blockSize - 1);
    +
    +
    /* Calculation of variance */
    +
    arm_mult_f32(&variance, &oneByBlockSize, &variance, 1);
    +
    +
    /* absolute value of difference between ref and test */
    +
    diff = fabsf(refVarianceOut - variance);
    +
    +
    /* Comparison of variance value with reference */
    +
    if(diff > DELTA)
    +
    {
    + +
    }
    +
    +
    if( status != ARM_MATH_SUCCESS)
    +
    {
    +
    while(1);
    +
    }
    +
    +
    while(1); /* main function does not return */
    +
    }
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/bc_s.png b/CMSIS/Documentation/DSP/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/CMSIS/Documentation/DSP/html/bc_s.png differ diff --git a/CMSIS/Documentation/DSP/html/bdwn.png b/CMSIS/Documentation/DSP/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/bdwn.png differ diff --git a/CMSIS/Documentation/DSP/html/clarke.gif b/CMSIS/Documentation/DSP/html/clarke.gif new file mode 100644 index 0000000..5c75d09 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/clarke.gif differ diff --git a/CMSIS/Documentation/DSP/html/clarkeFormula.gif b/CMSIS/Documentation/DSP/html/clarkeFormula.gif new file mode 100644 index 0000000..f2a1c3e Binary files /dev/null and b/CMSIS/Documentation/DSP/html/clarkeFormula.gif differ diff --git a/CMSIS/Documentation/DSP/html/clarkeInvFormula.gif b/CMSIS/Documentation/DSP/html/clarkeInvFormula.gif new file mode 100644 index 0000000..60522f7 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/clarkeInvFormula.gif differ diff --git a/CMSIS/Documentation/DSP/html/classes.html b/CMSIS/Documentation/DSP/html/classes.html new file mode 100644 index 0000000..107aaa7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/classes.html @@ -0,0 +1,165 @@ + + + + + +Data Structure Index +CMSIS-DSP: Data Structure Index + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Data Structure Index
    +
    +
    +
    B | C | D | F | I | L | M | P | R
    + + + + + + + + + + + + + + + + + + + +
      B  
    +
    arm_cfft_instance_q15   arm_fir_decimate_instance_q15   
      I  
    +
    arm_matrix_instance_f64   
    arm_cfft_instance_q31   arm_fir_decimate_instance_q31   arm_matrix_instance_q15   
    arm_bilinear_interp_instance_f32   arm_cfft_radix2_instance_f32   arm_fir_instance_f32   arm_iir_lattice_instance_f32   arm_matrix_instance_q31   
    arm_bilinear_interp_instance_q15   arm_cfft_radix2_instance_q15   arm_fir_instance_q15   arm_iir_lattice_instance_q15   
      P  
    +
    arm_bilinear_interp_instance_q31   arm_cfft_radix2_instance_q31   arm_fir_instance_q31   arm_iir_lattice_instance_q31   
    arm_bilinear_interp_instance_q7   arm_cfft_radix4_instance_f32   arm_fir_instance_q7   
      L  
    +
    arm_pid_instance_f32   
    arm_biquad_cas_df1_32x64_ins_q31   arm_cfft_radix4_instance_q15   arm_fir_interpolate_instance_f32   arm_pid_instance_q15   
    arm_biquad_cascade_df2T_instance_f32   arm_cfft_radix4_instance_q31   arm_fir_interpolate_instance_q15   arm_linear_interp_instance_f32   arm_pid_instance_q31   
    arm_biquad_cascade_df2T_instance_f64   
      D  
    +
    arm_fir_interpolate_instance_q31   arm_lms_instance_f32   
      R  
    +
    arm_biquad_cascade_stereo_df2T_instance_f32   arm_fir_lattice_instance_f32   arm_lms_instance_q15   
    arm_biquad_casd_df1_inst_f32   arm_dct4_instance_f32   arm_fir_lattice_instance_q15   arm_lms_instance_q31   arm_rfft_fast_instance_f32   
    arm_biquad_casd_df1_inst_q15   arm_dct4_instance_q15   arm_fir_lattice_instance_q31   arm_lms_norm_instance_f32   arm_rfft_instance_f32   
    arm_biquad_casd_df1_inst_q31   arm_dct4_instance_q31   arm_fir_sparse_instance_f32   arm_lms_norm_instance_q15   arm_rfft_instance_q15   
      C  
    +
      F  
    +
    arm_fir_sparse_instance_q15   arm_lms_norm_instance_q31   arm_rfft_instance_q31   
    arm_fir_sparse_instance_q31   
      M  
    +
    arm_cfft_instance_f32   arm_fir_decimate_instance_f32   arm_fir_sparse_instance_q7   
    arm_matrix_instance_f32   
    +
    B | C | D | F | I | L | M | P | R
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/closed.png b/CMSIS/Documentation/DSP/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/closed.png differ diff --git a/CMSIS/Documentation/DSP/html/cmsis.css b/CMSIS/Documentation/DSP/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/DSP/html/dct4FormatsQ15Table.gif b/CMSIS/Documentation/DSP/html/dct4FormatsQ15Table.gif new file mode 100644 index 0000000..050999c Binary files /dev/null and b/CMSIS/Documentation/DSP/html/dct4FormatsQ15Table.gif differ diff --git a/CMSIS/Documentation/DSP/html/dct4FormatsQ31Table.gif b/CMSIS/Documentation/DSP/html/dct4FormatsQ31Table.gif new file mode 100644 index 0000000..7491187 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/dct4FormatsQ31Table.gif differ diff --git a/CMSIS/Documentation/DSP/html/dct4NormalizingF32Table.gif b/CMSIS/Documentation/DSP/html/dct4NormalizingF32Table.gif new file mode 100644 index 0000000..f3536b8 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/dct4NormalizingF32Table.gif differ diff --git a/CMSIS/Documentation/DSP/html/dct4NormalizingQ15Table.gif b/CMSIS/Documentation/DSP/html/dct4NormalizingQ15Table.gif new file mode 100644 index 0000000..625a418 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/dct4NormalizingQ15Table.gif differ diff --git a/CMSIS/Documentation/DSP/html/dct4NormalizingQ31Table.gif b/CMSIS/Documentation/DSP/html/dct4NormalizingQ31Table.gif new file mode 100644 index 0000000..22d1f65 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/dct4NormalizingQ31Table.gif differ diff --git a/CMSIS/Documentation/DSP/html/deprecated.html b/CMSIS/Documentation/DSP/html/deprecated.html new file mode 100644 index 0000000..4b37ad6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/deprecated.html @@ -0,0 +1,158 @@ + + + + + +Deprecated List +CMSIS-DSP: Deprecated List + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Deprecated List
    +
    +
    +
    +
    Global arm_cfft_radix2_f32 (const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc)
    +
    Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
    +
    Global arm_cfft_radix2_init_f32 (arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
    +
    Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
    +
    Global arm_cfft_radix2_init_q15 (arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
    +
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Global arm_cfft_radix2_init_q31 (arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
    +
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Global arm_cfft_radix2_q15 (const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc)
    +
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Global arm_cfft_radix2_q31 (const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc)
    +
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Global arm_cfft_radix4_f32 (const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc)
    +
    Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
    +
    Global arm_cfft_radix4_init_f32 (arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
    +
    Do not use this function. It has been superceded by arm_cfft_f32 and will be removed in the future.
    +
    Global arm_cfft_radix4_init_q15 (arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
    +
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Global arm_cfft_radix4_init_q31 (arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
    +
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Global arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc)
    +
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Global arm_cfft_radix4_q31 (const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc)
    +
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Global arm_rfft_f32 (const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst)
    +
    Do not use this function. It has been superceded by arm_rfft_fast_f32 and will be removed in the future.
    +
    Global arm_rfft_init_f32 (arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
    +
    Do not use this function. It has been superceded by arm_rfft_fast_init_f32 and will be removed in the future.
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_05485b5eab41976e219ba5522ae8a40f.html b/CMSIS/Documentation/DSP/html/dir_05485b5eab41976e219ba5522ae8a40f.html new file mode 100644 index 0000000..53b4dc8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_05485b5eab41976e219ba5522ae8a40f.html @@ -0,0 +1,140 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ARM Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  RTE
     
    + + + +

    +Files

    file  arm_sin_cos_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_09e8ef8785a41675b984fd022d87f1bc.html b/CMSIS/Documentation/DSP/html/dir_09e8ef8785a41675b984fd022d87f1bc.html new file mode 100644 index 0000000..14fd437 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_09e8ef8785a41675b984fd022d87f1bc.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_0a655a63e9fde46c9762ddfc77ca04bf.html b/CMSIS/Documentation/DSP/html/dir_0a655a63e9fde46c9762ddfc77ca04bf.html new file mode 100644 index 0000000..5ea8e5a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_0a655a63e9fde46c9762ddfc77ca04bf.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_0a68311637137c2c11b8e5c250252a09.html b/CMSIS/Documentation/DSP/html/dir_0a68311637137c2c11b8e5c250252a09.html new file mode 100644 index 0000000..40e33d9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_0a68311637137c2c11b8e5c250252a09.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_0bd53153155fe3870c529e4f415d4a7e.html b/CMSIS/Documentation/DSP/html/dir_0bd53153155fe3870c529e4f415d4a7e.html new file mode 100644 index 0000000..e5dbf06 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_0bd53153155fe3870c529e4f415d4a7e.html @@ -0,0 +1,137 @@ + + + + + +arm_convolution_example Directory Reference +CMSIS-DSP: arm_convolution_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_convolution_example Directory Reference
    +
    +
    + + + + + + +

    +Directories

    directory  ARM
     
    directory  GCC
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_12597927a5d871eba77af159658f8e9f.html b/CMSIS/Documentation/DSP/html/dir_12597927a5d871eba77af159658f8e9f.html new file mode 100644 index 0000000..34f3336 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_12597927a5d871eba77af159658f8e9f.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_180f1cc07eaa223183e2db63ad84fc96.html b/CMSIS/Documentation/DSP/html/dir_180f1cc07eaa223183e2db63ad84fc96.html new file mode 100644 index 0000000..7abc8bc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_180f1cc07eaa223183e2db63ad84fc96.html @@ -0,0 +1,139 @@ + + + + + +Startup Directory Reference +CMSIS-DSP: Startup Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_1a6938f21b9d3ee9631dba1cb5e9a79b.html b/CMSIS/Documentation/DSP/html/dir_1a6938f21b9d3ee9631dba1cb5e9a79b.html new file mode 100644 index 0000000..f89c818 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_1a6938f21b9d3ee9631dba1cb5e9a79b.html @@ -0,0 +1,203 @@ + + + + + +BasicMathFunctions Directory Reference +CMSIS-DSP: BasicMathFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    BasicMathFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_abs_f32.c
     
    file  arm_abs_q15.c
     
    file  arm_abs_q31.c
     
    file  arm_abs_q7.c
     
    file  arm_add_f32.c
     
    file  arm_add_q15.c
     
    file  arm_add_q31.c
     
    file  arm_add_q7.c
     
    file  arm_dot_prod_f32.c
     
    file  arm_dot_prod_q15.c
     
    file  arm_dot_prod_q31.c
     
    file  arm_dot_prod_q7.c
     
    file  arm_mult_f32.c
     
    file  arm_mult_q15.c
     
    file  arm_mult_q31.c
     
    file  arm_mult_q7.c
     
    file  arm_negate_f32.c
     
    file  arm_negate_q15.c
     
    file  arm_negate_q31.c
     
    file  arm_negate_q7.c
     
    file  arm_offset_f32.c
     
    file  arm_offset_q15.c
     
    file  arm_offset_q31.c
     
    file  arm_offset_q7.c
     
    file  arm_scale_f32.c
     
    file  arm_scale_q15.c
     
    file  arm_scale_q31.c
     
    file  arm_scale_q7.c
     
    file  arm_shift_q15.c
     
    file  arm_shift_q31.c
     
    file  arm_shift_q7.c
     
    file  arm_sub_f32.c
     
    file  arm_sub_q15.c
     
    file  arm_sub_q31.c
     
    file  arm_sub_q7.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_1bf7dc2439436c9055bff1493a609d16.html b/CMSIS/Documentation/DSP/html/dir_1bf7dc2439436c9055bff1493a609d16.html new file mode 100644 index 0000000..cd3516c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_1bf7dc2439436c9055bff1493a609d16.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_1ca531cbfb5f1e8e78bee380ead506db.html b/CMSIS/Documentation/DSP/html/dir_1ca531cbfb5f1e8e78bee380ead506db.html new file mode 100644 index 0000000..d295988 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_1ca531cbfb5f1e8e78bee380ead506db.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_2089eff899a94c0329c5038f55baabab.html b/CMSIS/Documentation/DSP/html/dir_2089eff899a94c0329c5038f55baabab.html new file mode 100644 index 0000000..7d07849 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_2089eff899a94c0329c5038f55baabab.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_2483b5ef8110e34ae07dadd52b31fd81.html b/CMSIS/Documentation/DSP/html/dir_2483b5ef8110e34ae07dadd52b31fd81.html new file mode 100644 index 0000000..bfef195 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_2483b5ef8110e34ae07dadd52b31fd81.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_2540fe3bf997579a35b40d050fd58db0.html b/CMSIS/Documentation/DSP/html/dir_2540fe3bf997579a35b40d050fd58db0.html new file mode 100644 index 0000000..fa74f54 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_2540fe3bf997579a35b40d050fd58db0.html @@ -0,0 +1,149 @@ + + + + + +ControllerFunctions Directory Reference +CMSIS-DSP: ControllerFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ControllerFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_pid_init_f32.c
     
    file  arm_pid_init_q15.c
     
    file  arm_pid_init_q31.c
     
    file  arm_pid_reset_f32.c
     
    file  arm_pid_reset_q15.c
     
    file  arm_pid_reset_q31.c
     
    file  arm_sin_cos_f32.c
     
    file  arm_sin_cos_q31.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_276d6fac6319afec12f7159fe8d37de0.html b/CMSIS/Documentation/DSP/html/dir_276d6fac6319afec12f7159fe8d37de0.html new file mode 100644 index 0000000..f31bf80 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_276d6fac6319afec12f7159fe8d37de0.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_28efb39eb514d721c34bfd1d219ba1df.html b/CMSIS/Documentation/DSP/html/dir_28efb39eb514d721c34bfd1d219ba1df.html new file mode 100644 index 0000000..6ab0450 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_28efb39eb514d721c34bfd1d219ba1df.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_2bac5604b95d5833788d2de8744eebd8.html b/CMSIS/Documentation/DSP/html/dir_2bac5604b95d5833788d2de8744eebd8.html new file mode 100644 index 0000000..6bf6a3b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_2bac5604b95d5833788d2de8744eebd8.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_2c6bf793c39a551cb3665287541dc62d.html b/CMSIS/Documentation/DSP/html/dir_2c6bf793c39a551cb3665287541dc62d.html new file mode 100644 index 0000000..ed48d3f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_2c6bf793c39a551cb3665287541dc62d.html @@ -0,0 +1,331 @@ + + + + + +FilteringFunctions Directory Reference +CMSIS-DSP: FilteringFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    FilteringFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_biquad_cascade_df1_32x64_init_q31.c
     
    file  arm_biquad_cascade_df1_32x64_q31.c
     
    file  arm_biquad_cascade_df1_f32.c
     
    file  arm_biquad_cascade_df1_fast_q15.c
     
    file  arm_biquad_cascade_df1_fast_q31.c
     
    file  arm_biquad_cascade_df1_init_f32.c
     
    file  arm_biquad_cascade_df1_init_q15.c
     
    file  arm_biquad_cascade_df1_init_q31.c
     
    file  arm_biquad_cascade_df1_q15.c
     
    file  arm_biquad_cascade_df1_q31.c
     
    file  arm_biquad_cascade_df2T_f32.c
     
    file  arm_biquad_cascade_df2T_f64.c
     
    file  arm_biquad_cascade_df2T_init_f32.c
     
    file  arm_biquad_cascade_df2T_init_f64.c
     
    file  arm_biquad_cascade_stereo_df2T_f32.c
     
    file  arm_biquad_cascade_stereo_df2T_init_f32.c
     
    file  arm_conv_f32.c
     
    file  arm_conv_fast_opt_q15.c
     
    file  arm_conv_fast_q15.c
     
    file  arm_conv_fast_q31.c
     
    file  arm_conv_opt_q15.c
     
    file  arm_conv_opt_q7.c
     
    file  arm_conv_partial_f32.c
     
    file  arm_conv_partial_fast_opt_q15.c
     
    file  arm_conv_partial_fast_q15.c
     
    file  arm_conv_partial_fast_q31.c
     
    file  arm_conv_partial_opt_q15.c
     
    file  arm_conv_partial_opt_q7.c
     
    file  arm_conv_partial_q15.c
     
    file  arm_conv_partial_q31.c
     
    file  arm_conv_partial_q7.c
     
    file  arm_conv_q15.c
     
    file  arm_conv_q31.c
     
    file  arm_conv_q7.c
     
    file  arm_correlate_f32.c
     
    file  arm_correlate_fast_opt_q15.c
     
    file  arm_correlate_fast_q15.c
     
    file  arm_correlate_fast_q31.c
     
    file  arm_correlate_opt_q15.c
     
    file  arm_correlate_opt_q7.c
     
    file  arm_correlate_q15.c
     
    file  arm_correlate_q31.c
     
    file  arm_correlate_q7.c
     
    file  arm_fir_decimate_f32.c
     
    file  arm_fir_decimate_fast_q15.c
     
    file  arm_fir_decimate_fast_q31.c
     
    file  arm_fir_decimate_init_f32.c
     
    file  arm_fir_decimate_init_q15.c
     
    file  arm_fir_decimate_init_q31.c
     
    file  arm_fir_decimate_q15.c
     
    file  arm_fir_decimate_q31.c
     
    file  arm_fir_f32.c
     
    file  arm_fir_fast_q15.c
     
    file  arm_fir_fast_q31.c
     
    file  arm_fir_init_f32.c
     
    file  arm_fir_init_q15.c
     
    file  arm_fir_init_q31.c
     
    file  arm_fir_init_q7.c
     
    file  arm_fir_interpolate_f32.c
     
    file  arm_fir_interpolate_init_f32.c
     
    file  arm_fir_interpolate_init_q15.c
     
    file  arm_fir_interpolate_init_q31.c
     
    file  arm_fir_interpolate_q15.c
     
    file  arm_fir_interpolate_q31.c
     
    file  arm_fir_lattice_f32.c
     
    file  arm_fir_lattice_init_f32.c
     
    file  arm_fir_lattice_init_q15.c
     
    file  arm_fir_lattice_init_q31.c
     
    file  arm_fir_lattice_q15.c
     
    file  arm_fir_lattice_q31.c
     
    file  arm_fir_q15.c
     
    file  arm_fir_q31.c
     
    file  arm_fir_q7.c
     
    file  arm_fir_sparse_f32.c
     
    file  arm_fir_sparse_init_f32.c
     
    file  arm_fir_sparse_init_q15.c
     
    file  arm_fir_sparse_init_q31.c
     
    file  arm_fir_sparse_init_q7.c
     
    file  arm_fir_sparse_q15.c
     
    file  arm_fir_sparse_q31.c
     
    file  arm_fir_sparse_q7.c
     
    file  arm_iir_lattice_f32.c
     
    file  arm_iir_lattice_init_f32.c
     
    file  arm_iir_lattice_init_q15.c
     
    file  arm_iir_lattice_init_q31.c
     
    file  arm_iir_lattice_q15.c
     
    file  arm_iir_lattice_q31.c
     
    file  arm_lms_f32.c
     
    file  arm_lms_init_f32.c
     
    file  arm_lms_init_q15.c
     
    file  arm_lms_init_q31.c
     
    file  arm_lms_norm_f32.c
     
    file  arm_lms_norm_init_f32.c
     
    file  arm_lms_norm_init_q15.c
     
    file  arm_lms_norm_init_q31.c
     
    file  arm_lms_norm_q15.c
     
    file  arm_lms_norm_q31.c
     
    file  arm_lms_q15.c
     
    file  arm_lms_q31.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_3196f85a8347e7c6cf5419f06f7f0a5c.html b/CMSIS/Documentation/DSP/html/dir_3196f85a8347e7c6cf5419f06f7f0a5c.html new file mode 100644 index 0000000..0b72d0c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_3196f85a8347e7c6cf5419f06f7f0a5c.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_33ac94cce96a0d93808878c5f6f288bf.html b/CMSIS/Documentation/DSP/html/dir_33ac94cce96a0d93808878c5f6f288bf.html new file mode 100644 index 0000000..228a646 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_33ac94cce96a0d93808878c5f6f288bf.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_34727d50220656242b857ddf64f52361.html b/CMSIS/Documentation/DSP/html/dir_34727d50220656242b857ddf64f52361.html new file mode 100644 index 0000000..8b3de95 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_34727d50220656242b857ddf64f52361.html @@ -0,0 +1,146 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_38b9476ff75f3e6ddc67484ee999428d.html b/CMSIS/Documentation/DSP/html/dir_38b9476ff75f3e6ddc67484ee999428d.html new file mode 100644 index 0000000..6c80502 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_38b9476ff75f3e6ddc67484ee999428d.html @@ -0,0 +1,142 @@ + + + + + +GCC Directory Reference +CMSIS-DSP: GCC Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    GCC Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Startup
     
    + + + + + +

    +Files

    file  GCC/arm_fft_bin_data.c
     
    file  GCC/arm_fft_bin_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_38d31328c42027cc5452e7496de7b88f.html b/CMSIS/Documentation/DSP/html/dir_38d31328c42027cc5452e7496de7b88f.html new file mode 100644 index 0000000..ac4a03a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_38d31328c42027cc5452e7496de7b88f.html @@ -0,0 +1,137 @@ + + + + + +arm_fft_bin_example Directory Reference +CMSIS-DSP: arm_fft_bin_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_fft_bin_example Directory Reference
    +
    +
    + + + + + + +

    +Directories

    directory  ARM
     
    directory  GCC
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_3963cad04f3c79af62d382ba0bd29283.html b/CMSIS/Documentation/DSP/html/dir_3963cad04f3c79af62d382ba0bd29283.html new file mode 100644 index 0000000..4cbf7d3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_3963cad04f3c79af62d382ba0bd29283.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_fft_bin_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_3d1fa2b43a5e654514cd51dbe031762c.html b/CMSIS/Documentation/DSP/html/dir_3d1fa2b43a5e654514cd51dbe031762c.html new file mode 100644 index 0000000..e1f29b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_3d1fa2b43a5e654514cd51dbe031762c.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_3d9b1fb18a6a04e0681aa143a1b11e83.html b/CMSIS/Documentation/DSP/html/dir_3d9b1fb18a6a04e0681aa143a1b11e83.html new file mode 100644 index 0000000..8de9320 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_3d9b1fb18a6a04e0681aa143a1b11e83.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_3f2a337fe451aa47758dbb077bdba7b5.html b/CMSIS/Documentation/DSP/html/dir_3f2a337fe451aa47758dbb077bdba7b5.html new file mode 100644 index 0000000..d37a1b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_3f2a337fe451aa47758dbb077bdba7b5.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_fir_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_4104b0ce39688295b07e7d8423237024.html b/CMSIS/Documentation/DSP/html/dir_4104b0ce39688295b07e7d8423237024.html new file mode 100644 index 0000000..dd55306 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_4104b0ce39688295b07e7d8423237024.html @@ -0,0 +1,139 @@ + + + + + +Startup Directory Reference +CMSIS-DSP: Startup Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_424029d631ed0326d927fecdf0eb5714.html b/CMSIS/Documentation/DSP/html/dir_424029d631ed0326d927fecdf0eb5714.html new file mode 100644 index 0000000..43c69ad --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_424029d631ed0326d927fecdf0eb5714.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_446217fa41e7971f13d66a5ff592433f.html b/CMSIS/Documentation/DSP/html/dir_446217fa41e7971f13d66a5ff592433f.html new file mode 100644 index 0000000..c226167 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_446217fa41e7971f13d66a5ff592433f.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_45f8bb2d42ec552d5107a3dfe6860678.html b/CMSIS/Documentation/DSP/html/dir_45f8bb2d42ec552d5107a3dfe6860678.html new file mode 100644 index 0000000..bd5d0ee --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_45f8bb2d42ec552d5107a3dfe6860678.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_4646a6ed5faa53e0aa863c10960e3ab2.html b/CMSIS/Documentation/DSP/html/dir_4646a6ed5faa53e0aa863c10960e3ab2.html new file mode 100644 index 0000000..8ca1769 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_4646a6ed5faa53e0aa863c10960e3ab2.html @@ -0,0 +1,140 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ARM Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  RTE
     
    + + + +

    +Files

    file  arm_variance_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_4714731cfbb1de4dc44e33e6cd6e4a5c.html b/CMSIS/Documentation/DSP/html/dir_4714731cfbb1de4dc44e33e6cd6e4a5c.html new file mode 100644 index 0000000..8ce0e75 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_4714731cfbb1de4dc44e33e6cd6e4a5c.html @@ -0,0 +1,149 @@ + + + + + +FastMathFunctions Directory Reference +CMSIS-DSP: FastMathFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    FastMathFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_cos_f32.c
     
    file  arm_cos_q15.c
     
    file  arm_cos_q31.c
     
    file  arm_sin_f32.c
     
    file  arm_sin_q15.c
     
    file  arm_sin_q31.c
     
    file  arm_sqrt_q15.c
     
    file  arm_sqrt_q31.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_4c7fce71cdbef82378782cbb366558c3.html b/CMSIS/Documentation/DSP/html/dir_4c7fce71cdbef82378782cbb366558c3.html new file mode 100644 index 0000000..4801eb2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_4c7fce71cdbef82378782cbb366558c3.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_sin_cos_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_4e28292bc057704f3d2041cc99d8a5e9.html b/CMSIS/Documentation/DSP/html/dir_4e28292bc057704f3d2041cc99d8a5e9.html new file mode 100644 index 0000000..9dd45c7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_4e28292bc057704f3d2041cc99d8a5e9.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_50f4d4f91ce5cd72cb6928b47e85a7f8.html b/CMSIS/Documentation/DSP/html/dir_50f4d4f91ce5cd72cb6928b47e85a7f8.html new file mode 100644 index 0000000..59eeb64 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_50f4d4f91ce5cd72cb6928b47e85a7f8.html @@ -0,0 +1,155 @@ + + + + + +Examples Directory Reference +CMSIS-DSP: Examples Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Examples Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +

    +Directories

    directory  arm_class_marks_example
     
    directory  arm_convolution_example
     
    directory  arm_dotproduct_example
     
    directory  arm_fft_bin_example
     
    directory  arm_fir_example
     
    directory  arm_graphic_equalizer_example
     
    directory  arm_linear_interp_example
     
    directory  arm_matrix_example
     
    directory  arm_signal_converge_example
     
    directory  arm_sin_cos_example
     
    directory  arm_variance_example
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_51a4a1a9da33f8f5fceef63d25a48bab.html b/CMSIS/Documentation/DSP/html/dir_51a4a1a9da33f8f5fceef63d25a48bab.html new file mode 100644 index 0000000..dfa9479 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_51a4a1a9da33f8f5fceef63d25a48bab.html @@ -0,0 +1,140 @@ + + + + + +GCC Directory Reference +CMSIS-DSP: GCC Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    GCC Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Startup
     
    + + + +

    +Files

    file  GCC/arm_class_marks_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_555dbbdc9f25fff28408fc741ceff093.html b/CMSIS/Documentation/DSP/html/dir_555dbbdc9f25fff28408fc741ceff093.html new file mode 100644 index 0000000..6a35aa9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_555dbbdc9f25fff28408fc741ceff093.html @@ -0,0 +1,139 @@ + + + + + +Startup Directory Reference +CMSIS-DSP: Startup Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_56c57e2f0b48b2b8a51ef27bd8c502e6.html b/CMSIS/Documentation/DSP/html/dir_56c57e2f0b48b2b8a51ef27bd8c502e6.html new file mode 100644 index 0000000..a0a3406 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_56c57e2f0b48b2b8a51ef27bd8c502e6.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_matrix_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_56cec670f0bb78d679862f48f54d3df2.html b/CMSIS/Documentation/DSP/html/dir_56cec670f0bb78d679862f48f54d3df2.html new file mode 100644 index 0000000..5e5d12d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_56cec670f0bb78d679862f48f54d3df2.html @@ -0,0 +1,137 @@ + + + + + +arm_class_marks_example Directory Reference +CMSIS-DSP: arm_class_marks_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_class_marks_example Directory Reference
    +
    +
    + + + + + + +

    +Directories

    directory  ARM
     
    directory  GCC
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_59a4e177523ec142602b8d9a69e8f1ad.html b/CMSIS/Documentation/DSP/html/dir_59a4e177523ec142602b8d9a69e8f1ad.html new file mode 100644 index 0000000..5398478 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_59a4e177523ec142602b8d9a69e8f1ad.html @@ -0,0 +1,142 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ARM Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  RTE
     
    + + + + + +

    +Files

    file  ARM/arm_fft_bin_data.c
     
    file  ARM/arm_fft_bin_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_5a70ee658078194b161f81d2720845c2.html b/CMSIS/Documentation/DSP/html/dir_5a70ee658078194b161f81d2720845c2.html new file mode 100644 index 0000000..0b30242 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_5a70ee658078194b161f81d2720845c2.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_5a7314d68003d6d6c9cc9bdbf9474558.html b/CMSIS/Documentation/DSP/html/dir_5a7314d68003d6d6c9cc9bdbf9474558.html new file mode 100644 index 0000000..4c6df43 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_5a7314d68003d6d6c9cc9bdbf9474558.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_5ac065bab6b325e909a2891e62c4bc06.html b/CMSIS/Documentation/DSP/html/dir_5ac065bab6b325e909a2891e62c4bc06.html new file mode 100644 index 0000000..19646c7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_5ac065bab6b325e909a2891e62c4bc06.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_5f5bccfc6fe085bc51be756ab8f90283.html b/CMSIS/Documentation/DSP/html/dir_5f5bccfc6fe085bc51be756ab8f90283.html new file mode 100644 index 0000000..5fe2ff9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_5f5bccfc6fe085bc51be756ab8f90283.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_6128d62f89366c4b8843a6e619831037.html b/CMSIS/Documentation/DSP/html/dir_6128d62f89366c4b8843a6e619831037.html new file mode 100644 index 0000000..2a1067f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_6128d62f89366c4b8843a6e619831037.html @@ -0,0 +1,135 @@ + + + + + +arm_matrix_example Directory Reference +CMSIS-DSP: arm_matrix_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_matrix_example Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  ARM
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_640aa2eed9b78c9534642de10c55cd76.html b/CMSIS/Documentation/DSP/html/dir_640aa2eed9b78c9534642de10c55cd76.html new file mode 100644 index 0000000..0b57847 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_640aa2eed9b78c9534642de10c55cd76.html @@ -0,0 +1,169 @@ + + + + + +ComplexMathFunctions Directory Reference +CMSIS-DSP: ComplexMathFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_64e2a74b8b7bbc67c7b58e8d27693791.html b/CMSIS/Documentation/DSP/html/dir_64e2a74b8b7bbc67c7b58e8d27693791.html new file mode 100644 index 0000000..6faeb83 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_64e2a74b8b7bbc67c7b58e8d27693791.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_677f903d85fbea9a56056645305fd3cb.html b/CMSIS/Documentation/DSP/html/dir_677f903d85fbea9a56056645305fd3cb.html new file mode 100644 index 0000000..4d45b3a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_677f903d85fbea9a56056645305fd3cb.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_67fa1d0aab2310595b9aeb6c7b217b31.html b/CMSIS/Documentation/DSP/html/dir_67fa1d0aab2310595b9aeb6c7b217b31.html new file mode 100644 index 0000000..13fb741 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_67fa1d0aab2310595b9aeb6c7b217b31.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_68b896fe322128a858fd31091509f536.html b/CMSIS/Documentation/DSP/html/dir_68b896fe322128a858fd31091509f536.html new file mode 100644 index 0000000..9367f36 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_68b896fe322128a858fd31091509f536.html @@ -0,0 +1,146 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ARM Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  RTE
     
    + + + + + + + + + +

    +Files

    file  arm_fir_data.c
     
    file  arm_fir_example_f32.c
     
    file  arm_fir_example/ARM/math_helper.c
     
    file  arm_fir_example/ARM/math_helper.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_6ba48a5a8374668719ef019fe5c253cc.html b/CMSIS/Documentation/DSP/html/dir_6ba48a5a8374668719ef019fe5c253cc.html new file mode 100644 index 0000000..fa51214 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_6ba48a5a8374668719ef019fe5c253cc.html @@ -0,0 +1,144 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_6f165a89e15e99ac3f22d8f869410ac4.html b/CMSIS/Documentation/DSP/html/dir_6f165a89e15e99ac3f22d8f869410ac4.html new file mode 100644 index 0000000..08e08a4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_6f165a89e15e99ac3f22d8f869410ac4.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_graphic_equalizer_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_6fa7a20b876299d97755d41c2d48a6a5.html b/CMSIS/Documentation/DSP/html/dir_6fa7a20b876299d97755d41c2d48a6a5.html new file mode 100644 index 0000000..cee6520 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_6fa7a20b876299d97755d41c2d48a6a5.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_7101093b4d1c318dab4c75d3b6d4e65e.html b/CMSIS/Documentation/DSP/html/dir_7101093b4d1c318dab4c75d3b6d4e65e.html new file mode 100644 index 0000000..522015e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_7101093b4d1c318dab4c75d3b6d4e65e.html @@ -0,0 +1,144 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ARM Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  RTE
     
    + + + + + + + +

    +Files

    file  arm_matrix_example_f32.c
     
    file  arm_matrix_example/ARM/math_helper.c
     
    file  arm_matrix_example/ARM/math_helper.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_7b31f24274e1fbd0785fc4576840c524.html b/CMSIS/Documentation/DSP/html/dir_7b31f24274e1fbd0785fc4576840c524.html new file mode 100644 index 0000000..7f7444e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_7b31f24274e1fbd0785fc4576840c524.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_7c360855219f51fadbd92197472e63eb.html b/CMSIS/Documentation/DSP/html/dir_7c360855219f51fadbd92197472e63eb.html new file mode 100644 index 0000000..a0b0c16 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_7c360855219f51fadbd92197472e63eb.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_7d4cec4b61e1207b4d4e94667e8b33c4.html b/CMSIS/Documentation/DSP/html/dir_7d4cec4b61e1207b4d4e94667e8b33c4.html new file mode 100644 index 0000000..a236ed8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_7d4cec4b61e1207b4d4e94667e8b33c4.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_7d5684d3cdce709028a67dede40715c9.html b/CMSIS/Documentation/DSP/html/dir_7d5684d3cdce709028a67dede40715c9.html new file mode 100644 index 0000000..aae9a13 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_7d5684d3cdce709028a67dede40715c9.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_7e8aa87db1ad6b3d9b1f25792e7c5208.html b/CMSIS/Documentation/DSP/html/dir_7e8aa87db1ad6b3d9b1f25792e7c5208.html new file mode 100644 index 0000000..8514434 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_7e8aa87db1ad6b3d9b1f25792e7c5208.html @@ -0,0 +1,153 @@ + + + + + +Source Directory Reference +CMSIS-DSP: Source Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Source Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + +

    +Directories

    directory  BasicMathFunctions
     
    directory  CommonTables
     
    directory  ComplexMathFunctions
     
    directory  ControllerFunctions
     
    directory  FastMathFunctions
     
    directory  FilteringFunctions
     
    directory  MatrixFunctions
     
    directory  StatisticsFunctions
     
    directory  SupportFunctions
     
    directory  TransformFunctions
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_81c44c586c907f45c06b9b0a1d54e536.html b/CMSIS/Documentation/DSP/html/dir_81c44c586c907f45c06b9b0a1d54e536.html new file mode 100644 index 0000000..4c43e33 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_81c44c586c907f45c06b9b0a1d54e536.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_822489d6fe1c800fff671c2e07883531.html b/CMSIS/Documentation/DSP/html/dir_822489d6fe1c800fff671c2e07883531.html new file mode 100644 index 0000000..141fa3d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_822489d6fe1c800fff671c2e07883531.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_variance_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_82f440d47881c253175a7975df0d431b.html b/CMSIS/Documentation/DSP/html/dir_82f440d47881c253175a7975df0d431b.html new file mode 100644 index 0000000..b5c2728 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_82f440d47881c253175a7975df0d431b.html @@ -0,0 +1,137 @@ + + + + + +CommonTables Directory Reference +CMSIS-DSP: CommonTables Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    CommonTables Directory Reference
    +
    +
    + + + + + + +

    +Files

    file  arm_common_tables.c
     
    file  arm_const_structs.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_8414b1b93f9b578e0e4fd694ad6d561d.html b/CMSIS/Documentation/DSP/html/dir_8414b1b93f9b578e0e4fd694ad6d561d.html new file mode 100644 index 0000000..e43c8d1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_8414b1b93f9b578e0e4fd694ad6d561d.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_class_marks_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_856524284ebe840938865dc061f982fb.html b/CMSIS/Documentation/DSP/html/dir_856524284ebe840938865dc061f982fb.html new file mode 100644 index 0000000..cfac16e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_856524284ebe840938865dc061f982fb.html @@ -0,0 +1,139 @@ + + + + + +Include Directory Reference +CMSIS-DSP: Include Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Include Directory Reference
    +
    +
    + + + + + + + + +

    +Files

    file  arm_common_tables.h
     
    file  arm_const_structs.h
     
    file  arm_math.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_8964a87ec8901bd068212c6dbdc5667e.html b/CMSIS/Documentation/DSP/html/dir_8964a87ec8901bd068212c6dbdc5667e.html new file mode 100644 index 0000000..2b2aeab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_8964a87ec8901bd068212c6dbdc5667e.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_8e3293b977a6b314227f0cbb91dff730.html b/CMSIS/Documentation/DSP/html/dir_8e3293b977a6b314227f0cbb91dff730.html new file mode 100644 index 0000000..3e76ac1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_8e3293b977a6b314227f0cbb91dff730.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_8ec650f333a7a305dec681cfacaa8edc.html b/CMSIS/Documentation/DSP/html/dir_8ec650f333a7a305dec681cfacaa8edc.html new file mode 100644 index 0000000..bff03f6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_8ec650f333a7a305dec681cfacaa8edc.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_8f74d965c767f9f408b01fb8ac42c08d.html b/CMSIS/Documentation/DSP/html/dir_8f74d965c767f9f408b01fb8ac42c08d.html new file mode 100644 index 0000000..5d84058 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_8f74d965c767f9f408b01fb8ac42c08d.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_dotproduct_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_918b1d9c020a9c8774a15ad3971a73ba.html b/CMSIS/Documentation/DSP/html/dir_918b1d9c020a9c8774a15ad3971a73ba.html new file mode 100644 index 0000000..077728d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_918b1d9c020a9c8774a15ad3971a73ba.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_925317a6e91dbb02ffd51da5d221b046.html b/CMSIS/Documentation/DSP/html/dir_925317a6e91dbb02ffd51da5d221b046.html new file mode 100644 index 0000000..3c6f209 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_925317a6e91dbb02ffd51da5d221b046.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_92c426a233a3fdd85d56996e21a98e0e.html b/CMSIS/Documentation/DSP/html/dir_92c426a233a3fdd85d56996e21a98e0e.html new file mode 100644 index 0000000..5937e91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_92c426a233a3fdd85d56996e21a98e0e.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_signal_converge_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_99f4521c725f0e333e2b206f562a5db7.html b/CMSIS/Documentation/DSP/html/dir_99f4521c725f0e333e2b206f562a5db7.html new file mode 100644 index 0000000..c31410a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_99f4521c725f0e333e2b206f562a5db7.html @@ -0,0 +1,140 @@ + + + + + +GCC Directory Reference +CMSIS-DSP: GCC Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    GCC Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Startup
     
    + + + +

    +Files

    file  GCC/arm_dotproduct_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_9aca731d350c1cdbae92b5821b7281b6.html b/CMSIS/Documentation/DSP/html/dir_9aca731d350c1cdbae92b5821b7281b6.html new file mode 100644 index 0000000..a05dfe3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_9aca731d350c1cdbae92b5821b7281b6.html @@ -0,0 +1,173 @@ + + + + + +SupportFunctions Directory Reference +CMSIS-DSP: SupportFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    SupportFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_copy_f32.c
     
    file  arm_copy_q15.c
     
    file  arm_copy_q31.c
     
    file  arm_copy_q7.c
     
    file  arm_fill_f32.c
     
    file  arm_fill_q15.c
     
    file  arm_fill_q31.c
     
    file  arm_fill_q7.c
     
    file  arm_float_to_q15.c
     
    file  arm_float_to_q31.c
     
    file  arm_float_to_q7.c
     
    file  arm_q15_to_float.c
     
    file  arm_q15_to_q31.c
     
    file  arm_q15_to_q7.c
     
    file  arm_q31_to_float.c
     
    file  arm_q31_to_q15.c
     
    file  arm_q31_to_q7.c
     
    file  arm_q7_to_float.c
     
    file  arm_q7_to_q15.c
     
    file  arm_q7_to_q31.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_9bbc0b803a378696e320e7975798d136.html b/CMSIS/Documentation/DSP/html/dir_9bbc0b803a378696e320e7975798d136.html new file mode 100644 index 0000000..ca1c653 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_9bbc0b803a378696e320e7975798d136.html @@ -0,0 +1,146 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_9c857f0e41082f634e50072d001e0d4f.html b/CMSIS/Documentation/DSP/html/dir_9c857f0e41082f634e50072d001e0d4f.html new file mode 100644 index 0000000..ceb7439 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_9c857f0e41082f634e50072d001e0d4f.html @@ -0,0 +1,195 @@ + + + + + +TransformFunctions Directory Reference +CMSIS-DSP: TransformFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    TransformFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_bitreversal.c
     
    file  arm_cfft_f32.c
     
    file  arm_cfft_q15.c
     
    file  arm_cfft_q31.c
     
    file  arm_cfft_radix2_f32.c
     
    file  arm_cfft_radix2_init_f32.c
     
    file  arm_cfft_radix2_init_q15.c
     
    file  arm_cfft_radix2_init_q31.c
     
    file  arm_cfft_radix2_q15.c
     
    file  arm_cfft_radix2_q31.c
     
    file  arm_cfft_radix4_f32.c
     
    file  arm_cfft_radix4_init_f32.c
     
    file  arm_cfft_radix4_init_q15.c
     
    file  arm_cfft_radix4_init_q31.c
     
    file  arm_cfft_radix4_q15.c
     
    file  arm_cfft_radix4_q31.c
     
    file  arm_cfft_radix8_f32.c
     
    file  arm_dct4_f32.c
     
    file  arm_dct4_init_f32.c
     
    file  arm_dct4_init_q15.c
     
    file  arm_dct4_init_q31.c
     
    file  arm_dct4_q15.c
     
    file  arm_dct4_q31.c
     
    file  arm_rfft_f32.c
     
    file  arm_rfft_fast_f32.c
     
    file  arm_rfft_fast_init_f32.c
     
    file  arm_rfft_init_f32.c
     
    file  arm_rfft_init_q15.c
     
    file  arm_rfft_init_q31.c
     
    file  arm_rfft_q15.c
     
    file  arm_rfft_q31.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_9ec4a86676306e0fd116a00bf2906438.html b/CMSIS/Documentation/DSP/html/dir_9ec4a86676306e0fd116a00bf2906438.html new file mode 100644 index 0000000..ad1ba9f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_9ec4a86676306e0fd116a00bf2906438.html @@ -0,0 +1,144 @@ + + + + + +GCC Directory Reference +CMSIS-DSP: GCC Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_a318715356e0ddd7f0022cb090f89fc2.html b/CMSIS/Documentation/DSP/html/dir_a318715356e0ddd7f0022cb090f89fc2.html new file mode 100644 index 0000000..f42d052 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_a318715356e0ddd7f0022cb090f89fc2.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_a368b1aeece590aaffe7782f861e3d24.html b/CMSIS/Documentation/DSP/html/dir_a368b1aeece590aaffe7782f861e3d24.html new file mode 100644 index 0000000..e38eab5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_a368b1aeece590aaffe7782f861e3d24.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_a4dee065d84ef6ffe4004c9ef0acf573.html b/CMSIS/Documentation/DSP/html/dir_a4dee065d84ef6ffe4004c9ef0acf573.html new file mode 100644 index 0000000..4885ae7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_a4dee065d84ef6ffe4004c9ef0acf573.html @@ -0,0 +1,140 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ARM Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  RTE
     
    + + + +

    +Files

    file  ARM/arm_class_marks_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_a757f05afb4eb2e937a151caf65a9259.html b/CMSIS/Documentation/DSP/html/dir_a757f05afb4eb2e937a151caf65a9259.html new file mode 100644 index 0000000..fb53364 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_a757f05afb4eb2e937a151caf65a9259.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_a9b08443a15a54b29b0454fe878922b3.html b/CMSIS/Documentation/DSP/html/dir_a9b08443a15a54b29b0454fe878922b3.html new file mode 100644 index 0000000..1ecae70 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_a9b08443a15a54b29b0454fe878922b3.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_aa7ef7d51ba6279587b659bb78c926be.html b/CMSIS/Documentation/DSP/html/dir_aa7ef7d51ba6279587b659bb78c926be.html new file mode 100644 index 0000000..7e6aec1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_aa7ef7d51ba6279587b659bb78c926be.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_af59df418deac60c7129b68088884655.html b/CMSIS/Documentation/DSP/html/dir_af59df418deac60c7129b68088884655.html new file mode 100644 index 0000000..0417ee0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_af59df418deac60c7129b68088884655.html @@ -0,0 +1,183 @@ + + + + + +StatisticsFunctions Directory Reference +CMSIS-DSP: StatisticsFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    StatisticsFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_max_f32.c
     
    file  arm_max_q15.c
     
    file  arm_max_q31.c
     
    file  arm_max_q7.c
     
    file  arm_mean_f32.c
     
    file  arm_mean_q15.c
     
    file  arm_mean_q31.c
     
    file  arm_mean_q7.c
     
    file  arm_min_f32.c
     
    file  arm_min_q15.c
     
    file  arm_min_q31.c
     
    file  arm_min_q7.c
     
    file  arm_power_f32.c
     
    file  arm_power_q15.c
     
    file  arm_power_q31.c
     
    file  arm_power_q7.c
     
    file  arm_rms_f32.c
     
    file  arm_rms_q15.c
     
    file  arm_rms_q31.c
     
    file  arm_std_f32.c
     
    file  arm_std_q15.c
     
    file  arm_std_q31.c
     
    file  arm_var_f32.c
     
    file  arm_var_q15.c
     
    file  arm_var_q31.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_b175b6a1b0e91b31e821dead0757e039.html b/CMSIS/Documentation/DSP/html/dir_b175b6a1b0e91b31e821dead0757e039.html new file mode 100644 index 0000000..444df34 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_b175b6a1b0e91b31e821dead0757e039.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_b4620baec99d7beabdab610e4d749ef9.html b/CMSIS/Documentation/DSP/html/dir_b4620baec99d7beabdab610e4d749ef9.html new file mode 100644 index 0000000..67cefa6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_b4620baec99d7beabdab610e4d749ef9.html @@ -0,0 +1,135 @@ + + + + + +ARMCM4_FP Directory Reference +CMSIS-DSP: ARMCM4_FP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_b5d45ad7eb5bf398416f62f8980ddf77.html b/CMSIS/Documentation/DSP/html/dir_b5d45ad7eb5bf398416f62f8980ddf77.html new file mode 100644 index 0000000..502fd7e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_b5d45ad7eb5bf398416f62f8980ddf77.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_convolution_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_b88714652b8aa1e1c1599fa05e2dbc2f.html b/CMSIS/Documentation/DSP/html/dir_b88714652b8aa1e1c1599fa05e2dbc2f.html new file mode 100644 index 0000000..459469a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_b88714652b8aa1e1c1599fa05e2dbc2f.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_ba345a22c23c468dbe342a31a3980d31.html b/CMSIS/Documentation/DSP/html/dir_ba345a22c23c468dbe342a31a3980d31.html new file mode 100644 index 0000000..6453e0e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_ba345a22c23c468dbe342a31a3980d31.html @@ -0,0 +1,139 @@ + + + + + +Startup Directory Reference +CMSIS-DSP: Startup Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_be2d3df67661aefe0e3f0071a1d6f8f1.html b/CMSIS/Documentation/DSP/html/dir_be2d3df67661aefe0e3f0071a1d6f8f1.html new file mode 100644 index 0000000..569ae69 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_be2d3df67661aefe0e3f0071a1d6f8f1.html @@ -0,0 +1,137 @@ + + + + + +DSP_Lib Directory Reference +CMSIS-DSP: DSP_Lib Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    DSP_Lib Directory Reference
    +
    +
    + + + + + + +

    +Directories

    directory  Examples
     
    directory  Source
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_c2e666cea3ed7c127463edfe7b3abed4.html b/CMSIS/Documentation/DSP/html/dir_c2e666cea3ed7c127463edfe7b3abed4.html new file mode 100644 index 0000000..a5be185 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_c2e666cea3ed7c127463edfe7b3abed4.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_cc6125d285775e245d68db3d4ce69092.html b/CMSIS/Documentation/DSP/html/dir_cc6125d285775e245d68db3d4ce69092.html new file mode 100644 index 0000000..02ce553 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_cc6125d285775e245d68db3d4ce69092.html @@ -0,0 +1,183 @@ + + + + + +MatrixFunctions Directory Reference +CMSIS-DSP: MatrixFunctions Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    MatrixFunctions Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  arm_mat_add_f32.c
     
    file  arm_mat_add_q15.c
     
    file  arm_mat_add_q31.c
     
    file  arm_mat_cmplx_mult_f32.c
     
    file  arm_mat_cmplx_mult_q15.c
     
    file  arm_mat_cmplx_mult_q31.c
     
    file  arm_mat_init_f32.c
     
    file  arm_mat_init_q15.c
     
    file  arm_mat_init_q31.c
     
    file  arm_mat_inverse_f32.c
     
    file  arm_mat_inverse_f64.c
     
    file  arm_mat_mult_f32.c
     
    file  arm_mat_mult_fast_q15.c
     
    file  arm_mat_mult_fast_q31.c
     
    file  arm_mat_mult_q15.c
     
    file  arm_mat_mult_q31.c
     
    file  arm_mat_scale_f32.c
     
    file  arm_mat_scale_q15.c
     
    file  arm_mat_scale_q31.c
     
    file  arm_mat_sub_f32.c
     
    file  arm_mat_sub_q15.c
     
    file  arm_mat_sub_q31.c
     
    file  arm_mat_trans_f32.c
     
    file  arm_mat_trans_q15.c
     
    file  arm_mat_trans_q31.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_cd8c33382d73f02781c40066dbd2f0d5.html b/CMSIS/Documentation/DSP/html/dir_cd8c33382d73f02781c40066dbd2f0d5.html new file mode 100644 index 0000000..1ea076c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_cd8c33382d73f02781c40066dbd2f0d5.html @@ -0,0 +1,146 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_cf417d728100a167f563acfac33cb7c7.html b/CMSIS/Documentation/DSP/html/dir_cf417d728100a167f563acfac33cb7c7.html new file mode 100644 index 0000000..6ebc433 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_cf417d728100a167f563acfac33cb7c7.html @@ -0,0 +1,135 @@ + + + + + +arm_linear_interp_example Directory Reference +CMSIS-DSP: arm_linear_interp_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_linear_interp_example Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  ARM
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_d1af19de43f00bd515b519c982d49d68.html b/CMSIS/Documentation/DSP/html/dir_d1af19de43f00bd515b519c982d49d68.html new file mode 100644 index 0000000..b99c41f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_d1af19de43f00bd515b519c982d49d68.html @@ -0,0 +1,135 @@ + + + + + +arm_sin_cos_example Directory Reference +CMSIS-DSP: arm_sin_cos_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_sin_cos_example Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  ARM
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_d1d61a1361fc579da85c1b709ed868d7.html b/CMSIS/Documentation/DSP/html/dir_d1d61a1361fc579da85c1b709ed868d7.html new file mode 100644 index 0000000..0fde088 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_d1d61a1361fc579da85c1b709ed868d7.html @@ -0,0 +1,137 @@ + + + + + +arm_dotproduct_example Directory Reference +CMSIS-DSP: arm_dotproduct_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_dotproduct_example Directory Reference
    +
    +
    + + + + + + +

    +Directories

    directory  ARM
     
    directory  GCC
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_d3331dca3948a91095eeb99d07575db0.html b/CMSIS/Documentation/DSP/html/dir_d3331dca3948a91095eeb99d07575db0.html new file mode 100644 index 0000000..4a97677 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_d3331dca3948a91095eeb99d07575db0.html @@ -0,0 +1,135 @@ + + + + + +ARMCM3 Directory Reference +CMSIS-DSP: ARMCM3 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_d6b73ad7e408302c29ea0ebadf42639d.html b/CMSIS/Documentation/DSP/html/dir_d6b73ad7e408302c29ea0ebadf42639d.html new file mode 100644 index 0000000..b0c39d8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_d6b73ad7e408302c29ea0ebadf42639d.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_daf4f5c4da18fbee2cc01397e7059227.html b/CMSIS/Documentation/DSP/html/dir_daf4f5c4da18fbee2cc01397e7059227.html new file mode 100644 index 0000000..735a6ec --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_daf4f5c4da18fbee2cc01397e7059227.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_dcc7392e27ceedcb8fca5c4cd07c4b5c.html b/CMSIS/Documentation/DSP/html/dir_dcc7392e27ceedcb8fca5c4cd07c4b5c.html new file mode 100644 index 0000000..026c282 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_dcc7392e27ceedcb8fca5c4cd07c4b5c.html @@ -0,0 +1,135 @@ + + + + + +arm_fir_example Directory Reference +CMSIS-DSP: arm_fir_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_fir_example Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  ARM
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_e04602aba7b2f9f43e3429e32fb5dc36.html b/CMSIS/Documentation/DSP/html/dir_e04602aba7b2f9f43e3429e32fb5dc36.html new file mode 100644 index 0000000..b828698 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_e04602aba7b2f9f43e3429e32fb5dc36.html @@ -0,0 +1,135 @@ + + + + + +arm_variance_example Directory Reference +CMSIS-DSP: arm_variance_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_variance_example Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  ARM
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_e4eb7b834609f1fe20523c66b23e4a87.html b/CMSIS/Documentation/DSP/html/dir_e4eb7b834609f1fe20523c66b23e4a87.html new file mode 100644 index 0000000..9dc38cc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_e4eb7b834609f1fe20523c66b23e4a87.html @@ -0,0 +1,135 @@ + + + + + +arm_graphic_equalizer_example Directory Reference +CMSIS-DSP: arm_graphic_equalizer_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_graphic_equalizer_example Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  ARM
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_e677fc34f5347e58d43c339b53e9b418.html b/CMSIS/Documentation/DSP/html/dir_e677fc34f5347e58d43c339b53e9b418.html new file mode 100644 index 0000000..1285ba9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_e677fc34f5347e58d43c339b53e9b418.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_e69484b12825f40a4799c3db7df7c339.html b/CMSIS/Documentation/DSP/html/dir_e69484b12825f40a4799c3db7df7c339.html new file mode 100644 index 0000000..11e241f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_e69484b12825f40a4799c3db7df7c339.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_e850fff378e36258e2a085808e9d898c.html b/CMSIS/Documentation/DSP/html/dir_e850fff378e36258e2a085808e9d898c.html new file mode 100644 index 0000000..b9adaab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_e850fff378e36258e2a085808e9d898c.html @@ -0,0 +1,135 @@ + + + + + +arm_signal_converge_example Directory Reference +CMSIS-DSP: arm_signal_converge_example Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    arm_signal_converge_example Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  ARM
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_eaa4f497a3f9bf201d37aaf8d8603deb.html b/CMSIS/Documentation/DSP/html/dir_eaa4f497a3f9bf201d37aaf8d8603deb.html new file mode 100644 index 0000000..b10a800 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_eaa4f497a3f9bf201d37aaf8d8603deb.html @@ -0,0 +1,140 @@ + + + + + +ARM Directory Reference +CMSIS-DSP: ARM Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ARM Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  RTE
     
    + + + +

    +Files

    file  ARM/arm_dotproduct_example_f32.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_ed0f06d1d48a5e921d9f4bc3a2223aa6.html b/CMSIS/Documentation/DSP/html/dir_ed0f06d1d48a5e921d9f4bc3a2223aa6.html new file mode 100644 index 0000000..541bc6b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_ed0f06d1d48a5e921d9f4bc3a2223aa6.html @@ -0,0 +1,135 @@ + + + + + +ARMCM7_SP Directory Reference +CMSIS-DSP: ARMCM7_SP Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_f31395880d34591c756e13478059d1a5.html b/CMSIS/Documentation/DSP/html/dir_f31395880d34591c756e13478059d1a5.html new file mode 100644 index 0000000..def03ec --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_f31395880d34591c756e13478059d1a5.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_f3f90e767886505989b4baa9d4b81390.html b/CMSIS/Documentation/DSP/html/dir_f3f90e767886505989b4baa9d4b81390.html new file mode 100644 index 0000000..338c809 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_f3f90e767886505989b4baa9d4b81390.html @@ -0,0 +1,135 @@ + + + + + +ARMCM0 Directory Reference +CMSIS-DSP: ARMCM0 Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_fa76c9f4334252cb8d941364a7ed9feb.html b/CMSIS/Documentation/DSP/html/dir_fa76c9f4334252cb8d941364a7ed9feb.html new file mode 100644 index 0000000..d7b090b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_fa76c9f4334252cb8d941364a7ed9feb.html @@ -0,0 +1,141 @@ + + + + + +Device Directory Reference +CMSIS-DSP: Device Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Device Directory Reference
    +
    +
    + + + + + + + + + + +

    +Directories

    directory  ARMCM0
     
    directory  ARMCM3
     
    directory  ARMCM4_FP
     
    directory  ARMCM7_SP
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dir_fccaebac91eec4cb351e86457c5d1310.html b/CMSIS/Documentation/DSP/html/dir_fccaebac91eec4cb351e86457c5d1310.html new file mode 100644 index 0000000..9f3ee81 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dir_fccaebac91eec4cb351e86457c5d1310.html @@ -0,0 +1,140 @@ + + + + + +RTE Directory Reference +CMSIS-DSP: RTE Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTE Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Device
     
    + + + +

    +Files

    file  arm_linear_interp_example/ARM/RTE/RTE_Components.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/dotProduct.gif b/CMSIS/Documentation/DSP/html/dotProduct.gif new file mode 100644 index 0000000..7a3af28 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/dotProduct.gif differ diff --git a/CMSIS/Documentation/DSP/html/doxygen.css b/CMSIS/Documentation/DSP/html/doxygen.css new file mode 100644 index 0000000..2642e8f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/DSP/html/doxygen.png b/CMSIS/Documentation/DSP/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/doxygen.png differ diff --git a/CMSIS/Documentation/DSP/html/dynsections.js b/CMSIS/Documentation/DSP/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +Examples +CMSIS-DSP: Examples + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/files.html b/CMSIS/Documentation/DSP/html/files.html new file mode 100644 index 0000000..71ebea5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/files.html @@ -0,0 +1,508 @@ + + + + + +File List +CMSIS-DSP: File List + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    File List
    +
    +
    +
    Here is a list of all files with brief descriptions:
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    o*arm_abs_f32.c
    o*arm_abs_q15.c
    o*arm_abs_q31.c
    o*arm_abs_q7.c
    o*arm_add_f32.c
    o*arm_add_q15.c
    o*arm_add_q31.c
    o*arm_add_q7.c
    o*arm_biquad_cascade_df1_32x64_init_q31.c
    o*arm_biquad_cascade_df1_32x64_q31.c
    o*arm_biquad_cascade_df1_f32.c
    o*arm_biquad_cascade_df1_fast_q15.c
    o*arm_biquad_cascade_df1_fast_q31.c
    o*arm_biquad_cascade_df1_init_f32.c
    o*arm_biquad_cascade_df1_init_q15.c
    o*arm_biquad_cascade_df1_init_q31.c
    o*arm_biquad_cascade_df1_q15.c
    o*arm_biquad_cascade_df1_q31.c
    o*arm_biquad_cascade_df2T_f32.c
    o*arm_biquad_cascade_df2T_f64.c
    o*arm_biquad_cascade_df2T_init_f32.c
    o*arm_biquad_cascade_df2T_init_f64.c
    o*arm_biquad_cascade_stereo_df2T_f32.c
    o*arm_biquad_cascade_stereo_df2T_init_f32.c
    o*arm_bitreversal.c
    o*arm_cfft_f32.c
    o*arm_cfft_q15.c
    o*arm_cfft_q31.c
    o*arm_cfft_radix2_f32.c
    o*arm_cfft_radix2_init_f32.c
    o*arm_cfft_radix2_init_q15.c
    o*arm_cfft_radix2_init_q31.c
    o*arm_cfft_radix2_q15.c
    o*arm_cfft_radix2_q31.c
    o*arm_cfft_radix4_f32.c
    o*arm_cfft_radix4_init_f32.c
    o*arm_cfft_radix4_init_q15.c
    o*arm_cfft_radix4_init_q31.c
    o*arm_cfft_radix4_q15.c
    o*arm_cfft_radix4_q31.c
    o*arm_cfft_radix8_f32.c
    o*ARM/arm_class_marks_example_f32.c
    o*GCC/arm_class_marks_example_f32.c
    o*arm_cmplx_conj_f32.c
    o*arm_cmplx_conj_q15.c
    o*arm_cmplx_conj_q31.c
    o*arm_cmplx_dot_prod_f32.c
    o*arm_cmplx_dot_prod_q15.c
    o*arm_cmplx_dot_prod_q31.c
    o*arm_cmplx_mag_f32.c
    o*arm_cmplx_mag_q15.c
    o*arm_cmplx_mag_q31.c
    o*arm_cmplx_mag_squared_f32.c
    o*arm_cmplx_mag_squared_q15.c
    o*arm_cmplx_mag_squared_q31.c
    o*arm_cmplx_mult_cmplx_f32.c
    o*arm_cmplx_mult_cmplx_q15.c
    o*arm_cmplx_mult_cmplx_q31.c
    o*arm_cmplx_mult_real_f32.c
    o*arm_cmplx_mult_real_q15.c
    o*arm_cmplx_mult_real_q31.c
    o*arm_common_tables.c
    o*arm_common_tables.h
    o*arm_const_structs.c
    o*arm_const_structs.h
    o*arm_conv_f32.c
    o*arm_conv_fast_opt_q15.c
    o*arm_conv_fast_q15.c
    o*arm_conv_fast_q31.c
    o*arm_conv_opt_q15.c
    o*arm_conv_opt_q7.c
    o*arm_conv_partial_f32.c
    o*arm_conv_partial_fast_opt_q15.c
    o*arm_conv_partial_fast_q15.c
    o*arm_conv_partial_fast_q31.c
    o*arm_conv_partial_opt_q15.c
    o*arm_conv_partial_opt_q7.c
    o*arm_conv_partial_q15.c
    o*arm_conv_partial_q31.c
    o*arm_conv_partial_q7.c
    o*arm_conv_q15.c
    o*arm_conv_q31.c
    o*arm_conv_q7.c
    o*ARM/arm_convolution_example_f32.c
    o*GCC/arm_convolution_example_f32.c
    o*arm_copy_f32.c
    o*arm_copy_q15.c
    o*arm_copy_q31.c
    o*arm_copy_q7.c
    o*arm_correlate_f32.c
    o*arm_correlate_fast_opt_q15.c
    o*arm_correlate_fast_q15.c
    o*arm_correlate_fast_q31.c
    o*arm_correlate_opt_q15.c
    o*arm_correlate_opt_q7.c
    o*arm_correlate_q15.c
    o*arm_correlate_q31.c
    o*arm_correlate_q7.c
    o*arm_cos_f32.c
    o*arm_cos_q15.c
    o*arm_cos_q31.c
    o*arm_dct4_f32.c
    o*arm_dct4_init_f32.c
    o*arm_dct4_init_q15.c
    o*arm_dct4_init_q31.c
    o*arm_dct4_q15.c
    o*arm_dct4_q31.c
    o*arm_dot_prod_f32.c
    o*arm_dot_prod_q15.c
    o*arm_dot_prod_q31.c
    o*arm_dot_prod_q7.c
    o*ARM/arm_dotproduct_example_f32.c
    o*GCC/arm_dotproduct_example_f32.c
    o*ARM/arm_fft_bin_data.c
    o*GCC/arm_fft_bin_data.c
    o*ARM/arm_fft_bin_example_f32.c
    o*GCC/arm_fft_bin_example_f32.c
    o*arm_fill_f32.c
    o*arm_fill_q15.c
    o*arm_fill_q31.c
    o*arm_fill_q7.c
    o*arm_fir_data.c
    o*arm_fir_decimate_f32.c
    o*arm_fir_decimate_fast_q15.c
    o*arm_fir_decimate_fast_q31.c
    o*arm_fir_decimate_init_f32.c
    o*arm_fir_decimate_init_q15.c
    o*arm_fir_decimate_init_q31.c
    o*arm_fir_decimate_q15.c
    o*arm_fir_decimate_q31.c
    o*arm_fir_example_f32.c
    o*arm_fir_f32.c
    o*arm_fir_fast_q15.c
    o*arm_fir_fast_q31.c
    o*arm_fir_init_f32.c
    o*arm_fir_init_q15.c
    o*arm_fir_init_q31.c
    o*arm_fir_init_q7.c
    o*arm_fir_interpolate_f32.c
    o*arm_fir_interpolate_init_f32.c
    o*arm_fir_interpolate_init_q15.c
    o*arm_fir_interpolate_init_q31.c
    o*arm_fir_interpolate_q15.c
    o*arm_fir_interpolate_q31.c
    o*arm_fir_lattice_f32.c
    o*arm_fir_lattice_init_f32.c
    o*arm_fir_lattice_init_q15.c
    o*arm_fir_lattice_init_q31.c
    o*arm_fir_lattice_q15.c
    o*arm_fir_lattice_q31.c
    o*arm_fir_q15.c
    o*arm_fir_q31.c
    o*arm_fir_q7.c
    o*arm_fir_sparse_f32.c
    o*arm_fir_sparse_init_f32.c
    o*arm_fir_sparse_init_q15.c
    o*arm_fir_sparse_init_q31.c
    o*arm_fir_sparse_init_q7.c
    o*arm_fir_sparse_q15.c
    o*arm_fir_sparse_q31.c
    o*arm_fir_sparse_q7.c
    o*arm_float_to_q15.c
    o*arm_float_to_q31.c
    o*arm_float_to_q7.c
    o*arm_graphic_equalizer_data.c
    o*arm_graphic_equalizer_example_q31.c
    o*arm_iir_lattice_f32.c
    o*arm_iir_lattice_init_f32.c
    o*arm_iir_lattice_init_q15.c
    o*arm_iir_lattice_init_q31.c
    o*arm_iir_lattice_q15.c
    o*arm_iir_lattice_q31.c
    o*arm_linear_interp_data.c
    o*arm_linear_interp_example_f32.c
    o*arm_lms_f32.c
    o*arm_lms_init_f32.c
    o*arm_lms_init_q15.c
    o*arm_lms_init_q31.c
    o*arm_lms_norm_f32.c
    o*arm_lms_norm_init_f32.c
    o*arm_lms_norm_init_q15.c
    o*arm_lms_norm_init_q31.c
    o*arm_lms_norm_q15.c
    o*arm_lms_norm_q31.c
    o*arm_lms_q15.c
    o*arm_lms_q31.c
    o*arm_mat_add_f32.c
    o*arm_mat_add_q15.c
    o*arm_mat_add_q31.c
    o*arm_mat_cmplx_mult_f32.c
    o*arm_mat_cmplx_mult_q15.c
    o*arm_mat_cmplx_mult_q31.c
    o*arm_mat_init_f32.c
    o*arm_mat_init_q15.c
    o*arm_mat_init_q31.c
    o*arm_mat_inverse_f32.c
    o*arm_mat_inverse_f64.c
    o*arm_mat_mult_f32.c
    o*arm_mat_mult_fast_q15.c
    o*arm_mat_mult_fast_q31.c
    o*arm_mat_mult_q15.c
    o*arm_mat_mult_q31.c
    o*arm_mat_scale_f32.c
    o*arm_mat_scale_q15.c
    o*arm_mat_scale_q31.c
    o*arm_mat_sub_f32.c
    o*arm_mat_sub_q15.c
    o*arm_mat_sub_q31.c
    o*arm_mat_trans_f32.c
    o*arm_mat_trans_q15.c
    o*arm_mat_trans_q31.c
    o*arm_math.h
    o*arm_matrix_example_f32.c
    o*arm_max_f32.c
    o*arm_max_q15.c
    o*arm_max_q31.c
    o*arm_max_q7.c
    o*arm_mean_f32.c
    o*arm_mean_q15.c
    o*arm_mean_q31.c
    o*arm_mean_q7.c
    o*arm_min_f32.c
    o*arm_min_q15.c
    o*arm_min_q31.c
    o*arm_min_q7.c
    o*arm_mult_f32.c
    o*arm_mult_q15.c
    o*arm_mult_q31.c
    o*arm_mult_q7.c
    o*arm_negate_f32.c
    o*arm_negate_q15.c
    o*arm_negate_q31.c
    o*arm_negate_q7.c
    o*arm_offset_f32.c
    o*arm_offset_q15.c
    o*arm_offset_q31.c
    o*arm_offset_q7.c
    o*arm_pid_init_f32.c
    o*arm_pid_init_q15.c
    o*arm_pid_init_q31.c
    o*arm_pid_reset_f32.c
    o*arm_pid_reset_q15.c
    o*arm_pid_reset_q31.c
    o*arm_power_f32.c
    o*arm_power_q15.c
    o*arm_power_q31.c
    o*arm_power_q7.c
    o*arm_q15_to_float.c
    o*arm_q15_to_q31.c
    o*arm_q15_to_q7.c
    o*arm_q31_to_float.c
    o*arm_q31_to_q15.c
    o*arm_q31_to_q7.c
    o*arm_q7_to_float.c
    o*arm_q7_to_q15.c
    o*arm_q7_to_q31.c
    o*arm_rfft_f32.c
    o*arm_rfft_fast_f32.c
    o*arm_rfft_fast_init_f32.c
    o*arm_rfft_init_f32.c
    o*arm_rfft_init_q15.c
    o*arm_rfft_init_q31.c
    o*arm_rfft_q15.c
    o*arm_rfft_q31.c
    o*arm_rms_f32.c
    o*arm_rms_q15.c
    o*arm_rms_q31.c
    o*arm_scale_f32.c
    o*arm_scale_q15.c
    o*arm_scale_q31.c
    o*arm_scale_q7.c
    o*arm_shift_q15.c
    o*arm_shift_q31.c
    o*arm_shift_q7.c
    o*arm_signal_converge_data.c
    o*arm_signal_converge_example_f32.c
    o*arm_sin_cos_example_f32.c
    o*arm_sin_cos_f32.c
    o*arm_sin_cos_q31.c
    o*arm_sin_f32.c
    o*arm_sin_q15.c
    o*arm_sin_q31.c
    o*arm_sqrt_q15.c
    o*arm_sqrt_q31.c
    o*arm_std_f32.c
    o*arm_std_q15.c
    o*arm_std_q31.c
    o*arm_sub_f32.c
    o*arm_sub_q15.c
    o*arm_sub_q31.c
    o*arm_sub_q7.c
    o*arm_var_f32.c
    o*arm_var_q15.c
    o*arm_var_q31.c
    o*arm_variance_example_f32.c
    o*arm_convolution_example/ARM/math_helper.c
    o*arm_convolution_example/GCC/math_helper.c
    o*arm_fir_example/ARM/math_helper.c
    o*arm_graphic_equalizer_example/ARM/math_helper.c
    o*arm_linear_interp_example/ARM/math_helper.c
    o*arm_matrix_example/ARM/math_helper.c
    o*arm_signal_converge_example/ARM/math_helper.c
    o*arm_convolution_example/ARM/math_helper.h
    o*arm_convolution_example/GCC/math_helper.h
    o*arm_fir_example/ARM/math_helper.h
    o*arm_graphic_equalizer_example/ARM/math_helper.h
    o*arm_linear_interp_example/ARM/math_helper.h
    o*arm_matrix_example/ARM/math_helper.h
    o*arm_signal_converge_example/ARM/math_helper.h
    o*arm_class_marks_example/ARM/RTE/RTE_Components.h
    o*arm_convolution_example/ARM/RTE/RTE_Components.h
    o*arm_dotproduct_example/ARM/RTE/RTE_Components.h
    o*arm_fft_bin_example/ARM/RTE/RTE_Components.h
    o*arm_fir_example/ARM/RTE/RTE_Components.h
    o*arm_graphic_equalizer_example/ARM/RTE/RTE_Components.h
    o*arm_linear_interp_example/ARM/RTE/RTE_Components.h
    o*arm_matrix_example/ARM/RTE/RTE_Components.h
    o*arm_signal_converge_example/ARM/RTE/RTE_Components.h
    o*arm_sin_cos_example/ARM/RTE/RTE_Components.h
    o*arm_variance_example/ARM/RTE/RTE_Components.h
    o*arm_class_marks_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_class_marks_example/GCC/Startup/system_ARMCM0.c
    o*arm_convolution_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_convolution_example/GCC/Startup/system_ARMCM0.c
    o*arm_dotproduct_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_dotproduct_example/GCC/Startup/system_ARMCM0.c
    o*arm_fft_bin_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_fft_bin_example/GCC/Startup/system_ARMCM0.c
    o*arm_fir_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_linear_interp_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_matrix_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_signal_converge_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_sin_cos_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_variance_example/ARM/RTE/Device/ARMCM0/system_ARMCM0.c
    o*arm_class_marks_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_class_marks_example/GCC/Startup/system_ARMCM3.c
    o*arm_convolution_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_convolution_example/GCC/Startup/system_ARMCM3.c
    o*arm_dotproduct_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_dotproduct_example/GCC/Startup/system_ARMCM3.c
    o*arm_fft_bin_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_fft_bin_example/GCC/Startup/system_ARMCM3.c
    o*arm_fir_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_linear_interp_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_matrix_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_signal_converge_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_sin_cos_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_variance_example/ARM/RTE/Device/ARMCM3/system_ARMCM3.c
    o*arm_class_marks_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_class_marks_example/GCC/Startup/system_ARMCM4.c
    o*arm_convolution_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_convolution_example/GCC/Startup/system_ARMCM4.c
    o*arm_dotproduct_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_dotproduct_example/GCC/Startup/system_ARMCM4.c
    o*arm_fft_bin_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_fft_bin_example/GCC/Startup/system_ARMCM4.c
    o*arm_fir_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_linear_interp_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_matrix_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_signal_converge_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_sin_cos_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_variance_example/ARM/RTE/Device/ARMCM4_FP/system_ARMCM4.c
    o*arm_class_marks_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_convolution_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_dotproduct_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_fft_bin_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_fir_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_graphic_equalizer_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_linear_interp_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_matrix_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_signal_converge_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    o*arm_sin_cos_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    \*arm_variance_example/ARM/RTE/Device/ARMCM7_SP/system_ARMCM7.c
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/ftv2blank.png b/CMSIS/Documentation/DSP/html/ftv2blank.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2blank.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2cl.png b/CMSIS/Documentation/DSP/html/ftv2cl.png new file mode 100644 index 0000000..132f657 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2cl.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2doc.png b/CMSIS/Documentation/DSP/html/ftv2doc.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2doc.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2folderclosed.png b/CMSIS/Documentation/DSP/html/ftv2folderclosed.png new file mode 100644 index 0000000..bb8ab35 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2folderclosed.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2folderopen.png b/CMSIS/Documentation/DSP/html/ftv2folderopen.png new file mode 100644 index 0000000..d6c7f67 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2folderopen.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2lastnode.png b/CMSIS/Documentation/DSP/html/ftv2lastnode.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2lastnode.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2link.png b/CMSIS/Documentation/DSP/html/ftv2link.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2link.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2mlastnode.png b/CMSIS/Documentation/DSP/html/ftv2mlastnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2mlastnode.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2mnode.png b/CMSIS/Documentation/DSP/html/ftv2mnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2mnode.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2mo.png b/CMSIS/Documentation/DSP/html/ftv2mo.png new file mode 100644 index 0000000..4bfb80f Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2mo.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2node.png b/CMSIS/Documentation/DSP/html/ftv2node.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2node.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2ns.png b/CMSIS/Documentation/DSP/html/ftv2ns.png new file mode 100644 index 0000000..72e3d71 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2ns.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2plastnode.png b/CMSIS/Documentation/DSP/html/ftv2plastnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2plastnode.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2pnode.png b/CMSIS/Documentation/DSP/html/ftv2pnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2pnode.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2splitbar.png b/CMSIS/Documentation/DSP/html/ftv2splitbar.png new file mode 100644 index 0000000..fe895f2 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2splitbar.png differ diff --git a/CMSIS/Documentation/DSP/html/ftv2vertline.png b/CMSIS/Documentation/DSP/html/ftv2vertline.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/DSP/html/ftv2vertline.png differ diff --git a/CMSIS/Documentation/DSP/html/functions.html b/CMSIS/Documentation/DSP/html/functions.html new file mode 100644 index 0000000..136e01a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions.html @@ -0,0 +1,173 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - a -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x62.html b/CMSIS/Documentation/DSP/html/functions_0x62.html new file mode 100644 index 0000000..80a7389 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x62.html @@ -0,0 +1,185 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x65.html b/CMSIS/Documentation/DSP/html/functions_0x65.html new file mode 100644 index 0000000..b4a7482 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x65.html @@ -0,0 +1,164 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - e -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x66.html b/CMSIS/Documentation/DSP/html/functions_0x66.html new file mode 100644 index 0000000..d3f6efb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x66.html @@ -0,0 +1,181 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x69.html b/CMSIS/Documentation/DSP/html/functions_0x69.html new file mode 100644 index 0000000..ebdd6e8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x69.html @@ -0,0 +1,172 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x6b.html b/CMSIS/Documentation/DSP/html/functions_0x6b.html new file mode 100644 index 0000000..1dab0b3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x6b.html @@ -0,0 +1,174 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x6c.html b/CMSIS/Documentation/DSP/html/functions_0x6c.html new file mode 100644 index 0000000..aeaca39 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x6c.html @@ -0,0 +1,164 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - l -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x6d.html b/CMSIS/Documentation/DSP/html/functions_0x6d.html new file mode 100644 index 0000000..092d5bb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x6d.html @@ -0,0 +1,178 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x6e.html b/CMSIS/Documentation/DSP/html/functions_0x6e.html new file mode 100644 index 0000000..16de27d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x6e.html @@ -0,0 +1,231 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - n -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x6f.html b/CMSIS/Documentation/DSP/html/functions_0x6f.html new file mode 100644 index 0000000..5aebb1b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x6f.html @@ -0,0 +1,163 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x70.html b/CMSIS/Documentation/DSP/html/functions_0x70.html new file mode 100644 index 0000000..c65f53d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x70.html @@ -0,0 +1,325 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - p -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x72.html b/CMSIS/Documentation/DSP/html/functions_0x72.html new file mode 100644 index 0000000..a3af3c7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x72.html @@ -0,0 +1,163 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - r -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x73.html b/CMSIS/Documentation/DSP/html/functions_0x73.html new file mode 100644 index 0000000..6e99bb8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x73.html @@ -0,0 +1,173 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x74.html b/CMSIS/Documentation/DSP/html/functions_0x74.html new file mode 100644 index 0000000..9c29496 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x74.html @@ -0,0 +1,172 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_0x78.html b/CMSIS/Documentation/DSP/html/functions_0x78.html new file mode 100644 index 0000000..02c28ce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_0x78.html @@ -0,0 +1,170 @@ + + + + + +Data Fields +CMSIS-DSP: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - x -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_dup.js b/CMSIS/Documentation/DSP/html/functions_dup.js new file mode 100644 index 0000000..4f1774c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_dup.js @@ -0,0 +1,18 @@ +var functions_dup = +[ + [ "a", "functions.html", null ], + [ "b", "functions_0x62.html", null ], + [ "e", "functions_0x65.html", null ], + [ "f", "functions_0x66.html", null ], + [ "i", "functions_0x69.html", null ], + [ "k", "functions_0x6b.html", null ], + [ "l", "functions_0x6c.html", null ], + [ "m", "functions_0x6d.html", null ], + [ "n", "functions_0x6e.html", null ], + [ "o", "functions_0x6f.html", null ], + [ "p", "functions_0x70.html", null ], + [ "r", "functions_0x72.html", null ], + [ "s", "functions_0x73.html", null ], + [ "t", "functions_0x74.html", null ], + [ "x", "functions_0x78.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/functions_vars.html b/CMSIS/Documentation/DSP/html/functions_vars.html new file mode 100644 index 0000000..7e15bce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars.html @@ -0,0 +1,173 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars.js b/CMSIS/Documentation/DSP/html/functions_vars.js new file mode 100644 index 0000000..ebe2890 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars.js @@ -0,0 +1,18 @@ +var functions_vars = +[ + [ "a", "functions_vars.html", null ], + [ "b", "functions_vars_0x62.html", null ], + [ "e", "functions_vars_0x65.html", null ], + [ "f", "functions_vars_0x66.html", null ], + [ "i", "functions_vars_0x69.html", null ], + [ "k", "functions_vars_0x6b.html", null ], + [ "l", "functions_vars_0x6c.html", null ], + [ "m", "functions_vars_0x6d.html", null ], + [ "n", "functions_vars_0x6e.html", null ], + [ "o", "functions_vars_0x6f.html", null ], + [ "p", "functions_vars_0x70.html", null ], + [ "r", "functions_vars_0x72.html", null ], + [ "s", "functions_vars_0x73.html", null ], + [ "t", "functions_vars_0x74.html", null ], + [ "x", "functions_vars_0x78.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x62.html b/CMSIS/Documentation/DSP/html/functions_vars_0x62.html new file mode 100644 index 0000000..81fd36e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x62.html @@ -0,0 +1,185 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x65.html b/CMSIS/Documentation/DSP/html/functions_vars_0x65.html new file mode 100644 index 0000000..ea16c90 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x65.html @@ -0,0 +1,164 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x66.html b/CMSIS/Documentation/DSP/html/functions_vars_0x66.html new file mode 100644 index 0000000..cfb31b0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x66.html @@ -0,0 +1,181 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x69.html b/CMSIS/Documentation/DSP/html/functions_vars_0x69.html new file mode 100644 index 0000000..345ec4b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x69.html @@ -0,0 +1,172 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x6b.html b/CMSIS/Documentation/DSP/html/functions_vars_0x6b.html new file mode 100644 index 0000000..53de796 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x6b.html @@ -0,0 +1,174 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x6c.html b/CMSIS/Documentation/DSP/html/functions_vars_0x6c.html new file mode 100644 index 0000000..e0cf3fe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x6c.html @@ -0,0 +1,164 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x6d.html b/CMSIS/Documentation/DSP/html/functions_vars_0x6d.html new file mode 100644 index 0000000..8af18f9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x6d.html @@ -0,0 +1,178 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x6e.html b/CMSIS/Documentation/DSP/html/functions_vars_0x6e.html new file mode 100644 index 0000000..d419ba0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x6e.html @@ -0,0 +1,231 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - n -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x6f.html b/CMSIS/Documentation/DSP/html/functions_vars_0x6f.html new file mode 100644 index 0000000..44b789d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x6f.html @@ -0,0 +1,163 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x70.html b/CMSIS/Documentation/DSP/html/functions_vars_0x70.html new file mode 100644 index 0000000..6b8c3bb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x70.html @@ -0,0 +1,325 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - p -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x72.html b/CMSIS/Documentation/DSP/html/functions_vars_0x72.html new file mode 100644 index 0000000..6e80323 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x72.html @@ -0,0 +1,163 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x73.html b/CMSIS/Documentation/DSP/html/functions_vars_0x73.html new file mode 100644 index 0000000..b7b98a5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x73.html @@ -0,0 +1,173 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x74.html b/CMSIS/Documentation/DSP/html/functions_vars_0x74.html new file mode 100644 index 0000000..20900cf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x74.html @@ -0,0 +1,172 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/functions_vars_0x78.html b/CMSIS/Documentation/DSP/html/functions_vars_0x78.html new file mode 100644 index 0000000..04de4a7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/functions_vars_0x78.html @@ -0,0 +1,170 @@ + + + + + +Data Fields - Variables +CMSIS-DSP: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals.html b/CMSIS/Documentation/DSP/html/globals.html new file mode 100644 index 0000000..7cc6748 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals.html @@ -0,0 +1,357 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - _ -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x61.html b/CMSIS/Documentation/DSP/html/globals_0x61.html new file mode 100644 index 0000000..74a029b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x61.html @@ -0,0 +1,395 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - a -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x62.html b/CMSIS/Documentation/DSP/html/globals_0x62.html new file mode 100644 index 0000000..6608252 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x62.html @@ -0,0 +1,302 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - b -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x63.html b/CMSIS/Documentation/DSP/html/globals_0x63.html new file mode 100644 index 0000000..3ff4cc4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x63.html @@ -0,0 +1,723 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - c -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x64.html b/CMSIS/Documentation/DSP/html/globals_0x64.html new file mode 100644 index 0000000..efd2ff5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x64.html @@ -0,0 +1,229 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - d -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x65.html b/CMSIS/Documentation/DSP/html/globals_0x65.html new file mode 100644 index 0000000..9e6eb66 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x65.html @@ -0,0 +1,171 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - e -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x66.html b/CMSIS/Documentation/DSP/html/globals_0x66.html new file mode 100644 index 0000000..78f0788 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x66.html @@ -0,0 +1,455 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - f -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x67.html b/CMSIS/Documentation/DSP/html/globals_0x67.html new file mode 100644 index 0000000..7f921c4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x67.html @@ -0,0 +1,171 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - g -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x69.html b/CMSIS/Documentation/DSP/html/globals_0x69.html new file mode 100644 index 0000000..08fe310 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x69.html @@ -0,0 +1,214 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - i -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x6c.html b/CMSIS/Documentation/DSP/html/globals_0x6c.html new file mode 100644 index 0000000..1e50032 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x6c.html @@ -0,0 +1,242 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - l -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x6d.html b/CMSIS/Documentation/DSP/html/globals_0x6d.html new file mode 100644 index 0000000..16763cc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x6d.html @@ -0,0 +1,414 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - m -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x6e.html b/CMSIS/Documentation/DSP/html/globals_0x6e.html new file mode 100644 index 0000000..2deef6b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x6e.html @@ -0,0 +1,219 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - n -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x6f.html b/CMSIS/Documentation/DSP/html/globals_0x6f.html new file mode 100644 index 0000000..1eed6c3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x6f.html @@ -0,0 +1,188 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x70.html b/CMSIS/Documentation/DSP/html/globals_0x70.html new file mode 100644 index 0000000..24cffd1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x70.html @@ -0,0 +1,264 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - p -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x71.html b/CMSIS/Documentation/DSP/html/globals_0x71.html new file mode 100644 index 0000000..728f84a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x71.html @@ -0,0 +1,213 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - q -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x72.html b/CMSIS/Documentation/DSP/html/globals_0x72.html new file mode 100644 index 0000000..7c1c724 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x72.html @@ -0,0 +1,294 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - r -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x73.html b/CMSIS/Documentation/DSP/html/globals_0x73.html new file mode 100644 index 0000000..c36de50 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x73.html @@ -0,0 +1,534 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x74.html b/CMSIS/Documentation/DSP/html/globals_0x74.html new file mode 100644 index 0000000..39b49e5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x74.html @@ -0,0 +1,401 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - t -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x75.html b/CMSIS/Documentation/DSP/html/globals_0x75.html new file mode 100644 index 0000000..a7fdefb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x75.html @@ -0,0 +1,169 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - u -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x76.html b/CMSIS/Documentation/DSP/html/globals_0x76.html new file mode 100644 index 0000000..aae6c91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x76.html @@ -0,0 +1,181 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - v -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x77.html b/CMSIS/Documentation/DSP/html/globals_0x77.html new file mode 100644 index 0000000..22ae340 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x77.html @@ -0,0 +1,213 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - w -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_0x78.html b/CMSIS/Documentation/DSP/html/globals_0x78.html new file mode 100644 index 0000000..f6fb0a7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_0x78.html @@ -0,0 +1,174 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - x -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs.html b/CMSIS/Documentation/DSP/html/globals_defs.html new file mode 100644 index 0000000..bcde054 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs.html @@ -0,0 +1,349 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - _ -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x61.html b/CMSIS/Documentation/DSP/html/globals_defs_0x61.html new file mode 100644 index 0000000..8e1d377 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x61.html @@ -0,0 +1,214 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - a -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x62.html b/CMSIS/Documentation/DSP/html/globals_defs_0x62.html new file mode 100644 index 0000000..bd6e203 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x62.html @@ -0,0 +1,164 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x63.html b/CMSIS/Documentation/DSP/html/globals_defs_0x63.html new file mode 100644 index 0000000..4265909 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x63.html @@ -0,0 +1,160 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x64.html b/CMSIS/Documentation/DSP/html/globals_defs_0x64.html new file mode 100644 index 0000000..63c1faf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x64.html @@ -0,0 +1,177 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x66.html b/CMSIS/Documentation/DSP/html/globals_defs_0x66.html new file mode 100644 index 0000000..c239e2e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x66.html @@ -0,0 +1,166 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - f -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x69.html b/CMSIS/Documentation/DSP/html/globals_defs_0x69.html new file mode 100644 index 0000000..8a1052e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x69.html @@ -0,0 +1,163 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x6d.html b/CMSIS/Documentation/DSP/html/globals_defs_0x6d.html new file mode 100644 index 0000000..ce29bb9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x6d.html @@ -0,0 +1,186 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - m -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x6e.html b/CMSIS/Documentation/DSP/html/globals_defs_0x6e.html new file mode 100644 index 0000000..5df98b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x6e.html @@ -0,0 +1,180 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x70.html b/CMSIS/Documentation/DSP/html/globals_defs_0x70.html new file mode 100644 index 0000000..8053ba4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x70.html @@ -0,0 +1,160 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x73.html b/CMSIS/Documentation/DSP/html/globals_defs_0x73.html new file mode 100644 index 0000000..6befeef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x73.html @@ -0,0 +1,167 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x74.html b/CMSIS/Documentation/DSP/html/globals_defs_0x74.html new file mode 100644 index 0000000..295dc8f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x74.html @@ -0,0 +1,181 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x75.html b/CMSIS/Documentation/DSP/html/globals_defs_0x75.html new file mode 100644 index 0000000..25df902 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x75.html @@ -0,0 +1,161 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_defs_0x78.html b/CMSIS/Documentation/DSP/html/globals_defs_0x78.html new file mode 100644 index 0000000..1e39745 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_defs_0x78.html @@ -0,0 +1,160 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_enum.html b/CMSIS/Documentation/DSP/html/globals_enum.html new file mode 100644 index 0000000..b95e996 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_enum.html @@ -0,0 +1,140 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_eval.html b/CMSIS/Documentation/DSP/html/globals_eval.html new file mode 100644 index 0000000..c8bccb8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_eval.html @@ -0,0 +1,158 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func.html b/CMSIS/Documentation/DSP/html/globals_func.html new file mode 100644 index 0000000..07af74f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func.html @@ -0,0 +1,208 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x62.html b/CMSIS/Documentation/DSP/html/globals_func_0x62.html new file mode 100644 index 0000000..8a1d15c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x62.html @@ -0,0 +1,259 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - b -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x63.html b/CMSIS/Documentation/DSP/html/globals_func_0x63.html new file mode 100644 index 0000000..6d54b31 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x63.html @@ -0,0 +1,562 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - c -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x64.html b/CMSIS/Documentation/DSP/html/globals_func_0x64.html new file mode 100644 index 0000000..a2b402b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x64.html @@ -0,0 +1,200 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - d -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x66.html b/CMSIS/Documentation/DSP/html/globals_func_0x66.html new file mode 100644 index 0000000..2b8e304 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x66.html @@ -0,0 +1,420 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - f -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x67.html b/CMSIS/Documentation/DSP/html/globals_func_0x67.html new file mode 100644 index 0000000..c14673c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x67.html @@ -0,0 +1,163 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x69.html b/CMSIS/Documentation/DSP/html/globals_func_0x69.html new file mode 100644 index 0000000..0582c0e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x69.html @@ -0,0 +1,196 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - i -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x6c.html b/CMSIS/Documentation/DSP/html/globals_func_0x6c.html new file mode 100644 index 0000000..1b8f54b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x6c.html @@ -0,0 +1,220 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - l -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x6d.html b/CMSIS/Documentation/DSP/html/globals_func_0x6d.html new file mode 100644 index 0000000..4a84e08 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x6d.html @@ -0,0 +1,347 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - m -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x6e.html b/CMSIS/Documentation/DSP/html/globals_func_0x6e.html new file mode 100644 index 0000000..f8c30fc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x6e.html @@ -0,0 +1,176 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - n -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x6f.html b/CMSIS/Documentation/DSP/html/globals_func_0x6f.html new file mode 100644 index 0000000..c25cbc5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x6f.html @@ -0,0 +1,176 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x70.html b/CMSIS/Documentation/DSP/html/globals_func_0x70.html new file mode 100644 index 0000000..ec2f065 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x70.html @@ -0,0 +1,256 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - p -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x71.html b/CMSIS/Documentation/DSP/html/globals_func_0x71.html new file mode 100644 index 0000000..fbc68ea --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x71.html @@ -0,0 +1,196 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - q -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x72.html b/CMSIS/Documentation/DSP/html/globals_func_0x72.html new file mode 100644 index 0000000..dde6cea --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x72.html @@ -0,0 +1,256 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - r -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x73.html b/CMSIS/Documentation/DSP/html/globals_func_0x73.html new file mode 100644 index 0000000..18d4a18 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x73.html @@ -0,0 +1,398 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x74.html b/CMSIS/Documentation/DSP/html/globals_func_0x74.html new file mode 100644 index 0000000..2966d6f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x74.html @@ -0,0 +1,166 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_func_0x76.html b/CMSIS/Documentation/DSP/html/globals_func_0x76.html new file mode 100644 index 0000000..69a369b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_func_0x76.html @@ -0,0 +1,172 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_type.html b/CMSIS/Documentation/DSP/html/globals_type.html new file mode 100644 index 0000000..d34aa8b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_type.html @@ -0,0 +1,155 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars.html b/CMSIS/Documentation/DSP/html/globals_vars.html new file mode 100644 index 0000000..f22c47d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars.html @@ -0,0 +1,265 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - a -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x62.html b/CMSIS/Documentation/DSP/html/globals_vars_0x62.html new file mode 100644 index 0000000..eeed6df --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x62.html @@ -0,0 +1,188 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x63.html b/CMSIS/Documentation/DSP/html/globals_vars_0x63.html new file mode 100644 index 0000000..8092fde --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x63.html @@ -0,0 +1,314 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - c -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x64.html b/CMSIS/Documentation/DSP/html/globals_vars_0x64.html new file mode 100644 index 0000000..8514f50 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x64.html @@ -0,0 +1,165 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x65.html b/CMSIS/Documentation/DSP/html/globals_vars_0x65.html new file mode 100644 index 0000000..92d6456 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x65.html @@ -0,0 +1,167 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x66.html b/CMSIS/Documentation/DSP/html/globals_vars_0x66.html new file mode 100644 index 0000000..477906d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x66.html @@ -0,0 +1,176 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x67.html b/CMSIS/Documentation/DSP/html/globals_vars_0x67.html new file mode 100644 index 0000000..1e8699c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x67.html @@ -0,0 +1,164 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x69.html b/CMSIS/Documentation/DSP/html/globals_vars_0x69.html new file mode 100644 index 0000000..aac243b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x69.html @@ -0,0 +1,168 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x6c.html b/CMSIS/Documentation/DSP/html/globals_vars_0x6c.html new file mode 100644 index 0000000..a12551f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x6c.html @@ -0,0 +1,178 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x6d.html b/CMSIS/Documentation/DSP/html/globals_vars_0x6d.html new file mode 100644 index 0000000..4a5ba99 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x6d.html @@ -0,0 +1,194 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x6e.html b/CMSIS/Documentation/DSP/html/globals_vars_0x6e.html new file mode 100644 index 0000000..64bfcc3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x6e.html @@ -0,0 +1,172 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x6f.html b/CMSIS/Documentation/DSP/html/globals_vars_0x6f.html new file mode 100644 index 0000000..b094ae5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x6f.html @@ -0,0 +1,168 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x72.html b/CMSIS/Documentation/DSP/html/globals_vars_0x72.html new file mode 100644 index 0000000..b97de67 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x72.html @@ -0,0 +1,194 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x73.html b/CMSIS/Documentation/DSP/html/globals_vars_0x73.html new file mode 100644 index 0000000..688f3e7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x73.html @@ -0,0 +1,279 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x74.html b/CMSIS/Documentation/DSP/html/globals_vars_0x74.html new file mode 100644 index 0000000..8f00461 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x74.html @@ -0,0 +1,367 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - t -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x76.html b/CMSIS/Documentation/DSP/html/globals_vars_0x76.html new file mode 100644 index 0000000..083f516 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x76.html @@ -0,0 +1,165 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x77.html b/CMSIS/Documentation/DSP/html/globals_vars_0x77.html new file mode 100644 index 0000000..3d4f6ce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x77.html @@ -0,0 +1,209 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - w -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/globals_vars_0x78.html b/CMSIS/Documentation/DSP/html/globals_vars_0x78.html new file mode 100644 index 0000000..43e5154 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/globals_vars_0x78.html @@ -0,0 +1,167 @@ + + + + + +Globals +CMSIS-DSP: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/group___basic_abs.html b/CMSIS/Documentation/DSP/html/group___basic_abs.html new file mode 100644 index 0000000..3fe2979 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_abs.html @@ -0,0 +1,334 @@ + + + + + +Vector Absolute Value +CMSIS-DSP: Vector Absolute Value + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Absolute Value
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_abs_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Floating-point vector absolute value.
     
    void arm_abs_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Q15 vector absolute value.
     
    void arm_abs_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Q31 vector absolute value.
     
    void arm_abs_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Q7 vector absolute value.
     
    +

    Description

    +

    Computes the absolute value of a vector on an element-by-element basis.

    +
            
    +    pDst[n] = abs(pSrc[n]),   0 <= n < blockSize.        
    +

    The functions support in-place computation allowing the source and destination pointers to reference the same memory buffer. There are separate functions for floating-point, Q7, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_abs_f32 (float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input buffer
    [out]*pDstpoints to the output buffer
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_abs_q15 (q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input buffer
    [out]*pDstpoints to the output buffer
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q15 value -1 (0x8000) will be saturated to the maximum allowable positive value 0x7FFF.
    + +

    References __SIMD32_CONST, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_abs_q31 (q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input buffer
    [out]*pDstpoints to the output buffer
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q31 value -1 (0x80000000) will be saturated to the maximum allowable positive value 0x7FFFFFFF.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_abs_q7 (q7_tpSrc,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input buffer
    [out]*pDstpoints to the output buffer
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +
    Conditions for optimum performance
    Input and output buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q7 value -1 (0x80) will be saturated to the maximum allowable positive value 0x7F.
    + +

    References blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___basic_abs.js b/CMSIS/Documentation/DSP/html/group___basic_abs.js new file mode 100644 index 0000000..6dbcc94 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_abs.js @@ -0,0 +1,7 @@ +var group___basic_abs = +[ + [ "arm_abs_f32", "group___basic_abs.html#ga421b6275f9d35f50286c0ff3beceff02", null ], + [ "arm_abs_q15", "group___basic_abs.html#ga39f92964c9b649ba252e26ebe7b95594", null ], + [ "arm_abs_q31", "group___basic_abs.html#ga59eafcdcdb52da60d37f20aec6ff4577", null ], + [ "arm_abs_q7", "group___basic_abs.html#gadc30985e33fbf96802a5a7954dece3b1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___basic_add.html b/CMSIS/Documentation/DSP/html/group___basic_add.html new file mode 100644 index 0000000..8afefba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_add.html @@ -0,0 +1,361 @@ + + + + + +Vector Addition +CMSIS-DSP: Vector Addition + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Addition
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_add_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector addition.
     
    void arm_add_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector addition.
     
    void arm_add_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector addition.
     
    void arm_add_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector addition.
     
    +

    Description

    +

    Element-by-element addition of two vectors.

    +
            
    +    pDst[n] = pSrcA[n] + pSrcB[n],   0 <= n < blockSize.        
    +

    There are separate functions for floating-point, Q7, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_add_f32 (float32_tpSrcA,
    float32_tpSrcB,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_dotproduct_example_f32.c, and arm_sin_cos_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_add_q15 (q15_tpSrcA,
    q15_tpSrcB,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_add_q31 (q31_tpSrcA,
    q31_tpSrcB,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range[0x80000000 0x7FFFFFFF] will be saturated.
    + +

    References blockSize, and clip_q63_to_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_add_q7 (q7_tpSrcA,
    q7_tpSrcB,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q7 range [0x80 0x7F] will be saturated.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___basic_add.js b/CMSIS/Documentation/DSP/html/group___basic_add.js new file mode 100644 index 0000000..d2b67ce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_add.js @@ -0,0 +1,7 @@ +var group___basic_add = +[ + [ "arm_add_f32", "group___basic_add.html#ga6a904a547413b10565dd1d251c6bafbd", null ], + [ "arm_add_q15", "group___basic_add.html#gabb51285a41f511670bbff62fc0e1bf62", null ], + [ "arm_add_q31", "group___basic_add.html#ga24d6c3f7f8b9fae4847c0c3f26a39a3b", null ], + [ "arm_add_q7", "group___basic_add.html#gaed633f415a7840a66861debca2dfb96b", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___basic_mult.html b/CMSIS/Documentation/DSP/html/group___basic_mult.html new file mode 100644 index 0000000..8a7190f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_mult.html @@ -0,0 +1,365 @@ + + + + + +Vector Multiplication +CMSIS-DSP: Vector Multiplication + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Multiplication
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_mult_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector multiplication.
     
    void arm_mult_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector multiplication.
     
    void arm_mult_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector multiplication.
     
    void arm_mult_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector multiplication.
     
    +

    Description

    +

    Element-by-element multiplication of two vectors.

    +
            
    +    pDst[n] = pSrcA[n] * pSrcB[n],   0 <= n < blockSize.        
    +

    There are separate functions for floating-point, Q7, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mult_f32 (float32_tpSrcA,
    float32_tpSrcB,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_dotproduct_example_f32.c, arm_sin_cos_example_f32.c, and arm_variance_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by arm_dct4_f32(), and main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mult_q15 (q15_tpSrcA,
    q15_tpSrcB,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    + +

    References __SIMD32, and blockSize.

    + +

    Referenced by arm_dct4_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mult_q31 (q31_tpSrcA,
    q31_tpSrcB,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range[0x80000000 0x7FFFFFFF] will be saturated.
    + +

    References blockSize, and clip_q63_to_q31().

    + +

    Referenced by arm_dct4_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mult_q7 (q7_tpSrcA,
    q7_tpSrcB,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q7 range [0x80 0x7F] will be saturated.
    + +

    References __PACKq7, __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___basic_mult.js b/CMSIS/Documentation/DSP/html/group___basic_mult.js new file mode 100644 index 0000000..a854cd3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_mult.js @@ -0,0 +1,7 @@ +var group___basic_mult = +[ + [ "arm_mult_f32", "group___basic_mult.html#gaca3f0b8227da431ab29225b88888aa32", null ], + [ "arm_mult_q15", "group___basic_mult.html#gafb0778d27ed98a2a6f2ecb7d48cc8c75", null ], + [ "arm_mult_q31", "group___basic_mult.html#ga3528c0f54a0607acc603f0490d3ca6c6", null ], + [ "arm_mult_q7", "group___basic_mult.html#ga16677275ed83ff0878da531e875c27ef", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___basic_sub.html b/CMSIS/Documentation/DSP/html/group___basic_sub.html new file mode 100644 index 0000000..89f6554 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_sub.html @@ -0,0 +1,361 @@ + + + + + +Vector Subtraction +CMSIS-DSP: Vector Subtraction + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Subtraction
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_sub_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize)
     Floating-point vector subtraction.
     
    void arm_sub_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize)
     Q15 vector subtraction.
     
    void arm_sub_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize)
     Q31 vector subtraction.
     
    void arm_sub_q7 (q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize)
     Q7 vector subtraction.
     
    +

    Description

    +

    Element-by-element subtraction of two vectors.

    +
            
    +    pDst[n] = pSrcA[n] - pSrcB[n],   0 <= n < blockSize.        
    +

    There are separate functions for floating-point, Q7, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_sub_f32 (float32_tpSrcA,
    float32_tpSrcB,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_signal_converge_example_f32.c, and arm_variance_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_sub_q15 (q15_tpSrcA,
    q15_tpSrcB,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_sub_q31 (q31_tpSrcA,
    q31_tpSrcB,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range [0x80000000 0x7FFFFFFF] will be saturated.
    + +

    References blockSize, and clip_q63_to_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_sub_q7 (q7_tpSrcA,
    q7_tpSrcB,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q7 range [0x80 0x7F] will be saturated.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___basic_sub.js b/CMSIS/Documentation/DSP/html/group___basic_sub.js new file mode 100644 index 0000000..24142f5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___basic_sub.js @@ -0,0 +1,7 @@ +var group___basic_sub = +[ + [ "arm_sub_f32", "group___basic_sub.html#ga7f975a472de286331134227c08aad826", null ], + [ "arm_sub_q15", "group___basic_sub.html#ga997a8ee93088d15bda23c325d455b588", null ], + [ "arm_sub_q31", "group___basic_sub.html#ga28aa6908d092752144413e21933dc878", null ], + [ "arm_sub_q7", "group___basic_sub.html#gab09941de7dfeb247e5c29b406a435fcc", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___bilinear_interpolate.html b/CMSIS/Documentation/DSP/html/group___bilinear_interpolate.html new file mode 100644 index 0000000..53b464f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___bilinear_interpolate.html @@ -0,0 +1,374 @@ + + + + + +Bilinear Interpolation +CMSIS-DSP: Bilinear Interpolation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Bilinear Interpolation
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    static __INLINE float32_t arm_bilinear_interp_f32 (const arm_bilinear_interp_instance_f32 *S, float32_t X, float32_t Y)
     Floating-point bilinear interpolation.
     
    static __INLINE q31_t arm_bilinear_interp_q31 (arm_bilinear_interp_instance_q31 *S, q31_t X, q31_t Y)
     Q31 bilinear interpolation.
     
    static __INLINE q15_t arm_bilinear_interp_q15 (arm_bilinear_interp_instance_q15 *S, q31_t X, q31_t Y)
     Q15 bilinear interpolation.
     
    static __INLINE q7_t arm_bilinear_interp_q7 (arm_bilinear_interp_instance_q7 *S, q31_t X, q31_t Y)
     Q7 bilinear interpolation.
     
    +

    Description

    +

    Bilinear interpolation is an extension of linear interpolation applied to a two dimensional grid. The underlying function f(x, y) is sampled on a regular grid and the interpolation process determines values between the grid points. Bilinear interpolation is equivalent to two step linear interpolation, first in the x-dimension and then in the y-dimension. Bilinear interpolation is often used in image processing to rescale images. The CMSIS DSP library provides bilinear interpolation functions for Q7, Q15, Q31, and floating-point data types.

    +

    Algorithm

    +
    The instance structure used by the bilinear interpolation functions describes a two dimensional data table. For floating-point, the instance structure is defined as:
    +  typedef struct
    +  {
    +    uint16_t numRows;
    +    uint16_t numCols;
    +    float32_t *pData;
    +} arm_bilinear_interp_instance_f32;
    +
    +
    where numRows specifies the number of rows in the table; numCols specifies the number of columns in the table; and pData points to an array of size numRows*numCols values. The data table pTable is organized in row order and the supplied data values fall on integer indexes. That is, table element (x,y) is located at pTable[x + y*numCols] where x and y are integers.
    +
    Let (x, y) specify the desired interpolation point. Then define:
    +    XF = floor(x)
    +    YF = floor(y)
    +
    +
    The interpolated output point is computed as:
    + f(x, y) = f(XF, YF) * (1-(x-XF)) * (1-(y-YF))
    +          + f(XF+1, YF) * (x-XF)*(1-(y-YF))
    +          + f(XF, YF+1) * (1-(x-XF))*(y-YF)
    +          + f(XF+1, YF+1) * (x-XF)*(y-YF)
    +
    Note that the coordinates (x, y) contain integer and fractional components. The integer components specify which portion of the table to use while the fractional components control the interpolation processor.
    +
    if (x,y) are outside of the table boundary, Bilinear interpolation returns zero output.
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE float32_t arm_bilinear_interp_f32 (const arm_bilinear_interp_instance_f32S,
    float32_t X,
    float32_t Y 
    )
    +
    +static
    +
    +
    Parameters
    + + + + +
    [in,out]Spoints to an instance of the interpolation structure.
    [in]Xinterpolation coordinate.
    [in]Yinterpolation coordinate.
    +
    +
    +
    Returns
    out interpolated value.
    + +

    References arm_bilinear_interp_instance_f32::numCols, arm_bilinear_interp_instance_f32::numRows, and arm_bilinear_interp_instance_f32::pData.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE q15_t arm_bilinear_interp_q15 (arm_bilinear_interp_instance_q15S,
    q31_t X,
    q31_t Y 
    )
    +
    +static
    +
    +
    Parameters
    + + + + +
    [in,out]Spoints to an instance of the interpolation structure.
    [in]Xinterpolation coordinate in 12.20 format.
    [in]Yinterpolation coordinate in 12.20 format.
    +
    +
    +
    Returns
    out interpolated value.
    + +

    References arm_bilinear_interp_instance_q15::numCols, arm_bilinear_interp_instance_q15::numRows, and arm_bilinear_interp_instance_q15::pData.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE q31_t arm_bilinear_interp_q31 (arm_bilinear_interp_instance_q31S,
    q31_t X,
    q31_t Y 
    )
    +
    +static
    +
    +
    Parameters
    + + + + +
    [in,out]Spoints to an instance of the interpolation structure.
    [in]Xinterpolation coordinate in 12.20 format.
    [in]Yinterpolation coordinate in 12.20 format.
    +
    +
    +
    Returns
    out interpolated value.
    + +

    References arm_bilinear_interp_instance_q31::numCols, arm_bilinear_interp_instance_q31::numRows, and arm_bilinear_interp_instance_q31::pData.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE q7_t arm_bilinear_interp_q7 (arm_bilinear_interp_instance_q7S,
    q31_t X,
    q31_t Y 
    )
    +
    +static
    +
    +
    Parameters
    + + + + +
    [in,out]Spoints to an instance of the interpolation structure.
    [in]Xinterpolation coordinate in 12.20 format.
    [in]Yinterpolation coordinate in 12.20 format.
    +
    +
    +
    Returns
    out interpolated value.
    + +

    References arm_bilinear_interp_instance_q7::numCols, arm_bilinear_interp_instance_q7::numRows, and arm_bilinear_interp_instance_q7::pData.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___bilinear_interpolate.js b/CMSIS/Documentation/DSP/html/group___bilinear_interpolate.js new file mode 100644 index 0000000..b75cdc4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___bilinear_interpolate.js @@ -0,0 +1,7 @@ +var group___bilinear_interpolate = +[ + [ "arm_bilinear_interp_f32", "group___bilinear_interpolate.html#gab49a4c0f64854903d996d01ba38f711a", null ], + [ "arm_bilinear_interp_q15", "group___bilinear_interpolate.html#gaa8dffbc2a01bb7accf231384498ec85e", null ], + [ "arm_bilinear_interp_q31", "group___bilinear_interpolate.html#ga202a033c8a2ad3678b136f93153b6d13", null ], + [ "arm_bilinear_interp_q7", "group___bilinear_interpolate.html#gade8db9706a3ae9ad03b2750a239d2ee6", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.html b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.html new file mode 100644 index 0000000..1523e70 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.html @@ -0,0 +1,662 @@ + + + + + +Biquad Cascade IIR Filters Using Direct Form I Structure +CMSIS-DSP: Biquad Cascade IIR Filters Using Direct Form I Structure + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Biquad Cascade IIR Filters Using Direct Form I Structure
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_biquad_cascade_df1_f32 (const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point Biquad cascade filter.
     
    void arm_biquad_cascade_df1_fast_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Fast but less precise processing function for the Q15 Biquad cascade filter for Cortex-M3 and Cortex-M4.
     
    void arm_biquad_cascade_df1_fast_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Fast but less precise processing function for the Q31 Biquad cascade filter for Cortex-M3 and Cortex-M4.
     
    void arm_biquad_cascade_df1_init_f32 (arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point Biquad cascade filter.
     
    void arm_biquad_cascade_df1_init_q15 (arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift)
     Initialization function for the Q15 Biquad cascade filter.
     
    void arm_biquad_cascade_df1_init_q31 (arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift)
     Initialization function for the Q31 Biquad cascade filter.
     
    void arm_biquad_cascade_df1_q15 (const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 Biquad cascade filter.
     
    void arm_biquad_cascade_df1_q31 (const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 Biquad cascade filter.
     
    +

    Description

    +

    This set of functions implements arbitrary order recursive (IIR) filters. The filters are implemented as a cascade of second order Biquad sections. The functions support Q15, Q31 and floating-point data types. Fast version of Q15 and Q31 also supported on CortexM4 and Cortex-M3.

    +

    The functions operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc points to the array of input data and pDst points to the array of output data. Both arrays contain blockSize values.

    +
    Algorithm
    Each Biquad stage implements a second order filter using the difference equation:
        
    +    y[n] = b0 * x[n] + b1 * x[n-1] + b2 * x[n-2] + a1 * y[n-1] + a2 * y[n-2]    
    +
    A Direct Form I algorithm is used with 5 coefficients and 4 state variables per stage.
    +Biquad.gif +
    +Single Biquad filter stage
    + Coefficients b0, b1 and b2 multiply the input signal x[n] and are referred to as the feedforward coefficients. Coefficients a1 and a2 multiply the output signal y[n] and are referred to as the feedback coefficients. Pay careful attention to the sign of the feedback coefficients. Some design tools use the difference equation
        
    +    y[n] = b0 * x[n] + b1 * x[n-1] + b2 * x[n-2] - a1 * y[n-1] - a2 * y[n-2]    
    +
    In this case the feedback coefficients a1 and a2 must be negated when used with the CMSIS DSP Library.
    +
    Higher order filters are realized as a cascade of second order sections. numStages refers to the number of second order stages used. For example, an 8th order filter would be realized with numStages=4 second order stages.
    +BiquadCascade.gif +
    +8th order filter using a cascade of Biquad stages
    + A 9th order filter would be realized with numStages=5 second order stages with the coefficients for one of the stages configured as a first order filter (b2=0 and a2=0).
    +
    The pState points to state variables array. Each Biquad stage has 4 state variables x[n-1], x[n-2], y[n-1], and y[n-2]. The state variables are arranged in the pState array as:
        
    +    {x[n-1], x[n-2], y[n-1], y[n-2]}    
    +
    +
    The 4 state variables for stage 1 are first, then the 4 state variables for stage 2, and so on. The state array has a total length of 4*numStages values. The state variables are updated after each block of data is processed, the coefficients are untouched.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable arrays cannot be shared. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Init Functions
    There is also an associated initialization function for each data type. The initialization function performs following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numStages, pCoeffs, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros before static initialization. The code below statically initializes each of the 3 different data type filter instance structures
        
    +    arm_biquad_casd_df1_inst_f32 S1 = {numStages, pState, pCoeffs};    
    +    arm_biquad_casd_df1_inst_q15 S2 = {numStages, pState, pCoeffs, postShift};    
    +    arm_biquad_casd_df1_inst_q31 S3 = {numStages, pState, pCoeffs, postShift};    
    +
    where numStages is the number of Biquad stages in the filter; pState is the address of the state buffer; pCoeffs is the address of the coefficient buffer; postShift shift to be applied.
    +
    Fixed-Point Behavior
    Care must be taken when using the Q15 and Q31 versions of the Biquad Cascade filter functions. Following issues must be considered:
      +
    • Scaling of coefficients
    • +
    • Filter gain
    • +
    • Overflow and saturation
    • +
    +
    +
    Scaling of coefficients: Filter coefficients are represented as fractional values and coefficients are restricted to lie in the range [-1 +1). The fixed-point functions have an additional scaling parameter postShift which allow the filter coefficients to exceed the range [+1 -1). At the output of the filter's accumulator is a shift register which shifts the result by postShift bits.
    +BiquadPostshift.gif +
    +Fixed-point Biquad with shift by postShift bits after accumulator
    + This essentially scales the filter coefficients by 2^postShift. For example, to realize the coefficients
        
    +   {1.5, -0.8, 1.2, 1.6, -0.9}    
    +
    set the pCoeffs array to:
        
    +   {0.75, -0.4, 0.6, 0.8, -0.45}    
    +
    and set postShift=1
    +
    Filter gain: The frequency response of a Biquad filter is a function of its coefficients. It is possible for the gain through the filter to exceed 1.0 meaning that the filter increases the amplitude of certain frequencies. This means that an input signal with amplitude < 1.0 may result in an output > 1.0 and these are saturated or overflowed based on the implementation of the filter. To avoid this behavior the filter needs to be scaled down such that its peak gain < 1.0 or the input signal must be scaled down so that the combination of input and filter are never overflowed.
    +
    Overflow and saturation: For Q15 and Q31 versions, it is described separately as part of the function specific documentation below.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_f32 (const arm_biquad_casd_df1_inst_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point Biquad cascade structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    + +

    References blockSize, arm_biquad_casd_df1_inst_f32::numStages, arm_biquad_casd_df1_inst_f32::pCoeffs, and arm_biquad_casd_df1_inst_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_fast_q15 (const arm_biquad_casd_df1_inst_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 Biquad cascade structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This fast version uses a 32-bit accumulator with 2.30 format. The accumulator maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around and distorts the result. In order to avoid overflows completely the input signal must be scaled down by two bits and lie in the range [-0.25 +0.25). The 2.30 accumulator is then shifted by postShift bits and the result truncated to 1.15 format by discarding the low 16 bits.
    +
    Refer to the function arm_biquad_cascade_df1_q15() for a slower implementation of this function which uses 64-bit accumulation to avoid wrap around distortion. Both the slow and the fast versions use the same instance structure. Use the function arm_biquad_cascade_df1_init_q15() to initialize the filter structure.
    + +

    References __SIMD32, arm_biquad_casd_df1_inst_q15::numStages, arm_biquad_casd_df1_inst_q15::pCoeffs, arm_biquad_casd_df1_inst_q15::postShift, and arm_biquad_casd_df1_inst_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_fast_q31 (const arm_biquad_casd_df1_inst_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 Biquad cascade structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This function is optimized for speed at the expense of fixed-point precision and overflow protection. The result of each 1.31 x 1.31 multiplication is truncated to 2.30 format. These intermediate results are added to a 2.30 accumulator. Finally, the accumulator is saturated and converted to a 1.31 result. The fast version has the same overflow behavior as the standard version and provides less precision since it discards the low 32 bits of each multiplication result. In order to avoid overflows completely the input signal must be scaled down by two bits and lie in the range [-0.25 +0.25). Use the intialization function arm_biquad_cascade_df1_init_q31() to initialize filter structure.
    +
    Refer to the function arm_biquad_cascade_df1_q31() for a slower implementation of this function which uses 64-bit accumulation to provide higher precision. Both the slow and the fast versions use the same instance structure. Use the function arm_biquad_cascade_df1_init_q31() to initialize the filter structure.
    + +

    References mult_32x32_keep32_R, multAcc_32x32_keep32_R, arm_biquad_casd_df1_inst_q31::numStages, arm_biquad_casd_df1_inst_q31::pCoeffs, arm_biquad_casd_df1_inst_q31::postShift, and arm_biquad_casd_df1_inst_q31::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_init_f32 (arm_biquad_casd_df1_inst_f32S,
    uint8_t numStages,
    float32_tpCoeffs,
    float32_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the floating-point Biquad cascade structure.
    [in]numStagesnumber of 2nd order stages in the filter.
    [in]*pCoeffspoints to the filter coefficients array.
    [in]*pStatepoints to the state array.
    +
    +
    +
    Returns
    none
    +

    Coefficient and State Ordering:

    +
    The coefficients are stored in the array pCoeffs in the following order:
        
    +    {b10, b11, b12, a11, a12, b20, b21, b22, a21, a22, ...}    
    +
    +
    where b1x and a1x are the coefficients for the first stage, b2x and a2x are the coefficients for the second stage, and so on. The pCoeffs array contains a total of 5*numStages values.
    +
    The pState is a pointer to state array. Each Biquad stage has 4 state variables x[n-1], x[n-2], y[n-1], and y[n-2]. The state variables are arranged in the pState array as:
        
    +    {x[n-1], x[n-2], y[n-1], y[n-2]}    
    +
    The 4 state variables for stage 1 are first, then the 4 state variables for stage 2, and so on. The state array has a total length of 4*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    + +

    References arm_biquad_casd_df1_inst_f32::numStages, arm_biquad_casd_df1_inst_f32::pCoeffs, and arm_biquad_casd_df1_inst_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_init_q15 (arm_biquad_casd_df1_inst_q15S,
    uint8_t numStages,
    q15_tpCoeffs,
    q15_tpState,
    int8_t postShift 
    )
    +
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the Q15 Biquad cascade structure.
    [in]numStagesnumber of 2nd order stages in the filter.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]postShiftShift to be applied to the accumulator result. Varies according to the coefficients format
    +
    +
    +
    Returns
    none
    +

    Coefficient and State Ordering:

    +
    The coefficients are stored in the array pCoeffs in the following order:
        
    +    {b10, 0, b11, b12, a11, a12, b20, 0, b21, b22, a21, a22, ...}    
    +
    where b1x and a1x are the coefficients for the first stage, b2x and a2x are the coefficients for the second stage, and so on. The pCoeffs array contains a total of 6*numStages values. The zero coefficient between b1 and b2 facilities use of 16-bit SIMD instructions on the Cortex-M4.
    +
    The state variables are stored in the array pState. Each Biquad stage has 4 state variables x[n-1], x[n-2], y[n-1], and y[n-2]. The state variables are arranged in the pState array as:
        
    +    {x[n-1], x[n-2], y[n-1], y[n-2]}    
    +
    The 4 state variables for stage 1 are first, then the 4 state variables for stage 2, and so on. The state array has a total length of 4*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    + +

    References arm_biquad_casd_df1_inst_q15::numStages, arm_biquad_casd_df1_inst_q15::pCoeffs, arm_biquad_casd_df1_inst_q15::postShift, and arm_biquad_casd_df1_inst_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_init_q31 (arm_biquad_casd_df1_inst_q31S,
    uint8_t numStages,
    q31_tpCoeffs,
    q31_tpState,
    int8_t postShift 
    )
    +
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the Q31 Biquad cascade structure.
    [in]numStagesnumber of 2nd order stages in the filter.
    [in]*pCoeffspoints to the filter coefficients buffer.
    [in]*pStatepoints to the state buffer.
    [in]postShiftShift to be applied after the accumulator. Varies according to the coefficients format
    +
    +
    +
    Returns
    none
    +

    Coefficient and State Ordering:

    +
    The coefficients are stored in the array pCoeffs in the following order:
        
    +    {b10, b11, b12, a11, a12, b20, b21, b22, a21, a22, ...}    
    +
    where b1x and a1x are the coefficients for the first stage, b2x and a2x are the coefficients for the second stage, and so on. The pCoeffs array contains a total of 5*numStages values.
    +
    The pState points to state variables array. Each Biquad stage has 4 state variables x[n-1], x[n-2], y[n-1], and y[n-2]. The state variables are arranged in the pState array as:
        
    +    {x[n-1], x[n-2], y[n-1], y[n-2]}    
    +
    The 4 state variables for stage 1 are first, then the 4 state variables for stage 2, and so on. The state array has a total length of 4*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    References arm_biquad_casd_df1_inst_q31::numStages, arm_biquad_casd_df1_inst_q31::pCoeffs, arm_biquad_casd_df1_inst_q31::postShift, and arm_biquad_casd_df1_inst_q31::pState.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_q15 (const arm_biquad_casd_df1_inst_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 Biquad cascade structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the location where the output result is written.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both coefficients and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. The accumulator is then shifted by postShift bits to truncate the result to 1.15 format by discarding the low 16 bits. Finally, the result is saturated to 1.15 format.
    +
    Refer to the function arm_biquad_cascade_df1_fast_q15() for a faster but less precise implementation of this filter for Cortex-M3 and Cortex-M4.
    + +

    References __SIMD32, arm_biquad_casd_df1_inst_q15::numStages, arm_biquad_casd_df1_inst_q15::pCoeffs, arm_biquad_casd_df1_inst_q15::postShift, and arm_biquad_casd_df1_inst_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df1_q31 (const arm_biquad_casd_df1_inst_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 Biquad cascade structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by 2 bits and lie in the range [-0.25 +0.25). After all 5 multiply-accumulates are performed, the 2.62 accumulator is shifted by postShift bits and the result truncated to 1.31 format by discarding the low 32 bits.
    +
    Refer to the function arm_biquad_cascade_df1_fast_q31() for a faster but less precise implementation of this filter for Cortex-M3 and Cortex-M4.
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    References blockSize, arm_biquad_casd_df1_inst_q31::numStages, arm_biquad_casd_df1_inst_q31::pCoeffs, arm_biquad_casd_df1_inst_q31::postShift, and arm_biquad_casd_df1_inst_q31::pState.

    + +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.js b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.js new file mode 100644 index 0000000..34b1303 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1.js @@ -0,0 +1,11 @@ +var group___biquad_cascade_d_f1 = +[ + [ "arm_biquad_cascade_df1_f32", "group___biquad_cascade_d_f1.html#gaa0dbe330d763e3c1d8030b3ef12d5bdc", null ], + [ "arm_biquad_cascade_df1_fast_q15", "group___biquad_cascade_d_f1.html#gaffb9792c0220882efd4c58f3c6a05fd7", null ], + [ "arm_biquad_cascade_df1_fast_q31", "group___biquad_cascade_d_f1.html#ga456390f5e448afad3a38bed7d6e380e3", null ], + [ "arm_biquad_cascade_df1_init_f32", "group___biquad_cascade_d_f1.html#ga8e73b69a788e681a61bccc8959d823c5", null ], + [ "arm_biquad_cascade_df1_init_q15", "group___biquad_cascade_d_f1.html#gad54c724132f6d742a444eb6df0e9c731", null ], + [ "arm_biquad_cascade_df1_init_q31", "group___biquad_cascade_d_f1.html#gaf42a44f9b16d61e636418c83eefe577b", null ], + [ "arm_biquad_cascade_df1_q15", "group___biquad_cascade_d_f1.html#gadd66a0aefdc645031d607b0a5b37a942", null ], + [ "arm_biquad_cascade_df1_q31", "group___biquad_cascade_d_f1.html#ga27b0c54da702713976e5202d20b4473f", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.html b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.html new file mode 100644 index 0000000..2dc3924 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.html @@ -0,0 +1,308 @@ + + + + + +High Precision Q31 Biquad Cascade Filter +CMSIS-DSP: High Precision Q31 Biquad Cascade Filter + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    High Precision Q31 Biquad Cascade Filter
    +
    +
    + + + + + + +

    +Functions

    void arm_biquad_cas_df1_32x64_init_q31 (arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift)
     
    void arm_biquad_cas_df1_32x64_q31 (const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     
    +

    Description

    +

    This function implements a high precision Biquad cascade filter which operates on Q31 data values. The filter coefficients are in 1.31 format and the state variables are in 1.63 format. The double precision state variables reduce quantization noise in the filter and provide a cleaner output. These filters are particularly useful when implementing filters in which the singularities are close to the unit circle. This is common for low pass or high pass filters with very low cutoff frequencies.

    +

    The function operates on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc and pDst points to input and output arrays containing blockSize Q31 values.

    +
    Algorithm
    Each Biquad stage implements a second order filter using the difference equation:
        
    +    y[n] = b0 * x[n] + b1 * x[n-1] + b2 * x[n-2] + a1 * y[n-1] + a2 * y[n-2]    
    +
    A Direct Form I algorithm is used with 5 coefficients and 4 state variables per stage.
    +Biquad.gif +
    +Single Biquad filter stage
    + Coefficients b0, b1, and b2 multiply the input signal x[n] and are referred to as the feedforward coefficients. Coefficients a1 and a2 multiply the output signal y[n] and are referred to as the feedback coefficients. Pay careful attention to the sign of the feedback coefficients. Some design tools use the difference equation
        
    +    y[n] = b0 * x[n] + b1 * x[n-1] + b2 * x[n-2] - a1 * y[n-1] - a2 * y[n-2]    
    +
    In this case the feedback coefficients a1 and a2 must be negated when used with the CMSIS DSP Library.
    +
    Higher order filters are realized as a cascade of second order sections. numStages refers to the number of second order stages used. For example, an 8th order filter would be realized with numStages=4 second order stages.
    +BiquadCascade.gif +
    +8th order filter using a cascade of Biquad stages
    + A 9th order filter would be realized with numStages=5 second order stages with the coefficients for one of the stages configured as a first order filter (b2=0 and a2=0).
    +
    The pState points to state variables array . Each Biquad stage has 4 state variables x[n-1], x[n-2], y[n-1], and y[n-2] and each state variable in 1.63 format to improve precision. The state variables are arranged in the array as:
        
    +    {x[n-1], x[n-2], y[n-1], y[n-2]}    
    +
    +
    The 4 state variables for stage 1 are first, then the 4 state variables for stage 2, and so on. The state array has a total length of 4*numStages values of data in 1.63 format. The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable arrays cannot be shared.
    +
    Init Function
    There is also an associated initialization function which performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numStages, pCoeffs, postShift, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros before static initialization. For example, to statically initialize the filter instance structure use
        
    +    arm_biquad_cas_df1_32x64_ins_q31 S1 = {numStages, pState, pCoeffs, postShift};    
    +
    where numStages is the number of Biquad stages in the filter; pState is the address of the state buffer; pCoeffs is the address of the coefficient buffer; postShift shift to be applied which is described in detail below.
    +
    Fixed-Point Behavior
    Care must be taken while using Biquad Cascade 32x64 filter function. Following issues must be considered:
      +
    • Scaling of coefficients
    • +
    • Filter gain
    • +
    • Overflow and saturation
    • +
    +
    +
    Filter coefficients are represented as fractional values and restricted to lie in the range [-1 +1). The processing function has an additional scaling parameter postShift which allows the filter coefficients to exceed the range [+1 -1). At the output of the filter's accumulator is a shift register which shifts the result by postShift bits.
    +BiquadPostshift.gif +
    +Fixed-point Biquad with shift by postShift bits after accumulator
    + This essentially scales the filter coefficients by 2^postShift. For example, to realize the coefficients
        
    +   {1.5, -0.8, 1.2, 1.6, -0.9}    
    +
    set the Coefficient array to:
        
    +   {0.75, -0.4, 0.6, 0.8, -0.45}    
    +
    and set postShift=1
    +
    The second thing to keep in mind is the gain through the filter. The frequency response of a Biquad filter is a function of its coefficients. It is possible for the gain through the filter to exceed 1.0 meaning that the filter increases the amplitude of certain frequencies. This means that an input signal with amplitude < 1.0 may result in an output > 1.0 and these are saturated or overflowed based on the implementation of the filter. To avoid this behavior the filter needs to be scaled down such that its peak gain < 1.0 or the input signal must be scaled down so that the combination of input and filter are never overflowed.
    +
    The third item to consider is the overflow and saturation behavior of the fixed-point Q31 version. This is described in the function specific documentation below.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cas_df1_32x64_init_q31 (arm_biquad_cas_df1_32x64_ins_q31S,
    uint8_t numStages,
    q31_tpCoeffs,
    q63_tpState,
    uint8_t postShift 
    )
    +
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the high precision Q31 Biquad cascade filter structure.
    [in]numStagesnumber of 2nd order stages in the filter.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]postShiftShift to be applied after the accumulator. Varies according to the coefficients format.
    +
    +
    +
    Returns
    none
    +

    Coefficient and State Ordering:

    +
    The coefficients are stored in the array pCoeffs in the following order:
        
    +    {b10, b11, b12, a11, a12, b20, b21, b22, a21, a22, ...}    
    +
    where b1x and a1x are the coefficients for the first stage, b2x and a2x are the coefficients for the second stage, and so on. The pCoeffs array contains a total of 5*numStages values.
    +
    The pState points to state variables array and size of each state variable is 1.63 format. Each Biquad stage has 4 state variables x[n-1], x[n-2], y[n-1], and y[n-2]. The state variables are arranged in the state array as:
        
    +    {x[n-1], x[n-2], y[n-1], y[n-2]}    
    +
    The 4 state variables for stage 1 are first, then the 4 state variables for stage 2, and so on. The state array has a total length of 4*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    References arm_biquad_cas_df1_32x64_ins_q31::numStages, arm_biquad_cas_df1_32x64_ins_q31::pCoeffs, arm_biquad_cas_df1_32x64_ins_q31::postShift, and arm_biquad_cas_df1_32x64_ins_q31::pState.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cas_df1_32x64_q31 (const arm_biquad_cas_df1_32x64_ins_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the high precision Q31 Biquad cascade filter.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by 2 bits and lie in the range [-0.25 +0.25). After all 5 multiply-accumulates are performed, the 2.62 accumulator is shifted by postShift bits and the result truncated to 1.31 format by discarding the low 32 bits.
    +
    Two related functions are provided in the CMSIS DSP library. arm_biquad_cascade_df1_q31() implements a Biquad cascade with 32-bit coefficients and state variables with a Q63 accumulator. arm_biquad_cascade_df1_fast_q31() implements a Biquad cascade with 32-bit coefficients and state variables with a Q31 accumulator.
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    References blockSize, mult32x64(), arm_biquad_cas_df1_32x64_ins_q31::numStages, arm_biquad_cas_df1_32x64_ins_q31::pCoeffs, arm_biquad_cas_df1_32x64_ins_q31::postShift, and arm_biquad_cas_df1_32x64_ins_q31::pState.

    + +

    Referenced by main().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.js b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.js new file mode 100644 index 0000000..a52d81f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f1__32x64.js @@ -0,0 +1,5 @@ +var group___biquad_cascade_d_f1__32x64 = +[ + [ "arm_biquad_cas_df1_32x64_init_q31", "group___biquad_cascade_d_f1__32x64.html#ga44900cecb8083afcaabf905ffcd656bb", null ], + [ "arm_biquad_cas_df1_32x64_q31", "group___biquad_cascade_d_f1__32x64.html#ga953a83e69685de6575cff37feb358a93", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.html b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.html new file mode 100644 index 0000000..070314f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.html @@ -0,0 +1,533 @@ + + + + + +Biquad Cascade IIR Filters Using a Direct Form II Transposed Structure +CMSIS-DSP: Biquad Cascade IIR Filters Using a Direct Form II Transposed Structure + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Biquad Cascade IIR Filters Using a Direct Form II Transposed Structure
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Functions

    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_df2T_f32 (const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_df2T_f64 (const arm_biquad_cascade_df2T_instance_f64 *S, float64_t *pSrc, float64_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_biquad_cascade_df2T_init_f32 (arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_biquad_cascade_df2T_init_f64 (arm_biquad_cascade_df2T_instance_f64 *S, uint8_t numStages, float64_t *pCoeffs, float64_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_stereo_df2T_f32 (const arm_biquad_cascade_stereo_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point transposed direct form II Biquad cascade filter.
     
    void arm_biquad_cascade_stereo_df2T_init_f32 (arm_biquad_cascade_stereo_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point transposed direct form II Biquad cascade filter.
     
    +

    Description

    +

    This set of functions implements arbitrary order recursive (IIR) filters using a transposed direct form II structure. The filters are implemented as a cascade of second order Biquad sections. These functions provide a slight memory savings as compared to the direct form I Biquad filter functions. Only floating-point data is supported.

    +

    This function operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc points to the array of input data and pDst points to the array of output data. Both arrays contain blockSize values.

    +
    Algorithm
    Each Biquad stage implements a second order filter using the difference equation:
           
    +   y[n] = b0 * x[n] + d1       
    +   d1 = b1 * x[n] + a1 * y[n] + d2       
    +   d2 = b2 * x[n] + a2 * y[n]       
    +
    where d1 and d2 represent the two state values.
    +
    A Biquad filter using a transposed Direct Form II structure is shown below.
    +BiquadDF2Transposed.gif +
    +Single transposed Direct Form II Biquad
    + Coefficients b0, b1, and b2 multiply the input signal x[n] and are referred to as the feedforward coefficients. Coefficients a1 and a2 multiply the output signal y[n] and are referred to as the feedback coefficients. Pay careful attention to the sign of the feedback coefficients. Some design tools flip the sign of the feedback coefficients:
           
    +   y[n] = b0 * x[n] + d1;       
    +   d1 = b1 * x[n] - a1 * y[n] + d2;       
    +   d2 = b2 * x[n] - a2 * y[n];       
    +
    In this case the feedback coefficients a1 and a2 must be negated when used with the CMSIS DSP Library.
    +
    Higher order filters are realized as a cascade of second order sections. numStages refers to the number of second order stages used. For example, an 8th order filter would be realized with numStages=4 second order stages. A 9th order filter would be realized with numStages=5 second order stages with the coefficients for one of the stages configured as a first order filter (b2=0 and a2=0).
    +
    pState points to the state variable array. Each Biquad stage has 2 state variables d1 and d2. The state variables are arranged in the pState array as:
           
    +    {d11, d12, d21, d22, ...}       
    +
    where d1x refers to the state variables for the first Biquad and d2x refers to the state variables for the second Biquad. The state array has a total length of 2*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    The CMSIS library contains Biquad filters in both Direct Form I and transposed Direct Form II. The advantage of the Direct Form I structure is that it is numerically more robust for fixed-point data types. That is why the Direct Form I structure supports Q15 and Q31 data types. The transposed Direct Form II structure, on the other hand, requires a wide dynamic range for the state variables d1 and d2. Because of this, the CMSIS library only has a floating-point version of the Direct Form II Biquad. The advantage of the Direct Form II Biquad is that it requires half the number of state variables, 2 rather than 4, per Biquad stage.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable arrays cannot be shared.
    +
    Init Functions
    There is also an associated initialization function. The initialization function performs following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numStages, pCoeffs, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros before static initialization. For example, to statically initialize the instance structure use
           
    +    arm_biquad_cascade_df2T_instance_f32 S1 = {numStages, pState, pCoeffs};       
    +
    where numStages is the number of Biquad stages in the filter; pState is the address of the state buffer. pCoeffs is the address of the coefficient buffer;
    +

    This set of functions implements arbitrary order recursive (IIR) filters using a transposed direct form II structure. The filters are implemented as a cascade of second order Biquad sections. These functions provide a slight memory savings as compared to the direct form I Biquad filter functions. Only floating-point data is supported.

    +

    This function operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc points to the array of input data and pDst points to the array of output data. Both arrays contain blockSize values.

    +
    Algorithm
    Each Biquad stage implements a second order filter using the difference equation:
           
    +   y[n] = b0 * x[n] + d1       
    +   d1 = b1 * x[n] + a1 * y[n] + d2       
    +   d2 = b2 * x[n] + a2 * y[n]       
    +
    where d1 and d2 represent the two state values.
    +
    A Biquad filter using a transposed Direct Form II structure is shown below.
    +BiquadDF2Transposed.gif +
    +Single transposed Direct Form II Biquad
    + Coefficients b0, b1, and b2 multiply the input signal x[n] and are referred to as the feedforward coefficients. Coefficients a1 and a2 multiply the output signal y[n] and are referred to as the feedback coefficients. Pay careful attention to the sign of the feedback coefficients. Some design tools flip the sign of the feedback coefficients:
           
    +   y[n] = b0 * x[n] + d1;       
    +   d1 = b1 * x[n] - a1 * y[n] + d2;       
    +   d2 = b2 * x[n] - a2 * y[n];       
    +
    In this case the feedback coefficients a1 and a2 must be negated when used with the CMSIS DSP Library.
    +
    Higher order filters are realized as a cascade of second order sections. numStages refers to the number of second order stages used. For example, an 8th order filter would be realized with numStages=4 second order stages. A 9th order filter would be realized with numStages=5 second order stages with the coefficients for one of the stages configured as a first order filter (b2=0 and a2=0).
    +
    pState points to the state variable array. Each Biquad stage has 2 state variables d1 and d2. The state variables are arranged in the pState array as:
           
    +    {d11, d12, d21, d22, ...}       
    +
    where d1x refers to the state variables for the first Biquad and d2x refers to the state variables for the second Biquad. The state array has a total length of 2*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    The CMSIS library contains Biquad filters in both Direct Form I and transposed Direct Form II. The advantage of the Direct Form I structure is that it is numerically more robust for fixed-point data types. That is why the Direct Form I structure supports Q15 and Q31 data types. The transposed Direct Form II structure, on the other hand, requires a wide dynamic range for the state variables d1 and d2. Because of this, the CMSIS library only has a floating-point version of the Direct Form II Biquad. The advantage of the Direct Form II Biquad is that it requires half the number of state variables, 2 rather than 4, per Biquad stage.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable arrays cannot be shared.
    +
    Init Functions
    There is also an associated initialization function. The initialization function performs following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numStages, pCoeffs, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros before static initialization. For example, to statically initialize the instance structure use
           
    +    arm_biquad_cascade_df2T_instance_f64 S1 = {numStages, pState, pCoeffs};       
    +
    where numStages is the number of Biquad stages in the filter; pState is the address of the state buffer. pCoeffs is the address of the coefficient buffer;
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_df2T_f32 (const arm_biquad_cascade_df2T_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the filter data structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References blockSize, arm_biquad_cascade_df2T_instance_f32::numStages, arm_biquad_cascade_df2T_instance_f32::pCoeffs, and arm_biquad_cascade_df2T_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_df2T_f64 (const arm_biquad_cascade_df2T_instance_f64S,
    float64_tpSrc,
    float64_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the filter data structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References blockSize, arm_biquad_cascade_df2T_instance_f64::numStages, arm_biquad_cascade_df2T_instance_f64::pCoeffs, and arm_biquad_cascade_df2T_instance_f64::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df2T_init_f32 (arm_biquad_cascade_df2T_instance_f32S,
    uint8_t numStages,
    float32_tpCoeffs,
    float32_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the filter data structure.
    [in]numStagesnumber of 2nd order stages in the filter.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    +
    +
    +
    Returns
    none
    +

    Coefficient and State Ordering:

    +
    The coefficients are stored in the array pCoeffs in the following order:
        
    +    {b10, b11, b12, a11, a12, b20, b21, b22, a21, a22, ...}    
    +
    +
    where b1x and a1x are the coefficients for the first stage, b2x and a2x are the coefficients for the second stage, and so on. The pCoeffs array contains a total of 5*numStages values.
    +
    The pState is a pointer to state array. Each Biquad stage has 2 state variables d1, and d2. The 2 state variables for stage 1 are first, then the 2 state variables for stage 2, and so on. The state array has a total length of 2*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    + +

    References arm_biquad_cascade_df2T_instance_f32::numStages, arm_biquad_cascade_df2T_instance_f32::pCoeffs, and arm_biquad_cascade_df2T_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_df2T_init_f64 (arm_biquad_cascade_df2T_instance_f64S,
    uint8_t numStages,
    float64_tpCoeffs,
    float64_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the filter data structure.
    [in]numStagesnumber of 2nd order stages in the filter.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    +
    +
    +
    Returns
    none
    +

    Coefficient and State Ordering:

    +
    The coefficients are stored in the array pCoeffs in the following order:
        
    +    {b10, b11, b12, a11, a12, b20, b21, b22, a21, a22, ...}    
    +
    +
    where b1x and a1x are the coefficients for the first stage, b2x and a2x are the coefficients for the second stage, and so on. The pCoeffs array contains a total of 5*numStages values.
    +
    The pState is a pointer to state array. Each Biquad stage has 2 state variables d1, and d2. The 2 state variables for stage 1 are first, then the 2 state variables for stage 2, and so on. The state array has a total length of 2*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    + +

    References arm_biquad_cascade_df2T_instance_f64::numStages, arm_biquad_cascade_df2T_instance_f64::pCoeffs, and arm_biquad_cascade_df2T_instance_f64::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    LOW_OPTIMIZATION_ENTER void arm_biquad_cascade_stereo_df2T_f32 (const arm_biquad_cascade_stereo_df2T_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +

    Processing function for the floating-point transposed direct form II Biquad cascade filter. 2 channels.

    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the filter data structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References blockSize, arm_biquad_cascade_stereo_df2T_instance_f32::numStages, arm_biquad_cascade_stereo_df2T_instance_f32::pCoeffs, and arm_biquad_cascade_stereo_df2T_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_biquad_cascade_stereo_df2T_init_f32 (arm_biquad_cascade_stereo_df2T_instance_f32S,
    uint8_t numStages,
    float32_tpCoeffs,
    float32_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the filter data structure.
    [in]numStagesnumber of 2nd order stages in the filter.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    +
    +
    +
    Returns
    none
    +

    Coefficient and State Ordering:

    +
    The coefficients are stored in the array pCoeffs in the following order:
        
    +    {b10, b11, b12, a11, a12, b20, b21, b22, a21, a22, ...}    
    +
    +
    where b1x and a1x are the coefficients for the first stage, b2x and a2x are the coefficients for the second stage, and so on. The pCoeffs array contains a total of 5*numStages values.
    +
    The pState is a pointer to state array. Each Biquad stage has 2 state variables d1, and d2 for each channel. The 2 state variables for stage 1 are first, then the 2 state variables for stage 2, and so on. The state array has a total length of 2*numStages values. The state variables are updated after each block of data is processed; the coefficients are untouched.
    + +

    References arm_biquad_cascade_stereo_df2T_instance_f32::numStages, arm_biquad_cascade_stereo_df2T_instance_f32::pCoeffs, and arm_biquad_cascade_stereo_df2T_instance_f32::pState.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.js b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.js new file mode 100644 index 0000000..7df3e57 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___biquad_cascade_d_f2_t.js @@ -0,0 +1,9 @@ +var group___biquad_cascade_d_f2_t = +[ + [ "arm_biquad_cascade_df2T_f32", "group___biquad_cascade_d_f2_t.html#ga114f373fbc16a314e9f293c7c7649c7f", null ], + [ "arm_biquad_cascade_df2T_f64", "group___biquad_cascade_d_f2_t.html#gaa8735dda5f3f36d0936283794c2aa771", null ], + [ "arm_biquad_cascade_df2T_init_f32", "group___biquad_cascade_d_f2_t.html#ga70eaddf317a4a8bde6bd6a97df67fedd", null ], + [ "arm_biquad_cascade_df2T_init_f64", "group___biquad_cascade_d_f2_t.html#ga12dc5d8e8892806ad70e79ca2ff9f86e", null ], + [ "arm_biquad_cascade_stereo_df2T_f32", "group___biquad_cascade_d_f2_t.html#gac75de449c3e4f733477d81bd0ada5eec", null ], + [ "arm_biquad_cascade_stereo_df2T_init_f32", "group___biquad_cascade_d_f2_t.html#ga405197c89fe4d34003efd23786296425", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.html b/CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.html new file mode 100644 index 0000000..40eab00 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.html @@ -0,0 +1,800 @@ + + + + + +Complex FFT Tables +CMSIS-DSP: Complex FFT Tables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex FFT Tables
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    const uint16_t armBitRevTable [1024]
     
    const float32_t twiddleCoef_16 [32]
     
    const float32_t twiddleCoef_32 [64]
     
    const float32_t twiddleCoef_64 [128]
     
    const float32_t twiddleCoef_128 [256]
     
    const float32_t twiddleCoef_256 [512]
     
    const float32_t twiddleCoef_512 [1024]
     
    const float32_t twiddleCoef_1024 [2048]
     
    const float32_t twiddleCoef_2048 [4096]
     
    const float32_t twiddleCoef_4096 [8192]
     
    const q31_t twiddleCoef_16_q31 [24]
     
    const q31_t twiddleCoef_32_q31 [48]
     
    const q31_t twiddleCoef_64_q31 [96]
     
    const q31_t twiddleCoef_128_q31 [192]
     
    const q31_t twiddleCoef_256_q31 [384]
     
    const q31_t twiddleCoef_512_q31 [768]
     
    const q31_t twiddleCoef_1024_q31 [1536]
     
    const q31_t twiddleCoef_2048_q31 [3072]
     
    const q31_t twiddleCoef_4096_q31 [6144]
     
    const q15_t twiddleCoef_16_q15 [24]
     
    const q15_t twiddleCoef_32_q15 [48]
     
    const q15_t twiddleCoef_64_q15 [96]
     
    const q15_t twiddleCoef_128_q15 [192]
     
    const q15_t twiddleCoef_256_q15 [384]
     
    const q15_t twiddleCoef_512_q15 [768]
     
    const q15_t twiddleCoef_1024_q15 [1536]
     
    const q15_t twiddleCoef_2048_q15 [3072]
     
    const q15_t twiddleCoef_4096_q15 [6144]
     
    +

    Description

    +

    Variable Documentation

    + +
    +
    + + + + +
    const uint16_t armBitRevTable[1024]
    +
    +
    Pseudo code for Generation of Bit reversal Table is
    +
    for(l=1;l <= N/4;l++)    
    +{    
    +  for(i=0;i<logN2;i++)    
    +  {     
    +    a[i]=l&(1<<i);    
    +  }    
    +  for(j=0; j<logN2; j++)    
    +  {    
    +    if (a[j]!=0)    
    +    y[l]+=(1<<((logN2-1)-j));    
    +  }    
    +  y[l] = y[l] >> 1;    
    + } 
    +
    where N = 4096 logN2 = 12
    +
    N is the maximum FFT Size supported
    + +

    Referenced by arm_cfft_radix2_init_f32(), arm_cfft_radix2_init_q15(), arm_cfft_radix2_init_q31(), arm_cfft_radix4_init_f32(), arm_cfft_radix4_init_q15(), and arm_cfft_radix4_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_1024[2048]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 1024 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_1024_q15[1536]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 1024 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_1024_q31[1536]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 1024 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_128[256]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 128 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_128_q15[192]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 128 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_128_q31[192]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 128 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_16[32]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 16 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_16_q15[24]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 16 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_16_q31[24]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 16 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_2048[4096]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 2048 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_2048_q15[3072]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 2048 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_2048_q31[3072]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 2048 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_256[512]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 256 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_256_q15[384]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 256 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_256_q31[384]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 256 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_32[64]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 32 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_32_q15[48]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 32 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_32_q31[48]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 32 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_4096[8192]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 4096 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_4096_q15[6144]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 4096 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +

    Referenced by arm_cfft_radix2_init_q15(), and arm_cfft_radix4_init_q15().

    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_4096_q31[6144]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 4096 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +

    Referenced by arm_cfft_radix2_init_q31(), and arm_cfft_radix4_init_q31().

    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_512[1024]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 512 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_512_q15[768]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 512 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_512_q31[768]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 512 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    + +
    +
    + + + + +
    const float32_t twiddleCoef_64[128]
    +
    +
    Example code for Floating-point Twiddle factors Generation:
    +
    for(i = 0; i< N/; i++)    
    +{    
    +      twiddleCoef[2*i]= cos(i * 2*PI/(float)N);    
    +      twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 64 and PI = 3.14159265358979
    +
    Cos and Sin values are in interleaved fashion
    + +

    Referenced by arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const q15_t twiddleCoef_64_q15[96]
    +
    +
    Example code for q15 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefq15[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefq15[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 64 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to q15(Fixed point 1.15): round(twiddleCoefq15(i) * pow(2, 15))
    + +
    +
    + +
    +
    + + + + +
    const q31_t twiddleCoef_64_q31[96]
    +
    +
    Example code for Q31 Twiddle factors Generation::
    +
    for(i = 0; i< 3N/4; i++)    
    +{    
    +   twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N);    
    +   twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N);    
    +} 
    +
    where N = 64 and PI = 3.14159265358979
    +
    Cos and Sin values are interleaved fashion
    +
    Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.js b/CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.js new file mode 100644 index 0000000..28caf65 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___c_f_f_t___c_i_f_f_t.js @@ -0,0 +1,31 @@ +var group___c_f_f_t___c_i_f_f_t = +[ + [ "armBitRevTable", "group___c_f_f_t___c_i_f_f_t.html#gae247e83ad50d474107254e25b36ad42b", null ], + [ "twiddleCoef_1024", "group___c_f_f_t___c_i_f_f_t.html#ga27c056eb130a4333d1cc5dd43ec738b1", null ], + [ "twiddleCoef_1024_q15", "group___c_f_f_t___c_i_f_f_t.html#ga8a0ec95d866fe96b740e77d6e1356b59", null ], + [ "twiddleCoef_1024_q31", "group___c_f_f_t___c_i_f_f_t.html#ga514443c44b62b8b3d240afefebcda310", null ], + [ "twiddleCoef_128", "group___c_f_f_t___c_i_f_f_t.html#ga948433536dafaac1381decfccf4e2d9c", null ], + [ "twiddleCoef_128_q15", "group___c_f_f_t___c_i_f_f_t.html#gabfdd1c5cd2b3f96da5fe5f07c707a8e5", null ], + [ "twiddleCoef_128_q31", "group___c_f_f_t___c_i_f_f_t.html#gafecf9ed9873415d9f5f17f37b30c7250", null ], + [ "twiddleCoef_16", "group___c_f_f_t___c_i_f_f_t.html#gae75e243ec61706427314270f222e0c8e", null ], + [ "twiddleCoef_16_q15", "group___c_f_f_t___c_i_f_f_t.html#ga8e4e2e05f4a3112184c96cb3308d6c39", null ], + [ "twiddleCoef_16_q31", "group___c_f_f_t___c_i_f_f_t.html#gaef4697e1ba348c4ac9358f2b9e279e93", null ], + [ "twiddleCoef_2048", "group___c_f_f_t___c_i_f_f_t.html#ga23e7f30421a7905b21c2015429779633", null ], + [ "twiddleCoef_2048_q15", "group___c_f_f_t___c_i_f_f_t.html#gadd16ce08ffd1048c385e0534a3b19cbb", null ], + [ "twiddleCoef_2048_q31", "group___c_f_f_t___c_i_f_f_t.html#ga9c5767de9f5a409fd0c2027e6ac67179", null ], + [ "twiddleCoef_256", "group___c_f_f_t___c_i_f_f_t.html#gafe813758a03a798e972359a092315be4", null ], + [ "twiddleCoef_256_q15", "group___c_f_f_t___c_i_f_f_t.html#ga6099ae5262a0a3a8d9ce1e6da02f0c2e", null ], + [ "twiddleCoef_256_q31", "group___c_f_f_t___c_i_f_f_t.html#gaef1ea005053b715b851cf5f908168ede", null ], + [ "twiddleCoef_32", "group___c_f_f_t___c_i_f_f_t.html#ga78a72c85d88185de98050c930cfc76e3", null ], + [ "twiddleCoef_32_q15", "group___c_f_f_t___c_i_f_f_t.html#gac194a4fe04a19051ae1811f69c6e5df2", null ], + [ "twiddleCoef_32_q31", "group___c_f_f_t___c_i_f_f_t.html#ga8ba78d5e6ef4bdc58e8f0044e0664a0a", null ], + [ "twiddleCoef_4096", "group___c_f_f_t___c_i_f_f_t.html#gae0182d1dd3b2f21aad4e38a815a0bd40", null ], + [ "twiddleCoef_4096_q15", "group___c_f_f_t___c_i_f_f_t.html#ga9b409d6995eab17805b1d1881d4bc652", null ], + [ "twiddleCoef_4096_q31", "group___c_f_f_t___c_i_f_f_t.html#ga67c0890317deab3391e276f22c1fc400", null ], + [ "twiddleCoef_512", "group___c_f_f_t___c_i_f_f_t.html#gad8830f0c068ab2cc19f2f87d220fa148", null ], + [ "twiddleCoef_512_q15", "group___c_f_f_t___c_i_f_f_t.html#ga6152621af210f847128c6f38958fa385", null ], + [ "twiddleCoef_512_q31", "group___c_f_f_t___c_i_f_f_t.html#ga416c61b2f08542a39111e06b0378bebe", null ], + [ "twiddleCoef_64", "group___c_f_f_t___c_i_f_f_t.html#ga4f3c6d98c7e66393b4ef3ac63746e43d", null ], + [ "twiddleCoef_64_q15", "group___c_f_f_t___c_i_f_f_t.html#gaa0cc411e0b3c82078e85cfdf1b84290f", null ], + [ "twiddleCoef_64_q31", "group___c_f_f_t___c_i_f_f_t.html#ga6e0a7e941a25a0d74b2e6590307de47e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___class_marks.html b/CMSIS/Documentation/DSP/html/group___class_marks.html new file mode 100644 index 0000000..949a755 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___class_marks.html @@ -0,0 +1,154 @@ + + + + + +Class Marks Example +CMSIS-DSP: Class Marks Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Class Marks Example
    +
    +
    +
    Description:
    +
    Demonstrates the use the Maximum, Minimum, Mean, Standard Deviation, Variance and Matrix functions to calculate statistical values of marks obtained in a class.
    +
    Note
    This example also demonstrates the usage of static initialization.
    +
    Variables Description:
    +
      +
    • testMarks_f32 points to the marks scored by 20 students in 4 subjects
    • +
    • max_marks Maximum of all marks
    • +
    • min_marks Minimum of all marks
    • +
    • mean Mean of all marks
    • +
    • var Variance of the marks
    • +
    • std Standard deviation of the marks
    • +
    • numStudents Total number of students in the class
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_class_marks_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.html b/CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.html new file mode 100644 index 0000000..9627fef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.html @@ -0,0 +1,306 @@ + + + + + +Complex-by-Complex Multiplication +CMSIS-DSP: Complex-by-Complex Multiplication + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex-by-Complex Multiplication
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_cmplx_mult_cmplx_f32 (float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples)
     Floating-point complex-by-complex multiplication.
     
    void arm_cmplx_mult_cmplx_q15 (q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples)
     Q15 complex-by-complex multiplication.
     
    void arm_cmplx_mult_cmplx_q31 (q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples)
     Q31 complex-by-complex multiplication.
     
    +

    Description

    +

    Multiplies a complex vector by another complex vector and generates a complex result. The data in the complex arrays is stored in an interleaved fashion (real, imag, real, imag, ...). The parameter numSamples represents the number of complex samples processed. The complex arrays have a total of 2*numSamples real values.

    +

    The underlying algorithm is used:

    +
            
    +for(n=0; n<numSamples; n++) {        
    +    pDst[(2*n)+0] = pSrcA[(2*n)+0] * pSrcB[(2*n)+0] - pSrcA[(2*n)+1] * pSrcB[(2*n)+1];        
    +    pDst[(2*n)+1] = pSrcA[(2*n)+0] * pSrcB[(2*n)+1] + pSrcA[(2*n)+1] * pSrcB[(2*n)+0];        
    +}        
    +

    There are separate functions for floating-point, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mult_cmplx_f32 (float32_tpSrcA,
    float32_tpSrcB,
    float32_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]numSamplesnumber of complex samples in each vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mult_cmplx_q15 (q15_tpSrcA,
    q15_tpSrcB,
    q15_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]numSamplesnumber of complex samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function implements 1.15 by 1.15 multiplications and finally output is converted into 3.13 format.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mult_cmplx_q31 (q31_tpSrcA,
    q31_tpSrcB,
    q31_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [out]*pDstpoints to the output vector
    [in]numSamplesnumber of complex samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function implements 1.31 by 1.31 multiplications and finally output is converted into 3.29 format. Input down scaling is not required.
    + +

    Referenced by arm_dct4_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.js b/CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.js new file mode 100644 index 0000000..7df1461 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___cmplx_by_cmplx_mult.js @@ -0,0 +1,6 @@ +var group___cmplx_by_cmplx_mult = +[ + [ "arm_cmplx_mult_cmplx_f32", "group___cmplx_by_cmplx_mult.html#ga14b47080054a1ba1250a86805be1ff6b", null ], + [ "arm_cmplx_mult_cmplx_q15", "group___cmplx_by_cmplx_mult.html#ga67e96abfc9c3e30efb70a2ec9d0fe7e8", null ], + [ "arm_cmplx_mult_cmplx_q31", "group___cmplx_by_cmplx_mult.html#ga1829e50993a90742de225a0ce4213838", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.html b/CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.html new file mode 100644 index 0000000..00d70f0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.html @@ -0,0 +1,305 @@ + + + + + +Complex-by-Real Multiplication +CMSIS-DSP: Complex-by-Real Multiplication + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex-by-Real Multiplication
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_cmplx_mult_real_f32 (float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples)
     Floating-point complex-by-real multiplication.
     
    void arm_cmplx_mult_real_q15 (q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples)
     Q15 complex-by-real multiplication.
     
    void arm_cmplx_mult_real_q31 (q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples)
     Q31 complex-by-real multiplication.
     
    +

    Description

    +

    Multiplies a complex vector by a real vector and generates a complex result. The data in the complex arrays is stored in an interleaved fashion (real, imag, real, imag, ...). The parameter numSamples represents the number of complex samples processed. The complex arrays have a total of 2*numSamples real values while the real array has a total of numSamples real values.

    +

    The underlying algorithm is used:

    +
            
    +for(n=0; n<numSamples; n++) {        
    +    pCmplxDst[(2*n)+0] = pSrcCmplx[(2*n)+0] * pSrcReal[n];        
    +    pCmplxDst[(2*n)+1] = pSrcCmplx[(2*n)+1] * pSrcReal[n];        
    +}        
    +

    There are separate functions for floating-point, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mult_real_f32 (float32_tpSrcCmplx,
    float32_tpSrcReal,
    float32_tpCmplxDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcCmplxpoints to the complex input vector
    [in]*pSrcRealpoints to the real input vector
    [out]*pCmplxDstpoints to the complex output vector
    [in]numSamplesnumber of samples in each vector
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mult_real_q15 (q15_tpSrcCmplx,
    q15_tpSrcReal,
    q15_tpCmplxDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcCmplxpoints to the complex input vector
    [in]*pSrcRealpoints to the real input vector
    [out]*pCmplxDstpoints to the complex output vector
    [in]numSamplesnumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    + +

    References __SIMD32.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mult_real_q31 (q31_tpSrcCmplx,
    q31_tpSrcReal,
    q31_tpCmplxDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcCmplxpoints to the complex input vector
    [in]*pSrcRealpoints to the real input vector
    [out]*pCmplxDstpoints to the complex output vector
    [in]numSamplesnumber of samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range[0x80000000 0x7FFFFFFF] will be saturated.
    + +

    References clip_q63_to_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.js b/CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.js new file mode 100644 index 0000000..440f773 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___cmplx_by_real_mult.js @@ -0,0 +1,6 @@ +var group___cmplx_by_real_mult = +[ + [ "arm_cmplx_mult_real_f32", "group___cmplx_by_real_mult.html#ga9c18616f56cb4d3c0889ce0b339221ca", null ], + [ "arm_cmplx_mult_real_q15", "group___cmplx_by_real_mult.html#ga3bd8889dcb45980e1d3e53344df54e85", null ], + [ "arm_cmplx_mult_real_q31", "group___cmplx_by_real_mult.html#ga715e4bb8e945b8ca51ec5237611697ce", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.html b/CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.html new file mode 100644 index 0000000..f54ea74 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.html @@ -0,0 +1,292 @@ + + + + + +Complex Matrix Multiplication +CMSIS-DSP: Complex Matrix Multiplication + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex Matrix Multiplication
    +
    +
    + + + + + + + + + + + +

    +Functions

    arm_status arm_mat_cmplx_mult_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point Complex matrix multiplication.
     
    arm_status arm_mat_cmplx_mult_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pScratch)
     Q15 Complex matrix multiplication.
     
    arm_status arm_mat_cmplx_mult_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 Complex matrix multiplication.
     
    +

    Description

    +

    Complex Matrix multiplication is only defined if the number of columns of the first matrix equals the number of rows of the second matrix. Multiplying an M x N matrix with an N x P matrix results in an M x P matrix. When matrix size checking is enabled, the functions check: (1) that the inner dimensions of pSrcA and pSrcB are equal; and (2) that the size of the output matrix equals the outer dimensions of pSrcA and pSrcB.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_cmplx_mult_f32 (const arm_matrix_instance_f32pSrcA,
    const arm_matrix_instance_f32pSrcB,
    arm_matrix_instance_f32pDst 
    )
    +
    +

    Floating-point, complex, matrix multiplication.

    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input complex matrix structure
    [in]*pSrcBpoints to the second input complex matrix structure
    [out]*pDstpoints to output complex matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, arm_matrix_instance_f32::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_cmplx_mult_q15 (const arm_matrix_instance_q15pSrcA,
    const arm_matrix_instance_q15pSrcB,
    arm_matrix_instance_q15pDst,
    q15_tpScratch 
    )
    +
    +

    Q15, complex, matrix multiplication.

    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input complex matrix structure
    [in]*pSrcBpoints to the second input complex matrix structure
    [out]*pDstpoints to output complex matrix structure
    [in]*pScratchpoints to the array for storing intermediate results
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +
    Conditions for optimum performance
    Input, output and state buffers should be aligned by 32-bit
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The inputs to the multiplications are in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. This approach provides 33 guard bits and there is no risk of overflow. The 34.30 result is then truncated to 34.15 format by discarding the low 15 bits and then saturated to 1.15 format.
    +
    Refer to arm_mat_mult_fast_q15() for a faster but less precise version of this function.
    + +

    References __SIMD32, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, arm_matrix_instance_q15::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_cmplx_mult_q31 (const arm_matrix_instance_q31pSrcA,
    const arm_matrix_instance_q31pSrcB,
    arm_matrix_instance_q31pDst 
    )
    +
    +

    Q31, complex, matrix multiplication.

    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input complex matrix structure
    [in]*pSrcBpoints to the second input complex matrix structure
    [out]*pDstpoints to output complex matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. The input is thus scaled down by log2(numColsA) bits to avoid overflows, as a total of numColsA additions are performed internally. The 2.62 accumulator is right shifted by 31 bits and saturated to 1.31 format to yield the final result.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, clip_q63_to_q31(), arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, arm_matrix_instance_q31::pData, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.js b/CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.js new file mode 100644 index 0000000..cbe46be --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___cmplx_matrix_mult.js @@ -0,0 +1,6 @@ +var group___cmplx_matrix_mult = +[ + [ "arm_mat_cmplx_mult_f32", "group___cmplx_matrix_mult.html#ga1adb839ac84445b8c2f04efa43faef35", null ], + [ "arm_mat_cmplx_mult_q15", "group___cmplx_matrix_mult.html#ga63066615e7d6f6a44f4358725092419e", null ], + [ "arm_mat_cmplx_mult_q31", "group___cmplx_matrix_mult.html#gaaf3c0b171ca8412c77bab9fa90804737", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___complex_f_f_t.html b/CMSIS/Documentation/DSP/html/group___complex_f_f_t.html new file mode 100644 index 0000000..931574c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___complex_f_f_t.html @@ -0,0 +1,1003 @@ + + + + + +Complex FFT Functions +CMSIS-DSP: Complex FFT Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex FFT Functions
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_cfft_f32 (const arm_cfft_instance_f32 *S, float32_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the floating-point complex FFT.
     
    void arm_cfft_q15 (const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the Q15 complex FFT.
     
    void arm_cfft_q31 (const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Processing function for the fixed-point complex FFT in Q31 format.
     
    void arm_cfft_radix2_f32 (const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc)
     Radix-2 CFFT/CIFFT.
     
    arm_status arm_cfft_radix2_init_f32 (arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the floating-point CFFT/CIFFT.
     
    arm_status arm_cfft_radix2_init_q15 (arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q15 CFFT/CIFFT.
     
    arm_status arm_cfft_radix2_init_q31 (arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q31 CFFT/CIFFT.
     
    void arm_cfft_radix2_q15 (const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc)
     Processing function for the fixed-point CFFT/CIFFT.
     
    void arm_cfft_radix2_q31 (const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc)
     Processing function for the fixed-point CFFT/CIFFT.
     
    void arm_cfft_radix4_f32 (const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc)
     Processing function for the floating-point Radix-4 CFFT/CIFFT.
     
    arm_status arm_cfft_radix4_init_f32 (arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the floating-point CFFT/CIFFT.
     
    arm_status arm_cfft_radix4_init_q15 (arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q15 CFFT/CIFFT.
     
    arm_status arm_cfft_radix4_init_q31 (arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag)
     Initialization function for the Q31 CFFT/CIFFT.
     
    void arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc)
     Processing function for the Q15 CFFT/CIFFT.
     
    void arm_cfft_radix4_q31 (const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc)
     Processing function for the Q31 CFFT/CIFFT.
     
    +

    Description

    +
    The Fast Fourier Transform (FFT) is an efficient algorithm for computing the Discrete Fourier Transform (DFT). The FFT can be orders of magnitude faster than the DFT, especially for long lengths. The algorithms described in this section operate on complex data. A separate set of functions is devoted to handling of real sequences.
    +
    There are separate algorithms for handling floating-point, Q15, and Q31 data types. The algorithms available for each data type are described next.
    +
    The FFT functions operate in-place. That is, the array holding the input data will also be used to hold the corresponding result. The input data is complex and contains 2*fftLen interleaved values as shown below.
     {real[0], imag[0], real[1], imag[1],..} 
    The FFT result will be contained in the same array and the frequency domain values will have the same interleaving.
    +
    Floating-point
    The floating-point complex FFT uses a mixed-radix algorithm. Multiple radix-8 stages are performed along with a single radix-2 or radix-4 stage, as needed. The algorithm supports lengths of [16, 32, 64, ..., 4096] and each length uses a different twiddle factor table.
    +
    The function uses the standard FFT definition and output values may grow by a factor of fftLen when computing the forward transform. The inverse transform includes a scale of 1/fftLen as part of the calculation and this matches the textbook definition of the inverse FFT.
    +
    Pre-initialized data structures containing twiddle factors and bit reversal tables are provided and defined in arm_const_structs.h. Include this header in your function and then pass one of the constant structures as an argument to arm_cfft_f32. For example:
    +
    arm_cfft_f32(arm_cfft_sR_f32_len64, pSrc, 1, 1)
    +
    computes a 64-point inverse complex FFT including bit reversal. The data structures are treated as constant data and not modified during the calculation. The same data structure can be reused for multiple transforms including mixing forward and inverse transforms.
    +
    Earlier releases of the library provided separate radix-2 and radix-4 algorithms that operated on floating-point data. These functions are still provided but are deprecated. The older functions are slower and less general than the new functions.
    +
    An example of initialization of the constants for the arm_cfft_f32 function follows:
    const static arm_cfft_instance_f32 *S;
    +
    ...
    +
    switch (length) {
    +
    case 16:
    + +
    break;
    +
    case 32:
    + +
    break;
    +
    case 64:
    + +
    break;
    +
    case 128:
    + +
    break;
    +
    case 256:
    + +
    break;
    +
    case 512:
    + +
    break;
    +
    case 1024:
    + +
    break;
    +
    case 2048:
    + +
    break;
    +
    case 4096:
    + +
    break;
    +
    }
    +
    +
    Q15 and Q31
    The floating-point complex FFT uses a mixed-radix algorithm. Multiple radix-4 stages are performed along with a single radix-2 stage, as needed. The algorithm supports lengths of [16, 32, 64, ..., 4096] and each length uses a different twiddle factor table.
    +
    The function uses the standard FFT definition and output values may grow by a factor of fftLen when computing the forward transform. The inverse transform includes a scale of 1/fftLen as part of the calculation and this matches the textbook definition of the inverse FFT.
    +
    Pre-initialized data structures containing twiddle factors and bit reversal tables are provided and defined in arm_const_structs.h. Include this header in your function and then pass one of the constant structures as an argument to arm_cfft_q31. For example:
    +
    arm_cfft_q31(arm_cfft_sR_q31_len64, pSrc, 1, 1)
    +
    computes a 64-point inverse complex FFT including bit reversal. The data structures are treated as constant data and not modified during the calculation. The same data structure can be reused for multiple transforms including mixing forward and inverse transforms.
    +
    Earlier releases of the library provided separate radix-2 and radix-4 algorithms that operated on floating-point data. These functions are still provided but are deprecated. The older functions are slower and less general than the new functions.
    +
    An example of initialization of the constants for the arm_cfft_q31 function follows:
    const static arm_cfft_instance_q31 *S;
    +
    ...
    +
    switch (length) {
    +
    case 16:
    + +
    break;
    +
    case 32:
    + +
    break;
    +
    case 64:
    + +
    break;
    +
    case 128:
    + +
    break;
    +
    case 256:
    + +
    break;
    +
    case 512:
    + +
    break;
    +
    case 1024:
    + +
    break;
    +
    case 2048:
    + +
    break;
    +
    case 4096:
    + +
    break;
    +
    }
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cfft_f32 (const arm_cfft_instance_f32S,
    float32_tp1,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point CFFT structure.
    [in,out]*p1points to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    References arm_bitreversal_32(), arm_cfft_radix8by2_f32(), arm_cfft_radix8by4_f32(), arm_radix8_butterfly_f32(), arm_cfft_instance_f32::bitRevLength, arm_cfft_instance_f32::fftLen, arm_cfft_instance_f32::pBitRevTable, and arm_cfft_instance_f32::pTwiddle.

    + +

    Referenced by arm_rfft_fast_f32(), and main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cfft_q15 (const arm_cfft_instance_q15S,
    q15_tp1,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 CFFT structure.
    [in,out]*p1points to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    none.
    + +

    References arm_bitreversal_16(), arm_cfft_radix4by2_inverse_q15(), arm_cfft_radix4by2_q15(), arm_radix4_butterfly_inverse_q15(), arm_radix4_butterfly_q15(), arm_cfft_instance_q15::bitRevLength, arm_cfft_instance_q15::fftLen, arm_cfft_instance_q15::pBitRevTable, and arm_cfft_instance_q15::pTwiddle.

    + +

    Referenced by arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cfft_q31 (const arm_cfft_instance_q31S,
    q31_tp1,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the fixed-point CFFT structure.
    [in,out]*p1points to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    none.
    + +

    References arm_bitreversal_32(), arm_cfft_radix4by2_inverse_q31(), arm_cfft_radix4by2_q31(), arm_radix4_butterfly_inverse_q31(), arm_radix4_butterfly_q31(), arm_cfft_instance_q31::bitRevLength, arm_cfft_instance_q31::fftLen, arm_cfft_instance_q31::pBitRevTable, and arm_cfft_instance_q31::pTwiddle.

    + +

    Referenced by arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix2_f32 (const arm_cfft_radix2_instance_f32S,
    float32_tpSrc 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
    +
    Parameters
    + + + +
    [in]*Spoints to an instance of the floating-point Radix-2 CFFT/CIFFT structure.
    [in,out]*pSrcpoints to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    +
    +
    +
    Returns
    none.
    + +

    References arm_bitreversal_f32(), arm_radix2_butterfly_f32(), arm_radix2_butterfly_inverse_f32(), arm_cfft_radix2_instance_f32::bitReverseFlag, arm_cfft_radix2_instance_f32::bitRevFactor, arm_cfft_radix2_instance_f32::fftLen, arm_cfft_radix2_instance_f32::ifftFlag, arm_cfft_radix2_instance_f32::onebyfftLen, arm_cfft_radix2_instance_f32::pBitRevTable, arm_cfft_radix2_instance_f32::pTwiddle, and arm_cfft_radix2_instance_f32::twidCoefModifier.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_cfft_radix2_init_f32 (arm_cfft_radix2_instance_f32S,
    uint16_t fftLen,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the floating-point CFFT/CIFFT structure.
    [in]fftLenlength of the FFT.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLen is not a supported value.
    +
    Description:
    +
    The parameter ifftFlag controls whether a forward or inverse transform is computed. Set(=1) ifftFlag for calculation of CIFFT otherwise CFFT is calculated
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    The parameter fftLen Specifies length of CFFT/CIFFT process. Supported FFT Lengths are 16, 64, 256, 1024.
    +
    This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, armBitRevTable, arm_cfft_radix2_instance_f32::bitReverseFlag, arm_cfft_radix2_instance_f32::bitRevFactor, arm_cfft_radix2_instance_f32::fftLen, ifftFlag, arm_cfft_radix2_instance_f32::ifftFlag, arm_cfft_radix2_instance_f32::onebyfftLen, arm_cfft_radix2_instance_f32::pBitRevTable, arm_cfft_radix2_instance_f32::pTwiddle, status, arm_cfft_radix2_instance_f32::twidCoefModifier, and twiddleCoef.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_cfft_radix2_init_q15 (arm_cfft_radix2_instance_q15S,
    uint16_t fftLen,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the Q15 CFFT/CIFFT structure.
    [in]fftLenlength of the FFT.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLen is not a supported value.
    +
    Description:
    +
    The parameter ifftFlag controls whether a forward or inverse transform is computed. Set(=1) ifftFlag for calculation of CIFFT otherwise CFFT is calculated
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    The parameter fftLen Specifies length of CFFT/CIFFT process. Supported FFT Lengths are 16, 64, 256, 1024.
    +
    This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, armBitRevTable, arm_cfft_radix2_instance_q15::bitReverseFlag, arm_cfft_radix2_instance_q15::bitRevFactor, arm_cfft_radix2_instance_q15::fftLen, ifftFlag, arm_cfft_radix2_instance_q15::ifftFlag, arm_cfft_radix2_instance_q15::pBitRevTable, arm_cfft_radix2_instance_q15::pTwiddle, status, arm_cfft_radix2_instance_q15::twidCoefModifier, and twiddleCoef_4096_q15.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_cfft_radix2_init_q31 (arm_cfft_radix2_instance_q31S,
    uint16_t fftLen,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the Q31 CFFT/CIFFT structure.
    [in]fftLenlength of the FFT.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLen is not a supported value.
    +
    Description:
    +
    The parameter ifftFlag controls whether a forward or inverse transform is computed. Set(=1) ifftFlag for calculation of CIFFT otherwise CFFT is calculated
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    The parameter fftLen Specifies length of CFFT/CIFFT process. Supported FFT Lengths are 16, 64, 256, 1024.
    +
    This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, armBitRevTable, arm_cfft_radix2_instance_q31::bitReverseFlag, arm_cfft_radix2_instance_q31::bitRevFactor, arm_cfft_radix2_instance_q31::fftLen, ifftFlag, arm_cfft_radix2_instance_q31::ifftFlag, arm_cfft_radix2_instance_q31::pBitRevTable, arm_cfft_radix2_instance_q31::pTwiddle, status, arm_cfft_radix2_instance_q31::twidCoefModifier, and twiddleCoef_4096_q31.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix2_q15 (const arm_cfft_radix2_instance_q15S,
    q15_tpSrc 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Parameters
    + + + +
    [in]*Spoints to an instance of the fixed-point CFFT/CIFFT structure.
    [in,out]*pSrcpoints to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    +
    +
    +
    Returns
    none.
    + +

    References arm_bitreversal_q15(), arm_radix2_butterfly_inverse_q15(), arm_radix2_butterfly_q15(), arm_cfft_radix2_instance_q15::bitRevFactor, arm_cfft_radix2_instance_q15::fftLen, arm_cfft_radix2_instance_q15::ifftFlag, arm_cfft_radix2_instance_q15::pBitRevTable, arm_cfft_radix2_instance_q15::pTwiddle, and arm_cfft_radix2_instance_q15::twidCoefModifier.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix2_q31 (const arm_cfft_radix2_instance_q31S,
    q31_tpSrc 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Parameters
    + + + +
    [in]*Spoints to an instance of the fixed-point CFFT/CIFFT structure.
    [in,out]*pSrcpoints to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    +
    +
    +
    Returns
    none.
    + +

    References arm_bitreversal_q31(), arm_radix2_butterfly_inverse_q31(), arm_radix2_butterfly_q31(), arm_cfft_radix2_instance_q31::bitRevFactor, arm_cfft_radix2_instance_q31::fftLen, arm_cfft_radix2_instance_q31::ifftFlag, arm_cfft_radix2_instance_q31::pBitRevTable, arm_cfft_radix2_instance_q31::pTwiddle, and arm_cfft_radix2_instance_q31::twidCoefModifier.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix4_f32 (const arm_cfft_radix4_instance_f32S,
    float32_tpSrc 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_f32 and will be removed in the future.
    +
    Parameters
    + + + +
    [in]*Spoints to an instance of the floating-point Radix-4 CFFT/CIFFT structure.
    [in,out]*pSrcpoints to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    References arm_bitreversal_f32(), arm_radix4_butterfly_f32(), arm_radix4_butterfly_inverse_f32(), arm_cfft_radix4_instance_f32::bitReverseFlag, arm_cfft_radix4_instance_f32::bitRevFactor, arm_cfft_radix4_instance_f32::fftLen, arm_cfft_radix4_instance_f32::ifftFlag, arm_cfft_radix4_instance_f32::onebyfftLen, arm_cfft_radix4_instance_f32::pBitRevTable, arm_cfft_radix4_instance_f32::pTwiddle, and arm_cfft_radix4_instance_f32::twidCoefModifier.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_cfft_radix4_init_f32 (arm_cfft_radix4_instance_f32S,
    uint16_t fftLen,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superceded by arm_cfft_f32 and will be removed in the future.
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the floating-point CFFT/CIFFT structure.
    [in]fftLenlength of the FFT.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLen is not a supported value.
    +
    Description:
    +
    The parameter ifftFlag controls whether a forward or inverse transform is computed. Set(=1) ifftFlag for calculation of CIFFT otherwise CFFT is calculated
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    The parameter fftLen Specifies length of CFFT/CIFFT process. Supported FFT Lengths are 16, 64, 256, 1024.
    +
    This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
    +
    Examples:
    arm_convolution_example_f32.c.
    +
    +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, armBitRevTable, arm_cfft_radix4_instance_f32::bitReverseFlag, arm_cfft_radix4_instance_f32::bitRevFactor, arm_cfft_radix4_instance_f32::fftLen, ifftFlag, arm_cfft_radix4_instance_f32::ifftFlag, arm_cfft_radix4_instance_f32::onebyfftLen, arm_cfft_radix4_instance_f32::pBitRevTable, arm_cfft_radix4_instance_f32::pTwiddle, status, arm_cfft_radix4_instance_f32::twidCoefModifier, and twiddleCoef.

    + +

    Referenced by arm_rfft_init_f32(), and main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_cfft_radix4_init_q15 (arm_cfft_radix4_instance_q15S,
    uint16_t fftLen,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the Q15 CFFT/CIFFT structure.
    [in]fftLenlength of the FFT.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLen is not a supported value.
    +
    Description:
    +
    The parameter ifftFlag controls whether a forward or inverse transform is computed. Set(=1) ifftFlag for calculation of CIFFT otherwise CFFT is calculated
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    The parameter fftLen Specifies length of CFFT/CIFFT process. Supported FFT Lengths are 16, 64, 256, 1024.
    +
    This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, armBitRevTable, arm_cfft_radix4_instance_q15::bitReverseFlag, arm_cfft_radix4_instance_q15::bitRevFactor, arm_cfft_radix4_instance_q15::fftLen, ifftFlag, arm_cfft_radix4_instance_q15::ifftFlag, arm_cfft_radix4_instance_q15::pBitRevTable, arm_cfft_radix4_instance_q15::pTwiddle, status, arm_cfft_radix4_instance_q15::twidCoefModifier, and twiddleCoef_4096_q15.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_cfft_radix4_init_q31 (arm_cfft_radix4_instance_q31S,
    uint16_t fftLen,
    uint8_t ifftFlag,
    uint8_t bitReverseFlag 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the Q31 CFFT/CIFFT structure.
    [in]fftLenlength of the FFT.
    [in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLen is not a supported value.
    +
    Description:
    +
    The parameter ifftFlag controls whether a forward or inverse transform is computed. Set(=1) ifftFlag for calculation of CIFFT otherwise CFFT is calculated
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    The parameter fftLen Specifies length of CFFT/CIFFT process. Supported FFT Lengths are 16, 64, 256, 1024.
    +
    This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, armBitRevTable, arm_cfft_radix4_instance_q31::bitReverseFlag, arm_cfft_radix4_instance_q31::bitRevFactor, arm_cfft_radix4_instance_q31::fftLen, ifftFlag, arm_cfft_radix4_instance_q31::ifftFlag, arm_cfft_radix4_instance_q31::pBitRevTable, arm_cfft_radix4_instance_q31::pTwiddle, status, arm_cfft_radix4_instance_q31::twidCoefModifier, and twiddleCoef_4096_q31.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15S,
    q15_tpSrc 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q15 and will be removed
    +
    Parameters
    + + + +
    [in]*Spoints to an instance of the Q15 CFFT/CIFFT structure.
    [in,out]*pSrcpoints to the complex data buffer. Processing occurs in-place.
    +
    +
    +
    Returns
    none.
    +
    Input and output formats:
    +
    Internally input is downscaled by 2 for every stage to avoid saturations inside CFFT/CIFFT process. Hence the output format is different for different FFT sizes. The input and output formats for different FFT sizes and number of bits to upscale are mentioned in the tables below for CFFT and CIFFT:
    +
    +CFFTQ15.gif +
    +Input and Output Formats for Q15 CFFT
    +
    +CIFFTQ15.gif +
    +Input and Output Formats for Q15 CIFFT
    +
    + +

    References arm_bitreversal_q15(), arm_radix4_butterfly_inverse_q15(), arm_radix4_butterfly_q15(), arm_cfft_radix4_instance_q15::bitReverseFlag, arm_cfft_radix4_instance_q15::bitRevFactor, arm_cfft_radix4_instance_q15::fftLen, arm_cfft_radix4_instance_q15::ifftFlag, arm_cfft_radix4_instance_q15::pBitRevTable, arm_cfft_radix4_instance_q15::pTwiddle, and arm_cfft_radix4_instance_q15::twidCoefModifier.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_cfft_radix4_q31 (const arm_cfft_radix4_instance_q31S,
    q31_tpSrc 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superseded by arm_cfft_q31 and will be removed
    +
    Parameters
    + + + +
    [in]*Spoints to an instance of the Q31 CFFT/CIFFT structure.
    [in,out]*pSrcpoints to the complex data buffer of size 2*fftLen. Processing occurs in-place.
    +
    +
    +
    Returns
    none.
    +
    Input and output formats:
    +
    Internally input is downscaled by 2 for every stage to avoid saturations inside CFFT/CIFFT process. Hence the output format is different for different FFT sizes. The input and output formats for different FFT sizes and number of bits to upscale are mentioned in the tables below for CFFT and CIFFT:
    +
    +CFFTQ31.gif +
    +Input and Output Formats for Q31 CFFT
    +
    +CIFFTQ31.gif +
    +Input and Output Formats for Q31 CIFFT
    +
    + +

    References arm_bitreversal_q31(), arm_radix4_butterfly_inverse_q31(), arm_radix4_butterfly_q31(), arm_cfft_radix4_instance_q31::bitReverseFlag, arm_cfft_radix4_instance_q31::bitRevFactor, arm_cfft_radix4_instance_q31::fftLen, arm_cfft_radix4_instance_q31::ifftFlag, arm_cfft_radix4_instance_q31::pBitRevTable, arm_cfft_radix4_instance_q31::pTwiddle, and arm_cfft_radix4_instance_q31::twidCoefModifier.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___complex_f_f_t.js b/CMSIS/Documentation/DSP/html/group___complex_f_f_t.js new file mode 100644 index 0000000..e5af1b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___complex_f_f_t.js @@ -0,0 +1,18 @@ +var group___complex_f_f_t = +[ + [ "arm_cfft_f32", "group___complex_f_f_t.html#gade0f9c4ff157b6b9c72a1eafd86ebf80", null ], + [ "arm_cfft_q15", "group___complex_f_f_t.html#ga68cdacd2267a2967955e40e6b7ec1229", null ], + [ "arm_cfft_q31", "group___complex_f_f_t.html#ga5a0008bd997ab6e2e299ef2fb272fb4b", null ], + [ "arm_cfft_radix2_f32", "group___complex_f_f_t.html#ga9fadd650b802f612ae558ddaab789a6d", null ], + [ "arm_cfft_radix2_init_f32", "group___complex_f_f_t.html#gac9565e6bc7229577ecf5e090313cafd7", null ], + [ "arm_cfft_radix2_init_q15", "group___complex_f_f_t.html#ga5c5b2127b3c4ea2d03692127f8543858", null ], + [ "arm_cfft_radix2_init_q31", "group___complex_f_f_t.html#gabec9611e77382f31e152668bf6b4b638", null ], + [ "arm_cfft_radix2_q15", "group___complex_f_f_t.html#ga55b424341dc3efd3fa0bcaaff4bdbf40", null ], + [ "arm_cfft_radix2_q31", "group___complex_f_f_t.html#ga6321f703ec87a274aedaab33d3e766b4", null ], + [ "arm_cfft_radix4_f32", "group___complex_f_f_t.html#ga521f670cd9c571bc61aff9bec89f4c26", null ], + [ "arm_cfft_radix4_init_f32", "group___complex_f_f_t.html#gaf336459f684f0b17bfae539ef1b1b78a", null ], + [ "arm_cfft_radix4_init_q15", "group___complex_f_f_t.html#ga0c2acfda3126c452e75b81669e8ad9ef", null ], + [ "arm_cfft_radix4_init_q31", "group___complex_f_f_t.html#gad5caaafeec900c8ff72321c01bbd462c", null ], + [ "arm_cfft_radix4_q15", "group___complex_f_f_t.html#ga8d66cdac41b8bf6cefdb895456eee84a", null ], + [ "arm_cfft_radix4_q31", "group___complex_f_f_t.html#gafde3ee1f58cf393b45a9073174fff548", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___conv.html b/CMSIS/Documentation/DSP/html/group___conv.html new file mode 100644 index 0000000..c623463 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___conv.html @@ -0,0 +1,766 @@ + + + + + +Convolution +CMSIS-DSP: Convolution + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Convolution
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_conv_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst)
     Convolution of floating-point sequences.
     
    void arm_conv_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_conv_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_conv_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_conv_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q15 sequences.
     
    void arm_conv_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Convolution of Q7 sequences.
     
    void arm_conv_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Convolution of Q15 sequences.
     
    void arm_conv_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Convolution of Q31 sequences.
     
    void arm_conv_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst)
     Convolution of Q7 sequences.
     
    +

    Description

    +

    Convolution is a mathematical operation that operates on two finite length vectors to generate a finite length output vector. Convolution is similar to correlation and is frequently used in filtering and data analysis. The CMSIS DSP library contains functions for convolving Q7, Q15, Q31, and floating-point data types. The library also provides fast versions of the Q15 and Q31 functions on Cortex-M4 and Cortex-M3.

    +
    Algorithm
    Let a[n] and b[n] be sequences of length srcALen and srcBLen samples respectively. Then the convolution
    +
        
    +                  c[n] = a[n] * b[n]    
    +
    is defined as
    +ConvolutionEquation.gif +
    +
    +
    Note that c[n] is of length srcALen + srcBLen - 1 and is defined over the interval n=0, 1, 2, ..., srcALen + srcBLen - 2. pSrcA points to the first input vector of length srcALen and pSrcB points to the second input vector of length srcBLen. The output result is written to pDst and the calling function must allocate srcALen+srcBLen-1 words for the result.
    +
    Conceptually, when two signals a[n] and b[n] are convolved, the signal b[n] slides over a[n]. For each offset n, the overlapping portions of a[n] and b[n] are multiplied and summed together.
    +
    Note that convolution is a commutative operation:
    +
        
    +                  a[n] * b[n] = b[n] * a[n].    
    +
    This means that switching the A and B arguments to the convolution functions has no effect.
    +

    Fixed-Point Behavior

    +
    Convolution requires summing up a large number of intermediate products. As such, the Q7, Q15, and Q31 functions run a risk of overflow and saturation. Refer to the function specific documentation below for further details of the particular algorithm used.
    +

    Fast Versions

    +
    Fast versions are supported for Q31 and Q15. Cycles for Fast versions are less compared to Q31 and Q15 of conv and the design requires the input signals should be scaled down to avoid intermediate overflows.
    +

    Opt Versions

    +
    Opt versions are supported for Q15 and Q7. Design uses internal scratch buffer for getting good optimisation. These versions are optimised in cycles and consumes more memory(Scratch memory) compared to Q15 and Q7 versions
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_f32 (float32_tpSrcA,
    uint32_t srcALen,
    float32_tpSrcB,
    uint32_t srcBLen,
    float32_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    +
    +
    +
    Returns
    none.
    + +

    References srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_fast_opt_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    q15_tpScratch1,
    q15_tpScratch2 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    [in]*pScratch1points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    [in]*pScratch2points to scratch buffer of size min(srcALen, srcBLen).
    +
    +
    +
    Returns
    none.
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch1 and scratch2 buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    This fast version uses a 32-bit accumulator with 2.30 format. The accumulator maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. Scale down the inputs by log2(min(srcALen, srcBLen)) (log2 is read as log to the base 2) times to avoid overflows, as maximum of min(srcALen, srcBLen) number of additions are carried internally. The 2.30 accumulator is right shifted by 15 bits and then saturated to 1.15 format to yield the final result.
    +
    See arm_conv_q15() for a slower implementation of this function which uses 64-bit accumulation to avoid wrap around distortion.
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_copy_q15(), arm_fill_q15(), srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_fast_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This fast version uses a 32-bit accumulator with 2.30 format. The accumulator maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. Scale down the inputs by log2(min(srcALen, srcBLen)) (log2 is read as log to the base 2) times to avoid overflows, as maximum of min(srcALen, srcBLen) number of additions are carried internally. The 2.30 accumulator is right shifted by 15 bits and then saturated to 1.15 format to yield the final result.
    +
    See arm_conv_q15() for a slower implementation of this function which uses 64-bit accumulation to avoid wrap around distortion.
    + +

    References __SIMD32, _SIMD32_OFFSET, srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_fast_q31 (q31_tpSrcA,
    uint32_t srcALen,
    q31_tpSrcB,
    uint32_t srcBLen,
    q31_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This function is optimized for speed at the expense of fixed-point precision and overflow protection. The result of each 1.31 x 1.31 multiplication is truncated to 2.30 format. These intermediate results are accumulated in a 32-bit register in 2.30 format. Finally, the accumulator is saturated and converted to a 1.31 result.
    +
    The fast version has the same overflow behavior as the standard version but provides less precision since it discards the low 32 bits of each multiplication result. In order to avoid overflows completely the input signals must be scaled down. Scale down the inputs by log2(min(srcALen, srcBLen)) (log2 is read as log to the base 2) times to avoid overflows, as maximum of min(srcALen, srcBLen) number of additions are carried internally.
    +
    See arm_conv_q31() for a slower implementation of this function which uses 64-bit accumulation to provide higher precision.
    + +

    References srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_opt_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    q15_tpScratch1,
    q15_tpScratch2 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    [in]*pScratch1points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    [in]*pScratch2points to scratch buffer of size min(srcALen, srcBLen).
    +
    +
    +
    Returns
    none.
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch1 and scratch2 buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both inputs are in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. This approach provides 33 guard bits and there is no risk of overflow. The 34.30 result is then truncated to 34.15 format by discarding the low 15 bits and then saturated to 1.15 format.
    +
    Refer to arm_conv_fast_q15() for a faster but less precise version of this function for Cortex-M3 and Cortex-M4.
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_copy_q15(), arm_fill_q15(), srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_opt_q7 (q7_tpSrcA,
    uint32_t srcALen,
    q7_tpSrcB,
    uint32_t srcBLen,
    q7_tpDst,
    q15_tpScratch1,
    q15_tpScratch2 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    [in]*pScratch1points to scratch buffer(of type q15_t) of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    [in]*pScratch2points to scratch buffer (of type q15_t) of size min(srcALen, srcBLen).
    +
    +
    +
    Returns
    none.
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch1 and scratch2 buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. Both the inputs are represented in 1.7 format and multiplications yield a 2.14 result. The 2.14 intermediate results are accumulated in a 32-bit accumulator in 18.14 format. This approach provides 17 guard bits and there is no risk of overflow as long as max(srcALen, srcBLen)<131072. The 18.14 result is then truncated to 18.7 format by discarding the low 7 bits and then saturated to 1.7 format.
    + +

    References __PACKq7, __SIMD32, _SIMD32_OFFSET, arm_fill_q15(), srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both inputs are in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. This approach provides 33 guard bits and there is no risk of overflow. The 34.30 result is then truncated to 34.15 format by discarding the low 15 bits and then saturated to 1.15 format.
    +
    Refer to arm_conv_fast_q15() for a faster but less precise version of this function for Cortex-M3 and Cortex-M4.
    +
    Refer the function arm_conv_opt_q15() for a faster implementation of this function using scratch buffers.
    + +

    References __SIMD32, _SIMD32_OFFSET, srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_q31 (q31_tpSrcA,
    uint32_t srcALen,
    q31_tpSrcB,
    uint32_t srcBLen,
    q31_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. Scale down the inputs by log2(min(srcALen, srcBLen)) (log2 is read as log to the base 2) times to avoid overflows, as maximum of min(srcALen, srcBLen) number of additions are carried internally. The 2.62 accumulator is right shifted by 31 bits and saturated to 1.31 format to yield the final result.
    +
    See arm_conv_fast_q31() for a faster but less precise implementation of this function for Cortex-M3 and Cortex-M4.
    + +

    References srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_conv_q7 (q7_tpSrcA,
    uint32_t srcALen,
    q7_tpSrcB,
    uint32_t srcBLen,
    q7_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length srcALen+srcBLen-1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. Both the inputs are represented in 1.7 format and multiplications yield a 2.14 result. The 2.14 intermediate results are accumulated in a 32-bit accumulator in 18.14 format. This approach provides 17 guard bits and there is no risk of overflow as long as max(srcALen, srcBLen)<131072. The 18.14 result is then truncated to 18.7 format by discarding the low 7 bits and then saturated to 1.7 format.
    +
    Refer the function arm_conv_opt_q7() for a faster implementation of this function.
    + +

    References srcALen, and srcBLen.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___conv.js b/CMSIS/Documentation/DSP/html/group___conv.js new file mode 100644 index 0000000..407069e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___conv.js @@ -0,0 +1,12 @@ +var group___conv = +[ + [ "arm_conv_f32", "group___conv.html#ga3f860dc98c6fc4cafc421e4a2aed3c89", null ], + [ "arm_conv_fast_opt_q15", "group___conv.html#gaf16f490d245391ec18a42adc73d6d749", null ], + [ "arm_conv_fast_q15", "group___conv.html#gad75ca978ce906e04abdf86a8d76306d4", null ], + [ "arm_conv_fast_q31", "group___conv.html#ga51112dcdf9b3624eb05182cdc4da9ec0", null ], + [ "arm_conv_opt_q15", "group___conv.html#gac77dbcaef5c754cac27eab96c4753a3c", null ], + [ "arm_conv_opt_q7", "group___conv.html#ga4c7cf073e89d6d57cc4e711f078c3f68", null ], + [ "arm_conv_q15", "group___conv.html#gaccd6a89b0ff7a94df64610598e6e6893", null ], + [ "arm_conv_q31", "group___conv.html#ga946b58da734f1e4e78c91fcaab4b12b6", null ], + [ "arm_conv_q7", "group___conv.html#gae2070cb792a167e78dbad8d06b97cdab", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___convolution_example.html b/CMSIS/Documentation/DSP/html/group___convolution_example.html new file mode 100644 index 0000000..ba4a6e7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___convolution_example.html @@ -0,0 +1,161 @@ + + + + + +Convolution Example +CMSIS-DSP: Convolution Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Convolution Example
    +
    +
    +
    Description:
    +
    Demonstrates the convolution theorem with the use of the Complex FFT, Complex-by-Complex Multiplication, and Support Functions.
    +
    Algorithm:
    +
    The convolution theorem states that convolution in the time domain corresponds to multiplication in the frequency domain. Therefore, the Fourier transform of the convoution of two signals is equal to the product of their individual Fourier transforms. The Fourier transform of a signal can be evaluated efficiently using the Fast Fourier Transform (FFT).
    +
    Two input signals, a[n] and b[n], with lengths n1 and n2 respectively, are zero padded so that their lengths become N, which is greater than or equal to (n1+n2-1) and is a power of 4 as FFT implementation is radix-4. The convolution of a[n] and b[n] is obtained by taking the FFT of the input signals, multiplying the Fourier transforms of the two signals, and taking the inverse FFT of the multiplied result.
    +
    This is denoted by the following equations:
     A[k] = FFT(a[n],N)
    +B[k] = FFT(b[n],N)
    +conv(a[n], b[n]) = IFFT(A[k] * B[k], N)
    where A[k] and B[k] are the N-point FFTs of the signals a[n] and b[n] respectively. The length of the convolved signal is (n1+n2-1).
    +
    Block Diagram:
    +
    +Convolution.gif +
    +
    +
    Variables Description:
    +
      +
    • testInputA_f32 points to the first input sequence
    • +
    • srcALen length of the first input sequence
    • +
    • testInputB_f32 points to the second input sequence
    • +
    • srcBLen length of the second input sequence
    • +
    • outLen length of convolution output sequence, (srcALen + srcBLen - 1)
    • +
    • AxB points to the output array where the product of individual FFTs of inputs is stored.
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_convolution_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___corr.html b/CMSIS/Documentation/DSP/html/group___corr.html new file mode 100644 index 0000000..a76b492 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___corr.html @@ -0,0 +1,751 @@ + + + + + +Correlation +CMSIS-DSP: Correlation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Correlation
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_correlate_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst)
     Correlation of floating-point sequences.
     
    void arm_correlate_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch)
     Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_correlate_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Correlation of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_correlate_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Correlation of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    void arm_correlate_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch)
     Correlation of Q15 sequences.
     
    void arm_correlate_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2)
     Correlation of Q7 sequences.
     
    void arm_correlate_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst)
     Correlation of Q15 sequences.
     
    void arm_correlate_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst)
     Correlation of Q31 sequences.
     
    void arm_correlate_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst)
     Correlation of Q7 sequences.
     
    +

    Description

    +

    Correlation is a mathematical operation that is similar to convolution. As with convolution, correlation uses two signals to produce a third signal. The underlying algorithms in correlation and convolution are identical except that one of the inputs is flipped in convolution. Correlation is commonly used to measure the similarity between two signals. It has applications in pattern recognition, cryptanalysis, and searching. The CMSIS library provides correlation functions for Q7, Q15, Q31 and floating-point data types. Fast versions of the Q15 and Q31 functions are also provided.

    +
    Algorithm
    Let a[n] and b[n] be sequences of length srcALen and srcBLen samples respectively. The convolution of the two signals is denoted by
        
    +                  c[n] = a[n] * b[n]    
    +
    In correlation, one of the signals is flipped in time
        
    +                  c[n] = a[n] * b[-n]    
    +
    +
    and this is mathematically defined as
    +CorrelateEquation.gif +
    +
    +
    The pSrcA points to the first input vector of length srcALen and pSrcB points to the second input vector of length srcBLen. The result c[n] is of length 2 * max(srcALen, srcBLen) - 1 and is defined over the interval n=0, 1, 2, ..., (2 * max(srcALen, srcBLen) - 2). The output result is written to pDst and the calling function must allocate 2 * max(srcALen, srcBLen) - 1 words for the result.
    +

    Note

    +
    The pDst should be initialized to all zeros before being used.
    +

    Fixed-Point Behavior

    +
    Correlation requires summing up a large number of intermediate products. As such, the Q7, Q15, and Q31 functions run a risk of overflow and saturation. Refer to the function specific documentation below for further details of the particular algorithm used.
    +

    Fast Versions

    +
    Fast versions are supported for Q31 and Q15. Cycles for Fast versions are less compared to Q31 and Q15 of correlate and the design requires the input signals should be scaled down to avoid intermediate overflows.
    +

    Opt Versions

    +
    Opt versions are supported for Q15 and Q7. Design uses internal scratch buffer for getting good optimisation. These versions are optimised in cycles and consumes more memory(Scratch memory) compared to Q15 and Q7 versions of correlate
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_f32 (float32_tpSrcA,
    uint32_t srcALen,
    float32_tpSrcB,
    uint32_t srcBLen,
    float32_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    +
    +
    +
    Returns
    none.
    + +

    References srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_fast_opt_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    q15_tpScratch 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    [in]*pScratchpoints to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    +
    +
    +
    Returns
    none.
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    This fast version uses a 32-bit accumulator with 2.30 format. The accumulator maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. Scale down one of the inputs by 1/min(srcALen, srcBLen) to avoid overflow since a maximum of min(srcALen, srcBLen) number of additions is carried internally. The 2.30 accumulator is right shifted by 15 bits and then saturated to 1.15 format to yield the final result.
    +
    See arm_correlate_q15() for a slower implementation of this function which uses a 64-bit accumulator to avoid wrap around distortion.
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_copy_q15(), arm_fill_q15(), srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_fast_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This fast version uses a 32-bit accumulator with 2.30 format. The accumulator maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. Scale down one of the inputs by 1/min(srcALen, srcBLen) to avoid overflow since a maximum of min(srcALen, srcBLen) number of additions is carried internally. The 2.30 accumulator is right shifted by 15 bits and then saturated to 1.15 format to yield the final result.
    +
    See arm_correlate_q15() for a slower implementation of this function which uses a 64-bit accumulator to avoid wrap around distortion.
    + +

    References __SIMD32, _SIMD32_OFFSET, srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_fast_q31 (q31_tpSrcA,
    uint32_t srcALen,
    q31_tpSrcB,
    uint32_t srcBLen,
    q31_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This function is optimized for speed at the expense of fixed-point precision and overflow protection. The result of each 1.31 x 1.31 multiplication is truncated to 2.30 format. These intermediate results are accumulated in a 32-bit register in 2.30 format. Finally, the accumulator is saturated and converted to a 1.31 result.
    +
    The fast version has the same overflow behavior as the standard version but provides less precision since it discards the low 32 bits of each multiplication result. In order to avoid overflows completely the input signals must be scaled down. The input signals should be scaled down to avoid intermediate overflows. Scale down one of the inputs by 1/min(srcALen, srcBLen)to avoid overflows since a maximum of min(srcALen, srcBLen) number of additions is carried internally.
    +
    See arm_correlate_q31() for a slower implementation of this function which uses 64-bit accumulation to provide higher precision.
    + +

    References srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_opt_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    q15_tpScratch 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    [in]*pScratchpoints to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    +
    +
    +
    Returns
    none.
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both inputs are in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. This approach provides 33 guard bits and there is no risk of overflow. The 34.30 result is then truncated to 34.15 format by discarding the low 15 bits and then saturated to 1.15 format.
    +
    Refer to arm_correlate_fast_q15() for a faster but less precise version of this function for Cortex-M3 and Cortex-M4.
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_copy_q15(), arm_fill_q15(), srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_opt_q7 (q7_tpSrcA,
    uint32_t srcALen,
    q7_tpSrcB,
    uint32_t srcBLen,
    q7_tpDst,
    q15_tpScratch1,
    q15_tpScratch2 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    [in]*pScratch1points to scratch buffer(of type q15_t) of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    [in]*pScratch2points to scratch buffer (of type q15_t) of size min(srcALen, srcBLen).
    +
    +
    +
    Returns
    none.
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch1 and scratch2 buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. Both the inputs are represented in 1.7 format and multiplications yield a 2.14 result. The 2.14 intermediate results are accumulated in a 32-bit accumulator in 18.14 format. This approach provides 17 guard bits and there is no risk of overflow as long as max(srcALen, srcBLen)<131072. The 18.14 result is then truncated to 18.7 format by discarding the low 7 bits and saturated to 1.7 format.
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_fill_q15(), srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both inputs are in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. This approach provides 33 guard bits and there is no risk of overflow. The 34.30 result is then truncated to 34.15 format by discarding the low 15 bits and then saturated to 1.15 format.
    +
    Refer to arm_correlate_fast_q15() for a faster but less precise version of this function for Cortex-M3 and Cortex-M4.
    +
    Refer the function arm_correlate_opt_q15() for a faster implementation of this function using scratch buffers.
    + +

    References __SIMD32, _SIMD32_OFFSET, srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_q31 (q31_tpSrcA,
    uint32_t srcALen,
    q31_tpSrcB,
    uint32_t srcBLen,
    q31_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. Scale down one of the inputs by 1/min(srcALen, srcBLen)to avoid overflows since a maximum of min(srcALen, srcBLen) number of additions is carried internally. The 2.62 accumulator is right shifted by 31 bits and saturated to 1.31 format to yield the final result.
    +
    See arm_correlate_fast_q31() for a faster but less precise implementation of this function for Cortex-M3 and Cortex-M4.
    + +

    References srcALen, and srcBLen.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_correlate_q7 (q7_tpSrcA,
    uint32_t srcALen,
    q7_tpSrcB,
    uint32_t srcBLen,
    q7_tpDst 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written. Length 2 * max(srcALen, srcBLen) - 1.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. Both the inputs are represented in 1.7 format and multiplications yield a 2.14 result. The 2.14 intermediate results are accumulated in a 32-bit accumulator in 18.14 format. This approach provides 17 guard bits and there is no risk of overflow as long as max(srcALen, srcBLen)<131072. The 18.14 result is then truncated to 18.7 format by discarding the low 7 bits and saturated to 1.7 format.
    +
    Refer the function arm_correlate_opt_q7() for a faster implementation of this function.
    + +

    References srcALen, and srcBLen.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___corr.js b/CMSIS/Documentation/DSP/html/group___corr.js new file mode 100644 index 0000000..a213e72 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___corr.js @@ -0,0 +1,12 @@ +var group___corr = +[ + [ "arm_correlate_f32", "group___corr.html#ga22021e4222773f01e9960358a531cfb8", null ], + [ "arm_correlate_fast_opt_q15", "group___corr.html#ga40a0236b17220e8e22a22b5bc1c53c6b", null ], + [ "arm_correlate_fast_q15", "group___corr.html#gac8de3da44f58e86c2c86156276ca154f", null ], + [ "arm_correlate_fast_q31", "group___corr.html#gabecd3d7b077dbbef43f93e9e037815ed", null ], + [ "arm_correlate_opt_q15", "group___corr.html#gad71c0ec70ec69edbc48563d9a5f68451", null ], + [ "arm_correlate_opt_q7", "group___corr.html#ga746e8857cafe33ec5d6780729c18c311", null ], + [ "arm_correlate_q15", "group___corr.html#ga5ec96b8e420d68b0e626df0812274d46", null ], + [ "arm_correlate_q31", "group___corr.html#ga1367dc6c80476406c951e68d7fac4e8c", null ], + [ "arm_correlate_q7", "group___corr.html#ga284ddcc49e4ac532d52a70d0383c5992", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.html b/CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.html new file mode 100644 index 0000000..8d7d35f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.html @@ -0,0 +1,1163 @@ + + + + + +DCT Type IV Functions +CMSIS-DSP: DCT Type IV Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    DCT Type IV Functions
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_dct4_f32 (const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer)
     Processing function for the floating-point DCT4/IDCT4.
     
    arm_status arm_dct4_init_f32 (arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize)
     Initialization function for the floating-point DCT4/IDCT4.
     
    arm_status arm_dct4_init_q15 (arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize)
     Initialization function for the Q15 DCT4/IDCT4.
     
    arm_status arm_dct4_init_q31 (arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize)
     Initialization function for the Q31 DCT4/IDCT4.
     
    void arm_dct4_q15 (const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer)
     Processing function for the Q15 DCT4/IDCT4.
     
    void arm_dct4_q31 (const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer)
     Processing function for the Q31 DCT4/IDCT4.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    static const float32_t Weights_128 [256]
     
    static const float32_t Weights_512 [1024]
     
    static const float32_t Weights_2048 [4096]
     
    static const float32_t Weights_8192 [16384]
     
    static const float32_t cos_factors_128 [128]
     
    static const float32_t cos_factors_512 [512]
     
    static const float32_t cos_factors_2048 [2048]
     
    static const float32_t cos_factors_8192 [8192]
     
    static const q15_t ALIGN4 WeightsQ15_128 [256]
     
    static const q15_t ALIGN4 WeightsQ15_512 [1024]
     
    static const q15_t ALIGN4 WeightsQ15_2048 [4096]
     
    static const q15_t ALIGN4 WeightsQ15_8192 [16384]
     
    static const q15_t ALIGN4 cos_factorsQ15_128 [128]
     
    static const q15_t ALIGN4 cos_factorsQ15_512 [512]
     
    static const q15_t ALIGN4 cos_factorsQ15_2048 [2048]
     
    static const q15_t ALIGN4 cos_factorsQ15_8192 [8192]
     
    static const q31_t WeightsQ31_128 [256]
     
    static const q31_t WeightsQ31_512 [1024]
     
    static const q31_t WeightsQ31_2048 [4096]
     
    static const q31_t WeightsQ31_8192 [16384]
     
    static const q31_t cos_factorsQ31_128 [128]
     
    static const q31_t cos_factorsQ31_512 [512]
     
    static const q31_t cos_factorsQ31_2048 [2048]
     
    static const q31_t cos_factorsQ31_8192 [8192]
     
    +

    Description

    +

    Representation of signals by minimum number of values is important for storage and transmission. The possibility of large discontinuity between the beginning and end of a period of a signal in DFT can be avoided by extending the signal so that it is even-symmetric. Discrete Cosine Transform (DCT) is constructed such that its energy is heavily concentrated in the lower part of the spectrum and is very widely used in signal and image coding applications. The family of DCTs (DCT type- 1,2,3,4) is the outcome of different combinations of homogeneous boundary conditions. DCT has an excellent energy-packing capability, hence has many applications and in data compression in particular.

    +

    DCT is essentially the Discrete Fourier Transform(DFT) of an even-extended real signal. Reordering of the input data makes the computation of DCT just a problem of computing the DFT of a real signal with a few additional operations. This approach provides regular, simple, and very efficient DCT algorithms for practical hardware and software implementations.

    +

    DCT type-II can be implemented using Fast fourier transform (FFT) internally, as the transform is applied on real values, Real FFT can be used. DCT4 is implemented using DCT2 as their implementations are similar except with some added pre-processing and post-processing. DCT2 implementation can be described in the following steps:

    +
      +
    • Re-ordering input
    • +
    • Calculating Real FFT
    • +
    • Multiplication of weights and Real FFT output and getting real part from the product.
    • +
    +

    This process is explained by the block diagram below:

    +
    +DCT4.gif +
    +Discrete Cosine Transform - type-IV
    +
    Algorithm:
    The N-point type-IV DCT is defined as a real, linear transformation by the formula:
    +DCT4Equation.gif +
    + where k = 0,1,2,.....N-1
    +
    Its inverse is defined as follows:
    +IDCT4Equation.gif +
    + where n = 0,1,2,.....N-1
    +
    The DCT4 matrices become involutory (i.e. they are self-inverse) by multiplying with an overall scale factor of sqrt(2/N). The symmetry of the transform matrix indicates that the fast algorithms for the forward and inverse transform computation are identical. Note that the implementation of Inverse DCT4 and DCT4 is same, hence same process function can be used for both.
    +
    Lengths supported by the transform:
    As DCT4 internally uses Real FFT, it supports all the lengths supported by arm_rfft_f32(). The library provides separate functions for Q15, Q31, and floating-point data types.
    +
    Instance Structure
    The instances for Real FFT and FFT, cosine values table and twiddle factor table are stored in an instance data structure. A separate instance structure must be defined for each transform. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Initializes Real FFT as its process function is used internally in DCT4, by calling arm_rfft_init_f32().
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Manually initialize the instance structure as follows:
        
    +*arm_dct4_instance_f32 S = {N, Nby2, normalize, pTwiddle, pCosFactor, pRfft, pCfft};    
    +*arm_dct4_instance_q31 S = {N, Nby2, normalize, pTwiddle, pCosFactor, pRfft, pCfft};   
    +*arm_dct4_instance_q15 S = {N, Nby2, normalize, pTwiddle, pCosFactor, pRfft, pCfft};   
    +  
    where N is the length of the DCT4; Nby2 is half of the length of the DCT4; normalize is normalizing factor used and is equal to sqrt(2/N); pTwiddle points to the twiddle factor table; pCosFactor points to the cosFactor table; pRfft points to the real FFT instance; pCfft points to the complex FFT instance; The CFFT and RFFT structures also needs to be initialized, refer to arm_cfft_radix4_f32() and arm_rfft_f32() respectively for details regarding static initialization.
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the DCT4 transform functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_dct4_f32 (const arm_dct4_instance_f32S,
    float32_tpState,
    float32_tpInlineBuffer 
    )
    +
    +
    Parameters
    + + + + +
    [in]*Spoints to an instance of the floating-point DCT4/IDCT4 structure.
    [in]*pStatepoints to state buffer.
    [in,out]*pInlineBufferpoints to the in-place input and output buffer.
    +
    +
    +
    Returns
    none.
    + +

    References arm_mult_f32(), arm_scale_f32(), arm_dct4_instance_f32::N, arm_dct4_instance_f32::Nby2, arm_dct4_instance_f32::pCosFactor, and arm_dct4_instance_f32::pTwiddle.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_dct4_init_f32 (arm_dct4_instance_f32S,
    arm_rfft_instance_f32S_RFFT,
    arm_cfft_radix4_instance_f32S_CFFT,
    uint16_t N,
    uint16_t Nby2,
    float32_t normalize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of floating-point DCT4/IDCT4 structure.
    [in]*S_RFFTpoints to an instance of floating-point RFFT/RIFFT structure.
    [in]*S_CFFTpoints to an instance of floating-point CFFT/CIFFT structure.
    [in]Nlength of the DCT4.
    [in]Nby2half of the length of the DCT4.
    [in]normalizenormalizing factor.
    +
    +
    +
    Returns
    arm_status function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLenReal is not a supported transform length.
    +
    Normalizing factor:
    The normalizing factor is sqrt(2/N), which depends on the size of transform N. Floating-point normalizing factors are mentioned in the table below for different DCT sizes:
    +dct4NormalizingF32Table.gif +
    +
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, arm_rfft_init_f32(), cos_factors_128, cos_factors_2048, cos_factors_512, cos_factors_8192, arm_dct4_instance_f32::N, arm_dct4_instance_f32::Nby2, arm_dct4_instance_f32::normalize, arm_dct4_instance_f32::pCfft, arm_dct4_instance_f32::pCosFactor, arm_dct4_instance_f32::pRfft, arm_dct4_instance_f32::pTwiddle, status, Weights_128, Weights_2048, Weights_512, and Weights_8192.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_dct4_init_q15 (arm_dct4_instance_q15S,
    arm_rfft_instance_q15S_RFFT,
    arm_cfft_radix4_instance_q15S_CFFT,
    uint16_t N,
    uint16_t Nby2,
    q15_t normalize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of Q15 DCT4/IDCT4 structure.
    [in]*S_RFFTpoints to an instance of Q15 RFFT/RIFFT structure.
    [in]*S_CFFTpoints to an instance of Q15 CFFT/CIFFT structure.
    [in]Nlength of the DCT4.
    [in]Nby2half of the length of the DCT4.
    [in]normalizenormalizing factor.
    +
    +
    +
    Returns
    arm_status function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if N is not a supported transform length.
    +
    Normalizing factor:
    The normalizing factor is sqrt(2/N), which depends on the size of transform N. Normalizing factors in 1.15 format are mentioned in the table below for different DCT sizes:
    +dct4NormalizingQ15Table.gif +
    +
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, arm_rfft_init_q15(), cos_factorsQ15_128, cos_factorsQ15_2048, cos_factorsQ15_512, cos_factorsQ15_8192, arm_dct4_instance_q15::N, arm_dct4_instance_q15::Nby2, arm_dct4_instance_q15::normalize, arm_dct4_instance_q15::pCfft, arm_dct4_instance_q15::pCosFactor, arm_dct4_instance_q15::pRfft, arm_dct4_instance_q15::pTwiddle, status, WeightsQ15_128, WeightsQ15_2048, WeightsQ15_512, and WeightsQ15_8192.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_dct4_init_q31 (arm_dct4_instance_q31S,
    arm_rfft_instance_q31S_RFFT,
    arm_cfft_radix4_instance_q31S_CFFT,
    uint16_t N,
    uint16_t Nby2,
    q31_t normalize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of Q31 DCT4/IDCT4 structure.
    [in]*S_RFFTpoints to an instance of Q31 RFFT/RIFFT structure
    [in]*S_CFFTpoints to an instance of Q31 CFFT/CIFFT structure
    [in]Nlength of the DCT4.
    [in]Nby2half of the length of the DCT4.
    [in]normalizenormalizing factor.
    +
    +
    +
    Returns
    arm_status function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if N is not a supported transform length.
    +
    Normalizing factor:
    The normalizing factor is sqrt(2/N), which depends on the size of transform N. Normalizing factors in 1.31 format are mentioned in the table below for different DCT sizes:
    +dct4NormalizingQ31Table.gif +
    +
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, arm_rfft_init_q31(), cos_factorsQ31_128, cos_factorsQ31_2048, cos_factorsQ31_512, cos_factorsQ31_8192, arm_dct4_instance_q31::N, arm_dct4_instance_q31::Nby2, arm_dct4_instance_q31::normalize, arm_dct4_instance_q31::pCfft, arm_dct4_instance_q31::pCosFactor, arm_dct4_instance_q31::pRfft, arm_dct4_instance_q31::pTwiddle, status, WeightsQ31_128, WeightsQ31_2048, WeightsQ31_512, and WeightsQ31_8192.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_dct4_q15 (const arm_dct4_instance_q15S,
    q15_tpState,
    q15_tpInlineBuffer 
    )
    +
    +
    Parameters
    + + + + +
    [in]*Spoints to an instance of the Q15 DCT4 structure.
    [in]*pStatepoints to state buffer.
    [in,out]*pInlineBufferpoints to the in-place input and output buffer.
    +
    +
    +
    Returns
    none.
    +
    Input an output formats:
    Internally inputs are downscaled in the RFFT process function to avoid overflows. Number of bits downscaled, depends on the size of the transform. The input and output formats for different DCT sizes and number of bits to upscale are mentioned in the table below:
    +
    +dct4FormatsQ15Table.gif +
    + +

    References arm_mult_q15(), arm_shift_q15(), arm_dct4_instance_q15::N, arm_dct4_instance_q15::Nby2, arm_dct4_instance_q15::pCosFactor, and arm_dct4_instance_q15::pTwiddle.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_dct4_q31 (const arm_dct4_instance_q31S,
    q31_tpState,
    q31_tpInlineBuffer 
    )
    +
    +
    Parameters
    + + + + +
    [in]*Spoints to an instance of the Q31 DCT4 structure.
    [in]*pStatepoints to state buffer.
    [in,out]*pInlineBufferpoints to the in-place input and output buffer.
    +
    +
    +
    Returns
    none.
    +
    Input an output formats:
    Input samples need to be downscaled by 1 bit to avoid saturations in the Q31 DCT process, as the conversion from DCT2 to DCT4 involves one subtraction. Internally inputs are downscaled in the RFFT process function to avoid overflows. Number of bits downscaled, depends on the size of the transform. The input and output formats for different DCT sizes and number of bits to upscale are mentioned in the table below:
    +
    +dct4FormatsQ31Table.gif +
    + +

    References arm_cmplx_mult_cmplx_q31(), arm_mult_q31(), arm_rfft_q31(), arm_shift_q31(), arm_dct4_instance_q31::N, arm_dct4_instance_q31::Nby2, arm_dct4_instance_q31::normalize, arm_dct4_instance_q31::pCosFactor, arm_dct4_instance_q31::pRfft, and arm_dct4_instance_q31::pTwiddle.

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + + +
    + + + + +
    const float32_t cos_factors_128[128]
    +
    +static
    +
    +
    cosFactor tables are generated using the formula :
    cos_factors[n] = 2 * cos((2n+1)*pi/(4*N))
    +
    C command to generate the table
    +
     for(i = 0; i< N; i++)    
    +{    
    +   cos_factors[i]= 2 * cos((2*i+1)*c/2);    
    +} 
    +
    where N is the number of factors to generate and c is pi/(2*N)
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t cos_factors_2048[2048]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t cos_factors_512[512]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t cos_factors_8192[8192]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 cos_factorsQ15_128[128]
    +
    +static
    +
    +
    cosFactor tables are generated using the formula :
     cos_factors[n] = 2 * cos((2n+1)*pi/(4*N)) 
    +
    C command to generate the table
        
    +for(i = 0; i< N; i++)    
    +{    
    +  cos_factors[i]= 2 * cos((2*i+1)*c/2);    
    +} 
    +
    where N is the number of factors to generate and c is pi/(2*N)
    +
    Then converted to q15 format by multiplying with 2^31 and saturated if required.
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 cos_factorsQ15_2048[2048]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 cos_factorsQ15_512[512]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 cos_factorsQ15_8192[8192]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t cos_factorsQ31_128[128]
    +
    +static
    +
    +
    cosFactor tables are generated using the formula :
    cos_factors[n] = 2 * cos((2n+1)*pi/(4*N))
    +
    C command to generate the table
        
    +for(i = 0; i< N; i++)    
    +{    
    +  cos_factors[i]= 2 * cos((2*i+1)*c/2);    
    +} 
    +
    where N is the number of factors to generate and c is pi/(2*N)
    +
    Then converted to q31 format by multiplying with 2^31 and saturated if required.
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t cos_factorsQ31_2048[2048]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t cos_factorsQ31_512[512]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t cos_factorsQ31_8192[8192]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t Weights_128[256]
    +
    +static
    +
    +
    Weights tables are generated using the formula :
    weights[n] = e^(-j*n*pi/(2*N))
    +
    C command to generate the table
        
    +for(i = 0; i< N; i++)    
    +{    
    +   weights[2*i]= cos(i*c);    
    +   weights[(2*i)+1]= -sin(i * c);    
    +} 
    +
    Where N is the Number of weights to be calculated and c is pi/(2*N)
    +
    In the tables below the real and imaginary values are placed alternatively, hence the array length is 2*N.
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t Weights_2048[4096]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t Weights_512[1024]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t Weights_8192[16384]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 WeightsQ15_128[256]
    +
    +static
    +
    +
    Weights tables are generated using the formula :
    weights[n] = e^(-j*n*pi/(2*N))
    +
    C command to generate the table
        
    +for(i = 0; i< N; i++)    
    +{    
    +  weights[2*i]= cos(i*c);    
    +  weights[(2*i)+1]= -sin(i * c);    
    +} 
    +
    where N is the Number of weights to be calculated and c is pi/(2*N)
    +
    Converted the output to q15 format by multiplying with 2^31 and saturated if required.
    +
    In the tables below the real and imaginary values are placed alternatively, hence the array length is 2*N.
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 WeightsQ15_2048[4096]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 WeightsQ15_512[1024]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 WeightsQ15_8192[16384]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t WeightsQ31_128[256]
    +
    +static
    +
    +
    Weights tables are generated using the formula :
    weights[n] = e^(-j*n*pi/(2*N))
    +
    C command to generate the table
        
    +for(i = 0; i< N; i++)    
    +{    
    +  weights[2*i]= cos(i*c);    
    +  weights[(2*i)+1]= -sin(i * c);    
    +} 
    +
    where N is the Number of weights to be calculated and c is pi/(2*N)
    +
    Convert the output to q31 format by multiplying with 2^31 and saturated if required.
    +
    In the tables below the real and imaginary values are placed alternatively, hence the array length is 2*N.
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t WeightsQ31_2048[4096]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t WeightsQ31_512[1024]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t WeightsQ31_8192[16384]
    +
    +static
    +
    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.js b/CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.js new file mode 100644 index 0000000..6fdfca3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___d_c_t4___i_d_c_t4.js @@ -0,0 +1,33 @@ +var group___d_c_t4___i_d_c_t4 = +[ + [ "arm_dct4_f32", "group___d_c_t4___i_d_c_t4.html#gafd538d68886848bc090ec2b0d364cc81", null ], + [ "arm_dct4_init_f32", "group___d_c_t4___i_d_c_t4.html#gab094ad3bc6fa1b84e8b12a24e1850a06", null ], + [ "arm_dct4_init_q15", "group___d_c_t4___i_d_c_t4.html#ga966fd1b66a80873964533703ab5dc054", null ], + [ "arm_dct4_init_q31", "group___d_c_t4___i_d_c_t4.html#ga631bb59c7c97c814ff7147ecba6a716a", null ], + [ "arm_dct4_q15", "group___d_c_t4___i_d_c_t4.html#ga114cb9635059f678df291fcc887aaf2b", null ], + [ "arm_dct4_q31", "group___d_c_t4___i_d_c_t4.html#gad04d0baab6ed081d8e8afe02538eb80b", null ], + [ "cos_factors_128", "group___d_c_t4___i_d_c_t4.html#ga16248ed86161ef97538011b49f13e8b7", null ], + [ "cos_factors_2048", "group___d_c_t4___i_d_c_t4.html#ga1ba5306e0bc44730b40ab34cced45fd6", null ], + [ "cos_factors_512", "group___d_c_t4___i_d_c_t4.html#ga49fd288352ca5bb43f5cec52273b0d80", null ], + [ "cos_factors_8192", "group___d_c_t4___i_d_c_t4.html#gac12484542bc6aaecc754c855457411de", null ], + [ "cos_factorsQ15_128", "group___d_c_t4___i_d_c_t4.html#ga1477edd21c7b08b0b59a564f6c24d6c5", null ], + [ "cos_factorsQ15_2048", "group___d_c_t4___i_d_c_t4.html#gaeee5df7c1be2374441868ecbbc6c7e5d", null ], + [ "cos_factorsQ15_512", "group___d_c_t4___i_d_c_t4.html#gac056c3d026058eab3ba650828ff5642f", null ], + [ "cos_factorsQ15_8192", "group___d_c_t4___i_d_c_t4.html#ga988ff0563cc9df7848c9348871ac6c07", null ], + [ "cos_factorsQ31_128", "group___d_c_t4___i_d_c_t4.html#gabb8ee2004a3520fd08388db637d43875", null ], + [ "cos_factorsQ31_2048", "group___d_c_t4___i_d_c_t4.html#gaa15fc3fb058482defda371113cd12e74", null ], + [ "cos_factorsQ31_512", "group___d_c_t4___i_d_c_t4.html#ga3559569e603cb918911074be88523d0e", null ], + [ "cos_factorsQ31_8192", "group___d_c_t4___i_d_c_t4.html#gaf687c4bbdbc700a3ad5d807d28de63e4", null ], + [ "Weights_128", "group___d_c_t4___i_d_c_t4.html#gad00f29d896d64d6da7afbbb9d3e182a4", null ], + [ "Weights_2048", "group___d_c_t4___i_d_c_t4.html#gac3a2a00b3106dfcb5e0a582f50c65692", null ], + [ "Weights_512", "group___d_c_t4___i_d_c_t4.html#gaeb67b0be5b3c2139d660e02cedeed908", null ], + [ "Weights_8192", "group___d_c_t4___i_d_c_t4.html#ga45a8ec91e5da91790566105bc7e6f0c2", null ], + [ "WeightsQ15_128", "group___d_c_t4___i_d_c_t4.html#gaa4ff5e6f062efb1d1ec8c6c2207c3727", null ], + [ "WeightsQ15_2048", "group___d_c_t4___i_d_c_t4.html#ga2235ec700d0d6925d9733f48541d46f5", null ], + [ "WeightsQ15_512", "group___d_c_t4___i_d_c_t4.html#gadc8ee250fc217d6cb5c84dd7c1eb6d31", null ], + [ "WeightsQ15_8192", "group___d_c_t4___i_d_c_t4.html#ga4fdc60621eb306984a82ce8b2d645bb7", null ], + [ "WeightsQ31_128", "group___d_c_t4___i_d_c_t4.html#ga02d7024538a87214296b01d83ba36b02", null ], + [ "WeightsQ31_2048", "group___d_c_t4___i_d_c_t4.html#ga725b65c25a02b3cad329e18bb832f65e", null ], + [ "WeightsQ31_512", "group___d_c_t4___i_d_c_t4.html#ga31a8217a96f7d3171921e98398f31596", null ], + [ "WeightsQ31_8192", "group___d_c_t4___i_d_c_t4.html#ga16bf6bbe5c4c9b35f88253cf7bdcc435", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___dotproduct_example.html b/CMSIS/Documentation/DSP/html/group___dotproduct_example.html new file mode 100644 index 0000000..9c2c7b5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___dotproduct_example.html @@ -0,0 +1,152 @@ + + + + + +Dot Product Example +CMSIS-DSP: Dot Product Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Dot Product Example
    +
    +
    +
    Description:
    +
    Demonstrates the use of the Multiply and Add functions to perform the dot product. The dot product of two vectors is obtained by multiplying corresponding elements and summing the products.
    +
    Algorithm:
    +
    The two input vectors A and B with length n, are multiplied element-by-element and then added to obtain dot product.
    +
    This is denoted by the following equation:
      dotProduct = A[0] * B[0] + A[1] * B[1] + ... + A[n-1] * B[n-1]
    +
    Block Diagram:
    +
    +dotProduct.gif +
    +
    +
    Variables Description:
    +
      +
    • srcA_buf_f32 points to first input vector
    • +
    • srcB_buf_f32 points to second input vector
    • +
    • testOutput stores dot product of the two input vectors.
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_dotproduct_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r.html b/CMSIS/Documentation/DSP/html/group___f_i_r.html new file mode 100644 index 0000000..ecb8731 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r.html @@ -0,0 +1,776 @@ + + + + + +Finite Impulse Response (FIR) Filters +CMSIS-DSP: Finite Impulse Response (FIR) Filters + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Finite Impulse Response (FIR) Filters
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_fir_f32 (const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR filter.
     
    void arm_fir_fast_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the fast Q15 FIR filter for Cortex-M3 and Cortex-M4.
     
    IAR_ONLY_LOW_OPTIMIZATION_ENTER
    +void 
    arm_fir_fast_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the fast Q31 FIR filter for Cortex-M3 and Cortex-M4.
     
    void arm_fir_init_f32 (arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR filter.
     
    arm_status arm_fir_init_q15 (arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR filter.
     
    void arm_fir_init_q31 (arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR filter.
     
    void arm_fir_init_q7 (arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize)
     Initialization function for the Q7 FIR filter.
     
    void arm_fir_q15 (const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR filter.
     
    void arm_fir_q31 (const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR filter.
     
    void arm_fir_q7 (const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Processing function for the Q7 FIR filter.
     
    +

    Description

    +

    This set of functions implements Finite Impulse Response (FIR) filters for Q7, Q15, Q31, and floating-point data types. Fast versions of Q15 and Q31 are also provided. The functions operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc and pDst points to input and output arrays containing blockSize values.

    +
    Algorithm:
    The FIR filter algorithm is based upon a sequence of multiply-accumulate (MAC) operations. Each filter coefficient b[n] is multiplied by a state variable which equals a previous input sample x[n].
      
    +     y[n] = b[0] * x[n] + b[1] * x[n-1] + b[2] * x[n-2] + ...+ b[numTaps-1] * x[n-numTaps+1]  
    +  
    +
    +FIR.gif +
    +Finite Impulse Response filter
    +
    +
    pCoeffs points to a coefficient array of size numTaps. Coefficients are stored in time reversed order.
    +
      
    +     {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}  
    +  
    +
    pState points to a state array of size numTaps + blockSize - 1. Samples in the state buffer are stored in the following order.
    +
      
    +     {x[n-numTaps+1], x[n-numTaps], x[n-numTaps-1], x[n-numTaps-2]....x[0], x[1], ..., x[blockSize-1]}  
    +  
    +
    Note that the length of the state buffer exceeds the length of the coefficient array by blockSize-1. The increased state buffer length allows circular addressing, which is traditionally used in the FIR filters, to be avoided and yields a significant speed improvement. The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable arrays cannot be shared. There are separate instance structure declarations for each of the 4 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numTaps, pCoeffs, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros before static initialization. The code below statically initializes each of the 4 different data type filter instance structures
      
    +*arm_fir_instance_f32 S = {numTaps, pState, pCoeffs};  
    +*arm_fir_instance_q31 S = {numTaps, pState, pCoeffs};  
    +*arm_fir_instance_q15 S = {numTaps, pState, pCoeffs};  
    +*arm_fir_instance_q7 S =  {numTaps, pState, pCoeffs};  
    +  
    +

    where numTaps is the number of filter coefficients in the filter; pState is the address of the state buffer; pCoeffs is the address of the coefficient buffer.

    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the FIR filter functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_f32 (const arm_fir_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point FIR filter structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_fir_example_f32.c, and arm_signal_converge_example_f32.c.
    +
    +

    References arm_fir_instance_f32::numTaps, arm_fir_instance_f32::pCoeffs, and arm_fir_instance_f32::pState.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_fast_q15 (const arm_fir_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 FIR filter structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This fast version uses a 32-bit accumulator with 2.30 format. The accumulator maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around and distorts the result. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits. The 2.30 accumulator is then truncated to 2.15 format and saturated to yield the 1.15 result.
    +
    Refer to the function arm_fir_q15() for a slower implementation of this function which uses 64-bit accumulation to avoid wrap around distortion. Both the slow and the fast versions use the same instance structure. Use the function arm_fir_init_q15() to initialize the filter structure.
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_fir_instance_q15::numTaps, arm_fir_instance_q15::pCoeffs, and arm_fir_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    IAR_ONLY_LOW_OPTIMIZATION_ENTER void arm_fir_fast_q31 (const arm_fir_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    This function is optimized for speed at the expense of fixed-point precision and overflow protection. The result of each 1.31 x 1.31 multiplication is truncated to 2.30 format. These intermediate results are added to a 2.30 accumulator. Finally, the accumulator is saturated and converted to a 1.31 result. The fast version has the same overflow behavior as the standard version and provides less precision since it discards the low 32 bits of each multiplication result. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits.
    +
    Refer to the function arm_fir_q31() for a slower implementation of this function which uses a 64-bit accumulator to provide higher precision. Both the slow and the fast versions use the same instance structure. Use the function arm_fir_init_q31() to initialize the filter structure.
    + +

    References multAcc_32x32_keep32_R, arm_fir_instance_q31::numTaps, arm_fir_instance_q31::pCoeffs, and arm_fir_instance_q31::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_init_f32 (arm_fir_instance_f32S,
    uint16_t numTaps,
    float32_tpCoeffs,
    float32_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the floating-point FIR filter structure.
    [in]numTapsNumber of filter coefficients in the filter.
    [in]*pCoeffspoints to the filter coefficients buffer.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of samples that are processed per call.
    +
    +
    +
    Returns
    none.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    +
    pState points to the array of state variables. pState is of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_fir_f32().
    +
    Examples:
    arm_fir_example_f32.c, and arm_signal_converge_example_f32.c.
    +
    +

    References arm_fir_instance_f32::numTaps, arm_fir_instance_f32::pCoeffs, and arm_fir_instance_f32::pState.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_fir_init_q15 (arm_fir_instance_q15S,
    uint16_t numTaps,
    q15_tpCoeffs,
    q15_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the Q15 FIR filter structure.
    [in]numTapsNumber of filter coefficients in the filter. Must be even and greater than or equal to 4.
    [in]*pCoeffspoints to the filter coefficients buffer.
    [in]*pStatepoints to the state buffer.
    [in]blockSizeis number of samples processed per call.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if numTaps is not greater than or equal to 4 and even.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    Note that numTaps must be even and greater than or equal to 4. To implement an odd length filter simply increase numTaps by 1 and set the last coefficient to zero. For example, to implement a filter with numTaps=3 and coefficients
        
    +    {0.3, -0.8, 0.3}    
    +
    set numTaps=4 and use the coefficients:
        
    +    {0.3, -0.8, 0.3, 0}.    
    +
    Similarly, to implement a two point filter
        
    +    {0.3, -0.3}    
    +
    set numTaps=4 and use the coefficients:
        
    +    {0.3, -0.3, 0, 0}.    
    +
    +
    pState points to the array of state variables. pState is of length numTaps+blockSize, when running on Cortex-M4 and Cortex-M3 and is of length numTaps+blockSize-1, when running on Cortex-M0 where blockSize is the number of input samples processed by each call to arm_fir_q15().
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, arm_fir_instance_q15::numTaps, arm_fir_instance_q15::pCoeffs, arm_fir_instance_q15::pState, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_init_q31 (arm_fir_instance_q31S,
    uint16_t numTaps,
    q31_tpCoeffs,
    q31_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the Q31 FIR filter structure.
    [in]numTapsNumber of filter coefficients in the filter.
    [in]*pCoeffspoints to the filter coefficients buffer.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of samples that are processed per call.
    +
    +
    +
    Returns
    none.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    +
    pState points to the array of state variables. pState is of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_fir_q31().
    + +

    References arm_fir_instance_q31::numTaps, arm_fir_instance_q31::pCoeffs, and arm_fir_instance_q31::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_init_q7 (arm_fir_instance_q7S,
    uint16_t numTaps,
    q7_tpCoeffs,
    q7_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the Q7 FIR filter structure.
    [in]numTapsNumber of filter coefficients in the filter.
    [in]*pCoeffspoints to the filter coefficients buffer.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of samples that are processed per call.
    +
    +
    +
    Returns
    none
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    +
    pState points to the array of state variables. pState is of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_fir_q7().
    + +

    References arm_fir_instance_q7::numTaps, arm_fir_instance_q7::pCoeffs, and arm_fir_instance_q7::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_q15 (const arm_fir_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 FIR structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, state buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both coefficients and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. After all additions have been performed, the accumulator is truncated to 34.15 format by discarding low 15 bits. Lastly, the accumulator is saturated to yield a result in 1.15 format.
    +
    Refer to the function arm_fir_fast_q15() for a faster but less precise implementation of this function.
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_fir_instance_q15::numTaps, arm_fir_instance_q15::pCoeffs, and arm_fir_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_q31 (const arm_fir_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 FIR filter structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits. After all multiply-accumulates are performed, the 2.62 accumulator is right shifted by 31 bits and saturated to 1.31 format to yield the final result.
    +
    Refer to the function arm_fir_fast_q31() for a faster but less precise implementation of this filter for Cortex-M3 and Cortex-M4.
    + +

    References blockSize, arm_fir_instance_q31::numTaps, arm_fir_instance_q31::pCoeffs, and arm_fir_instance_q31::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_q7 (const arm_fir_instance_q7S,
    q7_tpSrc,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q7 FIR filter structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. Both coefficients and state variables are represented in 1.7 format and multiplications yield a 2.14 result. The 2.14 intermediate results are accumulated in a 32-bit accumulator in 18.14 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. The accumulator is converted to 18.7 format by discarding the low 7 bits. Finally, the result is truncated to 1.7 format.
    + +

    References blockSize, arm_fir_instance_q7::numTaps, arm_fir_instance_q7::pCoeffs, and arm_fir_instance_q7::pState.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r.js b/CMSIS/Documentation/DSP/html/group___f_i_r.js new file mode 100644 index 0000000..b8677bd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r.js @@ -0,0 +1,13 @@ +var group___f_i_r = +[ + [ "arm_fir_f32", "group___f_i_r.html#gae8fb334ea67eb6ecbd31824ddc14cd6a", null ], + [ "arm_fir_fast_q15", "group___f_i_r.html#gac7d35e9472e49ccd88800f37f3476bd3", null ], + [ "arm_fir_fast_q31", "group___f_i_r.html#ga70d11af009dcd25594c58c75cdb5d6e3", null ], + [ "arm_fir_init_f32", "group___f_i_r.html#ga98d13def6427e29522829f945d0967db", null ], + [ "arm_fir_init_q15", "group___f_i_r.html#gae2a50f692f41ba57e44ed0719b1368bd", null ], + [ "arm_fir_init_q31", "group___f_i_r.html#gac00d53af87684cbbe135767b55e748a5", null ], + [ "arm_fir_init_q7", "group___f_i_r.html#ga88e48688224d42dc173dbcec702f0c1d", null ], + [ "arm_fir_q15", "group___f_i_r.html#ga262d173058d6f80fdf60404ba262a8f5", null ], + [ "arm_fir_q31", "group___f_i_r.html#gaadd938c68ab08967cbb5fc696f384bb5", null ], + [ "arm_fir_q7", "group___f_i_r.html#ga31c91a0bf0962327ef8f626fae68ea32", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.html b/CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.html new file mode 100644 index 0000000..e21a8ef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.html @@ -0,0 +1,550 @@ + + + + + +Finite Impulse Response (FIR) Interpolator +CMSIS-DSP: Finite Impulse Response (FIR) Interpolator + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Finite Impulse Response (FIR) Interpolator
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_fir_interpolate_f32 (const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR interpolator.
     
    arm_status arm_fir_interpolate_init_f32 (arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR interpolator.
     
    arm_status arm_fir_interpolate_init_q15 (arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR interpolator.
     
    arm_status arm_fir_interpolate_init_q31 (arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR interpolator.
     
    void arm_fir_interpolate_q15 (const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR interpolator.
     
    void arm_fir_interpolate_q31 (const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR interpolator.
     
    +

    Description

    +

    These functions combine an upsampler (zero stuffer) and an FIR filter. They are used in multirate systems for increasing the sample rate of a signal without introducing high frequency images. Conceptually, the functions are equivalent to the block diagram below:

    +
    +FIRInterpolator.gif +
    +Components included in the FIR Interpolator functions
    +

    After upsampling by a factor of L, the signal should be filtered by a lowpass filter with a normalized cutoff frequency of 1/L in order to eliminate high frequency copies of the spectrum. The user of the function is responsible for providing the filter coefficients.

    +

    The FIR interpolator functions provided in the CMSIS DSP Library combine the upsampler and FIR filter in an efficient manner. The upsampler inserts L-1 zeros between each sample. Instead of multiplying by these zero values, the FIR filter is designed to skip them. This leads to an efficient implementation without any wasted effort. The functions operate on blocks of input and output data. pSrc points to an array of blockSize input values and pDst points to an array of blockSize*L output values.

    +

    The library provides separate functions for Q15, Q31, and floating-point data types.

    +
    Algorithm:
    The functions use a polyphase filter structure:
        
    +   y[n] = b[0] * x[n] + b[L]   * x[n-1] + ... + b[L*(phaseLength-1)] * x[n-phaseLength+1]    
    +   y[n+1] = b[1] * x[n] + b[L+1] * x[n-1] + ... + b[L*(phaseLength-1)+1] * x[n-phaseLength+1]    
    +   ...    
    +   y[n+(L-1)] = b[L-1] * x[n] + b[2*L-1] * x[n-1] + ....+ b[L*(phaseLength-1)+(L-1)] * x[n-phaseLength+1]    
    +
    This approach is more efficient than straightforward upsample-then-filter algorithms. With this method the computation is reduced by a factor of 1/L when compared to using a standard FIR filter.
    +
    pCoeffs points to a coefficient array of size numTaps. numTaps must be a multiple of the interpolation factor L and this is checked by the initialization functions. Internally, the function divides the FIR filter's impulse response into shorter filters of length phaseLength=numTaps/L. Coefficients are stored in time reversed order.
    +
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    +
    pState points to a state array of size blockSize + phaseLength - 1. Samples in the state buffer are stored in the order:
    +
        
    +   {x[n-phaseLength+1], x[n-phaseLength], x[n-phaseLength-1], x[n-phaseLength-2]....x[0], x[1], ..., x[blockSize-1]}    
    +
    The state variables are updated after each block of data is processed, the coefficients are untouched.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable array should be allocated separately. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer.
    • +
    • Checks to make sure that the length of the filter is a multiple of the interpolation factor. To do this manually without calling the init function, assign the follow subfields of the instance structure: L (interpolation factor), pCoeffs, phaseLength (numTaps / L), pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. The code below statically initializes each of the 3 different data type filter instance structures
        
    +arm_fir_interpolate_instance_f32 S = {L, phaseLength, pCoeffs, pState};    
    +arm_fir_interpolate_instance_q31 S = {L, phaseLength, pCoeffs, pState};    
    +arm_fir_interpolate_instance_q15 S = {L, phaseLength, pCoeffs, pState};    
    +
    where L is the interpolation factor; phaseLength=numTaps/L is the length of each of the shorter FIR filters used internally, pCoeffs is the address of the coefficient buffer; pState is the address of the state buffer. Be sure to set the values in the state buffer to zeros when doing static initialization.
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the FIR interpolate filter functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_interpolate_f32 (const arm_fir_interpolate_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point FIR interpolator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    + +

    References arm_fir_interpolate_instance_f32::L, arm_fir_interpolate_instance_f32::pCoeffs, arm_fir_interpolate_instance_f32::phaseLength, and arm_fir_interpolate_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_fir_interpolate_init_f32 (arm_fir_interpolate_instance_f32S,
    uint8_t L,
    uint16_t numTaps,
    float32_tpCoeffs,
    float32_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of the floating-point FIR interpolator structure.
    [in]Lupsample factor.
    [in]numTapsnumber of filter coefficients in the filter.
    [in]*pCoeffspoints to the filter coefficient buffer.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization was successful or ARM_MATH_LENGTH_ERROR if the filter length numTaps is not a multiple of the interpolation factor L.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[numTaps-2], ..., b[1], b[0]}    
    +
    The length of the filter numTaps must be a multiple of the interpolation factor L.
    +
    pState points to the array of state variables. pState is of length (numTaps/L)+blockSize-1 words where blockSize is the number of input samples processed by each call to arm_fir_interpolate_f32().
    + +

    References ARM_MATH_LENGTH_ERROR, ARM_MATH_SUCCESS, arm_fir_interpolate_instance_f32::L, arm_fir_interpolate_instance_f32::pCoeffs, arm_fir_interpolate_instance_f32::phaseLength, arm_fir_interpolate_instance_f32::pState, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_fir_interpolate_init_q15 (arm_fir_interpolate_instance_q15S,
    uint8_t L,
    uint16_t numTaps,
    q15_tpCoeffs,
    q15_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of the Q15 FIR interpolator structure.
    [in]Lupsample factor.
    [in]numTapsnumber of filter coefficients in the filter.
    [in]*pCoeffspoints to the filter coefficient buffer.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization was successful or ARM_MATH_LENGTH_ERROR if the filter length numTaps is not a multiple of the interpolation factor L.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[numTaps-2], ..., b[1], b[0]}    
    +
    The length of the filter numTaps must be a multiple of the interpolation factor L.
    +
    pState points to the array of state variables. pState is of length (numTaps/L)+blockSize-1 words where blockSize is the number of input samples processed by each call to arm_fir_interpolate_q15().
    + +

    References ARM_MATH_LENGTH_ERROR, ARM_MATH_SUCCESS, arm_fir_interpolate_instance_q15::L, arm_fir_interpolate_instance_q15::pCoeffs, arm_fir_interpolate_instance_q15::phaseLength, arm_fir_interpolate_instance_q15::pState, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_fir_interpolate_init_q31 (arm_fir_interpolate_instance_q31S,
    uint8_t L,
    uint16_t numTaps,
    q31_tpCoeffs,
    q31_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of the Q31 FIR interpolator structure.
    [in]Lupsample factor.
    [in]numTapsnumber of filter coefficients in the filter.
    [in]*pCoeffspoints to the filter coefficient buffer.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization was successful or ARM_MATH_LENGTH_ERROR if the filter length numTaps is not a multiple of the interpolation factor L.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[numTaps-2], ..., b[1], b[0]}    
    +
    The length of the filter numTaps must be a multiple of the interpolation factor L.
    +
    pState points to the array of state variables. pState is of length (numTaps/L)+blockSize-1 words where blockSize is the number of input samples processed by each call to arm_fir_interpolate_q31().
    + +

    References ARM_MATH_LENGTH_ERROR, ARM_MATH_SUCCESS, arm_fir_interpolate_instance_q31::L, arm_fir_interpolate_instance_q31::pCoeffs, arm_fir_interpolate_instance_q31::phaseLength, arm_fir_interpolate_instance_q31::pState, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_interpolate_q15 (const arm_fir_interpolate_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 FIR interpolator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both coefficients and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. After all additions have been performed, the accumulator is truncated to 34.15 format by discarding low 15 bits. Lastly, the accumulator is saturated to yield a result in 1.15 format.
    + +

    References __SIMD32, arm_fir_interpolate_instance_q15::L, arm_fir_interpolate_instance_q15::pCoeffs, arm_fir_interpolate_instance_q15::phaseLength, and arm_fir_interpolate_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_interpolate_q31 (const arm_fir_interpolate_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 FIR interpolator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by 1/(numTaps/L). since numTaps/L additions occur per output sample. After all multiply-accumulates are performed, the 2.62 accumulator is truncated to 1.32 format and then saturated to 1.31 format.
    + +

    References arm_fir_interpolate_instance_q31::L, arm_fir_interpolate_instance_q31::pCoeffs, arm_fir_interpolate_instance_q31::phaseLength, and arm_fir_interpolate_instance_q31::pState.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.js b/CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.js new file mode 100644 index 0000000..c56fdc3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r___interpolate.js @@ -0,0 +1,9 @@ +var group___f_i_r___interpolate = +[ + [ "arm_fir_interpolate_f32", "group___f_i_r___interpolate.html#ga9cae104c5cf60b4e7671c82264a8c12e", null ], + [ "arm_fir_interpolate_init_f32", "group___f_i_r___interpolate.html#ga0f857457a815946f7e4dca989ebf6ff6", null ], + [ "arm_fir_interpolate_init_q15", "group___f_i_r___interpolate.html#ga18e8c4a74ff1d0f88876cc63f675288f", null ], + [ "arm_fir_interpolate_init_q31", "group___f_i_r___interpolate.html#ga9d0ba38ce9f12a850dd242731d307476", null ], + [ "arm_fir_interpolate_q15", "group___f_i_r___interpolate.html#ga7962b5f9636e54899f75d0c5936800b5", null ], + [ "arm_fir_interpolate_q31", "group___f_i_r___interpolate.html#gaac9c0f01ed91c53f7083995d7411f5ee", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r___lattice.html b/CMSIS/Documentation/DSP/html/group___f_i_r___lattice.html new file mode 100644 index 0000000..33f1aa9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r___lattice.html @@ -0,0 +1,486 @@ + + + + + +Finite Impulse Response (FIR) Lattice Filters +CMSIS-DSP: Finite Impulse Response (FIR) Lattice Filters + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Finite Impulse Response (FIR) Lattice Filters
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_fir_lattice_f32 (const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR lattice filter.
     
    void arm_fir_lattice_init_f32 (arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState)
     Initialization function for the floating-point FIR lattice filter.
     
    void arm_fir_lattice_init_q15 (arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState)
     Initialization function for the Q15 FIR lattice filter.
     
    void arm_fir_lattice_init_q31 (arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState)
     Initialization function for the Q31 FIR lattice filter.
     
    void arm_fir_lattice_q15 (const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR lattice filter.
     
    void arm_fir_lattice_q31 (const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR lattice filter.
     
    +

    Description

    +

    This set of functions implements Finite Impulse Response (FIR) lattice filters for Q15, Q31 and floating-point data types. Lattice filters are used in a variety of adaptive filter applications. The filter structure is feedforward and the net impulse response is finite length. The functions operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc and pDst point to input and output arrays containing blockSize values.

    +
    Algorithm:
    +FIRLattice.gif +
    +Finite Impulse Response Lattice filter
    + The following difference equation is implemented:
        
    +     f0[n] = g0[n] = x[n]    
    +     fm[n] = fm-1[n] + km * gm-1[n-1] for m = 1, 2, ...M    
    +     gm[n] = km * fm-1[n] + gm-1[n-1] for m = 1, 2, ...M    
    +     y[n] = fM[n]    
    +  
    +
    pCoeffs points to tha array of reflection coefficients of size numStages. Reflection Coefficients are stored in the following order.
    +
        
    +     {k1, k2, ..., kM}    
    +  
    where M is number of stages
    +
    pState points to a state array of size numStages. The state variables (g values) hold previous inputs and are stored in the following order.
        
    +     {g0[n], g1[n], g2[n] ...gM-1[n]}    
    +  
    The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable arrays cannot be shared. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numStages, pCoeffs, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros and then manually initialize the instance structure as follows:
        
    +*arm_fir_lattice_instance_f32 S = {numStages, pState, pCoeffs};    
    +*arm_fir_lattice_instance_q31 S = {numStages, pState, pCoeffs};    
    +*arm_fir_lattice_instance_q15 S = {numStages, pState, pCoeffs};    
    +  
    +
    where numStages is the number of stages in the filter; pState is the address of the state buffer; pCoeffs is the address of the coefficient buffer.
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the FIR Lattice filter functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_lattice_f32 (const arm_fir_lattice_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point FIR lattice structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References blockSize, arm_fir_lattice_instance_f32::numStages, arm_fir_lattice_instance_f32::pCoeffs, and arm_fir_lattice_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_lattice_init_f32 (arm_fir_lattice_instance_f32S,
    uint16_t numStages,
    float32_tpCoeffs,
    float32_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point FIR lattice structure.
    [in]numStagesnumber of filter stages.
    [in]*pCoeffspoints to the coefficient buffer. The array is of length numStages.
    [in]*pStatepoints to the state buffer. The array is of length numStages.
    +
    +
    +
    Returns
    none.
    + +

    References arm_fir_lattice_instance_f32::numStages, arm_fir_lattice_instance_f32::pCoeffs, and arm_fir_lattice_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_lattice_init_q15 (arm_fir_lattice_instance_q15S,
    uint16_t numStages,
    q15_tpCoeffs,
    q15_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 FIR lattice structure.
    [in]numStagesnumber of filter stages.
    [in]*pCoeffspoints to the coefficient buffer. The array is of length numStages.
    [in]*pStatepoints to the state buffer. The array is of length numStages.
    +
    +
    +
    Returns
    none.
    + +

    References arm_fir_lattice_instance_q15::numStages, arm_fir_lattice_instance_q15::pCoeffs, and arm_fir_lattice_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_lattice_init_q31 (arm_fir_lattice_instance_q31S,
    uint16_t numStages,
    q31_tpCoeffs,
    q31_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 FIR lattice structure.
    [in]numStagesnumber of filter stages.
    [in]*pCoeffspoints to the coefficient buffer. The array is of length numStages.
    [in]*pStatepoints to the state buffer. The array is of length numStages.
    +
    +
    +
    Returns
    none.
    + +

    References arm_fir_lattice_instance_q31::numStages, arm_fir_lattice_instance_q31::pCoeffs, and arm_fir_lattice_instance_q31::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_lattice_q15 (const arm_fir_lattice_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 FIR lattice structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, blockSize, arm_fir_lattice_instance_q15::numStages, arm_fir_lattice_instance_q15::pCoeffs, and arm_fir_lattice_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_lattice_q31 (const arm_fir_lattice_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 FIR lattice structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior: In order to avoid overflows the input signal must be scaled down by 2*log2(numStages) bits.

    + +

    References arm_fir_lattice_instance_q31::numStages, arm_fir_lattice_instance_q31::pCoeffs, and arm_fir_lattice_instance_q31::pState.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r___lattice.js b/CMSIS/Documentation/DSP/html/group___f_i_r___lattice.js new file mode 100644 index 0000000..cb6cc67 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r___lattice.js @@ -0,0 +1,9 @@ +var group___f_i_r___lattice = +[ + [ "arm_fir_lattice_f32", "group___f_i_r___lattice.html#gae63a45a63a11a65f2eae8b8b1fe370a8", null ], + [ "arm_fir_lattice_init_f32", "group___f_i_r___lattice.html#ga86199a1590af2b8941c6532ee9d03229", null ], + [ "arm_fir_lattice_init_q15", "group___f_i_r___lattice.html#ga1b22f30ce1cc19bf5a5d7c9fca154d72", null ], + [ "arm_fir_lattice_init_q31", "group___f_i_r___lattice.html#gac05a17a0188bb851b58d19e572870a54", null ], + [ "arm_fir_lattice_q15", "group___f_i_r___lattice.html#gabb0ab07fd313b4d863070c3ddca51542", null ], + [ "arm_fir_lattice_q31", "group___f_i_r___lattice.html#ga2e36fd210e4a1a5dd333ce80dd6d9a88", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r___sparse.html b/CMSIS/Documentation/DSP/html/group___f_i_r___sparse.html new file mode 100644 index 0000000..ccc3e46 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r___sparse.html @@ -0,0 +1,725 @@ + + + + + +Finite Impulse Response (FIR) Sparse Filters +CMSIS-DSP: Finite Impulse Response (FIR) Sparse Filters + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Finite Impulse Response (FIR) Sparse Filters
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_fir_sparse_f32 (arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize)
     Processing function for the floating-point sparse FIR filter.
     
    void arm_fir_sparse_init_f32 (arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the floating-point sparse FIR filter.
     
    void arm_fir_sparse_init_q15 (arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q15 sparse FIR filter.
     
    void arm_fir_sparse_init_q31 (arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q31 sparse FIR filter.
     
    void arm_fir_sparse_init_q7 (arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize)
     Initialization function for the Q7 sparse FIR filter.
     
    void arm_fir_sparse_q15 (arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize)
     Processing function for the Q15 sparse FIR filter.
     
    void arm_fir_sparse_q31 (arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize)
     Processing function for the Q31 sparse FIR filter.
     
    void arm_fir_sparse_q7 (arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize)
     Processing function for the Q7 sparse FIR filter.
     
    +

    Description

    +

    This group of functions implements sparse FIR filters. Sparse FIR filters are equivalent to standard FIR filters except that most of the coefficients are equal to zero. Sparse filters are used for simulating reflections in communications and audio applications.

    +

    There are separate functions for Q7, Q15, Q31, and floating-point data types. The functions operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc and pDst points to input and output arrays respectively containing blockSize values.

    +
    Algorithm:
    The sparse filter instant structure contains an array of tap indices pTapDelay which specifies the locations of the non-zero coefficients. This is in addition to the coefficient array b. The implementation essentially skips the multiplications by zero and leads to an efficient realization.
       
    +      y[n] = b[0] * x[n-pTapDelay[0]] + b[1] * x[n-pTapDelay[1]] + b[2] * x[n-pTapDelay[2]] + ...+ b[numTaps-1] * x[n-pTapDelay[numTaps-1]]    
    +  
    +
    +FIRSparse.gif +
    +Sparse FIR filter. b[n] represents the filter coefficients
    +
    +
    pCoeffs points to a coefficient array of size numTaps; pTapDelay points to an array of nonzero indices and is also of size numTaps; pState points to a state array of size maxDelay + blockSize, where maxDelay is the largest offset value that is ever used in the pTapDelay array. Some of the processing functions also require temporary working buffers.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient and offset arrays may be shared among several instances while state variable arrays cannot be shared. There are separate instance structure declarations for each of the 4 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numTaps, pCoeffs, pTapDelay, maxDelay, stateIndex, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros before static initialization. The code below statically initializes each of the 4 different data type filter instance structures
        
    +*arm_fir_sparse_instance_f32 S = {numTaps, 0, pState, pCoeffs, maxDelay, pTapDelay};    
    +*arm_fir_sparse_instance_q31 S = {numTaps, 0, pState, pCoeffs, maxDelay, pTapDelay};    
    +*arm_fir_sparse_instance_q15 S = {numTaps, 0, pState, pCoeffs, maxDelay, pTapDelay};    
    +*arm_fir_sparse_instance_q7 S =  {numTaps, 0, pState, pCoeffs, maxDelay, pTapDelay};    
    +  
    +
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the sparse FIR filter functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_f32 (arm_fir_sparse_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    float32_tpScratchIn,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*Spoints to an instance of the floating-point sparse FIR structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]*pScratchInpoints to a temporary buffer of size blockSize.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    + +

    References arm_circularRead_f32(), arm_circularWrite_f32(), blockSize, arm_fir_sparse_instance_f32::maxDelay, arm_fir_sparse_instance_f32::numTaps, arm_fir_sparse_instance_f32::pCoeffs, arm_fir_sparse_instance_f32::pState, arm_fir_sparse_instance_f32::pTapDelay, and arm_fir_sparse_instance_f32::stateIndex.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_init_f32 (arm_fir_sparse_instance_f32S,
    uint16_t numTaps,
    float32_tpCoeffs,
    float32_tpState,
    int32_t * pTapDelay,
    uint16_t maxDelay,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in,out]*Spoints to an instance of the floating-point sparse FIR structure.
    [in]numTapsnumber of nonzero coefficients in the filter.
    [in]*pCoeffspoints to the array of filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]*pTapDelaypoints to the array of offset times.
    [in]maxDelaymaximum offset time supported.
    [in]blockSizenumber of samples that will be processed per block.
    +
    +
    +
    Returns
    none
    +

    Description:

    +
    pCoeffs holds the filter coefficients and has length numTaps. pState holds the filter's state variables and must be of length maxDelay + blockSize, where maxDelay is the maximum number of delay line values. blockSize is the number of samples processed by the arm_fir_sparse_f32() function.
    + +

    References arm_fir_sparse_instance_f32::maxDelay, arm_fir_sparse_instance_f32::numTaps, arm_fir_sparse_instance_f32::pCoeffs, arm_fir_sparse_instance_f32::pState, arm_fir_sparse_instance_f32::pTapDelay, and arm_fir_sparse_instance_f32::stateIndex.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_init_q15 (arm_fir_sparse_instance_q15S,
    uint16_t numTaps,
    q15_tpCoeffs,
    q15_tpState,
    int32_t * pTapDelay,
    uint16_t maxDelay,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in,out]*Spoints to an instance of the Q15 sparse FIR structure.
    [in]numTapsnumber of nonzero coefficients in the filter.
    [in]*pCoeffspoints to the array of filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]*pTapDelaypoints to the array of offset times.
    [in]maxDelaymaximum offset time supported.
    [in]blockSizenumber of samples that will be processed per block.
    +
    +
    +
    Returns
    none
    +

    Description:

    +
    pCoeffs holds the filter coefficients and has length numTaps. pState holds the filter's state variables and must be of length maxDelay + blockSize, where maxDelay is the maximum number of delay line values. blockSize is the number of words processed by arm_fir_sparse_q15() function.
    + +

    References arm_fir_sparse_instance_q15::maxDelay, arm_fir_sparse_instance_q15::numTaps, arm_fir_sparse_instance_q15::pCoeffs, arm_fir_sparse_instance_q15::pState, arm_fir_sparse_instance_q15::pTapDelay, and arm_fir_sparse_instance_q15::stateIndex.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_init_q31 (arm_fir_sparse_instance_q31S,
    uint16_t numTaps,
    q31_tpCoeffs,
    q31_tpState,
    int32_t * pTapDelay,
    uint16_t maxDelay,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in,out]*Spoints to an instance of the Q31 sparse FIR structure.
    [in]numTapsnumber of nonzero coefficients in the filter.
    [in]*pCoeffspoints to the array of filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]*pTapDelaypoints to the array of offset times.
    [in]maxDelaymaximum offset time supported.
    [in]blockSizenumber of samples that will be processed per block.
    +
    +
    +
    Returns
    none
    +

    Description:

    +
    pCoeffs holds the filter coefficients and has length numTaps. pState holds the filter's state variables and must be of length maxDelay + blockSize, where maxDelay is the maximum number of delay line values. blockSize is the number of words processed by arm_fir_sparse_q31() function.
    + +

    References arm_fir_sparse_instance_q31::maxDelay, arm_fir_sparse_instance_q31::numTaps, arm_fir_sparse_instance_q31::pCoeffs, arm_fir_sparse_instance_q31::pState, arm_fir_sparse_instance_q31::pTapDelay, and arm_fir_sparse_instance_q31::stateIndex.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_init_q7 (arm_fir_sparse_instance_q7S,
    uint16_t numTaps,
    q7_tpCoeffs,
    q7_tpState,
    int32_t * pTapDelay,
    uint16_t maxDelay,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in,out]*Spoints to an instance of the Q7 sparse FIR structure.
    [in]numTapsnumber of nonzero coefficients in the filter.
    [in]*pCoeffspoints to the array of filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]*pTapDelaypoints to the array of offset times.
    [in]maxDelaymaximum offset time supported.
    [in]blockSizenumber of samples that will be processed per block.
    +
    +
    +
    Returns
    none
    +

    Description:

    +
    pCoeffs holds the filter coefficients and has length numTaps. pState holds the filter's state variables and must be of length maxDelay + blockSize, where maxDelay is the maximum number of delay line values. blockSize is the number of samples processed by the arm_fir_sparse_q7() function.
    + +

    References arm_fir_sparse_instance_q7::maxDelay, arm_fir_sparse_instance_q7::numTaps, arm_fir_sparse_instance_q7::pCoeffs, arm_fir_sparse_instance_q7::pState, arm_fir_sparse_instance_q7::pTapDelay, and arm_fir_sparse_instance_q7::stateIndex.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_q15 (arm_fir_sparse_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    q15_tpScratchIn,
    q31_tpScratchOut,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q15 sparse FIR structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]*pScratchInpoints to a temporary buffer of size blockSize.
    [in]*pScratchOutpoints to a temporary buffer of size blockSize.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 32-bit accumulator. The 1.15 x 1.15 multiplications yield a 2.30 result and these are added to a 2.30 accumulator. Thus the full precision of the multiplications is maintained but there is only a single guard bit in the accumulator. If the accumulator result overflows it will wrap around rather than saturate. After all multiply-accumulates are performed, the 2.30 accumulator is truncated to 2.15 format and then saturated to 1.15 format. In order to avoid overflows the input signal or coefficients must be scaled down by log2(numTaps) bits.
    + +

    References __SIMD32, arm_circularRead_q15(), arm_circularWrite_q15(), blockSize, arm_fir_sparse_instance_q15::maxDelay, arm_fir_sparse_instance_q15::numTaps, arm_fir_sparse_instance_q15::pCoeffs, arm_fir_sparse_instance_q15::pState, arm_fir_sparse_instance_q15::pTapDelay, and arm_fir_sparse_instance_q15::stateIndex.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_q31 (arm_fir_sparse_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    q31_tpScratchIn,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*Spoints to an instance of the Q31 sparse FIR structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]*pScratchInpoints to a temporary buffer of size blockSize.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 32-bit accumulator. The 1.31 x 1.31 multiplications are truncated to 2.30 format. This leads to loss of precision on the intermediate multiplications and provides only a single guard bit. If the accumulator result overflows, it wraps around rather than saturate. In order to avoid overflows the input signal or coefficients must be scaled down by log2(numTaps) bits.
    + +

    References arm_circularRead_f32(), arm_circularWrite_f32(), blockSize, arm_fir_sparse_instance_q31::maxDelay, arm_fir_sparse_instance_q31::numTaps, arm_fir_sparse_instance_q31::pCoeffs, arm_fir_sparse_instance_q31::pState, arm_fir_sparse_instance_q31::pTapDelay, and arm_fir_sparse_instance_q31::stateIndex.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_sparse_q7 (arm_fir_sparse_instance_q7S,
    q7_tpSrc,
    q7_tpDst,
    q7_tpScratchIn,
    q31_tpScratchOut,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q7 sparse FIR structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]*pScratchInpoints to a temporary buffer of size blockSize.
    [in]*pScratchOutpoints to a temporary buffer of size blockSize.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. Both coefficients and state variables are represented in 1.7 format and multiplications yield a 2.14 result. The 2.14 intermediate results are accumulated in a 32-bit accumulator in 18.14 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. The accumulator is then converted to 18.7 format by discarding the low 7 bits. Finally, the result is truncated to 1.7 format.
    + +

    References __PACKq7, __SIMD32, arm_circularRead_q7(), arm_circularWrite_q7(), blockSize, arm_fir_sparse_instance_q7::maxDelay, arm_fir_sparse_instance_q7::numTaps, arm_fir_sparse_instance_q7::pCoeffs, arm_fir_sparse_instance_q7::pState, arm_fir_sparse_instance_q7::pTapDelay, and arm_fir_sparse_instance_q7::stateIndex.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r___sparse.js b/CMSIS/Documentation/DSP/html/group___f_i_r___sparse.js new file mode 100644 index 0000000..8c6bb23 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r___sparse.js @@ -0,0 +1,11 @@ +var group___f_i_r___sparse = +[ + [ "arm_fir_sparse_f32", "group___f_i_r___sparse.html#ga23a9284de5ee39406713b91d18ac8838", null ], + [ "arm_fir_sparse_init_f32", "group___f_i_r___sparse.html#ga86378a08a9d9e1e0e5de77843b34d396", null ], + [ "arm_fir_sparse_init_q15", "group___f_i_r___sparse.html#ga5eaa80bf72bcccef5a2c5fc6648d1baa", null ], + [ "arm_fir_sparse_init_q31", "group___f_i_r___sparse.html#ga9a0bb2134bc85d3e55c6be6d946ee634", null ], + [ "arm_fir_sparse_init_q7", "group___f_i_r___sparse.html#ga98f5c1a097d4572ce4ff3b0c58ebcdbd", null ], + [ "arm_fir_sparse_q15", "group___f_i_r___sparse.html#ga2bffda2e156e72427e19276cd9c3d3cc", null ], + [ "arm_fir_sparse_q31", "group___f_i_r___sparse.html#ga03e9c2f0f35ad67d20bac66be9f920ec", null ], + [ "arm_fir_sparse_q7", "group___f_i_r___sparse.html#gae86c145efc2d9ec32dc6d8c1ad2ccb3c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r__decimate.html b/CMSIS/Documentation/DSP/html/group___f_i_r__decimate.html new file mode 100644 index 0000000..0f7e096 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r__decimate.html @@ -0,0 +1,662 @@ + + + + + +Finite Impulse Response (FIR) Decimator +CMSIS-DSP: Finite Impulse Response (FIR) Decimator + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Finite Impulse Response (FIR) Decimator
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_fir_decimate_f32 (const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point FIR decimator.
     
    void arm_fir_decimate_fast_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
     
    void arm_fir_decimate_fast_q31 (arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR decimator (fast variant) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_fir_decimate_init_f32 (arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point FIR decimator.
     
    arm_status arm_fir_decimate_init_q15 (arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 FIR decimator.
     
    arm_status arm_fir_decimate_init_q31 (arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 FIR decimator.
     
    void arm_fir_decimate_q15 (const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 FIR decimator.
     
    void arm_fir_decimate_q31 (const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 FIR decimator.
     
    +

    Description

    +

    These functions combine an FIR filter together with a decimator. They are used in multirate systems for reducing the sample rate of a signal without introducing aliasing distortion. Conceptually, the functions are equivalent to the block diagram below:

    +
    +FIRDecimator.gif +
    +Components included in the FIR Decimator functions
    +

    When decimating by a factor of M, the signal should be prefiltered by a lowpass filter with a normalized cutoff frequency of 1/M in order to prevent aliasing distortion. The user of the function is responsible for providing the filter coefficients.

    +

    The FIR decimator functions provided in the CMSIS DSP Library combine the FIR filter and the decimator in an efficient manner. Instead of calculating all of the FIR filter outputs and discarding M-1 out of every M, only the samples output by the decimator are computed. The functions operate on blocks of input and output data. pSrc points to an array of blockSize input values and pDst points to an array of blockSize/M output values. In order to have an integer number of output samples blockSize must always be a multiple of the decimation factor M.

    +

    The library provides separate functions for Q15, Q31 and floating-point data types.

    +
    Algorithm:
    The FIR portion of the algorithm uses the standard form filter:
        
    +     y[n] = b[0] * x[n] + b[1] * x[n-1] + b[2] * x[n-2] + ...+ b[numTaps-1] * x[n-numTaps+1]    
    +  
    where, b[n] are the filter coefficients.
    +
    The pCoeffs points to a coefficient array of size numTaps. Coefficients are stored in time reversed order.
    +
        
    +     {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +  
    +
    pState points to a state array of size numTaps + blockSize - 1. Samples in the state buffer are stored in the order:
    +
        
    +     {x[n-numTaps+1], x[n-numTaps], x[n-numTaps-1], x[n-numTaps-2]....x[0], x[1], ..., x[blockSize-1]}    
    +  
    The state variables are updated after each block of data is processed, the coefficients are untouched.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable array should be allocated separately. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer.
    • +
    • Checks to make sure that the size of the input is a multiple of the decimation factor. To do this manually without calling the init function, assign the follow subfields of the instance structure: numTaps, pCoeffs, M (decimation factor), pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. The code below statically initializes each of the 3 different data type filter instance structures
        
    +*arm_fir_decimate_instance_f32 S = {M, numTaps, pCoeffs, pState};    
    +*arm_fir_decimate_instance_q31 S = {M, numTaps, pCoeffs, pState};    
    +*arm_fir_decimate_instance_q15 S = {M, numTaps, pCoeffs, pState};    
    +  
    where M is the decimation factor; numTaps is the number of filter coefficients in the filter; pCoeffs is the address of the coefficient buffer; pState is the address of the state buffer. Be sure to set the values in the state buffer to zeros when doing static initialization.
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the FIR decimate filter functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_decimate_f32 (const arm_fir_decimate_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point FIR decimator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    + +

    References arm_fir_decimate_instance_f32::M, arm_fir_decimate_instance_f32::numTaps, arm_fir_decimate_instance_f32::pCoeffs, and arm_fir_decimate_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_decimate_fast_q15 (const arm_fir_decimate_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 FIR decimator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, state buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    This fast version uses a 32-bit accumulator with 2.30 format. The accumulator maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around and distorts the result. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits (log2 is read as log to the base 2). The 2.30 accumulator is then truncated to 2.15 format and saturated to yield the 1.15 result.
    +
    Refer to the function arm_fir_decimate_q15() for a slower implementation of this function which uses 64-bit accumulation to avoid wrap around distortion. Both the slow and the fast versions use the same instance structure. Use the function arm_fir_decimate_init_q15() to initialize the filter structure.
    + +

    References __SIMD32, arm_fir_decimate_instance_q15::M, arm_fir_decimate_instance_q15::numTaps, arm_fir_decimate_instance_q15::pCoeffs, and arm_fir_decimate_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_decimate_fast_q31 (arm_fir_decimate_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 FIR decimator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none
    +

    Scaling and Overflow Behavior:

    +
    This function is optimized for speed at the expense of fixed-point precision and overflow protection. The result of each 1.31 x 1.31 multiplication is truncated to 2.30 format. These intermediate results are added to a 2.30 accumulator. Finally, the accumulator is saturated and converted to a 1.31 result. The fast version has the same overflow behavior as the standard version and provides less precision since it discards the low 32 bits of each multiplication result. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits (where log2 is read as log to the base 2).
    +
    Refer to the function arm_fir_decimate_q31() for a slower implementation of this function which uses a 64-bit accumulator to provide higher precision. Both the slow and the fast versions use the same instance structure. Use the function arm_fir_decimate_init_q31() to initialize the filter structure.
    + +

    References arm_fir_decimate_instance_q31::M, arm_fir_decimate_instance_q31::numTaps, arm_fir_decimate_instance_q31::pCoeffs, and arm_fir_decimate_instance_q31::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_fir_decimate_init_f32 (arm_fir_decimate_instance_f32S,
    uint16_t numTaps,
    uint8_t M,
    float32_tpCoeffs,
    float32_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of the floating-point FIR decimator structure.
    [in]numTapsnumber of coefficients in the filter.
    [in]Mdecimation factor.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization was successful or ARM_MATH_LENGTH_ERROR if blockSize is not a multiple of M.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    +
    pState points to the array of state variables. pState is of length numTaps+blockSize-1 words where blockSize is the number of input samples passed to arm_fir_decimate_f32(). M is the decimation factor.
    + +

    References ARM_MATH_LENGTH_ERROR, ARM_MATH_SUCCESS, arm_fir_decimate_instance_f32::M, arm_fir_decimate_instance_f32::numTaps, arm_fir_decimate_instance_f32::pCoeffs, arm_fir_decimate_instance_f32::pState, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_fir_decimate_init_q15 (arm_fir_decimate_instance_q15S,
    uint16_t numTaps,
    uint8_t M,
    q15_tpCoeffs,
    q15_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of the Q15 FIR decimator structure.
    [in]numTapsnumber of coefficients in the filter.
    [in]Mdecimation factor.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization was successful or ARM_MATH_LENGTH_ERROR if blockSize is not a multiple of M.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    +
    pState points to the array of state variables. pState is of length numTaps+blockSize-1 words where blockSize is the number of input samples to the call arm_fir_decimate_q15(). M is the decimation factor.
    + +

    References ARM_MATH_LENGTH_ERROR, ARM_MATH_SUCCESS, arm_fir_decimate_instance_q15::M, arm_fir_decimate_instance_q15::numTaps, arm_fir_decimate_instance_q15::pCoeffs, arm_fir_decimate_instance_q15::pState, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_fir_decimate_init_q31 (arm_fir_decimate_instance_q31S,
    uint16_t numTaps,
    uint8_t M,
    q31_tpCoeffs,
    q31_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in,out]*Spoints to an instance of the Q31 FIR decimator structure.
    [in]numTapsnumber of coefficients in the filter.
    [in]Mdecimation factor.
    [in]*pCoeffspoints to the filter coefficients.
    [in]*pStatepoints to the state buffer.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization was successful or ARM_MATH_LENGTH_ERROR if blockSize is not a multiple of M.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    +
    pState points to the array of state variables. pState is of length numTaps+blockSize-1 words where blockSize is the number of input samples passed to arm_fir_decimate_q31(). M is the decimation factor.
    + +

    References ARM_MATH_LENGTH_ERROR, ARM_MATH_SUCCESS, arm_fir_decimate_instance_q31::M, arm_fir_decimate_instance_q31::numTaps, arm_fir_decimate_instance_q31::pCoeffs, arm_fir_decimate_instance_q31::pState, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_decimate_q15 (const arm_fir_decimate_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 FIR decimator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the location where the output result is written.
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both coefficients and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. After all additions have been performed, the accumulator is truncated to 34.15 format by discarding low 15 bits. Lastly, the accumulator is saturated to yield a result in 1.15 format.
    +
    Refer to the function arm_fir_decimate_fast_q15() for a faster but less precise implementation of this function for Cortex-M3 and Cortex-M4.
    + +

    References __SIMD32, arm_fir_decimate_instance_q15::M, arm_fir_decimate_instance_q15::numTaps, arm_fir_decimate_instance_q15::pCoeffs, and arm_fir_decimate_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fir_decimate_q31 (const arm_fir_decimate_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 FIR decimator structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data
    [in]blockSizenumber of input samples to process per call.
    +
    +
    +
    Returns
    none
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits (where log2 is read as log to the base 2). After all multiply-accumulates are performed, the 2.62 accumulator is truncated to 1.32 format and then saturated to 1.31 format.
    +
    Refer to the function arm_fir_decimate_fast_q31() for a faster but less precise implementation of this function for Cortex-M3 and Cortex-M4.
    + +

    References arm_fir_decimate_instance_q31::M, arm_fir_decimate_instance_q31::numTaps, arm_fir_decimate_instance_q31::pCoeffs, and arm_fir_decimate_instance_q31::pState.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r__decimate.js b/CMSIS/Documentation/DSP/html/group___f_i_r__decimate.js new file mode 100644 index 0000000..a2cbc91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r__decimate.js @@ -0,0 +1,11 @@ +var group___f_i_r__decimate = +[ + [ "arm_fir_decimate_f32", "group___f_i_r__decimate.html#ga25aa3d58a90bf91b6a82272a0bc518f7", null ], + [ "arm_fir_decimate_fast_q15", "group___f_i_r__decimate.html#ga3f434c9a5d3b4e68061feac0714ea2ac", null ], + [ "arm_fir_decimate_fast_q31", "group___f_i_r__decimate.html#ga3c18cc3d0548a410c577f1bead9582b7", null ], + [ "arm_fir_decimate_init_f32", "group___f_i_r__decimate.html#gaaa2524b08220fd6c3f753e692ffc7d3b", null ], + [ "arm_fir_decimate_init_q15", "group___f_i_r__decimate.html#gada660e54b93d5d32178c6f5e1c6f368d", null ], + [ "arm_fir_decimate_init_q31", "group___f_i_r__decimate.html#ga9ed47c4e0f58affa935d84e0508a7f39", null ], + [ "arm_fir_decimate_q15", "group___f_i_r__decimate.html#gab8bef6d0f6a26fdbfce9485727713ce5", null ], + [ "arm_fir_decimate_q31", "group___f_i_r__decimate.html#gaef8e86add28f15fdc5ecc484e9dd7a4e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___f_i_r_l_p_f.html b/CMSIS/Documentation/DSP/html/group___f_i_r_l_p_f.html new file mode 100644 index 0000000..bd28b78 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___f_i_r_l_p_f.html @@ -0,0 +1,177 @@ + + + + + +FIR Lowpass Filter Example +CMSIS-DSP: FIR Lowpass Filter Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    FIR Lowpass Filter Example
    +
    +
    +
    Description:
    +
    Removes high frequency signal components from the input using an FIR lowpass filter. The example demonstrates how to configure an FIR filter and then pass data through it in a block-by-block fashion.
    +FIRLPF_signalflow.gif +
    +
    +
    Algorithm:
    +
    The input signal is a sum of two sine waves: 1 kHz and 15 kHz. This is processed by an FIR lowpass filter with cutoff frequency 6 kHz. The lowpass filter eliminates the 15 kHz signal leaving only the 1 kHz sine wave at the output.
    +
    The lowpass filter was designed using MATLAB with a sample rate of 48 kHz and a length of 29 points. The MATLAB code to generate the filter coefficients is shown below:
    +    h = fir1(28, 6/24);
    +
    The first argument is the "order" of the filter and is always one less than the desired length. The second argument is the normalized cutoff frequency. This is in the range 0 (DC) to 1.0 (Nyquist). A 6 kHz cutoff with a Nyquist frequency of 24 kHz lies at a normalized frequency of 6/24 = 0.25. The CMSIS FIR filter function requires the coefficients to be in time reversed order.
    +    fliplr(h)
    +
    The resulting filter coefficients and are shown below. Note that the filter is symmetric (a property of linear phase FIR filters) and the point of symmetry is sample 14. Thus the filter will have a delay of 14 samples for all frequencies.
    +
    +FIRLPF_coeffs.gif +
    +
    +
    The frequency response of the filter is shown next. The passband gain of the filter is 1.0 and it reaches 0.5 at the cutoff frequency 6 kHz.
    +
    +FIRLPF_response.gif +
    +
    +
    The input signal is shown below. The left hand side shows the signal in the time domain while the right hand side is a frequency domain representation. The two sine wave components can be clearly seen.
    +
    +FIRLPF_input.gif +
    +
    +
    The output of the filter is shown below. The 15 kHz component has been eliminated.
    +
    +FIRLPF_output.gif +
    +
    +
    Variables Description:
    +
      +
    • testInput_f32_1kHz_15kHz points to the input data
    • +
    • refOutput points to the reference output data
    • +
    • testOutput points to the test output data
    • +
    • firStateF32 points to state buffer
    • +
    • firCoeffs32 points to coefficient buffer
    • +
    • blockSize number of samples processed at a time
    • +
    • numBlocks number of frames
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_fir_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___fast.html b/CMSIS/Documentation/DSP/html/group___fast.html new file mode 100644 index 0000000..755d463 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___fast.html @@ -0,0 +1,185 @@ + + + + + +Real FFT Functions +CMSIS-DSP: Real FFT Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Real FFT Functions
    +
    +
    +
    The CMSIS DSP library includes specialized algorithms for computing the FFT of real data sequences. The FFT is defined over complex data but in many applications the input is real. Real FFT algorithms take advantage of the symmetry properties of the FFT and have a speed advantage over complex algorithms of the same length.
    +
    The Fast RFFT algorith relays on the mixed radix CFFT that save processor usage.
    +
    The real length N forward FFT of a sequence is computed using the steps shown below.
    +
    +RFFT.gif +
    +Real Fast Fourier Transform
    +
    +
    The real sequence is initially treated as if it were complex to perform a CFFT. Later, a processing stage reshapes the data to obtain half of the frequency spectrum in complex format. Except the first complex number that contains the two real numbers X[0] and X[N/2] all the data is complex. In other words, the first complex sample contains two real values packed.
    +
    The input for the inverse RFFT should keep the same format as the output of the forward RFFT. A first processing stage pre-process the data to later perform an inverse CFFT.
    +
    +RIFFT.gif +
    +Real Inverse Fast Fourier Transform
    +
    +
    The algorithms for floating-point, Q15, and Q31 data are slightly different and we describe each algorithm in turn.
    +
    Floating-point
    The main functions are arm_rfft_fast_f32() and arm_rfft_fast_init_f32(). The older functions arm_rfft_f32() and arm_rfft_init_f32() have been deprecated but are still documented.
    +
    The FFT of a real N-point sequence has even symmetry in the frequency domain. The second half of the data equals the conjugate of the first half flipped in frequency:
    +*X[0] - real data
    +*X[1] - complex data
    +*X[2] - complex data
    + ... 
    +*X[fftLen/2-1] - complex data
    +*X[fftLen/2] - real data
    +*X[fftLen/2+1] - conjugate of X[fftLen/2-1]
    +*X[fftLen/2+2] - conjugate of X[fftLen/2-2]
    + ... 
    +*X[fftLen-1] - conjugate of X[1]
    +  
    Looking at the data, we see that we can uniquely represent the FFT using only
    +*N/2+1 samples:
    +*X[0] - real data
    +*X[1] - complex data
    +*X[2] - complex data
    + ... 
    +*X[fftLen/2-1] - complex data
    +*X[fftLen/2] - real data
    +  
    Looking more closely we see that the first and last samples are real valued. They can be packed together and we can thus represent the FFT of an N-point real sequence by N/2 complex values:
    +*X[0],X[N/2] - packed real data: X[0] + jX[N/2]
    +*X[1] - complex data
    +*X[2] - complex data
    + ... 
    +*X[fftLen/2-1] - complex data
    +  
    The real FFT functions pack the frequency domain data in this fashion. The forward transform outputs the data in this form and the inverse transform expects input data in this form. The function always performs the needed bitreversal so that the input and output data is always in normal order. The functions support lengths of [32, 64, 128, ..., 4096] samples.
    +
    The forward and inverse real FFT functions apply the standard FFT scaling; no scaling on the forward transform and 1/fftLen scaling on the inverse transform.
    +
    Q15 and Q31
    The real algorithms are defined in a similar manner and utilize N/2 complex transforms behind the scenes.
    +
    The complex transforms used internally include scaling to prevent fixed-point overflows. The overall scaling equals 1/(fftLen/2).
    +
    A separate instance structure must be defined for each transform used but twiddle factor and bit reversal tables can be reused.
    +
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Initializes twiddle factor table and bit reversal table pointers.
    • +
    • Initializes the internal complex FFT data structure.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure should be manually initialized as follows:
    +*arm_rfft_instance_q31 S = {fftLenReal, fftLenBy2, ifftFlagR, bitReverseFlagR, twidCoefRModifier, pTwiddleAReal, pTwiddleBReal, pCfft};    
    +*arm_rfft_instance_q15 S = {fftLenReal, fftLenBy2, ifftFlagR, bitReverseFlagR, twidCoefRModifier, pTwiddleAReal, pTwiddleBReal, pCfft};    
    +  
    where fftLenReal is the length of the real transform; fftLenBy2 length of the internal complex transform. ifftFlagR Selects forward (=0) or inverse (=1) transform. bitReverseFlagR Selects bit reversed output (=0) or normal order output (=1). twidCoefRModifier stride modifier for the twiddle factor table. The value is based on the FFT length; pTwiddleARealpoints to the A array of twiddle coefficients; pTwiddleBRealpoints to the B array of twiddle coefficients; pCfft points to the CFFT Instance structure. The CFFT structure must also be initialized. Refer to arm_cfft_radix4_f32() for details regarding static initialization of the complex FFT instance structure.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___fill.html b/CMSIS/Documentation/DSP/html/group___fill.html new file mode 100644 index 0000000..879397e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___fill.html @@ -0,0 +1,329 @@ + + + + + +Vector Fill +CMSIS-DSP: Vector Fill + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Fill
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_fill_f32 (float32_t value, float32_t *pDst, uint32_t blockSize)
     Fills a constant value into a floating-point vector.
     
    void arm_fill_q15 (q15_t value, q15_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q15 vector.
     
    void arm_fill_q31 (q31_t value, q31_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q31 vector.
     
    void arm_fill_q7 (q7_t value, q7_t *pDst, uint32_t blockSize)
     Fills a constant value into a Q7 vector.
     
    +

    Description

    +

    Fills the destination vector with a constant value.

    +
        
    +        pDst[n] = value;   0 <= n < blockSize.    
    +

    There are separate functions for floating point, Q31, Q15, and Q7 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fill_f32 (float32_t value,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]valueinput value to be filled
    [out]*pDstpoints to output vector
    [in]blockSizelength of the output vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_convolution_example_f32.c, and arm_variance_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fill_q15 (q15_t value,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]valueinput value to be filled
    [out]*pDstpoints to output vector
    [in]blockSizelength of the output vector
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, and blockSize.

    + +

    Referenced by arm_conv_fast_opt_q15(), arm_conv_opt_q15(), arm_conv_opt_q7(), arm_conv_partial_fast_opt_q15(), arm_conv_partial_opt_q15(), arm_conv_partial_opt_q7(), arm_correlate_fast_opt_q15(), arm_correlate_opt_q15(), and arm_correlate_opt_q7().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fill_q31 (q31_t value,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]valueinput value to be filled
    [out]*pDstpoints to output vector
    [in]blockSizelength of the output vector
    +
    +
    +
    Returns
    none.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_fill_q7 (q7_t value,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]valueinput value to be filled
    [out]*pDstpoints to output vector
    [in]blockSizelength of the output vector
    +
    +
    +
    Returns
    none.
    + +

    References __PACKq7, __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___fill.js b/CMSIS/Documentation/DSP/html/group___fill.js new file mode 100644 index 0000000..b4f098c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___fill.js @@ -0,0 +1,7 @@ +var group___fill = +[ + [ "arm_fill_f32", "group___fill.html#ga2248e8d3901b4afb7827163132baad94", null ], + [ "arm_fill_q15", "group___fill.html#ga76b21c32a3783a2b3334d930a646e5d8", null ], + [ "arm_fill_q31", "group___fill.html#ga69cc781cf337bd0a31bb85c772a35f7f", null ], + [ "arm_fill_q7", "group___fill.html#ga0465cf326ada039ed792f94b033d9ec5", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___frequency_bin.html b/CMSIS/Documentation/DSP/html/group___frequency_bin.html new file mode 100644 index 0000000..22783dc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___frequency_bin.html @@ -0,0 +1,166 @@ + + + + + +Frequency Bin Example +CMSIS-DSP: Frequency Bin Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Frequency Bin Example
    +
    +
    +
    Description
    +
    Demonstrates the calculation of the maximum energy bin in the frequency domain of the input signal with the use of Complex FFT, Complex Magnitude, and Maximum functions.
    +
    Algorithm:
    +
    The input test signal contains a 10 kHz signal with uniformly distributed white noise. Calculating the FFT of the input signal will give us the maximum energy of the bin corresponding to the input frequency of 10 kHz.
    +
    Block Diagram:
    +FFTBin.gif +
    +Block Diagram
    +
    +
    The figure below shows the time domain signal of 10 kHz signal with uniformly distributed white noise, and the next figure shows the input in the frequency domain. The bin with maximum energy corresponds to 10 kHz signal.
    +
    +FFTBinInput.gif +
    +Input signal in Time domain
    +
    +FFTBinOutput.gif +
    +Input signal in Frequency domain
    +
    +
    Variables Description:
    +
      +
    • testInput_f32_10khz points to the input data
    • +
    • testOutput points to the output data
    • +
    • fftSize length of FFT
    • +
    • ifftFlag flag for the selection of CFFT/CIFFT
    • +
    • doBitReverse Flag for selection of normal order or bit reversed order
    • +
    • refIndex reference index value at which maximum energy of bin ocuurs
    • +
    • testIndex calculated index value at which maximum energy of bin ocuurs
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_fft_bin_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___g_e_q5_band.html b/CMSIS/Documentation/DSP/html/group___g_e_q5_band.html new file mode 100644 index 0000000..0180936 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___g_e_q5_band.html @@ -0,0 +1,186 @@ + + + + + +Graphic Audio Equalizer Example +CMSIS-DSP: Graphic Audio Equalizer Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Graphic Audio Equalizer Example
    +
    +
    +
    Description:
    +
    This example demonstrates how a 5-band graphic equalizer can be constructed using the Biquad cascade functions. A graphic equalizer is used in audio applications to vary the tonal quality of the audio.
    +
    Block Diagram:
    +
    The design is based on a cascade of 5 filter sections.
    +GEQ_signalflow.gif +
    + Each filter section is 4th order and consists of a cascade of two Biquads. Each filter has a nominal gain of 0 dB (1.0 in linear units) and boosts or cuts signals within a specific frequency range. The edge frequencies between the 5 bands are 100, 500, 2000, and 6000 Hz. Each band has an adjustable boost or cut in the range of +/- 9 dB. For example, the band that extends from 500 to 2000 Hz has the response shown below:
    +
    +GEQ_bandresponse.gif +
    +
    +
    With 1 dB steps, each filter has a total of 19 different settings. The filter coefficients for all possible 19 settings were precomputed in MATLAB and stored in a table. With 5 different tables, there are a total of 5 x 19 = 95 different 4th order filters. All 95 responses are shown below:
    +
    +GEQ_allbandresponse.gif +
    +
    +
    Each 4th order filter has 10 coefficents for a grand total of 950 different filter coefficients that must be tabulated. The input and output data is in Q31 format. For better noise performance, the two low frequency bands are implemented using the high precision 32x64-bit Biquad filters. The remaining 3 high frequency bands use standard 32x32-bit Biquad filters. The input signal used in the example is a logarithmic chirp.
    +
    +GEQ_inputchirp.gif +
    +
    +
    The array bandGains specifies the gain in dB to apply in each band. For example, if bandGains={0, -3, 6, 4, -6}; then the output signal will be:
    +
    +GEQ_outputchirp.gif +
    +
    +
    +
    Note
    The output chirp signal follows the gain or boost of each band.
    +
    +
    Variables Description:
    +
      +
    • testInput_f32 points to the input data
    • +
    • testRefOutput_f32 points to the reference output data
    • +
    • testOutput points to the test output data
    • +
    • inputQ31 temporary input buffer
    • +
    • outputQ31 temporary output buffer
    • +
    • biquadStateBand1Q31 points to state buffer for band1
    • +
    • biquadStateBand2Q31 points to state buffer for band2
    • +
    • biquadStateBand3Q31 points to state buffer for band3
    • +
    • biquadStateBand4Q31 points to state buffer for band4
    • +
    • biquadStateBand5Q31 points to state buffer for band5
    • +
    • coeffTable points to coefficient buffer for all bands
    • +
    • gainDB gain buffer which has gains applied for all the bands
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_graphic_equalizer_example_q31.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___i_i_r___lattice.html b/CMSIS/Documentation/DSP/html/group___i_i_r___lattice.html new file mode 100644 index 0000000..6ba3818 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___i_i_r___lattice.html @@ -0,0 +1,531 @@ + + + + + +Infinite Impulse Response (IIR) Lattice Filters +CMSIS-DSP: Infinite Impulse Response (IIR) Lattice Filters + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Infinite Impulse Response (IIR) Lattice Filters
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_iir_lattice_f32 (const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Processing function for the floating-point IIR lattice filter.
     
    void arm_iir_lattice_init_f32 (arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize)
     Initialization function for the floating-point IIR lattice filter.
     
    void arm_iir_lattice_init_q15 (arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize)
     Initialization function for the Q15 IIR lattice filter.
     
    void arm_iir_lattice_init_q31 (arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize)
     Initialization function for the Q31 IIR lattice filter.
     
    void arm_iir_lattice_q15 (const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Processing function for the Q15 IIR lattice filter.
     
    void arm_iir_lattice_q31 (const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Processing function for the Q31 IIR lattice filter.
     
    +

    Description

    +

    This set of functions implements lattice filters for Q15, Q31 and floating-point data types. Lattice filters are used in a variety of adaptive filter applications. The filter structure has feedforward and feedback components and the net impulse response is infinite length. The functions operate on blocks of input and output data and each call to the function processes blockSize samples through the filter. pSrc and pDst point to input and output arrays containing blockSize values.

    +
    Algorithm:
    +IIRLattice.gif +
    +Infinite Impulse Response Lattice filter
    +
        
    +     fN(n)   =  x(n)    
    +     fm-1(n) = fm(n) - km * gm-1(n-1)   for m = N, N-1, ...1    
    +     gm(n)   = km * fm-1(n) + gm-1(n-1) for m = N, N-1, ...1    
    +     y(n)    = vN * gN(n) + vN-1 * gN-1(n) + ...+ v0 * g0(n)    
    +  
    +
    pkCoeffs points to array of reflection coefficients of size numStages. Reflection coefficients are stored in time-reversed order.
    +
        
    +     {kN, kN-1, ....k1}    
    +  
    pvCoeffs points to the array of ladder coefficients of size (numStages+1). Ladder coefficients are stored in time-reversed order.
    +
        
    +     {vN, vN-1, ...v0}    
    +  
    pState points to a state array of size numStages + blockSize. The state variables shown in the figure above (the g values) are stored in the pState array. The state variables are updated after each block of data is processed; the coefficients are untouched.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter. Coefficient arrays may be shared among several instances while state variable arrays cannot be shared. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numStages, pkCoeffs, pvCoeffs, pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros and then manually initialize the instance structure as follows:
        
    +*arm_iir_lattice_instance_f32 S = {numStages, pState, pkCoeffs, pvCoeffs};    
    +*arm_iir_lattice_instance_q31 S = {numStages, pState, pkCoeffs, pvCoeffs};    
    +*arm_iir_lattice_instance_q15 S = {numStages, pState, pkCoeffs, pvCoeffs};    
    +  
    +
    where numStages is the number of stages in the filter; pState points to the state buffer array; pkCoeffs points to array of the reflection coefficients; pvCoeffs points to the array of ladder coefficients.
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the IIR lattice filter functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_iir_lattice_f32 (const arm_iir_lattice_instance_f32S,
    float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the floating-point IIR lattice structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References blockSize, arm_iir_lattice_instance_f32::numStages, arm_iir_lattice_instance_f32::pkCoeffs, arm_iir_lattice_instance_f32::pState, and arm_iir_lattice_instance_f32::pvCoeffs.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_iir_lattice_init_f32 (arm_iir_lattice_instance_f32S,
    uint16_t numStages,
    float32_tpkCoeffs,
    float32_tpvCoeffs,
    float32_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the floating-point IIR lattice structure.
    [in]numStagesnumber of stages in the filter.
    [in]*pkCoeffspoints to the reflection coefficient buffer. The array is of length numStages.
    [in]*pvCoeffspoints to the ladder coefficient buffer. The array is of length numStages+1.
    [in]*pStatepoints to the state buffer. The array is of length numStages+blockSize.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References arm_iir_lattice_instance_f32::numStages, arm_iir_lattice_instance_f32::pkCoeffs, arm_iir_lattice_instance_f32::pState, and arm_iir_lattice_instance_f32::pvCoeffs.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_iir_lattice_init_q15 (arm_iir_lattice_instance_q15S,
    uint16_t numStages,
    q15_tpkCoeffs,
    q15_tpvCoeffs,
    q15_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q15 IIR lattice structure.
    [in]numStagesnumber of stages in the filter.
    [in]*pkCoeffspoints to reflection coefficient buffer. The array is of length numStages.
    [in]*pvCoeffspoints to ladder coefficient buffer. The array is of length numStages+1.
    [in]*pStatepoints to state buffer. The array is of length numStages+blockSize.
    [in]blockSizenumber of samples to process per call.
    +
    +
    +
    Returns
    none.
    + +

    References arm_iir_lattice_instance_q15::numStages, arm_iir_lattice_instance_q15::pkCoeffs, arm_iir_lattice_instance_q15::pState, and arm_iir_lattice_instance_q15::pvCoeffs.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_iir_lattice_init_q31 (arm_iir_lattice_instance_q31S,
    uint16_t numStages,
    q31_tpkCoeffs,
    q31_tpvCoeffs,
    q31_tpState,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q31 IIR lattice structure.
    [in]numStagesnumber of stages in the filter.
    [in]*pkCoeffspoints to the reflection coefficient buffer. The array is of length numStages.
    [in]*pvCoeffspoints to the ladder coefficient buffer. The array is of length numStages+1.
    [in]*pStatepoints to the state buffer. The array is of length numStages+blockSize.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References arm_iir_lattice_instance_q31::numStages, arm_iir_lattice_instance_q31::pkCoeffs, arm_iir_lattice_instance_q31::pState, and arm_iir_lattice_instance_q31::pvCoeffs.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_iir_lattice_q15 (const arm_iir_lattice_instance_q15S,
    q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q15 IIR lattice structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both coefficients and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. After all additions have been performed, the accumulator is truncated to 34.15 format by discarding low 15 bits. Lastly, the accumulator is saturated to yield a result in 1.15 format.
    + +

    References __SIMD32, blockSize, arm_iir_lattice_instance_q15::numStages, arm_iir_lattice_instance_q15::pkCoeffs, arm_iir_lattice_instance_q15::pState, and arm_iir_lattice_instance_q15::pvCoeffs.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_iir_lattice_q31 (const arm_iir_lattice_instance_q31S,
    q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an instance of the Q31 IIR lattice structure.
    [in]*pSrcpoints to the block of input data.
    [out]*pDstpoints to the block of output data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by 2*log2(numStages) bits. After all multiply-accumulates are performed, the 2.62 accumulator is saturated to 1.32 format and then truncated to 1.31 format.
    + +

    References blockSize, clip_q63_to_q31(), arm_iir_lattice_instance_q31::numStages, arm_iir_lattice_instance_q31::pkCoeffs, arm_iir_lattice_instance_q31::pState, and arm_iir_lattice_instance_q31::pvCoeffs.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___i_i_r___lattice.js b/CMSIS/Documentation/DSP/html/group___i_i_r___lattice.js new file mode 100644 index 0000000..43f007e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___i_i_r___lattice.js @@ -0,0 +1,9 @@ +var group___i_i_r___lattice = +[ + [ "arm_iir_lattice_f32", "group___i_i_r___lattice.html#ga56164a0fe48619b8ceec160347bdd2ff", null ], + [ "arm_iir_lattice_init_f32", "group___i_i_r___lattice.html#gaed3b0230bb77439dc902daa625985e04", null ], + [ "arm_iir_lattice_init_q15", "group___i_i_r___lattice.html#ga1f4bc2dd3d5641e96815d3a5aad58998", null ], + [ "arm_iir_lattice_init_q31", "group___i_i_r___lattice.html#gab686c14175581797d9c3ad7bf1d5cc1e", null ], + [ "arm_iir_lattice_q15", "group___i_i_r___lattice.html#gaeb9e9599a288832ed123183eaa8b294a", null ], + [ "arm_iir_lattice_q31", "group___i_i_r___lattice.html#ga123b26fa9156cd8d3622dd85931741ed", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___l_m_s.html b/CMSIS/Documentation/DSP/html/group___l_m_s.html new file mode 100644 index 0000000..16064ff --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___l_m_s.html @@ -0,0 +1,610 @@ + + + + + +Least Mean Square (LMS) Filters +CMSIS-DSP: Least Mean Square (LMS) Filters + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Least Mean Square (LMS) Filters
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_lms_f32 (const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize)
     Processing function for floating-point LMS filter.
     
    void arm_lms_init_f32 (arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize)
     Initialization function for floating-point LMS filter.
     
    void arm_lms_init_q15 (arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift)
     Initialization function for the Q15 LMS filter.
     
    void arm_lms_init_q31 (arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift)
     Initialization function for Q31 LMS filter.
     
    void arm_lms_q15 (const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize)
     Processing function for Q15 LMS filter.
     
    void arm_lms_q31 (const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize)
     Processing function for Q31 LMS filter.
     
    +

    Description

    +

    LMS filters are a class of adaptive filters that are able to "learn" an unknown transfer functions. LMS filters use a gradient descent method in which the filter coefficients are updated based on the instantaneous error signal. Adaptive filters are often used in communication systems, equalizers, and noise removal. The CMSIS DSP Library contains LMS filter functions that operate on Q15, Q31, and floating-point data types. The library also contains normalized LMS filters in which the filter coefficient adaptation is indepedent of the level of the input signal.

    +

    An LMS filter consists of two components as shown below. The first component is a standard transversal or FIR filter. The second component is a coefficient update mechanism. The LMS filter has two input signals. The "input" feeds the FIR filter while the "reference input" corresponds to the desired output of the FIR filter. That is, the FIR filter coefficients are updated so that the output of the FIR filter matches the reference input. The filter coefficient update mechanism is based on the difference between the FIR filter output and the reference input. This "error signal" tends towards zero as the filter adapts. The LMS processing functions accept the input and reference input signals and generate the filter output and error signal.

    +
    +LMS.gif +
    +Internal structure of the Least Mean Square filter
    +

    The functions operate on blocks of data and each call to the function processes blockSize samples through the filter. pSrc points to input signal, pRef points to reference signal, pOut points to output signal and pErr points to error signal. All arrays contain blockSize values.

    +

    The functions operate on a block-by-block basis. Internally, the filter coefficients b[n] are updated on a sample-by-sample basis. The convergence of the LMS filter is slower compared to the normalized LMS algorithm.

    +
    Algorithm:
    The output signal y[n] is computed by a standard FIR filter:
        
    +     y[n] = b[0] * x[n] + b[1] * x[n-1] + b[2] * x[n-2] + ...+ b[numTaps-1] * x[n-numTaps+1]    
    + 
    +
    The error signal equals the difference between the reference signal d[n] and the filter output:
        
    +     e[n] = d[n] - y[n].    
    + 
    +
    After each sample of the error signal is computed, the filter coefficients b[k] are updated on a sample-by-sample basis:
        
    +     b[k] = b[k] + e[n] * mu * x[n-k],  for k=0, 1, ..., numTaps-1    
    + 
    where mu is the step size and controls the rate of coefficient convergence.
    +
    In the APIs, pCoeffs points to a coefficient array of size numTaps. Coefficients are stored in time reversed order.
    +
        
    +    {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    + 
    +
    pState points to a state array of size numTaps + blockSize - 1. Samples in the state buffer are stored in the order:
    +
        
    +    {x[n-numTaps+1], x[n-numTaps], x[n-numTaps-1], x[n-numTaps-2]....x[0], x[1], ..., x[blockSize-1]}    
    + 
    +
    Note that the length of the state buffer exceeds the length of the coefficient array by blockSize-1 samples. The increased state buffer length allows circular addressing, which is traditionally used in FIR filters, to be avoided and yields a significant speed improvement. The state variables are updated after each block of data is processed.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter and coefficient and state arrays cannot be shared among instances. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numTaps, pCoeffs, mu, postShift (not for f32), pState. Also set all of the values in pState to zero.
    • +
    +
    +
    Use of the initialization function is optional. However, if the initialization function is used, then the instance structure cannot be placed into a const data section. To place an instance structure into a const data section, the instance structure must be manually initialized. Set the values in the state buffer to zeros before static initialization. The code below statically initializes each of the 3 different data type filter instance structures
        
    +    arm_lms_instance_f32 S = {numTaps, pState, pCoeffs, mu};    
    +    arm_lms_instance_q31 S = {numTaps, pState, pCoeffs, mu, postShift};    
    +    arm_lms_instance_q15 S = {numTaps, pState, pCoeffs, mu, postShift};    
    + 
    where numTaps is the number of filter coefficients in the filter; pState is the address of the state buffer; pCoeffs is the address of the coefficient buffer; mu is the step size parameter; and postShift is the shift applied to coefficients.
    +
    Fixed-Point Behavior:
    Care must be taken when using the Q15 and Q31 versions of the LMS filter. The following issues must be considered:
      +
    • Scaling of coefficients
    • +
    • Overflow and saturation
    • +
    +
    +
    Scaling of Coefficients:
    Filter coefficients are represented as fractional values and coefficients are restricted to lie in the range [-1 +1). The fixed-point functions have an additional scaling parameter postShift. At the output of the filter's accumulator is a shift register which shifts the result by postShift bits. This essentially scales the filter coefficients by 2^postShift and allows the filter coefficients to exceed the range [+1 -1). The value of postShift is set by the user based on the expected gain through the system being modeled.
    +
    Overflow and Saturation:
    Overflow and saturation behavior of the fixed-point Q15 and Q31 versions are described separately as part of the function specific documentation below.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_f32 (const arm_lms_instance_f32S,
    float32_tpSrc,
    float32_tpRef,
    float32_tpOut,
    float32_tpErr,
    uint32_t blockSize 
    )
    +
    +

    This function operates on floating-point data types.

    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the floating-point LMS filter structure.
    [in]*pSrcpoints to the block of input data.
    [in]*pRefpoints to the block of reference data.
    [out]*pOutpoints to the block of output data.
    [out]*pErrpoints to the block of error data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    + +

    References blockSize, arm_lms_instance_f32::mu, arm_lms_instance_f32::numTaps, arm_lms_instance_f32::pCoeffs, and arm_lms_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_init_f32 (arm_lms_instance_f32S,
    uint16_t numTaps,
    float32_tpCoeffs,
    float32_tpState,
    float32_t mu,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the floating-point LMS filter structure.
    [in]numTapsnumber of filter coefficients.
    [in]*pCoeffspoints to the coefficient buffer.
    [in]*pStatepoints to state buffer.
    [in]mustep size that controls filter coefficient updates.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +
    Description:
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    The initial filter coefficients serve as a starting point for the adaptive filter. pState points to an array of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_lms_f32().
    + +

    References arm_lms_instance_f32::mu, arm_lms_instance_f32::numTaps, arm_lms_instance_f32::pCoeffs, and arm_lms_instance_f32::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_init_q15 (arm_lms_instance_q15S,
    uint16_t numTaps,
    q15_tpCoeffs,
    q15_tpState,
    q15_t mu,
    uint32_t blockSize,
    uint32_t postShift 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*Spoints to an instance of the Q15 LMS filter structure.
    [in]numTapsnumber of filter coefficients.
    [in]*pCoeffspoints to the coefficient buffer.
    [in]*pStatepoints to the state buffer.
    [in]mustep size that controls filter coefficient updates.
    [in]blockSizenumber of samples to process.
    [in]postShiftbit shift applied to coefficients.
    +
    +
    +
    Returns
    none.
    +
    Description:
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    The initial filter coefficients serve as a starting point for the adaptive filter. pState points to the array of state variables and size of array is numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_lms_q15().
    + +

    References arm_lms_instance_q15::mu, arm_lms_instance_q15::numTaps, arm_lms_instance_q15::pCoeffs, arm_lms_instance_q15::postShift, and arm_lms_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_init_q31 (arm_lms_instance_q31S,
    uint16_t numTaps,
    q31_tpCoeffs,
    q31_tpState,
    q31_t mu,
    uint32_t blockSize,
    uint32_t postShift 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*Spoints to an instance of the Q31 LMS filter structure.
    [in]numTapsnumber of filter coefficients.
    [in]*pCoeffspoints to coefficient buffer.
    [in]*pStatepoints to state buffer.
    [in]mustep size that controls filter coefficient updates.
    [in]blockSizenumber of samples to process.
    [in]postShiftbit shift applied to coefficients.
    +
    +
    +
    Returns
    none.
    +
    Description:
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    The initial filter coefficients serve as a starting point for the adaptive filter. pState points to an array of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_lms_q31().
    + +

    References arm_lms_instance_q31::mu, arm_lms_instance_q31::numTaps, arm_lms_instance_q31::pCoeffs, arm_lms_instance_q31::postShift, and arm_lms_instance_q31::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_q15 (const arm_lms_instance_q15S,
    q15_tpSrc,
    q15_tpRef,
    q15_tpOut,
    q15_tpErr,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q15 LMS filter structure.
    [in]*pSrcpoints to the block of input data.
    [in]*pRefpoints to the block of reference data.
    [out]*pOutpoints to the block of output data.
    [out]*pErrpoints to the block of error data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +
    Scaling and Overflow Behavior:
    The function is implemented using a 64-bit internal accumulator. Both coefficients and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. After all additions have been performed, the accumulator is truncated to 34.15 format by discarding low 15 bits. Lastly, the accumulator is saturated to yield a result in 1.15 format.
    +
    In this filter, filter coefficients are updated for each sample and the updation of filter cofficients are saturted.
    + +

    References __SIMD32, blockSize, arm_lms_instance_q15::mu, arm_lms_instance_q15::numTaps, arm_lms_instance_q15::pCoeffs, arm_lms_instance_q15::postShift, and arm_lms_instance_q15::pState.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_q31 (const arm_lms_instance_q31S,
    q31_tpSrc,
    q31_tpRef,
    q31_tpOut,
    q31_tpErr,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q15 LMS filter structure.
    [in]*pSrcpoints to the block of input data.
    [in]*pRefpoints to the block of reference data.
    [out]*pOutpoints to the block of output data.
    [out]*pErrpoints to the block of error data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +
    Scaling and Overflow Behavior:
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clips. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits. The reference signal should not be scaled down. After all multiply-accumulates are performed, the 2.62 accumulator is shifted and saturated to 1.31 format to yield the final result. The output signal and error signal are in 1.31 format.
    +
    In this filter, filter coefficients are updated for each sample and the updation of filter cofficients are saturted.
    + +

    References blockSize, clip_q63_to_q31(), arm_lms_instance_q31::mu, arm_lms_instance_q31::numTaps, arm_lms_instance_q31::pCoeffs, arm_lms_instance_q31::postShift, and arm_lms_instance_q31::pState.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___l_m_s.js b/CMSIS/Documentation/DSP/html/group___l_m_s.js new file mode 100644 index 0000000..63100cc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___l_m_s.js @@ -0,0 +1,9 @@ +var group___l_m_s = +[ + [ "arm_lms_f32", "group___l_m_s.html#gae266d009e682180421601627c79a3843", null ], + [ "arm_lms_init_f32", "group___l_m_s.html#ga9fc7adca0966ff2cec1746fca8364cee", null ], + [ "arm_lms_init_q15", "group___l_m_s.html#ga9544cc26f18cd4465cfbed371be822b3", null ], + [ "arm_lms_init_q31", "group___l_m_s.html#ga8d4bc251169f4b102355097a9f7530d6", null ], + [ "arm_lms_q15", "group___l_m_s.html#gacde16c17eb75979f81b34e2e2a58c7ac", null ], + [ "arm_lms_q31", "group___l_m_s.html#ga6a0abfe6041253a6f91c63b383a64257", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.html b/CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.html new file mode 100644 index 0000000..e7f2ddb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.html @@ -0,0 +1,617 @@ + + + + + +Normalized LMS Filters +CMSIS-DSP: Normalized LMS Filters + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Normalized LMS Filters
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_lms_norm_f32 (arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize)
     Processing function for floating-point normalized LMS filter.
     
    void arm_lms_norm_init_f32 (arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize)
     Initialization function for floating-point normalized LMS filter.
     
    void arm_lms_norm_init_q15 (arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift)
     Initialization function for Q15 normalized LMS filter.
     
    void arm_lms_norm_init_q31 (arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift)
     Initialization function for Q31 normalized LMS filter.
     
    void arm_lms_norm_q15 (arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize)
     Processing function for Q15 normalized LMS filter.
     
    void arm_lms_norm_q31 (arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize)
     Processing function for Q31 normalized LMS filter.
     
    +

    Description

    +

    This set of functions implements a commonly used adaptive filter. It is related to the Least Mean Square (LMS) adaptive filter and includes an additional normalization factor which increases the adaptation rate of the filter. The CMSIS DSP Library contains normalized LMS filter functions that operate on Q15, Q31, and floating-point data types.

    +

    A normalized least mean square (NLMS) filter consists of two components as shown below. The first component is a standard transversal or FIR filter. The second component is a coefficient update mechanism. The NLMS filter has two input signals. The "input" feeds the FIR filter while the "reference input" corresponds to the desired output of the FIR filter. That is, the FIR filter coefficients are updated so that the output of the FIR filter matches the reference input. The filter coefficient update mechanism is based on the difference between the FIR filter output and the reference input. This "error signal" tends towards zero as the filter adapts. The NLMS processing functions accept the input and reference input signals and generate the filter output and error signal.

    +
    +LMS.gif +
    +Internal structure of the NLMS adaptive filter
    +

    The functions operate on blocks of data and each call to the function processes blockSize samples through the filter. pSrc points to input signal, pRef points to reference signal, pOut points to output signal and pErr points to error signal. All arrays contain blockSize values.

    +

    The functions operate on a block-by-block basis. Internally, the filter coefficients b[n] are updated on a sample-by-sample basis. The convergence of the LMS filter is slower compared to the normalized LMS algorithm.

    +
    Algorithm:
    The output signal y[n] is computed by a standard FIR filter:
        
    +     y[n] = b[0] * x[n] + b[1] * x[n-1] + b[2] * x[n-2] + ...+ b[numTaps-1] * x[n-numTaps+1]    
    + 
    +
    The error signal equals the difference between the reference signal d[n] and the filter output:
        
    +     e[n] = d[n] - y[n].    
    + 
    +
    After each sample of the error signal is computed the instanteous energy of the filter state variables is calculated:
        
    +    E = x[n]^2 + x[n-1]^2 + ... + x[n-numTaps+1]^2.    
    + 
    The filter coefficients b[k] are then updated on a sample-by-sample basis:
        
    +     b[k] = b[k] + e[n] * (mu/E) * x[n-k],  for k=0, 1, ..., numTaps-1    
    + 
    where mu is the step size and controls the rate of coefficient convergence.
    +
    In the APIs, pCoeffs points to a coefficient array of size numTaps. Coefficients are stored in time reversed order.
    +
        
    +    {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    + 
    +
    pState points to a state array of size numTaps + blockSize - 1. Samples in the state buffer are stored in the order:
    +
        
    +    {x[n-numTaps+1], x[n-numTaps], x[n-numTaps-1], x[n-numTaps-2]....x[0], x[1], ..., x[blockSize-1]}    
    + 
    +
    Note that the length of the state buffer exceeds the length of the coefficient array by blockSize-1 samples. The increased state buffer length allows circular addressing, which is traditionally used in FIR filters, to be avoided and yields a significant speed improvement. The state variables are updated after each block of data is processed.
    +
    Instance Structure
    The coefficients and state variables for a filter are stored together in an instance data structure. A separate instance structure must be defined for each filter and coefficient and state arrays cannot be shared among instances. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Sets the values of the internal structure fields.
    • +
    • Zeros out the values in the state buffer. To do this manually without calling the init function, assign the follow subfields of the instance structure: numTaps, pCoeffs, mu, energy, x0, pState. Also set all of the values in pState to zero. For Q7, Q15, and Q31 the following fields must also be initialized; recipTable, postShift
    • +
    +
    +
    Instance structure cannot be placed into a const data section and it is recommended to use the initialization function.
    +
    Fixed-Point Behavior:
    Care must be taken when using the Q15 and Q31 versions of the normalised LMS filter. The following issues must be considered:
      +
    • Scaling of coefficients
    • +
    • Overflow and saturation
    • +
    +
    +
    Scaling of Coefficients:
    Filter coefficients are represented as fractional values and coefficients are restricted to lie in the range [-1 +1). The fixed-point functions have an additional scaling parameter postShift. At the output of the filter's accumulator is a shift register which shifts the result by postShift bits. This essentially scales the filter coefficients by 2^postShift and allows the filter coefficients to exceed the range [+1 -1). The value of postShift is set by the user based on the expected gain through the system being modeled.
    +
    Overflow and Saturation:
    Overflow and saturation behavior of the fixed-point Q15 and Q31 versions are described separately as part of the function specific documentation below.
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_norm_f32 (arm_lms_norm_instance_f32S,
    float32_tpSrc,
    float32_tpRef,
    float32_tpOut,
    float32_tpErr,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the floating-point normalized LMS filter structure.
    [in]*pSrcpoints to the block of input data.
    [in]*pRefpoints to the block of reference data.
    [out]*pOutpoints to the block of output data.
    [out]*pErrpoints to the block of error data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    References blockSize, arm_lms_norm_instance_f32::energy, arm_lms_norm_instance_f32::mu, arm_lms_norm_instance_f32::numTaps, arm_lms_norm_instance_f32::pCoeffs, arm_lms_norm_instance_f32::pState, and arm_lms_norm_instance_f32::x0.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_norm_init_f32 (arm_lms_norm_instance_f32S,
    uint16_t numTaps,
    float32_tpCoeffs,
    float32_tpState,
    float32_t mu,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the floating-point LMS filter structure.
    [in]numTapsnumber of filter coefficients.
    [in]*pCoeffspoints to coefficient buffer.
    [in]*pStatepoints to state buffer.
    [in]mustep size that controls filter coefficient updates.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +
    Description:
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    The initial filter coefficients serve as a starting point for the adaptive filter. pState points to an array of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_lms_norm_f32().
    +
    Examples:
    arm_signal_converge_example_f32.c.
    +
    +

    References arm_lms_norm_instance_f32::energy, arm_lms_norm_instance_f32::mu, arm_lms_norm_instance_f32::numTaps, arm_lms_norm_instance_f32::pCoeffs, arm_lms_norm_instance_f32::pState, and arm_lms_norm_instance_f32::x0.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_norm_init_q15 (arm_lms_norm_instance_q15S,
    uint16_t numTaps,
    q15_tpCoeffs,
    q15_tpState,
    q15_t mu,
    uint32_t blockSize,
    uint8_t postShift 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*Spoints to an instance of the Q15 normalized LMS filter structure.
    [in]numTapsnumber of filter coefficients.
    [in]*pCoeffspoints to coefficient buffer.
    [in]*pStatepoints to state buffer.
    [in]mustep size that controls filter coefficient updates.
    [in]blockSizenumber of samples to process.
    [in]postShiftbit shift applied to coefficients.
    +
    +
    +
    Returns
    none.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    The initial filter coefficients serve as a starting point for the adaptive filter. pState points to the array of state variables and size of array is numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_lms_norm_q15().
    + +

    References armRecipTableQ15, arm_lms_norm_instance_q15::energy, arm_lms_norm_instance_q15::mu, arm_lms_norm_instance_q15::numTaps, arm_lms_norm_instance_q15::pCoeffs, arm_lms_norm_instance_q15::postShift, arm_lms_norm_instance_q15::pState, arm_lms_norm_instance_q15::recipTable, and arm_lms_norm_instance_q15::x0.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_norm_init_q31 (arm_lms_norm_instance_q31S,
    uint16_t numTaps,
    q31_tpCoeffs,
    q31_tpState,
    q31_t mu,
    uint32_t blockSize,
    uint8_t postShift 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*Spoints to an instance of the Q31 normalized LMS filter structure.
    [in]numTapsnumber of filter coefficients.
    [in]*pCoeffspoints to coefficient buffer.
    [in]*pStatepoints to state buffer.
    [in]mustep size that controls filter coefficient updates.
    [in]blockSizenumber of samples to process.
    [in]postShiftbit shift applied to coefficients.
    +
    +
    +
    Returns
    none.
    +

    Description:

    +
    pCoeffs points to the array of filter coefficients stored in time reversed order:
        
    +   {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]}    
    +
    The initial filter coefficients serve as a starting point for the adaptive filter. pState points to an array of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_lms_norm_q31().
    + +

    References armRecipTableQ31, arm_lms_norm_instance_q31::energy, arm_lms_norm_instance_q31::mu, arm_lms_norm_instance_q31::numTaps, arm_lms_norm_instance_q31::pCoeffs, arm_lms_norm_instance_q31::postShift, arm_lms_norm_instance_q31::pState, arm_lms_norm_instance_q31::recipTable, and arm_lms_norm_instance_q31::x0.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_norm_q15 (arm_lms_norm_instance_q15S,
    q15_tpSrc,
    q15_tpRef,
    q15_tpOut,
    q15_tpErr,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q15 normalized LMS filter structure.
    [in]*pSrcpoints to the block of input data.
    [in]*pRefpoints to the block of reference data.
    [out]*pOutpoints to the block of output data.
    [out]*pErrpoints to the block of error data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both coefficients and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. After all additions have been performed, the accumulator is truncated to 34.15 format by discarding low 15 bits. Lastly, the accumulator is saturated to yield a result in 1.15 format.
    +
    In this filter, filter coefficients are updated for each sample and the updation of filter cofficients are saturted.
    + +

    References __SIMD32, arm_recip_q15(), blockSize, DELTA_Q15, arm_lms_norm_instance_q15::energy, arm_lms_norm_instance_q15::mu, arm_lms_norm_instance_q15::numTaps, arm_lms_norm_instance_q15::pCoeffs, arm_lms_norm_instance_q15::postShift, arm_lms_norm_instance_q15::pState, arm_lms_norm_instance_q15::recipTable, and arm_lms_norm_instance_q15::x0.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_lms_norm_q31 (arm_lms_norm_instance_q31S,
    q31_tpSrc,
    q31_tpRef,
    q31_tpOut,
    q31_tpErr,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + + +
    [in]*Spoints to an instance of the Q31 normalized LMS filter structure.
    [in]*pSrcpoints to the block of input data.
    [in]*pRefpoints to the block of reference data.
    [out]*pOutpoints to the block of output data.
    [out]*pErrpoints to the block of error data.
    [in]blockSizenumber of samples to process.
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by log2(numTaps) bits. The reference signal should not be scaled down. After all multiply-accumulates are performed, the 2.62 accumulator is shifted and saturated to 1.31 format to yield the final result. The output signal and error signal are in 1.31 format.
    +
    In this filter, filter coefficients are updated for each sample and the updation of filter cofficients are saturted.
    + +

    References arm_recip_q31(), blockSize, clip_q63_to_q31(), DELTA_Q31, arm_lms_norm_instance_q31::energy, arm_lms_norm_instance_q31::mu, arm_lms_norm_instance_q31::numTaps, arm_lms_norm_instance_q31::pCoeffs, arm_lms_norm_instance_q31::postShift, arm_lms_norm_instance_q31::pState, arm_lms_norm_instance_q31::recipTable, and arm_lms_norm_instance_q31::x0.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.js b/CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.js new file mode 100644 index 0000000..78b209d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___l_m_s___n_o_r_m.js @@ -0,0 +1,9 @@ +var group___l_m_s___n_o_r_m = +[ + [ "arm_lms_norm_f32", "group___l_m_s___n_o_r_m.html#ga2418c929087c6eba719758eaae3f3300", null ], + [ "arm_lms_norm_init_f32", "group___l_m_s___n_o_r_m.html#gac7ccbaea863882056eee815456464670", null ], + [ "arm_lms_norm_init_q15", "group___l_m_s___n_o_r_m.html#ga213ab1ee2e154cc2fa30d667b1994b89", null ], + [ "arm_lms_norm_init_q31", "group___l_m_s___n_o_r_m.html#ga1d9659dbbea4c89a7a9d14d5fc0dd490", null ], + [ "arm_lms_norm_q15", "group___l_m_s___n_o_r_m.html#gad47486a399dedb0bc85a5990ec5cf981", null ], + [ "arm_lms_norm_q31", "group___l_m_s___n_o_r_m.html#ga7128775e99817c183a7d7ad34e8b6e05", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___linear_interp_example.html b/CMSIS/Documentation/DSP/html/group___linear_interp_example.html new file mode 100644 index 0000000..2609270 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___linear_interp_example.html @@ -0,0 +1,158 @@ + + + + + +Linear Interpolate Example +CMSIS-DSP: Linear Interpolate Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Linear Interpolate Example
    +
    +
    +

    CMSIS DSP Software Library – Linear Interpolate Example

    +

    Description This example demonstrates usage of linear interpolate modules and fast math modules. Method 1 uses fast math sine function to calculate sine values using cubic interpolation and method 2 uses linear interpolation function and results are compared to reference output. Example shows linear interpolation function can be used to get higher precision compared to fast math sin calculation.

    +
    Block Diagram:
    +
    +linearInterpExampleMethod1.gif +
    +Method 1: Sine caluclation using fast math
    +
    +
    +linearInterpExampleMethod2.gif +
    +Method 2: Sine caluclation using interpolation function
    +
    +
    Variables Description:
    +
      +
    • testInputSin_f32 points to the input values for sine calculation
    • +
    • testRefSinOutput32_f32 points to the reference values caculated from sin() matlab function
    • +
    • testOutput points to output buffer calculation from cubic interpolation
    • +
    • testLinIntOutput points to output buffer calculation from linear interpolation
    • +
    • snr1 Signal to noise ratio for reference and cubic interpolation output
    • +
    • snr2 Signal to noise ratio for reference and linear interpolation output
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_linear_interp_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___linear_interpolate.html b/CMSIS/Documentation/DSP/html/group___linear_interpolate.html new file mode 100644 index 0000000..4ea8f7f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___linear_interpolate.html @@ -0,0 +1,359 @@ + + + + + +Linear Interpolation +CMSIS-DSP: Linear Interpolation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Linear Interpolation
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    static __INLINE float32_t arm_linear_interp_f32 (arm_linear_interp_instance_f32 *S, float32_t x)
     Process function for the floating-point Linear Interpolation Function.
     
    static __INLINE q31_t arm_linear_interp_q31 (q31_t *pYData, q31_t x, uint32_t nValues)
     Process function for the Q31 Linear Interpolation Function.
     
    static __INLINE q15_t arm_linear_interp_q15 (q15_t *pYData, q31_t x, uint32_t nValues)
     Process function for the Q15 Linear Interpolation Function.
     
    static __INLINE q7_t arm_linear_interp_q7 (q7_t *pYData, q31_t x, uint32_t nValues)
     Process function for the Q7 Linear Interpolation Function.
     
    +

    Description

    +

    Linear interpolation is a method of curve fitting using linear polynomials. Linear interpolation works by effectively drawing a straight line between two neighboring samples and returning the appropriate point along that line

    +
    +LinearInterp.gif +
    +Linear interpolation
    +
    +
    A Linear Interpolate function calculates an output value(y), for the input(x) using linear interpolation of the input values x0, x1( nearest input values) and the output values y0 and y1(nearest output values)
    +
    Algorithm:
    +      y = y0 + (x - x0) * ((y1 - y0)/(x1-x0))
    +      where x0, x1 are nearest values of input x
    +            y0, y1 are nearest values to output y
    +
    +
    This set of functions implements Linear interpolation process for Q7, Q15, Q31, and floating-point data types. The functions operate on a single sample of data and each call to the function returns a single processed value. S points to an instance of the Linear Interpolate function data structure. x is the input sample value. The functions returns the output value.
    +
    if x is outside of the table boundary, Linear interpolation returns first value of the table if x is below input range and returns last value of table if x is above range.
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    static __INLINE float32_t arm_linear_interp_f32 (arm_linear_interp_instance_f32S,
    float32_t x 
    )
    +
    +static
    +
    +
    Parameters
    + + + +
    [in,out]Sis an instance of the floating-point Linear Interpolation structure
    [in]xinput sample to process
    +
    +
    +
    Returns
    y processed output sample.
    +
    Examples:
    arm_linear_interp_example_f32.c.
    +
    +

    References arm_linear_interp_instance_f32::nValues, arm_linear_interp_instance_f32::pYData, arm_linear_interp_instance_f32::x1, and arm_linear_interp_instance_f32::xSpacing.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE q15_t arm_linear_interp_q15 (q15_tpYData,
    q31_t x,
    uint32_t nValues 
    )
    +
    +static
    +
    +
    Parameters
    + + + + +
    [in]pYDatapointer to Q15 Linear Interpolation table
    [in]xinput sample to process
    [in]nValuesnumber of table values
    +
    +
    +
    Returns
    y processed output sample.
    +
    Input sample x is in 12.20 format which contains 12 bits for table index and 20 bits for fractional part. This function can support maximum of table size 2^12.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE q31_t arm_linear_interp_q31 (q31_tpYData,
    q31_t x,
    uint32_t nValues 
    )
    +
    +static
    +
    +
    Parameters
    + + + + +
    [in]pYDatapointer to Q31 Linear Interpolation table
    [in]xinput sample to process
    [in]nValuesnumber of table values
    +
    +
    +
    Returns
    y processed output sample.
    +
    Input sample x is in 12.20 format which contains 12 bits for table index and 20 bits for fractional part. This function can support maximum of table size 2^12.
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE q7_t arm_linear_interp_q7 (q7_tpYData,
    q31_t x,
    uint32_t nValues 
    )
    +
    +static
    +
    +
    Parameters
    + + + + +
    [in]pYDatapointer to Q7 Linear Interpolation table
    [in]xinput sample to process
    [in]nValuesnumber of table values
    +
    +
    +
    Returns
    y processed output sample.
    +
    Input sample x is in 12.20 format which contains 12 bits for table index and 20 bits for fractional part. This function can support maximum of table size 2^12.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___linear_interpolate.js b/CMSIS/Documentation/DSP/html/group___linear_interpolate.js new file mode 100644 index 0000000..8e1a1bd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___linear_interpolate.js @@ -0,0 +1,7 @@ +var group___linear_interpolate = +[ + [ "arm_linear_interp_f32", "group___linear_interpolate.html#ga2269263d810cafcd19681957b37d5cf6", null ], + [ "arm_linear_interp_q15", "group___linear_interpolate.html#ga42c9206e5d2d22b8808716dc30622846", null ], + [ "arm_linear_interp_q31", "group___linear_interpolate.html#ga690e63e9a513ca0a741b1b174805d031", null ], + [ "arm_linear_interp_q7", "group___linear_interpolate.html#gacb0d44fe00aca0ba1d036d469a1763fc", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___matrix_add.html b/CMSIS/Documentation/DSP/html/group___matrix_add.html new file mode 100644 index 0000000..9a5dddd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_add.html @@ -0,0 +1,284 @@ + + + + + +Matrix Addition +CMSIS-DSP: Matrix Addition + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Addition
    +
    +
    + + + + + + + + + + + +

    +Functions

    arm_status arm_mat_add_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix addition.
     
    arm_status arm_mat_add_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst)
     Q15 matrix addition.
     
    arm_status arm_mat_add_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix addition.
     
    +

    Description

    +

    Adds two matrices.

    +
    +MatrixAddition.gif +
    +Addition of two 3 x 3 matrices
    +

    The functions check to make sure that pSrcA, pSrcB, and pDst have the same number of rows and columns.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_add_f32 (const arm_matrix_instance_f32pSrcA,
    const arm_matrix_instance_f32pSrcB,
    arm_matrix_instance_f32pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, arm_matrix_instance_f32::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_add_q15 (const arm_matrix_instance_q15pSrcA,
    const arm_matrix_instance_q15pSrcB,
    arm_matrix_instance_q15pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    + +

    References __SIMD32, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, arm_matrix_instance_q15::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_add_q31 (const arm_matrix_instance_q31pSrcA,
    const arm_matrix_instance_q31pSrcB,
    arm_matrix_instance_q31pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range [0x80000000 0x7FFFFFFF] will be saturated.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, arm_matrix_instance_q31::pData, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_add.js b/CMSIS/Documentation/DSP/html/group___matrix_add.js new file mode 100644 index 0000000..67e3e7c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_add.js @@ -0,0 +1,6 @@ +var group___matrix_add = +[ + [ "arm_mat_add_f32", "group___matrix_add.html#ga04bbf64a5f9c9e57dd1efb26a768aba1", null ], + [ "arm_mat_add_q15", "group___matrix_add.html#ga147e90b7c12a162735ab8824127a33ee", null ], + [ "arm_mat_add_q31", "group___matrix_add.html#ga7d9d7d81a0832a17b831aad1e4a5dc16", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___matrix_example.html b/CMSIS/Documentation/DSP/html/group___matrix_example.html new file mode 100644 index 0000000..0122398 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_example.html @@ -0,0 +1,156 @@ + + + + + +Matrix Example +CMSIS-DSP: Matrix Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Matrix Example
    +
    +
    +
    Description:
    +
    Demonstrates the use of Matrix Transpose, Matrix Muliplication, and Matrix Inverse functions to apply least squares fitting to input data. Least squares fitting is the procedure for finding the best-fitting curve that minimizes the sum of the squares of the offsets (least square error) from a given set of data.
    +
    Algorithm:
    +
    The linear combination of parameters considered is as follows:
    +
    A * X = B, where X is the unknown value and can be estimated from A & B.
    +
    The least squares estimate X is given by the following equation:
    +
    X = Inverse(AT * A) * AT * B
    +
    Block Diagram:
    +
    +matrixExample.gif +
    +
    +
    Variables Description:
    +
      +
    • A_f32 input matrix in the linear combination equation
    • +
    • B_f32 output matrix in the linear combination equation
    • +
    • X_f32 unknown matrix estimated using A_f32 & B_f32 matrices
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_matrix_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_init.html b/CMSIS/Documentation/DSP/html/group___matrix_init.html new file mode 100644 index 0000000..69bc4b1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_init.html @@ -0,0 +1,299 @@ + + + + + +Matrix Initialization +CMSIS-DSP: Matrix Initialization + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Initialization
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_mat_init_f32 (arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData)
     Floating-point matrix initialization.
     
    void arm_mat_init_q15 (arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData)
     Q15 matrix initialization.
     
    void arm_mat_init_q31 (arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData)
     Q31 matrix initialization.
     
    +

    Description

    +

    Initializes the underlying matrix data structure. The functions set the numRows, numCols, and pData fields of the matrix data structure.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mat_init_f32 (arm_matrix_instance_f32S,
    uint16_t nRows,
    uint16_t nColumns,
    float32_tpData 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the floating-point matrix structure.
    [in]nRowsnumber of rows in the matrix.
    [in]nColumnsnumber of columns in the matrix.
    [in]*pDatapoints to the matrix data array.
    +
    +
    +
    Returns
    none
    +
    Examples:
    arm_class_marks_example_f32.c, and arm_matrix_example_f32.c.
    +
    +

    References arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, and arm_matrix_instance_f32::pData.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mat_init_q15 (arm_matrix_instance_q15S,
    uint16_t nRows,
    uint16_t nColumns,
    q15_tpData 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the floating-point matrix structure.
    [in]nRowsnumber of rows in the matrix.
    [in]nColumnsnumber of columns in the matrix.
    [in]*pDatapoints to the matrix data array.
    +
    +
    +
    Returns
    none
    + +

    References arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, and arm_matrix_instance_q15::pData.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mat_init_q31 (arm_matrix_instance_q31S,
    uint16_t nRows,
    uint16_t nColumns,
    q31_tpData 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the floating-point matrix structure.
    [in]nRowsnumber of rows in the matrix.
    [in]nColumnsnumber of columns in the matrix.
    [in]*pDatapoints to the matrix data array.
    +
    +
    +
    Returns
    none
    + +

    References arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, and arm_matrix_instance_q31::pData.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_init.js b/CMSIS/Documentation/DSP/html/group___matrix_init.js new file mode 100644 index 0000000..014342a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_init.js @@ -0,0 +1,6 @@ +var group___matrix_init = +[ + [ "arm_mat_init_f32", "group___matrix_init.html#ga11e3dc41592a6401c13182fef9416a27", null ], + [ "arm_mat_init_q15", "group___matrix_init.html#ga31a7c2b991803d49719393eb2d53dc26", null ], + [ "arm_mat_init_q31", "group___matrix_init.html#ga48a5e5d37e1f062cc57fcfaf683343cc", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___matrix_inv.html b/CMSIS/Documentation/DSP/html/group___matrix_inv.html new file mode 100644 index 0000000..0f930c5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_inv.html @@ -0,0 +1,225 @@ + + + + + +Matrix Inverse +CMSIS-DSP: Matrix Inverse + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Inverse
    +
    +
    + + + + + + + + +

    +Functions

    arm_status arm_mat_inverse_f32 (const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst)
     Floating-point matrix inverse.
     
    arm_status arm_mat_inverse_f64 (const arm_matrix_instance_f64 *pSrc, arm_matrix_instance_f64 *pDst)
     Floating-point matrix inverse.
     
    +

    Description

    +

    Computes the inverse of a matrix.

    +

    The inverse is defined only if the input matrix is square and non-singular (the determinant is non-zero). The function checks that the input and output matrices are square and of the same size.

    +

    Matrix inversion is numerically sensitive and the CMSIS DSP library only supports matrix inversion of floating-point matrices.

    +
    Algorithm
    The Gauss-Jordan method is used to find the inverse. The algorithm performs a sequence of elementary row-operations until it reduces the input matrix to an identity matrix. Applying the same sequence of elementary row-operations to an identity matrix yields the inverse matrix. If the input matrix is singular, then the algorithm terminates and returns error status ARM_MATH_SINGULAR.
    +MatrixInverse.gif +
    +Matrix Inverse of a 3 x 3 matrix using Gauss-Jordan Method
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_inverse_f32 (const arm_matrix_instance_f32pSrc,
    arm_matrix_instance_f32pDst 
    )
    +
    +
    Parameters
    + + + +
    [in]*pSrcpoints to input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns ARM_MATH_SIZE_MISMATCH if the input matrix is not square or if the size of the output matrix does not match the size of the input matrix. If the input matrix is found to be singular (non-invertible), then the function returns ARM_MATH_SINGULAR. Otherwise, the function returns ARM_MATH_SUCCESS.
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    References ARM_MATH_SINGULAR, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, arm_matrix_instance_f32::pData, and status.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_inverse_f64 (const arm_matrix_instance_f64pSrc,
    arm_matrix_instance_f64pDst 
    )
    +
    +
    Parameters
    + + + +
    [in]*pSrcpoints to input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns ARM_MATH_SIZE_MISMATCH if the input matrix is not square or if the size of the output matrix does not match the size of the input matrix. If the input matrix is found to be singular (non-invertible), then the function returns ARM_MATH_SINGULAR. Otherwise, the function returns ARM_MATH_SUCCESS.
    + +

    References ARM_MATH_SINGULAR, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f64::numCols, arm_matrix_instance_f64::numRows, arm_matrix_instance_f64::pData, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_inv.js b/CMSIS/Documentation/DSP/html/group___matrix_inv.js new file mode 100644 index 0000000..86de966 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_inv.js @@ -0,0 +1,5 @@ +var group___matrix_inv = +[ + [ "arm_mat_inverse_f32", "group___matrix_inv.html#ga542be7aabbf7a2297a4b62cf212910e3", null ], + [ "arm_mat_inverse_f64", "group___matrix_inv.html#gaede2367c02df083cc915ddd5d8fae838", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___matrix_mult.html b/CMSIS/Documentation/DSP/html/group___matrix_mult.html new file mode 100644 index 0000000..0e41662 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_mult.html @@ -0,0 +1,403 @@ + + + + + +Matrix Multiplication +CMSIS-DSP: Matrix Multiplication + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Multiplication
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Functions

    arm_status arm_mat_mult_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix multiplication.
     
    arm_status arm_mat_mult_fast_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState)
     Q15 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_mat_mult_fast_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix multiplication (fast variant) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_mat_mult_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState CMSIS_UNUSED)
     Q15 matrix multiplication.
     
    arm_status arm_mat_mult_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix multiplication.
     
    +

    Description

    +

    Multiplies two matrices.

    +
    +MatrixMultiplication.gif +
    +Multiplication of two 3 x 3 matrices
    +

    Matrix multiplication is only defined if the number of columns of the first matrix equals the number of rows of the second matrix. Multiplying an M x N matrix with an N x P matrix results in an M x P matrix. When matrix size checking is enabled, the functions check: (1) that the inner dimensions of pSrcA and pSrcB are equal; and (2) that the size of the output matrix equals the outer dimensions of pSrcA and pSrcB.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_mult_f32 (const arm_matrix_instance_f32pSrcA,
    const arm_matrix_instance_f32pSrcB,
    arm_matrix_instance_f32pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +
    Examples:
    arm_class_marks_example_f32.c, and arm_matrix_example_f32.c.
    +
    +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, arm_matrix_instance_f32::pData, and status.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_mult_fast_q15 (const arm_matrix_instance_q15pSrcA,
    const arm_matrix_instance_q15pSrcB,
    arm_matrix_instance_q15pDst,
    q15_tpState 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    [in]*pStatepoints to the array for storing intermediate results
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The difference between the function arm_mat_mult_q15() and this fast variant is that the fast variant use a 32-bit rather than a 64-bit accumulator. The result of each 1.15 x 1.15 multiplication is truncated to 2.30 format. These intermediate results are accumulated in a 32-bit register in 2.30 format. Finally, the accumulator is saturated and converted to a 1.15 result.
    +
    The fast version has the same overflow behavior as the standard version but provides less precision since it discards the low 16 bits of each multiplication result. In order to avoid overflows completely the input signals must be scaled down. Scale down one of the input matrices by log2(numColsA) bits to avoid overflows, as a total of numColsA additions are computed internally for each output element.
    +
    See arm_mat_mult_q15() for a slower implementation of this function which uses 64-bit accumulation to provide higher precision.
    + +

    References __SIMD32, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, arm_matrix_instance_q15::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_mult_fast_q31 (const arm_matrix_instance_q31pSrcA,
    const arm_matrix_instance_q31pSrcB,
    arm_matrix_instance_q31pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The difference between the function arm_mat_mult_q31() and this fast variant is that the fast variant use a 32-bit rather than a 64-bit accumulator. The result of each 1.31 x 1.31 multiplication is truncated to 2.30 format. These intermediate results are accumulated in a 32-bit register in 2.30 format. Finally, the accumulator is saturated and converted to a 1.31 result.
    +
    The fast version has the same overflow behavior as the standard version but provides less precision since it discards the low 32 bits of each multiplication result. In order to avoid overflows completely the input signals must be scaled down. Scale down one of the input matrices by log2(numColsA) bits to avoid overflows, as a total of numColsA additions are computed internally for each output element.
    +
    See arm_mat_mult_q31() for a slower implementation of this function which uses 64-bit accumulation to provide higher precision.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, arm_matrix_instance_q31::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_mult_q15 (const arm_matrix_instance_q15pSrcA,
    const arm_matrix_instance_q15pSrcB,
    arm_matrix_instance_q15pDst,
    q15_t *pState CMSIS_UNUSED 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    [in]*pStatepoints to the array for storing intermediate results (Unused)
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The inputs to the multiplications are in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. This approach provides 33 guard bits and there is no risk of overflow. The 34.30 result is then truncated to 34.15 format by discarding the low 15 bits and then saturated to 1.15 format.
    +
    Refer to arm_mat_mult_fast_q15() for a faster but less precise version of this function for Cortex-M3 and Cortex-M4.
    + +

    References __SIMD32, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, arm_matrix_instance_q15::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_mult_q31 (const arm_matrix_instance_q31pSrcA,
    const arm_matrix_instance_q31pSrcB,
    arm_matrix_instance_q31pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. There is no saturation on intermediate additions. Thus, if the accumulator overflows it wraps around and distorts the result. The input signals should be scaled down to avoid intermediate overflows. The input is thus scaled down by log2(numColsA) bits to avoid overflows, as a total of numColsA additions are performed internally. The 2.62 accumulator is right shifted by 31 bits and saturated to 1.31 format to yield the final result.
    +
    See arm_mat_mult_fast_q31() for a faster but less precise implementation of this function for Cortex-M3 and Cortex-M4.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, clip_q63_to_q31(), arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, arm_matrix_instance_q31::pData, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_mult.js b/CMSIS/Documentation/DSP/html/group___matrix_mult.js new file mode 100644 index 0000000..9f60cbe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_mult.js @@ -0,0 +1,8 @@ +var group___matrix_mult = +[ + [ "arm_mat_mult_f32", "group___matrix_mult.html#ga917bf0270310c1d3f0eda1fc7c0026a0", null ], + [ "arm_mat_mult_fast_q15", "group___matrix_mult.html#ga08f37d93a5bfef0c5000dc5e0a411f93", null ], + [ "arm_mat_mult_fast_q31", "group___matrix_mult.html#ga2785e8c1b785348b0c439b56aaf585a3", null ], + [ "arm_mat_mult_q15", "group___matrix_mult.html#ga3657b99a9667945373e520dbac0f4516", null ], + [ "arm_mat_mult_q31", "group___matrix_mult.html#ga2ec612a8c2c4916477fb9bc1ab548a6e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___matrix_scale.html b/CMSIS/Documentation/DSP/html/group___matrix_scale.html new file mode 100644 index 0000000..62ba64c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_scale.html @@ -0,0 +1,301 @@ + + + + + +Matrix Scale +CMSIS-DSP: Matrix Scale + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Scale
    +
    +
    + + + + + + + + + + + +

    +Functions

    arm_status arm_mat_scale_f32 (const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst)
     Floating-point matrix scaling.
     
    arm_status arm_mat_scale_q15 (const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst)
     Q15 matrix scaling.
     
    arm_status arm_mat_scale_q31 (const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst)
     Q31 matrix scaling.
     
    +

    Description

    +

    Multiplies a matrix by a scalar. This is accomplished by multiplying each element in the matrix by the scalar. For example:

    +
    +MatrixScale.gif +
    +Matrix Scaling of a 3 x 3 matrix
    +

    The function checks to make sure that the input and output matrices are of the same size.

    +

    In the fixed-point Q15 and Q31 functions, scale is represented by a fractional multiplication scaleFract and an arithmetic shift shift. The shift allows the gain of the scaling operation to exceed 1.0. The overall scale factor applied to the fixed-point data is

    +
            
    +    scale = scaleFract * 2^shift.        
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_scale_f32 (const arm_matrix_instance_f32pSrc,
    float32_t scale,
    arm_matrix_instance_f32pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to input matrix structure
    [in]scalescale factor to be applied
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, arm_matrix_instance_f32::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_scale_q15 (const arm_matrix_instance_q15pSrc,
    q15_t scaleFract,
    int32_t shift,
    arm_matrix_instance_q15pDst 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to input matrix
    [in]scaleFractfractional portion of the scale factor
    [in]shiftnumber of bits to shift the result by
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The input data *pSrc and scaleFract are in 1.15 format. These are multiplied to yield a 2.30 intermediate result and this is shifted with saturation to 1.15 format.
    + +

    References _SIMD32_OFFSET, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, arm_matrix_instance_q15::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_scale_q31 (const arm_matrix_instance_q31pSrc,
    q31_t scaleFract,
    int32_t shift,
    arm_matrix_instance_q31pDst 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to input matrix
    [in]scaleFractfractional portion of the scale factor
    [in]shiftnumber of bits to shift the result by
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The input data *pSrc and scaleFract are in 1.31 format. These are multiplied to yield a 2.62 intermediate result and this is shifted with saturation to 1.31 format.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, arm_matrix_instance_q31::pData, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_scale.js b/CMSIS/Documentation/DSP/html/group___matrix_scale.js new file mode 100644 index 0000000..e9ed5b2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_scale.js @@ -0,0 +1,6 @@ +var group___matrix_scale = +[ + [ "arm_mat_scale_f32", "group___matrix_scale.html#ga9cb4e385b18c9a0b9cbc940c1067ca12", null ], + [ "arm_mat_scale_q15", "group___matrix_scale.html#ga7521769e2cf1c3d9c4656138cd2ae2ca", null ], + [ "arm_mat_scale_q31", "group___matrix_scale.html#ga609743821ee81fa8c34c4bcdc1ed9744", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___matrix_sub.html b/CMSIS/Documentation/DSP/html/group___matrix_sub.html new file mode 100644 index 0000000..724518a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_sub.html @@ -0,0 +1,284 @@ + + + + + +Matrix Subtraction +CMSIS-DSP: Matrix Subtraction + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Subtraction
    +
    +
    + + + + + + + + + + + +

    +Functions

    arm_status arm_mat_sub_f32 (const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst)
     Floating-point matrix subtraction.
     
    arm_status arm_mat_sub_q15 (const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst)
     Q15 matrix subtraction.
     
    arm_status arm_mat_sub_q31 (const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst)
     Q31 matrix subtraction.
     
    +

    Description

    +

    Subtract two matrices.

    +
    +MatrixSubtraction.gif +
    +Subraction of two 3 x 3 matrices
    +

    The functions check to make sure that pSrcA, pSrcB, and pDst have the same number of rows and columns.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_sub_f32 (const arm_matrix_instance_f32pSrcA,
    const arm_matrix_instance_f32pSrcB,
    arm_matrix_instance_f32pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, arm_matrix_instance_f32::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_sub_q15 (const arm_matrix_instance_q15pSrcA,
    const arm_matrix_instance_q15pSrcB,
    arm_matrix_instance_q15pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    + +

    References __SIMD32, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, arm_matrix_instance_q15::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_sub_q31 (const arm_matrix_instance_q31pSrcA,
    const arm_matrix_instance_q31pSrcB,
    arm_matrix_instance_q31pDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcApoints to the first input matrix structure
    [in]*pSrcBpoints to the second input matrix structure
    [out]*pDstpoints to output matrix structure
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range [0x80000000 0x7FFFFFFF] will be saturated.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, arm_matrix_instance_q31::pData, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_sub.js b/CMSIS/Documentation/DSP/html/group___matrix_sub.js new file mode 100644 index 0000000..e5ab3cb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_sub.js @@ -0,0 +1,6 @@ +var group___matrix_sub = +[ + [ "arm_mat_sub_f32", "group___matrix_sub.html#gac8b72fb70246ccfee3b372002345732c", null ], + [ "arm_mat_sub_q15", "group___matrix_sub.html#gaf647776a425b7f9dd0aca3e11d81f02f", null ], + [ "arm_mat_sub_q31", "group___matrix_sub.html#ga39f42e0e3b7f115fbb909d6ff4e1329d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___matrix_trans.html b/CMSIS/Documentation/DSP/html/group___matrix_trans.html new file mode 100644 index 0000000..a14247f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_trans.html @@ -0,0 +1,261 @@ + + + + + +Matrix Transpose +CMSIS-DSP: Matrix Transpose + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Transpose
    +
    +
    + + + + + + + + + + + +

    +Functions

    arm_status arm_mat_trans_f32 (const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst)
     Floating-point matrix transpose.
     
    arm_status arm_mat_trans_q15 (const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst)
     Q15 matrix transpose.
     
    arm_status arm_mat_trans_q31 (const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst)
     Q31 matrix transpose.
     
    +

    Description

    +

    Tranposes a matrix. Transposing an M x N matrix flips it around the center diagonal and results in an N x M matrix.

    +
    +MatrixTranspose.gif +
    +Transpose of a 3 x 3 matrix
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_trans_f32 (const arm_matrix_instance_f32pSrc,
    arm_matrix_instance_f32pDst 
    )
    +
    +
    Parameters
    + + + +
    [in]*pSrcpoints to the input matrix
    [out]*pDstpoints to the output matrix
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    +
    Examples:
    arm_matrix_example_f32.c.
    +
    +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_f32::numCols, arm_matrix_instance_f32::numRows, arm_matrix_instance_f32::pData, and status.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_trans_q15 (const arm_matrix_instance_q15pSrc,
    arm_matrix_instance_q15pDst 
    )
    +
    +
    Parameters
    + + + +
    [in]pSrcpoints to the input matrix
    [out]pDstpoints to the output matrix
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    + +

    References __SIMD32, ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q15::numCols, arm_matrix_instance_q15::numRows, arm_matrix_instance_q15::pData, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_mat_trans_q31 (const arm_matrix_instance_q31pSrc,
    arm_matrix_instance_q31pDst 
    )
    +
    +
    Parameters
    + + + +
    [in]pSrcpoints to the input matrix
    [out]pDstpoints to the output matrix
    +
    +
    +
    Returns
    The function returns either ARM_MATH_SIZE_MISMATCH or ARM_MATH_SUCCESS based on the outcome of size checking.
    + +

    References ARM_MATH_SIZE_MISMATCH, ARM_MATH_SUCCESS, arm_matrix_instance_q31::numCols, arm_matrix_instance_q31::numRows, arm_matrix_instance_q31::pData, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___matrix_trans.js b/CMSIS/Documentation/DSP/html/group___matrix_trans.js new file mode 100644 index 0000000..117dd28 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___matrix_trans.js @@ -0,0 +1,6 @@ +var group___matrix_trans = +[ + [ "arm_mat_trans_f32", "group___matrix_trans.html#gad7dd9f108429da13d3864696ceeec789", null ], + [ "arm_mat_trans_q15", "group___matrix_trans.html#ga4f4f821cc695fd0ef9061d702e08050a", null ], + [ "arm_mat_trans_q31", "group___matrix_trans.html#ga30a4d49489ac67ff98a46b9f58f73bf1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___max.html b/CMSIS/Documentation/DSP/html/group___max.html new file mode 100644 index 0000000..ea44a89 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___max.html @@ -0,0 +1,344 @@ + + + + + +Maximum +CMSIS-DSP: Maximum + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_max_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex)
     Maximum value of a floating-point vector.
     
    void arm_max_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex)
     Maximum value of a Q15 vector.
     
    void arm_max_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex)
     Maximum value of a Q31 vector.
     
    void arm_max_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex)
     Maximum value of a Q7 vector.
     
    +

    Description

    +

    Computes the maximum value of an array of data. The function returns both the maximum value and its position within the array. There are separate functions for floating-point, Q31, Q15, and Q7 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_max_f32 (float32_tpSrc,
    uint32_t blockSize,
    float32_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmaximum value returned here
    [out]*pIndexindex of maximum value returned here
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_class_marks_example_f32.c, and arm_fft_bin_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_max_q15 (q15_tpSrc,
    uint32_t blockSize,
    q15_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmaximum value returned here
    [out]*pIndexindex of maximum value returned here
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_max_q31 (q31_tpSrc,
    uint32_t blockSize,
    q31_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmaximum value returned here
    [out]*pIndexindex of maximum value returned here
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_max_q7 (q7_tpSrc,
    uint32_t blockSize,
    q7_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmaximum value returned here
    [out]*pIndexindex of maximum value returned here
    +
    +
    +
    Returns
    none.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___max.js b/CMSIS/Documentation/DSP/html/group___max.js new file mode 100644 index 0000000..6ac948c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___max.js @@ -0,0 +1,7 @@ +var group___max = +[ + [ "arm_max_f32", "group___max.html#ga5b89d1b04575aeec494f678695fb87d8", null ], + [ "arm_max_q15", "group___max.html#gac132856c68f4bf2a056eaad5921c7880", null ], + [ "arm_max_q31", "group___max.html#gaff7cbd4e955382def06724cc4cc85795", null ], + [ "arm_max_q7", "group___max.html#ga6afd64d381b5c232de59163ebfe71e35", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___min.html b/CMSIS/Documentation/DSP/html/group___min.html new file mode 100644 index 0000000..ff27f76 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___min.html @@ -0,0 +1,344 @@ + + + + + +Minimum +CMSIS-DSP: Minimum + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_min_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex)
     Minimum value of a floating-point vector.
     
    void arm_min_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex)
     Minimum value of a Q15 vector.
     
    void arm_min_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex)
     Minimum value of a Q31 vector.
     
    void arm_min_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex)
     Minimum value of a Q7 vector.
     
    +

    Description

    +

    Computes the minimum value of an array of data. The function returns both the minimum value and its position within the array. There are separate functions for floating-point, Q31, Q15, and Q7 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_min_f32 (float32_tpSrc,
    uint32_t blockSize,
    float32_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultminimum value returned here
    [out]*pIndexindex of minimum value returned here
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_class_marks_example_f32.c, and arm_signal_converge_example_f32.c.
    +
    +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_min_q15 (q15_tpSrc,
    uint32_t blockSize,
    q15_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultminimum value returned here
    [out]*pIndexindex of minimum value returned here
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_min_q31 (q31_tpSrc,
    uint32_t blockSize,
    q31_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultminimum value returned here
    [out]*pIndexindex of minimum value returned here
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_min_q7 (q7_tpSrc,
    uint32_t blockSize,
    q7_tpResult,
    uint32_t * pIndex 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultminimum value returned here
    [out]*pIndexindex of minimum value returned here
    +
    +
    +
    Returns
    none.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___min.js b/CMSIS/Documentation/DSP/html/group___min.js new file mode 100644 index 0000000..7cf62b9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___min.js @@ -0,0 +1,7 @@ +var group___min = +[ + [ "arm_min_f32", "group___min.html#gaf62b1673740fc516ea64daf777b7d74a", null ], + [ "arm_min_q15", "group___min.html#gad065e37535ebb726750ac1545cb3fa6f", null ], + [ "arm_min_q31", "group___min.html#gab20faeceb5ff5d2d9dd628c2ecf41303", null ], + [ "arm_min_q7", "group___min.html#ga3631d38ac8d715fc14f6f1b343f4c4ed", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___p_i_d.html b/CMSIS/Documentation/DSP/html/group___p_i_d.html new file mode 100644 index 0000000..184d62c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___p_i_d.html @@ -0,0 +1,517 @@ + + + + + +PID Motor Control +CMSIS-DSP: PID Motor Control + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    PID Motor Control
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_pid_init_f32 (arm_pid_instance_f32 *S, int32_t resetStateFlag)
     Initialization function for the floating-point PID Control.
     
    void arm_pid_init_q15 (arm_pid_instance_q15 *S, int32_t resetStateFlag)
     Initialization function for the Q15 PID Control.
     
    void arm_pid_init_q31 (arm_pid_instance_q31 *S, int32_t resetStateFlag)
     Initialization function for the Q31 PID Control.
     
    void arm_pid_reset_f32 (arm_pid_instance_f32 *S)
     Reset function for the floating-point PID Control.
     
    void arm_pid_reset_q15 (arm_pid_instance_q15 *S)
     Reset function for the Q15 PID Control.
     
    void arm_pid_reset_q31 (arm_pid_instance_q31 *S)
     Reset function for the Q31 PID Control.
     
    static __INLINE float32_t arm_pid_f32 (arm_pid_instance_f32 *S, float32_t in)
     Process function for the floating-point PID Control.
     
    static __INLINE q31_t arm_pid_q31 (arm_pid_instance_q31 *S, q31_t in)
     Process function for the Q31 PID Control.
     
    static __INLINE q15_t arm_pid_q15 (arm_pid_instance_q15 *S, q15_t in)
     Process function for the Q15 PID Control.
     
    +

    Description

    +

    A Proportional Integral Derivative (PID) controller is a generic feedback control loop mechanism widely used in industrial control systems. A PID controller is the most commonly used type of feedback controller.

    +

    This set of functions implements (PID) controllers for Q15, Q31, and floating-point data types. The functions operate on a single sample of data and each call to the function returns a single processed value. S points to an instance of the PID control data structure. in is the input sample value. The functions return the output value.

    +
    Algorithm:
    +   y[n] = y[n-1] + A0 * x[n] + A1 * x[n-1] + A2 * x[n-2]
    +   A0 = Kp + Ki + Kd
    +   A1 = (-Kp ) - (2 * Kd )
    +   A2 = Kd  
    +
    where Kp is proportional constant, Ki is Integral constant and Kd is Derivative constant
    +
    +PID.gif +
    +Proportional Integral Derivative Controller
    +
    +
    The PID controller calculates an "error" value as the difference between the measured output and the reference input. The controller attempts to minimize the error by adjusting the process control inputs. The proportional value determines the reaction to the current error, the integral value determines the reaction based on the sum of recent errors, and the derivative value determines the reaction based on the rate at which the error has been changing.
    +
    Instance Structure
    The Gains A0, A1, A2 and state variables for a PID controller are stored together in an instance data structure. A separate instance structure must be defined for each PID Controller. There are separate instance structure declarations for each of the 3 supported data types.
    +
    Reset Functions
    There is also an associated reset function for each data type which clears the state array.
    +
    Initialization Functions
    There is also an associated initialization function for each data type. The initialization function performs the following operations:
      +
    • Initializes the Gains A0, A1, A2 from Kp,Ki, Kd gains.
    • +
    • Zeros out the values in the state buffer.
    • +
    +
    +
    Instance structure cannot be placed into a const data section and it is recommended to use the initialization function.
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the PID Controller functions. In particular, the overflow and saturation behavior of the accumulator used in each function must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    static __INLINE float32_t arm_pid_f32 (arm_pid_instance_f32S,
    float32_t in 
    )
    +
    +static
    +
    +
    Parameters
    + + + +
    [in,out]Sis an instance of the floating-point PID Control structure
    [in]ininput sample to process
    +
    +
    +
    Returns
    out processed output sample.
    + +

    References arm_pid_instance_f32::A0, arm_pid_instance_f32::A1, arm_pid_instance_f32::A2, and arm_pid_instance_f32::state.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_pid_init_f32 (arm_pid_instance_f32S,
    int32_t resetStateFlag 
    )
    +
    +
    Parameters
    + + + +
    [in,out]*Spoints to an instance of the PID structure.
    [in]resetStateFlagflag to reset the state. 0 = no change in state & 1 = reset the state.
    +
    +
    +
    Returns
    none.
    +
    Description:
    +
    The resetStateFlag specifies whether to set state to zero or not.
    + The function computes the structure fields: A0, A1 A2 using the proportional gain( Kp), integral gain( Ki) and derivative gain( Kd) also sets the state variables to all zeros.
    + +

    References arm_pid_instance_f32::A0, arm_pid_instance_f32::A1, arm_pid_instance_f32::A2, arm_pid_instance_f32::Kd, arm_pid_instance_f32::Ki, arm_pid_instance_f32::Kp, and arm_pid_instance_f32::state.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_pid_init_q15 (arm_pid_instance_q15S,
    int32_t resetStateFlag 
    )
    +
    +
    Parameters
    + + + +
    [in,out]*Spoints to an instance of the Q15 PID structure.
    [in]resetStateFlagflag to reset the state. 0 = no change in state 1 = reset the state.
    +
    +
    +
    Returns
    none.
    +
    Description:
    +
    The resetStateFlag specifies whether to set state to zero or not.
    + The function computes the structure fields: A0, A1 A2 using the proportional gain( Kp), integral gain( Ki) and derivative gain( Kd) also sets the state variables to all zeros.
    + +

    References arm_pid_instance_q15::A0, arm_pid_instance_q15::A1, arm_pid_instance_q15::Kd, arm_pid_instance_q15::Ki, arm_pid_instance_q15::Kp, and arm_pid_instance_q15::state.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void arm_pid_init_q31 (arm_pid_instance_q31S,
    int32_t resetStateFlag 
    )
    +
    +
    Parameters
    + + + +
    [in,out]*Spoints to an instance of the Q31 PID structure.
    [in]resetStateFlagflag to reset the state. 0 = no change in state 1 = reset the state.
    +
    +
    +
    Returns
    none.
    +
    Description:
    +
    The resetStateFlag specifies whether to set state to zero or not.
    + The function computes the structure fields: A0, A1 A2 using the proportional gain( Kp), integral gain( Ki) and derivative gain( Kd) also sets the state variables to all zeros.
    + +

    References arm_pid_instance_q31::A0, arm_pid_instance_q31::A1, arm_pid_instance_q31::A2, clip_q63_to_q31(), arm_pid_instance_q31::Kd, arm_pid_instance_q31::Ki, arm_pid_instance_q31::Kp, and arm_pid_instance_q31::state.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    static __INLINE q15_t arm_pid_q15 (arm_pid_instance_q15S,
    q15_t in 
    )
    +
    +static
    +
    +
    Parameters
    + + + +
    [in,out]Spoints to an instance of the Q15 PID Control structure
    [in]ininput sample to process
    +
    +
    +
    Returns
    out processed output sample.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. Both Gains and state variables are represented in 1.15 format and multiplications yield a 2.30 result. The 2.30 intermediate results are accumulated in a 64-bit accumulator in 34.30 format. There is no risk of internal overflow with this approach and the full precision of intermediate multiplications is preserved. After all additions have been performed, the accumulator is truncated to 34.15 format by discarding low 15 bits. Lastly, the accumulator is saturated to yield a result in 1.15 format.
    + +

    References __SIMD32_CONST, arm_pid_instance_q15::A0, arm_pid_instance_q15::A1, and arm_pid_instance_q15::state.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    static __INLINE q31_t arm_pid_q31 (arm_pid_instance_q31S,
    q31_t in 
    )
    +
    +static
    +
    +
    Parameters
    + + + +
    [in,out]Spoints to an instance of the Q31 PID Control structure
    [in]ininput sample to process
    +
    +
    +
    Returns
    out processed output sample.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The accumulator has a 2.62 format and maintains full precision of the intermediate multiplication results but provides only a single guard bit. Thus, if the accumulator result overflows it wraps around rather than clip. In order to avoid overflows completely the input signal must be scaled down by 2 bits as there are four additions. After all multiply-accumulates are performed, the 2.62 accumulator is truncated to 1.32 format and then saturated to 1.31 format.
    + +

    References arm_pid_instance_q31::A0, arm_pid_instance_q31::A1, arm_pid_instance_q31::A2, and arm_pid_instance_q31::state.

    + +
    +
    + +
    +
    + + + + + + + + +
    void arm_pid_reset_f32 (arm_pid_instance_f32S)
    +
    +
    Parameters
    + + +
    [in]*SInstance pointer of PID control data structure.
    +
    +
    +
    Returns
    none.
    +
    Description:
    The function resets the state buffer to zeros.
    + +

    References arm_pid_instance_f32::state.

    + +
    +
    + +
    +
    + + + + + + + + +
    void arm_pid_reset_q15 (arm_pid_instance_q15S)
    +
    +
    Parameters
    + + +
    [in]*SInstance pointer of PID control data structure.
    +
    +
    +
    Returns
    none.
    +
    Description:
    The function resets the state buffer to zeros.
    + +

    References arm_pid_instance_q15::state.

    + +
    +
    + +
    +
    + + + + + + + + +
    void arm_pid_reset_q31 (arm_pid_instance_q31S)
    +
    +
    Parameters
    + + +
    [in]*SInstance pointer of PID control data structure.
    +
    +
    +
    Returns
    none.
    +
    Description:
    The function resets the state buffer to zeros.
    + +

    References arm_pid_instance_q31::state.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___p_i_d.js b/CMSIS/Documentation/DSP/html/group___p_i_d.js new file mode 100644 index 0000000..3265e7f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___p_i_d.js @@ -0,0 +1,12 @@ +var group___p_i_d = +[ + [ "arm_pid_f32", "group___p_i_d.html#gac5c79ed46abf2d72b8cf41fa6c708bda", null ], + [ "arm_pid_init_f32", "group___p_i_d.html#gae31536b19b82b93ed184fb1ab73cfcb3", null ], + [ "arm_pid_init_q15", "group___p_i_d.html#ga2cb1e3d3ebb167348fdabec74653d5c3", null ], + [ "arm_pid_init_q31", "group___p_i_d.html#gad9d88485234fa9460b1ce9e64989ac86", null ], + [ "arm_pid_q15", "group___p_i_d.html#ga084f646bbb20d55f225c3efafcf7fc1f", null ], + [ "arm_pid_q31", "group___p_i_d.html#ga5f6f941e7ae981728dd3a662f8f4ecd7", null ], + [ "arm_pid_reset_f32", "group___p_i_d.html#ga9ec860bcb6f8ca31205bf0f1b51ab723", null ], + [ "arm_pid_reset_q15", "group___p_i_d.html#ga408566dacb4fa6e0458b2c75672e525f", null ], + [ "arm_pid_reset_q31", "group___p_i_d.html#gaeecbacd3fb37c608ec25474d3a0dffa9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___partial_conv.html b/CMSIS/Documentation/DSP/html/group___partial_conv.html new file mode 100644 index 0000000..ae7f369 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___partial_conv.html @@ -0,0 +1,862 @@ + + + + + +Partial Convolution +CMSIS-DSP: Partial Convolution + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Partial Convolution
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    arm_status arm_conv_partial_f32 (float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of floating-point sequences.
     
    arm_status arm_conv_partial_fast_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_conv_partial_fast_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q15 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_conv_partial_fast_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q31 sequences (fast version) for Cortex-M3 and Cortex-M4.
     
    arm_status arm_conv_partial_opt_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q15 sequences.
     
    arm_status arm_conv_partial_opt_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2)
     Partial convolution of Q7 sequences.
     
    arm_status arm_conv_partial_q15 (q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q15 sequences.
     
    arm_status arm_conv_partial_q31 (q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q31 sequences.
     
    arm_status arm_conv_partial_q7 (q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints)
     Partial convolution of Q7 sequences.
     
    +

    Description

    +

    Partial Convolution is equivalent to Convolution except that a subset of the output samples is generated. Each function has two additional arguments. firstIndex specifies the starting index of the subset of output samples. numPoints is the number of output samples to compute. The function computes the output in the range [firstIndex, ..., firstIndex+numPoints-1]. The output array pDst contains numPoints values.

    +

    The allowable range of output indices is [0 srcALen+srcBLen-2]. If the requested subset does not fall in this range then the functions return ARM_MATH_ARGUMENT_ERROR. Otherwise the functions return ARM_MATH_SUCCESS.

    +
    Note
    Refer arm_conv_f32() for details on fixed point behavior.
    +

    Fast Versions

    +
    Fast versions are supported for Q31 and Q15 of partial convolution. Cycles for Fast versions are less compared to Q31 and Q15 of partial conv and the design requires the input signals should be scaled down to avoid intermediate overflows.
    +

    Opt Versions

    +
    Opt versions are supported for Q15 and Q7. Design uses internal scratch buffer for getting good optimisation. These versions are optimised in cycles and consumes more memory(Scratch memory) compared to Q15 and Q7 versions of partial convolution
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_f32 (float32_tpSrcA,
    uint32_t srcALen,
    float32_tpSrcB,
    uint32_t srcBLen,
    float32_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_fast_opt_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints,
    q15_tpScratch1,
    q15_tpScratch2 
    )
    +
    +
    Parameters
    + + + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    [in]*pScratch1points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    [in]*pScratch2points to scratch buffer of size min(srcALen, srcBLen).
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +

    See arm_conv_partial_q15() for a slower implementation of this function which uses a 64-bit accumulator to avoid wrap around distortion.

    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch1 and scratch2 buffers should be aligned by 32-bit
    + +

    References __SIMD32, _SIMD32_OFFSET, arm_copy_q15(), arm_fill_q15(), ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_fast_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +

    See arm_conv_partial_q15() for a slower implementation of this function which uses a 64-bit accumulator to avoid wrap around distortion.

    + +

    References __SIMD32, _SIMD32_OFFSET, ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_fast_q31 (q31_tpSrcA,
    uint32_t srcALen,
    q31_tpSrcB,
    uint32_t srcBLen,
    q31_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +
    See arm_conv_partial_q31() for a slower implementation of this function which uses a 64-bit accumulator to provide higher precision.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_opt_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints,
    q15_tpScratch1,
    q15_tpScratch2 
    )
    +
    +
    Parameters
    + + + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    [in]*pScratch1points to scratch buffer of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    [in]*pScratch2points to scratch buffer of size min(srcALen, srcBLen).
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, state buffers should be aligned by 32-bit
    +

    Refer to arm_conv_partial_fast_q15() for a faster but less precise version of this function for Cortex-M3 and Cortex-M4.

    + +

    References __SIMD32, _SIMD32_OFFSET, arm_copy_q15(), arm_fill_q15(), ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_opt_q7 (q7_tpSrcA,
    uint32_t srcALen,
    q7_tpSrcB,
    uint32_t srcBLen,
    q7_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints,
    q15_tpScratch1,
    q15_tpScratch2 
    )
    +
    +
    Parameters
    + + + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    [in]*pScratch1points to scratch buffer(of type q15_t) of size max(srcALen, srcBLen) + 2*min(srcALen, srcBLen) - 2.
    [in]*pScratch2points to scratch buffer (of type q15_t) of size min(srcALen, srcBLen).
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +
    Restrictions
    If the silicon does not support unaligned memory access enable the macro UNALIGNED_SUPPORT_DISABLE In this case input, output, scratch1 and scratch2 buffers should be aligned by 32-bit
    + +

    References __PACKq7, __SIMD32, _SIMD32_OFFSET, arm_fill_q15(), ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_q15 (q15_tpSrcA,
    uint32_t srcALen,
    q15_tpSrcB,
    uint32_t srcBLen,
    q15_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +

    Refer to arm_conv_partial_fast_q15() for a faster but less precise version of this function for Cortex-M3 and Cortex-M4.

    +
    Refer the function arm_conv_partial_opt_q15() for a faster implementation of this function using scratch buffers.
    + +

    References __SIMD32, _SIMD32_OFFSET, ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_q31 (q31_tpSrcA,
    uint32_t srcALen,
    q31_tpSrcB,
    uint32_t srcBLen,
    q31_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +

    See arm_conv_partial_fast_q31() for a faster but less precise implementation of this function for Cortex-M3 and Cortex-M4.

    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_conv_partial_q7 (q7_tpSrcA,
    uint32_t srcALen,
    q7_tpSrcB,
    uint32_t srcBLen,
    q7_tpDst,
    uint32_t firstIndex,
    uint32_t numPoints 
    )
    +
    +
    Parameters
    + + + + + + + + +
    [in]*pSrcApoints to the first input sequence.
    [in]srcALenlength of the first input sequence.
    [in]*pSrcBpoints to the second input sequence.
    [in]srcBLenlength of the second input sequence.
    [out]*pDstpoints to the location where the output result is written.
    [in]firstIndexis the first output sample to start with.
    [in]numPointsis the number of output points to be computed.
    +
    +
    +
    Returns
    Returns either ARM_MATH_SUCCESS if the function completed correctly or ARM_MATH_ARGUMENT_ERROR if the requested subset is not in the range [0 srcALen+srcBLen-2].
    +
    Refer the function arm_conv_partial_opt_q7() for a faster implementation of this function.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, srcALen, srcBLen, and status.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___partial_conv.js b/CMSIS/Documentation/DSP/html/group___partial_conv.js new file mode 100644 index 0000000..c8d14b0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___partial_conv.js @@ -0,0 +1,12 @@ +var group___partial_conv = +[ + [ "arm_conv_partial_f32", "group___partial_conv.html#ga16d10f32072cd79fc5fb6e785df45f5e", null ], + [ "arm_conv_partial_fast_opt_q15", "group___partial_conv.html#ga3de9c4ddcc7886de25b70d875099a8d9", null ], + [ "arm_conv_partial_fast_q15", "group___partial_conv.html#ga1e4d43385cb62262a78c6752fe1fafb2", null ], + [ "arm_conv_partial_fast_q31", "group___partial_conv.html#ga10c5294cda8c4985386f4e3944be7650", null ], + [ "arm_conv_partial_opt_q15", "group___partial_conv.html#ga834b23b4ade8682beeb55778399101f8", null ], + [ "arm_conv_partial_opt_q7", "group___partial_conv.html#ga3707e16af1435b215840006a7ab0c98f", null ], + [ "arm_conv_partial_q15", "group___partial_conv.html#ga209a2a913a0c5e5679c5988da8f46b03", null ], + [ "arm_conv_partial_q31", "group___partial_conv.html#ga78e73a5f02d103168a09821fb461e77a", null ], + [ "arm_conv_partial_q7", "group___partial_conv.html#ga8567259fe18396dd972242c41741ebf4", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___r_m_s.html b/CMSIS/Documentation/DSP/html/group___r_m_s.html new file mode 100644 index 0000000..b7add6c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___r_m_s.html @@ -0,0 +1,282 @@ + + + + + +Root mean square (RMS) +CMSIS-DSP: Root mean square (RMS) + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Root mean square (RMS)
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_rms_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Root Mean Square of the elements of a floating-point vector.
     
    void arm_rms_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Root Mean Square of the elements of a Q15 vector.
     
    void arm_rms_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Root Mean Square of the elements of a Q31 vector.
     
    +

    Description

    +

    Calculates the Root Mean Sqaure of the elements in the input vector. The underlying algorithm is used:

    +
        
    +        Result = sqrt(((pSrc[0] * pSrc[0] + pSrc[1] * pSrc[1] + ... + pSrc[blockSize-1] * pSrc[blockSize-1]) / blockSize));    
    +

    There are separate functions for floating point, Q31, and Q15 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_rms_f32 (float32_tpSrc,
    uint32_t blockSize,
    float32_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultrms value returned here
    +
    +
    +
    Returns
    none.
    + +

    References arm_sqrt_f32(), and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_rms_q15 (q15_tpSrc,
    uint32_t blockSize,
    q15_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultrms value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The input is represented in 1.15 format. Intermediate multiplication yields a 2.30 format, and this result is added without saturation to a 64-bit accumulator in 34.30 format. With 33 guard bits in the accumulator, there is no risk of overflow, and the full precision of the intermediate multiplication is preserved. Finally, the 34.30 result is truncated to 34.15 format by discarding the lower 15 bits, and then saturated to yield a result in 1.15 format.
    + +

    References __SIMD32, arm_sqrt_q15(), and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_rms_q31 (q31_tpSrc,
    uint32_t blockSize,
    q31_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultrms value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The input is represented in 1.31 format, and intermediate multiplication yields a 2.62 format. The accumulator maintains full precision of the intermediate multiplication results, but provides only a single guard bit. There is no saturation on intermediate additions. If the accumulator overflows, it wraps around and distorts the result. In order to avoid overflows completely, the input signal must be scaled down by log2(blockSize) bits, as a total of blockSize additions are performed internally. Finally, the 2.62 accumulator is right shifted by 31 bits to yield a 1.31 format value.
    + +

    References arm_sqrt_q31(), blockSize, and clip_q63_to_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___r_m_s.js b/CMSIS/Documentation/DSP/html/group___r_m_s.js new file mode 100644 index 0000000..1fa2dd7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___r_m_s.js @@ -0,0 +1,6 @@ +var group___r_m_s = +[ + [ "arm_rms_f32", "group___r_m_s.html#ga0e3ab1b57da32d45388d1fa90d7fd88c", null ], + [ "arm_rms_q15", "group___r_m_s.html#gaf5b836b72dda9e5dfbbd17c7906fd13f", null ], + [ "arm_rms_q31", "group___r_m_s.html#gae33015fda23fc44e7ead5e5ed7e8d314", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___radix8___c_f_f_t___c_i_f_f_t.html b/CMSIS/Documentation/DSP/html/group___radix8___c_f_f_t___c_i_f_f_t.html new file mode 100644 index 0000000..b803d9e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___radix8___c_f_f_t___c_i_f_f_t.html @@ -0,0 +1,171 @@ + + + + + +Radix-8 Complex FFT Functions +CMSIS-DSP: Radix-8 Complex FFT Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Radix-8 Complex FFT Functions
    +
    +
    +
    Complex Fast Fourier Transform(CFFT) and Complex Inverse Fast Fourier Transform(CIFFT) is an efficient algorithm to compute Discrete Fourier Transform(DFT) and Inverse Discrete Fourier Transform(IDFT). Computational complexity of CFFT reduces drastically when compared to DFT.
    +
    This set of functions implements CFFT/CIFFT for floating-point data types. The functions operates on in-place buffer which uses same buffer for input and output. Complex input is stored in input buffer in an interleaved fashion.
    +
    The functions operate on blocks of input and output data and each call to the function processes 2*fftLen samples through the transform. pSrc points to In-place arrays containing 2*fftLen values.
    +
    The pSrc points to the array of in-place buffer of size 2*fftLen and inputs and outputs are stored in an interleaved fashion as shown below.
     {real[0], imag[0], real[1], imag[1],..} 
    +
    Lengths supported by the transform:
    +
    Internally, the function utilize a Radix-8 decimation in frequency(DIF) algorithm and the size of the FFT supported are of the lengths [ 64, 512, 4096].
    +
    Algorithm:
    +

    Complex Fast Fourier Transform:

    +
    Input real and imaginary data:
        
    +x(n) = xa + j * ya    
    +x(n+N/4 ) = xb + j * yb    
    +x(n+N/2 ) = xc + j * yc    
    +x(n+3N 4) = xd + j * yd    
    +
    where N is length of FFT
    +
    Output real and imaginary data:
        
    +X(4r) = xa'+ j * ya'    
    +X(4r+1) = xb'+ j * yb'    
    +X(4r+2) = xc'+ j * yc'    
    +X(4r+3) = xd'+ j * yd'    
    +
    +
    Twiddle factors for Radix-8 FFT:
        
    +Wn = co1 + j * (- si1)    
    +W2n = co2 + j * (- si2)    
    +W3n = co3 + j * (- si3)    
    +
    +
    +CFFT.gif +
    +Radix-8 Decimation-in Frequency Complex Fast Fourier Transform
    +
    +
    Output from Radix-8 CFFT Results in Digit reversal order. Interchange middle two branches of every butterfly results in Bit reversed output.
    +
    Butterfly CFFT equations:
        
    +xa' = xa + xb + xc + xd    
    +ya' = ya + yb + yc + yd    
    +xc' = (xa+yb-xc-yd)* co1 + (ya-xb-yc+xd)* (si1)    
    +yc' = (ya-xb-yc+xd)* co1 - (xa+yb-xc-yd)* (si1)    
    +xb' = (xa-xb+xc-xd)* co2 + (ya-yb+yc-yd)* (si2)    
    +yb' = (ya-yb+yc-yd)* co2 - (xa-xb+xc-xd)* (si2)    
    +xd' = (xa-yb-xc+yd)* co3 + (ya+xb-yc-xd)* (si3)    
    +yd' = (ya+xb-yc-xd)* co3 - (xa-yb-xc+yd)* (si3)    
    +
    +
    where fftLen length of CFFT/CIFFT; ifftFlag Flag for selection of CFFT or CIFFT(Set ifftFlag to calculate CIFFT otherwise calculates CFFT); bitReverseFlag Flag for selection of output order(Set bitReverseFlag to output in normal order otherwise output in bit reversed order); pTwiddlepoints to array of twiddle coefficients; pBitRevTable points to the array of bit reversal table. twidCoefModifier modifier for twiddle factor table which supports all FFT lengths with same table; pBitRevTable modifier for bit reversal table which supports all FFT lengths with same table. onebyfftLen value of 1/fftLen to calculate CIFFT;
    +
    Fixed-Point Behavior
    Care must be taken when using the fixed-point versions of the CFFT/CIFFT function. Refer to the function specific documentation below for usage guidelines.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___real_f_f_t.html b/CMSIS/Documentation/DSP/html/group___real_f_f_t.html new file mode 100644 index 0000000..15611b2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___real_f_f_t.html @@ -0,0 +1,773 @@ + + + + + +RealFFT +CMSIS-DSP: RealFFT + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void arm_rfft_f32 (const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst)
     Processing function for the floating-point RFFT/RIFFT.
     
    void arm_rfft_fast_f32 (arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag)
     Processing function for the floating-point real FFT.
     
    arm_status arm_rfft_fast_init_f32 (arm_rfft_fast_instance_f32 *S, uint16_t fftLen)
     Initialization function for the floating-point real FFT.
     
    arm_status arm_rfft_init_f32 (arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the floating-point RFFT/RIFFT.
     
    arm_status arm_rfft_init_q15 (arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the Q15 RFFT/RIFFT.
     
    arm_status arm_rfft_init_q31 (arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag)
     Initialization function for the Q31 RFFT/RIFFT.
     
    void arm_rfft_q15 (const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst)
     Processing function for the Q15 RFFT/RIFFT.
     
    void arm_rfft_q31 (const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst)
     Processing function for the Q31 RFFT/RIFFT.
     
    + + + + + + + + + + + + + +

    +Variables

    static const float32_t realCoefA [8192]
     
    static const float32_t realCoefB [8192]
     
    static const q15_t ALIGN4 realCoefAQ15 [8192]
     
    static const q15_t ALIGN4 realCoefBQ15 [8192]
     
    static const q31_t realCoefAQ31 [8192]
     
    static const q31_t realCoefBQ31 [8192]
     
    +

    Description

    +

    Function Documentation

    + + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_rfft_fast_f32 (arm_rfft_fast_instance_f32S,
    float32_tp,
    float32_tpOut,
    uint8_t ifftFlag 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*Spoints to an arm_rfft_fast_instance_f32 structure.
    [in]*ppoints to the input buffer.
    [in]*pOutpoints to the output buffer.
    [in]ifftFlagRFFT if flag is 0, RIFFT if flag is 1
    +
    +
    +
    Returns
    none.
    + +

    References arm_cfft_f32(), arm_cfft_instance_f32::fftLen, arm_rfft_fast_instance_f32::fftLenRFFT, merge_rfft_f32(), arm_rfft_fast_instance_f32::Sint, and stage_rfft_f32().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_rfft_fast_init_f32 (arm_rfft_fast_instance_f32S,
    uint16_t fftLen 
    )
    +
    +
    Parameters
    + + + +
    [in,out]*Spoints to an arm_rfft_fast_instance_f32 structure.
    [in]fftLenlength of the Real Sequence.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLen is not a supported value.
    +
    Description:
    +
    The parameter fftLen Specifies length of RFFT/CIFFT process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096.
    +
    This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
    + +

    References ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, armBitRevIndexTable1024, ARMBITREVINDEXTABLE1024_TABLE_LENGTH, armBitRevIndexTable128, armBitRevIndexTable16, armBitRevIndexTable2048, ARMBITREVINDEXTABLE2048_TABLE_LENGTH, armBitRevIndexTable256, armBitRevIndexTable32, armBitRevIndexTable512, armBitRevIndexTable64, ARMBITREVINDEXTABLE_128_TABLE_LENGTH, ARMBITREVINDEXTABLE_256_TABLE_LENGTH, ARMBITREVINDEXTABLE_512_TABLE_LENGTH, ARMBITREVINDEXTABLE__16_TABLE_LENGTH, ARMBITREVINDEXTABLE__32_TABLE_LENGTH, ARMBITREVINDEXTABLE__64_TABLE_LENGTH, arm_cfft_instance_f32::bitRevLength, arm_cfft_instance_f32::fftLen, arm_rfft_fast_instance_f32::fftLenRFFT, arm_cfft_instance_f32::pBitRevTable, arm_cfft_instance_f32::pTwiddle, arm_rfft_fast_instance_f32::pTwiddleRFFT, arm_rfft_fast_instance_f32::Sint, status, twiddleCoef_1024, twiddleCoef_128, twiddleCoef_16, twiddleCoef_2048, twiddleCoef_256, twiddleCoef_32, twiddleCoef_512, twiddleCoef_64, twiddleCoef_rfft_1024, twiddleCoef_rfft_128, twiddleCoef_rfft_2048, twiddleCoef_rfft_256, twiddleCoef_rfft_32, twiddleCoef_rfft_4096, twiddleCoef_rfft_512, and twiddleCoef_rfft_64.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_rfft_init_f32 (arm_rfft_instance_f32S,
    arm_cfft_radix4_instance_f32S_CFFT,
    uint32_t fftLenReal,
    uint32_t ifftFlagR,
    uint32_t bitReverseFlag 
    )
    +
    +
    Deprecated:
    Do not use this function. It has been superceded by arm_rfft_fast_init_f32 and will be removed in the future.
    +
    Parameters
    + + + + + + +
    [in,out]*Spoints to an instance of the floating-point RFFT/RIFFT structure.
    [in,out]*S_CFFTpoints to an instance of the floating-point CFFT/CIFFT structure.
    [in]fftLenReallength of the FFT.
    [in]ifftFlagRflag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLenReal is not a supported value.
    +
    Description:
    +
    The parameter fftLenReal Specifies length of RFFT/RIFFT Process. Supported FFT Lengths are 128, 512, 2048.
    +
    The parameter ifftFlagR controls whether a forward or inverse transform is computed. Set(=1) ifftFlagR to calculate RIFFT, otherwise RFFT is calculated.
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    This function also initializes Twiddle factor table.
    + +

    References arm_cfft_radix4_init_f32(), ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, arm_rfft_instance_f32::bitReverseFlagR, arm_rfft_instance_f32::fftLenBy2, arm_rfft_instance_f32::fftLenReal, arm_rfft_instance_f32::ifftFlagR, arm_rfft_instance_f32::pCfft, arm_rfft_instance_f32::pTwiddleAReal, arm_rfft_instance_f32::pTwiddleBReal, realCoefA, realCoefB, status, and arm_rfft_instance_f32::twidCoefRModifier.

    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_rfft_init_q15 (arm_rfft_instance_q15S,
    uint32_t fftLenReal,
    uint32_t ifftFlagR,
    uint32_t bitReverseFlag 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the Q15 RFFT/RIFFT structure.
    [in]fftLenReallength of the FFT.
    [in]ifftFlagRflag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLenReal is not a supported value.
    +
    Description:
    +
    The parameter fftLenReal Specifies length of RFFT/RIFFT Process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192.
    +
    The parameter ifftFlagR controls whether a forward or inverse transform is computed. Set(=1) ifftFlagR to calculate RIFFT, otherwise RFFT is calculated.
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    This function also initializes Twiddle factor table.
    + +

    References arm_cfft_sR_q15_len1024, arm_cfft_sR_q15_len128, arm_cfft_sR_q15_len16, arm_cfft_sR_q15_len2048, arm_cfft_sR_q15_len256, arm_cfft_sR_q15_len32, arm_cfft_sR_q15_len4096, arm_cfft_sR_q15_len512, arm_cfft_sR_q15_len64, ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, arm_rfft_instance_q15::bitReverseFlagR, arm_rfft_instance_q15::fftLenReal, arm_rfft_instance_q15::ifftFlagR, arm_rfft_instance_q15::pCfft, arm_rfft_instance_q15::pTwiddleAReal, arm_rfft_instance_q15::pTwiddleBReal, realCoefAQ15, realCoefBQ15, status, and arm_rfft_instance_q15::twidCoefRModifier.

    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    arm_status arm_rfft_init_q31 (arm_rfft_instance_q31S,
    uint32_t fftLenReal,
    uint32_t ifftFlagR,
    uint32_t bitReverseFlag 
    )
    +
    +
    Parameters
    + + + + + +
    [in,out]*Spoints to an instance of the Q31 RFFT/RIFFT structure.
    [in]fftLenReallength of the FFT.
    [in]ifftFlagRflag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform.
    [in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if initialization is successful or ARM_MATH_ARGUMENT_ERROR if fftLenReal is not a supported value.
    +
    Description:
    +
    The parameter fftLenReal Specifies length of RFFT/RIFFT Process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192.
    +
    The parameter ifftFlagR controls whether a forward or inverse transform is computed. Set(=1) ifftFlagR to calculate RIFFT, otherwise RFFT is calculated.
    +
    The parameter bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order.
    +
    7
    This function also initializes Twiddle factor table.
    + +

    References arm_cfft_sR_q31_len1024, arm_cfft_sR_q31_len128, arm_cfft_sR_q31_len16, arm_cfft_sR_q31_len2048, arm_cfft_sR_q31_len256, arm_cfft_sR_q31_len32, arm_cfft_sR_q31_len4096, arm_cfft_sR_q31_len512, arm_cfft_sR_q31_len64, ARM_MATH_ARGUMENT_ERROR, ARM_MATH_SUCCESS, arm_rfft_instance_q31::bitReverseFlagR, arm_rfft_instance_q31::fftLenReal, arm_rfft_instance_q31::ifftFlagR, arm_rfft_instance_q31::pCfft, arm_rfft_instance_q31::pTwiddleAReal, arm_rfft_instance_q31::pTwiddleBReal, realCoefAQ31, realCoefBQ31, status, and arm_rfft_instance_q31::twidCoefRModifier.

    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_rfft_q15 (const arm_rfft_instance_q15S,
    q15_tpSrc,
    q15_tpDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*Spoints to an instance of the Q15 RFFT/RIFFT structure.
    [in]*pSrcpoints to the input buffer.
    [out]*pDstpoints to the output buffer.
    +
    +
    +
    Returns
    none.
    +
    Input an output formats:
    +
    Internally input is downscaled by 2 for every stage to avoid saturations inside CFFT/CIFFT process. Hence the output format is different for different RFFT sizes. The input and output formats for different RFFT sizes and number of bits to upscale are mentioned in the tables below for RFFT and RIFFT:
    +
    +RFFTQ15.gif +
    +Input and Output Formats for Q15 RFFT
    +
    +
    +RIFFTQ15.gif +
    +Input and Output Formats for Q15 RIFFT
    +
    + +

    References arm_cfft_q15(), arm_split_rfft_q15(), arm_split_rifft_q15(), arm_rfft_instance_q15::bitReverseFlagR, arm_rfft_instance_q15::fftLenReal, arm_rfft_instance_q15::ifftFlagR, arm_rfft_instance_q15::pCfft, arm_rfft_instance_q15::pTwiddleAReal, arm_rfft_instance_q15::pTwiddleBReal, and arm_rfft_instance_q15::twidCoefRModifier.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_rfft_q31 (const arm_rfft_instance_q31S,
    q31_tpSrc,
    q31_tpDst 
    )
    +
    +
    Parameters
    + + + + +
    [in]*Spoints to an instance of the Q31 RFFT/RIFFT structure.
    [in]*pSrcpoints to the input buffer.
    [out]*pDstpoints to the output buffer.
    +
    +
    +
    Returns
    none.
    +
    Input an output formats:
    +
    Internally input is downscaled by 2 for every stage to avoid saturations inside CFFT/CIFFT process. Hence the output format is different for different RFFT sizes. The input and output formats for different RFFT sizes and number of bits to upscale are mentioned in the tables below for RFFT and RIFFT:
    +
    +RFFTQ31.gif +
    +Input and Output Formats for Q31 RFFT
    +
    +
    +RIFFTQ31.gif +
    +Input and Output Formats for Q31 RIFFT
    +
    + +

    References arm_cfft_q31(), arm_split_rfft_q31(), arm_split_rifft_q31(), arm_rfft_instance_q31::bitReverseFlagR, arm_rfft_instance_q31::fftLenReal, arm_rfft_instance_q31::ifftFlagR, arm_rfft_instance_q31::pCfft, arm_rfft_instance_q31::pTwiddleAReal, arm_rfft_instance_q31::pTwiddleBReal, and arm_rfft_instance_q31::twidCoefRModifier.

    + +

    Referenced by arm_dct4_q31().

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + + +
    + + + + +
    const float32_t realCoefA[8192]
    +
    +static
    +
    +
    Generation of realCoefA array:
    +
    n = 4096
    for (i = 0; i < n; i++)    
    + {    
    +   pATable[2 * i] = 0.5 * (1.0 - sin (2 * PI / (double) (2 * n) * (double) i));    
    +   pATable[2 * i + 1] = 0.5 * (-1.0 * cos (2 * PI / (double) (2 * n) * (double) i));    
    + } 
    + +

    Referenced by arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 realCoefAQ15[8192]
    +
    +static
    +
    +
    Generation fixed-point realCoefAQ15 array in Q15 format:
    +
    n = 4096
    for (i = 0; i < n; i++)    
    + {    
    +   pATable[2 * i] = 0.5 * (1.0 - sin (2 * PI / (double) (2 * n) * (double) i));    
    +   pATable[2 * i + 1] = 0.5 * (-1.0 * cos (2 * PI / (double) (2 * n) * (double) i));    
    + } 
    +
    Convert to fixed point Q15 format round(pATable[i] * pow(2, 15))
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t realCoefAQ31[8192]
    +
    +static
    +
    +
    Generation fixed-point realCoefAQ31 array in Q31 format:
    +
    n = 4096
    for (i = 0; i < n; i++)    
    +{    
    +   pATable[2 * i] = 0.5 * (1.0 - sin (2 * PI / (double) (2 * n) * (double) i));    
    +   pATable[2 * i + 1] = 0.5 * (-1.0 * cos (2 * PI / (double) (2 * n) * (double) i));    
    +}
    +
    Convert to fixed point Q31 format round(pATable[i] * pow(2, 31))
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const float32_t realCoefB[8192]
    +
    +static
    +
    +
    Generation of realCoefB array:
    +
    n = 4096
    for (i = 0; i < n; i++)    
    +{    
    +   pBTable[2 * i] = 0.5 * (1.0 + sin (2 * PI / (double) (2 * n) * (double) i));    
    +   pBTable[2 * i + 1] = 0.5 * (1.0 * cos (2 * PI / (double) (2 * n) * (double) i));    
    + } 
    + +

    Referenced by arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q15_t ALIGN4 realCoefBQ15[8192]
    +
    +static
    +
    +
    Generation of real_CoefB array:
    +
    n = 4096
    for (i = 0; i < n; i++)    
    + {    
    +   pBTable[2 * i] = 0.5 * (1.0 + sin (2 * PI / (double) (2 * n) * (double) i));    
    +   pBTable[2 * i + 1] = 0.5 * (1.0 * cos (2 * PI / (double) (2 * n) * (double) i));    
    + } 
    +
    Convert to fixed point Q15 format round(pBTable[i] * pow(2, 15))
    + +

    Referenced by arm_rfft_init_q15().

    + +
    +
    + +
    +
    + + + + + +
    + + + + +
    const q31_t realCoefBQ31[8192]
    +
    +static
    +
    +
    Generation of realCoefBQ31 array:
    +
    n = 4096
    for (i = 0; i < n; i++)    
    +{    
    +   pBTable[2 * i] = 0.5 * (1.0 + sin (2 * PI / (double) (2 * n) * (double) i));    
    +   pBTable[2 * i + 1] = 0.5 * (1.0 * cos (2 * PI / (double) (2 * n) * (double) i));    
    +} 
    +
    Convert to fixed point Q31 format round(pBTable[i] * pow(2, 31))
    + +

    Referenced by arm_rfft_init_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___real_f_f_t.js b/CMSIS/Documentation/DSP/html/group___real_f_f_t.js new file mode 100644 index 0000000..7f2aa94 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___real_f_f_t.js @@ -0,0 +1,17 @@ +var group___real_f_f_t = +[ + [ "arm_rfft_f32", "group___real_f_f_t.html#ga3df1766d230532bc068fc4ed69d0fcdc", null ], + [ "arm_rfft_fast_f32", "group___real_f_f_t.html#ga180d8b764d59cbb85d37a2d5f7cd9799", null ], + [ "arm_rfft_fast_init_f32", "group___real_f_f_t.html#gac5fceb172551e7c11eb4d0e17ef15aa3", null ], + [ "arm_rfft_init_f32", "group___real_f_f_t.html#ga10717ee326bf50832ef1c25b85a23068", null ], + [ "arm_rfft_init_q15", "group___real_f_f_t.html#ga053450cc600a55410ba5b5605e96245d", null ], + [ "arm_rfft_init_q31", "group___real_f_f_t.html#ga5abde938abbe72e95c5bab080eb33c45", null ], + [ "arm_rfft_q15", "group___real_f_f_t.html#ga00e615f5db21736ad5b27fb6146f3fc5", null ], + [ "arm_rfft_q31", "group___real_f_f_t.html#gabaeab5646aeea9844e6d42ca8c73fe3a", null ], + [ "realCoefA", "group___real_f_f_t.html#ga8b1ad947c470596674fa3364e16045c6", null ], + [ "realCoefAQ15", "group___real_f_f_t.html#ga11e84d0ee257a547f749b37dd0078d36", null ], + [ "realCoefAQ31", "group___real_f_f_t.html#gaf1592a6cf0504675205074a43c3728a2", null ], + [ "realCoefB", "group___real_f_f_t.html#gac52f98b52a1f03bfac8b57a67ba07397", null ], + [ "realCoefBQ15", "group___real_f_f_t.html#gac871666f018b70938b2b98017628cb97", null ], + [ "realCoefBQ31", "group___real_f_f_t.html#ga1eb5745728a61c3715755f5d69a4a960", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___s_q_r_t.html b/CMSIS/Documentation/DSP/html/group___s_q_r_t.html new file mode 100644 index 0000000..14eb154 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___s_q_r_t.html @@ -0,0 +1,290 @@ + + + + + +Square Root +CMSIS-DSP: Square Root + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Square Root
    +
    +
    + + + + + + + + + + + +

    +Functions

    arm_status arm_sqrt_q15 (q15_t in, q15_t *pOut)
     Q15 square root function.
     
    arm_status arm_sqrt_q31 (q31_t in, q31_t *pOut)
     Q31 square root function.
     
    static __INLINE arm_status arm_sqrt_f32 (float32_t in, float32_t *pOut)
     Floating-point square root function.
     
    +

    Description

    +

    Computes the square root of a number. There are separate functions for Q15, Q31, and floating-point data types. The square root function is computed using the Newton-Raphson algorithm. This is an iterative algorithm of the form:

    +
    +     x1 = x0 - f(x0)/f'(x0)
    +

    where x1 is the current estimate, x0 is the previous estimate, and f'(x0) is the derivative of f() evaluated at x0. For the square root function, the algorithm reduces to:

    +
    +    x0 = in/2                         [initial guess]
    +    x1 = 1/2 * ( x0 + in / x0)        [each iteration]
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    static __INLINE arm_status arm_sqrt_f32 (float32_t in,
    float32_tpOut 
    )
    +
    +static
    +
    +
    Parameters
    + + + +
    [in]ininput value.
    [out]pOutsquare root of input value.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if input value is positive value or ARM_MATH_ARGUMENT_ERROR if in is negative value and returns zero output for negative values.
    + +

    References ARM_MATH_ARGUMENT_ERROR, and ARM_MATH_SUCCESS.

    + +

    Referenced by arm_cmplx_mag_f32(), arm_rms_f32(), and arm_std_f32().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_sqrt_q15 (q15_t in,
    q15_tpOut 
    )
    +
    +
    Parameters
    + + + +
    [in]ininput value. The range of the input value is [0 +1) or 0x0000 to 0x7FFF.
    [out]*pOutsquare root of input value.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if the input value is positive and ARM_MATH_ARGUMENT_ERROR if the input is negative. For negative inputs, the function returns *pOut = 0.
    +
    Parameters
    + + + +
    [in]ininput value. The range of the input value is [0 +1) or 0x0000 to 0x7FFF.
    [out]pOutsquare root of input value.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if input value is positive value or ARM_MATH_ARGUMENT_ERROR if in is negative value and returns zero output for negative values.
    + +

    References ARM_MATH_ARGUMENT_ERROR, and ARM_MATH_SUCCESS.

    + +

    Referenced by arm_cmplx_mag_q15(), arm_rms_q15(), and arm_std_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    arm_status arm_sqrt_q31 (q31_t in,
    q31_tpOut 
    )
    +
    +
    Parameters
    + + + +
    [in]ininput value. The range of the input value is [0 +1) or 0x00000000 to 0x7FFFFFFF.
    [out]*pOutsquare root of input value.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if the input value is positive and ARM_MATH_ARGUMENT_ERROR if the input is negative. For negative inputs, the function returns *pOut = 0.
    +
    Parameters
    + + + +
    [in]ininput value. The range of the input value is [0 +1) or 0x00000000 to 0x7FFFFFFF.
    [out]pOutsquare root of input value.
    +
    +
    +
    Returns
    The function returns ARM_MATH_SUCCESS if input value is positive value or ARM_MATH_ARGUMENT_ERROR if in is negative value and returns zero output for negative values.
    + +

    References ARM_MATH_ARGUMENT_ERROR, and ARM_MATH_SUCCESS.

    + +

    Referenced by arm_cmplx_mag_q31(), arm_rms_q31(), and arm_std_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___s_q_r_t.js b/CMSIS/Documentation/DSP/html/group___s_q_r_t.js new file mode 100644 index 0000000..912d1d7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___s_q_r_t.js @@ -0,0 +1,6 @@ +var group___s_q_r_t = +[ + [ "arm_sqrt_f32", "group___s_q_r_t.html#ga56a40d1cf842b0b45267df6761975da0", null ], + [ "arm_sqrt_q15", "group___s_q_r_t.html#ga5abe5ca724f3e15849662b03752c1238", null ], + [ "arm_sqrt_q31", "group___s_q_r_t.html#ga119e25831e141d734d7ef10636670058", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___s_t_d.html b/CMSIS/Documentation/DSP/html/group___s_t_d.html new file mode 100644 index 0000000..12d38bb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___s_t_d.html @@ -0,0 +1,285 @@ + + + + + +Standard deviation +CMSIS-DSP: Standard deviation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Standard deviation
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_std_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Standard deviation of the elements of a floating-point vector.
     
    void arm_std_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Standard deviation of the elements of a Q15 vector.
     
    void arm_std_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Standard deviation of the elements of a Q31 vector.
     
    +

    Description

    +

    Calculates the standard deviation of the elements in the input vector. The underlying algorithm is used:

    +
        
    +        Result = sqrt((sumOfSquares - sum2 / blockSize) / (blockSize - 1))
            where, sumOfSquares = pSrc[0] * pSrc[0] + pSrc[1] * pSrc[1] + ... + pSrc[blockSize-1] * pSrc[blockSize-1]
                            sum = pSrc[0] + pSrc[1] + pSrc[2] + ... + pSrc[blockSize-1]   
    +

    There are separate functions for floating point, Q31, and Q15 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_std_f32 (float32_tpSrc,
    uint32_t blockSize,
    float32_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultstandard deviation value returned here
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    References arm_sqrt_f32(), blockSize, mean, and var.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_std_q15 (q15_tpSrc,
    uint32_t blockSize,
    q15_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultstandard deviation value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The input is represented in 1.15 format. Intermediate multiplication yields a 2.30 format, and this result is added without saturation to a 64-bit accumulator in 34.30 format. With 33 guard bits in the accumulator, there is no risk of overflow, and the full precision of the intermediate multiplication is preserved. Finally, the 34.30 result is truncated to 34.15 format by discarding the lower 15 bits, and then saturated to yield a result in 1.15 format.
    + +

    References __SIMD32, arm_sqrt_q15(), and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_std_q31 (q31_tpSrc,
    uint32_t blockSize,
    q31_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultstandard deviation value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The input is represented in 1.31 format, which is then downshifted by 8 bits which yields 1.23, and intermediate multiplication yields a 2.46 format. The accumulator maintains full precision of the intermediate multiplication results, but provides only a 16 guard bits. There is no saturation on intermediate additions. If the accumulator overflows it wraps around and distorts the result. In order to avoid overflows completely the input signal must be scaled down by log2(blockSize)-8 bits, as a total of blockSize additions are performed internally. After division, internal variables should be Q18.46 Finally, the 18.46 accumulator is right shifted by 15 bits to yield a 1.31 format value.
    + +

    References arm_sqrt_q31(), and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___s_t_d.js b/CMSIS/Documentation/DSP/html/group___s_t_d.js new file mode 100644 index 0000000..9375c07 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___s_t_d.js @@ -0,0 +1,6 @@ +var group___s_t_d = +[ + [ "arm_std_f32", "group___s_t_d.html#ga4969b5b5f3d001377bc401a3ee99dfc2", null ], + [ "arm_std_q15", "group___s_t_d.html#gaf9d27afa9928ff28a63cd98ea9218a72", null ], + [ "arm_std_q31", "group___s_t_d.html#ga39495e74f96116178be085c9dc7742f5", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___signal_convergence.html b/CMSIS/Documentation/DSP/html/group___signal_convergence.html new file mode 100644 index 0000000..5efb226 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___signal_convergence.html @@ -0,0 +1,163 @@ + + + + + +Signal Convergence Example +CMSIS-DSP: Signal Convergence Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Signal Convergence Example
    +
    +
    +
    Description:
    +
    Demonstrates the ability of an adaptive filter to "learn" the transfer function of a FIR lowpass filter using the Normalized LMS Filter, Finite Impulse Response (FIR) Filter, and Basic Math Functions.
    +
    Algorithm:
    +
    The figure below illustrates the signal flow in this example. Uniformly distributed white noise is passed through an FIR lowpass filter. The output of the FIR filter serves as the reference input of the adaptive filter (normalized LMS filter). The white noise is input to the adaptive filter. The adaptive filter learns the transfer function of the FIR filter. The filter outputs two signals: (1) the output of the internal adaptive FIR filter, and (2) the error signal which is the difference between the adaptive filter and the reference output of the FIR filter. Over time as the adaptive filter learns the transfer function of the FIR filter, the first output approaches the reference output of the FIR filter, and the error signal approaches zero.
    +
    The adaptive filter converges properly even if the input signal has a large dynamic range (i.e., varies from small to large values). The coefficients of the adaptive filter are initially zero, and then converge over 1536 samples. The internal function test_signal_converge() implements the stopping condition. The function checks if all of the values of the error signal have a magnitude below a threshold DELTA.
    +
    Block Diagram:
    +
    +SignalFlow.gif +
    +
    +
    Variables Description:
    +
      +
    • testInput_f32 points to the input data
    • +
    • firStateF32 points to FIR state buffer
    • +
    • lmsStateF32 points to Normalised Least mean square FIR filter state buffer
    • +
    • FIRCoeff_f32 points to coefficient buffer
    • +
    • lmsNormCoeff_f32 points to Normalised Least mean square FIR filter coefficient buffer
    • +
    • wire1, wir2, wire3 temporary buffers
    • +
    • errOutput, err_signal temporary error buffers
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_signal_converge_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___sin_cos.html b/CMSIS/Documentation/DSP/html/group___sin_cos.html new file mode 100644 index 0000000..fba5c91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___sin_cos.html @@ -0,0 +1,240 @@ + + + + + +Sine Cosine +CMSIS-DSP: Sine Cosine + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Sine Cosine
    +
    +
    + + + + + + + + +

    +Functions

    void arm_sin_cos_f32 (float32_t theta, float32_t *pSinVal, float32_t *pCosVal)
     Floating-point sin_cos function.
     
    void arm_sin_cos_q31 (q31_t theta, q31_t *pSinVal, q31_t *pCosVal)
     Q31 sin_cos function.
     
    +

    Description

    +

    Computes the trigonometric sine and cosine values using a combination of table lookup and linear interpolation. There are separate functions for Q31 and floating-point data types. The input to the floating-point version is in degrees while the fixed-point Q31 have a scaled input with the range [-1 0.9999] mapping to [-180 +180] degrees.

    +

    The floating point function also allows values that are out of the usual range. When this happens, the function will take extra time to adjust the input value to the range of [-180 180].

    +

    The implementation is based on table lookup using 360 values together with linear interpolation. The steps used are:

    +
      +
    1. Calculation of the nearest integer table index.
    2. +
    3. Compute the fractional portion (fract) of the input.
    4. +
    5. Fetch the value corresponding to index from sine table to y0 and also value from index+1 to y1.
    6. +
    7. Sine value is computed as *psinVal = y0 + (fract * (y1 - y0)).
    8. +
    9. Fetch the value corresponding to index from cosine table to y0 and also value from index+1 to y1.
    10. +
    11. Cosine value is computed as *pcosVal = y0 + (fract * (y1 - y0)).
    12. +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_sin_cos_f32 (float32_t theta,
    float32_tpSinVal,
    float32_tpCosVal 
    )
    +
    +
    Parameters
    + + + + +
    [in]thetainput value in degrees
    [out]*pSinValpoints to the processed sine output.
    [out]*pCosValpoints to the processed cos output.
    +
    +
    +
    Returns
    none.
    + +

    References FAST_MATH_TABLE_SIZE, and sinTable_f32.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_sin_cos_q31 (q31_t theta,
    q31_tpSinVal,
    q31_tpCosVal 
    )
    +
    +
    Parameters
    + + + + +
    [in]thetascaled input value in degrees
    [out]*pSinValpoints to the processed sine output.
    [out]*pCosValpoints to the processed cosine output.
    +
    +
    +
    Returns
    none.
    +

    The Q31 input value is in the range [-1 0.999999] and is mapped to a degree value in the range [-180 179].

    + +

    References clip_q63_to_q31(), CONTROLLER_Q31_SHIFT, and sinTable_q31.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___sin_cos.js b/CMSIS/Documentation/DSP/html/group___sin_cos.js new file mode 100644 index 0000000..c2af45c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___sin_cos.js @@ -0,0 +1,5 @@ +var group___sin_cos = +[ + [ "arm_sin_cos_f32", "group___sin_cos.html#ga4420d45c37d58c310ef9ae1b5fe58020", null ], + [ "arm_sin_cos_q31", "group___sin_cos.html#gae9e4ddebff9d4eb5d0a093e28e0bc504", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group___sin_cos_example.html b/CMSIS/Documentation/DSP/html/group___sin_cos_example.html new file mode 100644 index 0000000..2bc6c53 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___sin_cos_example.html @@ -0,0 +1,152 @@ + + + + + +SineCosine Example +CMSIS-DSP: SineCosine Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    SineCosine Example
    +
    +
    +
    Description:
    +
    Demonstrates the Pythagorean trignometric identity with the use of Cosine, Sine, Vector Multiplication, and Vector Addition functions.
    +
    Algorithm:
    +
    Mathematically, the Pythagorean trignometric identity is defined by the following equation:
    sin(x) * sin(x) + cos(x) * cos(x) = 1
    where x is the angle in radians.
    +
    Block Diagram:
    +
    +sinCos.gif +
    +
    +
    Variables Description:
    +
      +
    • testInput_f32 array of input angle in radians
    • +
    • testOutput stores sum of the squares of sine and cosine values of input angle
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_sin_cos_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group___variance_example.html b/CMSIS/Documentation/DSP/html/group___variance_example.html new file mode 100644 index 0000000..f10bf98 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group___variance_example.html @@ -0,0 +1,157 @@ + + + + + +Variance Example +CMSIS-DSP: Variance Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Variance Example
    +
    +
    +
    Description:
    +
    Demonstrates the use of Basic Math and Support Functions to calculate the variance of an input sequence with N samples. Uniformly distributed white noise is taken as input.
    +
    Algorithm:
    +
    The variance of a sequence is the mean of the squared deviation of the sequence from its mean.
    +
    This is denoted by the following equation:
     variance = ((x[0] - x') * (x[0] - x') + (x[1] - x') * (x[1] - x') + ... + * (x[n-1] - x') * (x[n-1] - x')) / (N-1)
    where, x[n] is the input sequence, N is the number of input samples, and x' is the mean value of the input sequence, x[n].
    +
    The mean value x' is defined as:
     x' = (x[0] + x[1] + ... + x[n-1]) / N
    +
    Block Diagram:
    +
    +Variance.gif +
    +
    +
    Variables Description:
    +
      +
    • testInput_f32 points to the input data
    • +
    • wire1, wir2, wire3 temporary buffers
    • +
    • blockSize number of samples processed at a time
    • +
    • refVarianceOut reference variance value
    • +
    +
    +
    CMSIS DSP Software Library Functions Used:
    +
    +
    +

    Refer arm_variance_example_f32.c

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__clarke.html b/CMSIS/Documentation/DSP/html/group__clarke.html new file mode 100644 index 0000000..da411f2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__clarke.html @@ -0,0 +1,266 @@ + + + + + +Vector Clarke Transform +CMSIS-DSP: Vector Clarke Transform + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Clarke Transform
    +
    +
    + + + + + + + + +

    +Functions

    static __INLINE void arm_clarke_f32 (float32_t Ia, float32_t Ib, float32_t *pIalpha, float32_t *pIbeta)
     Floating-point Clarke transform.
     
    static __INLINE void arm_clarke_q31 (q31_t Ia, q31_t Ib, q31_t *pIalpha, q31_t *pIbeta)
     Clarke transform for Q31 version.
     
    +

    Description

    +

    Forward Clarke transform converts the instantaneous stator phases into a two-coordinate time invariant vector. Generally the Clarke transform uses three-phase currents Ia, Ib and Ic to calculate currents in the two-phase orthogonal stator axis Ialpha and Ibeta. When Ialpha is superposed with Ia as shown in the figure below

    +
    +clarke.gif +
    +Stator current space vector and its components in (a,b).
    +

    and Ia + Ib + Ic = 0, in this condition Ialpha and Ibeta can be calculated using only Ia and Ib.

    +

    The function operates on a single sample of data and each call to the function returns the processed output. The library provides separate functions for Q31 and floating-point data types.

    +
    Algorithm
    +clarkeFormula.gif +
    + where Ia and Ib are the instantaneous stator phases and pIalpha and pIbeta are the two coordinates of time invariant vector.
    +
    Fixed-Point Behavior
    Care must be taken when using the Q31 version of the Clarke transform. In particular, the overflow and saturation behavior of the accumulator used must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_clarke_f32 (float32_t Ia,
    float32_t Ib,
    float32_tpIalpha,
    float32_tpIbeta 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + +
    [in]Iainput three-phase coordinate a
    [in]Ibinput three-phase coordinate b
    [out]pIalphapoints to output two-phase orthogonal vector axis alpha
    [out]pIbetapoints to output two-phase orthogonal vector axis beta
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_clarke_q31 (q31_t Ia,
    q31_t Ib,
    q31_tpIalpha,
    q31_tpIbeta 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + +
    [in]Iainput three-phase coordinate a
    [in]Ibinput three-phase coordinate b
    [out]pIalphapoints to output two-phase orthogonal vector axis alpha
    [out]pIbetapoints to output two-phase orthogonal vector axis beta
    +
    +
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 32-bit accumulator. The accumulator maintains 1.31 format by truncating lower 31 bits of the intermediate multiplication in 2.62 format. There is saturation on the addition, hence there is no risk of overflow.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__clarke.js b/CMSIS/Documentation/DSP/html/group__clarke.js new file mode 100644 index 0000000..3650a13 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__clarke.js @@ -0,0 +1,5 @@ +var group__clarke = +[ + [ "arm_clarke_f32", "group__clarke.html#ga2b4ebec76215e1277c970c269ffdbd76", null ], + [ "arm_clarke_q31", "group__clarke.html#ga7fd106ca8d346a2a472842e0656014c1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__conj.html b/CMSIS/Documentation/DSP/html/group__cmplx__conj.html new file mode 100644 index 0000000..2e0fa43 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__conj.html @@ -0,0 +1,282 @@ + + + + + +Complex Conjugate +CMSIS-DSP: Complex Conjugate + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex Conjugate
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_cmplx_conj_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex conjugate.
     
    void arm_cmplx_conj_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex conjugate.
     
    void arm_cmplx_conj_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex conjugate.
     
    +

    Description

    +

    Conjugates the elements of a complex data vector.

    +

    The pSrc points to the source data and pDst points to the where the result should be written. numSamples specifies the number of complex samples and the data in each array is stored in an interleaved fashion (real, imag, real, imag, ...). Each array has a total of 2*numSamples values. The underlying algorithm is used:

    +
            
    +for(n=0; n<numSamples; n++) {        
    +    pDst[(2*n)+0)] = pSrc[(2*n)+0];     // real part        
    +    pDst[(2*n)+1)] = -pSrc[(2*n)+1];    // imag part        
    +}        
    +

    There are separate functions for floating-point, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_conj_f32 (float32_tpSrc,
    float32_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    *pSrcpoints to the input vector
    *pDstpoints to the output vector
    numSamplesnumber of complex samples in each vector
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_conj_q15 (q15_tpSrc,
    q15_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    *pSrcpoints to the input vector
    *pDstpoints to the output vector
    numSamplesnumber of complex samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q15 value -1 (0x8000) will be saturated to the maximum allowable positive value 0x7FFF.
    + +

    References __SIMD32.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_conj_q31 (q31_tpSrc,
    q31_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    *pSrcpoints to the input vector
    *pDstpoints to the output vector
    numSamplesnumber of complex samples in each vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q31 value -1 (0x80000000) will be saturated to the maximum allowable positive value 0x7FFFFFFF.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__conj.js b/CMSIS/Documentation/DSP/html/group__cmplx__conj.js new file mode 100644 index 0000000..589b391 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__conj.js @@ -0,0 +1,6 @@ +var group__cmplx__conj = +[ + [ "arm_cmplx_conj_f32", "group__cmplx__conj.html#ga3a102aead6460ad9fcb0626f6b226ffb", null ], + [ "arm_cmplx_conj_q15", "group__cmplx__conj.html#gaf47689ae07962acaecb8ddde556df4a4", null ], + [ "arm_cmplx_conj_q31", "group__cmplx__conj.html#gafecc94879a383c5208ec3ef99485e4b5", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.html b/CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.html new file mode 100644 index 0000000..ad70f91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.html @@ -0,0 +1,325 @@ + + + + + +Complex Dot Product +CMSIS-DSP: Complex Dot Product + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex Dot Product
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_cmplx_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult)
     Floating-point complex dot product.
     
    void arm_cmplx_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult)
     Q15 complex dot product.
     
    void arm_cmplx_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult)
     Q31 complex dot product.
     
    +

    Description

    +

    Computes the dot product of two complex vectors. The vectors are multiplied element-by-element and then summed.

    +

    The pSrcA points to the first complex input vector and pSrcB points to the second complex input vector. numSamples specifies the number of complex samples and the data in each array is stored in an interleaved fashion (real, imag, real, imag, ...). Each array has a total of 2*numSamples values.

    +

    The underlying algorithm is used:

    +
        
    +realResult=0;    
    +imagResult=0;    
    +for(n=0; n<numSamples; n++) {    
    +    realResult += pSrcA[(2*n)+0]*pSrcB[(2*n)+0] - pSrcA[(2*n)+1]*pSrcB[(2*n)+1];    
    +    imagResult += pSrcA[(2*n)+0]*pSrcB[(2*n)+1] + pSrcA[(2*n)+1]*pSrcB[(2*n)+0];    
    +}    
    +

    There are separate functions for floating-point, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_dot_prod_f32 (float32_tpSrcA,
    float32_tpSrcB,
    uint32_t numSamples,
    float32_trealResult,
    float32_timagResult 
    )
    +
    +
    Parameters
    + + + + + + +
    *pSrcApoints to the first input vector
    *pSrcBpoints to the second input vector
    numSamplesnumber of complex samples in each vector
    *realResultreal part of the result returned here
    *imagResultimaginary part of the result returned here
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_dot_prod_q15 (q15_tpSrcA,
    q15_tpSrcB,
    uint32_t numSamples,
    q31_trealResult,
    q31_timagResult 
    )
    +
    +
    Parameters
    + + + + + + +
    *pSrcApoints to the first input vector
    *pSrcBpoints to the second input vector
    numSamplesnumber of complex samples in each vector
    *realResultreal part of the result returned here
    *imagResultimaginary part of the result returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The intermediate 1.15 by 1.15 multiplications are performed with full precision and yield a 2.30 result. These are accumulated in a 64-bit accumulator with 34.30 precision. As a final step, the accumulators are converted to 8.24 format. The return results realResult and imagResult are in 8.24 format.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_dot_prod_q31 (q31_tpSrcA,
    q31_tpSrcB,
    uint32_t numSamples,
    q63_trealResult,
    q63_timagResult 
    )
    +
    +
    Parameters
    + + + + + + +
    *pSrcApoints to the first input vector
    *pSrcBpoints to the second input vector
    numSamplesnumber of complex samples in each vector
    *realResultreal part of the result returned here
    *imagResultimaginary part of the result returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The intermediate 1.31 by 1.31 multiplications are performed with 64-bit precision and then shifted to 16.48 format. The internal real and imaginary accumulators are in 16.48 format and provide 15 guard bits. Additions are nonsaturating and no overflow will occur as long as numSamples is less than 32768. The return results realResult and imagResult are in 16.48 format. Input down scaling is not required.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.js b/CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.js new file mode 100644 index 0000000..b85b1a8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__dot__prod.js @@ -0,0 +1,6 @@ +var group__cmplx__dot__prod = +[ + [ "arm_cmplx_dot_prod_f32", "group__cmplx__dot__prod.html#gadcfaf567a25eb641da4043eafb9bb076", null ], + [ "arm_cmplx_dot_prod_q15", "group__cmplx__dot__prod.html#ga2b08b5e8001d2c15204639d00893fc70", null ], + [ "arm_cmplx_dot_prod_q31", "group__cmplx__dot__prod.html#ga5b731a59db062a9ad84562ef68a6c8af", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__mag.html b/CMSIS/Documentation/DSP/html/group__cmplx__mag.html new file mode 100644 index 0000000..7d91cb1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__mag.html @@ -0,0 +1,288 @@ + + + + + +Complex Magnitude +CMSIS-DSP: Complex Magnitude + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex Magnitude
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_cmplx_mag_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex magnitude.
     
    void arm_cmplx_mag_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex magnitude.
     
    void arm_cmplx_mag_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex magnitude.
     
    +

    Description

    +

    Computes the magnitude of the elements of a complex data vector.

    +

    The pSrc points to the source data and pDst points to the where the result should be written. numSamples specifies the number of complex samples in the input array and the data is stored in an interleaved fashion (real, imag, real, imag, ...). The input array has a total of 2*numSamples values; the output array has a total of numSamples values. The underlying algorithm is used:

    +
        
    +for(n=0; n<numSamples; n++) {    
    +    pDst[n] = sqrt(pSrc[(2*n)+0]^2 + pSrc[(2*n)+1]^2);    
    +}    
    +

    There are separate functions for floating-point, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mag_f32 (float32_tpSrc,
    float32_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to complex input buffer
    [out]*pDstpoints to real output buffer
    [in]numSamplesnumber of complex samples in the input vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_fft_bin_example_f32.c.
    +
    +

    References arm_sqrt_f32().

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mag_q15 (q15_tpSrc,
    q15_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    *pSrcpoints to the complex input vector
    *pDstpoints to the real output vector
    numSamplesnumber of complex samples in the input vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function implements 1.15 by 1.15 multiplications and finally output is converted into 2.14 format.
    + +

    References __SIMD32, and arm_sqrt_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mag_q31 (q31_tpSrc,
    q31_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    *pSrcpoints to the complex input vector
    *pDstpoints to the real output vector
    numSamplesnumber of complex samples in the input vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function implements 1.31 by 1.31 multiplications and finally output is converted into 2.30 format. Input down scaling is not required.
    + +

    References arm_sqrt_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__mag.js b/CMSIS/Documentation/DSP/html/group__cmplx__mag.js new file mode 100644 index 0000000..fb76dde --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__mag.js @@ -0,0 +1,6 @@ +var group__cmplx__mag = +[ + [ "arm_cmplx_mag_f32", "group__cmplx__mag.html#gae45024c497392cde2ae358a76d435213", null ], + [ "arm_cmplx_mag_q15", "group__cmplx__mag.html#ga0a4a8f77a6a51d9b3f3b9d729f85b7a4", null ], + [ "arm_cmplx_mag_q31", "group__cmplx__mag.html#ga14f82f9230e9d96d5b9774e2fefcb7be", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.html b/CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.html new file mode 100644 index 0000000..466b69a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.html @@ -0,0 +1,282 @@ + + + + + +Complex Magnitude Squared +CMSIS-DSP: Complex Magnitude Squared + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex Magnitude Squared
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_cmplx_mag_squared_f32 (float32_t *pSrc, float32_t *pDst, uint32_t numSamples)
     Floating-point complex magnitude squared.
     
    void arm_cmplx_mag_squared_q15 (q15_t *pSrc, q15_t *pDst, uint32_t numSamples)
     Q15 complex magnitude squared.
     
    void arm_cmplx_mag_squared_q31 (q31_t *pSrc, q31_t *pDst, uint32_t numSamples)
     Q31 complex magnitude squared.
     
    +

    Description

    +

    Computes the magnitude squared of the elements of a complex data vector.

    +

    The pSrc points to the source data and pDst points to the where the result should be written. numSamples specifies the number of complex samples in the input array and the data is stored in an interleaved fashion (real, imag, real, imag, ...). The input array has a total of 2*numSamples values; the output array has a total of numSamples values.

    +

    The underlying algorithm is used:

    +
            
    +for(n=0; n<numSamples; n++) {        
    +    pDst[n] = pSrc[(2*n)+0]^2 + pSrc[(2*n)+1]^2;        
    +}        
    +

    There are separate functions for floating-point, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mag_squared_f32 (float32_tpSrc,
    float32_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the complex input vector
    [out]*pDstpoints to the real output vector
    [in]numSamplesnumber of complex samples in the input vector
    +
    +
    +
    Returns
    none.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mag_squared_q15 (q15_tpSrc,
    q15_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    *pSrcpoints to the complex input vector
    *pDstpoints to the real output vector
    numSamplesnumber of complex samples in the input vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function implements 1.15 by 1.15 multiplications and finally output is converted into 3.13 format.
    + +

    References __SIMD32.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_cmplx_mag_squared_q31 (q31_tpSrc,
    q31_tpDst,
    uint32_t numSamples 
    )
    +
    +
    Parameters
    + + + + +
    *pSrcpoints to the complex input vector
    *pDstpoints to the real output vector
    numSamplesnumber of complex samples in the input vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function implements 1.31 by 1.31 multiplications and finally output is converted into 3.29 format. Input down scaling is not required.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.js b/CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.js new file mode 100644 index 0000000..cd69d41 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cmplx__mag__squared.js @@ -0,0 +1,6 @@ +var group__cmplx__mag__squared = +[ + [ "arm_cmplx_mag_squared_f32", "group__cmplx__mag__squared.html#gaa7faccc0d96b061d8b7d0d7d82045074", null ], + [ "arm_cmplx_mag_squared_q15", "group__cmplx__mag__squared.html#ga45537f576102d960d467eb722b8431f2", null ], + [ "arm_cmplx_mag_squared_q31", "group__cmplx__mag__squared.html#ga384b0538101e8c03fa4fa14271e63b04", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__copy.html b/CMSIS/Documentation/DSP/html/group__copy.html new file mode 100644 index 0000000..1f5eaab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__copy.html @@ -0,0 +1,329 @@ + + + + + +Vector Copy +CMSIS-DSP: Vector Copy + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Copy
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_copy_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Copies the elements of a floating-point vector.
     
    void arm_copy_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Copies the elements of a Q15 vector.
     
    void arm_copy_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Copies the elements of a Q31 vector.
     
    void arm_copy_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Copies the elements of a Q7 vector.
     
    +

    Description

    +

    Copies sample by sample from source vector to destination vector.

    +
        
    +        pDst[n] = pSrc[n];   0 <= n < blockSize.    
    +

    There are separate functions for floating point, Q31, Q15, and Q7 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_copy_f32 (float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to input vector
    [out]*pDstpoints to output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_convolution_example_f32.c, arm_signal_converge_example_f32.c, and arm_variance_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_copy_q15 (q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to input vector
    [out]*pDstpoints to output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, and blockSize.

    + +

    Referenced by arm_conv_fast_opt_q15(), arm_conv_opt_q15(), arm_conv_partial_fast_opt_q15(), arm_conv_partial_opt_q15(), arm_correlate_fast_opt_q15(), and arm_correlate_opt_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_copy_q31 (q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to input vector
    [out]*pDstpoints to output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_copy_q7 (q7_tpSrc,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to input vector
    [out]*pDstpoints to output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__copy.js b/CMSIS/Documentation/DSP/html/group__copy.js new file mode 100644 index 0000000..a0c09b0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__copy.js @@ -0,0 +1,7 @@ +var group__copy = +[ + [ "arm_copy_f32", "group__copy.html#gadd1f737e677e0e6ca31767c7001417b3", null ], + [ "arm_copy_q15", "group__copy.html#ga872ca4cfc18c680b8991ccd569a5fda0", null ], + [ "arm_copy_q31", "group__copy.html#gaddf70be7e3f87e535c324862b501f3f9", null ], + [ "arm_copy_q7", "group__copy.html#ga467579beda492aa92797529d794c88fb", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__cos.html b/CMSIS/Documentation/DSP/html/group__cos.html new file mode 100644 index 0000000..3a14513 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cos.html @@ -0,0 +1,236 @@ + + + + + +Cosine +CMSIS-DSP: Cosine + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + +

    +Functions

    float32_t arm_cos_f32 (float32_t x)
     Fast approximation to the trigonometric cosine function for floating-point data.
     
    q15_t arm_cos_q15 (q15_t x)
     Fast approximation to the trigonometric cosine function for Q15 data.
     
    q31_t arm_cos_q31 (q31_t x)
     Fast approximation to the trigonometric cosine function for Q31 data.
     
    +

    Description

    +

    Computes the trigonometric cosine function using a combination of table lookup and linear interpolation. There are separate functions for Q15, Q31, and floating-point data types. The input to the floating-point version is in radians while the fixed-point Q15 and Q31 have a scaled input with the range [0 +0.9999] mapping to [0 2*pi). The fixed-point range is chosen so that a value of 2*pi wraps around to 0.

    +

    The implementation is based on table lookup using 256 values together with linear interpolation. The steps used are:

    +
      +
    1. Calculation of the nearest integer table index
    2. +
    3. Compute the fractional portion (fract) of the table index.
    4. +
    5. The final result equals (1.0f-fract)*a + fract*b;
    6. +
    +

    where

    +
    +   b=Table[index+0];
    +   c=Table[index+1];
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    float32_t arm_cos_f32 (float32_t x)
    +
    +
    Parameters
    + + +
    [in]xinput value in radians.
    +
    +
    +
    Returns
    cos(x).
    +
    Examples:
    arm_sin_cos_example_f32.c.
    +
    +

    References FAST_MATH_TABLE_SIZE, and sinTable_f32.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + +
    q15_t arm_cos_q15 (q15_t x)
    +
    +
    Parameters
    + + +
    [in]xScaled input value in radians.
    +
    +
    +
    Returns
    cos(x).
    +

    The Q15 input value is in the range [0 +0.9999] and is mapped to a radian value in the range [0 2*pi).

    + +

    References FAST_MATH_Q15_SHIFT, and sinTable_q15.

    + +
    +
    + +
    +
    + + + + + + + + +
    q31_t arm_cos_q31 (q31_t x)
    +
    +
    Parameters
    + + +
    [in]xScaled input value in radians.
    +
    +
    +
    Returns
    cos(x).
    +

    The Q31 input value is in the range [0 +0.9999] and is mapped to a radian value in the range [0 2*pi).

    + +

    References FAST_MATH_Q31_SHIFT, and sinTable_q31.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__cos.js b/CMSIS/Documentation/DSP/html/group__cos.js new file mode 100644 index 0000000..6e72aa5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__cos.js @@ -0,0 +1,6 @@ +var group__cos = +[ + [ "arm_cos_f32", "group__cos.html#gace15287f9c64b9b4084d1c797d4c49d8", null ], + [ "arm_cos_q15", "group__cos.html#gadfd60c24def501638c0d5db20f4c869b", null ], + [ "arm_cos_q31", "group__cos.html#gad80f121949ef885a77d83ab36e002567", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__dot__prod.html b/CMSIS/Documentation/DSP/html/group__dot__prod.html new file mode 100644 index 0000000..a017d67 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__dot__prod.html @@ -0,0 +1,361 @@ + + + + + +Vector Dot Product +CMSIS-DSP: Vector Dot Product + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Dot Product
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_dot_prod_f32 (float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result)
     Dot product of floating-point vectors.
     
    void arm_dot_prod_q15 (q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result)
     Dot product of Q15 vectors.
     
    void arm_dot_prod_q31 (q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result)
     Dot product of Q31 vectors.
     
    void arm_dot_prod_q7 (q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result)
     Dot product of Q7 vectors.
     
    +

    Description

    +

    Computes the dot product of two vectors. The vectors are multiplied element-by-element and then summed.

    +
    +    sum = pSrcA[0]*pSrcB[0] + pSrcA[1]*pSrcB[1] + ... + pSrcA[blockSize-1]*pSrcB[blockSize-1]
    +

    There are separate functions for floating-point, Q7, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_dot_prod_f32 (float32_tpSrcA,
    float32_tpSrcB,
    uint32_t blockSize,
    float32_tresult 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [in]blockSizenumber of samples in each vector
    [out]*resultoutput result returned here
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_variance_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_dot_prod_q15 (q15_tpSrcA,
    q15_tpSrcB,
    uint32_t blockSize,
    q63_tresult 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [in]blockSizenumber of samples in each vector
    [out]*resultoutput result returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The intermediate multiplications are in 1.15 x 1.15 = 2.30 format and these results are added to a 64-bit accumulator in 34.30 format. Nonsaturating additions are used and given that there are 33 guard bits in the accumulator there is no risk of overflow. The return result is in 34.30 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_dot_prod_q31 (q31_tpSrcA,
    q31_tpSrcB,
    uint32_t blockSize,
    q63_tresult 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [in]blockSizenumber of samples in each vector
    [out]*resultoutput result returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The intermediate multiplications are in 1.31 x 1.31 = 2.62 format and these are truncated to 2.48 format by discarding the lower 14 bits. The 2.48 result is then added without saturation to a 64-bit accumulator in 16.48 format. There are 15 guard bits in the accumulator and there is no risk of overflow as long as the length of the vectors is less than 2^16 elements. The return result is in 16.48 format.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_dot_prod_q7 (q7_tpSrcA,
    q7_tpSrcB,
    uint32_t blockSize,
    q31_tresult 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcApoints to the first input vector
    [in]*pSrcBpoints to the second input vector
    [in]blockSizenumber of samples in each vector
    [out]*resultoutput result returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The intermediate multiplications are in 1.7 x 1.7 = 2.14 format and these results are added to an accumulator in 18.14 format. Nonsaturating additions are used and there is no danger of wrap around as long as the vectors are less than 2^18 elements long. The return result is in 18.14 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__dot__prod.js b/CMSIS/Documentation/DSP/html/group__dot__prod.js new file mode 100644 index 0000000..beb0e56 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__dot__prod.js @@ -0,0 +1,7 @@ +var group__dot__prod = +[ + [ "arm_dot_prod_f32", "group__dot__prod.html#ga55418d4362f6ba84c327f9b4f089a8c3", null ], + [ "arm_dot_prod_q15", "group__dot__prod.html#ga436d5bed28a4b73b24acbde436a3044b", null ], + [ "arm_dot_prod_q31", "group__dot__prod.html#gab15d8fa060fc85b4d948d091b7deaa11", null ], + [ "arm_dot_prod_q7", "group__dot__prod.html#ga9c3293a50ac7ec8ba928bf8e3aaea6c1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__float__to__x.html b/CMSIS/Documentation/DSP/html/group__float__to__x.html new file mode 100644 index 0000000..3fe0347 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__float__to__x.html @@ -0,0 +1,298 @@ + + + + + +Convert 32-bit floating point value +CMSIS-DSP: Convert 32-bit floating point value + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Convert 32-bit floating point value
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_float_to_q15 (float32_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q15 vector.
     
    void arm_float_to_q31 (float32_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q31 vector.
     
    void arm_float_to_q7 (float32_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the floating-point vector to Q7 vector.
     
    +

    Description

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q15 (float32_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the floating-point input vector
    [out]*pDstpoints to the Q15 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +
    The equation used for the conversion process is:
        
    +        pDst[n] = (q15_t)(pSrc[n] * 32768);   0 <= n < blockSize.    
    +
    +
    Scaling and Overflow Behavior:
    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    +
    Note
    In order to apply rounding, the library should be rebuilt with the ROUNDING macro defined in the preprocessor section of project options.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q31 (float32_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the floating-point input vector
    [out]*pDstpoints to the Q31 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +
    The equation used for the conversion process is:
    +
        
    +        pDst[n] = (q31_t)(pSrc[n] * 2147483648);   0 <= n < blockSize.    
    + 

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range[0x80000000 0x7FFFFFFF] will be saturated.
    +
    Note
    In order to apply rounding, the library should be rebuilt with the ROUNDING macro defined in the preprocessor section of project options.
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    References blockSize, and clip_q63_to_q31().

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_float_to_q7 (float32_tpSrc,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the floating-point input vector
    [out]*pDstpoints to the Q7 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +
    The equation used for the conversion process is:
        
    +        pDst[n] = (q7_t)(pSrc[n] * 128);   0 <= n < blockSize.    
    + 
    +
    Scaling and Overflow Behavior:
    +
    The function uses saturating arithmetic. Results outside of the allowable Q7 range [0x80 0x7F] will be saturated.
    +
    Note
    In order to apply rounding, the library should be rebuilt with the ROUNDING macro defined in the preprocessor section of project options.
    + +

    References blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__float__to__x.js b/CMSIS/Documentation/DSP/html/group__float__to__x.js new file mode 100644 index 0000000..c312cd1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__float__to__x.js @@ -0,0 +1,6 @@ +var group__float__to__x = +[ + [ "arm_float_to_q15", "group__float__to__x.html#ga215456e35a18db86882e1d3f0d24e1f2", null ], + [ "arm_float_to_q31", "group__float__to__x.html#ga177704107f94564e9abe4daaa36f4554", null ], + [ "arm_float_to_q7", "group__float__to__x.html#ga44a393818cdee8dce80f2d66add25411", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_cmplx_math.html b/CMSIS/Documentation/DSP/html/group__group_cmplx_math.html new file mode 100644 index 0000000..fe212b9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_cmplx_math.html @@ -0,0 +1,148 @@ + + + + + +Complex Math Functions +CMSIS-DSP: Complex Math Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Complex Math Functions
    +
    +
    + + + + + + + + + + + + + + +

    +Content

     Complex Conjugate
     
     Complex Dot Product
     
     Complex Magnitude
     
     Complex Magnitude Squared
     
     Complex-by-Complex Multiplication
     
     Complex-by-Real Multiplication
     
    +

    Description

    +

    This set of functions operates on complex data vectors. The data in the complex arrays is stored in an interleaved fashion (real, imag, real, imag, ...). In the API functions, the number of samples in a complex array refers to the number of complex values; the array contains twice this number of real values.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_cmplx_math.js b/CMSIS/Documentation/DSP/html/group__group_cmplx_math.js new file mode 100644 index 0000000..88c2704 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_cmplx_math.js @@ -0,0 +1,9 @@ +var group__group_cmplx_math = +[ + [ "Complex Conjugate", "group__cmplx__conj.html", "group__cmplx__conj" ], + [ "Complex Dot Product", "group__cmplx__dot__prod.html", "group__cmplx__dot__prod" ], + [ "Complex Magnitude", "group__cmplx__mag.html", "group__cmplx__mag" ], + [ "Complex Magnitude Squared", "group__cmplx__mag__squared.html", "group__cmplx__mag__squared" ], + [ "Complex-by-Complex Multiplication", "group___cmplx_by_cmplx_mult.html", "group___cmplx_by_cmplx_mult" ], + [ "Complex-by-Real Multiplication", "group___cmplx_by_real_mult.html", "group___cmplx_by_real_mult" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_controller.html b/CMSIS/Documentation/DSP/html/group__group_controller.html new file mode 100644 index 0000000..b935efd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_controller.html @@ -0,0 +1,147 @@ + + + + + +Controller Functions +CMSIS-DSP: Controller Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_controller.js b/CMSIS/Documentation/DSP/html/group__group_controller.js new file mode 100644 index 0000000..59a1a0f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_controller.js @@ -0,0 +1,9 @@ +var group__group_controller = +[ + [ "Sine Cosine", "group___sin_cos.html", "group___sin_cos" ], + [ "PID Motor Control", "group___p_i_d.html", "group___p_i_d" ], + [ "Vector Clarke Transform", "group__clarke.html", "group__clarke" ], + [ "Vector Inverse Clarke Transform", "group__inv__clarke.html", "group__inv__clarke" ], + [ "Vector Park Transform", "group__park.html", "group__park" ], + [ "Vector Inverse Park transform", "group__inv__park.html", "group__inv__park" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_examples.html b/CMSIS/Documentation/DSP/html/group__group_examples.html new file mode 100644 index 0000000..f7275b5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_examples.html @@ -0,0 +1,157 @@ + + + + + +Examples +CMSIS-DSP: Examples + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_examples.js b/CMSIS/Documentation/DSP/html/group__group_examples.js new file mode 100644 index 0000000..08848f0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_examples.js @@ -0,0 +1,14 @@ +var group__group_examples = +[ + [ "Class Marks Example", "group___class_marks.html", null ], + [ "Convolution Example", "group___convolution_example.html", null ], + [ "Dot Product Example", "group___dotproduct_example.html", null ], + [ "Frequency Bin Example", "group___frequency_bin.html", null ], + [ "FIR Lowpass Filter Example", "group___f_i_r_l_p_f.html", null ], + [ "Graphic Audio Equalizer Example", "group___g_e_q5_band.html", null ], + [ "Linear Interpolate Example", "group___linear_interp_example.html", null ], + [ "Matrix Example", "group___matrix_example.html", null ], + [ "Signal Convergence Example", "group___signal_convergence.html", null ], + [ "SineCosine Example", "group___sin_cos_example.html", null ], + [ "Variance Example", "group___variance_example.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_fast_math.html b/CMSIS/Documentation/DSP/html/group__group_fast_math.html new file mode 100644 index 0000000..702d4b5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_fast_math.html @@ -0,0 +1,142 @@ + + + + + +Fast Math Functions +CMSIS-DSP: Fast Math Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Fast Math Functions
    +
    +
    + + + + + + + + +

    +Content

     Cosine
     
     Sine
     
     Square Root
     
    +

    Description

    +

    This set of functions provides a fast approximation to sine, cosine, and square root. As compared to most of the other functions in the CMSIS math library, the fast math functions operate on individual values and not arrays. There are separate functions for Q15, Q31, and floating-point data.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_fast_math.js b/CMSIS/Documentation/DSP/html/group__group_fast_math.js new file mode 100644 index 0000000..1250529 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_fast_math.js @@ -0,0 +1,6 @@ +var group__group_fast_math = +[ + [ "Cosine", "group__cos.html", "group__cos" ], + [ "Sine", "group__sin.html", "group__sin" ], + [ "Square Root", "group___s_q_r_t.html", "group___s_q_r_t" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_filters.html b/CMSIS/Documentation/DSP/html/group__group_filters.html new file mode 100644 index 0000000..e2c56da --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_filters.html @@ -0,0 +1,163 @@ + + + + + +Filtering Functions +CMSIS-DSP: Filtering Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_filters.js b/CMSIS/Documentation/DSP/html/group__group_filters.js new file mode 100644 index 0000000..f854e02 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_filters.js @@ -0,0 +1,17 @@ +var group__group_filters = +[ + [ "High Precision Q31 Biquad Cascade Filter", "group___biquad_cascade_d_f1__32x64.html", "group___biquad_cascade_d_f1__32x64" ], + [ "Biquad Cascade IIR Filters Using Direct Form I Structure", "group___biquad_cascade_d_f1.html", "group___biquad_cascade_d_f1" ], + [ "Biquad Cascade IIR Filters Using a Direct Form II Transposed Structure", "group___biquad_cascade_d_f2_t.html", "group___biquad_cascade_d_f2_t" ], + [ "Convolution", "group___conv.html", "group___conv" ], + [ "Partial Convolution", "group___partial_conv.html", "group___partial_conv" ], + [ "Correlation", "group___corr.html", "group___corr" ], + [ "Finite Impulse Response (FIR) Decimator", "group___f_i_r__decimate.html", "group___f_i_r__decimate" ], + [ "Finite Impulse Response (FIR) Filters", "group___f_i_r.html", "group___f_i_r" ], + [ "Finite Impulse Response (FIR) Lattice Filters", "group___f_i_r___lattice.html", "group___f_i_r___lattice" ], + [ "Finite Impulse Response (FIR) Sparse Filters", "group___f_i_r___sparse.html", "group___f_i_r___sparse" ], + [ "Infinite Impulse Response (IIR) Lattice Filters", "group___i_i_r___lattice.html", "group___i_i_r___lattice" ], + [ "Least Mean Square (LMS) Filters", "group___l_m_s.html", "group___l_m_s" ], + [ "Normalized LMS Filters", "group___l_m_s___n_o_r_m.html", "group___l_m_s___n_o_r_m" ], + [ "Finite Impulse Response (FIR) Interpolator", "group___f_i_r___interpolate.html", "group___f_i_r___interpolate" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_interpolation.html b/CMSIS/Documentation/DSP/html/group__group_interpolation.html new file mode 100644 index 0000000..3f966cd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_interpolation.html @@ -0,0 +1,140 @@ + + + + + +Interpolation Functions +CMSIS-DSP: Interpolation Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Interpolation Functions
    +
    +
    + + + + + + +

    +Content

     Linear Interpolation
     
     Bilinear Interpolation
     
    +

    Description

    +

    These functions perform 1- and 2-dimensional interpolation of data. Linear interpolation is used for 1-dimensional data and bilinear interpolation is used for 2-dimensional data.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_interpolation.js b/CMSIS/Documentation/DSP/html/group__group_interpolation.js new file mode 100644 index 0000000..b564602 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_interpolation.js @@ -0,0 +1,5 @@ +var group__group_interpolation = +[ + [ "Linear Interpolation", "group___linear_interpolate.html", "group___linear_interpolate" ], + [ "Bilinear Interpolation", "group___bilinear_interpolate.html", "group___bilinear_interpolate" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_math.html b/CMSIS/Documentation/DSP/html/group__group_math.html new file mode 100644 index 0000000..9760f27 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_math.html @@ -0,0 +1,153 @@ + + + + + +Basic Math Functions +CMSIS-DSP: Basic Math Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_math.js b/CMSIS/Documentation/DSP/html/group__group_math.js new file mode 100644 index 0000000..c0e2da2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_math.js @@ -0,0 +1,12 @@ +var group__group_math = +[ + [ "Vector Absolute Value", "group___basic_abs.html", "group___basic_abs" ], + [ "Vector Addition", "group___basic_add.html", "group___basic_add" ], + [ "Vector Dot Product", "group__dot__prod.html", "group__dot__prod" ], + [ "Vector Multiplication", "group___basic_mult.html", "group___basic_mult" ], + [ "Vector Negate", "group__negate.html", "group__negate" ], + [ "Vector Offset", "group__offset.html", "group__offset" ], + [ "Vector Scale", "group__scale.html", "group__scale" ], + [ "Vector Shift", "group__shift.html", "group__shift" ], + [ "Vector Subtraction", "group___basic_sub.html", "group___basic_sub" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_matrix.html b/CMSIS/Documentation/DSP/html/group__group_matrix.html new file mode 100644 index 0000000..935d3b2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_matrix.html @@ -0,0 +1,176 @@ + + + + + +Matrix Functions +CMSIS-DSP: Matrix Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Matrix Functions
    +
    +
    + + + + + + + + + + + + + + + + + + +

    +Content

     Matrix Addition
     
     Complex Matrix Multiplication
     
     Matrix Initialization
     
     Matrix Inverse
     
     Matrix Multiplication
     
     Matrix Scale
     
     Matrix Subtraction
     
     Matrix Transpose
     
    +

    Description

    +

    This set of functions provides basic matrix math operations. The functions operate on matrix data structures. For example, the type definition for the floating-point matrix structure is shown below:

    +
    +    typedef struct
    +    {
    +      uint16_t numRows;     // number of rows of the matrix.
    +      uint16_t numCols;     // number of columns of the matrix.
    +      float32_t *pData;     // points to the data of the matrix.
    +    } arm_matrix_instance_f32;
    +

    There are similar definitions for Q15 and Q31 data types.

    +

    The structure specifies the size of the matrix and then points to an array of data. The array is of size numRows X numCols and the values are arranged in row order. That is, the matrix element (i, j) is stored at:

    +
    +    pData[i*numCols + j]
    +
    Init Functions
    There is an associated initialization function for each type of matrix data structure. The initialization function sets the values of the internal structure fields. Refer to the function arm_mat_init_f32(), arm_mat_init_q31() and arm_mat_init_q15() for floating-point, Q31 and Q15 types, respectively.
    +
    Use of the initialization function is optional. However, if initialization function is used then the instance structure cannot be placed into a const data section. To place the instance structure in a const data section, manually initialize the data structure. For example:
    +arm_matrix_instance_f32 S = {nRows, nColumns, pData};
    +arm_matrix_instance_q31 S = {nRows, nColumns, pData};
    +arm_matrix_instance_q15 S = {nRows, nColumns, pData};
    +
    where nRows specifies the number of rows, nColumns specifies the number of columns, and pData points to the data array.
    +
    Size Checking
    By default all of the matrix functions perform size checking on the input and output matrices. For example, the matrix addition function verifies that the two input matrices and the output matrix all have the same number of rows and columns. If the size check fails the functions return:
    +    ARM_MATH_SIZE_MISMATCH
    +
    Otherwise the functions return
    +    ARM_MATH_SUCCESS
    +
    There is some overhead associated with this matrix size checking. The matrix size checking is enabled via the #define
    +    ARM_MATH_MATRIX_CHECK
    +
    within the library project settings. By default this macro is defined and size checking is enabled. By changing the project settings and undefining this macro size checking is eliminated and the functions run a bit faster. With size checking disabled the functions always return ARM_MATH_SUCCESS.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_matrix.js b/CMSIS/Documentation/DSP/html/group__group_matrix.js new file mode 100644 index 0000000..20a2cca --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_matrix.js @@ -0,0 +1,11 @@ +var group__group_matrix = +[ + [ "Matrix Addition", "group___matrix_add.html", "group___matrix_add" ], + [ "Complex Matrix Multiplication", "group___cmplx_matrix_mult.html", "group___cmplx_matrix_mult" ], + [ "Matrix Initialization", "group___matrix_init.html", "group___matrix_init" ], + [ "Matrix Inverse", "group___matrix_inv.html", "group___matrix_inv" ], + [ "Matrix Multiplication", "group___matrix_mult.html", "group___matrix_mult" ], + [ "Matrix Scale", "group___matrix_scale.html", "group___matrix_scale" ], + [ "Matrix Subtraction", "group___matrix_sub.html", "group___matrix_sub" ], + [ "Matrix Transpose", "group___matrix_trans.html", "group___matrix_trans" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_stats.html b/CMSIS/Documentation/DSP/html/group__group_stats.html new file mode 100644 index 0000000..4364840 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_stats.html @@ -0,0 +1,149 @@ + + + + + +Statistics Functions +CMSIS-DSP: Statistics Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Statistics Functions
    +
    +
    + + + + + + + + + + + + + + + + +

    +Content

     Maximum
     
     Mean
     
     Minimum
     
     Power
     
     Root mean square (RMS)
     
     Standard deviation
     
     Variance
     
    +

    Description

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_stats.js b/CMSIS/Documentation/DSP/html/group__group_stats.js new file mode 100644 index 0000000..7aafce9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_stats.js @@ -0,0 +1,10 @@ +var group__group_stats = +[ + [ "Maximum", "group___max.html", "group___max" ], + [ "Mean", "group__mean.html", "group__mean" ], + [ "Minimum", "group___min.html", "group___min" ], + [ "Power", "group__power.html", "group__power" ], + [ "Root mean square (RMS)", "group___r_m_s.html", "group___r_m_s" ], + [ "Standard deviation", "group___s_t_d.html", "group___s_t_d" ], + [ "Variance", "group__variance.html", "group__variance" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_support.html b/CMSIS/Documentation/DSP/html/group__group_support.html new file mode 100644 index 0000000..c09249b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_support.html @@ -0,0 +1,147 @@ + + + + + +Support Functions +CMSIS-DSP: Support Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_support.js b/CMSIS/Documentation/DSP/html/group__group_support.js new file mode 100644 index 0000000..a13c551 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_support.js @@ -0,0 +1,9 @@ +var group__group_support = +[ + [ "Vector Copy", "group__copy.html", "group__copy" ], + [ "Vector Fill", "group___fill.html", "group___fill" ], + [ "Convert 32-bit floating point value", "group__float__to__x.html", "group__float__to__x" ], + [ "Convert 16-bit Integer value", "group__q15__to__x.html", "group__q15__to__x" ], + [ "Convert 32-bit Integer value", "group__q31__to__x.html", "group__q31__to__x" ], + [ "Convert 8-bit Integer value", "group__q7__to__x.html", "group__q7__to__x" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__group_transforms.html b/CMSIS/Documentation/DSP/html/group__group_transforms.html new file mode 100644 index 0000000..b61a936 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_transforms.html @@ -0,0 +1,262 @@ + + + + + +Transform Functions +CMSIS-DSP: Transform Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Transform Functions
    +
    +
    + + + + + + + + + + + + + + +

    +Content

     Complex FFT Functions
     
     Radix-8 Complex FFT Functions
     
     DCT Type IV Functions
     
     Real FFT Functions
     
     Complex FFT Tables
     
     RealFFT
     
    + + + + + + +

    +Functions

    void arm_radix4_butterfly_f32 (float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier)
     
    void arm_split_rfft_f32 (float32_t *pSrc, uint32_t fftLen, float32_t *pATable, float32_t *pBTable, float32_t *pDst, uint32_t modifier)
     Core Real FFT process.
     
    +

    Description

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_radix4_butterfly_f32 (float32_tpSrc,
    uint16_t fftLen,
    float32_tpCoef,
    uint16_t twidCoefModifier 
    )
    +
    + +

    Referenced by arm_cfft_radix4_f32(), and arm_rfft_f32().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_split_rfft_f32 (float32_tpSrc,
    uint32_t fftLen,
    float32_tpATable,
    float32_tpBTable,
    float32_tpDst,
    uint32_t modifier 
    )
    +
    +

    end of RealFFT group

    +
    Parameters
    + + + + + + + +
    [in]*pSrcpoints to the input buffer.
    [in]fftLenlength of FFT.
    [in]*pATablepoints to the twiddle Coef A buffer.
    [in]*pBTablepoints to the twiddle Coef B buffer.
    [out]*pDstpoints to the output buffer.
    [in]modifiertwiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.
    +
    +
    +
    Returns
    none.
    + +

    Referenced by arm_rfft_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__group_transforms.js b/CMSIS/Documentation/DSP/html/group__group_transforms.js new file mode 100644 index 0000000..20efb6a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__group_transforms.js @@ -0,0 +1,11 @@ +var group__group_transforms = +[ + [ "Complex FFT Functions", "group___complex_f_f_t.html", "group___complex_f_f_t" ], + [ "Radix-8 Complex FFT Functions", "group___radix8___c_f_f_t___c_i_f_f_t.html", null ], + [ "DCT Type IV Functions", "group___d_c_t4___i_d_c_t4.html", "group___d_c_t4___i_d_c_t4" ], + [ "Real FFT Functions", "group___fast.html", null ], + [ "Complex FFT Tables", "group___c_f_f_t___c_i_f_f_t.html", "group___c_f_f_t___c_i_f_f_t" ], + [ "RealFFT", "group___real_f_f_t.html", "group___real_f_f_t" ], + [ "arm_radix4_butterfly_f32", "group__group_transforms.html#gae239ddf995d1607115f9e84d5c069b9c", null ], + [ "arm_split_rfft_f32", "group__group_transforms.html#ga6cfdb6bdc66b13732ef2351caf98fdbb", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__inv__clarke.html b/CMSIS/Documentation/DSP/html/group__inv__clarke.html new file mode 100644 index 0000000..76ad1e3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__inv__clarke.html @@ -0,0 +1,261 @@ + + + + + +Vector Inverse Clarke Transform +CMSIS-DSP: Vector Inverse Clarke Transform + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Inverse Clarke Transform
    +
    +
    + + + + + + + + +

    +Functions

    static __INLINE void arm_inv_clarke_f32 (float32_t Ialpha, float32_t Ibeta, float32_t *pIa, float32_t *pIb)
     Floating-point Inverse Clarke transform.
     
    static __INLINE void arm_inv_clarke_q31 (q31_t Ialpha, q31_t Ibeta, q31_t *pIa, q31_t *pIb)
     Inverse Clarke transform for Q31 version.
     
    +

    Description

    +

    Inverse Clarke transform converts the two-coordinate time invariant vector into instantaneous stator phases.

    +

    The function operates on a single sample of data and each call to the function returns the processed output. The library provides separate functions for Q31 and floating-point data types.

    +
    Algorithm
    +clarkeInvFormula.gif +
    + where pIa and pIb are the instantaneous stator phases and Ialpha and Ibeta are the two coordinates of time invariant vector.
    +
    Fixed-Point Behavior
    Care must be taken when using the Q31 version of the Clarke transform. In particular, the overflow and saturation behavior of the accumulator used must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_inv_clarke_f32 (float32_t Ialpha,
    float32_t Ibeta,
    float32_tpIa,
    float32_tpIb 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + +
    [in]Ialphainput two-phase orthogonal vector axis alpha
    [in]Ibetainput two-phase orthogonal vector axis beta
    [out]pIapoints to output three-phase coordinate a
    [out]pIbpoints to output three-phase coordinate b
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_inv_clarke_q31 (q31_t Ialpha,
    q31_t Ibeta,
    q31_tpIa,
    q31_tpIb 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + +
    [in]Ialphainput two-phase orthogonal vector axis alpha
    [in]Ibetainput two-phase orthogonal vector axis beta
    [out]pIapoints to output three-phase coordinate a
    [out]pIbpoints to output three-phase coordinate b
    +
    +
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 32-bit accumulator. The accumulator maintains 1.31 format by truncating lower 31 bits of the intermediate multiplication in 2.62 format. There is saturation on the subtraction, hence there is no risk of overflow.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__inv__clarke.js b/CMSIS/Documentation/DSP/html/group__inv__clarke.js new file mode 100644 index 0000000..bc13304 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__inv__clarke.js @@ -0,0 +1,5 @@ +var group__inv__clarke = +[ + [ "arm_inv_clarke_f32", "group__inv__clarke.html#ga137f0396d837477b899ecae89f075a50", null ], + [ "arm_inv_clarke_q31", "group__inv__clarke.html#ga2d0c60f114f095a2f27442d98781ba02", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__inv__park.html b/CMSIS/Documentation/DSP/html/group__inv__park.html new file mode 100644 index 0000000..5a1e8fe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__inv__park.html @@ -0,0 +1,289 @@ + + + + + +Vector Inverse Park transform +CMSIS-DSP: Vector Inverse Park transform + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Inverse Park transform
    +
    +
    + + + + + + + + +

    +Functions

    static __INLINE void arm_inv_park_f32 (float32_t Id, float32_t Iq, float32_t *pIalpha, float32_t *pIbeta, float32_t sinVal, float32_t cosVal)
     Floating-point Inverse Park transform.
     
    static __INLINE void arm_inv_park_q31 (q31_t Id, q31_t Iq, q31_t *pIalpha, q31_t *pIbeta, q31_t sinVal, q31_t cosVal)
     Inverse Park transform for Q31 version.
     
    +

    Description

    +

    Inverse Park transform converts the input flux and torque components to two-coordinate vector.

    +

    The function operates on a single sample of data and each call to the function returns the processed output. The library provides separate functions for Q31 and floating-point data types.

    +
    Algorithm
    +parkInvFormula.gif +
    + where pIalpha and pIbeta are the stator vector components, Id and Iq are rotor vector components and cosVal and sinVal are the cosine and sine values of theta (rotor flux position).
    +
    Fixed-Point Behavior
    Care must be taken when using the Q31 version of the Park transform. In particular, the overflow and saturation behavior of the accumulator used must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_inv_park_f32 (float32_t Id,
    float32_t Iq,
    float32_tpIalpha,
    float32_tpIbeta,
    float32_t sinVal,
    float32_t cosVal 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + + + +
    [in]Idinput coordinate of rotor reference frame d
    [in]Iqinput coordinate of rotor reference frame q
    [out]pIalphapoints to output two-phase orthogonal vector axis alpha
    [out]pIbetapoints to output two-phase orthogonal vector axis beta
    [in]sinValsine value of rotation angle theta
    [in]cosValcosine value of rotation angle theta
    +
    +
    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_inv_park_q31 (q31_t Id,
    q31_t Iq,
    q31_tpIalpha,
    q31_tpIbeta,
    q31_t sinVal,
    q31_t cosVal 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + + + +
    [in]Idinput coordinate of rotor reference frame d
    [in]Iqinput coordinate of rotor reference frame q
    [out]pIalphapoints to output two-phase orthogonal vector axis alpha
    [out]pIbetapoints to output two-phase orthogonal vector axis beta
    [in]sinValsine value of rotation angle theta
    [in]cosValcosine value of rotation angle theta
    +
    +
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 32-bit accumulator. The accumulator maintains 1.31 format by truncating lower 31 bits of the intermediate multiplication in 2.62 format. There is saturation on the addition, hence there is no risk of overflow.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__inv__park.js b/CMSIS/Documentation/DSP/html/group__inv__park.js new file mode 100644 index 0000000..5995930 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__inv__park.js @@ -0,0 +1,5 @@ +var group__inv__park = +[ + [ "arm_inv_park_f32", "group__inv__park.html#gaaf6bef0de21946f774d49df050dd8b05", null ], + [ "arm_inv_park_q31", "group__inv__park.html#ga0b33822b988a15455773d28440c5579a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__mean.html b/CMSIS/Documentation/DSP/html/group__mean.html new file mode 100644 index 0000000..2b507f5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__mean.html @@ -0,0 +1,333 @@ + + + + + +Mean +CMSIS-DSP: Mean + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_mean_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Mean value of a floating-point vector.
     
    void arm_mean_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Mean value of a Q15 vector.
     
    void arm_mean_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Mean value of a Q31 vector.
     
    void arm_mean_q7 (q7_t *pSrc, uint32_t blockSize, q7_t *pResult)
     Mean value of a Q7 vector.
     
    +

    Description

    +

    Calculates the mean of the input vector. Mean is defined as the average of the elements in the vector. The underlying algorithm is used:

    +
        
    +        Result = (pSrc[0] + pSrc[1] + pSrc[2] + ... + pSrc[blockSize-1]) / blockSize;    
    +

    There are separate functions for floating-point, Q31, Q15, and Q7 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mean_f32 (float32_tpSrc,
    uint32_t blockSize,
    float32_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmean value returned here
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mean_q15 (q15_tpSrc,
    uint32_t blockSize,
    q15_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmean value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. The input is represented in 1.15 format and is accumulated in a 32-bit accumulator in 17.15 format. There is no risk of internal overflow with this approach, and the full precision of intermediate result is preserved. Finally, the accumulator is saturated and truncated to yield a result of 1.15 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mean_q31 (q31_tpSrc,
    uint32_t blockSize,
    q31_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmean value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The input is represented in 1.31 format and is accumulated in a 64-bit accumulator in 33.31 format. There is no risk of internal overflow with this approach, and the full precision of intermediate result is preserved. Finally, the accumulator is truncated to yield a result of 1.31 format.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_mean_q7 (q7_tpSrc,
    uint32_t blockSize,
    q7_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultmean value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. The input is represented in 1.7 format and is accumulated in a 32-bit accumulator in 25.7 format. There is no risk of internal overflow with this approach, and the full precision of intermediate result is preserved. Finally, the accumulator is truncated to yield a result of 1.7 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__mean.js b/CMSIS/Documentation/DSP/html/group__mean.js new file mode 100644 index 0000000..89c0ce0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__mean.js @@ -0,0 +1,7 @@ +var group__mean = +[ + [ "arm_mean_f32", "group__mean.html#ga74ce08c49ab61e57bd50c3a0ca1fdb2b", null ], + [ "arm_mean_q15", "group__mean.html#gac882495d5f098819fd3939c1ef7795b3", null ], + [ "arm_mean_q31", "group__mean.html#gacf2526d8c2d75e486e8f0b0e31877ad0", null ], + [ "arm_mean_q7", "group__mean.html#gaebc707ee539020357c25da4c75b52eb7", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__negate.html b/CMSIS/Documentation/DSP/html/group__negate.html new file mode 100644 index 0000000..dc65456 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__negate.html @@ -0,0 +1,331 @@ + + + + + +Vector Negate +CMSIS-DSP: Vector Negate + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Negate
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_negate_f32 (float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Negates the elements of a floating-point vector.
     
    void arm_negate_q15 (q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Negates the elements of a Q15 vector.
     
    void arm_negate_q31 (q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Negates the elements of a Q31 vector.
     
    void arm_negate_q7 (q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Negates the elements of a Q7 vector.
     
    +

    Description

    +

    Negates the elements of a vector.

    +
            
    +    pDst[n] = -pSrc[n],   0 <= n < blockSize.        
    +

    The functions support in-place computation allowing the source and destination pointers to reference the same memory buffer. There are separate functions for floating-point, Q7, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_negate_f32 (float32_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_negate_q15 (q15_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +
    Conditions for optimum performance
    Input and output buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q15 value -1 (0x8000) will be saturated to the maximum allowable positive value 0x7FFF.
    + +

    References _SIMD32_OFFSET, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_negate_q31 (q31_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q31 value -1 (0x80000000) will be saturated to the maximum allowable positive value 0x7FFFFFFF.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_negate_q7 (q7_tpSrc,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. The Q7 value -1 (0x80) will be saturated to the maximum allowable positive value 0x7F.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__negate.js b/CMSIS/Documentation/DSP/html/group__negate.js new file mode 100644 index 0000000..636b4ed --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__negate.js @@ -0,0 +1,7 @@ +var group__negate = +[ + [ "arm_negate_f32", "group__negate.html#ga2e169c4de6cc6e3ba4be9473531e6657", null ], + [ "arm_negate_q15", "group__negate.html#ga0239a833d72cf00290b9723c394e5042", null ], + [ "arm_negate_q31", "group__negate.html#ga2784c6887686a73dc7c364e2e41c776c", null ], + [ "arm_negate_q7", "group__negate.html#gaae78fc079a43bdaa3055f9b32e2a1f4c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__offset.html b/CMSIS/Documentation/DSP/html/group__offset.html new file mode 100644 index 0000000..c20dcea --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__offset.html @@ -0,0 +1,358 @@ + + + + + +Vector Offset +CMSIS-DSP: Vector Offset + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Offset
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_offset_f32 (float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize)
     Adds a constant offset to a floating-point vector.
     
    void arm_offset_q15 (q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q15 vector.
     
    void arm_offset_q31 (q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q31 vector.
     
    void arm_offset_q7 (q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize)
     Adds a constant offset to a Q7 vector.
     
    +

    Description

    +

    Adds a constant offset to each element of a vector.

    +
            
    +    pDst[n] = pSrc[n] + offset,   0 <= n < blockSize.        
    +

    The functions support in-place computation allowing the source and destination pointers to reference the same memory buffer. There are separate functions for floating-point, Q7, Q15, and Q31 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_offset_f32 (float32_tpSrc,
    float32_t offset,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]offsetis the offset to be added
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_offset_q15 (q15_tpSrc,
    q15_t offset,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]offsetis the offset to be added
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] are saturated.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_offset_q31 (q31_tpSrc,
    q31_t offset,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]offsetis the offset to be added
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range [0x80000000 0x7FFFFFFF] are saturated.
    + +

    References blockSize, and clip_q63_to_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_offset_q7 (q7_tpSrc,
    q7_t offset,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]offsetis the offset to be added
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q7 range [0x80 0x7F] are saturated.
    + +

    References __PACKq7, __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__offset.js b/CMSIS/Documentation/DSP/html/group__offset.js new file mode 100644 index 0000000..1c48653 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__offset.js @@ -0,0 +1,7 @@ +var group__offset = +[ + [ "arm_offset_f32", "group__offset.html#ga989dfae15235799d82f62ef9d356abb4", null ], + [ "arm_offset_q15", "group__offset.html#gab4c1d2391b599549e5a06fdfbc2747bf", null ], + [ "arm_offset_q31", "group__offset.html#gac84ec42cbbebc5c197a87d0221819acf", null ], + [ "arm_offset_q7", "group__offset.html#ga00bd9cc17c5bf905e76c91ad50886393", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__park.html b/CMSIS/Documentation/DSP/html/group__park.html new file mode 100644 index 0000000..c0d5a8c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__park.html @@ -0,0 +1,294 @@ + + + + + +Vector Park Transform +CMSIS-DSP: Vector Park Transform + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Park Transform
    +
    +
    + + + + + + + + +

    +Functions

    static __INLINE void arm_park_f32 (float32_t Ialpha, float32_t Ibeta, float32_t *pId, float32_t *pIq, float32_t sinVal, float32_t cosVal)
     Floating-point Park transform.
     
    static __INLINE void arm_park_q31 (q31_t Ialpha, q31_t Ibeta, q31_t *pId, q31_t *pIq, q31_t sinVal, q31_t cosVal)
     Park transform for Q31 version.
     
    +

    Description

    +

    Forward Park transform converts the input two-coordinate vector to flux and torque components. The Park transform can be used to realize the transformation of the Ialpha and the Ibeta currents from the stationary to the moving reference frame and control the spatial relationship between the stator vector current and rotor flux vector. If we consider the d axis aligned with the rotor flux, the diagram below shows the current vector and the relationship from the two reference frames:

    +
    +park.gif +
    +Stator current space vector and its component in (a,b) and in the d,q rotating reference frame
    +

    The function operates on a single sample of data and each call to the function returns the processed output. The library provides separate functions for Q31 and floating-point data types.

    +
    Algorithm
    +parkFormula.gif +
    + where Ialpha and Ibeta are the stator vector components, pId and pIq are rotor vector components and cosVal and sinVal are the cosine and sine values of theta (rotor flux position).
    +
    Fixed-Point Behavior
    Care must be taken when using the Q31 version of the Park transform. In particular, the overflow and saturation behavior of the accumulator used must be considered. Refer to the function specific documentation below for usage guidelines.
    +

    Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_park_f32 (float32_t Ialpha,
    float32_t Ibeta,
    float32_tpId,
    float32_tpIq,
    float32_t sinVal,
    float32_t cosVal 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + + + +
    [in]Ialphainput two-phase vector coordinate alpha
    [in]Ibetainput two-phase vector coordinate beta
    [out]pIdpoints to output rotor reference frame d
    [out]pIqpoints to output rotor reference frame q
    [in]sinValsine value of rotation angle theta
    [in]cosValcosine value of rotation angle theta
    +
    +
    +

    The function implements the forward Park transform.

    + +
    +
    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static __INLINE void arm_park_q31 (q31_t Ialpha,
    q31_t Ibeta,
    q31_tpId,
    q31_tpIq,
    q31_t sinVal,
    q31_t cosVal 
    )
    +
    +static
    +
    +
    Parameters
    + + + + + + + +
    [in]Ialphainput two-phase vector coordinate alpha
    [in]Ibetainput two-phase vector coordinate beta
    [out]pIdpoints to output rotor reference frame d
    [out]pIqpoints to output rotor reference frame q
    [in]sinValsine value of rotation angle theta
    [in]cosValcosine value of rotation angle theta
    +
    +
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 32-bit accumulator. The accumulator maintains 1.31 format by truncating lower 31 bits of the intermediate multiplication in 2.62 format. There is saturation on the addition and subtraction, hence there is no risk of overflow.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__park.js b/CMSIS/Documentation/DSP/html/group__park.js new file mode 100644 index 0000000..350b164 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__park.js @@ -0,0 +1,5 @@ +var group__park = +[ + [ "arm_park_f32", "group__park.html#ga08b3a683197de7e143fb00497787683c", null ], + [ "arm_park_q31", "group__park.html#gaf4cc6370c0cfc14ea66774ed3c5bb10f", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__power.html b/CMSIS/Documentation/DSP/html/group__power.html new file mode 100644 index 0000000..7c058d5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__power.html @@ -0,0 +1,330 @@ + + + + + +Power +CMSIS-DSP: Power + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_power_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Sum of the squares of the elements of a floating-point vector.
     
    void arm_power_q15 (q15_t *pSrc, uint32_t blockSize, q63_t *pResult)
     Sum of the squares of the elements of a Q15 vector.
     
    void arm_power_q31 (q31_t *pSrc, uint32_t blockSize, q63_t *pResult)
     Sum of the squares of the elements of a Q31 vector.
     
    void arm_power_q7 (q7_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Sum of the squares of the elements of a Q7 vector.
     
    +

    Description

    +

    Calculates the sum of the squares of the elements in the input vector. The underlying algorithm is used:

    +
        
    +        Result = pSrc[0] * pSrc[0] + pSrc[1] * pSrc[1] + pSrc[2] * pSrc[2] + ... + pSrc[blockSize-1] * pSrc[blockSize-1];    
    +

    There are separate functions for floating point, Q31, Q15, and Q7 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_power_f32 (float32_tpSrc,
    uint32_t blockSize,
    float32_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultsum of the squares value returned here
    +
    +
    +
    Returns
    none.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_power_q15 (q15_tpSrc,
    uint32_t blockSize,
    q63_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultsum of the squares value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The input is represented in 1.15 format. Intermediate multiplication yields a 2.30 format, and this result is added without saturation to a 64-bit accumulator in 34.30 format. With 33 guard bits in the accumulator, there is no risk of overflow, and the full precision of the intermediate multiplication is preserved. Finally, the return result is in 34.30 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_power_q31 (q31_tpSrc,
    uint32_t blockSize,
    q63_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultsum of the squares value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The input is represented in 1.31 format. Intermediate multiplication yields a 2.62 format, and this result is truncated to 2.48 format by discarding the lower 14 bits. The 2.48 result is then added without saturation to a 64-bit accumulator in 16.48 format. With 15 guard bits in the accumulator, there is no risk of overflow, and the full precision of the intermediate multiplication is preserved. Finally, the return result is in 16.48 format.
    + +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_power_q7 (q7_tpSrc,
    uint32_t blockSize,
    q31_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultsum of the squares value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 32-bit internal accumulator. The input is represented in 1.7 format. Intermediate multiplication yields a 2.14 format, and this result is added without saturation to an accumulator in 18.14 format. With 17 guard bits in the accumulator, there is no risk of overflow, and the full precision of the intermediate multiplication is preserved. Finally, the return result is in 18.14 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__power.js b/CMSIS/Documentation/DSP/html/group__power.js new file mode 100644 index 0000000..fd7010b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__power.js @@ -0,0 +1,7 @@ +var group__power = +[ + [ "arm_power_f32", "group__power.html#ga993c00dd7f661d66bdb6e58426e893aa", null ], + [ "arm_power_q15", "group__power.html#ga7050c04b7515e01a75c38f1abbaf71ba", null ], + [ "arm_power_q31", "group__power.html#ga0b93d31bb5b5ed214c2b94d8a7744cd2", null ], + [ "arm_power_q7", "group__power.html#gaf969c85c5655e3d72d7b99ff188f92c9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__q15__to__x.html b/CMSIS/Documentation/DSP/html/group__q15__to__x.html new file mode 100644 index 0000000..1fa9624 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__q15__to__x.html @@ -0,0 +1,286 @@ + + + + + +Convert 16-bit Integer value +CMSIS-DSP: Convert 16-bit Integer value + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Convert 16-bit Integer value
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_q15_to_float (q15_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to floating-point vector.
     
    void arm_q15_to_q31 (q15_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to Q31 vector.
     
    void arm_q15_to_q7 (q15_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the Q15 vector to Q7 vector.
     
    +

    Description

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q15_to_float (q15_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q15 input vector
    [out]*pDstpoints to the floating-point output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (float32_t) pSrc[n] / 32768;   0 <= n < blockSize.    
    +
    +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q15_to_q31 (q15_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q15 input vector
    [out]*pDstpoints to the Q31 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (q31_t) pSrc[n] << 16;   0 <= n < blockSize.    
    +
    +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q15_to_q7 (q15_tpSrc,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q15 input vector
    [out]*pDstpoints to the Q7 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (q7_t) pSrc[n] >> 8;   0 <= n < blockSize.    
    +
    +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__q15__to__x.js b/CMSIS/Documentation/DSP/html/group__q15__to__x.js new file mode 100644 index 0000000..776d6fc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__q15__to__x.js @@ -0,0 +1,6 @@ +var group__q15__to__x = +[ + [ "arm_q15_to_float", "group__q15__to__x.html#gaf8b0d2324de273fc430b0e61ad4e9eb2", null ], + [ "arm_q15_to_q31", "group__q15__to__x.html#ga7ba2d87366990ad5380439e2b4a4c0a5", null ], + [ "arm_q15_to_q7", "group__q15__to__x.html#ga8fb31855ff8cce09c2ec9308f48ded69", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__q31__to__x.html b/CMSIS/Documentation/DSP/html/group__q31__to__x.html new file mode 100644 index 0000000..e0b7a57 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__q31__to__x.html @@ -0,0 +1,289 @@ + + + + + +Convert 32-bit Integer value +CMSIS-DSP: Convert 32-bit Integer value + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Convert 32-bit Integer value
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_q31_to_float (q31_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to floating-point vector.
     
    void arm_q31_to_q15 (q31_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to Q15 vector.
     
    void arm_q31_to_q7 (q31_t *pSrc, q7_t *pDst, uint32_t blockSize)
     Converts the elements of the Q31 vector to Q7 vector.
     
    +

    Description

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q31_to_float (q31_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q31 input vector
    [out]*pDstpoints to the floating-point output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (float32_t) pSrc[n] / 2147483648;   0 <= n < blockSize.    
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q31_to_q15 (q31_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q31 input vector
    [out]*pDstpoints to the Q15 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (q15_t) pSrc[n] >> 16;   0 <= n < blockSize.    
    +
    +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q31_to_q7 (q31_tpSrc,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q31 input vector
    [out]*pDstpoints to the Q7 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (q7_t) pSrc[n] >> 24;   0 <= n < blockSize.     
    +
    +

    References __PACKq7, __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__q31__to__x.js b/CMSIS/Documentation/DSP/html/group__q31__to__x.js new file mode 100644 index 0000000..96ff84d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__q31__to__x.js @@ -0,0 +1,6 @@ +var group__q31__to__x = +[ + [ "arm_q31_to_float", "group__q31__to__x.html#gacf407b007a37da18e99dabd9023c56b4", null ], + [ "arm_q31_to_q15", "group__q31__to__x.html#ga901dede4661365c9e7c630d3eb31c32c", null ], + [ "arm_q31_to_q7", "group__q31__to__x.html#ga7f297d1a7d776805395095fdb24a8071", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__q7__to__x.html b/CMSIS/Documentation/DSP/html/group__q7__to__x.html new file mode 100644 index 0000000..0185838 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__q7__to__x.html @@ -0,0 +1,286 @@ + + + + + +Convert 8-bit Integer value +CMSIS-DSP: Convert 8-bit Integer value + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Convert 8-bit Integer value
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_q7_to_float (q7_t *pSrc, float32_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to floating-point vector.
     
    void arm_q7_to_q15 (q7_t *pSrc, q15_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to Q15 vector.
     
    void arm_q7_to_q31 (q7_t *pSrc, q31_t *pDst, uint32_t blockSize)
     Converts the elements of the Q7 vector to Q31 vector.
     
    +

    Description

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q7_to_float (q7_tpSrc,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q7 input vector
    [out]*pDstpoints to the floating-point output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (float32_t) pSrc[n] / 128;   0 <= n < blockSize.    
    +
    +

    References blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q7_to_q15 (q7_tpSrc,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q7 input vector
    [out]*pDstpoints to the Q15 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (q15_t) pSrc[n] << 8;   0 <= n < blockSize.    
    +
    +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_q7_to_q31 (q7_tpSrc,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the Q7 input vector
    [out]*pDstpoints to the Q31 output vector
    [in]blockSizelength of the input vector
    +
    +
    +
    Returns
    none.
    +
    Description:
    +

    The equation used for the conversion process is:

    +
        
    +        pDst[n] = (q31_t) pSrc[n] << 24;   0 <= n < blockSize.   
    +
    +

    References __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__q7__to__x.js b/CMSIS/Documentation/DSP/html/group__q7__to__x.js new file mode 100644 index 0000000..41345e1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__q7__to__x.js @@ -0,0 +1,6 @@ +var group__q7__to__x = +[ + [ "arm_q7_to_float", "group__q7__to__x.html#ga656620f957b65512ed83db03fd455ec5", null ], + [ "arm_q7_to_q15", "group__q7__to__x.html#gabc02597fc3f01033daf43ec0547a2f78", null ], + [ "arm_q7_to_q31", "group__q7__to__x.html#gad8958cd3cb7f521466168b46a25b7908", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__scale.html b/CMSIS/Documentation/DSP/html/group__scale.html new file mode 100644 index 0000000..ffb6abe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__scale.html @@ -0,0 +1,391 @@ + + + + + +Vector Scale +CMSIS-DSP: Vector Scale + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Scale
    +
    +
    + + + + + + + + + + + + + + +

    +Functions

    void arm_scale_f32 (float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize)
     Multiplies a floating-point vector by a scalar.
     
    void arm_scale_q15 (q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize)
     Multiplies a Q15 vector by a scalar.
     
    void arm_scale_q31 (q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize)
     Multiplies a Q31 vector by a scalar.
     
    void arm_scale_q7 (q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize)
     Multiplies a Q7 vector by a scalar.
     
    +

    Description

    +

    Multiply a vector by a scalar value. For floating-point data, the algorithm used is:

    +
            
    +    pDst[n] = pSrc[n] * scale,   0 <= n < blockSize.        
    +

    In the fixed-point Q7, Q15, and Q31 functions, scale is represented by a fractional multiplication scaleFract and an arithmetic shift shift. The shift allows the gain of the scaling operation to exceed 1.0. The algorithm used with fixed-point data is:

    +
            
    +    pDst[n] = (pSrc[n] * scaleFract) << shift,   0 <= n < blockSize.        
    +

    The overall scale factor applied to the fixed-point data is

    +
            
    +    scale = scaleFract * 2^shift.        
    +

    The functions support in-place computation allowing the source and destination pointers to reference the same memory buffer.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_scale_f32 (float32_tpSrc,
    float32_t scale,
    float32_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]scalescale factor to be applied
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_graphic_equalizer_example_q31.c, and arm_signal_converge_example_f32.c.
    +
    +

    References blockSize.

    + +

    Referenced by arm_dct4_f32(), and main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_scale_q15 (q15_tpSrc,
    q15_t scaleFract,
    int8_t shift,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcpoints to the input vector
    [in]scaleFractfractional portion of the scale value
    [in]shiftnumber of bits to shift the result by
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The input data *pSrc and scaleFract are in 1.15 format. These are multiplied to yield a 2.30 intermediate result and this is shifted with saturation to 1.15 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_scale_q31 (q31_tpSrc,
    q31_t scaleFract,
    int8_t shift,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcpoints to the input vector
    [in]scaleFractfractional portion of the scale value
    [in]shiftnumber of bits to shift the result by
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The input data *pSrc and scaleFract are in 1.31 format. These are multiplied to yield a 2.62 intermediate result and this is shifted with saturation to 1.31 format.
    +
    Examples:
    arm_graphic_equalizer_example_q31.c.
    +
    +

    References blockSize.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_scale_q7 (q7_tpSrc,
    q7_t scaleFract,
    int8_t shift,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + + +
    [in]*pSrcpoints to the input vector
    [in]scaleFractfractional portion of the scale value
    [in]shiftnumber of bits to shift the result by
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The input data *pSrc and scaleFract are in 1.7 format. These are multiplied to yield a 2.14 intermediate result and this is shifted with saturation to 1.7 format.
    + +

    References __PACKq7, __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__scale.js b/CMSIS/Documentation/DSP/html/group__scale.js new file mode 100644 index 0000000..c2c8733 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__scale.js @@ -0,0 +1,7 @@ +var group__scale = +[ + [ "arm_scale_f32", "group__scale.html#ga3487af88b112f682ee90589cd419e123", null ], + [ "arm_scale_q15", "group__scale.html#gafaac0e1927daffeb68a42719b53ea780", null ], + [ "arm_scale_q31", "group__scale.html#ga83e36cd82bf51ce35406a199e477d47c", null ], + [ "arm_scale_q7", "group__scale.html#gabc9fd3d37904c58df56492b351d21fb0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__shift.html b/CMSIS/Documentation/DSP/html/group__shift.html new file mode 100644 index 0000000..7f4f2ad --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__shift.html @@ -0,0 +1,311 @@ + + + + + +Vector Shift +CMSIS-DSP: Vector Shift + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Vector Shift
    +
    +
    + + + + + + + + + + + +

    +Functions

    void arm_shift_q15 (q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q15 vector a specified number of bits.
     
    void arm_shift_q31 (q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q31 vector a specified number of bits.
     
    void arm_shift_q7 (q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize)
     Shifts the elements of a Q7 vector a specified number of bits.
     
    +

    Description

    +

    Shifts the elements of a fixed-point vector by a specified number of bits. There are separate functions for Q7, Q15, and Q31 data types. The underlying algorithm used is:

    +
            
    +    pDst[n] = pSrc[n] << shift,   0 <= n < blockSize.        
    +

    If shift is positive then the elements of the vector are shifted to the left. If shift is negative then the elements of the vector are shifted to the right.

    +

    The functions support in-place computation allowing the source and destination pointers to reference the same memory buffer.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_shift_q15 (q15_tpSrc,
    int8_t shiftBits,
    q15_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]shiftBitsnumber of bits to shift. A positive value shifts left; a negative value shifts right.
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q15 range [0x8000 0x7FFF] will be saturated.
    + +

    References __SIMD32, and blockSize.

    + +

    Referenced by arm_dct4_q15().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_shift_q31 (q31_tpSrc,
    int8_t shiftBits,
    q31_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]shiftBitsnumber of bits to shift. A positive value shifts left; a negative value shifts right.
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q31 range [0x80000000 0x7FFFFFFF] will be saturated.
    + +

    References blockSize, and clip_q63_to_q31().

    + +

    Referenced by arm_dct4_q31().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_shift_q7 (q7_tpSrc,
    int8_t shiftBits,
    q7_tpDst,
    uint32_t blockSize 
    )
    +
    +
    Parameters
    + + + + + +
    [in]*pSrcpoints to the input vector
    [in]shiftBitsnumber of bits to shift. A positive value shifts left; a negative value shifts right.
    [out]*pDstpoints to the output vector
    [in]blockSizenumber of samples in the vector
    +
    +
    +
    Returns
    none.
    +
    Conditions for optimum performance
    Input and output buffers should be aligned by 32-bit
    +

    Scaling and Overflow Behavior:

    +
    The function uses saturating arithmetic. Results outside of the allowable Q7 range [0x8 0x7F] will be saturated.
    + +

    References __PACKq7, __SIMD32, and blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__shift.js b/CMSIS/Documentation/DSP/html/group__shift.js new file mode 100644 index 0000000..1b19868 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__shift.js @@ -0,0 +1,6 @@ +var group__shift = +[ + [ "arm_shift_q15", "group__shift.html#gaa1757e53279780107acc92cf100adb61", null ], + [ "arm_shift_q31", "group__shift.html#ga387dd8b7b87377378280978f16cdb13d", null ], + [ "arm_shift_q7", "group__shift.html#ga47295d08a685f7de700a48dafb4db6fb", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__sin.html b/CMSIS/Documentation/DSP/html/group__sin.html new file mode 100644 index 0000000..8916259 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__sin.html @@ -0,0 +1,236 @@ + + + + + +Sine +CMSIS-DSP: Sine + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + +

    +Functions

    float32_t arm_sin_f32 (float32_t x)
     Fast approximation to the trigonometric sine function for floating-point data.
     
    q15_t arm_sin_q15 (q15_t x)
     Fast approximation to the trigonometric sine function for Q15 data.
     
    q31_t arm_sin_q31 (q31_t x)
     Fast approximation to the trigonometric sine function for Q31 data.
     
    +

    Description

    +

    Computes the trigonometric sine function using a combination of table lookup and linear interpolation. There are separate functions for Q15, Q31, and floating-point data types. The input to the floating-point version is in radians while the fixed-point Q15 and Q31 have a scaled input with the range [0 +0.9999] mapping to [0 2*pi). The fixed-point range is chosen so that a value of 2*pi wraps around to 0.

    +

    The implementation is based on table lookup using 256 values together with linear interpolation. The steps used are:

    +
      +
    1. Calculation of the nearest integer table index
    2. +
    3. Compute the fractional portion (fract) of the table index.
    4. +
    5. The final result equals (1.0f-fract)*a + fract*b;
    6. +
    +

    where

    +
    +   b=Table[index+0];
    +   c=Table[index+1];
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    float32_t arm_sin_f32 (float32_t x)
    +
    +
    Parameters
    + + +
    [in]xinput value in radians.
    +
    +
    +
    Returns
    sin(x).
    +
    Examples:
    arm_linear_interp_example_f32.c, and arm_sin_cos_example_f32.c.
    +
    +

    References FAST_MATH_TABLE_SIZE, and sinTable_f32.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + +
    q15_t arm_sin_q15 (q15_t x)
    +
    +
    Parameters
    + + +
    [in]xScaled input value in radians.
    +
    +
    +
    Returns
    sin(x).
    +

    The Q15 input value is in the range [0 +0.9999] and is mapped to a radian value in the range [0 2*pi).

    + +

    References FAST_MATH_Q15_SHIFT, and sinTable_q15.

    + +
    +
    + +
    +
    + + + + + + + + +
    q31_t arm_sin_q31 (q31_t x)
    +
    +
    Parameters
    + + +
    [in]xScaled input value in radians.
    +
    +
    +
    Returns
    sin(x).
    +

    The Q31 input value is in the range [0 +0.9999] and is mapped to a radian value in the range [0 2*pi).

    + +

    References FAST_MATH_Q31_SHIFT, and sinTable_q31.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__sin.js b/CMSIS/Documentation/DSP/html/group__sin.js new file mode 100644 index 0000000..11e645e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__sin.js @@ -0,0 +1,6 @@ +var group__sin = +[ + [ "arm_sin_f32", "group__sin.html#gae164899c4a3fc0e946dc5d55555fe541", null ], + [ "arm_sin_q15", "group__sin.html#ga1fc6d6640be6cfa688a8bea0a48397ee", null ], + [ "arm_sin_q31", "group__sin.html#ga57aade7d8892585992cdc6375bd82f9c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/group__variance.html b/CMSIS/Documentation/DSP/html/group__variance.html new file mode 100644 index 0000000..8aa2768 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__variance.html @@ -0,0 +1,285 @@ + + + + + +Variance +CMSIS-DSP: Variance + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + + + + + + + + + + + +

    +Functions

    void arm_var_f32 (float32_t *pSrc, uint32_t blockSize, float32_t *pResult)
     Variance of the elements of a floating-point vector.
     
    void arm_var_q15 (q15_t *pSrc, uint32_t blockSize, q15_t *pResult)
     Variance of the elements of a Q15 vector.
     
    void arm_var_q31 (q31_t *pSrc, uint32_t blockSize, q31_t *pResult)
     Variance of the elements of a Q31 vector.
     
    +

    Description

    +

    Calculates the variance of the elements in the input vector. The underlying algorithm is used:

    +
        
    +        Result = (sumOfSquares - sum2 / blockSize) / (blockSize - 1)
            where, sumOfSquares = pSrc[0] * pSrc[0] + pSrc[1] * pSrc[1] + ... + pSrc[blockSize-1] * pSrc[blockSize-1]
                            sum = pSrc[0] + pSrc[1] + pSrc[2] + ... + pSrc[blockSize-1]   
    +

    There are separate functions for floating point, Q31, and Q15 data types.

    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_var_f32 (float32_tpSrc,
    uint32_t blockSize,
    float32_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultvariance value returned here
    +
    +
    +
    Returns
    none.
    +
    Examples:
    arm_class_marks_example_f32.c.
    +
    +

    References blockSize, and mean.

    + +

    Referenced by main().

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_var_q15 (q15_tpSrc,
    uint32_t blockSize,
    q15_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultvariance value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using a 64-bit internal accumulator. The input is represented in 1.15 format. Intermediate multiplication yields a 2.30 format, and this result is added without saturation to a 64-bit accumulator in 34.30 format. With 33 guard bits in the accumulator, there is no risk of overflow, and the full precision of the intermediate multiplication is preserved. Finally, the 34.30 result is truncated to 34.15 format by discarding the lower 15 bits, and then saturated to yield a result in 1.15 format.
    + +

    References __SIMD32, and blockSize.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void arm_var_q31 (q31_tpSrc,
    uint32_t blockSize,
    q31_tpResult 
    )
    +
    +
    Parameters
    + + + + +
    [in]*pSrcpoints to the input vector
    [in]blockSizelength of the input vector
    [out]*pResultvariance value returned here
    +
    +
    +
    Returns
    none.
    +

    Scaling and Overflow Behavior:

    +
    The function is implemented using an internal 64-bit accumulator. The input is represented in 1.31 format, which is then downshifted by 8 bits which yields 1.23, and intermediate multiplication yields a 2.46 format. The accumulator maintains full precision of the intermediate multiplication results, but provides only a 16 guard bits. There is no saturation on intermediate additions. If the accumulator overflows it wraps around and distorts the result. In order to avoid overflows completely the input signal must be scaled down by log2(blockSize)-8 bits, as a total of blockSize additions are performed internally. After division, internal variables should be Q18.46 Finally, the 18.46 accumulator is right shifted by 15 bits to yield a 1.31 format value.
    + +

    References blockSize.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/group__variance.js b/CMSIS/Documentation/DSP/html/group__variance.js new file mode 100644 index 0000000..8adebf2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/group__variance.js @@ -0,0 +1,6 @@ +var group__variance = +[ + [ "arm_var_f32", "group__variance.html#ga393f26c5a3bfa05624fb8d32232a6d96", null ], + [ "arm_var_q15", "group__variance.html#ga79dce009ed2de28a125aeb3f19631654", null ], + [ "arm_var_q31", "group__variance.html#gac02873f1c2cc80adfd799305f0e6465d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/index.html b/CMSIS/Documentation/DSP/html/index.html new file mode 100644 index 0000000..2c46801 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/index.html @@ -0,0 +1,219 @@ + + + + + +CMSIS DSP Software Library +CMSIS-DSP: CMSIS DSP Software Library + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    CMSIS DSP Software Library
    +
    +
    +

    Introduction

    +

    This user manual describes the CMSIS DSP software library, a suite of common signal processing functions for use on Cortex-M processor based devices.

    +

    The library is divided into a number of functions each covering a specific category:

    +
      +
    • Basic math functions
    • +
    • Fast math functions
    • +
    • Complex math functions
    • +
    • Filters
    • +
    • Matrix functions
    • +
    • Transforms
    • +
    • Motor control functions
    • +
    • Statistical functions
    • +
    • Support functions
    • +
    • Interpolation functions
    • +
    +

    The library has separate functions for operating on 8-bit integers, 16-bit integers, 32-bit integer and 32-bit floating-point values.

    +

    Using the Library

    +

    The library installer contains prebuilt versions of the libraries in the Lib folder.

    +
      +
    • arm_cortexM7lfdp_math.lib (Little endian and Double Precision Floating Point Unit on Cortex-M7)
    • +
    • arm_cortexM7bfdp_math.lib (Big endian and Double Precision Floating Point Unit on Cortex-M7)
    • +
    • arm_cortexM7lfsp_math.lib (Little endian and Single Precision Floating Point Unit on Cortex-M7)
    • +
    • arm_cortexM7bfsp_math.lib (Big endian and Single Precision Floating Point Unit on Cortex-M7)
    • +
    • arm_cortexM7l_math.lib (Little endian on Cortex-M7)
    • +
    • arm_cortexM7b_math.lib (Big endian on Cortex-M7)
    • +
    • arm_cortexM4lf_math.lib (Little endian and Floating Point Unit on Cortex-M4)
    • +
    • arm_cortexM4bf_math.lib (Big endian and Floating Point Unit on Cortex-M4)
    • +
    • arm_cortexM4l_math.lib (Little endian on Cortex-M4)
    • +
    • arm_cortexM4b_math.lib (Big endian on Cortex-M4)
    • +
    • arm_cortexM3l_math.lib (Little endian on Cortex-M3)
    • +
    • arm_cortexM3b_math.lib (Big endian on Cortex-M3)
    • +
    • arm_cortexM0l_math.lib (Little endian on Cortex-M0 / CortexM0+)
    • +
    • arm_cortexM0b_math.lib (Big endian on Cortex-M0 / CortexM0+)
    • +
    +

    The library functions are declared in the public file arm_math.h which is placed in the Include folder. Simply include this file and link the appropriate library in the application and begin calling the library functions. The Library supports single public header file arm_math.h for Cortex-M7/M4/M3/M0/M0+ with little endian and big endian. Same header file will be used for floating point unit(FPU) variants. Define the appropriate pre processor MACRO ARM_MATH_CM7 or ARM_MATH_CM4 or ARM_MATH_CM3 or ARM_MATH_CM0 or ARM_MATH_CM0PLUS depending on the target processor in the application.

    +

    Examples

    +

    The library ships with a number of examples which demonstrate how to use the library functions.

    +

    Toolchain Support

    +

    The library has been developed and tested with MDK-ARM version 5.14.0.0 The library is being tested in GCC and IAR toolchains and updates on this activity will be made available shortly.

    +

    Building the Library

    +

    The library installer contains a project file to re build libraries on MDK-ARM Tool chain in the CMSIS\DSP_Lib\Source\ARM folder.

    +
      +
    • arm_cortexM_math.uvprojx
    • +
    +

    The libraries can be built by opening the arm_cortexM_math.uvprojx project in MDK-ARM, selecting a specific target, and defining the optional pre processor MACROs detailed above.

    +

    Pre-processor Macros

    +

    Each library project have differant pre-processor macros.

    +
      +
    • UNALIGNED_SUPPORT_DISABLE:
    • +
    +

    Define macro UNALIGNED_SUPPORT_DISABLE, If the silicon does not support unaligned memory access

    +
      +
    • ARM_MATH_BIG_ENDIAN:
    • +
    +

    Define macro ARM_MATH_BIG_ENDIAN to build the library for big endian targets. By default library builds for little endian targets.

    +
      +
    • ARM_MATH_MATRIX_CHECK:
    • +
    +

    Define macro ARM_MATH_MATRIX_CHECK for checking on the input and output sizes of matrices

    +
      +
    • ARM_MATH_ROUNDING:
    • +
    +

    Define macro ARM_MATH_ROUNDING for rounding on support functions

    +
      +
    • ARM_MATH_CMx:
    • +
    +

    Define macro ARM_MATH_CM4 for building the library on Cortex-M4 target, ARM_MATH_CM3 for building library on Cortex-M3 target and ARM_MATH_CM0 for building library on Cortex-M0 target, ARM_MATH_CM0PLUS for building library on Cortex-M0+ target, and ARM_MATH_CM7 for building the library on cortex-M7.

    +
      +
    • __FPU_PRESENT:
    • +
    +

    Initialize macro __FPU_PRESENT = 1 when building on FPU supported Targets. Enable this macro for M4bf and M4lf libraries

    +
    +

    CMSIS-DSP in ARM::CMSIS Pack

    +

    The following files relevant to CMSIS-DSP are present in the ARM::CMSIS Pack directories:

    + + + + + + + + + + + +
    File/Folder Content
    CMSIS\Documentation\DSP This documentation
    CMSIS\DSP_Lib Software license agreement (license.txt)
    CMSIS\DSP_Lib\Examples Example projects demonstrating the usage of the library functions
    CMSIS\DSP_Lib\Source Source files for rebuilding the library
    +
    +

    Revision History of CMSIS-DSP

    +

    Please refer to Change Log.

    +

    Copyright Notice

    +

    Copyright (C) 2010-2015 ARM Limited. All rights reserved.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/jquery.js b/CMSIS/Documentation/DSP/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
    +
    +
    Reference
    +
    +
    +
    Here is a list of all modules:
    +
    [detail level 12]
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    oBasic Math Functions
    |oVector Absolute Value
    |oVector Addition
    |oVector Dot Product
    |oVector Multiplication
    |oVector Negate
    |oVector Offset
    |oVector Scale
    |oVector Shift
    |\Vector Subtraction
    oFast Math Functions
    |oCosine
    |oSine
    |\Square Root
    oComplex Math Functions
    |oComplex Conjugate
    |oComplex Dot Product
    |oComplex Magnitude
    |oComplex Magnitude Squared
    |oComplex-by-Complex Multiplication
    |\Complex-by-Real Multiplication
    oFiltering Functions
    |oHigh Precision Q31 Biquad Cascade Filter
    |oBiquad Cascade IIR Filters Using Direct Form I Structure
    |oBiquad Cascade IIR Filters Using a Direct Form II Transposed Structure
    |oConvolution
    |oPartial Convolution
    |oCorrelation
    |oFinite Impulse Response (FIR) Decimator
    |oFinite Impulse Response (FIR) Filters
    |oFinite Impulse Response (FIR) Lattice Filters
    |oFinite Impulse Response (FIR) Sparse Filters
    |oInfinite Impulse Response (IIR) Lattice Filters
    |oLeast Mean Square (LMS) Filters
    |oNormalized LMS Filters
    |\Finite Impulse Response (FIR) Interpolator
    oMatrix Functions
    |oMatrix Addition
    |oComplex Matrix Multiplication
    |oMatrix Initialization
    |oMatrix Inverse
    |oMatrix Multiplication
    |oMatrix Scale
    |oMatrix Subtraction
    |\Matrix Transpose
    oTransform Functions
    |oComplex FFT Functions
    |oRadix-8 Complex FFT Functions
    |oDCT Type IV Functions
    |oReal FFT Functions
    |oComplex FFT Tables
    |\RealFFT
    oController Functions
    |oSine Cosine
    |oPID Motor Control
    |oVector Clarke Transform
    |oVector Inverse Clarke Transform
    |oVector Park Transform
    |\Vector Inverse Park transform
    oStatistics Functions
    |oMaximum
    |oMean
    |oMinimum
    |oPower
    |oRoot mean square (RMS)
    |oStandard deviation
    |\Variance
    oSupport Functions
    |oVector Copy
    |oVector Fill
    |oConvert 32-bit floating point value
    |oConvert 16-bit Integer value
    |oConvert 32-bit Integer value
    |\Convert 8-bit Integer value
    oInterpolation Functions
    |oLinear Interpolation
    |\Bilinear Interpolation
    \Examples
     oClass Marks Example
     oConvolution Example
     oDot Product Example
     oFrequency Bin Example
     oFIR Lowpass Filter Example
     oGraphic Audio Equalizer Example
     oLinear Interpolate Example
     oMatrix Example
     oSignal Convergence Example
     oSineCosine Example
     \Variance Example
    + + + + + + + diff --git a/CMSIS/Documentation/DSP/html/modules.js b/CMSIS/Documentation/DSP/html/modules.js new file mode 100644 index 0000000..dce4f5e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/modules.js @@ -0,0 +1,14 @@ +var modules = +[ + [ "Basic Math Functions", "group__group_math.html", "group__group_math" ], + [ "Fast Math Functions", "group__group_fast_math.html", "group__group_fast_math" ], + [ "Complex Math Functions", "group__group_cmplx_math.html", "group__group_cmplx_math" ], + [ "Filtering Functions", "group__group_filters.html", "group__group_filters" ], + [ "Matrix Functions", "group__group_matrix.html", "group__group_matrix" ], + [ "Transform Functions", "group__group_transforms.html", "group__group_transforms" ], + [ "Controller Functions", "group__group_controller.html", "group__group_controller" ], + [ "Statistics Functions", "group__group_stats.html", "group__group_stats" ], + [ "Support Functions", "group__group_support.html", "group__group_support" ], + [ "Interpolation Functions", "group__group_interpolation.html", "group__group_interpolation" ], + [ "Examples", "group__group_examples.html", "group__group_examples" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/nav_f.png b/CMSIS/Documentation/DSP/html/nav_f.png new file mode 100644 index 0000000..72a58a5 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/nav_f.png differ diff --git a/CMSIS/Documentation/DSP/html/nav_g.png b/CMSIS/Documentation/DSP/html/nav_g.png new file mode 100644 index 0000000..2093a23 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/nav_g.png differ diff --git a/CMSIS/Documentation/DSP/html/nav_h.png b/CMSIS/Documentation/DSP/html/nav_h.png new file mode 100644 index 0000000..33389b1 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/nav_h.png differ diff --git a/CMSIS/Documentation/DSP/html/navtree.css b/CMSIS/Documentation/DSP/html/navtree.css new file mode 100644 index 0000000..8001f82 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 300px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/CMSIS/Documentation/DSP/html/navtree.js b/CMSIS/Documentation/DSP/html/navtree.js new file mode 100644 index 0000000..52f98f4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/navtree.js @@ -0,0 +1,521 @@ +var NAVTREE = +[ + [ "CMSIS-DSP", "index.html", [ + [ "CMSIS DSP Software Library", "index.html", null ], + [ "Change Log", "_change_log_pg.html", null ], + [ "Deprecated List", "deprecated.html", null ], + [ "Reference", "modules.html", "modules" ], + [ "Data Structures", "annotated.html", "annotated" ], + [ "Data Fields", "functions.html", [ + [ "All", "functions.html", "functions_dup" ], + [ "Variables", "functions_vars.html", "functions_vars" ] + ] ] + ] ] +]; + +var NAVTREEINDEX = +[ +"_change_log_pg.html", +"group___l_m_s.html#ga6a0abfe6041253a6f91c63b383a64257", +"structarm__biquad__cascade__df2_t__instance__f64.html", +"structarm__lms__norm__instance__q31.html" +]; + +var SYNCONMSG = 'click to disable panel synchronisation'; +var SYNCOFFMSG = 'click to enable panel synchronisation'; +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + if (node.parentNode && node.parentNode.parentNode) { + createIndent(o,domNode,node.parentNode,level+1); + } + var imgNode = document.createElement("img"); + imgNode.width = 16; + imgNode.height = 22; + if (level==0 && node.childrenData) { + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2plastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2pnode.png"; + } + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + domNode.appendChild(imgNode); + } + if (level==0) { + if (node.isLast) { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2plastnode.png"; + } else { + imgNode.src = node.relpath+"ftv2lastnode.png"; + domNode.appendChild(imgNode); + } + } else { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2pnode.png"; + } else { + imgNode.src = node.relpath+"ftv2node.png"; + domNode.appendChild(imgNode); + } + } + } else { + if (node.isLast) { + imgNode.src = node.relpath+"ftv2blank.png"; + } else { + imgNode.src = node.relpath+"ftv2vertline.png"; + } + } + imgNode.border = "0"; +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath($(location).attr('pathname')); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : '#'; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var pos, anchor = $(aname), docContent = $('#doc-content'); + if (anchor.parent().attr('class')=='memItemLeft') { + pos = anchor.parent().position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + window.location.replace(aname); + }); + } + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var anchor = $($(location).attr('hash')); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+ + window.location.hash.substring(1)+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parents().slice(2).prop('tagName')=='TR') { + glowEffect(anchor.parents('div.memitem'),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).show(); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1]; + else hash=''; + } + if (root==NAVTREE[0][1]) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + //root=root.replace(/_source\./,'.'); // source link to doc link + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash')); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + navTo(o,toroot,window.location.hash,relpath); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath($(location).attr('pathname'))+':'+ + $(location).attr('hash').substring(1); + a=$('.item a[class$="'+clslink+'"]'); + } + if (a==null || !$(a).parent().parent().hasClass('selected')){ + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + } + var link=stripPath2($(location).attr('pathname')); + navTo(o,link,$(location).attr('hash'),relpath); + } + }) + + $(window).load(showRoot); +} + diff --git a/CMSIS/Documentation/DSP/html/navtreeindex0.js b/CMSIS/Documentation/DSP/html/navtreeindex0.js new file mode 100644 index 0000000..5be02ba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/navtreeindex0.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX0 = +{ +"_change_log_pg.html":[1], +"annotated.html":[4], +"deprecated.html":[2], +"functions.html":[5,0], +"functions.html":[5,0,0], +"functions_0x62.html":[5,0,1], +"functions_0x65.html":[5,0,2], +"functions_0x66.html":[5,0,3], +"functions_0x69.html":[5,0,4], +"functions_0x6b.html":[5,0,5], +"functions_0x6c.html":[5,0,6], +"functions_0x6d.html":[5,0,7], +"functions_0x6e.html":[5,0,8], +"functions_0x6f.html":[5,0,9], +"functions_0x70.html":[5,0,10], +"functions_0x72.html":[5,0,11], +"functions_0x73.html":[5,0,12], +"functions_0x74.html":[5,0,13], +"functions_0x78.html":[5,0,14], +"functions_vars.html":[5,1], +"functions_vars.html":[5,1,0], +"functions_vars_0x62.html":[5,1,1], +"functions_vars_0x65.html":[5,1,2], +"functions_vars_0x66.html":[5,1,3], +"functions_vars_0x69.html":[5,1,4], +"functions_vars_0x6b.html":[5,1,5], +"functions_vars_0x6c.html":[5,1,6], +"functions_vars_0x6d.html":[5,1,7], +"functions_vars_0x6e.html":[5,1,8], +"functions_vars_0x6f.html":[5,1,9], +"functions_vars_0x70.html":[5,1,10], +"functions_vars_0x72.html":[5,1,11], +"functions_vars_0x73.html":[5,1,12], +"functions_vars_0x74.html":[5,1,13], +"functions_vars_0x78.html":[5,1,14], +"group___basic_abs.html":[3,0,0], +"group___basic_abs.html#ga39f92964c9b649ba252e26ebe7b95594":[3,0,0,1], +"group___basic_abs.html#ga421b6275f9d35f50286c0ff3beceff02":[3,0,0,0], +"group___basic_abs.html#ga59eafcdcdb52da60d37f20aec6ff4577":[3,0,0,2], +"group___basic_abs.html#gadc30985e33fbf96802a5a7954dece3b1":[3,0,0,3], +"group___basic_add.html":[3,0,1], +"group___basic_add.html#ga24d6c3f7f8b9fae4847c0c3f26a39a3b":[3,0,1,2], +"group___basic_add.html#ga6a904a547413b10565dd1d251c6bafbd":[3,0,1,0], +"group___basic_add.html#gabb51285a41f511670bbff62fc0e1bf62":[3,0,1,1], +"group___basic_add.html#gaed633f415a7840a66861debca2dfb96b":[3,0,1,3], +"group___basic_mult.html":[3,0,3], +"group___basic_mult.html#ga16677275ed83ff0878da531e875c27ef":[3,0,3,3], +"group___basic_mult.html#ga3528c0f54a0607acc603f0490d3ca6c6":[3,0,3,2], +"group___basic_mult.html#gaca3f0b8227da431ab29225b88888aa32":[3,0,3,0], +"group___basic_mult.html#gafb0778d27ed98a2a6f2ecb7d48cc8c75":[3,0,3,1], +"group___basic_sub.html":[3,0,8], +"group___basic_sub.html#ga28aa6908d092752144413e21933dc878":[3,0,8,2], +"group___basic_sub.html#ga7f975a472de286331134227c08aad826":[3,0,8,0], +"group___basic_sub.html#ga997a8ee93088d15bda23c325d455b588":[3,0,8,1], +"group___basic_sub.html#gab09941de7dfeb247e5c29b406a435fcc":[3,0,8,3], +"group___bilinear_interpolate.html":[3,9,1], +"group___bilinear_interpolate.html#ga202a033c8a2ad3678b136f93153b6d13":[3,9,1,2], +"group___bilinear_interpolate.html#gaa8dffbc2a01bb7accf231384498ec85e":[3,9,1,1], +"group___bilinear_interpolate.html#gab49a4c0f64854903d996d01ba38f711a":[3,9,1,0], +"group___bilinear_interpolate.html#gade8db9706a3ae9ad03b2750a239d2ee6":[3,9,1,3], +"group___biquad_cascade_d_f1.html":[3,3,1], +"group___biquad_cascade_d_f1.html#ga27b0c54da702713976e5202d20b4473f":[3,3,1,7], +"group___biquad_cascade_d_f1.html#ga456390f5e448afad3a38bed7d6e380e3":[3,3,1,2], +"group___biquad_cascade_d_f1.html#ga8e73b69a788e681a61bccc8959d823c5":[3,3,1,3], +"group___biquad_cascade_d_f1.html#gaa0dbe330d763e3c1d8030b3ef12d5bdc":[3,3,1,0], +"group___biquad_cascade_d_f1.html#gad54c724132f6d742a444eb6df0e9c731":[3,3,1,4], +"group___biquad_cascade_d_f1.html#gadd66a0aefdc645031d607b0a5b37a942":[3,3,1,6], +"group___biquad_cascade_d_f1.html#gaf42a44f9b16d61e636418c83eefe577b":[3,3,1,5], +"group___biquad_cascade_d_f1.html#gaffb9792c0220882efd4c58f3c6a05fd7":[3,3,1,1], +"group___biquad_cascade_d_f1__32x64.html":[3,3,0], +"group___biquad_cascade_d_f1__32x64.html#ga44900cecb8083afcaabf905ffcd656bb":[3,3,0,0], +"group___biquad_cascade_d_f1__32x64.html#ga953a83e69685de6575cff37feb358a93":[3,3,0,1], +"group___biquad_cascade_d_f2_t.html":[3,3,2], +"group___biquad_cascade_d_f2_t.html#ga114f373fbc16a314e9f293c7c7649c7f":[3,3,2,0], +"group___biquad_cascade_d_f2_t.html#ga12dc5d8e8892806ad70e79ca2ff9f86e":[3,3,2,3], +"group___biquad_cascade_d_f2_t.html#ga405197c89fe4d34003efd23786296425":[3,3,2,5], +"group___biquad_cascade_d_f2_t.html#ga70eaddf317a4a8bde6bd6a97df67fedd":[3,3,2,2], +"group___biquad_cascade_d_f2_t.html#gaa8735dda5f3f36d0936283794c2aa771":[3,3,2,1], +"group___biquad_cascade_d_f2_t.html#gac75de449c3e4f733477d81bd0ada5eec":[3,3,2,4], +"group___c_f_f_t___c_i_f_f_t.html":[3,5,4], +"group___c_f_f_t___c_i_f_f_t.html#ga23e7f30421a7905b21c2015429779633":[3,5,4,10], +"group___c_f_f_t___c_i_f_f_t.html#ga27c056eb130a4333d1cc5dd43ec738b1":[3,5,4,1], +"group___c_f_f_t___c_i_f_f_t.html#ga416c61b2f08542a39111e06b0378bebe":[3,5,4,24], +"group___c_f_f_t___c_i_f_f_t.html#ga4f3c6d98c7e66393b4ef3ac63746e43d":[3,5,4,25], +"group___c_f_f_t___c_i_f_f_t.html#ga514443c44b62b8b3d240afefebcda310":[3,5,4,3], +"group___c_f_f_t___c_i_f_f_t.html#ga6099ae5262a0a3a8d9ce1e6da02f0c2e":[3,5,4,14], +"group___c_f_f_t___c_i_f_f_t.html#ga6152621af210f847128c6f38958fa385":[3,5,4,23], +"group___c_f_f_t___c_i_f_f_t.html#ga67c0890317deab3391e276f22c1fc400":[3,5,4,21], +"group___c_f_f_t___c_i_f_f_t.html#ga6e0a7e941a25a0d74b2e6590307de47e":[3,5,4,27], +"group___c_f_f_t___c_i_f_f_t.html#ga78a72c85d88185de98050c930cfc76e3":[3,5,4,16], +"group___c_f_f_t___c_i_f_f_t.html#ga8a0ec95d866fe96b740e77d6e1356b59":[3,5,4,2], +"group___c_f_f_t___c_i_f_f_t.html#ga8ba78d5e6ef4bdc58e8f0044e0664a0a":[3,5,4,18], +"group___c_f_f_t___c_i_f_f_t.html#ga8e4e2e05f4a3112184c96cb3308d6c39":[3,5,4,8], +"group___c_f_f_t___c_i_f_f_t.html#ga948433536dafaac1381decfccf4e2d9c":[3,5,4,4], +"group___c_f_f_t___c_i_f_f_t.html#ga9b409d6995eab17805b1d1881d4bc652":[3,5,4,20], +"group___c_f_f_t___c_i_f_f_t.html#ga9c5767de9f5a409fd0c2027e6ac67179":[3,5,4,12], +"group___c_f_f_t___c_i_f_f_t.html#gaa0cc411e0b3c82078e85cfdf1b84290f":[3,5,4,26], +"group___c_f_f_t___c_i_f_f_t.html#gabfdd1c5cd2b3f96da5fe5f07c707a8e5":[3,5,4,5], +"group___c_f_f_t___c_i_f_f_t.html#gac194a4fe04a19051ae1811f69c6e5df2":[3,5,4,17], +"group___c_f_f_t___c_i_f_f_t.html#gad8830f0c068ab2cc19f2f87d220fa148":[3,5,4,22], +"group___c_f_f_t___c_i_f_f_t.html#gadd16ce08ffd1048c385e0534a3b19cbb":[3,5,4,11], +"group___c_f_f_t___c_i_f_f_t.html#gae0182d1dd3b2f21aad4e38a815a0bd40":[3,5,4,19], +"group___c_f_f_t___c_i_f_f_t.html#gae247e83ad50d474107254e25b36ad42b":[3,5,4,0], +"group___c_f_f_t___c_i_f_f_t.html#gae75e243ec61706427314270f222e0c8e":[3,5,4,7], +"group___c_f_f_t___c_i_f_f_t.html#gaef1ea005053b715b851cf5f908168ede":[3,5,4,15], +"group___c_f_f_t___c_i_f_f_t.html#gaef4697e1ba348c4ac9358f2b9e279e93":[3,5,4,9], +"group___c_f_f_t___c_i_f_f_t.html#gafe813758a03a798e972359a092315be4":[3,5,4,13], +"group___c_f_f_t___c_i_f_f_t.html#gafecf9ed9873415d9f5f17f37b30c7250":[3,5,4,6], +"group___class_marks.html":[3,10,0], +"group___cmplx_by_cmplx_mult.html":[3,2,4], +"group___cmplx_by_cmplx_mult.html#ga14b47080054a1ba1250a86805be1ff6b":[3,2,4,0], +"group___cmplx_by_cmplx_mult.html#ga1829e50993a90742de225a0ce4213838":[3,2,4,2], +"group___cmplx_by_cmplx_mult.html#ga67e96abfc9c3e30efb70a2ec9d0fe7e8":[3,2,4,1], +"group___cmplx_by_real_mult.html":[3,2,5], +"group___cmplx_by_real_mult.html#ga3bd8889dcb45980e1d3e53344df54e85":[3,2,5,1], +"group___cmplx_by_real_mult.html#ga715e4bb8e945b8ca51ec5237611697ce":[3,2,5,2], +"group___cmplx_by_real_mult.html#ga9c18616f56cb4d3c0889ce0b339221ca":[3,2,5,0], +"group___cmplx_matrix_mult.html":[3,4,1], +"group___cmplx_matrix_mult.html#ga1adb839ac84445b8c2f04efa43faef35":[3,4,1,0], +"group___cmplx_matrix_mult.html#ga63066615e7d6f6a44f4358725092419e":[3,4,1,1], +"group___cmplx_matrix_mult.html#gaaf3c0b171ca8412c77bab9fa90804737":[3,4,1,2], +"group___complex_f_f_t.html":[3,5,0], +"group___complex_f_f_t.html#ga0c2acfda3126c452e75b81669e8ad9ef":[3,5,0,11], +"group___complex_f_f_t.html#ga521f670cd9c571bc61aff9bec89f4c26":[3,5,0,9], +"group___complex_f_f_t.html#ga55b424341dc3efd3fa0bcaaff4bdbf40":[3,5,0,7], +"group___complex_f_f_t.html#ga5a0008bd997ab6e2e299ef2fb272fb4b":[3,5,0,2], +"group___complex_f_f_t.html#ga5c5b2127b3c4ea2d03692127f8543858":[3,5,0,5], +"group___complex_f_f_t.html#ga6321f703ec87a274aedaab33d3e766b4":[3,5,0,8], +"group___complex_f_f_t.html#ga68cdacd2267a2967955e40e6b7ec1229":[3,5,0,1], +"group___complex_f_f_t.html#ga8d66cdac41b8bf6cefdb895456eee84a":[3,5,0,13], +"group___complex_f_f_t.html#ga9fadd650b802f612ae558ddaab789a6d":[3,5,0,3], +"group___complex_f_f_t.html#gabec9611e77382f31e152668bf6b4b638":[3,5,0,6], +"group___complex_f_f_t.html#gac9565e6bc7229577ecf5e090313cafd7":[3,5,0,4], +"group___complex_f_f_t.html#gad5caaafeec900c8ff72321c01bbd462c":[3,5,0,12], +"group___complex_f_f_t.html#gade0f9c4ff157b6b9c72a1eafd86ebf80":[3,5,0,0], +"group___complex_f_f_t.html#gaf336459f684f0b17bfae539ef1b1b78a":[3,5,0,10], +"group___complex_f_f_t.html#gafde3ee1f58cf393b45a9073174fff548":[3,5,0,14], +"group___conv.html":[3,3,3], +"group___conv.html#ga3f860dc98c6fc4cafc421e4a2aed3c89":[3,3,3,0], +"group___conv.html#ga4c7cf073e89d6d57cc4e711f078c3f68":[3,3,3,5], +"group___conv.html#ga51112dcdf9b3624eb05182cdc4da9ec0":[3,3,3,3], +"group___conv.html#ga946b58da734f1e4e78c91fcaab4b12b6":[3,3,3,7], +"group___conv.html#gac77dbcaef5c754cac27eab96c4753a3c":[3,3,3,4], +"group___conv.html#gaccd6a89b0ff7a94df64610598e6e6893":[3,3,3,6], +"group___conv.html#gad75ca978ce906e04abdf86a8d76306d4":[3,3,3,2], +"group___conv.html#gae2070cb792a167e78dbad8d06b97cdab":[3,3,3,8], +"group___conv.html#gaf16f490d245391ec18a42adc73d6d749":[3,3,3,1], +"group___convolution_example.html":[3,10,1], +"group___corr.html":[3,3,5], +"group___corr.html#ga1367dc6c80476406c951e68d7fac4e8c":[3,3,5,7], +"group___corr.html#ga22021e4222773f01e9960358a531cfb8":[3,3,5,0], +"group___corr.html#ga284ddcc49e4ac532d52a70d0383c5992":[3,3,5,8], +"group___corr.html#ga40a0236b17220e8e22a22b5bc1c53c6b":[3,3,5,1], +"group___corr.html#ga5ec96b8e420d68b0e626df0812274d46":[3,3,5,6], +"group___corr.html#ga746e8857cafe33ec5d6780729c18c311":[3,3,5,5], +"group___corr.html#gabecd3d7b077dbbef43f93e9e037815ed":[3,3,5,3], +"group___corr.html#gac8de3da44f58e86c2c86156276ca154f":[3,3,5,2], +"group___corr.html#gad71c0ec70ec69edbc48563d9a5f68451":[3,3,5,4], +"group___d_c_t4___i_d_c_t4.html":[3,5,2], +"group___d_c_t4___i_d_c_t4.html#ga02d7024538a87214296b01d83ba36b02":[3,5,2,26], +"group___d_c_t4___i_d_c_t4.html#ga114cb9635059f678df291fcc887aaf2b":[3,5,2,4], +"group___d_c_t4___i_d_c_t4.html#ga1477edd21c7b08b0b59a564f6c24d6c5":[3,5,2,10], +"group___d_c_t4___i_d_c_t4.html#ga16248ed86161ef97538011b49f13e8b7":[3,5,2,6], +"group___d_c_t4___i_d_c_t4.html#ga16bf6bbe5c4c9b35f88253cf7bdcc435":[3,5,2,29], +"group___d_c_t4___i_d_c_t4.html#ga1ba5306e0bc44730b40ab34cced45fd6":[3,5,2,7], +"group___d_c_t4___i_d_c_t4.html#ga2235ec700d0d6925d9733f48541d46f5":[3,5,2,23], +"group___d_c_t4___i_d_c_t4.html#ga31a8217a96f7d3171921e98398f31596":[3,5,2,28], +"group___d_c_t4___i_d_c_t4.html#ga3559569e603cb918911074be88523d0e":[3,5,2,16], +"group___d_c_t4___i_d_c_t4.html#ga45a8ec91e5da91790566105bc7e6f0c2":[3,5,2,21], +"group___d_c_t4___i_d_c_t4.html#ga49fd288352ca5bb43f5cec52273b0d80":[3,5,2,8], +"group___d_c_t4___i_d_c_t4.html#ga4fdc60621eb306984a82ce8b2d645bb7":[3,5,2,25], +"group___d_c_t4___i_d_c_t4.html#ga631bb59c7c97c814ff7147ecba6a716a":[3,5,2,3], +"group___d_c_t4___i_d_c_t4.html#ga725b65c25a02b3cad329e18bb832f65e":[3,5,2,27], +"group___d_c_t4___i_d_c_t4.html#ga966fd1b66a80873964533703ab5dc054":[3,5,2,2], +"group___d_c_t4___i_d_c_t4.html#ga988ff0563cc9df7848c9348871ac6c07":[3,5,2,13], +"group___d_c_t4___i_d_c_t4.html#gaa15fc3fb058482defda371113cd12e74":[3,5,2,15], +"group___d_c_t4___i_d_c_t4.html#gaa4ff5e6f062efb1d1ec8c6c2207c3727":[3,5,2,22], +"group___d_c_t4___i_d_c_t4.html#gab094ad3bc6fa1b84e8b12a24e1850a06":[3,5,2,1], +"group___d_c_t4___i_d_c_t4.html#gabb8ee2004a3520fd08388db637d43875":[3,5,2,14], +"group___d_c_t4___i_d_c_t4.html#gac056c3d026058eab3ba650828ff5642f":[3,5,2,12], +"group___d_c_t4___i_d_c_t4.html#gac12484542bc6aaecc754c855457411de":[3,5,2,9], +"group___d_c_t4___i_d_c_t4.html#gac3a2a00b3106dfcb5e0a582f50c65692":[3,5,2,19], +"group___d_c_t4___i_d_c_t4.html#gad00f29d896d64d6da7afbbb9d3e182a4":[3,5,2,18], +"group___d_c_t4___i_d_c_t4.html#gad04d0baab6ed081d8e8afe02538eb80b":[3,5,2,5], +"group___d_c_t4___i_d_c_t4.html#gadc8ee250fc217d6cb5c84dd7c1eb6d31":[3,5,2,24], +"group___d_c_t4___i_d_c_t4.html#gaeb67b0be5b3c2139d660e02cedeed908":[3,5,2,20], +"group___d_c_t4___i_d_c_t4.html#gaeee5df7c1be2374441868ecbbc6c7e5d":[3,5,2,11], +"group___d_c_t4___i_d_c_t4.html#gaf687c4bbdbc700a3ad5d807d28de63e4":[3,5,2,17], +"group___d_c_t4___i_d_c_t4.html#gafd538d68886848bc090ec2b0d364cc81":[3,5,2,0], +"group___dotproduct_example.html":[3,10,2], +"group___f_i_r.html":[3,3,7], +"group___f_i_r.html#ga262d173058d6f80fdf60404ba262a8f5":[3,3,7,7], +"group___f_i_r.html#ga31c91a0bf0962327ef8f626fae68ea32":[3,3,7,9], +"group___f_i_r.html#ga70d11af009dcd25594c58c75cdb5d6e3":[3,3,7,2], +"group___f_i_r.html#ga88e48688224d42dc173dbcec702f0c1d":[3,3,7,6], +"group___f_i_r.html#ga98d13def6427e29522829f945d0967db":[3,3,7,3], +"group___f_i_r.html#gaadd938c68ab08967cbb5fc696f384bb5":[3,3,7,8], +"group___f_i_r.html#gac00d53af87684cbbe135767b55e748a5":[3,3,7,5], +"group___f_i_r.html#gac7d35e9472e49ccd88800f37f3476bd3":[3,3,7,1], +"group___f_i_r.html#gae2a50f692f41ba57e44ed0719b1368bd":[3,3,7,4], +"group___f_i_r.html#gae8fb334ea67eb6ecbd31824ddc14cd6a":[3,3,7,0], +"group___f_i_r___interpolate.html":[3,3,13], +"group___f_i_r___interpolate.html#ga0f857457a815946f7e4dca989ebf6ff6":[3,3,13,1], +"group___f_i_r___interpolate.html#ga18e8c4a74ff1d0f88876cc63f675288f":[3,3,13,2], +"group___f_i_r___interpolate.html#ga7962b5f9636e54899f75d0c5936800b5":[3,3,13,4], +"group___f_i_r___interpolate.html#ga9cae104c5cf60b4e7671c82264a8c12e":[3,3,13,0], +"group___f_i_r___interpolate.html#ga9d0ba38ce9f12a850dd242731d307476":[3,3,13,3], +"group___f_i_r___interpolate.html#gaac9c0f01ed91c53f7083995d7411f5ee":[3,3,13,5], +"group___f_i_r___lattice.html":[3,3,8], +"group___f_i_r___lattice.html#ga1b22f30ce1cc19bf5a5d7c9fca154d72":[3,3,8,2], +"group___f_i_r___lattice.html#ga2e36fd210e4a1a5dd333ce80dd6d9a88":[3,3,8,5], +"group___f_i_r___lattice.html#ga86199a1590af2b8941c6532ee9d03229":[3,3,8,1], +"group___f_i_r___lattice.html#gabb0ab07fd313b4d863070c3ddca51542":[3,3,8,4], +"group___f_i_r___lattice.html#gac05a17a0188bb851b58d19e572870a54":[3,3,8,3], +"group___f_i_r___lattice.html#gae63a45a63a11a65f2eae8b8b1fe370a8":[3,3,8,0], +"group___f_i_r___sparse.html":[3,3,9], +"group___f_i_r___sparse.html#ga03e9c2f0f35ad67d20bac66be9f920ec":[3,3,9,6], +"group___f_i_r___sparse.html#ga23a9284de5ee39406713b91d18ac8838":[3,3,9,0], +"group___f_i_r___sparse.html#ga2bffda2e156e72427e19276cd9c3d3cc":[3,3,9,5], +"group___f_i_r___sparse.html#ga5eaa80bf72bcccef5a2c5fc6648d1baa":[3,3,9,2], +"group___f_i_r___sparse.html#ga86378a08a9d9e1e0e5de77843b34d396":[3,3,9,1], +"group___f_i_r___sparse.html#ga98f5c1a097d4572ce4ff3b0c58ebcdbd":[3,3,9,4], +"group___f_i_r___sparse.html#ga9a0bb2134bc85d3e55c6be6d946ee634":[3,3,9,3], +"group___f_i_r___sparse.html#gae86c145efc2d9ec32dc6d8c1ad2ccb3c":[3,3,9,7], +"group___f_i_r__decimate.html":[3,3,6], +"group___f_i_r__decimate.html#ga25aa3d58a90bf91b6a82272a0bc518f7":[3,3,6,0], +"group___f_i_r__decimate.html#ga3c18cc3d0548a410c577f1bead9582b7":[3,3,6,2], +"group___f_i_r__decimate.html#ga3f434c9a5d3b4e68061feac0714ea2ac":[3,3,6,1], +"group___f_i_r__decimate.html#ga9ed47c4e0f58affa935d84e0508a7f39":[3,3,6,5], +"group___f_i_r__decimate.html#gaaa2524b08220fd6c3f753e692ffc7d3b":[3,3,6,3], +"group___f_i_r__decimate.html#gab8bef6d0f6a26fdbfce9485727713ce5":[3,3,6,6], +"group___f_i_r__decimate.html#gada660e54b93d5d32178c6f5e1c6f368d":[3,3,6,4], +"group___f_i_r__decimate.html#gaef8e86add28f15fdc5ecc484e9dd7a4e":[3,3,6,7], +"group___f_i_r_l_p_f.html":[3,10,4], +"group___fast.html":[3,5,3], +"group___fill.html":[3,8,1], +"group___fill.html#ga0465cf326ada039ed792f94b033d9ec5":[3,8,1,3], +"group___fill.html#ga2248e8d3901b4afb7827163132baad94":[3,8,1,0], +"group___fill.html#ga69cc781cf337bd0a31bb85c772a35f7f":[3,8,1,2], +"group___fill.html#ga76b21c32a3783a2b3334d930a646e5d8":[3,8,1,1], +"group___frequency_bin.html":[3,10,3], +"group___g_e_q5_band.html":[3,10,5], +"group___i_i_r___lattice.html":[3,3,10], +"group___i_i_r___lattice.html#ga123b26fa9156cd8d3622dd85931741ed":[3,3,10,5], +"group___i_i_r___lattice.html#ga1f4bc2dd3d5641e96815d3a5aad58998":[3,3,10,2], +"group___i_i_r___lattice.html#ga56164a0fe48619b8ceec160347bdd2ff":[3,3,10,0], +"group___i_i_r___lattice.html#gab686c14175581797d9c3ad7bf1d5cc1e":[3,3,10,3], +"group___i_i_r___lattice.html#gaeb9e9599a288832ed123183eaa8b294a":[3,3,10,4], +"group___i_i_r___lattice.html#gaed3b0230bb77439dc902daa625985e04":[3,3,10,1], +"group___l_m_s.html":[3,3,11] +}; diff --git a/CMSIS/Documentation/DSP/html/navtreeindex1.js b/CMSIS/Documentation/DSP/html/navtreeindex1.js new file mode 100644 index 0000000..2ad61d2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/navtreeindex1.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX1 = +{ +"group___l_m_s.html#ga6a0abfe6041253a6f91c63b383a64257":[3,3,11,5], +"group___l_m_s.html#ga8d4bc251169f4b102355097a9f7530d6":[3,3,11,3], +"group___l_m_s.html#ga9544cc26f18cd4465cfbed371be822b3":[3,3,11,2], +"group___l_m_s.html#ga9fc7adca0966ff2cec1746fca8364cee":[3,3,11,1], +"group___l_m_s.html#gacde16c17eb75979f81b34e2e2a58c7ac":[3,3,11,4], +"group___l_m_s.html#gae266d009e682180421601627c79a3843":[3,3,11,0], +"group___l_m_s___n_o_r_m.html":[3,3,12], +"group___l_m_s___n_o_r_m.html#ga1d9659dbbea4c89a7a9d14d5fc0dd490":[3,3,12,3], +"group___l_m_s___n_o_r_m.html#ga213ab1ee2e154cc2fa30d667b1994b89":[3,3,12,2], +"group___l_m_s___n_o_r_m.html#ga2418c929087c6eba719758eaae3f3300":[3,3,12,0], +"group___l_m_s___n_o_r_m.html#ga7128775e99817c183a7d7ad34e8b6e05":[3,3,12,5], +"group___l_m_s___n_o_r_m.html#gac7ccbaea863882056eee815456464670":[3,3,12,1], +"group___l_m_s___n_o_r_m.html#gad47486a399dedb0bc85a5990ec5cf981":[3,3,12,4], +"group___linear_interp_example.html":[3,10,6], +"group___linear_interpolate.html":[3,9,0], +"group___linear_interpolate.html#ga2269263d810cafcd19681957b37d5cf6":[3,9,0,0], +"group___linear_interpolate.html#ga42c9206e5d2d22b8808716dc30622846":[3,9,0,1], +"group___linear_interpolate.html#ga690e63e9a513ca0a741b1b174805d031":[3,9,0,2], +"group___linear_interpolate.html#gacb0d44fe00aca0ba1d036d469a1763fc":[3,9,0,3], +"group___matrix_add.html":[3,4,0], +"group___matrix_add.html#ga04bbf64a5f9c9e57dd1efb26a768aba1":[3,4,0,0], +"group___matrix_add.html#ga147e90b7c12a162735ab8824127a33ee":[3,4,0,1], +"group___matrix_add.html#ga7d9d7d81a0832a17b831aad1e4a5dc16":[3,4,0,2], +"group___matrix_example.html":[3,10,7], +"group___matrix_init.html":[3,4,2], +"group___matrix_init.html#ga11e3dc41592a6401c13182fef9416a27":[3,4,2,0], +"group___matrix_init.html#ga31a7c2b991803d49719393eb2d53dc26":[3,4,2,1], +"group___matrix_init.html#ga48a5e5d37e1f062cc57fcfaf683343cc":[3,4,2,2], +"group___matrix_inv.html":[3,4,3], +"group___matrix_inv.html#ga542be7aabbf7a2297a4b62cf212910e3":[3,4,3,0], +"group___matrix_inv.html#gaede2367c02df083cc915ddd5d8fae838":[3,4,3,1], +"group___matrix_mult.html":[3,4,4], +"group___matrix_mult.html#ga08f37d93a5bfef0c5000dc5e0a411f93":[3,4,4,1], +"group___matrix_mult.html#ga2785e8c1b785348b0c439b56aaf585a3":[3,4,4,2], +"group___matrix_mult.html#ga2ec612a8c2c4916477fb9bc1ab548a6e":[3,4,4,4], +"group___matrix_mult.html#ga3657b99a9667945373e520dbac0f4516":[3,4,4,3], +"group___matrix_mult.html#ga917bf0270310c1d3f0eda1fc7c0026a0":[3,4,4,0], +"group___matrix_scale.html":[3,4,5], +"group___matrix_scale.html#ga609743821ee81fa8c34c4bcdc1ed9744":[3,4,5,2], +"group___matrix_scale.html#ga7521769e2cf1c3d9c4656138cd2ae2ca":[3,4,5,1], +"group___matrix_scale.html#ga9cb4e385b18c9a0b9cbc940c1067ca12":[3,4,5,0], +"group___matrix_sub.html":[3,4,6], +"group___matrix_sub.html#ga39f42e0e3b7f115fbb909d6ff4e1329d":[3,4,6,2], +"group___matrix_sub.html#gac8b72fb70246ccfee3b372002345732c":[3,4,6,0], +"group___matrix_sub.html#gaf647776a425b7f9dd0aca3e11d81f02f":[3,4,6,1], +"group___matrix_trans.html":[3,4,7], +"group___matrix_trans.html#ga30a4d49489ac67ff98a46b9f58f73bf1":[3,4,7,2], +"group___matrix_trans.html#ga4f4f821cc695fd0ef9061d702e08050a":[3,4,7,1], +"group___matrix_trans.html#gad7dd9f108429da13d3864696ceeec789":[3,4,7,0], +"group___max.html":[3,7,0], +"group___max.html#ga5b89d1b04575aeec494f678695fb87d8":[3,7,0,0], +"group___max.html#ga6afd64d381b5c232de59163ebfe71e35":[3,7,0,3], +"group___max.html#gac132856c68f4bf2a056eaad5921c7880":[3,7,0,1], +"group___max.html#gaff7cbd4e955382def06724cc4cc85795":[3,7,0,2], +"group___min.html":[3,7,2], +"group___min.html#ga3631d38ac8d715fc14f6f1b343f4c4ed":[3,7,2,3], +"group___min.html#gab20faeceb5ff5d2d9dd628c2ecf41303":[3,7,2,2], +"group___min.html#gad065e37535ebb726750ac1545cb3fa6f":[3,7,2,1], +"group___min.html#gaf62b1673740fc516ea64daf777b7d74a":[3,7,2,0], +"group___p_i_d.html":[3,6,1], +"group___p_i_d.html#ga084f646bbb20d55f225c3efafcf7fc1f":[3,6,1,4], +"group___p_i_d.html#ga2cb1e3d3ebb167348fdabec74653d5c3":[3,6,1,2], +"group___p_i_d.html#ga408566dacb4fa6e0458b2c75672e525f":[3,6,1,7], +"group___p_i_d.html#ga5f6f941e7ae981728dd3a662f8f4ecd7":[3,6,1,5], +"group___p_i_d.html#ga9ec860bcb6f8ca31205bf0f1b51ab723":[3,6,1,6], +"group___p_i_d.html#gac5c79ed46abf2d72b8cf41fa6c708bda":[3,6,1,0], +"group___p_i_d.html#gad9d88485234fa9460b1ce9e64989ac86":[3,6,1,3], +"group___p_i_d.html#gae31536b19b82b93ed184fb1ab73cfcb3":[3,6,1,1], +"group___p_i_d.html#gaeecbacd3fb37c608ec25474d3a0dffa9":[3,6,1,8], +"group___partial_conv.html":[3,3,4], +"group___partial_conv.html#ga10c5294cda8c4985386f4e3944be7650":[3,3,4,3], +"group___partial_conv.html#ga16d10f32072cd79fc5fb6e785df45f5e":[3,3,4,0], +"group___partial_conv.html#ga1e4d43385cb62262a78c6752fe1fafb2":[3,3,4,2], +"group___partial_conv.html#ga209a2a913a0c5e5679c5988da8f46b03":[3,3,4,6], +"group___partial_conv.html#ga3707e16af1435b215840006a7ab0c98f":[3,3,4,5], +"group___partial_conv.html#ga3de9c4ddcc7886de25b70d875099a8d9":[3,3,4,1], +"group___partial_conv.html#ga78e73a5f02d103168a09821fb461e77a":[3,3,4,7], +"group___partial_conv.html#ga834b23b4ade8682beeb55778399101f8":[3,3,4,4], +"group___partial_conv.html#ga8567259fe18396dd972242c41741ebf4":[3,3,4,8], +"group___r_m_s.html":[3,7,4], +"group___r_m_s.html#ga0e3ab1b57da32d45388d1fa90d7fd88c":[3,7,4,0], +"group___r_m_s.html#gae33015fda23fc44e7ead5e5ed7e8d314":[3,7,4,2], +"group___r_m_s.html#gaf5b836b72dda9e5dfbbd17c7906fd13f":[3,7,4,1], +"group___radix8___c_f_f_t___c_i_f_f_t.html":[3,5,1], +"group___real_f_f_t.html":[3,5,5], +"group___real_f_f_t.html#ga00e615f5db21736ad5b27fb6146f3fc5":[3,5,5,6], +"group___real_f_f_t.html#ga053450cc600a55410ba5b5605e96245d":[3,5,5,4], +"group___real_f_f_t.html#ga10717ee326bf50832ef1c25b85a23068":[3,5,5,3], +"group___real_f_f_t.html#ga11e84d0ee257a547f749b37dd0078d36":[3,5,5,9], +"group___real_f_f_t.html#ga180d8b764d59cbb85d37a2d5f7cd9799":[3,5,5,1], +"group___real_f_f_t.html#ga1eb5745728a61c3715755f5d69a4a960":[3,5,5,13], +"group___real_f_f_t.html#ga3df1766d230532bc068fc4ed69d0fcdc":[3,5,5,0], +"group___real_f_f_t.html#ga5abde938abbe72e95c5bab080eb33c45":[3,5,5,5], +"group___real_f_f_t.html#ga8b1ad947c470596674fa3364e16045c6":[3,5,5,8], +"group___real_f_f_t.html#gabaeab5646aeea9844e6d42ca8c73fe3a":[3,5,5,7], +"group___real_f_f_t.html#gac52f98b52a1f03bfac8b57a67ba07397":[3,5,5,11], +"group___real_f_f_t.html#gac5fceb172551e7c11eb4d0e17ef15aa3":[3,5,5,2], +"group___real_f_f_t.html#gac871666f018b70938b2b98017628cb97":[3,5,5,12], +"group___real_f_f_t.html#gaf1592a6cf0504675205074a43c3728a2":[3,5,5,10], +"group___s_q_r_t.html":[3,1,2], +"group___s_q_r_t.html#ga119e25831e141d734d7ef10636670058":[3,1,2,2], +"group___s_q_r_t.html#ga56a40d1cf842b0b45267df6761975da0":[3,1,2,0], +"group___s_q_r_t.html#ga5abe5ca724f3e15849662b03752c1238":[3,1,2,1], +"group___s_t_d.html":[3,7,5], +"group___s_t_d.html#ga39495e74f96116178be085c9dc7742f5":[3,7,5,2], +"group___s_t_d.html#ga4969b5b5f3d001377bc401a3ee99dfc2":[3,7,5,0], +"group___s_t_d.html#gaf9d27afa9928ff28a63cd98ea9218a72":[3,7,5,1], +"group___signal_convergence.html":[3,10,8], +"group___sin_cos.html":[3,6,0], +"group___sin_cos.html#ga4420d45c37d58c310ef9ae1b5fe58020":[3,6,0,0], +"group___sin_cos.html#gae9e4ddebff9d4eb5d0a093e28e0bc504":[3,6,0,1], +"group___sin_cos_example.html":[3,10,9], +"group___variance_example.html":[3,10,10], +"group__clarke.html":[3,6,2], +"group__clarke.html#ga2b4ebec76215e1277c970c269ffdbd76":[3,6,2,0], +"group__clarke.html#ga7fd106ca8d346a2a472842e0656014c1":[3,6,2,1], +"group__cmplx__conj.html":[3,2,0], +"group__cmplx__conj.html#ga3a102aead6460ad9fcb0626f6b226ffb":[3,2,0,0], +"group__cmplx__conj.html#gaf47689ae07962acaecb8ddde556df4a4":[3,2,0,1], +"group__cmplx__conj.html#gafecc94879a383c5208ec3ef99485e4b5":[3,2,0,2], +"group__cmplx__dot__prod.html":[3,2,1], +"group__cmplx__dot__prod.html#ga2b08b5e8001d2c15204639d00893fc70":[3,2,1,1], +"group__cmplx__dot__prod.html#ga5b731a59db062a9ad84562ef68a6c8af":[3,2,1,2], +"group__cmplx__dot__prod.html#gadcfaf567a25eb641da4043eafb9bb076":[3,2,1,0], +"group__cmplx__mag.html":[3,2,2], +"group__cmplx__mag.html#ga0a4a8f77a6a51d9b3f3b9d729f85b7a4":[3,2,2,1], +"group__cmplx__mag.html#ga14f82f9230e9d96d5b9774e2fefcb7be":[3,2,2,2], +"group__cmplx__mag.html#gae45024c497392cde2ae358a76d435213":[3,2,2,0], +"group__cmplx__mag__squared.html":[3,2,3], +"group__cmplx__mag__squared.html#ga384b0538101e8c03fa4fa14271e63b04":[3,2,3,2], +"group__cmplx__mag__squared.html#ga45537f576102d960d467eb722b8431f2":[3,2,3,1], +"group__cmplx__mag__squared.html#gaa7faccc0d96b061d8b7d0d7d82045074":[3,2,3,0], +"group__copy.html":[3,8,0], +"group__copy.html#ga467579beda492aa92797529d794c88fb":[3,8,0,3], +"group__copy.html#ga872ca4cfc18c680b8991ccd569a5fda0":[3,8,0,1], +"group__copy.html#gadd1f737e677e0e6ca31767c7001417b3":[3,8,0,0], +"group__copy.html#gaddf70be7e3f87e535c324862b501f3f9":[3,8,0,2], +"group__cos.html":[3,1,0], +"group__cos.html#gace15287f9c64b9b4084d1c797d4c49d8":[3,1,0,0], +"group__cos.html#gad80f121949ef885a77d83ab36e002567":[3,1,0,2], +"group__cos.html#gadfd60c24def501638c0d5db20f4c869b":[3,1,0,1], +"group__dot__prod.html":[3,0,2], +"group__dot__prod.html#ga436d5bed28a4b73b24acbde436a3044b":[3,0,2,1], +"group__dot__prod.html#ga55418d4362f6ba84c327f9b4f089a8c3":[3,0,2,0], +"group__dot__prod.html#ga9c3293a50ac7ec8ba928bf8e3aaea6c1":[3,0,2,3], +"group__dot__prod.html#gab15d8fa060fc85b4d948d091b7deaa11":[3,0,2,2], +"group__float__to__x.html":[3,8,2], +"group__float__to__x.html#ga177704107f94564e9abe4daaa36f4554":[3,8,2,1], +"group__float__to__x.html#ga215456e35a18db86882e1d3f0d24e1f2":[3,8,2,0], +"group__float__to__x.html#ga44a393818cdee8dce80f2d66add25411":[3,8,2,2], +"group__group_cmplx_math.html":[3,2], +"group__group_controller.html":[3,6], +"group__group_examples.html":[3,10], +"group__group_fast_math.html":[3,1], +"group__group_filters.html":[3,3], +"group__group_interpolation.html":[3,9], +"group__group_math.html":[3,0], +"group__group_matrix.html":[3,4], +"group__group_stats.html":[3,7], +"group__group_support.html":[3,8], +"group__group_transforms.html":[3,5], +"group__group_transforms.html#ga6cfdb6bdc66b13732ef2351caf98fdbb":[3,5,7], +"group__group_transforms.html#gae239ddf995d1607115f9e84d5c069b9c":[3,5,6], +"group__inv__clarke.html":[3,6,3], +"group__inv__clarke.html#ga137f0396d837477b899ecae89f075a50":[3,6,3,0], +"group__inv__clarke.html#ga2d0c60f114f095a2f27442d98781ba02":[3,6,3,1], +"group__inv__park.html":[3,6,5], +"group__inv__park.html#ga0b33822b988a15455773d28440c5579a":[3,6,5,1], +"group__inv__park.html#gaaf6bef0de21946f774d49df050dd8b05":[3,6,5,0], +"group__mean.html":[3,7,1], +"group__mean.html#ga74ce08c49ab61e57bd50c3a0ca1fdb2b":[3,7,1,0], +"group__mean.html#gac882495d5f098819fd3939c1ef7795b3":[3,7,1,1], +"group__mean.html#gacf2526d8c2d75e486e8f0b0e31877ad0":[3,7,1,2], +"group__mean.html#gaebc707ee539020357c25da4c75b52eb7":[3,7,1,3], +"group__negate.html":[3,0,4], +"group__negate.html#ga0239a833d72cf00290b9723c394e5042":[3,0,4,1], +"group__negate.html#ga2784c6887686a73dc7c364e2e41c776c":[3,0,4,2], +"group__negate.html#ga2e169c4de6cc6e3ba4be9473531e6657":[3,0,4,0], +"group__negate.html#gaae78fc079a43bdaa3055f9b32e2a1f4c":[3,0,4,3], +"group__offset.html":[3,0,5], +"group__offset.html#ga00bd9cc17c5bf905e76c91ad50886393":[3,0,5,3], +"group__offset.html#ga989dfae15235799d82f62ef9d356abb4":[3,0,5,0], +"group__offset.html#gab4c1d2391b599549e5a06fdfbc2747bf":[3,0,5,1], +"group__offset.html#gac84ec42cbbebc5c197a87d0221819acf":[3,0,5,2], +"group__park.html":[3,6,4], +"group__park.html#ga08b3a683197de7e143fb00497787683c":[3,6,4,0], +"group__park.html#gaf4cc6370c0cfc14ea66774ed3c5bb10f":[3,6,4,1], +"group__power.html":[3,7,3], +"group__power.html#ga0b93d31bb5b5ed214c2b94d8a7744cd2":[3,7,3,2], +"group__power.html#ga7050c04b7515e01a75c38f1abbaf71ba":[3,7,3,1], +"group__power.html#ga993c00dd7f661d66bdb6e58426e893aa":[3,7,3,0], +"group__power.html#gaf969c85c5655e3d72d7b99ff188f92c9":[3,7,3,3], +"group__q15__to__x.html":[3,8,3], +"group__q15__to__x.html#ga7ba2d87366990ad5380439e2b4a4c0a5":[3,8,3,1], +"group__q15__to__x.html#ga8fb31855ff8cce09c2ec9308f48ded69":[3,8,3,2], +"group__q15__to__x.html#gaf8b0d2324de273fc430b0e61ad4e9eb2":[3,8,3,0], +"group__q31__to__x.html":[3,8,4], +"group__q31__to__x.html#ga7f297d1a7d776805395095fdb24a8071":[3,8,4,2], +"group__q31__to__x.html#ga901dede4661365c9e7c630d3eb31c32c":[3,8,4,1], +"group__q31__to__x.html#gacf407b007a37da18e99dabd9023c56b4":[3,8,4,0], +"group__q7__to__x.html":[3,8,5], +"group__q7__to__x.html#ga656620f957b65512ed83db03fd455ec5":[3,8,5,0], +"group__q7__to__x.html#gabc02597fc3f01033daf43ec0547a2f78":[3,8,5,1], +"group__q7__to__x.html#gad8958cd3cb7f521466168b46a25b7908":[3,8,5,2], +"group__scale.html":[3,0,6], +"group__scale.html#ga3487af88b112f682ee90589cd419e123":[3,0,6,0], +"group__scale.html#ga83e36cd82bf51ce35406a199e477d47c":[3,0,6,2], +"group__scale.html#gabc9fd3d37904c58df56492b351d21fb0":[3,0,6,3], +"group__scale.html#gafaac0e1927daffeb68a42719b53ea780":[3,0,6,1], +"group__shift.html":[3,0,7], +"group__shift.html#ga387dd8b7b87377378280978f16cdb13d":[3,0,7,1], +"group__shift.html#ga47295d08a685f7de700a48dafb4db6fb":[3,0,7,2], +"group__shift.html#gaa1757e53279780107acc92cf100adb61":[3,0,7,0], +"group__sin.html":[3,1,1], +"group__sin.html#ga1fc6d6640be6cfa688a8bea0a48397ee":[3,1,1,1], +"group__sin.html#ga57aade7d8892585992cdc6375bd82f9c":[3,1,1,2], +"group__sin.html#gae164899c4a3fc0e946dc5d55555fe541":[3,1,1,0], +"group__variance.html":[3,7,6], +"group__variance.html#ga393f26c5a3bfa05624fb8d32232a6d96":[3,7,6,0], +"group__variance.html#ga79dce009ed2de28a125aeb3f19631654":[3,7,6,1], +"group__variance.html#gac02873f1c2cc80adfd799305f0e6465d":[3,7,6,2], +"index.html":[], +"index.html":[0], +"modules.html":[3], +"pages.html":[], +"structarm__bilinear__interp__instance__f32.html":[4,0], +"structarm__bilinear__interp__instance__f32.html#a34f2b17cc57b95011960df9718af6ed6":[4,0,1], +"structarm__bilinear__interp__instance__f32.html#aede17bebfb1f835b61d71dd813eab3f8":[4,0,0], +"structarm__bilinear__interp__instance__f32.html#afd1e764591c991c212d56c893efb5ea4":[4,0,2], +"structarm__bilinear__interp__instance__q15.html":[4,1], +"structarm__bilinear__interp__instance__q15.html#a2130ae30a804995a9f5d0e2189e08565":[4,1,1], +"structarm__bilinear__interp__instance__q15.html#a50d75b1316cee3e0dfad6dcc4c9a2954":[4,1,2], +"structarm__bilinear__interp__instance__q15.html#a7fa8772d01583374ff8ac18205a26a37":[4,1,0], +"structarm__bilinear__interp__instance__q31.html":[4,2], +"structarm__bilinear__interp__instance__q31.html#a2082e3eac56354d75291f03e96ce4aa5":[4,2,1], +"structarm__bilinear__interp__instance__q31.html#a6c3eff4eb17ff1d43f170efb84713a2d":[4,2,0], +"structarm__bilinear__interp__instance__q31.html#a843eae0c9db5f815e77e1aaf9afea358":[4,2,2], +"structarm__bilinear__interp__instance__q7.html":[4,3], +"structarm__bilinear__interp__instance__q7.html#a860dd0d24380ea06cfbb348fb3b12c9a":[4,3,0], +"structarm__bilinear__interp__instance__q7.html#ad5a8067cab5f9ea4688b11a623e16607":[4,3,1], +"structarm__bilinear__interp__instance__q7.html#af05194d691bbefb02c34bafb22ca9ef0":[4,3,2], +"structarm__biquad__cas__df1__32x64__ins__q31.html":[4,4], +"structarm__biquad__cas__df1__32x64__ins__q31.html#a490462d6ebe0fecfb6acbf51bed22ecf":[4,4,1], +"structarm__biquad__cas__df1__32x64__ins__q31.html#a4c899cdfaf2bb955323e93637bd662e0":[4,4,3], +"structarm__biquad__cas__df1__32x64__ins__q31.html#a8e9d58e8dba5aa3b2fc4f36d2ed07996":[4,4,2], +"structarm__biquad__cas__df1__32x64__ins__q31.html#ad7cb9a9f5df8f4fcfc7a0b633672e574":[4,4,0], +"structarm__biquad__cascade__df2_t__instance__f32.html":[4,5], +"structarm__biquad__cascade__df2_t__instance__f32.html#a24d223addfd926a7177088cf2efe76b1":[4,5,2], +"structarm__biquad__cascade__df2_t__instance__f32.html#a49a24fe1b6ad3b0b26779c32d8d80b2e":[4,5,1], +"structarm__biquad__cascade__df2_t__instance__f32.html#a4d17958c33c3d0a905f974bac50f033f":[4,5,0] +}; diff --git a/CMSIS/Documentation/DSP/html/navtreeindex2.js b/CMSIS/Documentation/DSP/html/navtreeindex2.js new file mode 100644 index 0000000..c4c6c15 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/navtreeindex2.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX2 = +{ +"structarm__biquad__cascade__df2_t__instance__f64.html":[4,6], +"structarm__biquad__cascade__df2_t__instance__f64.html#a0bde57b618e3f9059b23b0de64e12ce3":[4,6,2], +"structarm__biquad__cascade__df2_t__instance__f64.html#ad55380ff835b533aa5168f836db8a4de":[4,6,0], +"structarm__biquad__cascade__df2_t__instance__f64.html#ae2f0180f9038c0393e1d6921bb3b878b":[4,6,1], +"structarm__biquad__cascade__stereo__df2_t__instance__f32.html":[4,7], +"structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a2cb00048bb1fe957a03c1ff56dfaf8f0":[4,7,2], +"structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a5655328252da5c2c2425ceed253bc4f1":[4,7,0], +"structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a58b15644de62a632c5e9d4a563569dc6":[4,7,1], +"structarm__biquad__casd__df1__inst__f32.html":[4,8], +"structarm__biquad__casd__df1__inst__f32.html#a8c245d79e0d8cfabc82409d4b54fb682":[4,8,2], +"structarm__biquad__casd__df1__inst__f32.html#af69820c37a87252c46453e4cfe120585":[4,8,0], +"structarm__biquad__casd__df1__inst__f32.html#af9df3820576fb921809d1462c9c6d16c":[4,8,1], +"structarm__biquad__casd__df1__inst__q15.html":[4,9], +"structarm__biquad__casd__df1__inst__q15.html#a1edaacdebb5b09d7635bf20c779855fc":[4,9,1], +"structarm__biquad__casd__df1__inst__q15.html#a5481104ef2f8f81360b80b47d69ae932":[4,9,3], +"structarm__biquad__casd__df1__inst__q15.html#ad6d95e70abcf4ff1300181415ad92153":[4,9,0], +"structarm__biquad__casd__df1__inst__q15.html#ada7e9d6269e6ed4eacf8f68729e9832d":[4,9,2], +"structarm__biquad__casd__df1__inst__q31.html":[4,10], +"structarm__biquad__casd__df1__inst__q31.html#a2c2b579f1df1d8273a5d9d945c27e1b2":[4,10,0], +"structarm__biquad__casd__df1__inst__q31.html#a5dcf4727f58eb4e8e8b392508d8657bb":[4,10,3], +"structarm__biquad__casd__df1__inst__q31.html#a636c7fbe09ec4bef0bc0a4b4e2151cbe":[4,10,2], +"structarm__biquad__casd__df1__inst__q31.html#aa62366c632f3b5305086f841f079dbd2":[4,10,1], +"structarm__cfft__instance__f32.html":[4,11], +"structarm__cfft__instance__f32.html#a21ceaf59a1bb8440af57c28d2dd9bbab":[4,11,2], +"structarm__cfft__instance__f32.html#a3ba329ed153d182746376208e773d648":[4,11,0], +"structarm__cfft__instance__f32.html#a59cc6f753f1498716e1444ac054c06de":[4,11,3], +"structarm__cfft__instance__f32.html#acd8f9e9540e3dd348212726e5d6aaa95":[4,11,1], +"structarm__cfft__instance__q15.html":[4,12], +"structarm__cfft__instance__q15.html#a5f9e1d3a8c127ee323b5e6929aeb90df":[4,12,1], +"structarm__cfft__instance__q15.html#a738907cf34bdbbaf724414ac2decbc3c":[4,12,0], +"structarm__cfft__instance__q15.html#ac9160b80243b99a0b6e2f75ddb5cf0ae":[4,12,2], +"structarm__cfft__instance__q15.html#afdaf12ce4687cec021c5ae73d0987a3f":[4,12,3], +"structarm__cfft__instance__q31.html":[4,13], +"structarm__cfft__instance__q31.html#a2250fa6b8fe73292c5418c50c0549f87":[4,13,0], +"structarm__cfft__instance__q31.html#a4406f23e8fd0bff8d555225612e2a2a8":[4,13,1], +"structarm__cfft__instance__q31.html#a8a464461649f023325ced1e10470f5d0":[4,13,2], +"structarm__cfft__instance__q31.html#af751114feb91de3ace8600e91bdd0872":[4,13,3], +"structarm__cfft__radix2__instance__f32.html":[4,14], +"structarm__cfft__radix2__instance__f32.html#a1d3d289d47443e597d88a40effd14b8f":[4,14,4], +"structarm__cfft__radix2__instance__f32.html#a2f915a1c29635c1623086aaaa726be8f":[4,14,2], +"structarm__cfft__radix2__instance__f32.html#a411f75b6ed01690293f4f5988030ea42":[4,14,7], +"structarm__cfft__radix2__instance__f32.html#a8dbe98d2c924e35e0a3fed2fe948176f":[4,14,3], +"structarm__cfft__radix2__instance__f32.html#a92b8fa0a151cd800436094903a5ca0a4":[4,14,5], +"structarm__cfft__radix2__instance__f32.html#ac1688dafa5177f6b1505abbfd0cf8b21":[4,14,1], +"structarm__cfft__radix2__instance__f32.html#adb0c9d47dbfbd90a6f6ed0a05313a974":[4,14,6], +"structarm__cfft__radix2__instance__f32.html#af713b4ac5256a19bc965c89fe3005fa3":[4,14,0], +"structarm__cfft__radix2__instance__q15.html":[4,15], +"structarm__cfft__radix2__instance__q15.html#a3809dd15e7cbf1a054c728cfbbb0cc5a":[4,15,5], +"structarm__cfft__radix2__instance__q15.html#a6f2ab87fb4c568656e1f92f687b5c850":[4,15,6], +"structarm__cfft__radix2__instance__q15.html#a8722720c542cabd41df83fe88ef4f4cb":[4,15,1], +"structarm__cfft__radix2__instance__q15.html#a874085647351dcf3f0de39d2b1d49744":[4,15,2], +"structarm__cfft__radix2__instance__q15.html#ab5c073286bdd2f6e2bf783ced36bf1de":[4,15,3], +"structarm__cfft__radix2__instance__q15.html#ab88afeff6493be3c8b5e4530efa82d51":[4,15,4], +"structarm__cfft__radix2__instance__q15.html#af8300c1f60caa21e6b44b9240ab5af19":[4,15,0], +"structarm__cfft__radix2__instance__q31.html":[4,16], +"structarm__cfft__radix2__instance__q31.html#a1d5bbe9a991e133f81652a77a7985d23":[4,16,5], +"structarm__cfft__radix2__instance__q31.html#a2607378ce64be16698bb8a3b1af8d3c8":[4,16,3], +"structarm__cfft__radix2__instance__q31.html#a6239b8d268285334e88c008c07d68616":[4,16,0], +"structarm__cfft__radix2__instance__q31.html#a960199f1373a192366878ef279eab00f":[4,16,2], +"structarm__cfft__radix2__instance__q31.html#a9d17a87263953fe3559a007512c9f3a4":[4,16,1], +"structarm__cfft__radix2__instance__q31.html#ada8e5264f4b22ff4c621817978994674":[4,16,4], +"structarm__cfft__radix2__instance__q31.html#ae63ca9193322cd477970c1d2086407d1":[4,16,6], +"structarm__cfft__radix4__instance__f32.html":[4,17], +"structarm__cfft__radix4__instance__f32.html#a14860c7544911702ca1fa0bf78204ef3":[4,17,6], +"structarm__cfft__radix4__instance__f32.html#a25d1da64dd6487c291f04d226f9acc66":[4,17,3], +"structarm__cfft__radix4__instance__f32.html#a7e6a6d290ce158ce9a15a45e364b021a":[4,17,2], +"structarm__cfft__radix4__instance__f32.html#a8da0d2ca69749fde8cbb95caeac6fe6a":[4,17,5], +"structarm__cfft__radix4__instance__f32.html#ab9eed39e40b8d7c16381fbccf84467cd":[4,17,4], +"structarm__cfft__radix4__instance__f32.html#abe31ea2157dfa233e389cdfd3b9993ee":[4,17,7], +"structarm__cfft__radix4__instance__f32.html#ac10927a1620195a88649ce63dab66120":[4,17,0], +"structarm__cfft__radix4__instance__f32.html#acc8cb18a8b901b8321ab9d86491e41a3":[4,17,1], +"structarm__cfft__radix4__instance__q15.html":[4,18], +"structarm__cfft__radix4__instance__q15.html#a101e3f7b0bd6b5b14cd5214f23df4133":[4,18,0], +"structarm__cfft__radix4__instance__q15.html#a29dd693537e45421a36891f8439e1fba":[4,18,5], +"structarm__cfft__radix4__instance__q15.html#a2ecff6ea735cb4d22e922d0fd5736655":[4,18,3], +"structarm__cfft__radix4__instance__q15.html#a4acf704ae0cf30b53bf0fbfae8e34a59":[4,18,4], +"structarm__cfft__radix4__instance__q15.html#a5fc543e7d84ca8cb7cf6648970f21ca6":[4,18,2], +"structarm__cfft__radix4__instance__q15.html#a6b010e5f02d1130c621e3d2e26b95df1":[4,18,1], +"structarm__cfft__radix4__instance__q15.html#af32fdc78bcc27ca385f9b76a0a1f71c3":[4,18,6], +"structarm__cfft__radix4__instance__q31.html":[4,19], +"structarm__cfft__radix4__instance__q31.html#a33a3bc774c97373261699463c05dfe54":[4,19,4], +"structarm__cfft__radix4__instance__q31.html#a561c22dee4cbdcfa0fd5f15106ecc306":[4,19,5], +"structarm__cfft__radix4__instance__q31.html#a5a7c4f4c7b3fb655cbb2bc11ef160a2a":[4,19,0], +"structarm__cfft__radix4__instance__q31.html#a8cf8187b8232815cf17ee82bf572ecf9":[4,19,6], +"structarm__cfft__radix4__instance__q31.html#a94d2fead4efa4d5eaae142bbe30b0e15":[4,19,1], +"structarm__cfft__radix4__instance__q31.html#ab413d2a5d3f45fa187d93813bf3bf81b":[4,19,2], +"structarm__cfft__radix4__instance__q31.html#adc0a62ba669ad2282ecbe43d5d96abab":[4,19,3], +"structarm__dct4__instance__f32.html":[4,20], +"structarm__dct4__instance__f32.html#a018f7860b6e070af533fb7d76c7cdc32":[4,20,3], +"structarm__dct4__instance__f32.html#a262b29a51c371b46efc89120e31ccf37":[4,20,0], +"structarm__dct4__instance__f32.html#a61ce8c967b2e998a9c0041cca73cdef8":[4,20,2], +"structarm__dct4__instance__f32.html#a6da1187e070801e011ce5e0582efa861":[4,20,4], +"structarm__dct4__instance__f32.html#a978f37fc19add31af243ab5c63ae502f":[4,20,5], +"structarm__dct4__instance__f32.html#ad13544aafad268588c62e3eb35ae662c":[4,20,6], +"structarm__dct4__instance__f32.html#adb1ef2739ddbe62e5cdadc47455a4147":[4,20,1], +"structarm__dct4__instance__q15.html":[4,21], +"structarm__dct4__instance__q15.html#a11cf95c1cd9dd2dd5e4b81b8f88dc208":[4,21,5], +"structarm__dct4__instance__q15.html#a197098140d68e89a08f7a249003a0b86":[4,21,2], +"structarm__dct4__instance__q15.html#a53d24009bb9b2e93d0aa07db7f1a6c25":[4,21,0], +"structarm__dct4__instance__q15.html#a7284932ee8c36107c33815eb62eadffc":[4,21,3], +"structarm__dct4__instance__q15.html#abc6c847e9f906781e1d5da40e9aafa76":[4,21,6], +"structarm__dct4__instance__q15.html#ac76df681b1bd502fb4874c06f055dded":[4,21,4], +"structarm__dct4__instance__q15.html#af43dcbbc2fc661ffbc525afe3dcbd7da":[4,21,1], +"structarm__dct4__instance__q31.html":[4,22], +"structarm__dct4__instance__q31.html#a32d3268ba4629908dba056599f0a904d":[4,22,1], +"structarm__dct4__instance__q31.html#a46a9f136457350676e2bfd3768ff9d6d":[4,22,0], +"structarm__dct4__instance__q31.html#a7db236e22673146bb1d2c962f0713f08":[4,22,6], +"structarm__dct4__instance__q31.html#ac80ff7b28fca36aeef74dea12e8312dd":[4,22,2], +"structarm__dct4__instance__q31.html#ac96579cfb28d08bb11dd2fe4c6303833":[4,22,3], +"structarm__dct4__instance__q31.html#af1487dab5e7963b85dc0fdc6bf492542":[4,22,5], +"structarm__dct4__instance__q31.html#af97204d1838925621fc82021a0c2d6c1":[4,22,4], +"structarm__fir__decimate__instance__f32.html":[4,23], +"structarm__fir__decimate__instance__f32.html#a268a8b0e80a3d9764baf33e4bc10dde2":[4,23,2], +"structarm__fir__decimate__instance__f32.html#a2aa2986129db8affef03ede88dd45a03":[4,23,1], +"structarm__fir__decimate__instance__f32.html#a5bddf29aaaf2011d2e3bcec59a83f633":[4,23,3], +"structarm__fir__decimate__instance__f32.html#a76a8b2161731638eb3d67f277919f95d":[4,23,0], +"structarm__fir__decimate__instance__q15.html":[4,24], +"structarm__fir__decimate__instance__q15.html#a01cacab67e73945e8289075598ede14d":[4,24,2], +"structarm__fir__decimate__instance__q15.html#a3f7b5184bb28853ef401b001df121047":[4,24,3], +"structarm__fir__decimate__instance__q15.html#aad9320284218b3aa378527ea518cf093":[4,24,0], +"structarm__fir__decimate__instance__q15.html#ac1e9844488ec717da334fbd4c4f41990":[4,24,1], +"structarm__fir__decimate__instance__q31.html":[4,25], +"structarm__fir__decimate__instance__q31.html#a030d0391538c2481c5b348fd09a952ff":[4,25,2], +"structarm__fir__decimate__instance__q31.html#a0ef0ef9e265f7ab873cfc6daa7593fdb":[4,25,3], +"structarm__fir__decimate__instance__q31.html#a37915d42b0dc5e3057ebe83110798482":[4,25,1], +"structarm__fir__decimate__instance__q31.html#ad3d6936c36303b30dd38f1eddf248ae5":[4,25,0], +"structarm__fir__instance__f32.html":[4,26], +"structarm__fir__instance__f32.html#a1c9cfca901d5902afeb640f2831488f4":[4,26,1], +"structarm__fir__instance__f32.html#a20cf98c92b5323799b7881c9ff4d2f7c":[4,26,0], +"structarm__fir__instance__f32.html#a7afcf4022e8560db9b8fd28b0d090a15":[4,26,2], +"structarm__fir__instance__q15.html":[4,27], +"structarm__fir__instance__q15.html#a0e46f93cf51bfb18b1be808be9c5bfc9":[4,27,0], +"structarm__fir__instance__q15.html#a6d16db16a5f8f0db54938f2967244d9e":[4,27,1], +"structarm__fir__instance__q15.html#aa8d25f44f45b6a6c4cf38c31569b8a01":[4,27,2], +"structarm__fir__instance__q31.html":[4,28], +"structarm__fir__instance__q31.html#a409f39c93b744784648bdc365541444d":[4,28,2], +"structarm__fir__instance__q31.html#a918fadd775b7a0482b21bf34dae2f094":[4,28,0], +"structarm__fir__instance__q31.html#afaae4c884bdf11a4ec2f3b9bb2bb51d0":[4,28,1], +"structarm__fir__instance__q7.html":[4,29], +"structarm__fir__instance__q7.html#a0e45aedefc3fffad6cb315c5b6e5bd49":[4,29,1], +"structarm__fir__instance__q7.html#a9b50840e2c5ef5b17e1a584fb4cf0d06":[4,29,0], +"structarm__fir__instance__q7.html#aaddea3b9c7e16ddfd9428b7bf9f9c200":[4,29,2], +"structarm__fir__interpolate__instance__f32.html":[4,30], +"structarm__fir__interpolate__instance__f32.html#a389e669e13ec56292a70db8e92194b12":[4,30,2], +"structarm__fir__interpolate__instance__f32.html#a42a8ba1bda85fa86d7b6c84d3da4c75b":[4,30,3], +"structarm__fir__interpolate__instance__f32.html#a86053b715980a93c9df630d6de5bb63c":[4,30,1], +"structarm__fir__interpolate__instance__f32.html#ae6f94dcc0ccd8aa4bc699b20985d9df5":[4,30,0], +"structarm__fir__interpolate__instance__q15.html":[4,31], +"structarm__fir__interpolate__instance__q15.html#a26b864363fa47954248f2590e3a82a3c":[4,31,3], +"structarm__fir__interpolate__instance__q15.html#a5431bdc079e72a973b51d359f7f13603":[4,31,0], +"structarm__fir__interpolate__instance__q15.html#a767d91d61d4c0beeddd4325d28d28e24":[4,31,1], +"structarm__fir__interpolate__instance__q15.html#ad5178a02a697a77e0d0e60705d9f0a19":[4,31,2], +"structarm__fir__interpolate__instance__q31.html":[4,32], +"structarm__fir__interpolate__instance__q31.html#a5cdf0a631cb74e0e9588c388abe5235c":[4,32,0], +"structarm__fir__interpolate__instance__q31.html#a5d243796584afc7cd6c557f00b7acca5":[4,32,2], +"structarm__fir__interpolate__instance__q31.html#addde04514b6e6ac72be3d609f0398b1a":[4,32,3], +"structarm__fir__interpolate__instance__q31.html#afa719433687e1936ec3403d0d32f06e6":[4,32,1], +"structarm__fir__lattice__instance__f32.html":[4,33], +"structarm__fir__lattice__instance__f32.html#a33bf5948c947f9ef80a99717cb0a0a43":[4,33,1], +"structarm__fir__lattice__instance__f32.html#ad369bd9997a250f195254df37408a38f":[4,33,0], +"structarm__fir__lattice__instance__f32.html#ae348884a1ba9b83fadccd5da640cbcaf":[4,33,2], +"structarm__fir__lattice__instance__q15.html":[4,34], +"structarm__fir__lattice__instance__q15.html#a37b90dea2bc3ee7c9951a9fe74db0cbb":[4,34,2], +"structarm__fir__lattice__instance__q15.html#a38b179138d6a6c9cac4f8f79b6fd5357":[4,34,0], +"structarm__fir__lattice__instance__q15.html#a78f872826140069cf67836fff87360bc":[4,34,1], +"structarm__fir__lattice__instance__q31.html":[4,35], +"structarm__fir__lattice__instance__q31.html#a08fe9494ab7cd336b791e9657adadcf6":[4,35,2], +"structarm__fir__lattice__instance__q31.html#a66c3364bf5863cd45e05f1652c3dc522":[4,35,1], +"structarm__fir__lattice__instance__q31.html#a9f3773bbb76bc5a8a5ee9d37786bf478":[4,35,0], +"structarm__fir__sparse__instance__f32.html":[4,36], +"structarm__fir__sparse__instance__f32.html#a04af7c738dfb0882ad102fcad501d94a":[4,36,2], +"structarm__fir__sparse__instance__f32.html#a57585aeca9dc8686e08df2865375a86d":[4,36,5], +"structarm__fir__sparse__instance__f32.html#a5e19e7f234ac30a3db843352bf2a8515":[4,36,1], +"structarm__fir__sparse__instance__f32.html#a794af0916666d11cc564d6df08553555":[4,36,3], +"structarm__fir__sparse__instance__f32.html#aaa54ae67e5d10c6dd0d697945c638d31":[4,36,4], +"structarm__fir__sparse__instance__f32.html#af8b8c775f4084c36774f06c082b4c078":[4,36,0], +"structarm__fir__sparse__instance__q15.html":[4,37], +"structarm__fir__sparse__instance__q15.html#a0f66b126dd8b85f7467cfb01b7bc4d77":[4,37,1], +"structarm__fir__sparse__instance__q15.html#a78a6565473b5f0b8c77c3f0f58a76069":[4,37,2], +"structarm__fir__sparse__instance__q15.html#a89487f28cab52637426024005e478985":[4,37,5], +"structarm__fir__sparse__instance__q15.html#a98b92b0f5208110129b9a67b1db90408":[4,37,3], +"structarm__fir__sparse__instance__q15.html#ad14cc1070eecf7e1926d8f67a8273182":[4,37,0], +"structarm__fir__sparse__instance__q15.html#aeab2855176c6efdb231a73a3672837d5":[4,37,4], +"structarm__fir__sparse__instance__q31.html":[4,38], +"structarm__fir__sparse__instance__q31.html#a07b6c01e58ec6dde384719130d36b0dc":[4,38,1], +"structarm__fir__sparse__instance__q31.html#a093d6227f0d1597982cd083fb126f4e0":[4,38,2], +"structarm__fir__sparse__instance__q31.html#a557ed9d477e76e4ad2019344f19f568a":[4,38,5], +"structarm__fir__sparse__instance__q31.html#a830be89daa5a393b225048889aa045d1":[4,38,3], +"structarm__fir__sparse__instance__q31.html#ab87ae457adec8f727afefaa2599fc983":[4,38,4], +"structarm__fir__sparse__instance__q31.html#afdd3a1dc72132c854dc379154b68b674":[4,38,0], +"structarm__fir__sparse__instance__q7.html":[4,39], +"structarm__fir__sparse__instance__q7.html#a18072cf3ef3666d588f0d49512f2b28f":[4,39,3], +"structarm__fir__sparse__instance__q7.html#a2d2e65473fe3a3f2b953b4e0b60824df":[4,39,5], +"structarm__fir__sparse__instance__q7.html#a3dac86f15e33553e8f3e19e0d712bae5":[4,39,2], +"structarm__fir__sparse__instance__q7.html#a54cdd27ca1c672b126c38763ce678b1c":[4,39,1], +"structarm__fir__sparse__instance__q7.html#ac625393c84bc0342ffdf26fc4eba1ac1":[4,39,4], +"structarm__fir__sparse__instance__q7.html#af74dacc1d34c078283e50f2530eb91df":[4,39,0], +"structarm__iir__lattice__instance__f32.html":[4,40], +"structarm__iir__lattice__instance__f32.html#a30babe7815510219e6e3d28e6e4a5969":[4,40,2], +"structarm__iir__lattice__instance__f32.html#aa69fcdd3775e828d450ce1bbd978fa31":[4,40,1], +"structarm__iir__lattice__instance__f32.html#af8de449af5efe1f30be82f9ba35587ee":[4,40,0], +"structarm__iir__lattice__instance__f32.html#afc7c8f577e6f27d097fe55f57e707f72":[4,40,3], +"structarm__iir__lattice__instance__q15.html":[4,41], +"structarm__iir__lattice__instance__q15.html#a41c214a1ec38d4a82fae8899d715dd29":[4,41,1], +"structarm__iir__lattice__instance__q15.html#a4c4f57f45b223abbe2a9fb727bd2cad9":[4,41,3], +"structarm__iir__lattice__instance__q15.html#a96fbed313bef01070409fa182d26ba3f":[4,41,0], +"structarm__iir__lattice__instance__q15.html#afd0136ab917b529554d93f41a5e04618":[4,41,2], +"structarm__iir__lattice__instance__q31.html":[4,42], +"structarm__iir__lattice__instance__q31.html#a04507e2b982b1dfa97b7b55752dea6b9":[4,42,3], +"structarm__iir__lattice__instance__q31.html#a1d30aa16aac7722936ea9dee59211863":[4,42,1], +"structarm__iir__lattice__instance__q31.html#a941282745effd26a889fbfadf4b95e6a":[4,42,2], +"structarm__iir__lattice__instance__q31.html#a9df4570ed28c50fd9193ab654ff236ad":[4,42,0], +"structarm__linear__interp__instance__f32.html":[4,43], +"structarm__linear__interp__instance__f32.html#a08352dc6ea82fbc0827408e018535481":[4,43,2], +"structarm__linear__interp__instance__f32.html#a95f02a926b16d35359aca5b31e813b11":[4,43,0], +"structarm__linear__interp__instance__f32.html#aa8e2d686b5434a406d390b347b183511":[4,43,3], +"structarm__linear__interp__instance__f32.html#ab373001f6afad0850359c344a4d7eee4":[4,43,1], +"structarm__lms__instance__f32.html":[4,44], +"structarm__lms__instance__f32.html#a4795c6f7d3f17cec15c2fd09f66edd1a":[4,44,2], +"structarm__lms__instance__f32.html#aaf94285be2f99b5b9af40bea8dcb14b9":[4,44,3], +"structarm__lms__instance__f32.html#ae2af43d74c93dba16b876e10c97a5b99":[4,44,0], +"structarm__lms__instance__f32.html#af73880d9009982f5d14529869494ec3d":[4,44,1], +"structarm__lms__instance__q15.html":[4,45], +"structarm__lms__instance__q15.html#a0078e894f805af1b360369e619fb57b3":[4,45,1], +"structarm__lms__instance__q15.html#a42f95368b94898eb82608e1113d18cab":[4,45,2], +"structarm__lms__instance__q15.html#a9a575ff82c1e68cbb583083439260d08":[4,45,4], +"structarm__lms__instance__q15.html#aae46129d7cfd7f1c162cc502ed0a9d49":[4,45,0], +"structarm__lms__instance__q15.html#acca5fbaef4a52ae411de24c9a0b929cf":[4,45,3], +"structarm__lms__instance__q31.html":[4,46], +"structarm__lms__instance__q31.html#a206d47b49de6f357f933ebe61520753c":[4,46,4], +"structarm__lms__instance__q31.html#a4705a8f0011bb9166e09bf5bd51e595e":[4,46,3], +"structarm__lms__instance__q31.html#a4afe56e991a5416adfd462aa88bda500":[4,46,2], +"structarm__lms__instance__q31.html#ac0d84f7d054555931ef8a62511fbcb8a":[4,46,1], +"structarm__lms__instance__q31.html#acb6ca9996b3c5f740d5d6c8e9f4f1d46":[4,46,0], +"structarm__lms__norm__instance__f32.html":[4,47], +"structarm__lms__norm__instance__f32.html#a0bc03338687002ed5f2e4a363eb095ec":[4,47,4], +"structarm__lms__norm__instance__f32.html#a1ba688d90aba7de003ed4ad8e2e7ddda":[4,47,3], +"structarm__lms__norm__instance__f32.html#a6a4119e4f39447bbee31b066deafa16f":[4,47,0], +"structarm__lms__norm__instance__f32.html#a84401d3cfc6c40f69c08223cf341b886":[4,47,1], +"structarm__lms__norm__instance__f32.html#ac95f8ca3d816524c2070643852fac5e8":[4,47,2], +"structarm__lms__norm__instance__f32.html#aec958fe89b164a30f38bcca9f5d96218":[4,47,5], +"structarm__lms__norm__instance__q15.html":[4,48], +"structarm__lms__norm__instance__q15.html#a1c81ded399919d8181026bc1c8602e7b":[4,48,0], +"structarm__lms__norm__instance__q15.html#a3fc1d6f97d2c6d5324871de6895cb7e9":[4,48,7], +"structarm__lms__norm__instance__q15.html#a7ce00f21d11cfda6d963240641deea8c":[4,48,1], +"structarm__lms__norm__instance__q15.html#a9aabb0e4c79f3db807e7a441fa36f5f8":[4,48,6], +"structarm__lms__norm__instance__q15.html#a9ee7a45f4f315d7996a969e25fdc7146":[4,48,2], +"structarm__lms__norm__instance__q15.html#aa0d435fbcf7dedb7179d4467e9b79e9f":[4,48,4], +"structarm__lms__norm__instance__q15.html#aa4de490b3bdbd03561b76ee07901c8e3":[4,48,5], +"structarm__lms__norm__instance__q15.html#ae7bca648c75a2ffa02d87852bb78bc8a":[4,48,3] +}; diff --git a/CMSIS/Documentation/DSP/html/navtreeindex3.js b/CMSIS/Documentation/DSP/html/navtreeindex3.js new file mode 100644 index 0000000..6ba9b39 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/navtreeindex3.js @@ -0,0 +1,80 @@ +var NAVTREEINDEX3 = +{ +"structarm__lms__norm__instance__q31.html":[4,49], +"structarm__lms__norm__instance__q31.html#a28d7b9e437817f83397e081967e90f3c":[4,49,4], +"structarm__lms__norm__instance__q31.html#a28e4c085af69c9c3e2e95dacf8004c3e":[4,49,2], +"structarm__lms__norm__instance__q31.html#a3c0ae42869afec8555dc8e3a7ef9b386":[4,49,0], +"structarm__lms__norm__instance__q31.html#a47c4466d644e0d8ba407995adfa9b917":[4,49,7], +"structarm__lms__norm__instance__q31.html#a57a64c1ff102d033c1bd05043f1d9955":[4,49,3], +"structarm__lms__norm__instance__q31.html#a6b25c96cf048b77078d62f4252a01ec4":[4,49,5], +"structarm__lms__norm__instance__q31.html#a85836d0907077b9ac660f7bbbaa9d694":[4,49,6], +"structarm__lms__norm__instance__q31.html#ad3dd2a2406e02fdaa7782ba6c3940a64":[4,49,1], +"structarm__matrix__instance__f32.html":[4,50], +"structarm__matrix__instance__f32.html#a23f4e34d70a82c9cad7612add5640b7b":[4,50,1], +"structarm__matrix__instance__f32.html#acdd1fb73734df68b89565c54f1dd8ae2":[4,50,0], +"structarm__matrix__instance__f32.html#af3917c032600a9dfd5ed4a96f074910a":[4,50,2], +"structarm__matrix__instance__f64.html":[4,51], +"structarm__matrix__instance__f64.html#a5b2475f8ff1e4818955cdd18bc40a097":[4,51,2], +"structarm__matrix__instance__f64.html#a8b44d1e5003345047c4ead9e1593bf22":[4,51,1], +"structarm__matrix__instance__f64.html#ab0f0399aff3201880e2d8a447de9a7ee":[4,51,0], +"structarm__matrix__instance__q15.html":[4,52], +"structarm__matrix__instance__q15.html#a6da33a5553e634787d0f515cf8d724af":[4,52,2], +"structarm__matrix__instance__q15.html#a9bac6ed54be287c4d4f01a1a28be65f5":[4,52,1], +"structarm__matrix__instance__q15.html#acbbce67ba058d8e1c867c71d57288c97":[4,52,0], +"structarm__matrix__instance__q31.html":[4,53], +"structarm__matrix__instance__q31.html#a09a64267c0579fef086efc9059741e56":[4,53,2], +"structarm__matrix__instance__q31.html#a63bacac158a821c8cfc06088d251598c":[4,53,1], +"structarm__matrix__instance__q31.html#abd161da7614eda927157f18b698074b1":[4,53,0], +"structarm__pid__instance__f32.html":[4,54], +"structarm__pid__instance__f32.html#a155acf642ba2f521869f19d694cd7fa0":[4,54,2], +"structarm__pid__instance__f32.html#a7def89571c50f7137a213326a396e560":[4,54,1], +"structarm__pid__instance__f32.html#aa9b9aa9e413c6cec376a9dddc9f01ebe":[4,54,5], +"structarm__pid__instance__f32.html#ac0feffde05fe391eeab3bf78e953830a":[4,54,4], +"structarm__pid__instance__f32.html#ad5b68fbf84d16188ae4747ff91f6f088":[4,54,3], +"structarm__pid__instance__f32.html#ad7b0bed64915d0a25a3409fa2dc45556":[4,54,0], +"structarm__pid__instance__f32.html#afd394e1e52fb1d526aa472c83b8f2464":[4,54,6], +"structarm__pid__instance__q15.html":[4,55], +"structarm__pid__instance__q15.html#a0dcc19d5c8f7bc401acea9e8318cd777":[4,55,3], +"structarm__pid__instance__q15.html#a1b8412c517071962a9acfdc6778906ec":[4,55,1], +"structarm__pid__instance__q15.html#a4a3f0a878b5b6b055e3478a2f244cd30":[4,55,5], +"structarm__pid__instance__q15.html#ad228aae24a1b6d855c93a8b9bbc1c4f1":[4,55,4], +"structarm__pid__instance__q15.html#ad77f3a2823c7f96de42c92a3fbf3246b":[4,55,0], +"structarm__pid__instance__q15.html#af5d4b53091f19eff7536636b7cc43111":[4,55,2], +"structarm__pid__instance__q31.html":[4,56], +"structarm__pid__instance__q31.html#a228e4a64da6014844a0a671a1fa391d4":[4,56,6], +"structarm__pid__instance__q31.html#a2f7492bd6fb92fae5e2de7fbbec39b0e":[4,56,1], +"structarm__pid__instance__q31.html#a3e34537c53af4f9ad7bfffa4dff27c82":[4,56,2], +"structarm__pid__instance__q31.html#aa5332635ce9c7078cdb4c1ecf442eadd":[4,56,0], +"structarm__pid__instance__q31.html#aa861d69fd398f29aa0b4b455a823ed72":[4,56,4], +"structarm__pid__instance__q31.html#aab4ff371d14441df501f1169f71cbd17":[4,56,3], +"structarm__pid__instance__q31.html#ac2410bf7f856d58dc1d773d4983cac8e":[4,56,5], +"structarm__rfft__fast__instance__f32.html":[4,57], +"structarm__rfft__fast__instance__f32.html#a37419ababdfb3151b1891ae6bcd21012":[4,57,2], +"structarm__rfft__fast__instance__f32.html#a9f30b04f163fabc1b24421d3c323d5fc":[4,57,1], +"structarm__rfft__fast__instance__f32.html#aef06ab665041ec36f5b25d464f0cab14":[4,57,0], +"structarm__rfft__instance__f32.html":[4,58], +"structarm__rfft__instance__f32.html#a075076e07ebb8521d8e3b49a31db6c57":[4,58,1], +"structarm__rfft__instance__f32.html#a23543ecfd027fea2477fe1eea23c3c4d":[4,58,6], +"structarm__rfft__instance__f32.html#a4219d4669699e4efdcb150ed7a0d9a57":[4,58,2], +"structarm__rfft__instance__f32.html#a534cc7e6e9b3e3dd022fad611c762142":[4,58,5], +"structarm__rfft__instance__f32.html#a5ee6d10a934ab4b666e0bb286c3d633f":[4,58,3], +"structarm__rfft__instance__f32.html#a9f47ba9f50c81e4445ae3827b981bc05":[4,58,4], +"structarm__rfft__instance__f32.html#ac342f3248157cbbd2f04a3c8ec9fc9eb":[4,58,0], +"structarm__rfft__instance__f32.html#aede85350fb5ae6baa1b3e8bfa15b18d6":[4,58,7], +"structarm__rfft__instance__q15.html":[4,59], +"structarm__rfft__instance__q15.html#a4329c15b056444746d37ff082a24d31a":[4,59,3], +"structarm__rfft__instance__q15.html#a4c65cd40e0098ec2f5c0dc31488b9bc6":[4,59,0], +"structarm__rfft__instance__q15.html#a8051ffe268c147e431e1bea7bb4c4258":[4,59,2], +"structarm__rfft__instance__q15.html#a937d815022adc557b435ba8c6cd58b0d":[4,59,5], +"structarm__rfft__instance__q15.html#aac5cf9e825917cbb14f439e56bb86ab3":[4,59,1], +"structarm__rfft__instance__q15.html#afd444d05858c5f419980e94e8240d5c3":[4,59,6], +"structarm__rfft__instance__q15.html#affbf2de522ac029432d98e8373c0ec53":[4,59,4], +"structarm__rfft__instance__q31.html":[4,60], +"structarm__rfft__instance__q31.html#a2a0c944e66bab92fcbe19d1c29153250":[4,60,4], +"structarm__rfft__instance__q31.html#a3cb90cdc928a88b0203917dcb3dc1b71":[4,60,0], +"structarm__rfft__instance__q31.html#a6fc90252b579f7c29e01bd279334fc43":[4,60,6], +"structarm__rfft__instance__q31.html#a8fe10d425b59e096c23aa4bb5caa1974":[4,60,3], +"structarm__rfft__instance__q31.html#ae5070be4c2e0327e618f5e1f4c5b9d80":[4,60,5], +"structarm__rfft__instance__q31.html#af5c2615e6cde15524df38fa57ea32d94":[4,60,2], +"structarm__rfft__instance__q31.html#af777b0cadd5abaf064323692c2e6693b":[4,60,1] +}; diff --git a/CMSIS/Documentation/DSP/html/open.png b/CMSIS/Documentation/DSP/html/open.png new file mode 100644 index 0000000..30f75c7 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/open.png differ diff --git a/CMSIS/Documentation/DSP/html/pages.html b/CMSIS/Documentation/DSP/html/pages.html new file mode 100644 index 0000000..941254a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/pages.html @@ -0,0 +1,134 @@ + + + + + +Usage and Description +CMSIS-DSP: Usage and Description + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Usage and Description
    +
    +
    +
    Here is a list of all related documentation pages:
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/park.gif b/CMSIS/Documentation/DSP/html/park.gif new file mode 100644 index 0000000..db0fd40 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/park.gif differ diff --git a/CMSIS/Documentation/DSP/html/parkFormula.gif b/CMSIS/Documentation/DSP/html/parkFormula.gif new file mode 100644 index 0000000..3b1861b Binary files /dev/null and b/CMSIS/Documentation/DSP/html/parkFormula.gif differ diff --git a/CMSIS/Documentation/DSP/html/parkInvFormula.gif b/CMSIS/Documentation/DSP/html/parkInvFormula.gif new file mode 100644 index 0000000..4cb89df Binary files /dev/null and b/CMSIS/Documentation/DSP/html/parkInvFormula.gif differ diff --git a/CMSIS/Documentation/DSP/html/printComponentTabs.js b/CMSIS/Documentation/DSP/html/printComponentTabs.js new file mode 100644 index 0000000..64d846b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/printComponentTabs.js @@ -0,0 +1,36 @@ +var strgURL = location.pathname; // path of current component + +// constuctor for the array of objects +function tabElement(id, folderName, tabTxt ) { + this.id = id; // elementID as needed in html; + this.folderName = folderName; // folder name of the component + this.tabTxt = tabTxt; // Text displayed as menu on the web + this.currentListItem = '
  • ' + this.tabTxt + '
  • '; + this.listItem = '
  • ' + this.tabTxt + '
  • '; +}; + +// array of objects +var arr = []; + +// fill array + arr.push( new tabElement( "GEN", "/General/html/", "General") ); + arr.push( new tabElement( "CORE", "/Core/html/", "Core") ); + arr.push( new tabElement( "DRV", "/Driver/html/", "Driver") ); + arr.push( new tabElement( "DSP", "/DSP/html/", "DSP") ); + arr.push( new tabElement( "RTOS", "/RTOS/html/", "RTOS API") ); + arr.push( new tabElement( "RTX", "/RTX/html/", "RTX") ); + arr.push( new tabElement( "PACK", "/Pack/html/", "Pack") ); + arr.push( new tabElement( "SVD", "/SVD/html/", "SVD") ); + arr.push( new tabElement( "DAP", "/DAP/html/", "DAP") ); + +// write tabs +// called from the header file. +function writeComponentTabs() { + for ( var i=0; i < arr.length; i++ ) { + if (strgURL.search(arr[i].folderName) > 0) { // if this is the current folder + document.write(arr[i].currentListItem); // then print and hightlight the tab + } else { + document.write(arr[i].listItem); // else, print the tab + } + } +}; diff --git a/CMSIS/Documentation/DSP/html/resize.js b/CMSIS/Documentation/DSP/html/resize.js new file mode 100644 index 0000000..9fe82ba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).width(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.height(); + var footerHeight = footer.height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/CMSIS/Documentation/DSP/html/search/all_5f.html b/CMSIS/Documentation/DSP/html/search/all_5f.html new file mode 100644 index 0000000..1f27755 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_5f.js b/CMSIS/Documentation/DSP/html/search/all_5f.js new file mode 100644 index 0000000..c26bc12 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_5f.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['_5f_5fcmsis_5fgeneric',['__CMSIS_GENERIC',['../arm__math_8h.html#a87c3b351c33a90de11a2f23e67867a8a',1,'arm_math.h']]], + ['_5f_5fhsi',['__HSI',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c']]], + ['_5f_5fpackq7',['__PACKq7',['../arm__math_8h.html#a3ebff224ad44c217fde9f530342e2960',1,'arm_math.h']]], + ['_5f_5fsimd32',['__SIMD32',['../arm__math_8h.html#a9de2e0a5785be82866bcb96012282248',1,'arm_math.h']]], + ['_5f_5fsimd32_5fconst',['__SIMD32_CONST',['../arm__math_8h.html#a1185d670d798aaf52eec13f0403f3407',1,'arm_math.h']]], + ['_5f_5fsimd64',['__SIMD64',['../arm__math_8h.html#ad1b053da364f9fd82ca1a381df7590b6',1,'arm_math.h']]], + ['_5f_5fsystem_5fclock',['__SYSTEM_CLOCK',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c']]], + ['_5f_5fxtal',['__XTAL',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c']]], + ['_5fsimd32_5foffset',['_SIMD32_OFFSET',['../arm__math_8h.html#af0d54ec57b936994a34f073d0049ea3f',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_61.html b/CMSIS/Documentation/DSP/html/search/all_61.html new file mode 100644 index 0000000..a3164d5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_61.js b/CMSIS/Documentation/DSP/html/search/all_61.js new file mode 100644 index 0000000..10205ee --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_61.js @@ -0,0 +1,875 @@ +var searchData= +[ + ['a0',['A0',['../structarm__pid__instance__q15.html#ad77f3a2823c7f96de42c92a3fbf3246b',1,'arm_pid_instance_q15::A0()'],['../structarm__pid__instance__q31.html#aa5332635ce9c7078cdb4c1ecf442eadd',1,'arm_pid_instance_q31::A0()'],['../structarm__pid__instance__f32.html#ad7b0bed64915d0a25a3409fa2dc45556',1,'arm_pid_instance_f32::A0()']]], + ['a1',['A1',['../structarm__pid__instance__q15.html#a1b8412c517071962a9acfdc6778906ec',1,'arm_pid_instance_q15::A1()'],['../structarm__pid__instance__q31.html#a2f7492bd6fb92fae5e2de7fbbec39b0e',1,'arm_pid_instance_q31::A1()'],['../structarm__pid__instance__f32.html#a7def89571c50f7137a213326a396e560',1,'arm_pid_instance_f32::A1()']]], + ['a2',['A2',['../structarm__pid__instance__q31.html#a3e34537c53af4f9ad7bfffa4dff27c82',1,'arm_pid_instance_q31::A2()'],['../structarm__pid__instance__f32.html#a155acf642ba2f521869f19d694cd7fa0',1,'arm_pid_instance_f32::A2()']]], + ['a_5ff32',['A_f32',['../arm__matrix__example__f32_8c.html#aed27b92d9847194d9dcce40cecf2b48a',1,'arm_matrix_example_f32.c']]], + ['abstract_2etxt',['Abstract.txt',['../arm__convolution__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__convolution__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__fir__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__matrix__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__variance__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__class__marks__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__class__marks__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['ak',['Ak',['../_a_r_m_2arm__convolution__example__f32_8c.html#aed74eacd4b96cc7f71b64d18f2e95705',1,'Ak(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#aed74eacd4b96cc7f71b64d18f2e95705',1,'Ak(): arm_convolution_example_f32.c']]], + ['align4',['ALIGN4',['../arm__math_8h.html#a280a402ab28c399fcc4168f2ed631acb',1,'arm_math.h']]], + ['arm_5fabs_5ff32',['arm_abs_f32',['../group___basic_abs.html#ga421b6275f9d35f50286c0ff3beceff02',1,'arm_abs_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_abs_f32.c'],['../group___basic_abs.html#ga421b6275f9d35f50286c0ff3beceff02',1,'arm_abs_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_abs_f32.c']]], + ['arm_5fabs_5ff32_2ec',['arm_abs_f32.c',['../arm__abs__f32_8c.html',1,'']]], + ['arm_5fabs_5fq15',['arm_abs_q15',['../group___basic_abs.html#ga39f92964c9b649ba252e26ebe7b95594',1,'arm_abs_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_abs_q15.c'],['../group___basic_abs.html#ga39f92964c9b649ba252e26ebe7b95594',1,'arm_abs_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_abs_q15.c']]], + ['arm_5fabs_5fq15_2ec',['arm_abs_q15.c',['../arm__abs__q15_8c.html',1,'']]], + ['arm_5fabs_5fq31',['arm_abs_q31',['../group___basic_abs.html#ga59eafcdcdb52da60d37f20aec6ff4577',1,'arm_abs_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_abs_q31.c'],['../group___basic_abs.html#ga59eafcdcdb52da60d37f20aec6ff4577',1,'arm_abs_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_abs_q31.c']]], + ['arm_5fabs_5fq31_2ec',['arm_abs_q31.c',['../arm__abs__q31_8c.html',1,'']]], + ['arm_5fabs_5fq7',['arm_abs_q7',['../group___basic_abs.html#gadc30985e33fbf96802a5a7954dece3b1',1,'arm_abs_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_abs_q7.c'],['../group___basic_abs.html#gadc30985e33fbf96802a5a7954dece3b1',1,'arm_abs_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_abs_q7.c']]], + ['arm_5fabs_5fq7_2ec',['arm_abs_q7.c',['../arm__abs__q7_8c.html',1,'']]], + ['arm_5fadd_5ff32',['arm_add_f32',['../group___basic_add.html#ga6a904a547413b10565dd1d251c6bafbd',1,'arm_add_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_add_f32.c'],['../group___basic_add.html#ga6a904a547413b10565dd1d251c6bafbd',1,'arm_add_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_add_f32.c']]], + ['arm_5fadd_5ff32_2ec',['arm_add_f32.c',['../arm__add__f32_8c.html',1,'']]], + ['arm_5fadd_5fq15',['arm_add_q15',['../group___basic_add.html#gabb51285a41f511670bbff62fc0e1bf62',1,'arm_add_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_add_q15.c'],['../group___basic_add.html#gabb51285a41f511670bbff62fc0e1bf62',1,'arm_add_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_add_q15.c']]], + ['arm_5fadd_5fq15_2ec',['arm_add_q15.c',['../arm__add__q15_8c.html',1,'']]], + ['arm_5fadd_5fq31',['arm_add_q31',['../group___basic_add.html#ga24d6c3f7f8b9fae4847c0c3f26a39a3b',1,'arm_add_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_add_q31.c'],['../group___basic_add.html#ga24d6c3f7f8b9fae4847c0c3f26a39a3b',1,'arm_add_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_add_q31.c']]], + ['arm_5fadd_5fq31_2ec',['arm_add_q31.c',['../arm__add__q31_8c.html',1,'']]], + ['arm_5fadd_5fq7',['arm_add_q7',['../group___basic_add.html#gaed633f415a7840a66861debca2dfb96b',1,'arm_add_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_add_q7.c'],['../group___basic_add.html#gaed633f415a7840a66861debca2dfb96b',1,'arm_add_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_add_q7.c']]], + ['arm_5fadd_5fq7_2ec',['arm_add_q7.c',['../arm__add__q7_8c.html',1,'']]], + ['arm_5fapply_5fguard_5fbits',['arm_apply_guard_bits',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c']]], + ['arm_5fbilinear_5finterp_5ff32',['arm_bilinear_interp_f32',['../group___bilinear_interpolate.html#gab49a4c0f64854903d996d01ba38f711a',1,'arm_math.h']]], + ['arm_5fbilinear_5finterp_5finstance_5ff32',['arm_bilinear_interp_instance_f32',['../structarm__bilinear__interp__instance__f32.html',1,'']]], + ['arm_5fbilinear_5finterp_5finstance_5fq15',['arm_bilinear_interp_instance_q15',['../structarm__bilinear__interp__instance__q15.html',1,'']]], + ['arm_5fbilinear_5finterp_5finstance_5fq31',['arm_bilinear_interp_instance_q31',['../structarm__bilinear__interp__instance__q31.html',1,'']]], + ['arm_5fbilinear_5finterp_5finstance_5fq7',['arm_bilinear_interp_instance_q7',['../structarm__bilinear__interp__instance__q7.html',1,'']]], + ['arm_5fbilinear_5finterp_5fq15',['arm_bilinear_interp_q15',['../group___bilinear_interpolate.html#gaa8dffbc2a01bb7accf231384498ec85e',1,'arm_math.h']]], + ['arm_5fbilinear_5finterp_5fq31',['arm_bilinear_interp_q31',['../group___bilinear_interpolate.html#ga202a033c8a2ad3678b136f93153b6d13',1,'arm_math.h']]], + ['arm_5fbilinear_5finterp_5fq7',['arm_bilinear_interp_q7',['../group___bilinear_interpolate.html#gade8db9706a3ae9ad03b2750a239d2ee6',1,'arm_math.h']]], + ['arm_5fbiquad_5fcas_5fdf1_5f32x64_5finit_5fq31',['arm_biquad_cas_df1_32x64_init_q31',['../group___biquad_cascade_d_f1__32x64.html#ga44900cecb8083afcaabf905ffcd656bb',1,'arm_biquad_cas_df1_32x64_init_q31(arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift): arm_biquad_cascade_df1_32x64_init_q31.c'],['../group___biquad_cascade_d_f1__32x64.html#ga44900cecb8083afcaabf905ffcd656bb',1,'arm_biquad_cas_df1_32x64_init_q31(arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift): arm_biquad_cascade_df1_32x64_init_q31.c']]], + ['arm_5fbiquad_5fcas_5fdf1_5f32x64_5fins_5fq31',['arm_biquad_cas_df1_32x64_ins_q31',['../structarm__biquad__cas__df1__32x64__ins__q31.html',1,'']]], + ['arm_5fbiquad_5fcas_5fdf1_5f32x64_5fq31',['arm_biquad_cas_df1_32x64_q31',['../group___biquad_cascade_d_f1__32x64.html#ga953a83e69685de6575cff37feb358a93',1,'arm_biquad_cas_df1_32x64_q31(const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_32x64_q31.c'],['../group___biquad_cascade_d_f1__32x64.html#ga953a83e69685de6575cff37feb358a93',1,'arm_biquad_cas_df1_32x64_q31(const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_32x64_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5f32x64_5finit_5fq31_2ec',['arm_biquad_cascade_df1_32x64_init_q31.c',['../arm__biquad__cascade__df1__32x64__init__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5f32x64_5fq31_2ec',['arm_biquad_cascade_df1_32x64_q31.c',['../arm__biquad__cascade__df1__32x64__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ff32',['arm_biquad_cascade_df1_f32',['../group___biquad_cascade_d_f1.html#gaa0dbe330d763e3c1d8030b3ef12d5bdc',1,'arm_biquad_cascade_df1_f32(const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_f32.c'],['../group___biquad_cascade_d_f1.html#gaa0dbe330d763e3c1d8030b3ef12d5bdc',1,'arm_biquad_cascade_df1_f32(const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ff32_2ec',['arm_biquad_cascade_df1_f32.c',['../arm__biquad__cascade__df1__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq15',['arm_biquad_cascade_df1_fast_q15',['../group___biquad_cascade_d_f1.html#gaffb9792c0220882efd4c58f3c6a05fd7',1,'arm_biquad_cascade_df1_fast_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q15.c'],['../group___biquad_cascade_d_f1.html#gaffb9792c0220882efd4c58f3c6a05fd7',1,'arm_biquad_cascade_df1_fast_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q15.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq15_2ec',['arm_biquad_cascade_df1_fast_q15.c',['../arm__biquad__cascade__df1__fast__q15_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq31',['arm_biquad_cascade_df1_fast_q31',['../group___biquad_cascade_d_f1.html#ga456390f5e448afad3a38bed7d6e380e3',1,'arm_biquad_cascade_df1_fast_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q31.c'],['../group___biquad_cascade_d_f1.html#ga456390f5e448afad3a38bed7d6e380e3',1,'arm_biquad_cascade_df1_fast_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq31_2ec',['arm_biquad_cascade_df1_fast_q31.c',['../arm__biquad__cascade__df1__fast__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5ff32',['arm_biquad_cascade_df1_init_f32',['../group___biquad_cascade_d_f1.html#ga8e73b69a788e681a61bccc8959d823c5',1,'arm_biquad_cascade_df1_init_f32(arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df1_init_f32.c'],['../group___biquad_cascade_d_f1.html#ga8e73b69a788e681a61bccc8959d823c5',1,'arm_biquad_cascade_df1_init_f32(arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df1_init_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5ff32_2ec',['arm_biquad_cascade_df1_init_f32.c',['../arm__biquad__cascade__df1__init__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq15',['arm_biquad_cascade_df1_init_q15',['../group___biquad_cascade_d_f1.html#gad54c724132f6d742a444eb6df0e9c731',1,'arm_biquad_cascade_df1_init_q15(arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q15.c'],['../group___biquad_cascade_d_f1.html#gad54c724132f6d742a444eb6df0e9c731',1,'arm_biquad_cascade_df1_init_q15(arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q15.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq15_2ec',['arm_biquad_cascade_df1_init_q15.c',['../arm__biquad__cascade__df1__init__q15_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq31',['arm_biquad_cascade_df1_init_q31',['../group___biquad_cascade_d_f1.html#gaf42a44f9b16d61e636418c83eefe577b',1,'arm_biquad_cascade_df1_init_q31(arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q31.c'],['../group___biquad_cascade_d_f1.html#gaf42a44f9b16d61e636418c83eefe577b',1,'arm_biquad_cascade_df1_init_q31(arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq31_2ec',['arm_biquad_cascade_df1_init_q31.c',['../arm__biquad__cascade__df1__init__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq15',['arm_biquad_cascade_df1_q15',['../group___biquad_cascade_d_f1.html#gadd66a0aefdc645031d607b0a5b37a942',1,'arm_biquad_cascade_df1_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q15.c'],['../group___biquad_cascade_d_f1.html#gadd66a0aefdc645031d607b0a5b37a942',1,'arm_biquad_cascade_df1_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q15.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq15_2ec',['arm_biquad_cascade_df1_q15.c',['../arm__biquad__cascade__df1__q15_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq31',['arm_biquad_cascade_df1_q31',['../group___biquad_cascade_d_f1.html#ga27b0c54da702713976e5202d20b4473f',1,'arm_biquad_cascade_df1_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q31.c'],['../group___biquad_cascade_d_f1.html#ga27b0c54da702713976e5202d20b4473f',1,'arm_biquad_cascade_df1_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq31_2ec',['arm_biquad_cascade_df1_q31.c',['../arm__biquad__cascade__df1__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff32',['arm_biquad_cascade_df2T_f32',['../group___biquad_cascade_d_f2_t.html#ga114f373fbc16a314e9f293c7c7649c7f',1,'arm_biquad_cascade_df2T_f32(const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f32.c'],['../group___biquad_cascade_d_f2_t.html#ga114f373fbc16a314e9f293c7c7649c7f',1,'arm_biquad_cascade_df2T_f32(const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff32_2ec',['arm_biquad_cascade_df2T_f32.c',['../arm__biquad__cascade__df2_t__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff64',['arm_biquad_cascade_df2T_f64',['../group___biquad_cascade_d_f2_t.html#gaa8735dda5f3f36d0936283794c2aa771',1,'arm_biquad_cascade_df2T_f64(const arm_biquad_cascade_df2T_instance_f64 *S, float64_t *pSrc, float64_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f64.c'],['../group___biquad_cascade_d_f2_t.html#gaa8735dda5f3f36d0936283794c2aa771',1,'arm_biquad_cascade_df2T_f64(const arm_biquad_cascade_df2T_instance_f64 *S, float64_t *pSrc, float64_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f64.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff64_2ec',['arm_biquad_cascade_df2T_f64.c',['../arm__biquad__cascade__df2_t__f64_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff32',['arm_biquad_cascade_df2T_init_f32',['../group___biquad_cascade_d_f2_t.html#ga70eaddf317a4a8bde6bd6a97df67fedd',1,'arm_biquad_cascade_df2T_init_f32(arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df2T_init_f32.c'],['../group___biquad_cascade_d_f2_t.html#ga70eaddf317a4a8bde6bd6a97df67fedd',1,'arm_biquad_cascade_df2T_init_f32(arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df2T_init_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff32_2ec',['arm_biquad_cascade_df2T_init_f32.c',['../arm__biquad__cascade__df2_t__init__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff64',['arm_biquad_cascade_df2T_init_f64',['../group___biquad_cascade_d_f2_t.html#ga12dc5d8e8892806ad70e79ca2ff9f86e',1,'arm_biquad_cascade_df2T_init_f64(arm_biquad_cascade_df2T_instance_f64 *S, uint8_t numStages, float64_t *pCoeffs, float64_t *pState): arm_biquad_cascade_df2T_init_f64.c'],['../group___biquad_cascade_d_f2_t.html#ga12dc5d8e8892806ad70e79ca2ff9f86e',1,'arm_biquad_cascade_df2T_init_f64(arm_biquad_cascade_df2T_instance_f64 *S, uint8_t numStages, float64_t *pCoeffs, float64_t *pState): arm_biquad_cascade_df2T_init_f64.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff64_2ec',['arm_biquad_cascade_df2T_init_f64.c',['../arm__biquad__cascade__df2_t__init__f64_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finstance_5ff32',['arm_biquad_cascade_df2T_instance_f32',['../structarm__biquad__cascade__df2_t__instance__f32.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finstance_5ff64',['arm_biquad_cascade_df2T_instance_f64',['../structarm__biquad__cascade__df2_t__instance__f64.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5ff32',['arm_biquad_cascade_stereo_df2T_f32',['../group___biquad_cascade_d_f2_t.html#gac75de449c3e4f733477d81bd0ada5eec',1,'arm_biquad_cascade_stereo_df2T_f32(const arm_biquad_cascade_stereo_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_stereo_df2T_f32.c'],['../group___biquad_cascade_d_f2_t.html#gac75de449c3e4f733477d81bd0ada5eec',1,'arm_biquad_cascade_stereo_df2T_f32(const arm_biquad_cascade_stereo_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_stereo_df2T_f32.c']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5ff32_2ec',['arm_biquad_cascade_stereo_df2T_f32.c',['../arm__biquad__cascade__stereo__df2_t__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5finit_5ff32',['arm_biquad_cascade_stereo_df2T_init_f32',['../group___biquad_cascade_d_f2_t.html#ga405197c89fe4d34003efd23786296425',1,'arm_biquad_cascade_stereo_df2T_init_f32(arm_biquad_cascade_stereo_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_stereo_df2T_init_f32.c'],['../group___biquad_cascade_d_f2_t.html#ga405197c89fe4d34003efd23786296425',1,'arm_biquad_cascade_stereo_df2T_init_f32(arm_biquad_cascade_stereo_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_stereo_df2T_init_f32.c']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5finit_5ff32_2ec',['arm_biquad_cascade_stereo_df2T_init_f32.c',['../arm__biquad__cascade__stereo__df2_t__init__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5finstance_5ff32',['arm_biquad_cascade_stereo_df2T_instance_f32',['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html',1,'']]], + ['arm_5fbiquad_5fcasd_5fdf1_5finst_5ff32',['arm_biquad_casd_df1_inst_f32',['../structarm__biquad__casd__df1__inst__f32.html',1,'']]], + ['arm_5fbiquad_5fcasd_5fdf1_5finst_5fq15',['arm_biquad_casd_df1_inst_q15',['../structarm__biquad__casd__df1__inst__q15.html',1,'']]], + ['arm_5fbiquad_5fcasd_5fdf1_5finst_5fq31',['arm_biquad_casd_df1_inst_q31',['../structarm__biquad__casd__df1__inst__q31.html',1,'']]], + ['arm_5fbitreversal_2ec',['arm_bitreversal.c',['../arm__bitreversal_8c.html',1,'']]], + ['arm_5fbitreversal_5f16',['arm_bitreversal_16',['../arm__cfft__q15_8c.html#a773957c278f4d9e728711f27e8a6e278',1,'arm_cfft_q15.c']]], + ['arm_5fbitreversal_5f32',['arm_bitreversal_32',['../arm__cfft__f32_8c.html#ac8e7ebe1cb131a5b0f55d0464640591f',1,'arm_bitreversal_32(uint32_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable): arm_cfft_f32.c'],['../arm__cfft__q31_8c.html#ac8e7ebe1cb131a5b0f55d0464640591f',1,'arm_bitreversal_32(uint32_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable): arm_cfft_q31.c']]], + ['arm_5fbitreversal_5ff32',['arm_bitreversal_f32',['../arm__bitreversal_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix2__f32_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix4__f32_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__rfft__f32_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c']]], + ['arm_5fbitreversal_5fq15',['arm_bitreversal_q15',['../arm__bitreversal_8c.html#a12a07b49948c354172ae07358309a4a5',1,'arm_bitreversal_q15(q15_t *pSrc16, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix2__q15_8c.html#a73f48eaea9297605705ae25d3405343e',1,'arm_bitreversal_q15(q15_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix4__q15_8c.html#a73f48eaea9297605705ae25d3405343e',1,'arm_bitreversal_q15(q15_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c']]], + ['arm_5fbitreversal_5fq31',['arm_bitreversal_q31',['../arm__bitreversal_8c.html#a27618705158b5c42db5fb0a381f8efc1',1,'arm_bitreversal_q31(q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTable): arm_bitreversal.c'],['../arm__cfft__radix2__q31_8c.html#a3fab577d25c3a517973c8c214f66f268',1,'arm_bitreversal_q31(q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix4__q31_8c.html#a3fab577d25c3a517973c8c214f66f268',1,'arm_bitreversal_q31(q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c']]], + ['arm_5fcalc_5f2pow',['arm_calc_2pow',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c']]], + ['arm_5fcalc_5fguard_5fbits',['arm_calc_guard_bits',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c']]], + ['arm_5fcfft_5ff32',['arm_cfft_f32',['../group___complex_f_f_t.html#gade0f9c4ff157b6b9c72a1eafd86ebf80',1,'arm_cfft_f32(const arm_cfft_instance_f32 *S, float32_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_f32.c'],['../group___complex_f_f_t.html#gade0f9c4ff157b6b9c72a1eafd86ebf80',1,'arm_cfft_f32(const arm_cfft_instance_f32 *S, float32_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_f32.c']]], + ['arm_5fcfft_5ff32_2ec',['arm_cfft_f32.c',['../arm__cfft__f32_8c.html',1,'']]], + ['arm_5fcfft_5finstance_5ff32',['arm_cfft_instance_f32',['../structarm__cfft__instance__f32.html',1,'']]], + ['arm_5fcfft_5finstance_5fq15',['arm_cfft_instance_q15',['../structarm__cfft__instance__q15.html',1,'']]], + ['arm_5fcfft_5finstance_5fq31',['arm_cfft_instance_q31',['../structarm__cfft__instance__q31.html',1,'']]], + ['arm_5fcfft_5fq15',['arm_cfft_q15',['../group___complex_f_f_t.html#ga68cdacd2267a2967955e40e6b7ec1229',1,'arm_cfft_q15(const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q15.c'],['../group___complex_f_f_t.html#ga68cdacd2267a2967955e40e6b7ec1229',1,'arm_cfft_q15(const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q15.c']]], + ['arm_5fcfft_5fq15_2ec',['arm_cfft_q15.c',['../arm__cfft__q15_8c.html',1,'']]], + ['arm_5fcfft_5fq31',['arm_cfft_q31',['../group___complex_f_f_t.html#ga5a0008bd997ab6e2e299ef2fb272fb4b',1,'arm_cfft_q31(const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q31.c'],['../group___complex_f_f_t.html#ga5a0008bd997ab6e2e299ef2fb272fb4b',1,'arm_cfft_q31(const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q31.c']]], + ['arm_5fcfft_5fq31_2ec',['arm_cfft_q31.c',['../arm__cfft__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5ff32',['arm_cfft_radix2_f32',['../group___complex_f_f_t.html#ga9fadd650b802f612ae558ddaab789a6d',1,'arm_cfft_radix2_f32(const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc): arm_cfft_radix2_f32.c'],['../group___complex_f_f_t.html#ga9fadd650b802f612ae558ddaab789a6d',1,'arm_cfft_radix2_f32(const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc): arm_cfft_radix2_f32.c']]], + ['arm_5fcfft_5fradix2_5ff32_2ec',['arm_cfft_radix2_f32.c',['../arm__cfft__radix2__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5finit_5ff32',['arm_cfft_radix2_init_f32',['../group___complex_f_f_t.html#gac9565e6bc7229577ecf5e090313cafd7',1,'arm_cfft_radix2_init_f32(arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_f32.c'],['../group___complex_f_f_t.html#gac9565e6bc7229577ecf5e090313cafd7',1,'arm_cfft_radix2_init_f32(arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_f32.c']]], + ['arm_5fcfft_5fradix2_5finit_5ff32_2ec',['arm_cfft_radix2_init_f32.c',['../arm__cfft__radix2__init__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5finit_5fq15',['arm_cfft_radix2_init_q15',['../group___complex_f_f_t.html#ga5c5b2127b3c4ea2d03692127f8543858',1,'arm_cfft_radix2_init_q15(arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q15.c'],['../group___complex_f_f_t.html#ga5c5b2127b3c4ea2d03692127f8543858',1,'arm_cfft_radix2_init_q15(arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q15.c']]], + ['arm_5fcfft_5fradix2_5finit_5fq15_2ec',['arm_cfft_radix2_init_q15.c',['../arm__cfft__radix2__init__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5finit_5fq31',['arm_cfft_radix2_init_q31',['../group___complex_f_f_t.html#gabec9611e77382f31e152668bf6b4b638',1,'arm_cfft_radix2_init_q31(arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q31.c'],['../group___complex_f_f_t.html#gabec9611e77382f31e152668bf6b4b638',1,'arm_cfft_radix2_init_q31(arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q31.c']]], + ['arm_5fcfft_5fradix2_5finit_5fq31_2ec',['arm_cfft_radix2_init_q31.c',['../arm__cfft__radix2__init__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5finstance_5ff32',['arm_cfft_radix2_instance_f32',['../structarm__cfft__radix2__instance__f32.html',1,'']]], + ['arm_5fcfft_5fradix2_5finstance_5fq15',['arm_cfft_radix2_instance_q15',['../structarm__cfft__radix2__instance__q15.html',1,'']]], + ['arm_5fcfft_5fradix2_5finstance_5fq31',['arm_cfft_radix2_instance_q31',['../structarm__cfft__radix2__instance__q31.html',1,'']]], + ['arm_5fcfft_5fradix2_5fq15',['arm_cfft_radix2_q15',['../group___complex_f_f_t.html#ga55b424341dc3efd3fa0bcaaff4bdbf40',1,'arm_cfft_radix2_q15(const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc): arm_cfft_radix2_q15.c'],['../group___complex_f_f_t.html#ga55b424341dc3efd3fa0bcaaff4bdbf40',1,'arm_cfft_radix2_q15(const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc): arm_cfft_radix2_q15.c']]], + ['arm_5fcfft_5fradix2_5fq15_2ec',['arm_cfft_radix2_q15.c',['../arm__cfft__radix2__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5fq31',['arm_cfft_radix2_q31',['../group___complex_f_f_t.html#ga6321f703ec87a274aedaab33d3e766b4',1,'arm_cfft_radix2_q31(const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc): arm_cfft_radix2_q31.c'],['../group___complex_f_f_t.html#ga6321f703ec87a274aedaab33d3e766b4',1,'arm_cfft_radix2_q31(const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc): arm_cfft_radix2_q31.c']]], + ['arm_5fcfft_5fradix2_5fq31_2ec',['arm_cfft_radix2_q31.c',['../arm__cfft__radix2__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5ff32',['arm_cfft_radix4_f32',['../group___complex_f_f_t.html#ga521f670cd9c571bc61aff9bec89f4c26',1,'arm_cfft_radix4_f32(const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc): arm_cfft_radix4_f32.c'],['../group___complex_f_f_t.html#ga521f670cd9c571bc61aff9bec89f4c26',1,'arm_cfft_radix4_f32(const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc): arm_cfft_radix4_f32.c']]], + ['arm_5fcfft_5fradix4_5ff32_2ec',['arm_cfft_radix4_f32.c',['../arm__cfft__radix4__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5finit_5ff32',['arm_cfft_radix4_init_f32',['../group___complex_f_f_t.html#gaf336459f684f0b17bfae539ef1b1b78a',1,'arm_cfft_radix4_init_f32(arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_f32.c'],['../group___complex_f_f_t.html#gaf336459f684f0b17bfae539ef1b1b78a',1,'arm_cfft_radix4_init_f32(arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_f32.c']]], + ['arm_5fcfft_5fradix4_5finit_5ff32_2ec',['arm_cfft_radix4_init_f32.c',['../arm__cfft__radix4__init__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5finit_5fq15',['arm_cfft_radix4_init_q15',['../group___complex_f_f_t.html#ga0c2acfda3126c452e75b81669e8ad9ef',1,'arm_cfft_radix4_init_q15(arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q15.c'],['../group___complex_f_f_t.html#ga0c2acfda3126c452e75b81669e8ad9ef',1,'arm_cfft_radix4_init_q15(arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q15.c']]], + ['arm_5fcfft_5fradix4_5finit_5fq15_2ec',['arm_cfft_radix4_init_q15.c',['../arm__cfft__radix4__init__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5finit_5fq31',['arm_cfft_radix4_init_q31',['../group___complex_f_f_t.html#gad5caaafeec900c8ff72321c01bbd462c',1,'arm_cfft_radix4_init_q31(arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q31.c'],['../group___complex_f_f_t.html#gad5caaafeec900c8ff72321c01bbd462c',1,'arm_cfft_radix4_init_q31(arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q31.c']]], + ['arm_5fcfft_5fradix4_5finit_5fq31_2ec',['arm_cfft_radix4_init_q31.c',['../arm__cfft__radix4__init__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5finstance_5ff32',['arm_cfft_radix4_instance_f32',['../structarm__cfft__radix4__instance__f32.html',1,'']]], + ['arm_5fcfft_5fradix4_5finstance_5fq15',['arm_cfft_radix4_instance_q15',['../structarm__cfft__radix4__instance__q15.html',1,'']]], + ['arm_5fcfft_5fradix4_5finstance_5fq31',['arm_cfft_radix4_instance_q31',['../structarm__cfft__radix4__instance__q31.html',1,'']]], + ['arm_5fcfft_5fradix4_5fq15',['arm_cfft_radix4_q15',['../group___complex_f_f_t.html#ga8d66cdac41b8bf6cefdb895456eee84a',1,'arm_cfft_radix4_q15(const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc): arm_cfft_radix4_q15.c'],['../group___complex_f_f_t.html#ga8d66cdac41b8bf6cefdb895456eee84a',1,'arm_cfft_radix4_q15(const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc): arm_cfft_radix4_q15.c']]], + ['arm_5fcfft_5fradix4_5fq15_2ec',['arm_cfft_radix4_q15.c',['../arm__cfft__radix4__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5fq31',['arm_cfft_radix4_q31',['../group___complex_f_f_t.html#gafde3ee1f58cf393b45a9073174fff548',1,'arm_cfft_radix4_q31(const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc): arm_cfft_radix4_q31.c'],['../group___complex_f_f_t.html#gafde3ee1f58cf393b45a9073174fff548',1,'arm_cfft_radix4_q31(const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc): arm_cfft_radix4_q31.c']]], + ['arm_5fcfft_5fradix4_5fq31_2ec',['arm_cfft_radix4_q31.c',['../arm__cfft__radix4__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix4by2_5finverse_5fq15',['arm_cfft_radix4by2_inverse_q15',['../arm__cfft__q15_8c.html#abe669acc8db57d1fb9b1e2bba30f2224',1,'arm_cfft_q15.c']]], + ['arm_5fcfft_5fradix4by2_5finverse_5fq31',['arm_cfft_radix4by2_inverse_q31',['../arm__cfft__q31_8c.html#a3f3ae10bc2057cc1360abfa25f224c8c',1,'arm_cfft_q31.c']]], + ['arm_5fcfft_5fradix4by2_5fq15',['arm_cfft_radix4by2_q15',['../arm__cfft__q15_8c.html#af1d4a751153857c173511e0c77ab4fa9',1,'arm_cfft_q15.c']]], + ['arm_5fcfft_5fradix4by2_5fq31',['arm_cfft_radix4by2_q31',['../arm__cfft__q31_8c.html#af6df8bf714c30d44e6b871ea87d22b30',1,'arm_cfft_q31.c']]], + ['arm_5fcfft_5fradix8_5ff32_2ec',['arm_cfft_radix8_f32.c',['../arm__cfft__radix8__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix8by2_5ff32',['arm_cfft_radix8by2_f32',['../arm__cfft__f32_8c.html#ae99e2b173033e9910058869bdf0619d9',1,'arm_cfft_f32.c']]], + ['arm_5fcfft_5fradix8by4_5ff32',['arm_cfft_radix8by4_f32',['../arm__cfft__f32_8c.html#a4bb346f59bca06cebe0defc8e15b69a6',1,'arm_cfft_f32.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen1024',['arm_cfft_sR_f32_len1024',['../arm__const__structs_8c.html#a05abc294a9159abbd6ffb4f188fe18b1',1,'arm_cfft_sR_f32_len1024(): arm_const_structs.c'],['../arm__const__structs_8h.html#a05abc294a9159abbd6ffb4f188fe18b1',1,'arm_cfft_sR_f32_len1024(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen128',['arm_cfft_sR_f32_len128',['../arm__const__structs_8c.html#ad283193397ba476465a330db9a955973',1,'arm_cfft_sR_f32_len128(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad283193397ba476465a330db9a955973',1,'arm_cfft_sR_f32_len128(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen16',['arm_cfft_sR_f32_len16',['../arm__const__structs_8c.html#a27127e9d3deb59df12747233b1b9ea31',1,'arm_cfft_sR_f32_len16(): arm_const_structs.c'],['../arm__const__structs_8h.html#a27127e9d3deb59df12747233b1b9ea31',1,'arm_cfft_sR_f32_len16(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen2048',['arm_cfft_sR_f32_len2048',['../arm__const__structs_8c.html#a8d2fad347dcadc47377e1226231b9f62',1,'arm_cfft_sR_f32_len2048(): arm_const_structs.c'],['../arm__const__structs_8h.html#a8d2fad347dcadc47377e1226231b9f62',1,'arm_cfft_sR_f32_len2048(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen256',['arm_cfft_sR_f32_len256',['../arm__const__structs_8c.html#aeb2f0a0be605963264217cc10b7bd3b2',1,'arm_cfft_sR_f32_len256(): arm_const_structs.c'],['../arm__const__structs_8h.html#aeb2f0a0be605963264217cc10b7bd3b2',1,'arm_cfft_sR_f32_len256(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen32',['arm_cfft_sR_f32_len32',['../arm__const__structs_8c.html#a5fed2b5e0cc4cb5b8675f14daf226a25',1,'arm_cfft_sR_f32_len32(): arm_const_structs.c'],['../arm__const__structs_8h.html#a5fed2b5e0cc4cb5b8675f14daf226a25',1,'arm_cfft_sR_f32_len32(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen4096',['arm_cfft_sR_f32_len4096',['../arm__const__structs_8c.html#a01d2dbdb8193d43c2b7f003f9cb9a39d',1,'arm_cfft_sR_f32_len4096(): arm_const_structs.c'],['../arm__const__structs_8h.html#a01d2dbdb8193d43c2b7f003f9cb9a39d',1,'arm_cfft_sR_f32_len4096(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen512',['arm_cfft_sR_f32_len512',['../arm__const__structs_8c.html#a15f6e533f5cfeb014839303d8ed52e19',1,'arm_cfft_sR_f32_len512(): arm_const_structs.c'],['../arm__const__structs_8h.html#a15f6e533f5cfeb014839303d8ed52e19',1,'arm_cfft_sR_f32_len512(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen64',['arm_cfft_sR_f32_len64',['../arm__const__structs_8c.html#af94d90db836f662321946154c76b5b80',1,'arm_cfft_sR_f32_len64(): arm_const_structs.c'],['../arm__const__structs_8h.html#af94d90db836f662321946154c76b5b80',1,'arm_cfft_sR_f32_len64(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen1024',['arm_cfft_sR_q15_len1024',['../arm__const__structs_8c.html#ad343fb2e4cba826f092f9d72c4adc831',1,'arm_cfft_sR_q15_len1024(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad343fb2e4cba826f092f9d72c4adc831',1,'arm_cfft_sR_q15_len1024(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen128',['arm_cfft_sR_q15_len128',['../arm__const__structs_8c.html#a736a97efd37c6386dab8db730904f69b',1,'arm_cfft_sR_q15_len128(): arm_const_structs.c'],['../arm__const__structs_8h.html#a736a97efd37c6386dab8db730904f69b',1,'arm_cfft_sR_q15_len128(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen16',['arm_cfft_sR_q15_len16',['../arm__const__structs_8c.html#a7ed661717c58b18f3e557daa72f2b91b',1,'arm_cfft_sR_q15_len16(): arm_const_structs.c'],['../arm__const__structs_8h.html#a7ed661717c58b18f3e557daa72f2b91b',1,'arm_cfft_sR_q15_len16(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen2048',['arm_cfft_sR_q15_len2048',['../arm__const__structs_8c.html#a92c94dc79c66ec66c95f793aedb964b9',1,'arm_cfft_sR_q15_len2048(): arm_const_structs.c'],['../arm__const__structs_8h.html#a92c94dc79c66ec66c95f793aedb964b9',1,'arm_cfft_sR_q15_len2048(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen256',['arm_cfft_sR_q15_len256',['../arm__const__structs_8c.html#ad80be0db1ea40c66b079404c48d2dcf4',1,'arm_cfft_sR_q15_len256(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad80be0db1ea40c66b079404c48d2dcf4',1,'arm_cfft_sR_q15_len256(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen32',['arm_cfft_sR_q15_len32',['../arm__const__structs_8c.html#a8d5426a822a6017235b5e10119606a90',1,'arm_cfft_sR_q15_len32(): arm_const_structs.c'],['../arm__const__structs_8h.html#a8d5426a822a6017235b5e10119606a90',1,'arm_cfft_sR_q15_len32(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen4096',['arm_cfft_sR_q15_len4096',['../arm__const__structs_8c.html#ab57c118edaa3260f7f16686152845b18',1,'arm_cfft_sR_q15_len4096(): arm_const_structs.c'],['../arm__const__structs_8h.html#ab57c118edaa3260f7f16686152845b18',1,'arm_cfft_sR_q15_len4096(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen512',['arm_cfft_sR_q15_len512',['../arm__const__structs_8c.html#a273b91ec86bb2bd8ac14e69252d487fb',1,'arm_cfft_sR_q15_len512(): arm_const_structs.c'],['../arm__const__structs_8h.html#a273b91ec86bb2bd8ac14e69252d487fb',1,'arm_cfft_sR_q15_len512(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen64',['arm_cfft_sR_q15_len64',['../arm__const__structs_8c.html#a95c216e7dcfd59a8d40ef55ac223a749',1,'arm_cfft_sR_q15_len64(): arm_const_structs.c'],['../arm__const__structs_8h.html#a95c216e7dcfd59a8d40ef55ac223a749',1,'arm_cfft_sR_q15_len64(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen1024',['arm_cfft_sR_q31_len1024',['../arm__const__structs_8c.html#ada9813a027999f3cff066c9f7b5df51b',1,'arm_cfft_sR_q31_len1024(): arm_const_structs.c'],['../arm__const__structs_8h.html#ada9813a027999f3cff066c9f7b5df51b',1,'arm_cfft_sR_q31_len1024(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen128',['arm_cfft_sR_q31_len128',['../arm__const__structs_8c.html#a9a2fcdb54300f75ef1fafe02954e9a61',1,'arm_cfft_sR_q31_len128(): arm_const_structs.c'],['../arm__const__structs_8h.html#a9a2fcdb54300f75ef1fafe02954e9a61',1,'arm_cfft_sR_q31_len128(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen16',['arm_cfft_sR_q31_len16',['../arm__const__structs_8c.html#a1336431c4d2a88d32c42308cfe2defa1',1,'arm_cfft_sR_q31_len16(): arm_const_structs.c'],['../arm__const__structs_8h.html#a1336431c4d2a88d32c42308cfe2defa1',1,'arm_cfft_sR_q31_len16(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen2048',['arm_cfft_sR_q31_len2048',['../arm__const__structs_8c.html#a420622d75b277070784083ddd44b95fb',1,'arm_cfft_sR_q31_len2048(): arm_const_structs.c'],['../arm__const__structs_8h.html#a420622d75b277070784083ddd44b95fb',1,'arm_cfft_sR_q31_len2048(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen256',['arm_cfft_sR_q31_len256',['../arm__const__structs_8c.html#a3f2de67938bd228918e40f60f18dd6b5',1,'arm_cfft_sR_q31_len256(): arm_const_structs.c'],['../arm__const__structs_8h.html#a3f2de67938bd228918e40f60f18dd6b5',1,'arm_cfft_sR_q31_len256(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen32',['arm_cfft_sR_q31_len32',['../arm__const__structs_8c.html#a4c083c013ef17920cf8f28dc6f139a39',1,'arm_cfft_sR_q31_len32(): arm_const_structs.c'],['../arm__const__structs_8h.html#a4c083c013ef17920cf8f28dc6f139a39',1,'arm_cfft_sR_q31_len32(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen4096',['arm_cfft_sR_q31_len4096',['../arm__const__structs_8c.html#abfc9595f40a1c7aaba85e1328d824b1c',1,'arm_cfft_sR_q31_len4096(): arm_const_structs.c'],['../arm__const__structs_8h.html#abfc9595f40a1c7aaba85e1328d824b1c',1,'arm_cfft_sR_q31_len4096(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen512',['arm_cfft_sR_q31_len512',['../arm__const__structs_8c.html#aa337272cf78aaf6075e7e19d0a097d6f',1,'arm_cfft_sR_q31_len512(): arm_const_structs.c'],['../arm__const__structs_8h.html#aa337272cf78aaf6075e7e19d0a097d6f',1,'arm_cfft_sR_q31_len512(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen64',['arm_cfft_sR_q31_len64',['../arm__const__structs_8c.html#ad11668a5662334e0bc6a2811c9cb1047',1,'arm_cfft_sR_q31_len64(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad11668a5662334e0bc6a2811c9cb1047',1,'arm_cfft_sR_q31_len64(): arm_const_structs.c']]], + ['arm_5fcircularread_5ff32',['arm_circularRead_f32',['../arm__math_8h.html#ae469fac5e1df35f8bcf1b3d7c3136484',1,'arm_math.h']]], + ['arm_5fcircularread_5fq15',['arm_circularRead_q15',['../arm__math_8h.html#ad5fb134f83f2c802261f172e3dceb131',1,'arm_math.h']]], + ['arm_5fcircularread_5fq7',['arm_circularRead_q7',['../arm__math_8h.html#a30aa80ea20abe71f3afa99f2f0391ed5',1,'arm_math.h']]], + ['arm_5fcircularwrite_5ff32',['arm_circularWrite_f32',['../arm__math_8h.html#a6ff56c0896ce00712ba8f2fcf72cacd3',1,'arm_math.h']]], + ['arm_5fcircularwrite_5fq15',['arm_circularWrite_q15',['../arm__math_8h.html#a3ba2d215477e692def7fda46dda883ed',1,'arm_math.h']]], + ['arm_5fcircularwrite_5fq7',['arm_circularWrite_q7',['../arm__math_8h.html#addba85b1f7fbd472fd00ddd9ce43aea8',1,'arm_math.h']]], + ['arm_5fclarke_5ff32',['arm_clarke_f32',['../group__clarke.html#ga2b4ebec76215e1277c970c269ffdbd76',1,'arm_math.h']]], + ['arm_5fclarke_5fq31',['arm_clarke_q31',['../group__clarke.html#ga7fd106ca8d346a2a472842e0656014c1',1,'arm_math.h']]], + ['arm_5fclass_5fmarks_5fexample_5ff32_2ec',['arm_class_marks_example_f32.c',['../_a_r_m_2arm__class__marks__example__f32_8c.html',1,'']]], + ['arm_5fclip_5ff32',['arm_clip_f32',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c']]], + ['arm_5fcmplx_5fconj_5ff32',['arm_cmplx_conj_f32',['../group__cmplx__conj.html#ga3a102aead6460ad9fcb0626f6b226ffb',1,'arm_cmplx_conj_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_conj_f32.c'],['../group__cmplx__conj.html#ga3a102aead6460ad9fcb0626f6b226ffb',1,'arm_cmplx_conj_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_conj_f32.c']]], + ['arm_5fcmplx_5fconj_5ff32_2ec',['arm_cmplx_conj_f32.c',['../arm__cmplx__conj__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fconj_5fq15',['arm_cmplx_conj_q15',['../group__cmplx__conj.html#gaf47689ae07962acaecb8ddde556df4a4',1,'arm_cmplx_conj_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_conj_q15.c'],['../group__cmplx__conj.html#gaf47689ae07962acaecb8ddde556df4a4',1,'arm_cmplx_conj_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_conj_q15.c']]], + ['arm_5fcmplx_5fconj_5fq15_2ec',['arm_cmplx_conj_q15.c',['../arm__cmplx__conj__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fconj_5fq31',['arm_cmplx_conj_q31',['../group__cmplx__conj.html#gafecc94879a383c5208ec3ef99485e4b5',1,'arm_cmplx_conj_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_conj_q31.c'],['../group__cmplx__conj.html#gafecc94879a383c5208ec3ef99485e4b5',1,'arm_cmplx_conj_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_conj_q31.c']]], + ['arm_5fcmplx_5fconj_5fq31_2ec',['arm_cmplx_conj_q31.c',['../arm__cmplx__conj__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fdot_5fprod_5ff32',['arm_cmplx_dot_prod_f32',['../group__cmplx__dot__prod.html#gadcfaf567a25eb641da4043eafb9bb076',1,'arm_cmplx_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult): arm_cmplx_dot_prod_f32.c'],['../group__cmplx__dot__prod.html#gadcfaf567a25eb641da4043eafb9bb076',1,'arm_cmplx_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult): arm_cmplx_dot_prod_f32.c']]], + ['arm_5fcmplx_5fdot_5fprod_5ff32_2ec',['arm_cmplx_dot_prod_f32.c',['../arm__cmplx__dot__prod__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fdot_5fprod_5fq15',['arm_cmplx_dot_prod_q15',['../group__cmplx__dot__prod.html#ga2b08b5e8001d2c15204639d00893fc70',1,'arm_cmplx_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult): arm_cmplx_dot_prod_q15.c'],['../group__cmplx__dot__prod.html#ga2b08b5e8001d2c15204639d00893fc70',1,'arm_cmplx_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult): arm_cmplx_dot_prod_q15.c']]], + ['arm_5fcmplx_5fdot_5fprod_5fq15_2ec',['arm_cmplx_dot_prod_q15.c',['../arm__cmplx__dot__prod__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fdot_5fprod_5fq31',['arm_cmplx_dot_prod_q31',['../group__cmplx__dot__prod.html#ga5b731a59db062a9ad84562ef68a6c8af',1,'arm_cmplx_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult): arm_cmplx_dot_prod_q31.c'],['../group__cmplx__dot__prod.html#ga5b731a59db062a9ad84562ef68a6c8af',1,'arm_cmplx_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult): arm_cmplx_dot_prod_q31.c']]], + ['arm_5fcmplx_5fdot_5fprod_5fq31_2ec',['arm_cmplx_dot_prod_q31.c',['../arm__cmplx__dot__prod__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5ff32',['arm_cmplx_mag_f32',['../group__cmplx__mag.html#gae45024c497392cde2ae358a76d435213',1,'arm_cmplx_mag_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_f32.c'],['../group__cmplx__mag.html#gae45024c497392cde2ae358a76d435213',1,'arm_cmplx_mag_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_f32.c']]], + ['arm_5fcmplx_5fmag_5ff32_2ec',['arm_cmplx_mag_f32.c',['../arm__cmplx__mag__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fq15',['arm_cmplx_mag_q15',['../group__cmplx__mag.html#ga0a4a8f77a6a51d9b3f3b9d729f85b7a4',1,'arm_cmplx_mag_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_q15.c'],['../group__cmplx__mag.html#ga0a4a8f77a6a51d9b3f3b9d729f85b7a4',1,'arm_cmplx_mag_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_q15.c']]], + ['arm_5fcmplx_5fmag_5fq15_2ec',['arm_cmplx_mag_q15.c',['../arm__cmplx__mag__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fq31',['arm_cmplx_mag_q31',['../group__cmplx__mag.html#ga14f82f9230e9d96d5b9774e2fefcb7be',1,'arm_cmplx_mag_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_q31.c'],['../group__cmplx__mag.html#ga14f82f9230e9d96d5b9774e2fefcb7be',1,'arm_cmplx_mag_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_q31.c']]], + ['arm_5fcmplx_5fmag_5fq31_2ec',['arm_cmplx_mag_q31.c',['../arm__cmplx__mag__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fsquared_5ff32',['arm_cmplx_mag_squared_f32',['../group__cmplx__mag__squared.html#gaa7faccc0d96b061d8b7d0d7d82045074',1,'arm_cmplx_mag_squared_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_f32.c'],['../group__cmplx__mag__squared.html#gaa7faccc0d96b061d8b7d0d7d82045074',1,'arm_cmplx_mag_squared_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_f32.c']]], + ['arm_5fcmplx_5fmag_5fsquared_5ff32_2ec',['arm_cmplx_mag_squared_f32.c',['../arm__cmplx__mag__squared__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq15',['arm_cmplx_mag_squared_q15',['../group__cmplx__mag__squared.html#ga45537f576102d960d467eb722b8431f2',1,'arm_cmplx_mag_squared_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q15.c'],['../group__cmplx__mag__squared.html#ga45537f576102d960d467eb722b8431f2',1,'arm_cmplx_mag_squared_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q15.c']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq15_2ec',['arm_cmplx_mag_squared_q15.c',['../arm__cmplx__mag__squared__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq31',['arm_cmplx_mag_squared_q31',['../group__cmplx__mag__squared.html#ga384b0538101e8c03fa4fa14271e63b04',1,'arm_cmplx_mag_squared_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q31.c'],['../group__cmplx__mag__squared.html#ga384b0538101e8c03fa4fa14271e63b04',1,'arm_cmplx_mag_squared_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q31.c']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq31_2ec',['arm_cmplx_mag_squared_q31.c',['../arm__cmplx__mag__squared__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5fcmplx_5ff32',['arm_cmplx_mult_cmplx_f32',['../group___cmplx_by_cmplx_mult.html#ga14b47080054a1ba1250a86805be1ff6b',1,'arm_cmplx_mult_cmplx_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_f32.c'],['../group___cmplx_by_cmplx_mult.html#ga14b47080054a1ba1250a86805be1ff6b',1,'arm_cmplx_mult_cmplx_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_f32.c']]], + ['arm_5fcmplx_5fmult_5fcmplx_5ff32_2ec',['arm_cmplx_mult_cmplx_f32.c',['../arm__cmplx__mult__cmplx__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq15',['arm_cmplx_mult_cmplx_q15',['../group___cmplx_by_cmplx_mult.html#ga67e96abfc9c3e30efb70a2ec9d0fe7e8',1,'arm_cmplx_mult_cmplx_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q15.c'],['../group___cmplx_by_cmplx_mult.html#ga67e96abfc9c3e30efb70a2ec9d0fe7e8',1,'arm_cmplx_mult_cmplx_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q15.c']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq15_2ec',['arm_cmplx_mult_cmplx_q15.c',['../arm__cmplx__mult__cmplx__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq31',['arm_cmplx_mult_cmplx_q31',['../group___cmplx_by_cmplx_mult.html#ga1829e50993a90742de225a0ce4213838',1,'arm_cmplx_mult_cmplx_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q31.c'],['../group___cmplx_by_cmplx_mult.html#ga1829e50993a90742de225a0ce4213838',1,'arm_cmplx_mult_cmplx_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q31.c']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq31_2ec',['arm_cmplx_mult_cmplx_q31.c',['../arm__cmplx__mult__cmplx__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5freal_5ff32',['arm_cmplx_mult_real_f32',['../group___cmplx_by_real_mult.html#ga9c18616f56cb4d3c0889ce0b339221ca',1,'arm_cmplx_mult_real_f32(float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_f32.c'],['../group___cmplx_by_real_mult.html#ga9c18616f56cb4d3c0889ce0b339221ca',1,'arm_cmplx_mult_real_f32(float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_f32.c']]], + ['arm_5fcmplx_5fmult_5freal_5ff32_2ec',['arm_cmplx_mult_real_f32.c',['../arm__cmplx__mult__real__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5freal_5fq15',['arm_cmplx_mult_real_q15',['../group___cmplx_by_real_mult.html#ga3bd8889dcb45980e1d3e53344df54e85',1,'arm_cmplx_mult_real_q15(q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q15.c'],['../group___cmplx_by_real_mult.html#ga3bd8889dcb45980e1d3e53344df54e85',1,'arm_cmplx_mult_real_q15(q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q15.c']]], + ['arm_5fcmplx_5fmult_5freal_5fq15_2ec',['arm_cmplx_mult_real_q15.c',['../arm__cmplx__mult__real__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5freal_5fq31',['arm_cmplx_mult_real_q31',['../group___cmplx_by_real_mult.html#ga715e4bb8e945b8ca51ec5237611697ce',1,'arm_cmplx_mult_real_q31(q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q31.c'],['../group___cmplx_by_real_mult.html#ga715e4bb8e945b8ca51ec5237611697ce',1,'arm_cmplx_mult_real_q31(q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q31.c']]], + ['arm_5fcmplx_5fmult_5freal_5fq31_2ec',['arm_cmplx_mult_real_q31.c',['../arm__cmplx__mult__real__q31_8c.html',1,'']]], + ['arm_5fcommon_5ftables_2ec',['arm_common_tables.c',['../arm__common__tables_8c.html',1,'']]], + ['arm_5fcommon_5ftables_2eh',['arm_common_tables.h',['../arm__common__tables_8h.html',1,'']]], + ['arm_5fcompare_5ffixed_5fq15',['arm_compare_fixed_q15',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5fcompare_5ffixed_5fq31',['arm_compare_fixed_q31',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5fconst_5fstructs_2ec',['arm_const_structs.c',['../arm__const__structs_8c.html',1,'']]], + ['arm_5fconst_5fstructs_2eh',['arm_const_structs.h',['../arm__const__structs_8h.html',1,'']]], + ['arm_5fconv_5ff32',['arm_conv_f32',['../group___conv.html#ga3f860dc98c6fc4cafc421e4a2aed3c89',1,'arm_conv_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_conv_f32.c'],['../group___conv.html#ga3f860dc98c6fc4cafc421e4a2aed3c89',1,'arm_conv_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_conv_f32.c']]], + ['arm_5fconv_5ff32_2ec',['arm_conv_f32.c',['../arm__conv__f32_8c.html',1,'']]], + ['arm_5fconv_5ffast_5fopt_5fq15',['arm_conv_fast_opt_q15',['../group___conv.html#gaf16f490d245391ec18a42adc73d6d749',1,'arm_conv_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_fast_opt_q15.c'],['../group___conv.html#gaf16f490d245391ec18a42adc73d6d749',1,'arm_conv_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_fast_opt_q15.c']]], + ['arm_5fconv_5ffast_5fopt_5fq15_2ec',['arm_conv_fast_opt_q15.c',['../arm__conv__fast__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5ffast_5fq15',['arm_conv_fast_q15',['../group___conv.html#gad75ca978ce906e04abdf86a8d76306d4',1,'arm_conv_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_fast_q15.c'],['../group___conv.html#gad75ca978ce906e04abdf86a8d76306d4',1,'arm_conv_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_fast_q15.c']]], + ['arm_5fconv_5ffast_5fq15_2ec',['arm_conv_fast_q15.c',['../arm__conv__fast__q15_8c.html',1,'']]], + ['arm_5fconv_5ffast_5fq31',['arm_conv_fast_q31',['../group___conv.html#ga51112dcdf9b3624eb05182cdc4da9ec0',1,'arm_conv_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_fast_q31.c'],['../group___conv.html#ga51112dcdf9b3624eb05182cdc4da9ec0',1,'arm_conv_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_fast_q31.c']]], + ['arm_5fconv_5ffast_5fq31_2ec',['arm_conv_fast_q31.c',['../arm__conv__fast__q31_8c.html',1,'']]], + ['arm_5fconv_5fopt_5fq15',['arm_conv_opt_q15',['../group___conv.html#gac77dbcaef5c754cac27eab96c4753a3c',1,'arm_conv_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q15.c'],['../group___conv.html#gac77dbcaef5c754cac27eab96c4753a3c',1,'arm_conv_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q15.c']]], + ['arm_5fconv_5fopt_5fq15_2ec',['arm_conv_opt_q15.c',['../arm__conv__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5fopt_5fq7',['arm_conv_opt_q7',['../group___conv.html#ga4c7cf073e89d6d57cc4e711f078c3f68',1,'arm_conv_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q7.c'],['../group___conv.html#ga4c7cf073e89d6d57cc4e711f078c3f68',1,'arm_conv_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q7.c']]], + ['arm_5fconv_5fopt_5fq7_2ec',['arm_conv_opt_q7.c',['../arm__conv__opt__q7_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ff32',['arm_conv_partial_f32',['../group___partial_conv.html#ga16d10f32072cd79fc5fb6e785df45f5e',1,'arm_conv_partial_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_f32.c'],['../group___partial_conv.html#ga16d10f32072cd79fc5fb6e785df45f5e',1,'arm_conv_partial_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_f32.c']]], + ['arm_5fconv_5fpartial_5ff32_2ec',['arm_conv_partial_f32.c',['../arm__conv__partial__f32_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ffast_5fopt_5fq15',['arm_conv_partial_fast_opt_q15',['../group___partial_conv.html#ga3de9c4ddcc7886de25b70d875099a8d9',1,'arm_conv_partial_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_fast_opt_q15.c'],['../group___partial_conv.html#ga3de9c4ddcc7886de25b70d875099a8d9',1,'arm_conv_partial_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_fast_opt_q15.c']]], + ['arm_5fconv_5fpartial_5ffast_5fopt_5fq15_2ec',['arm_conv_partial_fast_opt_q15.c',['../arm__conv__partial__fast__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ffast_5fq15',['arm_conv_partial_fast_q15',['../group___partial_conv.html#ga1e4d43385cb62262a78c6752fe1fafb2',1,'arm_conv_partial_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q15.c'],['../group___partial_conv.html#ga1e4d43385cb62262a78c6752fe1fafb2',1,'arm_conv_partial_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q15.c']]], + ['arm_5fconv_5fpartial_5ffast_5fq15_2ec',['arm_conv_partial_fast_q15.c',['../arm__conv__partial__fast__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ffast_5fq31',['arm_conv_partial_fast_q31',['../group___partial_conv.html#ga10c5294cda8c4985386f4e3944be7650',1,'arm_conv_partial_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q31.c'],['../group___partial_conv.html#ga10c5294cda8c4985386f4e3944be7650',1,'arm_conv_partial_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q31.c']]], + ['arm_5fconv_5fpartial_5ffast_5fq31_2ec',['arm_conv_partial_fast_q31.c',['../arm__conv__partial__fast__q31_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fopt_5fq15',['arm_conv_partial_opt_q15',['../group___partial_conv.html#ga834b23b4ade8682beeb55778399101f8',1,'arm_conv_partial_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q15.c'],['../group___partial_conv.html#ga834b23b4ade8682beeb55778399101f8',1,'arm_conv_partial_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q15.c']]], + ['arm_5fconv_5fpartial_5fopt_5fq15_2ec',['arm_conv_partial_opt_q15.c',['../arm__conv__partial__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fopt_5fq7',['arm_conv_partial_opt_q7',['../group___partial_conv.html#ga3707e16af1435b215840006a7ab0c98f',1,'arm_conv_partial_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q7.c'],['../group___partial_conv.html#ga3707e16af1435b215840006a7ab0c98f',1,'arm_conv_partial_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q7.c']]], + ['arm_5fconv_5fpartial_5fopt_5fq7_2ec',['arm_conv_partial_opt_q7.c',['../arm__conv__partial__opt__q7_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fq15',['arm_conv_partial_q15',['../group___partial_conv.html#ga209a2a913a0c5e5679c5988da8f46b03',1,'arm_conv_partial_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q15.c'],['../group___partial_conv.html#ga209a2a913a0c5e5679c5988da8f46b03',1,'arm_conv_partial_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q15.c']]], + ['arm_5fconv_5fpartial_5fq15_2ec',['arm_conv_partial_q15.c',['../arm__conv__partial__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fq31',['arm_conv_partial_q31',['../group___partial_conv.html#ga78e73a5f02d103168a09821fb461e77a',1,'arm_conv_partial_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q31.c'],['../group___partial_conv.html#ga78e73a5f02d103168a09821fb461e77a',1,'arm_conv_partial_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q31.c']]], + ['arm_5fconv_5fpartial_5fq31_2ec',['arm_conv_partial_q31.c',['../arm__conv__partial__q31_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fq7',['arm_conv_partial_q7',['../group___partial_conv.html#ga8567259fe18396dd972242c41741ebf4',1,'arm_conv_partial_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q7.c'],['../group___partial_conv.html#ga8567259fe18396dd972242c41741ebf4',1,'arm_conv_partial_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q7.c']]], + ['arm_5fconv_5fpartial_5fq7_2ec',['arm_conv_partial_q7.c',['../arm__conv__partial__q7_8c.html',1,'']]], + ['arm_5fconv_5fq15',['arm_conv_q15',['../group___conv.html#gaccd6a89b0ff7a94df64610598e6e6893',1,'arm_conv_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_q15.c'],['../group___conv.html#gaccd6a89b0ff7a94df64610598e6e6893',1,'arm_conv_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_q15.c']]], + ['arm_5fconv_5fq15_2ec',['arm_conv_q15.c',['../arm__conv__q15_8c.html',1,'']]], + ['arm_5fconv_5fq31',['arm_conv_q31',['../group___conv.html#ga946b58da734f1e4e78c91fcaab4b12b6',1,'arm_conv_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_q31.c'],['../group___conv.html#ga946b58da734f1e4e78c91fcaab4b12b6',1,'arm_conv_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_q31.c']]], + ['arm_5fconv_5fq31_2ec',['arm_conv_q31.c',['../arm__conv__q31_8c.html',1,'']]], + ['arm_5fconv_5fq7',['arm_conv_q7',['../group___conv.html#gae2070cb792a167e78dbad8d06b97cdab',1,'arm_conv_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_conv_q7.c'],['../group___conv.html#gae2070cb792a167e78dbad8d06b97cdab',1,'arm_conv_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_conv_q7.c']]], + ['arm_5fconv_5fq7_2ec',['arm_conv_q7.c',['../arm__conv__q7_8c.html',1,'']]], + ['arm_5fconvolution_5fexample_5ff32_2ec',['arm_convolution_example_f32.c',['../_a_r_m_2arm__convolution__example__f32_8c.html',1,'']]], + ['arm_5fcopy_5ff32',['arm_copy_f32',['../group__copy.html#gadd1f737e677e0e6ca31767c7001417b3',1,'arm_copy_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_copy_f32.c'],['../group__copy.html#gadd1f737e677e0e6ca31767c7001417b3',1,'arm_copy_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_copy_f32.c']]], + ['arm_5fcopy_5ff32_2ec',['arm_copy_f32.c',['../arm__copy__f32_8c.html',1,'']]], + ['arm_5fcopy_5fq15',['arm_copy_q15',['../group__copy.html#ga872ca4cfc18c680b8991ccd569a5fda0',1,'arm_copy_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_copy_q15.c'],['../group__copy.html#ga872ca4cfc18c680b8991ccd569a5fda0',1,'arm_copy_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_copy_q15.c']]], + ['arm_5fcopy_5fq15_2ec',['arm_copy_q15.c',['../arm__copy__q15_8c.html',1,'']]], + ['arm_5fcopy_5fq31',['arm_copy_q31',['../group__copy.html#gaddf70be7e3f87e535c324862b501f3f9',1,'arm_copy_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_copy_q31.c'],['../group__copy.html#gaddf70be7e3f87e535c324862b501f3f9',1,'arm_copy_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_copy_q31.c']]], + ['arm_5fcopy_5fq31_2ec',['arm_copy_q31.c',['../arm__copy__q31_8c.html',1,'']]], + ['arm_5fcopy_5fq7',['arm_copy_q7',['../group__copy.html#ga467579beda492aa92797529d794c88fb',1,'arm_copy_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_copy_q7.c'],['../group__copy.html#ga467579beda492aa92797529d794c88fb',1,'arm_copy_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_copy_q7.c']]], + ['arm_5fcopy_5fq7_2ec',['arm_copy_q7.c',['../arm__copy__q7_8c.html',1,'']]], + ['arm_5fcorrelate_5ff32',['arm_correlate_f32',['../group___corr.html#ga22021e4222773f01e9960358a531cfb8',1,'arm_correlate_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_correlate_f32.c'],['../group___corr.html#ga22021e4222773f01e9960358a531cfb8',1,'arm_correlate_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_correlate_f32.c']]], + ['arm_5fcorrelate_5ff32_2ec',['arm_correlate_f32.c',['../arm__correlate__f32_8c.html',1,'']]], + ['arm_5fcorrelate_5ffast_5fopt_5fq15',['arm_correlate_fast_opt_q15',['../group___corr.html#ga40a0236b17220e8e22a22b5bc1c53c6b',1,'arm_correlate_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_fast_opt_q15.c'],['../group___corr.html#ga40a0236b17220e8e22a22b5bc1c53c6b',1,'arm_correlate_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_fast_opt_q15.c']]], + ['arm_5fcorrelate_5ffast_5fopt_5fq15_2ec',['arm_correlate_fast_opt_q15.c',['../arm__correlate__fast__opt__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5ffast_5fq15',['arm_correlate_fast_q15',['../group___corr.html#gac8de3da44f58e86c2c86156276ca154f',1,'arm_correlate_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_fast_q15.c'],['../group___corr.html#gac8de3da44f58e86c2c86156276ca154f',1,'arm_correlate_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_fast_q15.c']]], + ['arm_5fcorrelate_5ffast_5fq15_2ec',['arm_correlate_fast_q15.c',['../arm__correlate__fast__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5ffast_5fq31',['arm_correlate_fast_q31',['../group___corr.html#gabecd3d7b077dbbef43f93e9e037815ed',1,'arm_correlate_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_fast_q31.c'],['../group___corr.html#gabecd3d7b077dbbef43f93e9e037815ed',1,'arm_correlate_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_fast_q31.c']]], + ['arm_5fcorrelate_5ffast_5fq31_2ec',['arm_correlate_fast_q31.c',['../arm__correlate__fast__q31_8c.html',1,'']]], + ['arm_5fcorrelate_5fopt_5fq15',['arm_correlate_opt_q15',['../group___corr.html#gad71c0ec70ec69edbc48563d9a5f68451',1,'arm_correlate_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_opt_q15.c'],['../group___corr.html#gad71c0ec70ec69edbc48563d9a5f68451',1,'arm_correlate_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_opt_q15.c']]], + ['arm_5fcorrelate_5fopt_5fq15_2ec',['arm_correlate_opt_q15.c',['../arm__correlate__opt__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5fopt_5fq7',['arm_correlate_opt_q7',['../group___corr.html#ga746e8857cafe33ec5d6780729c18c311',1,'arm_correlate_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_correlate_opt_q7.c'],['../group___corr.html#ga746e8857cafe33ec5d6780729c18c311',1,'arm_correlate_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_correlate_opt_q7.c']]], + ['arm_5fcorrelate_5fopt_5fq7_2ec',['arm_correlate_opt_q7.c',['../arm__correlate__opt__q7_8c.html',1,'']]], + ['arm_5fcorrelate_5fq15',['arm_correlate_q15',['../group___corr.html#ga5ec96b8e420d68b0e626df0812274d46',1,'arm_correlate_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_q15.c'],['../group___corr.html#ga5ec96b8e420d68b0e626df0812274d46',1,'arm_correlate_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_q15.c']]], + ['arm_5fcorrelate_5fq15_2ec',['arm_correlate_q15.c',['../arm__correlate__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5fq31',['arm_correlate_q31',['../group___corr.html#ga1367dc6c80476406c951e68d7fac4e8c',1,'arm_correlate_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_q31.c'],['../group___corr.html#ga1367dc6c80476406c951e68d7fac4e8c',1,'arm_correlate_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_q31.c']]], + ['arm_5fcorrelate_5fq31_2ec',['arm_correlate_q31.c',['../arm__correlate__q31_8c.html',1,'']]], + ['arm_5fcorrelate_5fq7',['arm_correlate_q7',['../group___corr.html#ga284ddcc49e4ac532d52a70d0383c5992',1,'arm_correlate_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_correlate_q7.c'],['../group___corr.html#ga284ddcc49e4ac532d52a70d0383c5992',1,'arm_correlate_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_correlate_q7.c']]], + ['arm_5fcorrelate_5fq7_2ec',['arm_correlate_q7.c',['../arm__correlate__q7_8c.html',1,'']]], + ['arm_5fcos_5ff32',['arm_cos_f32',['../group__cos.html#gace15287f9c64b9b4084d1c797d4c49d8',1,'arm_cos_f32(float32_t x): arm_cos_f32.c'],['../group__cos.html#gace15287f9c64b9b4084d1c797d4c49d8',1,'arm_cos_f32(float32_t x): arm_cos_f32.c']]], + ['arm_5fcos_5ff32_2ec',['arm_cos_f32.c',['../arm__cos__f32_8c.html',1,'']]], + ['arm_5fcos_5fq15',['arm_cos_q15',['../group__cos.html#gadfd60c24def501638c0d5db20f4c869b',1,'arm_cos_q15(q15_t x): arm_cos_q15.c'],['../group__cos.html#gadfd60c24def501638c0d5db20f4c869b',1,'arm_cos_q15(q15_t x): arm_cos_q15.c']]], + ['arm_5fcos_5fq15_2ec',['arm_cos_q15.c',['../arm__cos__q15_8c.html',1,'']]], + ['arm_5fcos_5fq31',['arm_cos_q31',['../group__cos.html#gad80f121949ef885a77d83ab36e002567',1,'arm_cos_q31(q31_t x): arm_cos_q31.c'],['../group__cos.html#gad80f121949ef885a77d83ab36e002567',1,'arm_cos_q31(q31_t x): arm_cos_q31.c']]], + ['arm_5fcos_5fq31_2ec',['arm_cos_q31.c',['../arm__cos__q31_8c.html',1,'']]], + ['arm_5fdct4_5ff32',['arm_dct4_f32',['../group___d_c_t4___i_d_c_t4.html#gafd538d68886848bc090ec2b0d364cc81',1,'arm_dct4_f32(const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer): arm_dct4_f32.c'],['../group___d_c_t4___i_d_c_t4.html#gafd538d68886848bc090ec2b0d364cc81',1,'arm_dct4_f32(const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer): arm_dct4_f32.c']]], + ['arm_5fdct4_5ff32_2ec',['arm_dct4_f32.c',['../arm__dct4__f32_8c.html',1,'']]], + ['arm_5fdct4_5finit_5ff32',['arm_dct4_init_f32',['../group___d_c_t4___i_d_c_t4.html#gab094ad3bc6fa1b84e8b12a24e1850a06',1,'arm_dct4_init_f32(arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize): arm_dct4_init_f32.c'],['../group___d_c_t4___i_d_c_t4.html#gab094ad3bc6fa1b84e8b12a24e1850a06',1,'arm_dct4_init_f32(arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize): arm_dct4_init_f32.c']]], + ['arm_5fdct4_5finit_5ff32_2ec',['arm_dct4_init_f32.c',['../arm__dct4__init__f32_8c.html',1,'']]], + ['arm_5fdct4_5finit_5fq15',['arm_dct4_init_q15',['../group___d_c_t4___i_d_c_t4.html#ga966fd1b66a80873964533703ab5dc054',1,'arm_dct4_init_q15(arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize): arm_dct4_init_q15.c'],['../group___d_c_t4___i_d_c_t4.html#ga966fd1b66a80873964533703ab5dc054',1,'arm_dct4_init_q15(arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize): arm_dct4_init_q15.c']]], + ['arm_5fdct4_5finit_5fq15_2ec',['arm_dct4_init_q15.c',['../arm__dct4__init__q15_8c.html',1,'']]], + ['arm_5fdct4_5finit_5fq31',['arm_dct4_init_q31',['../group___d_c_t4___i_d_c_t4.html#ga631bb59c7c97c814ff7147ecba6a716a',1,'arm_dct4_init_q31(arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize): arm_dct4_init_q31.c'],['../group___d_c_t4___i_d_c_t4.html#ga631bb59c7c97c814ff7147ecba6a716a',1,'arm_dct4_init_q31(arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize): arm_dct4_init_q31.c']]], + ['arm_5fdct4_5finit_5fq31_2ec',['arm_dct4_init_q31.c',['../arm__dct4__init__q31_8c.html',1,'']]], + ['arm_5fdct4_5finstance_5ff32',['arm_dct4_instance_f32',['../structarm__dct4__instance__f32.html',1,'']]], + ['arm_5fdct4_5finstance_5fq15',['arm_dct4_instance_q15',['../structarm__dct4__instance__q15.html',1,'']]], + ['arm_5fdct4_5finstance_5fq31',['arm_dct4_instance_q31',['../structarm__dct4__instance__q31.html',1,'']]], + ['arm_5fdct4_5fq15',['arm_dct4_q15',['../group___d_c_t4___i_d_c_t4.html#ga114cb9635059f678df291fcc887aaf2b',1,'arm_dct4_q15(const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer): arm_dct4_q15.c'],['../group___d_c_t4___i_d_c_t4.html#ga114cb9635059f678df291fcc887aaf2b',1,'arm_dct4_q15(const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer): arm_dct4_q15.c']]], + ['arm_5fdct4_5fq15_2ec',['arm_dct4_q15.c',['../arm__dct4__q15_8c.html',1,'']]], + ['arm_5fdct4_5fq31',['arm_dct4_q31',['../group___d_c_t4___i_d_c_t4.html#gad04d0baab6ed081d8e8afe02538eb80b',1,'arm_dct4_q31(const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer): arm_dct4_q31.c'],['../group___d_c_t4___i_d_c_t4.html#gad04d0baab6ed081d8e8afe02538eb80b',1,'arm_dct4_q31(const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer): arm_dct4_q31.c']]], + ['arm_5fdct4_5fq31_2ec',['arm_dct4_q31.c',['../arm__dct4__q31_8c.html',1,'']]], + ['arm_5fdot_5fprod_5ff32',['arm_dot_prod_f32',['../group__dot__prod.html#ga55418d4362f6ba84c327f9b4f089a8c3',1,'arm_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result): arm_dot_prod_f32.c'],['../group__dot__prod.html#ga55418d4362f6ba84c327f9b4f089a8c3',1,'arm_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result): arm_dot_prod_f32.c']]], + ['arm_5fdot_5fprod_5ff32_2ec',['arm_dot_prod_f32.c',['../arm__dot__prod__f32_8c.html',1,'']]], + ['arm_5fdot_5fprod_5fq15',['arm_dot_prod_q15',['../group__dot__prod.html#ga436d5bed28a4b73b24acbde436a3044b',1,'arm_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q15.c'],['../group__dot__prod.html#ga436d5bed28a4b73b24acbde436a3044b',1,'arm_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q15.c']]], + ['arm_5fdot_5fprod_5fq15_2ec',['arm_dot_prod_q15.c',['../arm__dot__prod__q15_8c.html',1,'']]], + ['arm_5fdot_5fprod_5fq31',['arm_dot_prod_q31',['../group__dot__prod.html#gab15d8fa060fc85b4d948d091b7deaa11',1,'arm_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q31.c'],['../group__dot__prod.html#gab15d8fa060fc85b4d948d091b7deaa11',1,'arm_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q31.c']]], + ['arm_5fdot_5fprod_5fq31_2ec',['arm_dot_prod_q31.c',['../arm__dot__prod__q31_8c.html',1,'']]], + ['arm_5fdot_5fprod_5fq7',['arm_dot_prod_q7',['../group__dot__prod.html#ga9c3293a50ac7ec8ba928bf8e3aaea6c1',1,'arm_dot_prod_q7(q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result): arm_dot_prod_q7.c'],['../group__dot__prod.html#ga9c3293a50ac7ec8ba928bf8e3aaea6c1',1,'arm_dot_prod_q7(q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result): arm_dot_prod_q7.c']]], + ['arm_5fdot_5fprod_5fq7_2ec',['arm_dot_prod_q7.c',['../arm__dot__prod__q7_8c.html',1,'']]], + ['arm_5fdotproduct_5fexample_5ff32_2ec',['arm_dotproduct_example_f32.c',['../_a_r_m_2arm__dotproduct__example__f32_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fdata_2ec',['arm_fft_bin_data.c',['../_a_r_m_2arm__fft__bin__data_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fexample_5ff32_2ec',['arm_fft_bin_example_f32.c',['../_a_r_m_2arm__fft__bin__example__f32_8c.html',1,'']]], + ['arm_5ffill_5ff32',['arm_fill_f32',['../group___fill.html#ga2248e8d3901b4afb7827163132baad94',1,'arm_fill_f32(float32_t value, float32_t *pDst, uint32_t blockSize): arm_fill_f32.c'],['../group___fill.html#ga2248e8d3901b4afb7827163132baad94',1,'arm_fill_f32(float32_t value, float32_t *pDst, uint32_t blockSize): arm_fill_f32.c']]], + ['arm_5ffill_5ff32_2ec',['arm_fill_f32.c',['../arm__fill__f32_8c.html',1,'']]], + ['arm_5ffill_5fq15',['arm_fill_q15',['../group___fill.html#ga76b21c32a3783a2b3334d930a646e5d8',1,'arm_fill_q15(q15_t value, q15_t *pDst, uint32_t blockSize): arm_fill_q15.c'],['../group___fill.html#ga76b21c32a3783a2b3334d930a646e5d8',1,'arm_fill_q15(q15_t value, q15_t *pDst, uint32_t blockSize): arm_fill_q15.c']]], + ['arm_5ffill_5fq15_2ec',['arm_fill_q15.c',['../arm__fill__q15_8c.html',1,'']]], + ['arm_5ffill_5fq31',['arm_fill_q31',['../group___fill.html#ga69cc781cf337bd0a31bb85c772a35f7f',1,'arm_fill_q31(q31_t value, q31_t *pDst, uint32_t blockSize): arm_fill_q31.c'],['../group___fill.html#ga69cc781cf337bd0a31bb85c772a35f7f',1,'arm_fill_q31(q31_t value, q31_t *pDst, uint32_t blockSize): arm_fill_q31.c']]], + ['arm_5ffill_5fq31_2ec',['arm_fill_q31.c',['../arm__fill__q31_8c.html',1,'']]], + ['arm_5ffill_5fq7',['arm_fill_q7',['../group___fill.html#ga0465cf326ada039ed792f94b033d9ec5',1,'arm_fill_q7(q7_t value, q7_t *pDst, uint32_t blockSize): arm_fill_q7.c'],['../group___fill.html#ga0465cf326ada039ed792f94b033d9ec5',1,'arm_fill_q7(q7_t value, q7_t *pDst, uint32_t blockSize): arm_fill_q7.c']]], + ['arm_5ffill_5fq7_2ec',['arm_fill_q7.c',['../arm__fill__q7_8c.html',1,'']]], + ['arm_5ffir_5fdata_2ec',['arm_fir_data.c',['../arm__fir__data_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5ff32',['arm_fir_decimate_f32',['../group___f_i_r__decimate.html#ga25aa3d58a90bf91b6a82272a0bc518f7',1,'arm_fir_decimate_f32(const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_decimate_f32.c'],['../group___f_i_r__decimate.html#ga25aa3d58a90bf91b6a82272a0bc518f7',1,'arm_fir_decimate_f32(const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_decimate_f32.c']]], + ['arm_5ffir_5fdecimate_5ff32_2ec',['arm_fir_decimate_f32.c',['../arm__fir__decimate__f32_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5ffast_5fq15',['arm_fir_decimate_fast_q15',['../group___f_i_r__decimate.html#ga3f434c9a5d3b4e68061feac0714ea2ac',1,'arm_fir_decimate_fast_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q15.c'],['../group___f_i_r__decimate.html#ga3f434c9a5d3b4e68061feac0714ea2ac',1,'arm_fir_decimate_fast_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q15.c']]], + ['arm_5ffir_5fdecimate_5ffast_5fq15_2ec',['arm_fir_decimate_fast_q15.c',['../arm__fir__decimate__fast__q15_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5ffast_5fq31',['arm_fir_decimate_fast_q31',['../group___f_i_r__decimate.html#ga3c18cc3d0548a410c577f1bead9582b7',1,'arm_fir_decimate_fast_q31(arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q31.c'],['../group___f_i_r__decimate.html#ga3c18cc3d0548a410c577f1bead9582b7',1,'arm_fir_decimate_fast_q31(arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q31.c']]], + ['arm_5ffir_5fdecimate_5ffast_5fq31_2ec',['arm_fir_decimate_fast_q31.c',['../arm__fir__decimate__fast__q31_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5finit_5ff32',['arm_fir_decimate_init_f32',['../group___f_i_r__decimate.html#gaaa2524b08220fd6c3f753e692ffc7d3b',1,'arm_fir_decimate_init_f32(arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_decimate_init_f32.c'],['../group___f_i_r__decimate.html#gaaa2524b08220fd6c3f753e692ffc7d3b',1,'arm_fir_decimate_init_f32(arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_decimate_init_f32.c']]], + ['arm_5ffir_5fdecimate_5finit_5ff32_2ec',['arm_fir_decimate_init_f32.c',['../arm__fir__decimate__init__f32_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5finit_5fq15',['arm_fir_decimate_init_q15',['../group___f_i_r__decimate.html#gada660e54b93d5d32178c6f5e1c6f368d',1,'arm_fir_decimate_init_q15(arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_decimate_init_q15.c'],['../group___f_i_r__decimate.html#gada660e54b93d5d32178c6f5e1c6f368d',1,'arm_fir_decimate_init_q15(arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_decimate_init_q15.c']]], + ['arm_5ffir_5fdecimate_5finit_5fq15_2ec',['arm_fir_decimate_init_q15.c',['../arm__fir__decimate__init__q15_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5finit_5fq31',['arm_fir_decimate_init_q31',['../group___f_i_r__decimate.html#ga9ed47c4e0f58affa935d84e0508a7f39',1,'arm_fir_decimate_init_q31(arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_decimate_init_q31.c'],['../group___f_i_r__decimate.html#ga9ed47c4e0f58affa935d84e0508a7f39',1,'arm_fir_decimate_init_q31(arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_decimate_init_q31.c']]], + ['arm_5ffir_5fdecimate_5finit_5fq31_2ec',['arm_fir_decimate_init_q31.c',['../arm__fir__decimate__init__q31_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5finstance_5ff32',['arm_fir_decimate_instance_f32',['../structarm__fir__decimate__instance__f32.html',1,'']]], + ['arm_5ffir_5fdecimate_5finstance_5fq15',['arm_fir_decimate_instance_q15',['../structarm__fir__decimate__instance__q15.html',1,'']]], + ['arm_5ffir_5fdecimate_5finstance_5fq31',['arm_fir_decimate_instance_q31',['../structarm__fir__decimate__instance__q31.html',1,'']]], + ['arm_5ffir_5fdecimate_5fq15',['arm_fir_decimate_q15',['../group___f_i_r__decimate.html#gab8bef6d0f6a26fdbfce9485727713ce5',1,'arm_fir_decimate_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_q15.c'],['../group___f_i_r__decimate.html#gab8bef6d0f6a26fdbfce9485727713ce5',1,'arm_fir_decimate_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_q15.c']]], + ['arm_5ffir_5fdecimate_5fq15_2ec',['arm_fir_decimate_q15.c',['../arm__fir__decimate__q15_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5fq31',['arm_fir_decimate_q31',['../group___f_i_r__decimate.html#gaef8e86add28f15fdc5ecc484e9dd7a4e',1,'arm_fir_decimate_q31(const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_q31.c'],['../group___f_i_r__decimate.html#gaef8e86add28f15fdc5ecc484e9dd7a4e',1,'arm_fir_decimate_q31(const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_q31.c']]], + ['arm_5ffir_5fdecimate_5fq31_2ec',['arm_fir_decimate_q31.c',['../arm__fir__decimate__q31_8c.html',1,'']]], + ['arm_5ffir_5fexample_5ff32_2ec',['arm_fir_example_f32.c',['../arm__fir__example__f32_8c.html',1,'']]], + ['arm_5ffir_5ff32',['arm_fir_f32',['../group___f_i_r.html#gae8fb334ea67eb6ecbd31824ddc14cd6a',1,'arm_fir_f32(const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_f32.c'],['../group___f_i_r.html#gae8fb334ea67eb6ecbd31824ddc14cd6a',1,'arm_fir_f32(const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_f32.c']]], + ['arm_5ffir_5ff32_2ec',['arm_fir_f32.c',['../arm__fir__f32_8c.html',1,'']]], + ['arm_5ffir_5ffast_5fq15',['arm_fir_fast_q15',['../group___f_i_r.html#gac7d35e9472e49ccd88800f37f3476bd3',1,'arm_fir_fast_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_fast_q15.c'],['../group___f_i_r.html#gac7d35e9472e49ccd88800f37f3476bd3',1,'arm_fir_fast_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_fast_q15.c']]], + ['arm_5ffir_5ffast_5fq15_2ec',['arm_fir_fast_q15.c',['../arm__fir__fast__q15_8c.html',1,'']]], + ['arm_5ffir_5ffast_5fq31',['arm_fir_fast_q31',['../group___f_i_r.html#ga70d11af009dcd25594c58c75cdb5d6e3',1,'arm_fir_fast_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_fast_q31.c'],['../group___f_i_r.html#ga70d11af009dcd25594c58c75cdb5d6e3',1,'arm_fir_fast_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_fast_q31.c']]], + ['arm_5ffir_5ffast_5fq31_2ec',['arm_fir_fast_q31.c',['../arm__fir__fast__q31_8c.html',1,'']]], + ['arm_5ffir_5finit_5ff32',['arm_fir_init_f32',['../group___f_i_r.html#ga98d13def6427e29522829f945d0967db',1,'arm_fir_init_f32(arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_init_f32.c'],['../group___f_i_r.html#ga98d13def6427e29522829f945d0967db',1,'arm_fir_init_f32(arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_init_f32.c']]], + ['arm_5ffir_5finit_5ff32_2ec',['arm_fir_init_f32.c',['../arm__fir__init__f32_8c.html',1,'']]], + ['arm_5ffir_5finit_5fq15',['arm_fir_init_q15',['../group___f_i_r.html#gae2a50f692f41ba57e44ed0719b1368bd',1,'arm_fir_init_q15(arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_init_q15.c'],['../group___f_i_r.html#gae2a50f692f41ba57e44ed0719b1368bd',1,'arm_fir_init_q15(arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_init_q15.c']]], + ['arm_5ffir_5finit_5fq15_2ec',['arm_fir_init_q15.c',['../arm__fir__init__q15_8c.html',1,'']]], + ['arm_5ffir_5finit_5fq31',['arm_fir_init_q31',['../group___f_i_r.html#gac00d53af87684cbbe135767b55e748a5',1,'arm_fir_init_q31(arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_init_q31.c'],['../group___f_i_r.html#gac00d53af87684cbbe135767b55e748a5',1,'arm_fir_init_q31(arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_init_q31.c']]], + ['arm_5ffir_5finit_5fq31_2ec',['arm_fir_init_q31.c',['../arm__fir__init__q31_8c.html',1,'']]], + ['arm_5ffir_5finit_5fq7',['arm_fir_init_q7',['../group___f_i_r.html#ga88e48688224d42dc173dbcec702f0c1d',1,'arm_fir_init_q7(arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize): arm_fir_init_q7.c'],['../group___f_i_r.html#ga88e48688224d42dc173dbcec702f0c1d',1,'arm_fir_init_q7(arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize): arm_fir_init_q7.c']]], + ['arm_5ffir_5finit_5fq7_2ec',['arm_fir_init_q7.c',['../arm__fir__init__q7_8c.html',1,'']]], + ['arm_5ffir_5finstance_5ff32',['arm_fir_instance_f32',['../structarm__fir__instance__f32.html',1,'']]], + ['arm_5ffir_5finstance_5fq15',['arm_fir_instance_q15',['../structarm__fir__instance__q15.html',1,'']]], + ['arm_5ffir_5finstance_5fq31',['arm_fir_instance_q31',['../structarm__fir__instance__q31.html',1,'']]], + ['arm_5ffir_5finstance_5fq7',['arm_fir_instance_q7',['../structarm__fir__instance__q7.html',1,'']]], + ['arm_5ffir_5finterpolate_5ff32',['arm_fir_interpolate_f32',['../group___f_i_r___interpolate.html#ga9cae104c5cf60b4e7671c82264a8c12e',1,'arm_fir_interpolate_f32(const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_interpolate_f32.c'],['../group___f_i_r___interpolate.html#ga9cae104c5cf60b4e7671c82264a8c12e',1,'arm_fir_interpolate_f32(const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_interpolate_f32.c']]], + ['arm_5ffir_5finterpolate_5ff32_2ec',['arm_fir_interpolate_f32.c',['../arm__fir__interpolate__f32_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5finit_5ff32',['arm_fir_interpolate_init_f32',['../group___f_i_r___interpolate.html#ga0f857457a815946f7e4dca989ebf6ff6',1,'arm_fir_interpolate_init_f32(arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_interpolate_init_f32.c'],['../group___f_i_r___interpolate.html#ga0f857457a815946f7e4dca989ebf6ff6',1,'arm_fir_interpolate_init_f32(arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_interpolate_init_f32.c']]], + ['arm_5ffir_5finterpolate_5finit_5ff32_2ec',['arm_fir_interpolate_init_f32.c',['../arm__fir__interpolate__init__f32_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5finit_5fq15',['arm_fir_interpolate_init_q15',['../group___f_i_r___interpolate.html#ga18e8c4a74ff1d0f88876cc63f675288f',1,'arm_fir_interpolate_init_q15(arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q15.c'],['../group___f_i_r___interpolate.html#ga18e8c4a74ff1d0f88876cc63f675288f',1,'arm_fir_interpolate_init_q15(arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q15.c']]], + ['arm_5ffir_5finterpolate_5finit_5fq15_2ec',['arm_fir_interpolate_init_q15.c',['../arm__fir__interpolate__init__q15_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5finit_5fq31',['arm_fir_interpolate_init_q31',['../group___f_i_r___interpolate.html#ga9d0ba38ce9f12a850dd242731d307476',1,'arm_fir_interpolate_init_q31(arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q31.c'],['../group___f_i_r___interpolate.html#ga9d0ba38ce9f12a850dd242731d307476',1,'arm_fir_interpolate_init_q31(arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q31.c']]], + ['arm_5ffir_5finterpolate_5finit_5fq31_2ec',['arm_fir_interpolate_init_q31.c',['../arm__fir__interpolate__init__q31_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5finstance_5ff32',['arm_fir_interpolate_instance_f32',['../structarm__fir__interpolate__instance__f32.html',1,'']]], + ['arm_5ffir_5finterpolate_5finstance_5fq15',['arm_fir_interpolate_instance_q15',['../structarm__fir__interpolate__instance__q15.html',1,'']]], + ['arm_5ffir_5finterpolate_5finstance_5fq31',['arm_fir_interpolate_instance_q31',['../structarm__fir__interpolate__instance__q31.html',1,'']]], + ['arm_5ffir_5finterpolate_5fq15',['arm_fir_interpolate_q15',['../group___f_i_r___interpolate.html#ga7962b5f9636e54899f75d0c5936800b5',1,'arm_fir_interpolate_q15(const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_interpolate_q15.c'],['../group___f_i_r___interpolate.html#ga7962b5f9636e54899f75d0c5936800b5',1,'arm_fir_interpolate_q15(const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_interpolate_q15.c']]], + ['arm_5ffir_5finterpolate_5fq15_2ec',['arm_fir_interpolate_q15.c',['../arm__fir__interpolate__q15_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5fq31',['arm_fir_interpolate_q31',['../group___f_i_r___interpolate.html#gaac9c0f01ed91c53f7083995d7411f5ee',1,'arm_fir_interpolate_q31(const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_interpolate_q31.c'],['../group___f_i_r___interpolate.html#gaac9c0f01ed91c53f7083995d7411f5ee',1,'arm_fir_interpolate_q31(const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_interpolate_q31.c']]], + ['arm_5ffir_5finterpolate_5fq31_2ec',['arm_fir_interpolate_q31.c',['../arm__fir__interpolate__q31_8c.html',1,'']]], + ['arm_5ffir_5flattice_5ff32',['arm_fir_lattice_f32',['../group___f_i_r___lattice.html#gae63a45a63a11a65f2eae8b8b1fe370a8',1,'arm_fir_lattice_f32(const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_lattice_f32.c'],['../group___f_i_r___lattice.html#gae63a45a63a11a65f2eae8b8b1fe370a8',1,'arm_fir_lattice_f32(const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_lattice_f32.c']]], + ['arm_5ffir_5flattice_5ff32_2ec',['arm_fir_lattice_f32.c',['../arm__fir__lattice__f32_8c.html',1,'']]], + ['arm_5ffir_5flattice_5finit_5ff32',['arm_fir_lattice_init_f32',['../group___f_i_r___lattice.html#ga86199a1590af2b8941c6532ee9d03229',1,'arm_fir_lattice_init_f32(arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState): arm_fir_lattice_init_f32.c'],['../group___f_i_r___lattice.html#ga86199a1590af2b8941c6532ee9d03229',1,'arm_fir_lattice_init_f32(arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState): arm_fir_lattice_init_f32.c']]], + ['arm_5ffir_5flattice_5finit_5ff32_2ec',['arm_fir_lattice_init_f32.c',['../arm__fir__lattice__init__f32_8c.html',1,'']]], + ['arm_5ffir_5flattice_5finit_5fq15',['arm_fir_lattice_init_q15',['../group___f_i_r___lattice.html#ga1b22f30ce1cc19bf5a5d7c9fca154d72',1,'arm_fir_lattice_init_q15(arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState): arm_fir_lattice_init_q15.c'],['../group___f_i_r___lattice.html#ga1b22f30ce1cc19bf5a5d7c9fca154d72',1,'arm_fir_lattice_init_q15(arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState): arm_fir_lattice_init_q15.c']]], + ['arm_5ffir_5flattice_5finit_5fq15_2ec',['arm_fir_lattice_init_q15.c',['../arm__fir__lattice__init__q15_8c.html',1,'']]], + ['arm_5ffir_5flattice_5finit_5fq31',['arm_fir_lattice_init_q31',['../group___f_i_r___lattice.html#gac05a17a0188bb851b58d19e572870a54',1,'arm_fir_lattice_init_q31(arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState): arm_fir_lattice_init_q31.c'],['../group___f_i_r___lattice.html#gac05a17a0188bb851b58d19e572870a54',1,'arm_fir_lattice_init_q31(arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState): arm_fir_lattice_init_q31.c']]], + ['arm_5ffir_5flattice_5finit_5fq31_2ec',['arm_fir_lattice_init_q31.c',['../arm__fir__lattice__init__q31_8c.html',1,'']]], + ['arm_5ffir_5flattice_5finstance_5ff32',['arm_fir_lattice_instance_f32',['../structarm__fir__lattice__instance__f32.html',1,'']]], + ['arm_5ffir_5flattice_5finstance_5fq15',['arm_fir_lattice_instance_q15',['../structarm__fir__lattice__instance__q15.html',1,'']]], + ['arm_5ffir_5flattice_5finstance_5fq31',['arm_fir_lattice_instance_q31',['../structarm__fir__lattice__instance__q31.html',1,'']]], + ['arm_5ffir_5flattice_5fq15',['arm_fir_lattice_q15',['../group___f_i_r___lattice.html#gabb0ab07fd313b4d863070c3ddca51542',1,'arm_fir_lattice_q15(const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_lattice_q15.c'],['../group___f_i_r___lattice.html#gabb0ab07fd313b4d863070c3ddca51542',1,'arm_fir_lattice_q15(const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_lattice_q15.c']]], + ['arm_5ffir_5flattice_5fq15_2ec',['arm_fir_lattice_q15.c',['../arm__fir__lattice__q15_8c.html',1,'']]], + ['arm_5ffir_5flattice_5fq31',['arm_fir_lattice_q31',['../group___f_i_r___lattice.html#ga2e36fd210e4a1a5dd333ce80dd6d9a88',1,'arm_fir_lattice_q31(const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_lattice_q31.c'],['../group___f_i_r___lattice.html#ga2e36fd210e4a1a5dd333ce80dd6d9a88',1,'arm_fir_lattice_q31(const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_lattice_q31.c']]], + ['arm_5ffir_5flattice_5fq31_2ec',['arm_fir_lattice_q31.c',['../arm__fir__lattice__q31_8c.html',1,'']]], + ['arm_5ffir_5fq15',['arm_fir_q15',['../group___f_i_r.html#ga262d173058d6f80fdf60404ba262a8f5',1,'arm_fir_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_q15.c'],['../group___f_i_r.html#ga262d173058d6f80fdf60404ba262a8f5',1,'arm_fir_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_q15.c']]], + ['arm_5ffir_5fq15_2ec',['arm_fir_q15.c',['../arm__fir__q15_8c.html',1,'']]], + ['arm_5ffir_5fq31',['arm_fir_q31',['../group___f_i_r.html#gaadd938c68ab08967cbb5fc696f384bb5',1,'arm_fir_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_q31.c'],['../group___f_i_r.html#gaadd938c68ab08967cbb5fc696f384bb5',1,'arm_fir_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_q31.c']]], + ['arm_5ffir_5fq31_2ec',['arm_fir_q31.c',['../arm__fir__q31_8c.html',1,'']]], + ['arm_5ffir_5fq7',['arm_fir_q7',['../group___f_i_r.html#ga31c91a0bf0962327ef8f626fae68ea32',1,'arm_fir_q7(const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_fir_q7.c'],['../group___f_i_r.html#ga31c91a0bf0962327ef8f626fae68ea32',1,'arm_fir_q7(const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_fir_q7.c']]], + ['arm_5ffir_5fq7_2ec',['arm_fir_q7.c',['../arm__fir__q7_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5ff32',['arm_fir_sparse_f32',['../group___f_i_r___sparse.html#ga23a9284de5ee39406713b91d18ac8838',1,'arm_fir_sparse_f32(arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_f32.c'],['../group___f_i_r___sparse.html#ga23a9284de5ee39406713b91d18ac8838',1,'arm_fir_sparse_f32(arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_f32.c']]], + ['arm_5ffir_5fsparse_5ff32_2ec',['arm_fir_sparse_f32.c',['../arm__fir__sparse__f32_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5ff32',['arm_fir_sparse_init_f32',['../group___f_i_r___sparse.html#ga86378a08a9d9e1e0e5de77843b34d396',1,'arm_fir_sparse_init_f32(arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_f32.c'],['../group___f_i_r___sparse.html#ga86378a08a9d9e1e0e5de77843b34d396',1,'arm_fir_sparse_init_f32(arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_f32.c']]], + ['arm_5ffir_5fsparse_5finit_5ff32_2ec',['arm_fir_sparse_init_f32.c',['../arm__fir__sparse__init__f32_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5fq15',['arm_fir_sparse_init_q15',['../group___f_i_r___sparse.html#ga5eaa80bf72bcccef5a2c5fc6648d1baa',1,'arm_fir_sparse_init_q15(arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q15.c'],['../group___f_i_r___sparse.html#ga5eaa80bf72bcccef5a2c5fc6648d1baa',1,'arm_fir_sparse_init_q15(arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q15.c']]], + ['arm_5ffir_5fsparse_5finit_5fq15_2ec',['arm_fir_sparse_init_q15.c',['../arm__fir__sparse__init__q15_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5fq31',['arm_fir_sparse_init_q31',['../group___f_i_r___sparse.html#ga9a0bb2134bc85d3e55c6be6d946ee634',1,'arm_fir_sparse_init_q31(arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q31.c'],['../group___f_i_r___sparse.html#ga9a0bb2134bc85d3e55c6be6d946ee634',1,'arm_fir_sparse_init_q31(arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q31.c']]], + ['arm_5ffir_5fsparse_5finit_5fq31_2ec',['arm_fir_sparse_init_q31.c',['../arm__fir__sparse__init__q31_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5fq7',['arm_fir_sparse_init_q7',['../group___f_i_r___sparse.html#ga98f5c1a097d4572ce4ff3b0c58ebcdbd',1,'arm_fir_sparse_init_q7(arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q7.c'],['../group___f_i_r___sparse.html#ga98f5c1a097d4572ce4ff3b0c58ebcdbd',1,'arm_fir_sparse_init_q7(arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q7.c']]], + ['arm_5ffir_5fsparse_5finit_5fq7_2ec',['arm_fir_sparse_init_q7.c',['../arm__fir__sparse__init__q7_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5ff32',['arm_fir_sparse_instance_f32',['../structarm__fir__sparse__instance__f32.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5fq15',['arm_fir_sparse_instance_q15',['../structarm__fir__sparse__instance__q15.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5fq31',['arm_fir_sparse_instance_q31',['../structarm__fir__sparse__instance__q31.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5fq7',['arm_fir_sparse_instance_q7',['../structarm__fir__sparse__instance__q7.html',1,'']]], + ['arm_5ffir_5fsparse_5fq15',['arm_fir_sparse_q15',['../group___f_i_r___sparse.html#ga2bffda2e156e72427e19276cd9c3d3cc',1,'arm_fir_sparse_q15(arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q15.c'],['../group___f_i_r___sparse.html#ga2bffda2e156e72427e19276cd9c3d3cc',1,'arm_fir_sparse_q15(arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q15.c']]], + ['arm_5ffir_5fsparse_5fq15_2ec',['arm_fir_sparse_q15.c',['../arm__fir__sparse__q15_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5fq31',['arm_fir_sparse_q31',['../group___f_i_r___sparse.html#ga03e9c2f0f35ad67d20bac66be9f920ec',1,'arm_fir_sparse_q31(arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_q31.c'],['../group___f_i_r___sparse.html#ga03e9c2f0f35ad67d20bac66be9f920ec',1,'arm_fir_sparse_q31(arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_q31.c']]], + ['arm_5ffir_5fsparse_5fq31_2ec',['arm_fir_sparse_q31.c',['../arm__fir__sparse__q31_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5fq7',['arm_fir_sparse_q7',['../group___f_i_r___sparse.html#gae86c145efc2d9ec32dc6d8c1ad2ccb3c',1,'arm_fir_sparse_q7(arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q7.c'],['../group___f_i_r___sparse.html#gae86c145efc2d9ec32dc6d8c1ad2ccb3c',1,'arm_fir_sparse_q7(arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q7.c']]], + ['arm_5ffir_5fsparse_5fq7_2ec',['arm_fir_sparse_q7.c',['../arm__fir__sparse__q7_8c.html',1,'']]], + ['arm_5ffloat_5fto_5fq12_5f20',['arm_float_to_q12_20',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq14',['arm_float_to_q14',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq15',['arm_float_to_q15',['../group__float__to__x.html#ga215456e35a18db86882e1d3f0d24e1f2',1,'arm_float_to_q15(float32_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_float_to_q15.c'],['../group__float__to__x.html#ga215456e35a18db86882e1d3f0d24e1f2',1,'arm_float_to_q15(float32_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_float_to_q15.c']]], + ['arm_5ffloat_5fto_5fq15_2ec',['arm_float_to_q15.c',['../arm__float__to__q15_8c.html',1,'']]], + ['arm_5ffloat_5fto_5fq28',['arm_float_to_q28',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq29',['arm_float_to_q29',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq30',['arm_float_to_q30',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq31',['arm_float_to_q31',['../group__float__to__x.html#ga177704107f94564e9abe4daaa36f4554',1,'arm_float_to_q31(float32_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_float_to_q31.c'],['../group__float__to__x.html#ga177704107f94564e9abe4daaa36f4554',1,'arm_float_to_q31(float32_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_float_to_q31.c']]], + ['arm_5ffloat_5fto_5fq31_2ec',['arm_float_to_q31.c',['../arm__float__to__q31_8c.html',1,'']]], + ['arm_5ffloat_5fto_5fq7',['arm_float_to_q7',['../group__float__to__x.html#ga44a393818cdee8dce80f2d66add25411',1,'arm_float_to_q7(float32_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_float_to_q7.c'],['../group__float__to__x.html#ga44a393818cdee8dce80f2d66add25411',1,'arm_float_to_q7(float32_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_float_to_q7.c']]], + ['arm_5ffloat_5fto_5fq7_2ec',['arm_float_to_q7.c',['../arm__float__to__q7_8c.html',1,'']]], + ['arm_5fgraphic_5fequalizer_5fdata_2ec',['arm_graphic_equalizer_data.c',['../arm__graphic__equalizer__data_8c.html',1,'']]], + ['arm_5fgraphic_5fequalizer_5fexample_5fq31_2ec',['arm_graphic_equalizer_example_q31.c',['../arm__graphic__equalizer__example__q31_8c.html',1,'']]], + ['arm_5fiir_5flattice_5ff32',['arm_iir_lattice_f32',['../group___i_i_r___lattice.html#ga56164a0fe48619b8ceec160347bdd2ff',1,'arm_iir_lattice_f32(const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_iir_lattice_f32.c'],['../group___i_i_r___lattice.html#ga56164a0fe48619b8ceec160347bdd2ff',1,'arm_iir_lattice_f32(const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_iir_lattice_f32.c']]], + ['arm_5fiir_5flattice_5ff32_2ec',['arm_iir_lattice_f32.c',['../arm__iir__lattice__f32_8c.html',1,'']]], + ['arm_5fiir_5flattice_5finit_5ff32',['arm_iir_lattice_init_f32',['../group___i_i_r___lattice.html#gaed3b0230bb77439dc902daa625985e04',1,'arm_iir_lattice_init_f32(arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize): arm_iir_lattice_init_f32.c'],['../group___i_i_r___lattice.html#gaed3b0230bb77439dc902daa625985e04',1,'arm_iir_lattice_init_f32(arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize): arm_iir_lattice_init_f32.c']]], + ['arm_5fiir_5flattice_5finit_5ff32_2ec',['arm_iir_lattice_init_f32.c',['../arm__iir__lattice__init__f32_8c.html',1,'']]], + ['arm_5fiir_5flattice_5finit_5fq15',['arm_iir_lattice_init_q15',['../group___i_i_r___lattice.html#ga1f4bc2dd3d5641e96815d3a5aad58998',1,'arm_iir_lattice_init_q15(arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize): arm_iir_lattice_init_q15.c'],['../group___i_i_r___lattice.html#ga1f4bc2dd3d5641e96815d3a5aad58998',1,'arm_iir_lattice_init_q15(arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize): arm_iir_lattice_init_q15.c']]], + ['arm_5fiir_5flattice_5finit_5fq15_2ec',['arm_iir_lattice_init_q15.c',['../arm__iir__lattice__init__q15_8c.html',1,'']]], + ['arm_5fiir_5flattice_5finit_5fq31',['arm_iir_lattice_init_q31',['../group___i_i_r___lattice.html#gab686c14175581797d9c3ad7bf1d5cc1e',1,'arm_iir_lattice_init_q31(arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize): arm_iir_lattice_init_q31.c'],['../group___i_i_r___lattice.html#gab686c14175581797d9c3ad7bf1d5cc1e',1,'arm_iir_lattice_init_q31(arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize): arm_iir_lattice_init_q31.c']]], + ['arm_5fiir_5flattice_5finit_5fq31_2ec',['arm_iir_lattice_init_q31.c',['../arm__iir__lattice__init__q31_8c.html',1,'']]], + ['arm_5fiir_5flattice_5finstance_5ff32',['arm_iir_lattice_instance_f32',['../structarm__iir__lattice__instance__f32.html',1,'']]], + ['arm_5fiir_5flattice_5finstance_5fq15',['arm_iir_lattice_instance_q15',['../structarm__iir__lattice__instance__q15.html',1,'']]], + ['arm_5fiir_5flattice_5finstance_5fq31',['arm_iir_lattice_instance_q31',['../structarm__iir__lattice__instance__q31.html',1,'']]], + ['arm_5fiir_5flattice_5fq15',['arm_iir_lattice_q15',['../group___i_i_r___lattice.html#gaeb9e9599a288832ed123183eaa8b294a',1,'arm_iir_lattice_q15(const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_iir_lattice_q15.c'],['../group___i_i_r___lattice.html#gaeb9e9599a288832ed123183eaa8b294a',1,'arm_iir_lattice_q15(const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_iir_lattice_q15.c']]], + ['arm_5fiir_5flattice_5fq15_2ec',['arm_iir_lattice_q15.c',['../arm__iir__lattice__q15_8c.html',1,'']]], + ['arm_5fiir_5flattice_5fq31',['arm_iir_lattice_q31',['../group___i_i_r___lattice.html#ga123b26fa9156cd8d3622dd85931741ed',1,'arm_iir_lattice_q31(const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_iir_lattice_q31.c'],['../group___i_i_r___lattice.html#ga123b26fa9156cd8d3622dd85931741ed',1,'arm_iir_lattice_q31(const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_iir_lattice_q31.c']]], + ['arm_5fiir_5flattice_5fq31_2ec',['arm_iir_lattice_q31.c',['../arm__iir__lattice__q31_8c.html',1,'']]], + ['arm_5finv_5fclarke_5ff32',['arm_inv_clarke_f32',['../group__inv__clarke.html#ga137f0396d837477b899ecae89f075a50',1,'arm_math.h']]], + ['arm_5finv_5fclarke_5fq31',['arm_inv_clarke_q31',['../group__inv__clarke.html#ga2d0c60f114f095a2f27442d98781ba02',1,'arm_math.h']]], + ['arm_5finv_5fpark_5ff32',['arm_inv_park_f32',['../group__inv__park.html#gaaf6bef0de21946f774d49df050dd8b05',1,'arm_math.h']]], + ['arm_5finv_5fpark_5fq31',['arm_inv_park_q31',['../group__inv__park.html#ga0b33822b988a15455773d28440c5579a',1,'arm_math.h']]], + ['arm_5flinear_5finterep_5ftable',['arm_linear_interep_table',['../arm__linear__interp__data_8c.html#a1a5a6c95f39221fcf8129fe478f54696',1,'arm_linear_interep_table(): arm_linear_interp_data.c'],['../arm__linear__interp__example__f32_8c.html#a1a5a6c95f39221fcf8129fe478f54696',1,'arm_linear_interep_table(): arm_linear_interp_data.c']]], + ['arm_5flinear_5finterp_5fdata_2ec',['arm_linear_interp_data.c',['../arm__linear__interp__data_8c.html',1,'']]], + ['arm_5flinear_5finterp_5fexample_5ff32_2ec',['arm_linear_interp_example_f32.c',['../arm__linear__interp__example__f32_8c.html',1,'']]], + ['arm_5flinear_5finterp_5ff32',['arm_linear_interp_f32',['../group___linear_interpolate.html#ga2269263d810cafcd19681957b37d5cf6',1,'arm_math.h']]], + ['arm_5flinear_5finterp_5finstance_5ff32',['arm_linear_interp_instance_f32',['../structarm__linear__interp__instance__f32.html',1,'']]], + ['arm_5flinear_5finterp_5fq15',['arm_linear_interp_q15',['../group___linear_interpolate.html#ga42c9206e5d2d22b8808716dc30622846',1,'arm_math.h']]], + ['arm_5flinear_5finterp_5fq31',['arm_linear_interp_q31',['../group___linear_interpolate.html#ga690e63e9a513ca0a741b1b174805d031',1,'arm_math.h']]], + ['arm_5flinear_5finterp_5fq7',['arm_linear_interp_q7',['../group___linear_interpolate.html#gacb0d44fe00aca0ba1d036d469a1763fc',1,'arm_math.h']]], + ['arm_5flms_5ff32',['arm_lms_f32',['../group___l_m_s.html#gae266d009e682180421601627c79a3843',1,'arm_lms_f32(const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_f32.c'],['../group___l_m_s.html#gae266d009e682180421601627c79a3843',1,'arm_lms_f32(const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_f32.c']]], + ['arm_5flms_5ff32_2ec',['arm_lms_f32.c',['../arm__lms__f32_8c.html',1,'']]], + ['arm_5flms_5finit_5ff32',['arm_lms_init_f32',['../group___l_m_s.html#ga9fc7adca0966ff2cec1746fca8364cee',1,'arm_lms_init_f32(arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_init_f32.c'],['../group___l_m_s.html#ga9fc7adca0966ff2cec1746fca8364cee',1,'arm_lms_init_f32(arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_init_f32.c']]], + ['arm_5flms_5finit_5ff32_2ec',['arm_lms_init_f32.c',['../arm__lms__init__f32_8c.html',1,'']]], + ['arm_5flms_5finit_5fq15',['arm_lms_init_q15',['../group___l_m_s.html#ga9544cc26f18cd4465cfbed371be822b3',1,'arm_lms_init_q15(arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q15.c'],['../group___l_m_s.html#ga9544cc26f18cd4465cfbed371be822b3',1,'arm_lms_init_q15(arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q15.c']]], + ['arm_5flms_5finit_5fq15_2ec',['arm_lms_init_q15.c',['../arm__lms__init__q15_8c.html',1,'']]], + ['arm_5flms_5finit_5fq31',['arm_lms_init_q31',['../group___l_m_s.html#ga8d4bc251169f4b102355097a9f7530d6',1,'arm_lms_init_q31(arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q31.c'],['../group___l_m_s.html#ga8d4bc251169f4b102355097a9f7530d6',1,'arm_lms_init_q31(arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q31.c']]], + ['arm_5flms_5finit_5fq31_2ec',['arm_lms_init_q31.c',['../arm__lms__init__q31_8c.html',1,'']]], + ['arm_5flms_5finstance_5ff32',['arm_lms_instance_f32',['../structarm__lms__instance__f32.html',1,'']]], + ['arm_5flms_5finstance_5fq15',['arm_lms_instance_q15',['../structarm__lms__instance__q15.html',1,'']]], + ['arm_5flms_5finstance_5fq31',['arm_lms_instance_q31',['../structarm__lms__instance__q31.html',1,'']]], + ['arm_5flms_5fnorm_5ff32',['arm_lms_norm_f32',['../group___l_m_s___n_o_r_m.html#ga2418c929087c6eba719758eaae3f3300',1,'arm_lms_norm_f32(arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_norm_f32.c'],['../group___l_m_s___n_o_r_m.html#ga2418c929087c6eba719758eaae3f3300',1,'arm_lms_norm_f32(arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_norm_f32.c']]], + ['arm_5flms_5fnorm_5ff32_2ec',['arm_lms_norm_f32.c',['../arm__lms__norm__f32_8c.html',1,'']]], + ['arm_5flms_5fnorm_5finit_5ff32',['arm_lms_norm_init_f32',['../group___l_m_s___n_o_r_m.html#gac7ccbaea863882056eee815456464670',1,'arm_lms_norm_init_f32(arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_norm_init_f32.c'],['../group___l_m_s___n_o_r_m.html#gac7ccbaea863882056eee815456464670',1,'arm_lms_norm_init_f32(arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_norm_init_f32.c']]], + ['arm_5flms_5fnorm_5finit_5ff32_2ec',['arm_lms_norm_init_f32.c',['../arm__lms__norm__init__f32_8c.html',1,'']]], + ['arm_5flms_5fnorm_5finit_5fq15',['arm_lms_norm_init_q15',['../group___l_m_s___n_o_r_m.html#ga213ab1ee2e154cc2fa30d667b1994b89',1,'arm_lms_norm_init_q15(arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q15.c'],['../group___l_m_s___n_o_r_m.html#ga213ab1ee2e154cc2fa30d667b1994b89',1,'arm_lms_norm_init_q15(arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q15.c']]], + ['arm_5flms_5fnorm_5finit_5fq15_2ec',['arm_lms_norm_init_q15.c',['../arm__lms__norm__init__q15_8c.html',1,'']]], + ['arm_5flms_5fnorm_5finit_5fq31',['arm_lms_norm_init_q31',['../group___l_m_s___n_o_r_m.html#ga1d9659dbbea4c89a7a9d14d5fc0dd490',1,'arm_lms_norm_init_q31(arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q31.c'],['../group___l_m_s___n_o_r_m.html#ga1d9659dbbea4c89a7a9d14d5fc0dd490',1,'arm_lms_norm_init_q31(arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q31.c']]], + ['arm_5flms_5fnorm_5finit_5fq31_2ec',['arm_lms_norm_init_q31.c',['../arm__lms__norm__init__q31_8c.html',1,'']]], + ['arm_5flms_5fnorm_5finstance_5ff32',['arm_lms_norm_instance_f32',['../structarm__lms__norm__instance__f32.html',1,'']]], + ['arm_5flms_5fnorm_5finstance_5fq15',['arm_lms_norm_instance_q15',['../structarm__lms__norm__instance__q15.html',1,'']]], + ['arm_5flms_5fnorm_5finstance_5fq31',['arm_lms_norm_instance_q31',['../structarm__lms__norm__instance__q31.html',1,'']]], + ['arm_5flms_5fnorm_5fq15',['arm_lms_norm_q15',['../group___l_m_s___n_o_r_m.html#gad47486a399dedb0bc85a5990ec5cf981',1,'arm_lms_norm_q15(arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_norm_q15.c'],['../group___l_m_s___n_o_r_m.html#gad47486a399dedb0bc85a5990ec5cf981',1,'arm_lms_norm_q15(arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_norm_q15.c']]], + ['arm_5flms_5fnorm_5fq15_2ec',['arm_lms_norm_q15.c',['../arm__lms__norm__q15_8c.html',1,'']]], + ['arm_5flms_5fnorm_5fq31',['arm_lms_norm_q31',['../group___l_m_s___n_o_r_m.html#ga7128775e99817c183a7d7ad34e8b6e05',1,'arm_lms_norm_q31(arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_norm_q31.c'],['../group___l_m_s___n_o_r_m.html#ga7128775e99817c183a7d7ad34e8b6e05',1,'arm_lms_norm_q31(arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_norm_q31.c']]], + ['arm_5flms_5fnorm_5fq31_2ec',['arm_lms_norm_q31.c',['../arm__lms__norm__q31_8c.html',1,'']]], + ['arm_5flms_5fq15',['arm_lms_q15',['../group___l_m_s.html#gacde16c17eb75979f81b34e2e2a58c7ac',1,'arm_lms_q15(const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_q15.c'],['../group___l_m_s.html#gacde16c17eb75979f81b34e2e2a58c7ac',1,'arm_lms_q15(const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_q15.c']]], + ['arm_5flms_5fq15_2ec',['arm_lms_q15.c',['../arm__lms__q15_8c.html',1,'']]], + ['arm_5flms_5fq31',['arm_lms_q31',['../group___l_m_s.html#ga6a0abfe6041253a6f91c63b383a64257',1,'arm_lms_q31(const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_q31.c'],['../group___l_m_s.html#ga6a0abfe6041253a6f91c63b383a64257',1,'arm_lms_q31(const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_q31.c']]], + ['arm_5flms_5fq31_2ec',['arm_lms_q31.c',['../arm__lms__q31_8c.html',1,'']]], + ['arm_5fmat_5fadd_5ff32',['arm_mat_add_f32',['../group___matrix_add.html#ga04bbf64a5f9c9e57dd1efb26a768aba1',1,'arm_mat_add_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_add_f32.c'],['../group___matrix_add.html#ga04bbf64a5f9c9e57dd1efb26a768aba1',1,'arm_mat_add_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_add_f32.c']]], + ['arm_5fmat_5fadd_5ff32_2ec',['arm_mat_add_f32.c',['../arm__mat__add__f32_8c.html',1,'']]], + ['arm_5fmat_5fadd_5fq15',['arm_mat_add_q15',['../group___matrix_add.html#ga147e90b7c12a162735ab8824127a33ee',1,'arm_mat_add_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_add_q15.c'],['../group___matrix_add.html#ga147e90b7c12a162735ab8824127a33ee',1,'arm_mat_add_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_add_q15.c']]], + ['arm_5fmat_5fadd_5fq15_2ec',['arm_mat_add_q15.c',['../arm__mat__add__q15_8c.html',1,'']]], + ['arm_5fmat_5fadd_5fq31',['arm_mat_add_q31',['../group___matrix_add.html#ga7d9d7d81a0832a17b831aad1e4a5dc16',1,'arm_mat_add_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_add_q31.c'],['../group___matrix_add.html#ga7d9d7d81a0832a17b831aad1e4a5dc16',1,'arm_mat_add_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_add_q31.c']]], + ['arm_5fmat_5fadd_5fq31_2ec',['arm_mat_add_q31.c',['../arm__mat__add__q31_8c.html',1,'']]], + ['arm_5fmat_5fcmplx_5fmult_5ff32',['arm_mat_cmplx_mult_f32',['../group___cmplx_matrix_mult.html#ga1adb839ac84445b8c2f04efa43faef35',1,'arm_mat_cmplx_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_cmplx_mult_f32.c'],['../group___cmplx_matrix_mult.html#ga1adb839ac84445b8c2f04efa43faef35',1,'arm_mat_cmplx_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_cmplx_mult_f32.c']]], + ['arm_5fmat_5fcmplx_5fmult_5ff32_2ec',['arm_mat_cmplx_mult_f32.c',['../arm__mat__cmplx__mult__f32_8c.html',1,'']]], + ['arm_5fmat_5fcmplx_5fmult_5fq15',['arm_mat_cmplx_mult_q15',['../group___cmplx_matrix_mult.html#ga63066615e7d6f6a44f4358725092419e',1,'arm_mat_cmplx_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pScratch): arm_mat_cmplx_mult_q15.c'],['../group___cmplx_matrix_mult.html#ga63066615e7d6f6a44f4358725092419e',1,'arm_mat_cmplx_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pScratch): arm_mat_cmplx_mult_q15.c']]], + ['arm_5fmat_5fcmplx_5fmult_5fq15_2ec',['arm_mat_cmplx_mult_q15.c',['../arm__mat__cmplx__mult__q15_8c.html',1,'']]], + ['arm_5fmat_5fcmplx_5fmult_5fq31',['arm_mat_cmplx_mult_q31',['../group___cmplx_matrix_mult.html#gaaf3c0b171ca8412c77bab9fa90804737',1,'arm_mat_cmplx_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_cmplx_mult_q31.c'],['../group___cmplx_matrix_mult.html#gaaf3c0b171ca8412c77bab9fa90804737',1,'arm_mat_cmplx_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_cmplx_mult_q31.c']]], + ['arm_5fmat_5fcmplx_5fmult_5fq31_2ec',['arm_mat_cmplx_mult_q31.c',['../arm__mat__cmplx__mult__q31_8c.html',1,'']]], + ['arm_5fmat_5finit_5ff32',['arm_mat_init_f32',['../group___matrix_init.html#ga11e3dc41592a6401c13182fef9416a27',1,'arm_mat_init_f32(arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData): arm_mat_init_f32.c'],['../group___matrix_init.html#ga11e3dc41592a6401c13182fef9416a27',1,'arm_mat_init_f32(arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData): arm_mat_init_f32.c']]], + ['arm_5fmat_5finit_5ff32_2ec',['arm_mat_init_f32.c',['../arm__mat__init__f32_8c.html',1,'']]], + ['arm_5fmat_5finit_5fq15',['arm_mat_init_q15',['../group___matrix_init.html#ga31a7c2b991803d49719393eb2d53dc26',1,'arm_mat_init_q15(arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData): arm_mat_init_q15.c'],['../group___matrix_init.html#ga31a7c2b991803d49719393eb2d53dc26',1,'arm_mat_init_q15(arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData): arm_mat_init_q15.c']]], + ['arm_5fmat_5finit_5fq15_2ec',['arm_mat_init_q15.c',['../arm__mat__init__q15_8c.html',1,'']]], + ['arm_5fmat_5finit_5fq31',['arm_mat_init_q31',['../group___matrix_init.html#ga48a5e5d37e1f062cc57fcfaf683343cc',1,'arm_mat_init_q31(arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData): arm_mat_init_q31.c'],['../group___matrix_init.html#ga48a5e5d37e1f062cc57fcfaf683343cc',1,'arm_mat_init_q31(arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData): arm_mat_init_q31.c']]], + ['arm_5fmat_5finit_5fq31_2ec',['arm_mat_init_q31.c',['../arm__mat__init__q31_8c.html',1,'']]], + ['arm_5fmat_5finverse_5ff32',['arm_mat_inverse_f32',['../group___matrix_inv.html#ga542be7aabbf7a2297a4b62cf212910e3',1,'arm_mat_inverse_f32(const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst): arm_mat_inverse_f32.c'],['../group___matrix_inv.html#ga542be7aabbf7a2297a4b62cf212910e3',1,'arm_mat_inverse_f32(const arm_matrix_instance_f32 *src, arm_matrix_instance_f32 *dst): arm_mat_inverse_f32.c']]], + ['arm_5fmat_5finverse_5ff32_2ec',['arm_mat_inverse_f32.c',['../arm__mat__inverse__f32_8c.html',1,'']]], + ['arm_5fmat_5finverse_5ff64',['arm_mat_inverse_f64',['../group___matrix_inv.html#gaede2367c02df083cc915ddd5d8fae838',1,'arm_mat_inverse_f64(const arm_matrix_instance_f64 *pSrc, arm_matrix_instance_f64 *pDst): arm_mat_inverse_f64.c'],['../group___matrix_inv.html#gaede2367c02df083cc915ddd5d8fae838',1,'arm_mat_inverse_f64(const arm_matrix_instance_f64 *src, arm_matrix_instance_f64 *dst): arm_mat_inverse_f64.c']]], + ['arm_5fmat_5finverse_5ff64_2ec',['arm_mat_inverse_f64.c',['../arm__mat__inverse__f64_8c.html',1,'']]], + ['arm_5fmat_5fmult_5ff32',['arm_mat_mult_f32',['../group___matrix_mult.html#ga917bf0270310c1d3f0eda1fc7c0026a0',1,'arm_mat_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_mult_f32.c'],['../group___matrix_mult.html#ga917bf0270310c1d3f0eda1fc7c0026a0',1,'arm_mat_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_mult_f32.c']]], + ['arm_5fmat_5fmult_5ff32_2ec',['arm_mat_mult_f32.c',['../arm__mat__mult__f32_8c.html',1,'']]], + ['arm_5fmat_5fmult_5ffast_5fq15',['arm_mat_mult_fast_q15',['../group___matrix_mult.html#ga08f37d93a5bfef0c5000dc5e0a411f93',1,'arm_mat_mult_fast_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState): arm_mat_mult_fast_q15.c'],['../group___matrix_mult.html#ga08f37d93a5bfef0c5000dc5e0a411f93',1,'arm_mat_mult_fast_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState): arm_mat_mult_fast_q15.c']]], + ['arm_5fmat_5fmult_5ffast_5fq15_2ec',['arm_mat_mult_fast_q15.c',['../arm__mat__mult__fast__q15_8c.html',1,'']]], + ['arm_5fmat_5fmult_5ffast_5fq31',['arm_mat_mult_fast_q31',['../group___matrix_mult.html#ga2785e8c1b785348b0c439b56aaf585a3',1,'arm_mat_mult_fast_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_fast_q31.c'],['../group___matrix_mult.html#ga2785e8c1b785348b0c439b56aaf585a3',1,'arm_mat_mult_fast_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_fast_q31.c']]], + ['arm_5fmat_5fmult_5ffast_5fq31_2ec',['arm_mat_mult_fast_q31.c',['../arm__mat__mult__fast__q31_8c.html',1,'']]], + ['arm_5fmat_5fmult_5fq15',['arm_mat_mult_q15',['../group___matrix_mult.html#ga3657b99a9667945373e520dbac0f4516',1,'arm_mat_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState CMSIS_UNUSED): arm_mat_mult_q15.c'],['../arm__math_8h.html#a7521d59196189bb6dde26e8cdfb66e21',1,'arm_mat_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState): arm_math.h']]], + ['arm_5fmat_5fmult_5fq15_2ec',['arm_mat_mult_q15.c',['../arm__mat__mult__q15_8c.html',1,'']]], + ['arm_5fmat_5fmult_5fq31',['arm_mat_mult_q31',['../group___matrix_mult.html#ga2ec612a8c2c4916477fb9bc1ab548a6e',1,'arm_mat_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_q31.c'],['../group___matrix_mult.html#ga2ec612a8c2c4916477fb9bc1ab548a6e',1,'arm_mat_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_q31.c']]], + ['arm_5fmat_5fmult_5fq31_2ec',['arm_mat_mult_q31.c',['../arm__mat__mult__q31_8c.html',1,'']]], + ['arm_5fmat_5fscale_5ff32',['arm_mat_scale_f32',['../group___matrix_scale.html#ga9cb4e385b18c9a0b9cbc940c1067ca12',1,'arm_mat_scale_f32(const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst): arm_mat_scale_f32.c'],['../group___matrix_scale.html#ga9cb4e385b18c9a0b9cbc940c1067ca12',1,'arm_mat_scale_f32(const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst): arm_mat_scale_f32.c']]], + ['arm_5fmat_5fscale_5ff32_2ec',['arm_mat_scale_f32.c',['../arm__mat__scale__f32_8c.html',1,'']]], + ['arm_5fmat_5fscale_5fq15',['arm_mat_scale_q15',['../group___matrix_scale.html#ga7521769e2cf1c3d9c4656138cd2ae2ca',1,'arm_mat_scale_q15(const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst): arm_mat_scale_q15.c'],['../group___matrix_scale.html#ga7521769e2cf1c3d9c4656138cd2ae2ca',1,'arm_mat_scale_q15(const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst): arm_mat_scale_q15.c']]], + ['arm_5fmat_5fscale_5fq15_2ec',['arm_mat_scale_q15.c',['../arm__mat__scale__q15_8c.html',1,'']]], + ['arm_5fmat_5fscale_5fq31',['arm_mat_scale_q31',['../group___matrix_scale.html#ga609743821ee81fa8c34c4bcdc1ed9744',1,'arm_mat_scale_q31(const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst): arm_mat_scale_q31.c'],['../group___matrix_scale.html#ga609743821ee81fa8c34c4bcdc1ed9744',1,'arm_mat_scale_q31(const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst): arm_mat_scale_q31.c']]], + ['arm_5fmat_5fscale_5fq31_2ec',['arm_mat_scale_q31.c',['../arm__mat__scale__q31_8c.html',1,'']]], + ['arm_5fmat_5fsub_5ff32',['arm_mat_sub_f32',['../group___matrix_sub.html#gac8b72fb70246ccfee3b372002345732c',1,'arm_mat_sub_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_sub_f32.c'],['../group___matrix_sub.html#gac8b72fb70246ccfee3b372002345732c',1,'arm_mat_sub_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_sub_f32.c']]], + ['arm_5fmat_5fsub_5ff32_2ec',['arm_mat_sub_f32.c',['../arm__mat__sub__f32_8c.html',1,'']]], + ['arm_5fmat_5fsub_5fq15',['arm_mat_sub_q15',['../group___matrix_sub.html#gaf647776a425b7f9dd0aca3e11d81f02f',1,'arm_mat_sub_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_sub_q15.c'],['../group___matrix_sub.html#gaf647776a425b7f9dd0aca3e11d81f02f',1,'arm_mat_sub_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_sub_q15.c']]], + ['arm_5fmat_5fsub_5fq15_2ec',['arm_mat_sub_q15.c',['../arm__mat__sub__q15_8c.html',1,'']]], + ['arm_5fmat_5fsub_5fq31',['arm_mat_sub_q31',['../group___matrix_sub.html#ga39f42e0e3b7f115fbb909d6ff4e1329d',1,'arm_mat_sub_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_sub_q31.c'],['../group___matrix_sub.html#ga39f42e0e3b7f115fbb909d6ff4e1329d',1,'arm_mat_sub_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_sub_q31.c']]], + ['arm_5fmat_5fsub_5fq31_2ec',['arm_mat_sub_q31.c',['../arm__mat__sub__q31_8c.html',1,'']]], + ['arm_5fmat_5ftrans_5ff32',['arm_mat_trans_f32',['../group___matrix_trans.html#gad7dd9f108429da13d3864696ceeec789',1,'arm_mat_trans_f32(const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst): arm_mat_trans_f32.c'],['../group___matrix_trans.html#gad7dd9f108429da13d3864696ceeec789',1,'arm_mat_trans_f32(const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst): arm_mat_trans_f32.c']]], + ['arm_5fmat_5ftrans_5ff32_2ec',['arm_mat_trans_f32.c',['../arm__mat__trans__f32_8c.html',1,'']]], + ['arm_5fmat_5ftrans_5fq15',['arm_mat_trans_q15',['../group___matrix_trans.html#ga4f4f821cc695fd0ef9061d702e08050a',1,'arm_mat_trans_q15(const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst): arm_mat_trans_q15.c'],['../group___matrix_trans.html#ga4f4f821cc695fd0ef9061d702e08050a',1,'arm_mat_trans_q15(const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst): arm_mat_trans_q15.c']]], + ['arm_5fmat_5ftrans_5fq15_2ec',['arm_mat_trans_q15.c',['../arm__mat__trans__q15_8c.html',1,'']]], + ['arm_5fmat_5ftrans_5fq31',['arm_mat_trans_q31',['../group___matrix_trans.html#ga30a4d49489ac67ff98a46b9f58f73bf1',1,'arm_mat_trans_q31(const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst): arm_mat_trans_q31.c'],['../group___matrix_trans.html#ga30a4d49489ac67ff98a46b9f58f73bf1',1,'arm_mat_trans_q31(const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst): arm_mat_trans_q31.c']]], + ['arm_5fmat_5ftrans_5fq31_2ec',['arm_mat_trans_q31.c',['../arm__mat__trans__q31_8c.html',1,'']]], + ['arm_5fmath_2eh',['arm_math.h',['../arm__math_8h.html',1,'']]], + ['arm_5fmath_5fargument_5ferror',['ARM_MATH_ARGUMENT_ERROR',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a74897e18d4b8f62b12a7d8a01dd2bb35',1,'arm_math.h']]], + ['arm_5fmath_5flength_5ferror',['ARM_MATH_LENGTH_ERROR',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a9ae74d7f8a53aec0512ae8f0a421e0e1',1,'arm_math.h']]], + ['arm_5fmath_5fnaninf',['ARM_MATH_NANINF',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6ac55996aaf19245238a8f57a91aeaefcc',1,'arm_math.h']]], + ['arm_5fmath_5fsingular',['ARM_MATH_SINGULAR',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a91509ea9c819dbd592ac13a6b05382dc',1,'arm_math.h']]], + ['arm_5fmath_5fsize_5fmismatch',['ARM_MATH_SIZE_MISMATCH',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a7071b92f1f6bc3c5c312a237ea91105b',1,'arm_math.h']]], + ['arm_5fmath_5fsuccess',['ARM_MATH_SUCCESS',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a9f8b2a10bd827fb4600e77d455902eb0',1,'arm_math.h']]], + ['arm_5fmath_5ftest_5ffailure',['ARM_MATH_TEST_FAILURE',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a09457f2be656b35015fd6d36202fa376',1,'arm_math.h']]], + ['arm_5fmatrix_5fexample_5ff32_2ec',['arm_matrix_example_f32.c',['../arm__matrix__example__f32_8c.html',1,'']]], + ['arm_5fmatrix_5finstance_5ff32',['arm_matrix_instance_f32',['../structarm__matrix__instance__f32.html',1,'']]], + ['arm_5fmatrix_5finstance_5ff64',['arm_matrix_instance_f64',['../structarm__matrix__instance__f64.html',1,'']]], + ['arm_5fmatrix_5finstance_5fq15',['arm_matrix_instance_q15',['../structarm__matrix__instance__q15.html',1,'']]], + ['arm_5fmatrix_5finstance_5fq31',['arm_matrix_instance_q31',['../structarm__matrix__instance__q31.html',1,'']]], + ['arm_5fmax_5ff32',['arm_max_f32',['../group___max.html#ga5b89d1b04575aeec494f678695fb87d8',1,'arm_max_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_max_f32.c'],['../group___max.html#ga5b89d1b04575aeec494f678695fb87d8',1,'arm_max_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_max_f32.c']]], + ['arm_5fmax_5ff32_2ec',['arm_max_f32.c',['../arm__max__f32_8c.html',1,'']]], + ['arm_5fmax_5fq15',['arm_max_q15',['../group___max.html#gac132856c68f4bf2a056eaad5921c7880',1,'arm_max_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_max_q15.c'],['../group___max.html#gac132856c68f4bf2a056eaad5921c7880',1,'arm_max_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_max_q15.c']]], + ['arm_5fmax_5fq15_2ec',['arm_max_q15.c',['../arm__max__q15_8c.html',1,'']]], + ['arm_5fmax_5fq31',['arm_max_q31',['../group___max.html#gaff7cbd4e955382def06724cc4cc85795',1,'arm_max_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_max_q31.c'],['../group___max.html#gaff7cbd4e955382def06724cc4cc85795',1,'arm_max_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_max_q31.c']]], + ['arm_5fmax_5fq31_2ec',['arm_max_q31.c',['../arm__max__q31_8c.html',1,'']]], + ['arm_5fmax_5fq7',['arm_max_q7',['../group___max.html#ga6afd64d381b5c232de59163ebfe71e35',1,'arm_max_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex): arm_max_q7.c'],['../group___max.html#ga6afd64d381b5c232de59163ebfe71e35',1,'arm_max_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex): arm_max_q7.c']]], + ['arm_5fmax_5fq7_2ec',['arm_max_q7.c',['../arm__max__q7_8c.html',1,'']]], + ['arm_5fmean_5ff32',['arm_mean_f32',['../group__mean.html#ga74ce08c49ab61e57bd50c3a0ca1fdb2b',1,'arm_mean_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_mean_f32.c'],['../group__mean.html#ga74ce08c49ab61e57bd50c3a0ca1fdb2b',1,'arm_mean_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_mean_f32.c']]], + ['arm_5fmean_5ff32_2ec',['arm_mean_f32.c',['../arm__mean__f32_8c.html',1,'']]], + ['arm_5fmean_5fq15',['arm_mean_q15',['../group__mean.html#gac882495d5f098819fd3939c1ef7795b3',1,'arm_mean_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_mean_q15.c'],['../group__mean.html#gac882495d5f098819fd3939c1ef7795b3',1,'arm_mean_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_mean_q15.c']]], + ['arm_5fmean_5fq15_2ec',['arm_mean_q15.c',['../arm__mean__q15_8c.html',1,'']]], + ['arm_5fmean_5fq31',['arm_mean_q31',['../group__mean.html#gacf2526d8c2d75e486e8f0b0e31877ad0',1,'arm_mean_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_mean_q31.c'],['../group__mean.html#gacf2526d8c2d75e486e8f0b0e31877ad0',1,'arm_mean_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_mean_q31.c']]], + ['arm_5fmean_5fq31_2ec',['arm_mean_q31.c',['../arm__mean__q31_8c.html',1,'']]], + ['arm_5fmean_5fq7',['arm_mean_q7',['../group__mean.html#gaebc707ee539020357c25da4c75b52eb7',1,'arm_mean_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult): arm_mean_q7.c'],['../group__mean.html#gaebc707ee539020357c25da4c75b52eb7',1,'arm_mean_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult): arm_mean_q7.c']]], + ['arm_5fmean_5fq7_2ec',['arm_mean_q7.c',['../arm__mean__q7_8c.html',1,'']]], + ['arm_5fmin_5ff32',['arm_min_f32',['../group___min.html#gaf62b1673740fc516ea64daf777b7d74a',1,'arm_min_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_min_f32.c'],['../group___min.html#gaf62b1673740fc516ea64daf777b7d74a',1,'arm_min_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_min_f32.c']]], + ['arm_5fmin_5ff32_2ec',['arm_min_f32.c',['../arm__min__f32_8c.html',1,'']]], + ['arm_5fmin_5fq15',['arm_min_q15',['../group___min.html#gad065e37535ebb726750ac1545cb3fa6f',1,'arm_min_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_min_q15.c'],['../group___min.html#gad065e37535ebb726750ac1545cb3fa6f',1,'arm_min_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_min_q15.c']]], + ['arm_5fmin_5fq15_2ec',['arm_min_q15.c',['../arm__min__q15_8c.html',1,'']]], + ['arm_5fmin_5fq31',['arm_min_q31',['../group___min.html#gab20faeceb5ff5d2d9dd628c2ecf41303',1,'arm_min_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_min_q31.c'],['../group___min.html#gab20faeceb5ff5d2d9dd628c2ecf41303',1,'arm_min_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_min_q31.c']]], + ['arm_5fmin_5fq31_2ec',['arm_min_q31.c',['../arm__min__q31_8c.html',1,'']]], + ['arm_5fmin_5fq7',['arm_min_q7',['../group___min.html#ga3631d38ac8d715fc14f6f1b343f4c4ed',1,'arm_min_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex): arm_min_q7.c'],['../group___min.html#ga3631d38ac8d715fc14f6f1b343f4c4ed',1,'arm_min_q7(q7_t *pSrc, uint32_t blockSize, q7_t *result, uint32_t *index): arm_min_q7.c']]], + ['arm_5fmin_5fq7_2ec',['arm_min_q7.c',['../arm__min__q7_8c.html',1,'']]], + ['arm_5fmult_5ff32',['arm_mult_f32',['../group___basic_mult.html#gaca3f0b8227da431ab29225b88888aa32',1,'arm_mult_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_mult_f32.c'],['../group___basic_mult.html#gaca3f0b8227da431ab29225b88888aa32',1,'arm_mult_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_mult_f32.c']]], + ['arm_5fmult_5ff32_2ec',['arm_mult_f32.c',['../arm__mult__f32_8c.html',1,'']]], + ['arm_5fmult_5fq15',['arm_mult_q15',['../group___basic_mult.html#gafb0778d27ed98a2a6f2ecb7d48cc8c75',1,'arm_mult_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_mult_q15.c'],['../group___basic_mult.html#gafb0778d27ed98a2a6f2ecb7d48cc8c75',1,'arm_mult_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_mult_q15.c']]], + ['arm_5fmult_5fq15_2ec',['arm_mult_q15.c',['../arm__mult__q15_8c.html',1,'']]], + ['arm_5fmult_5fq31',['arm_mult_q31',['../group___basic_mult.html#ga3528c0f54a0607acc603f0490d3ca6c6',1,'arm_mult_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_mult_q31.c'],['../group___basic_mult.html#ga3528c0f54a0607acc603f0490d3ca6c6',1,'arm_mult_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_mult_q31.c']]], + ['arm_5fmult_5fq31_2ec',['arm_mult_q31.c',['../arm__mult__q31_8c.html',1,'']]], + ['arm_5fmult_5fq7',['arm_mult_q7',['../group___basic_mult.html#ga16677275ed83ff0878da531e875c27ef',1,'arm_mult_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_mult_q7.c'],['../group___basic_mult.html#ga16677275ed83ff0878da531e875c27ef',1,'arm_mult_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_mult_q7.c']]], + ['arm_5fmult_5fq7_2ec',['arm_mult_q7.c',['../arm__mult__q7_8c.html',1,'']]], + ['arm_5fnegate_5ff32',['arm_negate_f32',['../group__negate.html#ga2e169c4de6cc6e3ba4be9473531e6657',1,'arm_negate_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_negate_f32.c'],['../group__negate.html#ga2e169c4de6cc6e3ba4be9473531e6657',1,'arm_negate_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_negate_f32.c']]], + ['arm_5fnegate_5ff32_2ec',['arm_negate_f32.c',['../arm__negate__f32_8c.html',1,'']]], + ['arm_5fnegate_5fq15',['arm_negate_q15',['../group__negate.html#ga0239a833d72cf00290b9723c394e5042',1,'arm_negate_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_negate_q15.c'],['../group__negate.html#ga0239a833d72cf00290b9723c394e5042',1,'arm_negate_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_negate_q15.c']]], + ['arm_5fnegate_5fq15_2ec',['arm_negate_q15.c',['../arm__negate__q15_8c.html',1,'']]], + ['arm_5fnegate_5fq31',['arm_negate_q31',['../group__negate.html#ga2784c6887686a73dc7c364e2e41c776c',1,'arm_negate_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_negate_q31.c'],['../group__negate.html#ga2784c6887686a73dc7c364e2e41c776c',1,'arm_negate_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_negate_q31.c']]], + ['arm_5fnegate_5fq31_2ec',['arm_negate_q31.c',['../arm__negate__q31_8c.html',1,'']]], + ['arm_5fnegate_5fq7',['arm_negate_q7',['../group__negate.html#gaae78fc079a43bdaa3055f9b32e2a1f4c',1,'arm_negate_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_negate_q7.c'],['../group__negate.html#gaae78fc079a43bdaa3055f9b32e2a1f4c',1,'arm_negate_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_negate_q7.c']]], + ['arm_5fnegate_5fq7_2ec',['arm_negate_q7.c',['../arm__negate__q7_8c.html',1,'']]], + ['arm_5foffset_5ff32',['arm_offset_f32',['../group__offset.html#ga989dfae15235799d82f62ef9d356abb4',1,'arm_offset_f32(float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize): arm_offset_f32.c'],['../group__offset.html#ga989dfae15235799d82f62ef9d356abb4',1,'arm_offset_f32(float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize): arm_offset_f32.c']]], + ['arm_5foffset_5ff32_2ec',['arm_offset_f32.c',['../arm__offset__f32_8c.html',1,'']]], + ['arm_5foffset_5fq15',['arm_offset_q15',['../group__offset.html#gab4c1d2391b599549e5a06fdfbc2747bf',1,'arm_offset_q15(q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize): arm_offset_q15.c'],['../group__offset.html#gab4c1d2391b599549e5a06fdfbc2747bf',1,'arm_offset_q15(q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize): arm_offset_q15.c']]], + ['arm_5foffset_5fq15_2ec',['arm_offset_q15.c',['../arm__offset__q15_8c.html',1,'']]], + ['arm_5foffset_5fq31',['arm_offset_q31',['../group__offset.html#gac84ec42cbbebc5c197a87d0221819acf',1,'arm_offset_q31(q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize): arm_offset_q31.c'],['../group__offset.html#gac84ec42cbbebc5c197a87d0221819acf',1,'arm_offset_q31(q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize): arm_offset_q31.c']]], + ['arm_5foffset_5fq31_2ec',['arm_offset_q31.c',['../arm__offset__q31_8c.html',1,'']]], + ['arm_5foffset_5fq7',['arm_offset_q7',['../group__offset.html#ga00bd9cc17c5bf905e76c91ad50886393',1,'arm_offset_q7(q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize): arm_offset_q7.c'],['../group__offset.html#ga00bd9cc17c5bf905e76c91ad50886393',1,'arm_offset_q7(q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize): arm_offset_q7.c']]], + ['arm_5foffset_5fq7_2ec',['arm_offset_q7.c',['../arm__offset__q7_8c.html',1,'']]], + ['arm_5fpark_5ff32',['arm_park_f32',['../group__park.html#ga08b3a683197de7e143fb00497787683c',1,'arm_math.h']]], + ['arm_5fpark_5fq31',['arm_park_q31',['../group__park.html#gaf4cc6370c0cfc14ea66774ed3c5bb10f',1,'arm_math.h']]], + ['arm_5fpid_5ff32',['arm_pid_f32',['../group___p_i_d.html#gac5c79ed46abf2d72b8cf41fa6c708bda',1,'arm_math.h']]], + ['arm_5fpid_5finit_5ff32',['arm_pid_init_f32',['../group___p_i_d.html#gae31536b19b82b93ed184fb1ab73cfcb3',1,'arm_pid_init_f32(arm_pid_instance_f32 *S, int32_t resetStateFlag): arm_pid_init_f32.c'],['../group___p_i_d.html#gae31536b19b82b93ed184fb1ab73cfcb3',1,'arm_pid_init_f32(arm_pid_instance_f32 *S, int32_t resetStateFlag): arm_pid_init_f32.c']]], + ['arm_5fpid_5finit_5ff32_2ec',['arm_pid_init_f32.c',['../arm__pid__init__f32_8c.html',1,'']]], + ['arm_5fpid_5finit_5fq15',['arm_pid_init_q15',['../group___p_i_d.html#ga2cb1e3d3ebb167348fdabec74653d5c3',1,'arm_pid_init_q15(arm_pid_instance_q15 *S, int32_t resetStateFlag): arm_pid_init_q15.c'],['../group___p_i_d.html#ga2cb1e3d3ebb167348fdabec74653d5c3',1,'arm_pid_init_q15(arm_pid_instance_q15 *S, int32_t resetStateFlag): arm_pid_init_q15.c']]], + ['arm_5fpid_5finit_5fq15_2ec',['arm_pid_init_q15.c',['../arm__pid__init__q15_8c.html',1,'']]], + ['arm_5fpid_5finit_5fq31',['arm_pid_init_q31',['../group___p_i_d.html#gad9d88485234fa9460b1ce9e64989ac86',1,'arm_pid_init_q31(arm_pid_instance_q31 *S, int32_t resetStateFlag): arm_pid_init_q31.c'],['../group___p_i_d.html#gad9d88485234fa9460b1ce9e64989ac86',1,'arm_pid_init_q31(arm_pid_instance_q31 *S, int32_t resetStateFlag): arm_pid_init_q31.c']]], + ['arm_5fpid_5finit_5fq31_2ec',['arm_pid_init_q31.c',['../arm__pid__init__q31_8c.html',1,'']]], + ['arm_5fpid_5finstance_5ff32',['arm_pid_instance_f32',['../structarm__pid__instance__f32.html',1,'']]], + ['arm_5fpid_5finstance_5fq15',['arm_pid_instance_q15',['../structarm__pid__instance__q15.html',1,'']]], + ['arm_5fpid_5finstance_5fq31',['arm_pid_instance_q31',['../structarm__pid__instance__q31.html',1,'']]], + ['arm_5fpid_5fq15',['arm_pid_q15',['../group___p_i_d.html#ga084f646bbb20d55f225c3efafcf7fc1f',1,'arm_math.h']]], + ['arm_5fpid_5fq31',['arm_pid_q31',['../group___p_i_d.html#ga5f6f941e7ae981728dd3a662f8f4ecd7',1,'arm_math.h']]], + ['arm_5fpid_5freset_5ff32',['arm_pid_reset_f32',['../group___p_i_d.html#ga9ec860bcb6f8ca31205bf0f1b51ab723',1,'arm_pid_reset_f32(arm_pid_instance_f32 *S): arm_pid_reset_f32.c'],['../group___p_i_d.html#ga9ec860bcb6f8ca31205bf0f1b51ab723',1,'arm_pid_reset_f32(arm_pid_instance_f32 *S): arm_pid_reset_f32.c']]], + ['arm_5fpid_5freset_5ff32_2ec',['arm_pid_reset_f32.c',['../arm__pid__reset__f32_8c.html',1,'']]], + ['arm_5fpid_5freset_5fq15',['arm_pid_reset_q15',['../group___p_i_d.html#ga408566dacb4fa6e0458b2c75672e525f',1,'arm_pid_reset_q15(arm_pid_instance_q15 *S): arm_pid_reset_q15.c'],['../group___p_i_d.html#ga408566dacb4fa6e0458b2c75672e525f',1,'arm_pid_reset_q15(arm_pid_instance_q15 *S): arm_pid_reset_q15.c']]], + ['arm_5fpid_5freset_5fq15_2ec',['arm_pid_reset_q15.c',['../arm__pid__reset__q15_8c.html',1,'']]], + ['arm_5fpid_5freset_5fq31',['arm_pid_reset_q31',['../group___p_i_d.html#gaeecbacd3fb37c608ec25474d3a0dffa9',1,'arm_pid_reset_q31(arm_pid_instance_q31 *S): arm_pid_reset_q31.c'],['../group___p_i_d.html#gaeecbacd3fb37c608ec25474d3a0dffa9',1,'arm_pid_reset_q31(arm_pid_instance_q31 *S): arm_pid_reset_q31.c']]], + ['arm_5fpid_5freset_5fq31_2ec',['arm_pid_reset_q31.c',['../arm__pid__reset__q31_8c.html',1,'']]], + ['arm_5fpower_5ff32',['arm_power_f32',['../group__power.html#ga993c00dd7f661d66bdb6e58426e893aa',1,'arm_power_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_power_f32.c'],['../group__power.html#ga993c00dd7f661d66bdb6e58426e893aa',1,'arm_power_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_power_f32.c']]], + ['arm_5fpower_5ff32_2ec',['arm_power_f32.c',['../arm__power__f32_8c.html',1,'']]], + ['arm_5fpower_5fq15',['arm_power_q15',['../group__power.html#ga7050c04b7515e01a75c38f1abbaf71ba',1,'arm_power_q15(q15_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q15.c'],['../group__power.html#ga7050c04b7515e01a75c38f1abbaf71ba',1,'arm_power_q15(q15_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q15.c']]], + ['arm_5fpower_5fq15_2ec',['arm_power_q15.c',['../arm__power__q15_8c.html',1,'']]], + ['arm_5fpower_5fq31',['arm_power_q31',['../group__power.html#ga0b93d31bb5b5ed214c2b94d8a7744cd2',1,'arm_power_q31(q31_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q31.c'],['../group__power.html#ga0b93d31bb5b5ed214c2b94d8a7744cd2',1,'arm_power_q31(q31_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q31.c']]], + ['arm_5fpower_5fq31_2ec',['arm_power_q31.c',['../arm__power__q31_8c.html',1,'']]], + ['arm_5fpower_5fq7',['arm_power_q7',['../group__power.html#gaf969c85c5655e3d72d7b99ff188f92c9',1,'arm_power_q7(q7_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_power_q7.c'],['../group__power.html#gaf969c85c5655e3d72d7b99ff188f92c9',1,'arm_power_q7(q7_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_power_q7.c']]], + ['arm_5fpower_5fq7_2ec',['arm_power_q7.c',['../arm__power__q7_8c.html',1,'']]], + ['arm_5fprovide_5fguard_5fbits_5fq15',['arm_provide_guard_bits_q15',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c']]], + ['arm_5fprovide_5fguard_5fbits_5fq31',['arm_provide_guard_bits_q31',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c']]], + ['arm_5fprovide_5fguard_5fbits_5fq7',['arm_provide_guard_bits_q7',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c']]], + ['arm_5fq15_5fto_5ffloat',['arm_q15_to_float',['../group__q15__to__x.html#gaf8b0d2324de273fc430b0e61ad4e9eb2',1,'arm_q15_to_float(q15_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q15_to_float.c'],['../group__q15__to__x.html#gaf8b0d2324de273fc430b0e61ad4e9eb2',1,'arm_q15_to_float(q15_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q15_to_float.c']]], + ['arm_5fq15_5fto_5ffloat_2ec',['arm_q15_to_float.c',['../arm__q15__to__float_8c.html',1,'']]], + ['arm_5fq15_5fto_5fq31',['arm_q15_to_q31',['../group__q15__to__x.html#ga7ba2d87366990ad5380439e2b4a4c0a5',1,'arm_q15_to_q31(q15_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q15_to_q31.c'],['../group__q15__to__x.html#ga7ba2d87366990ad5380439e2b4a4c0a5',1,'arm_q15_to_q31(q15_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q15_to_q31.c']]], + ['arm_5fq15_5fto_5fq31_2ec',['arm_q15_to_q31.c',['../arm__q15__to__q31_8c.html',1,'']]], + ['arm_5fq15_5fto_5fq7',['arm_q15_to_q7',['../group__q15__to__x.html#ga8fb31855ff8cce09c2ec9308f48ded69',1,'arm_q15_to_q7(q15_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q15_to_q7.c'],['../group__q15__to__x.html#ga8fb31855ff8cce09c2ec9308f48ded69',1,'arm_q15_to_q7(q15_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q15_to_q7.c']]], + ['arm_5fq15_5fto_5fq7_2ec',['arm_q15_to_q7.c',['../arm__q15__to__q7_8c.html',1,'']]], + ['arm_5fq31_5fto_5ffloat',['arm_q31_to_float',['../group__q31__to__x.html#gacf407b007a37da18e99dabd9023c56b4',1,'arm_q31_to_float(q31_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q31_to_float.c'],['../group__q31__to__x.html#gacf407b007a37da18e99dabd9023c56b4',1,'arm_q31_to_float(q31_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q31_to_float.c']]], + ['arm_5fq31_5fto_5ffloat_2ec',['arm_q31_to_float.c',['../arm__q31__to__float_8c.html',1,'']]], + ['arm_5fq31_5fto_5fq15',['arm_q31_to_q15',['../group__q31__to__x.html#ga901dede4661365c9e7c630d3eb31c32c',1,'arm_q31_to_q15(q31_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q31_to_q15.c'],['../group__q31__to__x.html#ga901dede4661365c9e7c630d3eb31c32c',1,'arm_q31_to_q15(q31_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q31_to_q15.c']]], + ['arm_5fq31_5fto_5fq15_2ec',['arm_q31_to_q15.c',['../arm__q31__to__q15_8c.html',1,'']]], + ['arm_5fq31_5fto_5fq7',['arm_q31_to_q7',['../group__q31__to__x.html#ga7f297d1a7d776805395095fdb24a8071',1,'arm_q31_to_q7(q31_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q31_to_q7.c'],['../group__q31__to__x.html#ga7f297d1a7d776805395095fdb24a8071',1,'arm_q31_to_q7(q31_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q31_to_q7.c']]], + ['arm_5fq31_5fto_5fq7_2ec',['arm_q31_to_q7.c',['../arm__q31__to__q7_8c.html',1,'']]], + ['arm_5fq7_5fto_5ffloat',['arm_q7_to_float',['../group__q7__to__x.html#ga656620f957b65512ed83db03fd455ec5',1,'arm_q7_to_float(q7_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q7_to_float.c'],['../group__q7__to__x.html#ga656620f957b65512ed83db03fd455ec5',1,'arm_q7_to_float(q7_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q7_to_float.c']]], + ['arm_5fq7_5fto_5ffloat_2ec',['arm_q7_to_float.c',['../arm__q7__to__float_8c.html',1,'']]], + ['arm_5fq7_5fto_5fq15',['arm_q7_to_q15',['../group__q7__to__x.html#gabc02597fc3f01033daf43ec0547a2f78',1,'arm_q7_to_q15(q7_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q7_to_q15.c'],['../group__q7__to__x.html#gabc02597fc3f01033daf43ec0547a2f78',1,'arm_q7_to_q15(q7_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q7_to_q15.c']]], + ['arm_5fq7_5fto_5fq15_2ec',['arm_q7_to_q15.c',['../arm__q7__to__q15_8c.html',1,'']]], + ['arm_5fq7_5fto_5fq31',['arm_q7_to_q31',['../group__q7__to__x.html#gad8958cd3cb7f521466168b46a25b7908',1,'arm_q7_to_q31(q7_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q7_to_q31.c'],['../group__q7__to__x.html#gad8958cd3cb7f521466168b46a25b7908',1,'arm_q7_to_q31(q7_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q7_to_q31.c']]], + ['arm_5fq7_5fto_5fq31_2ec',['arm_q7_to_q31.c',['../arm__q7__to__q31_8c.html',1,'']]], + ['arm_5fradix2_5fbutterfly_5ff32',['arm_radix2_butterfly_f32',['../arm__cfft__radix2__f32_8c.html#a04631e102b5209af3402b225b1abe868',1,'arm_cfft_radix2_f32.c']]], + ['arm_5fradix2_5fbutterfly_5finverse_5ff32',['arm_radix2_butterfly_inverse_f32',['../arm__cfft__radix2__f32_8c.html#abda34af152e515a95ac38470ac053b77',1,'arm_cfft_radix2_f32.c']]], + ['arm_5fradix2_5fbutterfly_5finverse_5fq15',['arm_radix2_butterfly_inverse_q15',['../arm__cfft__radix2__q15_8c.html#a91ff93fa10757b3872680fec4835c412',1,'arm_cfft_radix2_q15.c']]], + ['arm_5fradix2_5fbutterfly_5finverse_5fq31',['arm_radix2_butterfly_inverse_q31',['../arm__cfft__radix2__q31_8c.html#a4d665f67080455b95cafec04009fd52d',1,'arm_cfft_radix2_q31.c']]], + ['arm_5fradix2_5fbutterfly_5fq15',['arm_radix2_butterfly_q15',['../arm__cfft__radix2__q15_8c.html#a521780ba2fd3450cbf02784e38859699',1,'arm_cfft_radix2_q15.c']]], + ['arm_5fradix2_5fbutterfly_5fq31',['arm_radix2_butterfly_q31',['../arm__cfft__radix2__q31_8c.html#a740f4fe69e6148d22fc99f374d304e7e',1,'arm_cfft_radix2_q31.c']]], + ['arm_5fradix4_5fbutterfly_5ff32',['arm_radix4_butterfly_f32',['../group__group_transforms.html#gae239ddf995d1607115f9e84d5c069b9c',1,'arm_radix4_butterfly_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix4_f32.c'],['../group__group_transforms.html#gae239ddf995d1607115f9e84d5c069b9c',1,'arm_radix4_butterfly_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix4_f32.c']]], + ['arm_5fradix4_5fbutterfly_5finverse_5ff32',['arm_radix4_butterfly_inverse_f32',['../arm__cfft__radix4__f32_8c.html#a2a78df6e4bbf080624f2b6349224ec93',1,'arm_radix4_butterfly_inverse_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen): arm_cfft_radix4_f32.c'],['../arm__rfft__f32_8c.html#a2a78df6e4bbf080624f2b6349224ec93',1,'arm_radix4_butterfly_inverse_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen): arm_cfft_radix4_f32.c']]], + ['arm_5fradix4_5fbutterfly_5finverse_5fq15',['arm_radix4_butterfly_inverse_q15',['../arm__cfft__q15_8c.html#a734ecff00f21a6a10e9ec437c8987eb1',1,'arm_radix4_butterfly_inverse_q15(q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c'],['../arm__cfft__radix4__q15_8c.html#aad04e8439d17dab5617bf1be268bb391',1,'arm_radix4_butterfly_inverse_q15(q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c']]], + ['arm_5fradix4_5fbutterfly_5finverse_5fq31',['arm_radix4_butterfly_inverse_q31',['../arm__cfft__q31_8c.html#ac9c7c553114c1201a3a987a11b8a6d01',1,'arm_radix4_butterfly_inverse_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c'],['../arm__cfft__radix4__q31_8c.html#ac9c7c553114c1201a3a987a11b8a6d01',1,'arm_radix4_butterfly_inverse_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c']]], + ['arm_5fradix4_5fbutterfly_5fq15',['arm_radix4_butterfly_q15',['../arm__cfft__q15_8c.html#abf1a2f9aa9f44ad5da1f0dbae8b54f2f',1,'arm_radix4_butterfly_q15(q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c'],['../arm__cfft__radix4__q15_8c.html#a2d01d2045f280c32036da97d33c52440',1,'arm_radix4_butterfly_q15(q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c']]], + ['arm_5fradix4_5fbutterfly_5fq31',['arm_radix4_butterfly_q31',['../arm__cfft__q31_8c.html#ac12f1e7f159d5741358cdc36830a0395',1,'arm_radix4_butterfly_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c'],['../arm__cfft__radix4__q31_8c.html#ac12f1e7f159d5741358cdc36830a0395',1,'arm_radix4_butterfly_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c']]], + ['arm_5fradix8_5fbutterfly_5ff32',['arm_radix8_butterfly_f32',['../arm__cfft__f32_8c.html#a72350c6eaa1eef8796ab43c1497c6b9c',1,'arm_radix8_butterfly_f32(float32_t *pSrc, uint16_t fftLen, const float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix8_f32.c'],['../arm__cfft__radix8__f32_8c.html#a72350c6eaa1eef8796ab43c1497c6b9c',1,'arm_radix8_butterfly_f32(float32_t *pSrc, uint16_t fftLen, const float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix8_f32.c']]], + ['arm_5frecip_5fq15',['arm_recip_q15',['../arm__math_8h.html#a1c66e370a6ae91aaafbaec5e979198d7',1,'arm_math.h']]], + ['arm_5frecip_5fq31',['arm_recip_q31',['../arm__math_8h.html#a43140f04ca94c2a7394e7a222e2d8fb4',1,'arm_math.h']]], + ['arm_5frfft_5ff32',['arm_rfft_f32',['../group___real_f_f_t.html#ga3df1766d230532bc068fc4ed69d0fcdc',1,'arm_rfft_f32(const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst): arm_rfft_f32.c'],['../group___real_f_f_t.html#ga3df1766d230532bc068fc4ed69d0fcdc',1,'arm_rfft_f32(const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst): arm_rfft_f32.c']]], + ['arm_5frfft_5ff32_2ec',['arm_rfft_f32.c',['../arm__rfft__f32_8c.html',1,'']]], + ['arm_5frfft_5ffast_5ff32',['arm_rfft_fast_f32',['../group___real_f_f_t.html#ga180d8b764d59cbb85d37a2d5f7cd9799',1,'arm_rfft_fast_f32(arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag): arm_rfft_fast_f32.c'],['../group___real_f_f_t.html#ga180d8b764d59cbb85d37a2d5f7cd9799',1,'arm_rfft_fast_f32(arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag): arm_rfft_fast_f32.c']]], + ['arm_5frfft_5ffast_5ff32_2ec',['arm_rfft_fast_f32.c',['../arm__rfft__fast__f32_8c.html',1,'']]], + ['arm_5frfft_5ffast_5finit_5ff32',['arm_rfft_fast_init_f32',['../group___real_f_f_t.html#gac5fceb172551e7c11eb4d0e17ef15aa3',1,'arm_rfft_fast_init_f32(arm_rfft_fast_instance_f32 *S, uint16_t fftLen): arm_rfft_fast_init_f32.c'],['../group___real_f_f_t.html#gac5fceb172551e7c11eb4d0e17ef15aa3',1,'arm_rfft_fast_init_f32(arm_rfft_fast_instance_f32 *S, uint16_t fftLen): arm_rfft_fast_init_f32.c']]], + ['arm_5frfft_5ffast_5finit_5ff32_2ec',['arm_rfft_fast_init_f32.c',['../arm__rfft__fast__init__f32_8c.html',1,'']]], + ['arm_5frfft_5ffast_5finstance_5ff32',['arm_rfft_fast_instance_f32',['../structarm__rfft__fast__instance__f32.html',1,'']]], + ['arm_5frfft_5finit_5ff32',['arm_rfft_init_f32',['../group___real_f_f_t.html#ga10717ee326bf50832ef1c25b85a23068',1,'arm_rfft_init_f32(arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_f32.c'],['../group___real_f_f_t.html#ga10717ee326bf50832ef1c25b85a23068',1,'arm_rfft_init_f32(arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_f32.c']]], + ['arm_5frfft_5finit_5ff32_2ec',['arm_rfft_init_f32.c',['../arm__rfft__init__f32_8c.html',1,'']]], + ['arm_5frfft_5finit_5fq15',['arm_rfft_init_q15',['../group___real_f_f_t.html#ga053450cc600a55410ba5b5605e96245d',1,'arm_rfft_init_q15(arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q15.c'],['../group___real_f_f_t.html#ga053450cc600a55410ba5b5605e96245d',1,'arm_rfft_init_q15(arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q15.c']]], + ['arm_5frfft_5finit_5fq15_2ec',['arm_rfft_init_q15.c',['../arm__rfft__init__q15_8c.html',1,'']]], + ['arm_5frfft_5finit_5fq31',['arm_rfft_init_q31',['../group___real_f_f_t.html#ga5abde938abbe72e95c5bab080eb33c45',1,'arm_rfft_init_q31(arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q31.c'],['../group___real_f_f_t.html#ga5abde938abbe72e95c5bab080eb33c45',1,'arm_rfft_init_q31(arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q31.c']]], + ['arm_5frfft_5finit_5fq31_2ec',['arm_rfft_init_q31.c',['../arm__rfft__init__q31_8c.html',1,'']]], + ['arm_5frfft_5finstance_5ff32',['arm_rfft_instance_f32',['../structarm__rfft__instance__f32.html',1,'']]], + ['arm_5frfft_5finstance_5fq15',['arm_rfft_instance_q15',['../structarm__rfft__instance__q15.html',1,'']]], + ['arm_5frfft_5finstance_5fq31',['arm_rfft_instance_q31',['../structarm__rfft__instance__q31.html',1,'']]], + ['arm_5frfft_5fq15',['arm_rfft_q15',['../group___real_f_f_t.html#ga00e615f5db21736ad5b27fb6146f3fc5',1,'arm_rfft_q15(const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst): arm_rfft_q15.c'],['../group___real_f_f_t.html#ga00e615f5db21736ad5b27fb6146f3fc5',1,'arm_rfft_q15(const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst): arm_rfft_q15.c']]], + ['arm_5frfft_5fq15_2ec',['arm_rfft_q15.c',['../arm__rfft__q15_8c.html',1,'']]], + ['arm_5frfft_5fq31',['arm_rfft_q31',['../group___real_f_f_t.html#gabaeab5646aeea9844e6d42ca8c73fe3a',1,'arm_rfft_q31(const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst): arm_rfft_q31.c'],['../group___real_f_f_t.html#gabaeab5646aeea9844e6d42ca8c73fe3a',1,'arm_rfft_q31(const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst): arm_rfft_q31.c']]], + ['arm_5frfft_5fq31_2ec',['arm_rfft_q31.c',['../arm__rfft__q31_8c.html',1,'']]], + ['arm_5frms_5ff32',['arm_rms_f32',['../group___r_m_s.html#ga0e3ab1b57da32d45388d1fa90d7fd88c',1,'arm_rms_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_rms_f32.c'],['../group___r_m_s.html#ga0e3ab1b57da32d45388d1fa90d7fd88c',1,'arm_rms_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_rms_f32.c']]], + ['arm_5frms_5ff32_2ec',['arm_rms_f32.c',['../arm__rms__f32_8c.html',1,'']]], + ['arm_5frms_5fq15',['arm_rms_q15',['../group___r_m_s.html#gaf5b836b72dda9e5dfbbd17c7906fd13f',1,'arm_rms_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_rms_q15.c'],['../group___r_m_s.html#gaf5b836b72dda9e5dfbbd17c7906fd13f',1,'arm_rms_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_rms_q15.c']]], + ['arm_5frms_5fq15_2ec',['arm_rms_q15.c',['../arm__rms__q15_8c.html',1,'']]], + ['arm_5frms_5fq31',['arm_rms_q31',['../group___r_m_s.html#gae33015fda23fc44e7ead5e5ed7e8d314',1,'arm_rms_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_rms_q31.c'],['../group___r_m_s.html#gae33015fda23fc44e7ead5e5ed7e8d314',1,'arm_rms_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_rms_q31.c']]], + ['arm_5frms_5fq31_2ec',['arm_rms_q31.c',['../arm__rms__q31_8c.html',1,'']]], + ['arm_5fscale_5ff32',['arm_scale_f32',['../group__scale.html#ga3487af88b112f682ee90589cd419e123',1,'arm_scale_f32(float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize): arm_scale_f32.c'],['../group__scale.html#ga3487af88b112f682ee90589cd419e123',1,'arm_scale_f32(float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize): arm_scale_f32.c']]], + ['arm_5fscale_5ff32_2ec',['arm_scale_f32.c',['../arm__scale__f32_8c.html',1,'']]], + ['arm_5fscale_5fq15',['arm_scale_q15',['../group__scale.html#gafaac0e1927daffeb68a42719b53ea780',1,'arm_scale_q15(q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize): arm_scale_q15.c'],['../group__scale.html#gafaac0e1927daffeb68a42719b53ea780',1,'arm_scale_q15(q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize): arm_scale_q15.c']]], + ['arm_5fscale_5fq15_2ec',['arm_scale_q15.c',['../arm__scale__q15_8c.html',1,'']]], + ['arm_5fscale_5fq31',['arm_scale_q31',['../group__scale.html#ga83e36cd82bf51ce35406a199e477d47c',1,'arm_scale_q31(q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize): arm_scale_q31.c'],['../group__scale.html#ga83e36cd82bf51ce35406a199e477d47c',1,'arm_scale_q31(q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize): arm_scale_q31.c']]], + ['arm_5fscale_5fq31_2ec',['arm_scale_q31.c',['../arm__scale__q31_8c.html',1,'']]], + ['arm_5fscale_5fq7',['arm_scale_q7',['../group__scale.html#gabc9fd3d37904c58df56492b351d21fb0',1,'arm_scale_q7(q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize): arm_scale_q7.c'],['../group__scale.html#gabc9fd3d37904c58df56492b351d21fb0',1,'arm_scale_q7(q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize): arm_scale_q7.c']]], + ['arm_5fscale_5fq7_2ec',['arm_scale_q7.c',['../arm__scale__q7_8c.html',1,'']]], + ['arm_5fshift_5fq15',['arm_shift_q15',['../group__shift.html#gaa1757e53279780107acc92cf100adb61',1,'arm_shift_q15(q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize): arm_shift_q15.c'],['../group__shift.html#gaa1757e53279780107acc92cf100adb61',1,'arm_shift_q15(q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize): arm_shift_q15.c']]], + ['arm_5fshift_5fq15_2ec',['arm_shift_q15.c',['../arm__shift__q15_8c.html',1,'']]], + ['arm_5fshift_5fq31',['arm_shift_q31',['../group__shift.html#ga387dd8b7b87377378280978f16cdb13d',1,'arm_shift_q31(q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize): arm_shift_q31.c'],['../group__shift.html#ga387dd8b7b87377378280978f16cdb13d',1,'arm_shift_q31(q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize): arm_shift_q31.c']]], + ['arm_5fshift_5fq31_2ec',['arm_shift_q31.c',['../arm__shift__q31_8c.html',1,'']]], + ['arm_5fshift_5fq7',['arm_shift_q7',['../group__shift.html#ga47295d08a685f7de700a48dafb4db6fb',1,'arm_shift_q7(q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize): arm_shift_q7.c'],['../group__shift.html#ga47295d08a685f7de700a48dafb4db6fb',1,'arm_shift_q7(q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize): arm_shift_q7.c']]], + ['arm_5fshift_5fq7_2ec',['arm_shift_q7.c',['../arm__shift__q7_8c.html',1,'']]], + ['arm_5fsignal_5fconverge_5fdata_2ec',['arm_signal_converge_data.c',['../arm__signal__converge__data_8c.html',1,'']]], + ['arm_5fsignal_5fconverge_5fexample_5ff32_2ec',['arm_signal_converge_example_f32.c',['../arm__signal__converge__example__f32_8c.html',1,'']]], + ['arm_5fsin_5fcos_5fexample_5ff32_2ec',['arm_sin_cos_example_f32.c',['../arm__sin__cos__example__f32_8c.html',1,'']]], + ['arm_5fsin_5fcos_5ff32',['arm_sin_cos_f32',['../group___sin_cos.html#ga4420d45c37d58c310ef9ae1b5fe58020',1,'arm_sin_cos_f32(float32_t theta, float32_t *pSinVal, float32_t *pCosVal): arm_sin_cos_f32.c'],['../group___sin_cos.html#ga4420d45c37d58c310ef9ae1b5fe58020',1,'arm_sin_cos_f32(float32_t theta, float32_t *pSinVal, float32_t *pCosVal): arm_sin_cos_f32.c']]], + ['arm_5fsin_5fcos_5ff32_2ec',['arm_sin_cos_f32.c',['../arm__sin__cos__f32_8c.html',1,'']]], + ['arm_5fsin_5fcos_5fq31',['arm_sin_cos_q31',['../group___sin_cos.html#gae9e4ddebff9d4eb5d0a093e28e0bc504',1,'arm_sin_cos_q31(q31_t theta, q31_t *pSinVal, q31_t *pCosVal): arm_sin_cos_q31.c'],['../group___sin_cos.html#gae9e4ddebff9d4eb5d0a093e28e0bc504',1,'arm_sin_cos_q31(q31_t theta, q31_t *pSinVal, q31_t *pCosVal): arm_sin_cos_q31.c']]], + ['arm_5fsin_5fcos_5fq31_2ec',['arm_sin_cos_q31.c',['../arm__sin__cos__q31_8c.html',1,'']]], + ['arm_5fsin_5ff32',['arm_sin_f32',['../group__sin.html#gae164899c4a3fc0e946dc5d55555fe541',1,'arm_sin_f32(float32_t x): arm_sin_f32.c'],['../group__sin.html#gae164899c4a3fc0e946dc5d55555fe541',1,'arm_sin_f32(float32_t x): arm_sin_f32.c']]], + ['arm_5fsin_5ff32_2ec',['arm_sin_f32.c',['../arm__sin__f32_8c.html',1,'']]], + ['arm_5fsin_5fq15',['arm_sin_q15',['../group__sin.html#ga1fc6d6640be6cfa688a8bea0a48397ee',1,'arm_sin_q15(q15_t x): arm_sin_q15.c'],['../group__sin.html#ga1fc6d6640be6cfa688a8bea0a48397ee',1,'arm_sin_q15(q15_t x): arm_sin_q15.c']]], + ['arm_5fsin_5fq15_2ec',['arm_sin_q15.c',['../arm__sin__q15_8c.html',1,'']]], + ['arm_5fsin_5fq31',['arm_sin_q31',['../group__sin.html#ga57aade7d8892585992cdc6375bd82f9c',1,'arm_sin_q31(q31_t x): arm_sin_q31.c'],['../group__sin.html#ga57aade7d8892585992cdc6375bd82f9c',1,'arm_sin_q31(q31_t x): arm_sin_q31.c']]], + ['arm_5fsin_5fq31_2ec',['arm_sin_q31.c',['../arm__sin__q31_8c.html',1,'']]], + ['arm_5fsnr_5ff32',['arm_snr_f32',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c']]], + ['arm_5fsplit_5frfft_5ff32',['arm_split_rfft_f32',['../group__group_transforms.html#ga6cfdb6bdc66b13732ef2351caf98fdbb',1,'arm_rfft_f32.c']]], + ['arm_5fsplit_5frfft_5fq15',['arm_split_rfft_q15',['../arm__rfft__q15_8c.html#a7c2a21793586f9a69c42140665550e09',1,'arm_rfft_q15.c']]], + ['arm_5fsplit_5frfft_5fq31',['arm_split_rfft_q31',['../arm__rfft__q31_8c.html#a520e1c358d44fcd2724cb19d46eb5dfa',1,'arm_rfft_q31.c']]], + ['arm_5fsplit_5frifft_5ff32',['arm_split_rifft_f32',['../arm__rfft__f32_8c.html#a585bef78c103d150a116241a4feb6442',1,'arm_rfft_f32.c']]], + ['arm_5fsplit_5frifft_5fq15',['arm_split_rifft_q15',['../arm__rfft__q15_8c.html#aa72a531dd15a53570dddaf01b62158f4',1,'arm_rfft_q15.c']]], + ['arm_5fsplit_5frifft_5fq31',['arm_split_rifft_q31',['../arm__rfft__q31_8c.html#acc62dd39a59091c4d6a80d4e55adeb13',1,'arm_rfft_q31.c']]], + ['arm_5fsqrt_5ff32',['arm_sqrt_f32',['../group___s_q_r_t.html#ga56a40d1cf842b0b45267df6761975da0',1,'arm_math.h']]], + ['arm_5fsqrt_5fq15',['arm_sqrt_q15',['../group___s_q_r_t.html#ga5abe5ca724f3e15849662b03752c1238',1,'arm_sqrt_q15.c']]], + ['arm_5fsqrt_5fq15_2ec',['arm_sqrt_q15.c',['../arm__sqrt__q15_8c.html',1,'']]], + ['arm_5fsqrt_5fq31',['arm_sqrt_q31',['../group___s_q_r_t.html#ga119e25831e141d734d7ef10636670058',1,'arm_sqrt_q31.c']]], + ['arm_5fsqrt_5fq31_2ec',['arm_sqrt_q31.c',['../arm__sqrt__q31_8c.html',1,'']]], + ['arm_5fstatus',['arm_status',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6',1,'arm_math.h']]], + ['arm_5fstd_5ff32',['arm_std_f32',['../group___s_t_d.html#ga4969b5b5f3d001377bc401a3ee99dfc2',1,'arm_std_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_std_f32.c'],['../group___s_t_d.html#ga4969b5b5f3d001377bc401a3ee99dfc2',1,'arm_std_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_std_f32.c']]], + ['arm_5fstd_5ff32_2ec',['arm_std_f32.c',['../arm__std__f32_8c.html',1,'']]], + ['arm_5fstd_5fq15',['arm_std_q15',['../group___s_t_d.html#gaf9d27afa9928ff28a63cd98ea9218a72',1,'arm_std_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_std_q15.c'],['../group___s_t_d.html#gaf9d27afa9928ff28a63cd98ea9218a72',1,'arm_std_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_std_q15.c']]], + ['arm_5fstd_5fq15_2ec',['arm_std_q15.c',['../arm__std__q15_8c.html',1,'']]], + ['arm_5fstd_5fq31',['arm_std_q31',['../group___s_t_d.html#ga39495e74f96116178be085c9dc7742f5',1,'arm_std_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_std_q31.c'],['../group___s_t_d.html#ga39495e74f96116178be085c9dc7742f5',1,'arm_std_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_std_q31.c']]], + ['arm_5fstd_5fq31_2ec',['arm_std_q31.c',['../arm__std__q31_8c.html',1,'']]], + ['arm_5fsub_5ff32',['arm_sub_f32',['../group___basic_sub.html#ga7f975a472de286331134227c08aad826',1,'arm_sub_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_sub_f32.c'],['../group___basic_sub.html#ga7f975a472de286331134227c08aad826',1,'arm_sub_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_sub_f32.c']]], + ['arm_5fsub_5ff32_2ec',['arm_sub_f32.c',['../arm__sub__f32_8c.html',1,'']]], + ['arm_5fsub_5fq15',['arm_sub_q15',['../group___basic_sub.html#ga997a8ee93088d15bda23c325d455b588',1,'arm_sub_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_sub_q15.c'],['../group___basic_sub.html#ga997a8ee93088d15bda23c325d455b588',1,'arm_sub_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_sub_q15.c']]], + ['arm_5fsub_5fq15_2ec',['arm_sub_q15.c',['../arm__sub__q15_8c.html',1,'']]], + ['arm_5fsub_5fq31',['arm_sub_q31',['../group___basic_sub.html#ga28aa6908d092752144413e21933dc878',1,'arm_sub_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_sub_q31.c'],['../group___basic_sub.html#ga28aa6908d092752144413e21933dc878',1,'arm_sub_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_sub_q31.c']]], + ['arm_5fsub_5fq31_2ec',['arm_sub_q31.c',['../arm__sub__q31_8c.html',1,'']]], + ['arm_5fsub_5fq7',['arm_sub_q7',['../group___basic_sub.html#gab09941de7dfeb247e5c29b406a435fcc',1,'arm_sub_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_sub_q7.c'],['../group___basic_sub.html#gab09941de7dfeb247e5c29b406a435fcc',1,'arm_sub_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_sub_q7.c']]], + ['arm_5fsub_5fq7_2ec',['arm_sub_q7.c',['../arm__sub__q7_8c.html',1,'']]], + ['arm_5fvar_5ff32',['arm_var_f32',['../group__variance.html#ga393f26c5a3bfa05624fb8d32232a6d96',1,'arm_var_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_var_f32.c'],['../group__variance.html#ga393f26c5a3bfa05624fb8d32232a6d96',1,'arm_var_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_var_f32.c']]], + ['arm_5fvar_5ff32_2ec',['arm_var_f32.c',['../arm__var__f32_8c.html',1,'']]], + ['arm_5fvar_5fq15',['arm_var_q15',['../group__variance.html#ga79dce009ed2de28a125aeb3f19631654',1,'arm_var_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_var_q15.c'],['../group__variance.html#ga79dce009ed2de28a125aeb3f19631654',1,'arm_var_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_var_q15.c']]], + ['arm_5fvar_5fq15_2ec',['arm_var_q15.c',['../arm__var__q15_8c.html',1,'']]], + ['arm_5fvar_5fq31',['arm_var_q31',['../group__variance.html#gac02873f1c2cc80adfd799305f0e6465d',1,'arm_var_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_var_q31.c'],['../group__variance.html#gac02873f1c2cc80adfd799305f0e6465d',1,'arm_var_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_var_q31.c']]], + ['arm_5fvar_5fq31_2ec',['arm_var_q31.c',['../arm__var__q31_8c.html',1,'']]], + ['arm_5fvariance_5fexample_5ff32_2ec',['arm_variance_example_f32.c',['../arm__variance__example__f32_8c.html',1,'']]], + ['armbitrevindextable1024',['armBitRevIndexTable1024',['../arm__common__tables_8c.html#ae69b72fb0be5dab9a0ea76e9b6995cb6',1,'armBitRevIndexTable1024(): arm_common_tables.c'],['../arm__common__tables_8h.html#ae69b72fb0be5dab9a0ea76e9b6995cb6',1,'armBitRevIndexTable1024(): arm_common_tables.c']]], + ['armbitrevindextable1024_5ftable_5flength',['ARMBITREVINDEXTABLE1024_TABLE_LENGTH',['../arm__common__tables_8h.html#af3b3659a55efaf414757d15e6c0ea9cc',1,'arm_common_tables.h']]], + ['armbitrevindextable128',['armBitRevIndexTable128',['../arm__common__tables_8c.html#a04711bbb245f2ac7202db666eaaf10f2',1,'armBitRevIndexTable128(): arm_common_tables.c'],['../arm__common__tables_8h.html#a04711bbb245f2ac7202db666eaaf10f2',1,'armBitRevIndexTable128(): arm_common_tables.c']]], + ['armbitrevindextable16',['armBitRevIndexTable16',['../arm__common__tables_8c.html#a5ab065857509fe5780d79fdcdce801cb',1,'armBitRevIndexTable16(): arm_common_tables.c'],['../arm__common__tables_8h.html#a5ab065857509fe5780d79fdcdce801cb',1,'armBitRevIndexTable16(): arm_common_tables.c']]], + ['armbitrevindextable2048',['armBitRevIndexTable2048',['../arm__common__tables_8c.html#a68b7fcd07ae5433082e600dc7e7c7430',1,'armBitRevIndexTable2048(): arm_common_tables.c'],['../arm__common__tables_8h.html#a68b7fcd07ae5433082e600dc7e7c7430',1,'armBitRevIndexTable2048(): arm_common_tables.c']]], + ['armbitrevindextable2048_5ftable_5flength',['ARMBITREVINDEXTABLE2048_TABLE_LENGTH',['../arm__common__tables_8h.html#a1137f42be79c5941e942b58e262b5225',1,'arm_common_tables.h']]], + ['armbitrevindextable256',['armBitRevIndexTable256',['../arm__common__tables_8c.html#a77b17c8e7539af315c57de27610d8407',1,'armBitRevIndexTable256(): arm_common_tables.c'],['../arm__common__tables_8h.html#a77b17c8e7539af315c57de27610d8407',1,'armBitRevIndexTable256(): arm_common_tables.c']]], + ['armbitrevindextable32',['armBitRevIndexTable32',['../arm__common__tables_8c.html#afae094ea3df14c134012c4cb7b816637',1,'armBitRevIndexTable32(): arm_common_tables.c'],['../arm__common__tables_8h.html#afae094ea3df14c134012c4cb7b816637',1,'armBitRevIndexTable32(): arm_common_tables.c']]], + ['armbitrevindextable4096',['armBitRevIndexTable4096',['../arm__common__tables_8c.html#ac6bd23609f5bb10182e8eae65400541b',1,'armBitRevIndexTable4096(): arm_common_tables.c'],['../arm__common__tables_8h.html#ac6bd23609f5bb10182e8eae65400541b',1,'armBitRevIndexTable4096(): arm_common_tables.c']]], + ['armbitrevindextable4096_5ftable_5flength',['ARMBITREVINDEXTABLE4096_TABLE_LENGTH',['../arm__common__tables_8h.html#af08eb635c0e1cf0ab3e29931f9bf1492',1,'arm_common_tables.h']]], + ['armbitrevindextable512',['armBitRevIndexTable512',['../arm__common__tables_8c.html#a297a311183fb6d17d7ee0152ad1e43f3',1,'armBitRevIndexTable512(): arm_common_tables.c'],['../arm__common__tables_8h.html#a297a311183fb6d17d7ee0152ad1e43f3',1,'armBitRevIndexTable512(): arm_common_tables.c']]], + ['armbitrevindextable64',['armBitRevIndexTable64',['../arm__common__tables_8c.html#aafcb5c9203dada88ed6d1bdcf16aaba4',1,'armBitRevIndexTable64(): arm_common_tables.c'],['../arm__common__tables_8h.html#aafcb5c9203dada88ed6d1bdcf16aaba4',1,'armBitRevIndexTable64(): arm_common_tables.c']]], + ['armbitrevindextable_5f128_5ftable_5flength',['ARMBITREVINDEXTABLE_128_TABLE_LENGTH',['../arm__common__tables_8h.html#abb73376f7efda869394aab2acef4291c',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f256_5ftable_5flength',['ARMBITREVINDEXTABLE_256_TABLE_LENGTH',['../arm__common__tables_8h.html#aa7dc18c3b4f8d76f5a29f7b182007934',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f512_5ftable_5flength',['ARMBITREVINDEXTABLE_512_TABLE_LENGTH',['../arm__common__tables_8h.html#ab21231782baf177ef3edad11aeba5a4f',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f_5f16_5ftable_5flength',['ARMBITREVINDEXTABLE__16_TABLE_LENGTH',['../arm__common__tables_8h.html#a52289ebb691669410fbc40d1a8a1562a',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f_5f32_5ftable_5flength',['ARMBITREVINDEXTABLE__32_TABLE_LENGTH',['../arm__common__tables_8h.html#a6e12fc7073f15899078a1b2d8f4afb4c',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f_5f64_5ftable_5flength',['ARMBITREVINDEXTABLE__64_TABLE_LENGTH',['../arm__common__tables_8h.html#a73e1987baf5282c699168bccf635930e',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f1024',['armBitRevIndexTable_fixed_1024',['../arm__common__tables_8c.html#a579beb19201fab01210c37253447fa52',1,'armBitRevIndexTable_fixed_1024(): arm_common_tables.c'],['../arm__common__tables_8h.html#a579beb19201fab01210c37253447fa52',1,'armBitRevIndexTable_fixed_1024(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f1024_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH',['../arm__common__tables_8h.html#ab78db333c5f36a927cf5f6b492e93dd3',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f128',['armBitRevIndexTable_fixed_128',['../arm__common__tables_8c.html#aa10281deffc0cb708a08d55cfa513507',1,'armBitRevIndexTable_fixed_128(): arm_common_tables.c'],['../arm__common__tables_8h.html#aa10281deffc0cb708a08d55cfa513507',1,'armBitRevIndexTable_fixed_128(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f16',['armBitRevIndexTable_fixed_16',['../arm__common__tables_8c.html#a6c3b510a7d499dccaaea1ff164397ffb',1,'armBitRevIndexTable_fixed_16(): arm_common_tables.c'],['../arm__common__tables_8h.html#a6c3b510a7d499dccaaea1ff164397ffb',1,'armBitRevIndexTable_fixed_16(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f2048',['armBitRevIndexTable_fixed_2048',['../arm__common__tables_8c.html#ad888a207e20f601ed80b2ad43428c8cc',1,'armBitRevIndexTable_fixed_2048(): arm_common_tables.c'],['../arm__common__tables_8h.html#ad888a207e20f601ed80b2ad43428c8cc',1,'armBitRevIndexTable_fixed_2048(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f2048_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH',['../arm__common__tables_8h.html#a7dbfc9019953b525d83184a50f9976cc',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f256',['armBitRevIndexTable_fixed_256',['../arm__common__tables_8c.html#a721d01114016584629f03c0af37dd21e',1,'armBitRevIndexTable_fixed_256(): arm_common_tables.c'],['../arm__common__tables_8h.html#a721d01114016584629f03c0af37dd21e',1,'armBitRevIndexTable_fixed_256(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f32',['armBitRevIndexTable_fixed_32',['../arm__common__tables_8c.html#a59710415522cc38defa30402021f1f6b',1,'armBitRevIndexTable_fixed_32(): arm_common_tables.c'],['../arm__common__tables_8h.html#a59710415522cc38defa30402021f1f6b',1,'armBitRevIndexTable_fixed_32(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f4096',['armBitRevIndexTable_fixed_4096',['../arm__common__tables_8c.html#a2db644df1e878209441166cbb8d0db4f',1,'armBitRevIndexTable_fixed_4096(): arm_common_tables.c'],['../arm__common__tables_8h.html#a2db644df1e878209441166cbb8d0db4f',1,'armBitRevIndexTable_fixed_4096(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f4096_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH',['../arm__common__tables_8h.html#acbf48883fbb31d3dc71d232aa8e8f91f',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f512',['armBitRevIndexTable_fixed_512',['../arm__common__tables_8c.html#a03d1de7bfc5f318bc4fcfddd920bcb5a',1,'armBitRevIndexTable_fixed_512(): arm_common_tables.c'],['../arm__common__tables_8h.html#a03d1de7bfc5f318bc4fcfddd920bcb5a',1,'armBitRevIndexTable_fixed_512(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f64',['armBitRevIndexTable_fixed_64',['../arm__common__tables_8c.html#af9e1bbd7d535806a170786b069863b47',1,'armBitRevIndexTable_fixed_64(): arm_common_tables.c'],['../arm__common__tables_8h.html#af9e1bbd7d535806a170786b069863b47',1,'armBitRevIndexTable_fixed_64(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f_5f128_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH',['../arm__common__tables_8h.html#aa3b70f6b0a87ecd706fc51bb3551977b',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f256_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH',['../arm__common__tables_8h.html#ac0711126d0e162366ec7d0ebcb2a4420',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f512_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH',['../arm__common__tables_8h.html#a5486cba85dce51ffbfe6c0475882cc82',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f_5f16_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH',['../arm__common__tables_8h.html#a1dfdb9f7a5ad88ba7105c6cbc7e2c76e',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f_5f32_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH',['../arm__common__tables_8h.html#aaa9ecdc043a73fa12c941cbe6613f9fa',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f_5f64_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH',['../arm__common__tables_8h.html#ae53dc7c3198f9cfb5393e3a2644a12ac',1,'arm_common_tables.h']]], + ['armbitrevtable',['armBitRevTable',['../group___c_f_f_t___c_i_f_f_t.html#gae247e83ad50d474107254e25b36ad42b',1,'armBitRevTable(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gae247e83ad50d474107254e25b36ad42b',1,'armBitRevTable(): arm_common_tables.c']]], + ['armreciptableq15',['armRecipTableQ15',['../arm__common__tables_8c.html#a66ca8ac5f3a63d9962f501ae60aa32be',1,'armRecipTableQ15(): arm_common_tables.c'],['../arm__common__tables_8h.html#a56d3642e4ee33e3ada57ff11ecda1498',1,'armRecipTableQ15(): arm_common_tables.c']]], + ['armreciptableq31',['armRecipTableQ31',['../arm__common__tables_8c.html#aae6056f6c4e8f7e494445196bf864479',1,'armRecipTableQ31(): arm_common_tables.c'],['../arm__common__tables_8h.html#aae6056f6c4e8f7e494445196bf864479',1,'armRecipTableQ31(): arm_common_tables.c']]], + ['at_5ff32',['AT_f32',['../arm__matrix__example__f32_8c.html#a46dc2aa6dfc692af7b4a1379d7329ccd',1,'arm_matrix_example_f32.c']]], + ['atma_5ff32',['ATMA_f32',['../arm__matrix__example__f32_8c.html#a867497c6bf86014513bf2ad3551aa896',1,'arm_matrix_example_f32.c']]], + ['atmai_5ff32',['ATMAI_f32',['../arm__matrix__example__f32_8c.html#a44425c149c52b326a3b7a77676686f00',1,'arm_matrix_example_f32.c']]], + ['axb',['AxB',['../_a_r_m_2arm__convolution__example__f32_8c.html#a13521f3164dc55679f43b7cb2e41e098',1,'AxB(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a13521f3164dc55679f43b7cb2e41e098',1,'AxB(): arm_convolution_example_f32.c']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__fir__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__matrix__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__convolution__example_2_g_c_c_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__convolution__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__fir__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__convolution__example_2_g_c_c_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__matrix__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__fir__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__variance__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_62.html b/CMSIS/Documentation/DSP/html/search/all_62.html new file mode 100644 index 0000000..ee8871c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_62.js b/CMSIS/Documentation/DSP/html/search/all_62.js new file mode 100644 index 0000000..1809030 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_62.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['b_5ff32',['B_f32',['../arm__matrix__example__f32_8c.html#a974d5f0aace6a99e29ca767907fb3b9f',1,'arm_matrix_example_f32.c']]], + ['bilinear_20interpolation',['Bilinear Interpolation',['../group___bilinear_interpolate.html',1,'']]], + ['biquad_20cascade_20iir_20filters_20using_20direct_20form_20i_20structure',['Biquad Cascade IIR Filters Using Direct Form I Structure',['../group___biquad_cascade_d_f1.html',1,'']]], + ['biquad_20cascade_20iir_20filters_20using_20a_20direct_20form_20ii_20transposed_20structure',['Biquad Cascade IIR Filters Using a Direct Form II Transposed Structure',['../group___biquad_cascade_d_f2_t.html',1,'']]], + ['biquadstateband1q31',['biquadStateBand1Q31',['../arm__graphic__equalizer__example__q31_8c.html#a8e7062fa3f8b5ed9849566d16270f4ec',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband2q31',['biquadStateBand2Q31',['../arm__graphic__equalizer__example__q31_8c.html#a4a82090b15ebd0a45048d94f16131782',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband3q31',['biquadStateBand3Q31',['../arm__graphic__equalizer__example__q31_8c.html#ad487a54340631b764952fccf599adc8a',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband4q31',['biquadStateBand4Q31',['../arm__graphic__equalizer__example__q31_8c.html#a122ed5f6d8665139fbe9424a073b3474',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband5q31',['biquadStateBand5Q31',['../arm__graphic__equalizer__example__q31_8c.html#af88658a8c5f87eeea26da30305921b59',1,'arm_graphic_equalizer_example_q31.c']]], + ['bitreverseflag',['bitReverseFlag',['../structarm__cfft__radix2__instance__q15.html#af8300c1f60caa21e6b44b9240ab5af19',1,'arm_cfft_radix2_instance_q15::bitReverseFlag()'],['../structarm__cfft__radix4__instance__q15.html#a101e3f7b0bd6b5b14cd5214f23df4133',1,'arm_cfft_radix4_instance_q15::bitReverseFlag()'],['../structarm__cfft__radix2__instance__q31.html#a6239b8d268285334e88c008c07d68616',1,'arm_cfft_radix2_instance_q31::bitReverseFlag()'],['../structarm__cfft__radix4__instance__q31.html#a5a7c4f4c7b3fb655cbb2bc11ef160a2a',1,'arm_cfft_radix4_instance_q31::bitReverseFlag()'],['../structarm__cfft__radix2__instance__f32.html#af713b4ac5256a19bc965c89fe3005fa3',1,'arm_cfft_radix2_instance_f32::bitReverseFlag()'],['../structarm__cfft__radix4__instance__f32.html#ac10927a1620195a88649ce63dab66120',1,'arm_cfft_radix4_instance_f32::bitReverseFlag()']]], + ['bitreverseflagr',['bitReverseFlagR',['../structarm__rfft__instance__q15.html#a4c65cd40e0098ec2f5c0dc31488b9bc6',1,'arm_rfft_instance_q15::bitReverseFlagR()'],['../structarm__rfft__instance__q31.html#a3cb90cdc928a88b0203917dcb3dc1b71',1,'arm_rfft_instance_q31::bitReverseFlagR()'],['../structarm__rfft__instance__f32.html#ac342f3248157cbbd2f04a3c8ec9fc9eb',1,'arm_rfft_instance_f32::bitReverseFlagR()']]], + ['bitrevfactor',['bitRevFactor',['../structarm__cfft__radix2__instance__q15.html#a8722720c542cabd41df83fe88ef4f4cb',1,'arm_cfft_radix2_instance_q15::bitRevFactor()'],['../structarm__cfft__radix4__instance__q15.html#a6b010e5f02d1130c621e3d2e26b95df1',1,'arm_cfft_radix4_instance_q15::bitRevFactor()'],['../structarm__cfft__radix2__instance__q31.html#a9d17a87263953fe3559a007512c9f3a4',1,'arm_cfft_radix2_instance_q31::bitRevFactor()'],['../structarm__cfft__radix4__instance__q31.html#a94d2fead4efa4d5eaae142bbe30b0e15',1,'arm_cfft_radix4_instance_q31::bitRevFactor()'],['../structarm__cfft__radix2__instance__f32.html#ac1688dafa5177f6b1505abbfd0cf8b21',1,'arm_cfft_radix2_instance_f32::bitRevFactor()'],['../structarm__cfft__radix4__instance__f32.html#acc8cb18a8b901b8321ab9d86491e41a3',1,'arm_cfft_radix4_instance_f32::bitRevFactor()']]], + ['bitrevlength',['bitRevLength',['../structarm__cfft__instance__q15.html#a738907cf34bdbbaf724414ac2decbc3c',1,'arm_cfft_instance_q15::bitRevLength()'],['../structarm__cfft__instance__q31.html#a2250fa6b8fe73292c5418c50c0549f87',1,'arm_cfft_instance_q31::bitRevLength()'],['../structarm__cfft__instance__f32.html#a3ba329ed153d182746376208e773d648',1,'arm_cfft_instance_f32::bitRevLength()']]], + ['bk',['Bk',['../_a_r_m_2arm__convolution__example__f32_8c.html#a88a0167516ae7ed66203fd60e6ddeea3',1,'Bk(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a88a0167516ae7ed66203fd60e6ddeea3',1,'Bk(): arm_convolution_example_f32.c']]], + ['block_5fsize',['BLOCK_SIZE',['../arm__fir__example__f32_8c.html#ad51ded0bbd705f02f73fc60c0b721ced',1,'arm_fir_example_f32.c']]], + ['blocksize',['blockSize',['../arm__fir__example__f32_8c.html#ab6558f40a619c2502fbc24c880fd4fb0',1,'blockSize(): arm_fir_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#ab6558f40a619c2502fbc24c880fd4fb0',1,'blockSize(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#ab6558f40a619c2502fbc24c880fd4fb0',1,'blockSize(): arm_variance_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#afcf795f5a96fd55561abe69f56224630',1,'BLOCKSIZE(): arm_graphic_equalizer_example_q31.c'],['../arm__signal__converge__example__f32_8c.html#afcf795f5a96fd55561abe69f56224630',1,'BLOCKSIZE(): arm_signal_converge_example_f32.c']]], + ['basic_20math_20functions',['Basic Math Functions',['../group__group_math.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_63.html b/CMSIS/Documentation/DSP/html/search/all_63.html new file mode 100644 index 0000000..56b5ad1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_63.js b/CMSIS/Documentation/DSP/html/search/all_63.js new file mode 100644 index 0000000..0d0033c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_63.js @@ -0,0 +1,46 @@ +var searchData= +[ + ['complex_20fft_20tables',['Complex FFT Tables',['../group___c_f_f_t___c_i_f_f_t.html',1,'']]], + ['change_20log_2etxt',['Change Log.txt',['../_change_01_log_8txt.html',1,'']]], + ['change_20log',['Change Log',['../_change_log_pg.html',1,'']]], + ['class_20marks_20example',['Class Marks Example',['../group___class_marks.html',1,'']]], + ['clip_5fq31_5fto_5fq15',['clip_q31_to_q15',['../arm__math_8h.html#a4af3ca330e14587289518e6565fd04bd',1,'arm_math.h']]], + ['clip_5fq31_5fto_5fq7',['clip_q31_to_q7',['../arm__math_8h.html#aa9918ce19228b0d4f072fb84776eabc1',1,'arm_math.h']]], + ['clip_5fq63_5fto_5fq15',['clip_q63_to_q15',['../arm__math_8h.html#aa6f1e5d0d276f42217e75f071ca84a2e',1,'arm_math.h']]], + ['clip_5fq63_5fto_5fq31',['clip_q63_to_q31',['../arm__math_8h.html#ad7373e53d3c2e1adfeafc8c2e9720b5c',1,'arm_math.h']]], + ['complex_20conjugate',['Complex Conjugate',['../group__cmplx__conj.html',1,'']]], + ['complex_20dot_20product',['Complex Dot Product',['../group__cmplx__dot__prod.html',1,'']]], + ['complex_20magnitude',['Complex Magnitude',['../group__cmplx__mag.html',1,'']]], + ['complex_20magnitude_20squared',['Complex Magnitude Squared',['../group__cmplx__mag__squared.html',1,'']]], + ['complex_2dby_2dcomplex_20multiplication',['Complex-by-Complex Multiplication',['../group___cmplx_by_cmplx_mult.html',1,'']]], + ['complex_2dby_2dreal_20multiplication',['Complex-by-Real Multiplication',['../group___cmplx_by_real_mult.html',1,'']]], + ['complex_20matrix_20multiplication',['Complex Matrix Multiplication',['../group___cmplx_matrix_mult.html',1,'']]], + ['coefftable',['coeffTable',['../arm__graphic__equalizer__example__q31_8c.html#a024c59772b9603698b898721c1e8204e',1,'arm_graphic_equalizer_example_q31.c']]], + ['complex_20fft_20functions',['Complex FFT Functions',['../group___complex_f_f_t.html',1,'']]], + ['controller_5fq31_5fshift',['CONTROLLER_Q31_SHIFT',['../arm__math_8h.html#aaff6d2358c4ada8de838a279254ab550',1,'arm_math.h']]], + ['convolution',['Convolution',['../group___conv.html',1,'']]], + ['convolution_20example',['Convolution Example',['../group___convolution_example.html',1,'']]], + ['correlation',['Correlation',['../group___corr.html',1,'']]], + ['cosine',['Cosine',['../group__cos.html',1,'']]], + ['cos_5ffactors_5f128',['cos_factors_128',['../group___d_c_t4___i_d_c_t4.html#ga16248ed86161ef97538011b49f13e8b7',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactors_5f2048',['cos_factors_2048',['../group___d_c_t4___i_d_c_t4.html#ga1ba5306e0bc44730b40ab34cced45fd6',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactors_5f512',['cos_factors_512',['../group___d_c_t4___i_d_c_t4.html#ga49fd288352ca5bb43f5cec52273b0d80',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactors_5f8192',['cos_factors_8192',['../group___d_c_t4___i_d_c_t4.html#gac12484542bc6aaecc754c855457411de',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactorsq15_5f128',['cos_factorsQ15_128',['../group___d_c_t4___i_d_c_t4.html#ga1477edd21c7b08b0b59a564f6c24d6c5',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq15_5f2048',['cos_factorsQ15_2048',['../group___d_c_t4___i_d_c_t4.html#gaeee5df7c1be2374441868ecbbc6c7e5d',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq15_5f512',['cos_factorsQ15_512',['../group___d_c_t4___i_d_c_t4.html#gac056c3d026058eab3ba650828ff5642f',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq15_5f8192',['cos_factorsQ15_8192',['../group___d_c_t4___i_d_c_t4.html#ga988ff0563cc9df7848c9348871ac6c07',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq31_5f128',['cos_factorsQ31_128',['../group___d_c_t4___i_d_c_t4.html#gabb8ee2004a3520fd08388db637d43875',1,'arm_dct4_init_q31.c']]], + ['cos_5ffactorsq31_5f2048',['cos_factorsQ31_2048',['../group___d_c_t4___i_d_c_t4.html#gaa15fc3fb058482defda371113cd12e74',1,'arm_dct4_init_q31.c']]], + ['cos_5ffactorsq31_5f512',['cos_factorsQ31_512',['../group___d_c_t4___i_d_c_t4.html#ga3559569e603cb918911074be88523d0e',1,'arm_dct4_init_q31.c']]], + ['cos_5ffactorsq31_5f8192',['cos_factorsQ31_8192',['../group___d_c_t4___i_d_c_t4.html#gaf687c4bbdbc700a3ad5d807d28de63e4',1,'arm_dct4_init_q31.c']]], + ['cosoutput',['cosOutput',['../arm__sin__cos__example__f32_8c.html#a85b1050fcef4347d69f35a9aee798f8a',1,'arm_sin_cos_example_f32.c']]], + ['cossquareoutput',['cosSquareOutput',['../arm__sin__cos__example__f32_8c.html#a2cb185794dcb587d158f346ab049cc4e',1,'arm_sin_cos_example_f32.c']]], + ['convert_2032_2dbit_20floating_20point_20value',['Convert 32-bit floating point value',['../group__float__to__x.html',1,'']]], + ['complex_20math_20functions',['Complex Math Functions',['../group__group_cmplx_math.html',1,'']]], + ['controller_20functions',['Controller Functions',['../group__group_controller.html',1,'']]], + ['cmsis_20dsp_20software_20library',['CMSIS DSP Software Library',['../index.html',1,'']]], + ['convert_2016_2dbit_20integer_20value',['Convert 16-bit Integer value',['../group__q15__to__x.html',1,'']]], + ['convert_2032_2dbit_20integer_20value',['Convert 32-bit Integer value',['../group__q31__to__x.html',1,'']]], + ['convert_208_2dbit_20integer_20value',['Convert 8-bit Integer value',['../group__q7__to__x.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_64.html b/CMSIS/Documentation/DSP/html/search/all_64.html new file mode 100644 index 0000000..b53ff08 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_64.js b/CMSIS/Documentation/DSP/html/search/all_64.js new file mode 100644 index 0000000..e6a25e7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_64.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['dct_20type_20iv_20functions',['DCT Type IV Functions',['../group___d_c_t4___i_d_c_t4.html',1,'']]], + ['delta',['DELTA',['../_a_r_m_2arm__convolution__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_convolution_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_dotproduct_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_variance_example_f32.c']]], + ['delta_5fcoeff',['DELTA_COEFF',['../arm__signal__converge__example__f32_8c.html#a9156349d99957ded15d8aa3aa11723de',1,'arm_signal_converge_example_f32.c']]], + ['delta_5ferror',['DELTA_ERROR',['../arm__signal__converge__example__f32_8c.html#a6d3c6a4484dcaac72fbfe5100c39b9b6',1,'arm_signal_converge_example_f32.c']]], + ['delta_5fq15',['DELTA_Q15',['../arm__math_8h.html#a663277ff19ad0b409fb98b64b2c2750b',1,'arm_math.h']]], + ['delta_5fq31',['DELTA_Q31',['../arm__math_8h.html#aad77ae594e95c5af6ae4129bd6a483c2',1,'arm_math.h']]], + ['deprecated_20list',['Deprecated List',['../deprecated.html',1,'']]], + ['dobitreverse',['doBitReverse',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a4d2e31c38e8172505e0a369a6898657d',1,'doBitReverse(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a4d2e31c38e8172505e0a369a6898657d',1,'doBitReverse(): arm_fft_bin_example_f32.c']]], + ['dot_20product_20example',['Dot Product Example',['../group___dotproduct_example.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_65.html b/CMSIS/Documentation/DSP/html/search/all_65.html new file mode 100644 index 0000000..66cc834 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_65.js b/CMSIS/Documentation/DSP/html/search/all_65.js new file mode 100644 index 0000000..6048b02 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_65.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['energy',['energy',['../structarm__lms__norm__instance__f32.html#a6a4119e4f39447bbee31b066deafa16f',1,'arm_lms_norm_instance_f32::energy()'],['../structarm__lms__norm__instance__q31.html#a3c0ae42869afec8555dc8e3a7ef9b386',1,'arm_lms_norm_instance_q31::energy()'],['../structarm__lms__norm__instance__q15.html#a1c81ded399919d8181026bc1c8602e7b',1,'arm_lms_norm_instance_q15::energy()']]], + ['err_5fsignal',['err_signal',['../arm__signal__converge__example__f32_8c.html#ae6bcc00ea126543ab33d6174549eacda',1,'arm_signal_converge_example_f32.c']]], + ['erroutput',['errOutput',['../arm__signal__converge__example__f32_8c.html#a276e8a27484cf9389dabf047e76992ed',1,'arm_signal_converge_example_f32.c']]], + ['examples',['Examples',['../group__group_examples.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_66.html b/CMSIS/Documentation/DSP/html/search/all_66.html new file mode 100644 index 0000000..3d1f8b3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_66.js b/CMSIS/Documentation/DSP/html/search/all_66.js new file mode 100644 index 0000000..1f201ed --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_66.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['fast_5fmath_5fq15_5fshift',['FAST_MATH_Q15_SHIFT',['../arm__math_8h.html#a34716b73c631e65e8dd855e08384ecb2',1,'arm_math.h']]], + ['fast_5fmath_5fq31_5fshift',['FAST_MATH_Q31_SHIFT',['../arm__math_8h.html#a4268f77b1811a0c7fc2532a0bf6108b0',1,'arm_math.h']]], + ['fast_5fmath_5ftable_5fsize',['FAST_MATH_TABLE_SIZE',['../arm__math_8h.html#afcb9147c96853bea484cfc2dde07463d',1,'arm_math.h']]], + ['fftlen',['fftLen',['../structarm__cfft__radix2__instance__q15.html#a874085647351dcf3f0de39d2b1d49744',1,'arm_cfft_radix2_instance_q15::fftLen()'],['../structarm__cfft__radix4__instance__q15.html#a5fc543e7d84ca8cb7cf6648970f21ca6',1,'arm_cfft_radix4_instance_q15::fftLen()'],['../structarm__cfft__radix2__instance__q31.html#a960199f1373a192366878ef279eab00f',1,'arm_cfft_radix2_instance_q31::fftLen()'],['../structarm__cfft__radix4__instance__q31.html#ab413d2a5d3f45fa187d93813bf3bf81b',1,'arm_cfft_radix4_instance_q31::fftLen()'],['../structarm__cfft__radix2__instance__f32.html#a2f915a1c29635c1623086aaaa726be8f',1,'arm_cfft_radix2_instance_f32::fftLen()'],['../structarm__cfft__radix4__instance__f32.html#a7e6a6d290ce158ce9a15a45e364b021a',1,'arm_cfft_radix4_instance_f32::fftLen()'],['../structarm__cfft__instance__q15.html#a5f9e1d3a8c127ee323b5e6929aeb90df',1,'arm_cfft_instance_q15::fftLen()'],['../structarm__cfft__instance__q31.html#a4406f23e8fd0bff8d555225612e2a2a8',1,'arm_cfft_instance_q31::fftLen()'],['../structarm__cfft__instance__f32.html#acd8f9e9540e3dd348212726e5d6aaa95',1,'arm_cfft_instance_f32::fftLen()']]], + ['fftlenby2',['fftLenBy2',['../structarm__rfft__instance__f32.html#a075076e07ebb8521d8e3b49a31db6c57',1,'arm_rfft_instance_f32']]], + ['fftlenreal',['fftLenReal',['../structarm__rfft__instance__q15.html#aac5cf9e825917cbb14f439e56bb86ab3',1,'arm_rfft_instance_q15::fftLenReal()'],['../structarm__rfft__instance__q31.html#af777b0cadd5abaf064323692c2e6693b',1,'arm_rfft_instance_q31::fftLenReal()'],['../structarm__rfft__instance__f32.html#a4219d4669699e4efdcb150ed7a0d9a57',1,'arm_rfft_instance_f32::fftLenReal()']]], + ['fftlenrfft',['fftLenRFFT',['../structarm__rfft__fast__instance__f32.html#aef06ab665041ec36f5b25d464f0cab14',1,'arm_rfft_fast_instance_f32']]], + ['fftsize',['fftSize',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a9b500899c581f6df3ffc0a9f3a9ef6aa',1,'fftSize(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a9b500899c581f6df3ffc0a9f3a9ef6aa',1,'fftSize(): arm_fft_bin_example_f32.c']]], + ['finite_20impulse_20response_20_28fir_29_20filters',['Finite Impulse Response (FIR) Filters',['../group___f_i_r.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20decimator',['Finite Impulse Response (FIR) Decimator',['../group___f_i_r__decimate.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20interpolator',['Finite Impulse Response (FIR) Interpolator',['../group___f_i_r___interpolate.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20lattice_20filters',['Finite Impulse Response (FIR) Lattice Filters',['../group___f_i_r___lattice.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20sparse_20filters',['Finite Impulse Response (FIR) Sparse Filters',['../group___f_i_r___sparse.html',1,'']]], + ['fircoeff_5ff32',['FIRCoeff_f32',['../arm__signal__converge__data_8c.html#aede8780f021b7f5c33df0c5ee2183ee6',1,'FIRCoeff_f32(): arm_signal_converge_data.c'],['../arm__signal__converge__example__f32_8c.html#aede8780f021b7f5c33df0c5ee2183ee6',1,'FIRCoeff_f32(): arm_signal_converge_data.c']]], + ['fircoeffs32',['firCoeffs32',['../arm__fir__example__f32_8c.html#ae070afd14f437ad1ae0a947e4403dd0e',1,'arm_fir_example_f32.c']]], + ['fir_20lowpass_20filter_20example',['FIR Lowpass Filter Example',['../group___f_i_r_l_p_f.html',1,'']]], + ['firstatef32',['firStateF32',['../arm__fir__example__f32_8c.html#a46d61cabe5cb207f2776e1d4f8ca0f38',1,'firStateF32(): arm_fir_example_f32.c'],['../arm__signal__converge__example__f32_8c.html#a358ec4e79689e6d3787b89fe78bdb772',1,'firStateF32(): arm_signal_converge_example_f32.c']]], + ['float32_5ft',['float32_t',['../arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715',1,'arm_math.h']]], + ['float64_5ft',['float64_t',['../arm__math_8h.html#ac55f3ae81b5bc9053760baacf57e47f4',1,'arm_math.h']]], + ['frequency_20bin_20example',['Frequency Bin Example',['../group___frequency_bin.html',1,'']]], + ['fast_20math_20functions',['Fast Math Functions',['../group__group_fast_math.html',1,'']]], + ['filtering_20functions',['Filtering Functions',['../group__group_filters.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_67.html b/CMSIS/Documentation/DSP/html/search/all_67.html new file mode 100644 index 0000000..41a459a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_67.js b/CMSIS/Documentation/DSP/html/search/all_67.js new file mode 100644 index 0000000..0d0b3e8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_67.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['arm_5fclass_5fmarks_5fexample_5ff32_2ec',['arm_class_marks_example_f32.c',['../_g_c_c_2arm__class__marks__example__f32_8c.html',1,'']]], + ['arm_5fconvolution_5fexample_5ff32_2ec',['arm_convolution_example_f32.c',['../_g_c_c_2arm__convolution__example__f32_8c.html',1,'']]], + ['arm_5fdotproduct_5fexample_5ff32_2ec',['arm_dotproduct_example_f32.c',['../_g_c_c_2arm__dotproduct__example__f32_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fdata_2ec',['arm_fft_bin_data.c',['../_g_c_c_2arm__fft__bin__data_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fexample_5ff32_2ec',['arm_fft_bin_example_f32.c',['../_g_c_c_2arm__fft__bin__example__f32_8c.html',1,'']]], + ['gaindb',['gainDB',['../arm__graphic__equalizer__example__q31_8c.html#a963aee85bb41a50fc943ac9048d123ab',1,'arm_graphic_equalizer_example_q31.c']]], + ['graphic_20audio_20equalizer_20example',['Graphic Audio Equalizer Example',['../group___g_e_q5_band.html',1,'']]], + ['getinput',['getinput',['../arm__signal__converge__example__f32_8c.html#afd2975c4763ec935771e6f63bfe7758b',1,'arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_68.html b/CMSIS/Documentation/DSP/html/search/all_68.html new file mode 100644 index 0000000..6df9097 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_68.js b/CMSIS/Documentation/DSP/html/search/all_68.js new file mode 100644 index 0000000..3408c23 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['high_20precision_20q31_20biquad_20cascade_20filter',['High Precision Q31 Biquad Cascade Filter',['../group___biquad_cascade_d_f1__32x64.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_69.html b/CMSIS/Documentation/DSP/html/search/all_69.html new file mode 100644 index 0000000..1a00b55 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_69.js b/CMSIS/Documentation/DSP/html/search/all_69.js new file mode 100644 index 0000000..64f7ba4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_69.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['interpolation_20functions',['Interpolation Functions',['../group__group_interpolation.html',1,'']]], + ['ifftflag',['ifftFlag',['../structarm__cfft__radix2__instance__q15.html#ab5c073286bdd2f6e2bf783ced36bf1de',1,'arm_cfft_radix2_instance_q15::ifftFlag()'],['../structarm__cfft__radix4__instance__q15.html#a2ecff6ea735cb4d22e922d0fd5736655',1,'arm_cfft_radix4_instance_q15::ifftFlag()'],['../structarm__cfft__radix2__instance__q31.html#a2607378ce64be16698bb8a3b1af8d3c8',1,'arm_cfft_radix2_instance_q31::ifftFlag()'],['../structarm__cfft__radix4__instance__q31.html#adc0a62ba669ad2282ecbe43d5d96abab',1,'arm_cfft_radix4_instance_q31::ifftFlag()'],['../structarm__cfft__radix2__instance__f32.html#a8dbe98d2c924e35e0a3fed2fe948176f',1,'arm_cfft_radix2_instance_f32::ifftFlag()'],['../structarm__cfft__radix4__instance__f32.html#a25d1da64dd6487c291f04d226f9acc66',1,'arm_cfft_radix4_instance_f32::ifftFlag()'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a379ccb99013d369a41b49619083c16ef',1,'ifftFlag(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a379ccb99013d369a41b49619083c16ef',1,'ifftFlag(): arm_fft_bin_example_f32.c']]], + ['ifftflagr',['ifftFlagR',['../structarm__rfft__instance__q15.html#a8051ffe268c147e431e1bea7bb4c4258',1,'arm_rfft_instance_q15::ifftFlagR()'],['../structarm__rfft__instance__q31.html#af5c2615e6cde15524df38fa57ea32d94',1,'arm_rfft_instance_q31::ifftFlagR()'],['../structarm__rfft__instance__f32.html#a5ee6d10a934ab4b666e0bb286c3d633f',1,'arm_rfft_instance_f32::ifftFlagR()']]], + ['infinite_20impulse_20response_20_28iir_29_20lattice_20filters',['Infinite Impulse Response (IIR) Lattice Filters',['../group___i_i_r___lattice.html',1,'']]], + ['index_5fmask',['INDEX_MASK',['../arm__math_8h.html#a29f839928f4752b73c8858d6dbb55294',1,'arm_math.h']]], + ['input_5fspacing',['INPUT_SPACING',['../arm__math_8h.html#a1339e9abc11a3870e0c04f822a62166a',1,'arm_math.h']]], + ['inputq31',['inputQ31',['../arm__graphic__equalizer__example__q31_8c.html#a79521a4d6a9adb144c4d999ae713413c',1,'arm_graphic_equalizer_example_q31.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_6b.html b/CMSIS/Documentation/DSP/html/search/all_6b.html new file mode 100644 index 0000000..571dadb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6b.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_6b.js b/CMSIS/Documentation/DSP/html/search/all_6b.js new file mode 100644 index 0000000..dbdbd2b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6b.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['kd',['Kd',['../structarm__pid__instance__q15.html#af5d4b53091f19eff7536636b7cc43111',1,'arm_pid_instance_q15::Kd()'],['../structarm__pid__instance__q31.html#aab4ff371d14441df501f1169f71cbd17',1,'arm_pid_instance_q31::Kd()'],['../structarm__pid__instance__f32.html#ad5b68fbf84d16188ae4747ff91f6f088',1,'arm_pid_instance_f32::Kd()']]], + ['ki',['Ki',['../structarm__pid__instance__q15.html#a0dcc19d5c8f7bc401acea9e8318cd777',1,'arm_pid_instance_q15::Ki()'],['../structarm__pid__instance__q31.html#aa861d69fd398f29aa0b4b455a823ed72',1,'arm_pid_instance_q31::Ki()'],['../structarm__pid__instance__f32.html#ac0feffde05fe391eeab3bf78e953830a',1,'arm_pid_instance_f32::Ki()']]], + ['kp',['Kp',['../structarm__pid__instance__q15.html#ad228aae24a1b6d855c93a8b9bbc1c4f1',1,'arm_pid_instance_q15::Kp()'],['../structarm__pid__instance__q31.html#ac2410bf7f856d58dc1d773d4983cac8e',1,'arm_pid_instance_q31::Kp()'],['../structarm__pid__instance__f32.html#aa9b9aa9e413c6cec376a9dddc9f01ebe',1,'arm_pid_instance_f32::Kp()']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_6c.html b/CMSIS/Documentation/DSP/html/search/all_6c.html new file mode 100644 index 0000000..f6383cc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_6c.js b/CMSIS/Documentation/DSP/html/search/all_6c.js new file mode 100644 index 0000000..6779aeb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6c.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['l',['L',['../structarm__fir__interpolate__instance__q15.html#a5431bdc079e72a973b51d359f7f13603',1,'arm_fir_interpolate_instance_q15::L()'],['../structarm__fir__interpolate__instance__q31.html#a5cdf0a631cb74e0e9588c388abe5235c',1,'arm_fir_interpolate_instance_q31::L()'],['../structarm__fir__interpolate__instance__f32.html#ae6f94dcc0ccd8aa4bc699b20985d9df5',1,'arm_fir_interpolate_instance_f32::L()']]], + ['linear_20interpolate_20example',['Linear Interpolate Example',['../group___linear_interp_example.html',1,'']]], + ['linear_20interpolation',['Linear Interpolation',['../group___linear_interpolate.html',1,'']]], + ['least_20mean_20square_20_28lms_29_20filters',['Least Mean Square (LMS) Filters',['../group___l_m_s.html',1,'']]], + ['lmsnorm_5finstance',['lmsNorm_instance',['../arm__signal__converge__example__f32_8c.html#a519f9b4db839245f3bf2075ff4c17605',1,'arm_signal_converge_example_f32.c']]], + ['lmsnormcoeff_5ff32',['lmsNormCoeff_f32',['../arm__signal__converge__data_8c.html#aad7c60c30c5af397bb75e603f250f9d3',1,'lmsNormCoeff_f32(): arm_signal_converge_data.c'],['../arm__signal__converge__example__f32_8c.html#aad7c60c30c5af397bb75e603f250f9d3',1,'lmsNormCoeff_f32(): arm_signal_converge_data.c']]], + ['lmsstatef32',['lmsStateF32',['../arm__signal__converge__example__f32_8c.html#a706980f6f654d199c61e08e7814bd0a1',1,'arm_signal_converge_example_f32.c']]], + ['lpf_5finstance',['LPF_instance',['../arm__signal__converge__example__f32_8c.html#a652d3507a776117b4860b3e18f2d2d64',1,'arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_6d.html b/CMSIS/Documentation/DSP/html/search/all_6d.html new file mode 100644 index 0000000..2e27d4d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_6d.js b/CMSIS/Documentation/DSP/html/search/all_6d.js new file mode 100644 index 0000000..ceeedfa --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6d.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['matrix_20functions',['Matrix Functions',['../group__group_matrix.html',1,'']]], + ['m',['M',['../structarm__fir__decimate__instance__q15.html#aad9320284218b3aa378527ea518cf093',1,'arm_fir_decimate_instance_q15::M()'],['../structarm__fir__decimate__instance__q31.html#ad3d6936c36303b30dd38f1eddf248ae5',1,'arm_fir_decimate_instance_q31::M()'],['../structarm__fir__decimate__instance__f32.html#a76a8b2161731638eb3d67f277919f95d',1,'arm_fir_decimate_instance_f32::M()']]], + ['m0',['M0',['../arm__class__marks__example_2_a_r_m_2_abstract_8txt.html#a59a24f1db2c97fc0ad7948b4a74267ee',1,'M0(): Abstract.txt'],['../arm__class__marks__example_2_g_c_c_2_abstract_8txt.html#a59a24f1db2c97fc0ad7948b4a74267ee',1,'M0(): Abstract.txt'],['../arm__convolution__example_2_a_r_m_2_abstract_8txt.html#adc5db9f8d5aa735dbce2dc35f184d85e',1,'M0(): Abstract.txt'],['../arm__convolution__example_2_g_c_c_2_abstract_8txt.html#adc5db9f8d5aa735dbce2dc35f184d85e',1,'M0(): Abstract.txt'],['../arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html#aafffda4c4e9b93a580e5a8cc96c11e37',1,'M0(): Abstract.txt'],['../arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html#aafffda4c4e9b93a580e5a8cc96c11e37',1,'M0(): Abstract.txt'],['../arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html#ad0415ef995ebc3fc2ad584da9907dcb5',1,'M0(): Abstract.txt'],['../arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html#ad0415ef995ebc3fc2ad584da9907dcb5',1,'M0(): Abstract.txt'],['../arm__fir__example_2_a_r_m_2_abstract_8txt.html#abf726d1cea9345acb0021535d4fdd5af',1,'M0(): Abstract.txt'],['../arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html#ac378b27aa1fc4fe4ac9a4dfa2d185553',1,'M0(): Abstract.txt'],['../arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html#a80f8916aca7a5a98fcfc39d1ef743b37',1,'M0(): Abstract.txt'],['../arm__matrix__example_2_a_r_m_2_abstract_8txt.html#a267aee43e600168b057c1aa126029002',1,'M0(): Abstract.txt'],['../arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html#a20d2ac954144a7f2d4aced0816eecef6',1,'M0(): Abstract.txt'],['../arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html#ae39c147711857790fd5c3cc7a75ef0c3',1,'M0(): Abstract.txt'],['../arm__variance__example_2_a_r_m_2_abstract_8txt.html#a8c8cf1e0f2ebd6135c79d5338a60899c',1,'M0(): Abstract.txt']]], + ['main',['main',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a196718f834091385d38586a0ce4009dc',1,'main(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a196718f834091385d38586a0ce4009dc',1,'main(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__convolution__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_convolution_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_dotproduct_example_f32.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_fft_bin_example_f32.c'],['../arm__fir__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_graphic_equalizer_example_q31.c'],['../arm__linear__interp__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_linear_interp_example_f32.c'],['../arm__matrix__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_matrix_example_f32.c'],['../arm__signal__converge__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_signal_converge_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_variance_example_f32.c']]], + ['matrix_20addition',['Matrix Addition',['../group___matrix_add.html',1,'']]], + ['matrix_20example',['Matrix Example',['../group___matrix_example.html',1,'']]], + ['matrix_20initialization',['Matrix Initialization',['../group___matrix_init.html',1,'']]], + ['matrix_20inverse',['Matrix Inverse',['../group___matrix_inv.html',1,'']]], + ['matrix_20multiplication',['Matrix Multiplication',['../group___matrix_mult.html',1,'']]], + ['matrix_20scale',['Matrix Scale',['../group___matrix_scale.html',1,'']]], + ['matrix_20subtraction',['Matrix Subtraction',['../group___matrix_sub.html',1,'']]], + ['matrix_20transpose',['Matrix Transpose',['../group___matrix_trans.html',1,'']]], + ['maximum',['Maximum',['../group___max.html',1,'']]], + ['max_5fblocksize',['MAX_BLOCKSIZE',['../_a_r_m_2arm__convolution__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_convolution_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_dotproduct_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_variance_example_f32.c']]], + ['max_5fmarks',['max_marks',['../_a_r_m_2arm__class__marks__example__f32_8c.html#aad32888fa966b3d9db9c31bcbba9d9ef',1,'max_marks(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#aad32888fa966b3d9db9c31bcbba9d9ef',1,'max_marks(): arm_class_marks_example_f32.c']]], + ['maxdelay',['maxDelay',['../structarm__fir__sparse__instance__f32.html#af8b8c775f4084c36774f06c082b4c078',1,'arm_fir_sparse_instance_f32::maxDelay()'],['../structarm__fir__sparse__instance__q31.html#afdd3a1dc72132c854dc379154b68b674',1,'arm_fir_sparse_instance_q31::maxDelay()'],['../structarm__fir__sparse__instance__q15.html#ad14cc1070eecf7e1926d8f67a8273182',1,'arm_fir_sparse_instance_q15::maxDelay()'],['../structarm__fir__sparse__instance__q7.html#af74dacc1d34c078283e50f2530eb91df',1,'arm_fir_sparse_instance_q7::maxDelay()']]], + ['mean',['mean',['../_a_r_m_2arm__class__marks__example__f32_8c.html#acc9290716b3c97381ce52d14b4b01681',1,'mean(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#acc9290716b3c97381ce52d14b4b01681',1,'mean(): arm_class_marks_example_f32.c'],['../group__mean.html',1,'(Global Namespace)']]], + ['merge_5frfft_5ff32',['merge_rfft_f32',['../arm__rfft__fast__f32_8c.html#a93258bc1e64a939a8ebd086367e459af',1,'arm_rfft_fast_f32.c']]], + ['minimum',['Minimum',['../group___min.html',1,'']]], + ['min_5fmarks',['min_marks',['../_a_r_m_2arm__class__marks__example__f32_8c.html#abb7687fa07ec54d8e792cfcbfe2ca809',1,'min_marks(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#abb7687fa07ec54d8e792cfcbfe2ca809',1,'min_marks(): arm_class_marks_example_f32.c']]], + ['mu',['mu',['../structarm__lms__instance__f32.html#ae2af43d74c93dba16b876e10c97a5b99',1,'arm_lms_instance_f32::mu()'],['../structarm__lms__instance__q15.html#aae46129d7cfd7f1c162cc502ed0a9d49',1,'arm_lms_instance_q15::mu()'],['../structarm__lms__instance__q31.html#acb6ca9996b3c5f740d5d6c8e9f4f1d46',1,'arm_lms_instance_q31::mu()'],['../structarm__lms__norm__instance__f32.html#a84401d3cfc6c40f69c08223cf341b886',1,'arm_lms_norm_instance_f32::mu()'],['../structarm__lms__norm__instance__q31.html#ad3dd2a2406e02fdaa7782ba6c3940a64',1,'arm_lms_norm_instance_q31::mu()'],['../structarm__lms__norm__instance__q15.html#a7ce00f21d11cfda6d963240641deea8c',1,'arm_lms_norm_instance_q15::mu()'],['../arm__signal__converge__example__f32_8c.html#a09bc9e6a44f0291cfcf578f2efcddfab',1,'MU(): arm_signal_converge_example_f32.c']]], + ['mult32x64',['mult32x64',['../arm__math_8h.html#a642a29d71f7951a7f6c0b797c300b711',1,'arm_math.h']]], + ['mult_5f32x32_5fkeep32',['mult_32x32_keep32',['../arm__math_8h.html#abb4baa0192bbb6fabc9251af4b4cb322',1,'arm_math.h']]], + ['mult_5f32x32_5fkeep32_5fr',['mult_32x32_keep32_R',['../arm__math_8h.html#a960f210642058d2b3d5368729a6e8375',1,'arm_math.h']]], + ['multacc_5f32x32_5fkeep32',['multAcc_32x32_keep32',['../arm__math_8h.html#a58454519e12e8157f0a1c36071333655',1,'arm_math.h']]], + ['multacc_5f32x32_5fkeep32_5fr',['multAcc_32x32_keep32_R',['../arm__math_8h.html#aba3e538352fc7f9d6d15f9a18d469399',1,'arm_math.h']]], + ['multoutput',['multOutput',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#ad0bfd425dfe1ff2bda80fb957e464098',1,'multOutput(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#ad0bfd425dfe1ff2bda80fb957e464098',1,'multOutput(): arm_dotproduct_example_f32.c']]], + ['multsub_5f32x32_5fkeep32',['multSub_32x32_keep32',['../arm__math_8h.html#a9ec66f3082a4c65c78075638255f42ab',1,'arm_math.h']]], + ['multsub_5f32x32_5fkeep32_5fr',['multSub_32x32_keep32_R',['../arm__math_8h.html#a668fbf1cd1c3bc8faf1b1c83964ade23',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_6e.html b/CMSIS/Documentation/DSP/html/search/all_6e.html new file mode 100644 index 0000000..1f92ee5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_6e.js b/CMSIS/Documentation/DSP/html/search/all_6e.js new file mode 100644 index 0000000..81a7a49 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6e.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['normalized_20lms_20filters',['Normalized LMS Filters',['../group___l_m_s___n_o_r_m.html',1,'']]], + ['n',['N',['../structarm__dct4__instance__f32.html#a262b29a51c371b46efc89120e31ccf37',1,'arm_dct4_instance_f32::N()'],['../structarm__dct4__instance__q31.html#a46a9f136457350676e2bfd3768ff9d6d',1,'arm_dct4_instance_q31::N()'],['../structarm__dct4__instance__q15.html#a53d24009bb9b2e93d0aa07db7f1a6c25',1,'arm_dct4_instance_q15::N()']]], + ['nby2',['Nby2',['../structarm__dct4__instance__f32.html#adb1ef2739ddbe62e5cdadc47455a4147',1,'arm_dct4_instance_f32::Nby2()'],['../structarm__dct4__instance__q31.html#a32d3268ba4629908dba056599f0a904d',1,'arm_dct4_instance_q31::Nby2()'],['../structarm__dct4__instance__q15.html#af43dcbbc2fc661ffbc525afe3dcbd7da',1,'arm_dct4_instance_q15::Nby2()']]], + ['normalize',['normalize',['../structarm__dct4__instance__f32.html#a61ce8c967b2e998a9c0041cca73cdef8',1,'arm_dct4_instance_f32::normalize()'],['../structarm__dct4__instance__q31.html#ac80ff7b28fca36aeef74dea12e8312dd',1,'arm_dct4_instance_q31::normalize()'],['../structarm__dct4__instance__q15.html#a197098140d68e89a08f7a249003a0b86',1,'arm_dct4_instance_q15::normalize()']]], + ['num_5ftaps',['NUM_TAPS',['../arm__fir__example__f32_8c.html#a7579d94e0a80fb9d376ea6c7897f73b0',1,'arm_fir_example_f32.c']]], + ['numblocks',['numBlocks',['../arm__fir__example__f32_8c.html#af7d5613bda9a19b2ccae5d6cb79a22bc',1,'numBlocks(): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#a814e34126e1b8150f4de047e1a9e7030',1,'NUMBLOCKS(): arm_graphic_equalizer_example_q31.c']]], + ['numcols',['numCols',['../structarm__matrix__instance__f32.html#acdd1fb73734df68b89565c54f1dd8ae2',1,'arm_matrix_instance_f32::numCols()'],['../structarm__matrix__instance__f64.html#ab0f0399aff3201880e2d8a447de9a7ee',1,'arm_matrix_instance_f64::numCols()'],['../structarm__matrix__instance__q15.html#acbbce67ba058d8e1c867c71d57288c97',1,'arm_matrix_instance_q15::numCols()'],['../structarm__matrix__instance__q31.html#abd161da7614eda927157f18b698074b1',1,'arm_matrix_instance_q31::numCols()'],['../structarm__bilinear__interp__instance__f32.html#aede17bebfb1f835b61d71dd813eab3f8',1,'arm_bilinear_interp_instance_f32::numCols()'],['../structarm__bilinear__interp__instance__q31.html#a6c3eff4eb17ff1d43f170efb84713a2d',1,'arm_bilinear_interp_instance_q31::numCols()'],['../structarm__bilinear__interp__instance__q15.html#a7fa8772d01583374ff8ac18205a26a37',1,'arm_bilinear_interp_instance_q15::numCols()'],['../structarm__bilinear__interp__instance__q7.html#a860dd0d24380ea06cfbb348fb3b12c9a',1,'arm_bilinear_interp_instance_q7::numCols()']]], + ['numframes',['NUMFRAMES',['../arm__signal__converge__example__f32_8c.html#a4b6b859e1e3f6021a360390be287ca2c',1,'arm_signal_converge_example_f32.c']]], + ['numrows',['numRows',['../structarm__matrix__instance__f32.html#a23f4e34d70a82c9cad7612add5640b7b',1,'arm_matrix_instance_f32::numRows()'],['../structarm__matrix__instance__f64.html#a8b44d1e5003345047c4ead9e1593bf22',1,'arm_matrix_instance_f64::numRows()'],['../structarm__matrix__instance__q15.html#a9bac6ed54be287c4d4f01a1a28be65f5',1,'arm_matrix_instance_q15::numRows()'],['../structarm__matrix__instance__q31.html#a63bacac158a821c8cfc06088d251598c',1,'arm_matrix_instance_q31::numRows()'],['../structarm__bilinear__interp__instance__f32.html#a34f2b17cc57b95011960df9718af6ed6',1,'arm_bilinear_interp_instance_f32::numRows()'],['../structarm__bilinear__interp__instance__q31.html#a2082e3eac56354d75291f03e96ce4aa5',1,'arm_bilinear_interp_instance_q31::numRows()'],['../structarm__bilinear__interp__instance__q15.html#a2130ae30a804995a9f5d0e2189e08565',1,'arm_bilinear_interp_instance_q15::numRows()'],['../structarm__bilinear__interp__instance__q7.html#ad5a8067cab5f9ea4688b11a623e16607',1,'arm_bilinear_interp_instance_q7::numRows()']]], + ['numstages',['numStages',['../structarm__biquad__casd__df1__inst__q15.html#ad6d95e70abcf4ff1300181415ad92153',1,'arm_biquad_casd_df1_inst_q15::numStages()'],['../structarm__biquad__casd__df1__inst__q31.html#a2c2b579f1df1d8273a5d9d945c27e1b2',1,'arm_biquad_casd_df1_inst_q31::numStages()'],['../structarm__biquad__casd__df1__inst__f32.html#af69820c37a87252c46453e4cfe120585',1,'arm_biquad_casd_df1_inst_f32::numStages()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#ad7cb9a9f5df8f4fcfc7a0b633672e574',1,'arm_biquad_cas_df1_32x64_ins_q31::numStages()'],['../structarm__biquad__cascade__df2_t__instance__f32.html#a4d17958c33c3d0a905f974bac50f033f',1,'arm_biquad_cascade_df2T_instance_f32::numStages()'],['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a5655328252da5c2c2425ceed253bc4f1',1,'arm_biquad_cascade_stereo_df2T_instance_f32::numStages()'],['../structarm__biquad__cascade__df2_t__instance__f64.html#ad55380ff835b533aa5168f836db8a4de',1,'arm_biquad_cascade_df2T_instance_f64::numStages()'],['../structarm__fir__lattice__instance__q15.html#a38b179138d6a6c9cac4f8f79b6fd5357',1,'arm_fir_lattice_instance_q15::numStages()'],['../structarm__fir__lattice__instance__q31.html#a9f3773bbb76bc5a8a5ee9d37786bf478',1,'arm_fir_lattice_instance_q31::numStages()'],['../structarm__fir__lattice__instance__f32.html#ad369bd9997a250f195254df37408a38f',1,'arm_fir_lattice_instance_f32::numStages()'],['../structarm__iir__lattice__instance__q15.html#a96fbed313bef01070409fa182d26ba3f',1,'arm_iir_lattice_instance_q15::numStages()'],['../structarm__iir__lattice__instance__q31.html#a9df4570ed28c50fd9193ab654ff236ad',1,'arm_iir_lattice_instance_q31::numStages()'],['../structarm__iir__lattice__instance__f32.html#af8de449af5efe1f30be82f9ba35587ee',1,'arm_iir_lattice_instance_f32::numStages()'],['../arm__graphic__equalizer__example__q31_8c.html#a23f8e430b510dfdb3ebe53bffca0d864',1,'NUMSTAGES(): arm_graphic_equalizer_example_q31.c']]], + ['numstudents',['NUMSTUDENTS',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a9d89ac0707e7c9363544986d47a70bd3',1,'NUMSTUDENTS(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a9d89ac0707e7c9363544986d47a70bd3',1,'NUMSTUDENTS(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__class__marks__example__f32_8c.html#ab3b66d06b4af1af4ea2740d0ccf4e7bd',1,'numStudents(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#ab3b66d06b4af1af4ea2740d0ccf4e7bd',1,'numStudents(): arm_class_marks_example_f32.c']]], + ['numsubjects',['numSubjects',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a3d01884f63bcb694226ca7c24980757a',1,'numSubjects(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a3d01884f63bcb694226ca7c24980757a',1,'numSubjects(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__class__marks__example__f32_8c.html#a7b02f9b34bf2cd4d12633f5bf30771ec',1,'NUMSUBJECTS(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a7b02f9b34bf2cd4d12633f5bf30771ec',1,'NUMSUBJECTS(): arm_class_marks_example_f32.c']]], + ['numtaps',['numTaps',['../structarm__fir__instance__q7.html#a9b50840e2c5ef5b17e1a584fb4cf0d06',1,'arm_fir_instance_q7::numTaps()'],['../structarm__fir__instance__q15.html#a0e46f93cf51bfb18b1be808be9c5bfc9',1,'arm_fir_instance_q15::numTaps()'],['../structarm__fir__instance__q31.html#a918fadd775b7a0482b21bf34dae2f094',1,'arm_fir_instance_q31::numTaps()'],['../structarm__fir__instance__f32.html#a20cf98c92b5323799b7881c9ff4d2f7c',1,'arm_fir_instance_f32::numTaps()'],['../structarm__fir__decimate__instance__q15.html#ac1e9844488ec717da334fbd4c4f41990',1,'arm_fir_decimate_instance_q15::numTaps()'],['../structarm__fir__decimate__instance__q31.html#a37915d42b0dc5e3057ebe83110798482',1,'arm_fir_decimate_instance_q31::numTaps()'],['../structarm__fir__decimate__instance__f32.html#a2aa2986129db8affef03ede88dd45a03',1,'arm_fir_decimate_instance_f32::numTaps()'],['../structarm__lms__instance__f32.html#af73880d9009982f5d14529869494ec3d',1,'arm_lms_instance_f32::numTaps()'],['../structarm__lms__instance__q15.html#a0078e894f805af1b360369e619fb57b3',1,'arm_lms_instance_q15::numTaps()'],['../structarm__lms__instance__q31.html#ac0d84f7d054555931ef8a62511fbcb8a',1,'arm_lms_instance_q31::numTaps()'],['../structarm__lms__norm__instance__f32.html#ac95f8ca3d816524c2070643852fac5e8',1,'arm_lms_norm_instance_f32::numTaps()'],['../structarm__lms__norm__instance__q31.html#a28e4c085af69c9c3e2e95dacf8004c3e',1,'arm_lms_norm_instance_q31::numTaps()'],['../structarm__lms__norm__instance__q15.html#a9ee7a45f4f315d7996a969e25fdc7146',1,'arm_lms_norm_instance_q15::numTaps()'],['../structarm__fir__sparse__instance__f32.html#a5e19e7f234ac30a3db843352bf2a8515',1,'arm_fir_sparse_instance_f32::numTaps()'],['../structarm__fir__sparse__instance__q31.html#a07b6c01e58ec6dde384719130d36b0dc',1,'arm_fir_sparse_instance_q31::numTaps()'],['../structarm__fir__sparse__instance__q15.html#a0f66b126dd8b85f7467cfb01b7bc4d77',1,'arm_fir_sparse_instance_q15::numTaps()'],['../structarm__fir__sparse__instance__q7.html#a54cdd27ca1c672b126c38763ce678b1c',1,'arm_fir_sparse_instance_q7::numTaps()'],['../arm__signal__converge__example__f32_8c.html#ac1d8ddb4f9a957eef3ad13d44de4d804',1,'NUMTAPS(): arm_signal_converge_example_f32.c']]], + ['nvalues',['nValues',['../structarm__linear__interp__instance__f32.html#a95f02a926b16d35359aca5b31e813b11',1,'arm_linear_interp_instance_f32']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_6f.html b/CMSIS/Documentation/DSP/html/search/all_6f.html new file mode 100644 index 0000000..61827e8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_6f.js b/CMSIS/Documentation/DSP/html/search/all_6f.js new file mode 100644 index 0000000..c744120 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_6f.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['onebyfftlen',['onebyfftLen',['../structarm__cfft__radix2__instance__f32.html#a1d3d289d47443e597d88a40effd14b8f',1,'arm_cfft_radix2_instance_f32::onebyfftLen()'],['../structarm__cfft__radix4__instance__f32.html#ab9eed39e40b8d7c16381fbccf84467cd',1,'arm_cfft_radix4_instance_f32::onebyfftLen()']]], + ['outlen',['outLen',['../_a_r_m_2arm__convolution__example__f32_8c.html#a9c49c44c8bc5c432d220d33a26b4b589',1,'outLen(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a9c49c44c8bc5c432d220d33a26b4b589',1,'outLen(): arm_convolution_example_f32.c']]], + ['outputq31',['outputQ31',['../arm__graphic__equalizer__example__q31_8c.html#a9862488450f2547b07aee8035d6b4d8a',1,'arm_graphic_equalizer_example_q31.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_70.html b/CMSIS/Documentation/DSP/html/search/all_70.html new file mode 100644 index 0000000..0340151 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_70.js b/CMSIS/Documentation/DSP/html/search/all_70.js new file mode 100644 index 0000000..51f724d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_70.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['partial_20convolution',['Partial Convolution',['../group___partial_conv.html',1,'']]], + ['pbitrevtable',['pBitRevTable',['../structarm__cfft__radix2__instance__q15.html#ab88afeff6493be3c8b5e4530efa82d51',1,'arm_cfft_radix2_instance_q15::pBitRevTable()'],['../structarm__cfft__radix4__instance__q15.html#a4acf704ae0cf30b53bf0fbfae8e34a59',1,'arm_cfft_radix4_instance_q15::pBitRevTable()'],['../structarm__cfft__radix2__instance__q31.html#ada8e5264f4b22ff4c621817978994674',1,'arm_cfft_radix2_instance_q31::pBitRevTable()'],['../structarm__cfft__radix4__instance__q31.html#a33a3bc774c97373261699463c05dfe54',1,'arm_cfft_radix4_instance_q31::pBitRevTable()'],['../structarm__cfft__radix2__instance__f32.html#a92b8fa0a151cd800436094903a5ca0a4',1,'arm_cfft_radix2_instance_f32::pBitRevTable()'],['../structarm__cfft__radix4__instance__f32.html#a8da0d2ca69749fde8cbb95caeac6fe6a',1,'arm_cfft_radix4_instance_f32::pBitRevTable()'],['../structarm__cfft__instance__q15.html#ac9160b80243b99a0b6e2f75ddb5cf0ae',1,'arm_cfft_instance_q15::pBitRevTable()'],['../structarm__cfft__instance__q31.html#a8a464461649f023325ced1e10470f5d0',1,'arm_cfft_instance_q31::pBitRevTable()'],['../structarm__cfft__instance__f32.html#a21ceaf59a1bb8440af57c28d2dd9bbab',1,'arm_cfft_instance_f32::pBitRevTable()']]], + ['pcfft',['pCfft',['../structarm__rfft__instance__q15.html#a4329c15b056444746d37ff082a24d31a',1,'arm_rfft_instance_q15::pCfft()'],['../structarm__rfft__instance__q31.html#a8fe10d425b59e096c23aa4bb5caa1974',1,'arm_rfft_instance_q31::pCfft()'],['../structarm__rfft__instance__f32.html#a9f47ba9f50c81e4445ae3827b981bc05',1,'arm_rfft_instance_f32::pCfft()'],['../structarm__dct4__instance__f32.html#a018f7860b6e070af533fb7d76c7cdc32',1,'arm_dct4_instance_f32::pCfft()'],['../structarm__dct4__instance__q31.html#ac96579cfb28d08bb11dd2fe4c6303833',1,'arm_dct4_instance_q31::pCfft()'],['../structarm__dct4__instance__q15.html#a7284932ee8c36107c33815eb62eadffc',1,'arm_dct4_instance_q15::pCfft()']]], + ['pcoeffs',['pCoeffs',['../structarm__fir__instance__q7.html#a0e45aedefc3fffad6cb315c5b6e5bd49',1,'arm_fir_instance_q7::pCoeffs()'],['../structarm__fir__instance__q15.html#a6d16db16a5f8f0db54938f2967244d9e',1,'arm_fir_instance_q15::pCoeffs()'],['../structarm__fir__instance__q31.html#afaae4c884bdf11a4ec2f3b9bb2bb51d0',1,'arm_fir_instance_q31::pCoeffs()'],['../structarm__fir__instance__f32.html#a1c9cfca901d5902afeb640f2831488f4',1,'arm_fir_instance_f32::pCoeffs()'],['../structarm__biquad__casd__df1__inst__q15.html#a1edaacdebb5b09d7635bf20c779855fc',1,'arm_biquad_casd_df1_inst_q15::pCoeffs()'],['../structarm__biquad__casd__df1__inst__q31.html#aa62366c632f3b5305086f841f079dbd2',1,'arm_biquad_casd_df1_inst_q31::pCoeffs()'],['../structarm__biquad__casd__df1__inst__f32.html#af9df3820576fb921809d1462c9c6d16c',1,'arm_biquad_casd_df1_inst_f32::pCoeffs()'],['../structarm__fir__decimate__instance__q15.html#a01cacab67e73945e8289075598ede14d',1,'arm_fir_decimate_instance_q15::pCoeffs()'],['../structarm__fir__decimate__instance__q31.html#a030d0391538c2481c5b348fd09a952ff',1,'arm_fir_decimate_instance_q31::pCoeffs()'],['../structarm__fir__decimate__instance__f32.html#a268a8b0e80a3d9764baf33e4bc10dde2',1,'arm_fir_decimate_instance_f32::pCoeffs()'],['../structarm__fir__interpolate__instance__q15.html#a767d91d61d4c0beeddd4325d28d28e24',1,'arm_fir_interpolate_instance_q15::pCoeffs()'],['../structarm__fir__interpolate__instance__q31.html#afa719433687e1936ec3403d0d32f06e6',1,'arm_fir_interpolate_instance_q31::pCoeffs()'],['../structarm__fir__interpolate__instance__f32.html#a86053b715980a93c9df630d6de5bb63c',1,'arm_fir_interpolate_instance_f32::pCoeffs()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#a490462d6ebe0fecfb6acbf51bed22ecf',1,'arm_biquad_cas_df1_32x64_ins_q31::pCoeffs()'],['../structarm__biquad__cascade__df2_t__instance__f32.html#a49a24fe1b6ad3b0b26779c32d8d80b2e',1,'arm_biquad_cascade_df2T_instance_f32::pCoeffs()'],['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a58b15644de62a632c5e9d4a563569dc6',1,'arm_biquad_cascade_stereo_df2T_instance_f32::pCoeffs()'],['../structarm__biquad__cascade__df2_t__instance__f64.html#ae2f0180f9038c0393e1d6921bb3b878b',1,'arm_biquad_cascade_df2T_instance_f64::pCoeffs()'],['../structarm__fir__lattice__instance__q15.html#a78f872826140069cf67836fff87360bc',1,'arm_fir_lattice_instance_q15::pCoeffs()'],['../structarm__fir__lattice__instance__q31.html#a66c3364bf5863cd45e05f1652c3dc522',1,'arm_fir_lattice_instance_q31::pCoeffs()'],['../structarm__fir__lattice__instance__f32.html#a33bf5948c947f9ef80a99717cb0a0a43',1,'arm_fir_lattice_instance_f32::pCoeffs()'],['../structarm__lms__instance__f32.html#a4795c6f7d3f17cec15c2fd09f66edd1a',1,'arm_lms_instance_f32::pCoeffs()'],['../structarm__lms__instance__q15.html#a42f95368b94898eb82608e1113d18cab',1,'arm_lms_instance_q15::pCoeffs()'],['../structarm__lms__instance__q31.html#a4afe56e991a5416adfd462aa88bda500',1,'arm_lms_instance_q31::pCoeffs()'],['../structarm__lms__norm__instance__f32.html#a1ba688d90aba7de003ed4ad8e2e7ddda',1,'arm_lms_norm_instance_f32::pCoeffs()'],['../structarm__lms__norm__instance__q31.html#a57a64c1ff102d033c1bd05043f1d9955',1,'arm_lms_norm_instance_q31::pCoeffs()'],['../structarm__lms__norm__instance__q15.html#ae7bca648c75a2ffa02d87852bb78bc8a',1,'arm_lms_norm_instance_q15::pCoeffs()'],['../structarm__fir__sparse__instance__f32.html#a04af7c738dfb0882ad102fcad501d94a',1,'arm_fir_sparse_instance_f32::pCoeffs()'],['../structarm__fir__sparse__instance__q31.html#a093d6227f0d1597982cd083fb126f4e0',1,'arm_fir_sparse_instance_q31::pCoeffs()'],['../structarm__fir__sparse__instance__q15.html#a78a6565473b5f0b8c77c3f0f58a76069',1,'arm_fir_sparse_instance_q15::pCoeffs()'],['../structarm__fir__sparse__instance__q7.html#a3dac86f15e33553e8f3e19e0d712bae5',1,'arm_fir_sparse_instance_q7::pCoeffs()']]], + ['pcosfactor',['pCosFactor',['../structarm__dct4__instance__f32.html#a6da1187e070801e011ce5e0582efa861',1,'arm_dct4_instance_f32::pCosFactor()'],['../structarm__dct4__instance__q31.html#af97204d1838925621fc82021a0c2d6c1',1,'arm_dct4_instance_q31::pCosFactor()'],['../structarm__dct4__instance__q15.html#ac76df681b1bd502fb4874c06f055dded',1,'arm_dct4_instance_q15::pCosFactor()']]], + ['pdata',['pData',['../structarm__matrix__instance__f32.html#af3917c032600a9dfd5ed4a96f074910a',1,'arm_matrix_instance_f32::pData()'],['../structarm__matrix__instance__f64.html#a5b2475f8ff1e4818955cdd18bc40a097',1,'arm_matrix_instance_f64::pData()'],['../structarm__matrix__instance__q15.html#a6da33a5553e634787d0f515cf8d724af',1,'arm_matrix_instance_q15::pData()'],['../structarm__matrix__instance__q31.html#a09a64267c0579fef086efc9059741e56',1,'arm_matrix_instance_q31::pData()'],['../structarm__bilinear__interp__instance__f32.html#afd1e764591c991c212d56c893efb5ea4',1,'arm_bilinear_interp_instance_f32::pData()'],['../structarm__bilinear__interp__instance__q31.html#a843eae0c9db5f815e77e1aaf9afea358',1,'arm_bilinear_interp_instance_q31::pData()'],['../structarm__bilinear__interp__instance__q15.html#a50d75b1316cee3e0dfad6dcc4c9a2954',1,'arm_bilinear_interp_instance_q15::pData()'],['../structarm__bilinear__interp__instance__q7.html#af05194d691bbefb02c34bafb22ca9ef0',1,'arm_bilinear_interp_instance_q7::pData()']]], + ['phaselength',['phaseLength',['../structarm__fir__interpolate__instance__q15.html#ad5178a02a697a77e0d0e60705d9f0a19',1,'arm_fir_interpolate_instance_q15::phaseLength()'],['../structarm__fir__interpolate__instance__q31.html#a5d243796584afc7cd6c557f00b7acca5',1,'arm_fir_interpolate_instance_q31::phaseLength()'],['../structarm__fir__interpolate__instance__f32.html#a389e669e13ec56292a70db8e92194b12',1,'arm_fir_interpolate_instance_f32::phaseLength()']]], + ['pi',['PI',['../arm__math_8h.html#a598a3330b3c21701223ee0ca14316eca',1,'arm_math.h']]], + ['pid_20motor_20control',['PID Motor Control',['../group___p_i_d.html',1,'']]], + ['pkcoeffs',['pkCoeffs',['../structarm__iir__lattice__instance__q15.html#a41c214a1ec38d4a82fae8899d715dd29',1,'arm_iir_lattice_instance_q15::pkCoeffs()'],['../structarm__iir__lattice__instance__q31.html#a1d30aa16aac7722936ea9dee59211863',1,'arm_iir_lattice_instance_q31::pkCoeffs()'],['../structarm__iir__lattice__instance__f32.html#aa69fcdd3775e828d450ce1bbd978fa31',1,'arm_iir_lattice_instance_f32::pkCoeffs()']]], + ['postshift',['postShift',['../structarm__biquad__casd__df1__inst__q15.html#ada7e9d6269e6ed4eacf8f68729e9832d',1,'arm_biquad_casd_df1_inst_q15::postShift()'],['../structarm__biquad__casd__df1__inst__q31.html#a636c7fbe09ec4bef0bc0a4b4e2151cbe',1,'arm_biquad_casd_df1_inst_q31::postShift()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#a8e9d58e8dba5aa3b2fc4f36d2ed07996',1,'arm_biquad_cas_df1_32x64_ins_q31::postShift()'],['../structarm__lms__instance__q15.html#acca5fbaef4a52ae411de24c9a0b929cf',1,'arm_lms_instance_q15::postShift()'],['../structarm__lms__instance__q31.html#a4705a8f0011bb9166e09bf5bd51e595e',1,'arm_lms_instance_q31::postShift()'],['../structarm__lms__norm__instance__q31.html#a28d7b9e437817f83397e081967e90f3c',1,'arm_lms_norm_instance_q31::postShift()'],['../structarm__lms__norm__instance__q15.html#aa0d435fbcf7dedb7179d4467e9b79e9f',1,'arm_lms_norm_instance_q15::postShift()']]], + ['power',['Power',['../group__power.html',1,'']]], + ['prfft',['pRfft',['../structarm__dct4__instance__f32.html#a978f37fc19add31af243ab5c63ae502f',1,'arm_dct4_instance_f32::pRfft()'],['../structarm__dct4__instance__q31.html#af1487dab5e7963b85dc0fdc6bf492542',1,'arm_dct4_instance_q31::pRfft()'],['../structarm__dct4__instance__q15.html#a11cf95c1cd9dd2dd5e4b81b8f88dc208',1,'arm_dct4_instance_q15::pRfft()']]], + ['pstate',['pState',['../structarm__fir__instance__q7.html#aaddea3b9c7e16ddfd9428b7bf9f9c200',1,'arm_fir_instance_q7::pState()'],['../structarm__fir__instance__q15.html#aa8d25f44f45b6a6c4cf38c31569b8a01',1,'arm_fir_instance_q15::pState()'],['../structarm__fir__instance__q31.html#a409f39c93b744784648bdc365541444d',1,'arm_fir_instance_q31::pState()'],['../structarm__fir__instance__f32.html#a7afcf4022e8560db9b8fd28b0d090a15',1,'arm_fir_instance_f32::pState()'],['../structarm__biquad__casd__df1__inst__q15.html#a5481104ef2f8f81360b80b47d69ae932',1,'arm_biquad_casd_df1_inst_q15::pState()'],['../structarm__biquad__casd__df1__inst__q31.html#a5dcf4727f58eb4e8e8b392508d8657bb',1,'arm_biquad_casd_df1_inst_q31::pState()'],['../structarm__biquad__casd__df1__inst__f32.html#a8c245d79e0d8cfabc82409d4b54fb682',1,'arm_biquad_casd_df1_inst_f32::pState()'],['../structarm__fir__decimate__instance__q15.html#a3f7b5184bb28853ef401b001df121047',1,'arm_fir_decimate_instance_q15::pState()'],['../structarm__fir__decimate__instance__q31.html#a0ef0ef9e265f7ab873cfc6daa7593fdb',1,'arm_fir_decimate_instance_q31::pState()'],['../structarm__fir__decimate__instance__f32.html#a5bddf29aaaf2011d2e3bcec59a83f633',1,'arm_fir_decimate_instance_f32::pState()'],['../structarm__fir__interpolate__instance__q15.html#a26b864363fa47954248f2590e3a82a3c',1,'arm_fir_interpolate_instance_q15::pState()'],['../structarm__fir__interpolate__instance__q31.html#addde04514b6e6ac72be3d609f0398b1a',1,'arm_fir_interpolate_instance_q31::pState()'],['../structarm__fir__interpolate__instance__f32.html#a42a8ba1bda85fa86d7b6c84d3da4c75b',1,'arm_fir_interpolate_instance_f32::pState()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#a4c899cdfaf2bb955323e93637bd662e0',1,'arm_biquad_cas_df1_32x64_ins_q31::pState()'],['../structarm__biquad__cascade__df2_t__instance__f32.html#a24d223addfd926a7177088cf2efe76b1',1,'arm_biquad_cascade_df2T_instance_f32::pState()'],['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a2cb00048bb1fe957a03c1ff56dfaf8f0',1,'arm_biquad_cascade_stereo_df2T_instance_f32::pState()'],['../structarm__biquad__cascade__df2_t__instance__f64.html#a0bde57b618e3f9059b23b0de64e12ce3',1,'arm_biquad_cascade_df2T_instance_f64::pState()'],['../structarm__fir__lattice__instance__q15.html#a37b90dea2bc3ee7c9951a9fe74db0cbb',1,'arm_fir_lattice_instance_q15::pState()'],['../structarm__fir__lattice__instance__q31.html#a08fe9494ab7cd336b791e9657adadcf6',1,'arm_fir_lattice_instance_q31::pState()'],['../structarm__fir__lattice__instance__f32.html#ae348884a1ba9b83fadccd5da640cbcaf',1,'arm_fir_lattice_instance_f32::pState()'],['../structarm__iir__lattice__instance__q15.html#afd0136ab917b529554d93f41a5e04618',1,'arm_iir_lattice_instance_q15::pState()'],['../structarm__iir__lattice__instance__q31.html#a941282745effd26a889fbfadf4b95e6a',1,'arm_iir_lattice_instance_q31::pState()'],['../structarm__iir__lattice__instance__f32.html#a30babe7815510219e6e3d28e6e4a5969',1,'arm_iir_lattice_instance_f32::pState()'],['../structarm__lms__instance__f32.html#aaf94285be2f99b5b9af40bea8dcb14b9',1,'arm_lms_instance_f32::pState()'],['../structarm__lms__instance__q15.html#a9a575ff82c1e68cbb583083439260d08',1,'arm_lms_instance_q15::pState()'],['../structarm__lms__instance__q31.html#a206d47b49de6f357f933ebe61520753c',1,'arm_lms_instance_q31::pState()'],['../structarm__lms__norm__instance__f32.html#a0bc03338687002ed5f2e4a363eb095ec',1,'arm_lms_norm_instance_f32::pState()'],['../structarm__lms__norm__instance__q31.html#a6b25c96cf048b77078d62f4252a01ec4',1,'arm_lms_norm_instance_q31::pState()'],['../structarm__lms__norm__instance__q15.html#aa4de490b3bdbd03561b76ee07901c8e3',1,'arm_lms_norm_instance_q15::pState()'],['../structarm__fir__sparse__instance__f32.html#a794af0916666d11cc564d6df08553555',1,'arm_fir_sparse_instance_f32::pState()'],['../structarm__fir__sparse__instance__q31.html#a830be89daa5a393b225048889aa045d1',1,'arm_fir_sparse_instance_q31::pState()'],['../structarm__fir__sparse__instance__q15.html#a98b92b0f5208110129b9a67b1db90408',1,'arm_fir_sparse_instance_q15::pState()'],['../structarm__fir__sparse__instance__q7.html#a18072cf3ef3666d588f0d49512f2b28f',1,'arm_fir_sparse_instance_q7::pState()']]], + ['ptapdelay',['pTapDelay',['../structarm__fir__sparse__instance__f32.html#aaa54ae67e5d10c6dd0d697945c638d31',1,'arm_fir_sparse_instance_f32::pTapDelay()'],['../structarm__fir__sparse__instance__q31.html#ab87ae457adec8f727afefaa2599fc983',1,'arm_fir_sparse_instance_q31::pTapDelay()'],['../structarm__fir__sparse__instance__q15.html#aeab2855176c6efdb231a73a3672837d5',1,'arm_fir_sparse_instance_q15::pTapDelay()'],['../structarm__fir__sparse__instance__q7.html#ac625393c84bc0342ffdf26fc4eba1ac1',1,'arm_fir_sparse_instance_q7::pTapDelay()']]], + ['ptwiddle',['pTwiddle',['../structarm__cfft__radix2__instance__q15.html#a3809dd15e7cbf1a054c728cfbbb0cc5a',1,'arm_cfft_radix2_instance_q15::pTwiddle()'],['../structarm__cfft__radix4__instance__q15.html#a29dd693537e45421a36891f8439e1fba',1,'arm_cfft_radix4_instance_q15::pTwiddle()'],['../structarm__cfft__radix2__instance__q31.html#a1d5bbe9a991e133f81652a77a7985d23',1,'arm_cfft_radix2_instance_q31::pTwiddle()'],['../structarm__cfft__radix4__instance__q31.html#a561c22dee4cbdcfa0fd5f15106ecc306',1,'arm_cfft_radix4_instance_q31::pTwiddle()'],['../structarm__cfft__radix2__instance__f32.html#adb0c9d47dbfbd90a6f6ed0a05313a974',1,'arm_cfft_radix2_instance_f32::pTwiddle()'],['../structarm__cfft__radix4__instance__f32.html#a14860c7544911702ca1fa0bf78204ef3',1,'arm_cfft_radix4_instance_f32::pTwiddle()'],['../structarm__cfft__instance__q15.html#afdaf12ce4687cec021c5ae73d0987a3f',1,'arm_cfft_instance_q15::pTwiddle()'],['../structarm__cfft__instance__q31.html#af751114feb91de3ace8600e91bdd0872',1,'arm_cfft_instance_q31::pTwiddle()'],['../structarm__cfft__instance__f32.html#a59cc6f753f1498716e1444ac054c06de',1,'arm_cfft_instance_f32::pTwiddle()'],['../structarm__dct4__instance__f32.html#ad13544aafad268588c62e3eb35ae662c',1,'arm_dct4_instance_f32::pTwiddle()'],['../structarm__dct4__instance__q31.html#a7db236e22673146bb1d2c962f0713f08',1,'arm_dct4_instance_q31::pTwiddle()'],['../structarm__dct4__instance__q15.html#abc6c847e9f906781e1d5da40e9aafa76',1,'arm_dct4_instance_q15::pTwiddle()']]], + ['ptwiddleareal',['pTwiddleAReal',['../structarm__rfft__instance__q15.html#affbf2de522ac029432d98e8373c0ec53',1,'arm_rfft_instance_q15::pTwiddleAReal()'],['../structarm__rfft__instance__q31.html#a2a0c944e66bab92fcbe19d1c29153250',1,'arm_rfft_instance_q31::pTwiddleAReal()'],['../structarm__rfft__instance__f32.html#a534cc7e6e9b3e3dd022fad611c762142',1,'arm_rfft_instance_f32::pTwiddleAReal()']]], + ['ptwiddlebreal',['pTwiddleBReal',['../structarm__rfft__instance__q15.html#a937d815022adc557b435ba8c6cd58b0d',1,'arm_rfft_instance_q15::pTwiddleBReal()'],['../structarm__rfft__instance__q31.html#ae5070be4c2e0327e618f5e1f4c5b9d80',1,'arm_rfft_instance_q31::pTwiddleBReal()'],['../structarm__rfft__instance__f32.html#a23543ecfd027fea2477fe1eea23c3c4d',1,'arm_rfft_instance_f32::pTwiddleBReal()']]], + ['ptwiddlerfft',['pTwiddleRFFT',['../structarm__rfft__fast__instance__f32.html#a9f30b04f163fabc1b24421d3c323d5fc',1,'arm_rfft_fast_instance_f32']]], + ['pvcoeffs',['pvCoeffs',['../structarm__iir__lattice__instance__q15.html#a4c4f57f45b223abbe2a9fb727bd2cad9',1,'arm_iir_lattice_instance_q15::pvCoeffs()'],['../structarm__iir__lattice__instance__q31.html#a04507e2b982b1dfa97b7b55752dea6b9',1,'arm_iir_lattice_instance_q31::pvCoeffs()'],['../structarm__iir__lattice__instance__f32.html#afc7c8f577e6f27d097fe55f57e707f72',1,'arm_iir_lattice_instance_f32::pvCoeffs()']]], + ['pydata',['pYData',['../structarm__linear__interp__instance__f32.html#ab373001f6afad0850359c344a4d7eee4',1,'arm_linear_interp_instance_f32']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_71.html b/CMSIS/Documentation/DSP/html/search/all_71.html new file mode 100644 index 0000000..b4dc1e6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_71.js b/CMSIS/Documentation/DSP/html/search/all_71.js new file mode 100644 index 0000000..8efe4a8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_71.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['q15_5ft',['q15_t',['../arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea',1,'arm_math.h']]], + ['q31_5ft',['q31_t',['../arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0',1,'arm_math.h']]], + ['q63_5ft',['q63_t',['../arm__math_8h.html#a5aea1cb12fc02d9d44c8abf217eaa5c6',1,'arm_math.h']]], + ['q7_5ft',['q7_t',['../arm__math_8h.html#ae541b6f232c305361e9b416fc9eed263',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_72.html b/CMSIS/Documentation/DSP/html/search/all_72.html new file mode 100644 index 0000000..0ab18d6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_72.js b/CMSIS/Documentation/DSP/html/search/all_72.js new file mode 100644 index 0000000..ea3b467 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_72.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['real_20fft_20functions',['Real FFT Functions',['../group___fast.html',1,'']]], + ['radix_2d8_20complex_20fft_20functions',['Radix-8 Complex FFT Functions',['../group___radix8___c_f_f_t___c_i_f_f_t.html',1,'']]], + ['realcoefa',['realCoefA',['../group___real_f_f_t.html#ga8b1ad947c470596674fa3364e16045c6',1,'arm_rfft_init_f32.c']]], + ['realcoefaq15',['realCoefAQ15',['../group___real_f_f_t.html#ga11e84d0ee257a547f749b37dd0078d36',1,'arm_rfft_init_q15.c']]], + ['realcoefaq31',['realCoefAQ31',['../group___real_f_f_t.html#gaf1592a6cf0504675205074a43c3728a2',1,'arm_rfft_init_q31.c']]], + ['realcoefb',['realCoefB',['../group___real_f_f_t.html#gac52f98b52a1f03bfac8b57a67ba07397',1,'arm_rfft_init_f32.c']]], + ['realcoefbq15',['realCoefBQ15',['../group___real_f_f_t.html#gac871666f018b70938b2b98017628cb97',1,'arm_rfft_init_q15.c']]], + ['realcoefbq31',['realCoefBQ31',['../group___real_f_f_t.html#ga1eb5745728a61c3715755f5d69a4a960',1,'arm_rfft_init_q31.c']]], + ['realfft',['RealFFT',['../group___real_f_f_t.html',1,'']]], + ['reciptable',['recipTable',['../structarm__lms__norm__instance__q31.html#a85836d0907077b9ac660f7bbbaa9d694',1,'arm_lms_norm_instance_q31::recipTable()'],['../structarm__lms__norm__instance__q15.html#a9aabb0e4c79f3db807e7a441fa36f5f8',1,'arm_lms_norm_instance_q15::recipTable()']]], + ['refdotprodout',['refDotProdOut',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#ad57c1f9ad68d098d79b15ec6844a26fc',1,'refDotProdOut(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#ad57c1f9ad68d098d79b15ec6844a26fc',1,'refDotProdOut(): arm_dotproduct_example_f32.c']]], + ['refindex',['refIndex',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#aec50b0f697fd9e7e7e244487a4bd57e4',1,'refIndex(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#aec50b0f697fd9e7e7e244487a4bd57e4',1,'refIndex(): arm_fft_bin_example_f32.c']]], + ['refoutput',['refOutput',['../arm__fir__data_8c.html#aa7570f8c2e7a3c929d9d32a14a51389f',1,'refOutput(): arm_fir_data.c'],['../arm__fir__example__f32_8c.html#a12d0acaa028f1dcd964d2d188e7df331',1,'refOutput(): arm_fir_data.c']]], + ['refvarianceout',['refVarianceOut',['../arm__variance__example__f32_8c.html#a26cbbfe2a7905669e8440159465050df',1,'arm_variance_example_f32.c']]], + ['root_20mean_20square_20_28rms_29',['Root mean square (RMS)',['../group___r_m_s.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_73.html b/CMSIS/Documentation/DSP/html/search/all_73.html new file mode 100644 index 0000000..1ec8f17 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_73.js b/CMSIS/Documentation/DSP/html/search/all_73.js new file mode 100644 index 0000000..a517c88 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_73.js @@ -0,0 +1,34 @@ +var searchData= +[ + ['statistics_20functions',['Statistics Functions',['../group__group_stats.html',1,'']]], + ['support_20functions',['Support Functions',['../group__group_support.html',1,'']]], + ['signal_20convergence_20example',['Signal Convergence Example',['../group___signal_convergence.html',1,'']]], + ['sine',['Sine',['../group__sin.html',1,'']]], + ['sine_20cosine',['Sine Cosine',['../group___sin_cos.html',1,'']]], + ['sinecosine_20example',['SineCosine Example',['../group___sin_cos_example.html',1,'']]], + ['sinoutput',['sinOutput',['../arm__sin__cos__example__f32_8c.html#a1e232694019f6b61710fbff5ee27126c',1,'arm_sin_cos_example_f32.c']]], + ['sinsquareoutput',['sinSquareOutput',['../arm__sin__cos__example__f32_8c.html#aa5a66e866ebb91eb971f2805209e9d36',1,'arm_sin_cos_example_f32.c']]], + ['sint',['Sint',['../structarm__rfft__fast__instance__f32.html#a37419ababdfb3151b1891ae6bcd21012',1,'arm_rfft_fast_instance_f32']]], + ['sintable_5ff32',['sinTable_f32',['../arm__common__tables_8c.html#a1dec82d596780f1a66ef4f76f137c1d9',1,'sinTable_f32(): arm_common_tables.c'],['../arm__common__tables_8h.html#a1dec82d596780f1a66ef4f76f137c1d9',1,'sinTable_f32(): arm_common_tables.c']]], + ['sintable_5fq15',['sinTable_q15',['../arm__common__tables_8c.html#a9cbcfe313f61add745ebfeddb4fecd55',1,'sinTable_q15(): arm_common_tables.c'],['../arm__common__tables_8h.html#a9cbcfe313f61add745ebfeddb4fecd55',1,'sinTable_q15(): arm_common_tables.c']]], + ['sintable_5fq31',['sinTable_q31',['../arm__common__tables_8c.html#a8bfccee9e1c0042cf4a765f4b19d097d',1,'sinTable_q31(): arm_common_tables.c'],['../arm__common__tables_8h.html#a8bfccee9e1c0042cf4a765f4b19d097d',1,'sinTable_q31(): arm_common_tables.c']]], + ['snr',['snr',['../_a_r_m_2arm__convolution__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_convolution_example_f32.c'],['../arm__fir__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_graphic_equalizer_example_q31.c'],['../arm__matrix__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_matrix_example_f32.c']]], + ['snr1',['snr1',['../arm__linear__interp__example__f32_8c.html#ad492c21cf2dd4e9199ae46c77f812cbc',1,'arm_linear_interp_example_f32.c']]], + ['snr2',['snr2',['../arm__linear__interp__example__f32_8c.html#a269948ab25f230d33e3f22eab85aa1cf',1,'arm_linear_interp_example_f32.c']]], + ['snr_5fthreshold',['SNR_THRESHOLD',['../_a_r_m_2arm__convolution__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_convolution_example_f32.c'],['../arm__linear__interp__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_linear_interp_example_f32.c'],['../arm__matrix__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_matrix_example_f32.c']]], + ['snr_5fthreshold_5ff32',['SNR_THRESHOLD_F32',['../arm__fir__example__f32_8c.html#af7d1dd4deffa8e7ed6429e5dd0fe1812',1,'SNR_THRESHOLD_F32(): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#af7d1dd4deffa8e7ed6429e5dd0fe1812',1,'SNR_THRESHOLD_F32(): arm_graphic_equalizer_example_q31.c']]], + ['square_20root',['Square Root',['../group___s_q_r_t.html',1,'']]], + ['srca_5fbuf_5ff32',['srcA_buf_f32',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a0c248a472fdc0507e4ab7d693e4876b6',1,'srcA_buf_f32(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a0c248a472fdc0507e4ab7d693e4876b6',1,'srcA_buf_f32(): arm_dotproduct_example_f32.c']]], + ['srcalen',['srcALen',['../_a_r_m_2arm__convolution__example__f32_8c.html#ace48ed566e2cd6a680f0681192e6af28',1,'srcALen(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#ace48ed566e2cd6a680f0681192e6af28',1,'srcALen(): arm_convolution_example_f32.c']]], + ['srcb_5fbuf_5ff32',['srcB_buf_f32',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a67d9082c1585d4854ae9ca38db170ff5',1,'srcB_buf_f32(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a67d9082c1585d4854ae9ca38db170ff5',1,'srcB_buf_f32(): arm_dotproduct_example_f32.c']]], + ['srcblen',['srcBLen',['../_a_r_m_2arm__convolution__example__f32_8c.html#aea71286f498978c5ed3775609b974fc8',1,'srcBLen(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#aea71286f498978c5ed3775609b974fc8',1,'srcBLen(): arm_convolution_example_f32.c']]], + ['stage_5frfft_5ff32',['stage_rfft_f32',['../arm__rfft__fast__f32_8c.html#a47157c5a53c8aac5e80fda31acf1f9cc',1,'arm_rfft_fast_f32.c']]], + ['state',['state',['../structarm__pid__instance__q15.html#a4a3f0a878b5b6b055e3478a2f244cd30',1,'arm_pid_instance_q15::state()'],['../structarm__pid__instance__q31.html#a228e4a64da6014844a0a671a1fa391d4',1,'arm_pid_instance_q31::state()'],['../structarm__pid__instance__f32.html#afd394e1e52fb1d526aa472c83b8f2464',1,'arm_pid_instance_f32::state()']]], + ['stateindex',['stateIndex',['../structarm__fir__sparse__instance__f32.html#a57585aeca9dc8686e08df2865375a86d',1,'arm_fir_sparse_instance_f32::stateIndex()'],['../structarm__fir__sparse__instance__q31.html#a557ed9d477e76e4ad2019344f19f568a',1,'arm_fir_sparse_instance_q31::stateIndex()'],['../structarm__fir__sparse__instance__q15.html#a89487f28cab52637426024005e478985',1,'arm_fir_sparse_instance_q15::stateIndex()'],['../structarm__fir__sparse__instance__q7.html#a2d2e65473fe3a3f2b953b4e0b60824df',1,'arm_fir_sparse_instance_q7::stateIndex()']]], + ['status',['status',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a88ccb294236ab22b00310c47164c53c3',1,'status(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a88ccb294236ab22b00310c47164c53c3',1,'status(): arm_dotproduct_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a88ccb294236ab22b00310c47164c53c3',1,'status(): arm_sin_cos_example_f32.c']]], + ['std',['std',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a150b0cf729b51893379f5b5548d4f989',1,'std(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a150b0cf729b51893379f5b5548d4f989',1,'std(): arm_class_marks_example_f32.c'],['../group___s_t_d.html',1,'(Global Namespace)']]], + ['student_5fnum',['student_num',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a798cf43a3725d7df2fcaf3f328969f53',1,'student_num(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a798cf43a3725d7df2fcaf3f328969f53',1,'student_num(): arm_class_marks_example_f32.c']]], + ['systemcoreclock',['SystemCoreClock',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c']]], + ['systemcoreclockupdate',['SystemCoreClockUpdate',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c']]], + ['systeminit',['SystemInit',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_74.html b/CMSIS/Documentation/DSP/html/search/all_74.html new file mode 100644 index 0000000..fdc6589 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_74.js b/CMSIS/Documentation/DSP/html/search/all_74.js new file mode 100644 index 0000000..172dd5c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_74.js @@ -0,0 +1,62 @@ +var searchData= +[ + ['transform_20functions',['Transform Functions',['../group__group_transforms.html',1,'']]], + ['table_5fsize',['TABLE_SIZE',['../arm__math_8h.html#a032503e76d6f69bc67e99e909c8125da',1,'arm_math.h']]], + ['table_5fspacing_5fq15',['TABLE_SPACING_Q15',['../arm__math_8h.html#a60b0142af7be007902142add27919b82',1,'arm_math.h']]], + ['table_5fspacing_5fq31',['TABLE_SPACING_Q31',['../arm__math_8h.html#a8407c9e1347d10e3bcf0a7014f1fb2ff',1,'arm_math.h']]], + ['test_5flength_5fsamples',['TEST_LENGTH_SAMPLES',['../_a_r_m_2arm__class__marks__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_fft_bin_example_f32.c'],['../arm__fir__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_fir_example_f32.c'],['../arm__linear__interp__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_linear_interp_example_f32.c'],['../arm__signal__converge__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_signal_converge_example_f32.c']]], + ['test_5fsignal_5fconverge',['test_signal_converge',['../arm__signal__converge__example__f32_8c.html#a8f521e839d4fad24a4f12a18dfeae5d4',1,'arm_signal_converge_example_f32.c']]], + ['test_5fsignal_5fconverge_5fexample',['test_signal_converge_example',['../arm__signal__converge__example__f32_8c.html#ac786d43cbc17bb09738447034ff8e22e',1,'arm_signal_converge_example_f32.c']]], + ['testindex',['testIndex',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a4a391651dbb95db35ccba70fc4f9e049',1,'testIndex(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a4a391651dbb95db35ccba70fc4f9e049',1,'testIndex(): arm_fft_bin_example_f32.c']]], + ['testinput_5ff32',['testInput_f32',['../arm__graphic__equalizer__data_8c.html#a987ef9f3767fa5e083bcf2dd1efed05c',1,'testInput_f32(): arm_graphic_equalizer_data.c'],['../arm__graphic__equalizer__example__q31_8c.html#aa4699dc6ee05353c83e0be4e69f6ad05',1,'testInput_f32(): arm_graphic_equalizer_data.c'],['../arm__signal__converge__data_8c.html#a898fab3d597516192bb221fb658315cc',1,'testInput_f32(): arm_signal_converge_data.c'],['../arm__signal__converge__example__f32_8c.html#aac98609c83ad8ed2b05c4fd82d2ba59b',1,'testInput_f32(): arm_graphic_equalizer_data.c'],['../arm__sin__cos__example__f32_8c.html#a8b3b7113988efd5bf11a247d07ae39a1',1,'testInput_f32(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#a9170ec9e681e2b519fe9c46a30455841',1,'testInput_f32(): arm_variance_example_f32.c']]], + ['testinput_5ff32_5f10khz',['testInput_f32_10khz',['../_a_r_m_2arm__fft__bin__data_8c.html#a8a12a8ec4b866be84f4b7d3daf6a1242',1,'testInput_f32_10khz(): arm_fft_bin_data.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a3d8ecb82590486ceebccc76263963b16',1,'testInput_f32_10khz(): arm_fft_bin_data.c'],['../_g_c_c_2arm__fft__bin__data_8c.html#a8a12a8ec4b866be84f4b7d3daf6a1242',1,'testInput_f32_10khz(): arm_fft_bin_data.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a3d8ecb82590486ceebccc76263963b16',1,'testInput_f32_10khz(): arm_fft_bin_data.c']]], + ['testinput_5ff32_5f1khz_5f15khz',['testInput_f32_1kHz_15kHz',['../arm__fir__data_8c.html#a143154a165358f0016714cb7f1c83970',1,'testInput_f32_1kHz_15kHz(): arm_fir_data.c'],['../arm__fir__example__f32_8c.html#a35d190391c204b677e2839d76ede6e8b',1,'testInput_f32_1kHz_15kHz(): arm_fir_data.c']]], + ['testinputa_5ff32',['testInputA_f32',['../_a_r_m_2arm__convolution__example__f32_8c.html#a7db2f016e1afcb524a2fdc3c5a3cb640',1,'testInputA_f32(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a7db2f016e1afcb524a2fdc3c5a3cb640',1,'testInputA_f32(): arm_convolution_example_f32.c']]], + ['testinputb_5ff32',['testInputB_f32',['../_a_r_m_2arm__convolution__example__f32_8c.html#acb22287e7e096b677e352dfd363ba60d',1,'testInputB_f32(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#acb22287e7e096b677e352dfd363ba60d',1,'testInputB_f32(): arm_convolution_example_f32.c']]], + ['testinputsin_5ff32',['testInputSin_f32',['../arm__linear__interp__example__f32_8c.html#a4be0c4d25e63ce04b8cc8ad070805287',1,'arm_linear_interp_example_f32.c']]], + ['testlength',['TESTLENGTH',['../arm__graphic__equalizer__example__q31_8c.html#a4f4a95eaace4e7b4e2f5243ed24f6b28',1,'arm_graphic_equalizer_example_q31.c']]], + ['testlinintoutput',['testLinIntOutput',['../arm__linear__interp__example__f32_8c.html#a8ca7d0ad6e04efed464bcaacedacf925',1,'arm_linear_interp_example_f32.c']]], + ['testmarks_5ff32',['testMarks_f32',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a0153222efa82b7f1a0ea3835921bf921',1,'testMarks_f32(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a0153222efa82b7f1a0ea3835921bf921',1,'testMarks_f32(): arm_class_marks_example_f32.c']]], + ['testoutput',['testOutput',['../_a_r_m_2arm__class__marks__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a324833b61eae796082e07d078a67c34f',1,'testOutput(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a324833b61eae796082e07d078a67c34f',1,'testOutput(): arm_dotproduct_example_f32.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#aaaf907bde12051bc8bb5d48b7d315a35',1,'testOutput(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#aaaf907bde12051bc8bb5d48b7d315a35',1,'testOutput(): arm_fft_bin_example_f32.c'],['../arm__fir__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#a3293e83a154108a1d398bb042e293894',1,'testOutput(): arm_graphic_equalizer_example_q31.c'],['../arm__linear__interp__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_linear_interp_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a324833b61eae796082e07d078a67c34f',1,'testOutput(): arm_sin_cos_example_f32.c']]], + ['testrefoutput_5ff32',['testRefOutput_f32',['../_a_r_m_2arm__convolution__example__f32_8c.html#a7ede41b07b8766013744c8fdbb80af75',1,'testRefOutput_f32(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a7ede41b07b8766013744c8fdbb80af75',1,'testRefOutput_f32(): arm_convolution_example_f32.c'],['../arm__graphic__equalizer__data_8c.html#a32c13cab7708773e0f86a9677e259c64',1,'testRefOutput_f32(): arm_graphic_equalizer_data.c'],['../arm__graphic__equalizer__example__q31_8c.html#a9cbbafa975d67bc8ee8ea3260fdd5638',1,'testRefOutput_f32(): arm_convolution_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a8bcb5c1f75ed5f1737e435f0de1850a3',1,'testRefOutput_f32(): arm_sin_cos_example_f32.c']]], + ['testrefsinoutput32_5ff32',['testRefSinOutput32_f32',['../arm__linear__interp__example__f32_8c.html#a5a33218d422603f3e5267b6984bdddd1',1,'arm_linear_interp_example_f32.c']]], + ['testunity_5ff32',['testUnity_f32',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a993b9b2a1faf43b319c1c6d58b26e7a1',1,'testUnity_f32(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a993b9b2a1faf43b319c1c6d58b26e7a1',1,'testUnity_f32(): arm_class_marks_example_f32.c']]], + ['twidcoefmodifier',['twidCoefModifier',['../structarm__cfft__radix2__instance__q15.html#a6f2ab87fb4c568656e1f92f687b5c850',1,'arm_cfft_radix2_instance_q15::twidCoefModifier()'],['../structarm__cfft__radix4__instance__q15.html#af32fdc78bcc27ca385f9b76a0a1f71c3',1,'arm_cfft_radix4_instance_q15::twidCoefModifier()'],['../structarm__cfft__radix2__instance__q31.html#ae63ca9193322cd477970c1d2086407d1',1,'arm_cfft_radix2_instance_q31::twidCoefModifier()'],['../structarm__cfft__radix4__instance__q31.html#a8cf8187b8232815cf17ee82bf572ecf9',1,'arm_cfft_radix4_instance_q31::twidCoefModifier()'],['../structarm__cfft__radix2__instance__f32.html#a411f75b6ed01690293f4f5988030ea42',1,'arm_cfft_radix2_instance_f32::twidCoefModifier()'],['../structarm__cfft__radix4__instance__f32.html#abe31ea2157dfa233e389cdfd3b9993ee',1,'arm_cfft_radix4_instance_f32::twidCoefModifier()']]], + ['twidcoefrmodifier',['twidCoefRModifier',['../structarm__rfft__instance__q15.html#afd444d05858c5f419980e94e8240d5c3',1,'arm_rfft_instance_q15::twidCoefRModifier()'],['../structarm__rfft__instance__q31.html#a6fc90252b579f7c29e01bd279334fc43',1,'arm_rfft_instance_q31::twidCoefRModifier()'],['../structarm__rfft__instance__f32.html#aede85350fb5ae6baa1b3e8bfa15b18d6',1,'arm_rfft_instance_f32::twidCoefRModifier()']]], + ['twiddlecoef',['twiddleCoef',['../arm__common__tables_8h.html#a9bf8c85e4c91b9b55818b3d650d2c761',1,'arm_common_tables.h']]], + ['twiddlecoef_5f1024',['twiddleCoef_1024',['../group___c_f_f_t___c_i_f_f_t.html#ga27c056eb130a4333d1cc5dd43ec738b1',1,'twiddleCoef_1024(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga27c056eb130a4333d1cc5dd43ec738b1',1,'twiddleCoef_1024(): arm_common_tables.c']]], + ['twiddlecoef_5f1024_5fq15',['twiddleCoef_1024_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga8a0ec95d866fe96b740e77d6e1356b59',1,'twiddleCoef_1024_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga8a0ec95d866fe96b740e77d6e1356b59',1,'twiddleCoef_1024_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f1024_5fq31',['twiddleCoef_1024_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga514443c44b62b8b3d240afefebcda310',1,'twiddleCoef_1024_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga514443c44b62b8b3d240afefebcda310',1,'twiddleCoef_1024_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f128',['twiddleCoef_128',['../group___c_f_f_t___c_i_f_f_t.html#ga948433536dafaac1381decfccf4e2d9c',1,'twiddleCoef_128(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga948433536dafaac1381decfccf4e2d9c',1,'twiddleCoef_128(): arm_common_tables.c']]], + ['twiddlecoef_5f128_5fq15',['twiddleCoef_128_q15',['../group___c_f_f_t___c_i_f_f_t.html#gabfdd1c5cd2b3f96da5fe5f07c707a8e5',1,'twiddleCoef_128_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gabfdd1c5cd2b3f96da5fe5f07c707a8e5',1,'twiddleCoef_128_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f128_5fq31',['twiddleCoef_128_q31',['../group___c_f_f_t___c_i_f_f_t.html#gafecf9ed9873415d9f5f17f37b30c7250',1,'twiddleCoef_128_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gafecf9ed9873415d9f5f17f37b30c7250',1,'twiddleCoef_128_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f16',['twiddleCoef_16',['../group___c_f_f_t___c_i_f_f_t.html#gae75e243ec61706427314270f222e0c8e',1,'twiddleCoef_16(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gae75e243ec61706427314270f222e0c8e',1,'twiddleCoef_16(): arm_common_tables.c']]], + ['twiddlecoef_5f16_5fq15',['twiddleCoef_16_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga8e4e2e05f4a3112184c96cb3308d6c39',1,'twiddleCoef_16_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga8e4e2e05f4a3112184c96cb3308d6c39',1,'twiddleCoef_16_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f16_5fq31',['twiddleCoef_16_q31',['../group___c_f_f_t___c_i_f_f_t.html#gaef4697e1ba348c4ac9358f2b9e279e93',1,'twiddleCoef_16_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gaef4697e1ba348c4ac9358f2b9e279e93',1,'twiddleCoef_16_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f2048',['twiddleCoef_2048',['../group___c_f_f_t___c_i_f_f_t.html#ga23e7f30421a7905b21c2015429779633',1,'twiddleCoef_2048(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga23e7f30421a7905b21c2015429779633',1,'twiddleCoef_2048(): arm_common_tables.c']]], + ['twiddlecoef_5f2048_5fq15',['twiddleCoef_2048_q15',['../group___c_f_f_t___c_i_f_f_t.html#gadd16ce08ffd1048c385e0534a3b19cbb',1,'twiddleCoef_2048_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gadd16ce08ffd1048c385e0534a3b19cbb',1,'twiddleCoef_2048_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f2048_5fq31',['twiddleCoef_2048_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga9c5767de9f5a409fd0c2027e6ac67179',1,'twiddleCoef_2048_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga9c5767de9f5a409fd0c2027e6ac67179',1,'twiddleCoef_2048_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f256',['twiddleCoef_256',['../group___c_f_f_t___c_i_f_f_t.html#gafe813758a03a798e972359a092315be4',1,'twiddleCoef_256(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gafe813758a03a798e972359a092315be4',1,'twiddleCoef_256(): arm_common_tables.c']]], + ['twiddlecoef_5f256_5fq15',['twiddleCoef_256_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga6099ae5262a0a3a8d9ce1e6da02f0c2e',1,'twiddleCoef_256_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga6099ae5262a0a3a8d9ce1e6da02f0c2e',1,'twiddleCoef_256_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f256_5fq31',['twiddleCoef_256_q31',['../group___c_f_f_t___c_i_f_f_t.html#gaef1ea005053b715b851cf5f908168ede',1,'twiddleCoef_256_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gaef1ea005053b715b851cf5f908168ede',1,'twiddleCoef_256_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f32',['twiddleCoef_32',['../group___c_f_f_t___c_i_f_f_t.html#ga78a72c85d88185de98050c930cfc76e3',1,'twiddleCoef_32(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga78a72c85d88185de98050c930cfc76e3',1,'twiddleCoef_32(): arm_common_tables.c']]], + ['twiddlecoef_5f32_5fq15',['twiddleCoef_32_q15',['../group___c_f_f_t___c_i_f_f_t.html#gac194a4fe04a19051ae1811f69c6e5df2',1,'twiddleCoef_32_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gac194a4fe04a19051ae1811f69c6e5df2',1,'twiddleCoef_32_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f32_5fq31',['twiddleCoef_32_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga8ba78d5e6ef4bdc58e8f0044e0664a0a',1,'twiddleCoef_32_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga8ba78d5e6ef4bdc58e8f0044e0664a0a',1,'twiddleCoef_32_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f4096',['twiddleCoef_4096',['../group___c_f_f_t___c_i_f_f_t.html#gae0182d1dd3b2f21aad4e38a815a0bd40',1,'twiddleCoef_4096(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gae0182d1dd3b2f21aad4e38a815a0bd40',1,'twiddleCoef_4096(): arm_common_tables.c']]], + ['twiddlecoef_5f4096_5fq15',['twiddleCoef_4096_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga9b409d6995eab17805b1d1881d4bc652',1,'twiddleCoef_4096_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga9b409d6995eab17805b1d1881d4bc652',1,'twiddleCoef_4096_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f4096_5fq31',['twiddleCoef_4096_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga67c0890317deab3391e276f22c1fc400',1,'twiddleCoef_4096_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga67c0890317deab3391e276f22c1fc400',1,'twiddleCoef_4096_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f512',['twiddleCoef_512',['../group___c_f_f_t___c_i_f_f_t.html#gad8830f0c068ab2cc19f2f87d220fa148',1,'twiddleCoef_512(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gad8830f0c068ab2cc19f2f87d220fa148',1,'twiddleCoef_512(): arm_common_tables.c']]], + ['twiddlecoef_5f512_5fq15',['twiddleCoef_512_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga6152621af210f847128c6f38958fa385',1,'twiddleCoef_512_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga6152621af210f847128c6f38958fa385',1,'twiddleCoef_512_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f512_5fq31',['twiddleCoef_512_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga416c61b2f08542a39111e06b0378bebe',1,'twiddleCoef_512_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga416c61b2f08542a39111e06b0378bebe',1,'twiddleCoef_512_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f64',['twiddleCoef_64',['../group___c_f_f_t___c_i_f_f_t.html#ga4f3c6d98c7e66393b4ef3ac63746e43d',1,'twiddleCoef_64(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga4f3c6d98c7e66393b4ef3ac63746e43d',1,'twiddleCoef_64(): arm_common_tables.c']]], + ['twiddlecoef_5f64_5fq15',['twiddleCoef_64_q15',['../group___c_f_f_t___c_i_f_f_t.html#gaa0cc411e0b3c82078e85cfdf1b84290f',1,'twiddleCoef_64_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gaa0cc411e0b3c82078e85cfdf1b84290f',1,'twiddleCoef_64_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f64_5fq31',['twiddleCoef_64_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga6e0a7e941a25a0d74b2e6590307de47e',1,'twiddleCoef_64_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga6e0a7e941a25a0d74b2e6590307de47e',1,'twiddleCoef_64_q31(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f1024',['twiddleCoef_rfft_1024',['../arm__common__tables_8c.html#aa7d8d3aa9898d557385748a13c959a4c',1,'twiddleCoef_rfft_1024(): arm_common_tables.c'],['../arm__common__tables_8h.html#aa7d8d3aa9898d557385748a13c959a4c',1,'twiddleCoef_rfft_1024(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f128',['twiddleCoef_rfft_128',['../arm__common__tables_8c.html#af089dd2fe1a543d40a3325982bf45e7c',1,'twiddleCoef_rfft_128(): arm_common_tables.c'],['../arm__common__tables_8h.html#af089dd2fe1a543d40a3325982bf45e7c',1,'twiddleCoef_rfft_128(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f2048',['twiddleCoef_rfft_2048',['../arm__common__tables_8c.html#a749a5995ebd433a163f7adc474dabcaa',1,'twiddleCoef_rfft_2048(): arm_common_tables.c'],['../arm__common__tables_8h.html#a749a5995ebd433a163f7adc474dabcaa',1,'twiddleCoef_rfft_2048(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f256',['twiddleCoef_rfft_256',['../arm__common__tables_8c.html#a5c5c161dd469d8e6806664956dae31f9',1,'twiddleCoef_rfft_256(): arm_common_tables.c'],['../arm__common__tables_8h.html#a5c5c161dd469d8e6806664956dae31f9',1,'twiddleCoef_rfft_256(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f32',['twiddleCoef_rfft_32',['../arm__common__tables_8c.html#a5992afe8574289cd71921651b80bd57d',1,'twiddleCoef_rfft_32(): arm_common_tables.c'],['../arm__common__tables_8h.html#a5992afe8574289cd71921651b80bd57d',1,'twiddleCoef_rfft_32(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f4096',['twiddleCoef_rfft_4096',['../arm__common__tables_8c.html#a8013d68dd2476c86b77173bb98b87b29',1,'twiddleCoef_rfft_4096(): arm_common_tables.c'],['../arm__common__tables_8h.html#a8013d68dd2476c86b77173bb98b87b29',1,'twiddleCoef_rfft_4096(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f512',['twiddleCoef_rfft_512',['../arm__common__tables_8c.html#a94bd2fc98798f87003fef5cd0c04d1f5',1,'twiddleCoef_rfft_512(): arm_common_tables.c'],['../arm__common__tables_8h.html#a94bd2fc98798f87003fef5cd0c04d1f5',1,'twiddleCoef_rfft_512(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f64',['twiddleCoef_rfft_64',['../arm__common__tables_8c.html#a2759d8789e1e6ae2ba7fb8d7f5e9c2ab',1,'twiddleCoef_rfft_64(): arm_common_tables.c'],['../arm__common__tables_8h.html#a2759d8789e1e6ae2ba7fb8d7f5e9c2ab',1,'twiddleCoef_rfft_64(): arm_common_tables.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_75.html b/CMSIS/Documentation/DSP/html/search/all_75.html new file mode 100644 index 0000000..ab8455e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_75.js b/CMSIS/Documentation/DSP/html/search/all_75.js new file mode 100644 index 0000000..90b4d4b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['use_5fstatic_5finit',['USE_STATIC_INIT',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a821d6c5973940580f5a045e7cf64b7f2',1,'USE_STATIC_INIT(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a821d6c5973940580f5a045e7cf64b7f2',1,'USE_STATIC_INIT(): arm_class_marks_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_76.html b/CMSIS/Documentation/DSP/html/search/all_76.html new file mode 100644 index 0000000..0ff5edd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_76.js b/CMSIS/Documentation/DSP/html/search/all_76.js new file mode 100644 index 0000000..59aa58b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_76.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['vector_20absolute_20value',['Vector Absolute Value',['../group___basic_abs.html',1,'']]], + ['vector_20addition',['Vector Addition',['../group___basic_add.html',1,'']]], + ['vector_20multiplication',['Vector Multiplication',['../group___basic_mult.html',1,'']]], + ['vector_20subtraction',['Vector Subtraction',['../group___basic_sub.html',1,'']]], + ['vector_20clarke_20transform',['Vector Clarke Transform',['../group__clarke.html',1,'']]], + ['vector_20copy',['Vector Copy',['../group__copy.html',1,'']]], + ['vector_20dot_20product',['Vector Dot Product',['../group__dot__prod.html',1,'']]], + ['vector_20fill',['Vector Fill',['../group___fill.html',1,'']]], + ['vector_20inverse_20clarke_20transform',['Vector Inverse Clarke Transform',['../group__inv__clarke.html',1,'']]], + ['vector_20inverse_20park_20transform',['Vector Inverse Park transform',['../group__inv__park.html',1,'']]], + ['vector_20negate',['Vector Negate',['../group__negate.html',1,'']]], + ['vector_20offset',['Vector Offset',['../group__offset.html',1,'']]], + ['vector_20park_20transform',['Vector Park Transform',['../group__park.html',1,'']]], + ['vector_20scale',['Vector Scale',['../group__scale.html',1,'']]], + ['vector_20shift',['Vector Shift',['../group__shift.html',1,'']]], + ['var',['var',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a3bd39c4335d84be071cc1eaa9b0a8642',1,'var(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a3bd39c4335d84be071cc1eaa9b0a8642',1,'var(): arm_class_marks_example_f32.c']]], + ['variance',['Variance',['../group__variance.html',1,'']]], + ['variance_20example',['Variance Example',['../group___variance_example.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_77.html b/CMSIS/Documentation/DSP/html/search/all_77.html new file mode 100644 index 0000000..73323d3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_77.js b/CMSIS/Documentation/DSP/html/search/all_77.js new file mode 100644 index 0000000..cd511b1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_77.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['weights_5f128',['Weights_128',['../group___d_c_t4___i_d_c_t4.html#gad00f29d896d64d6da7afbbb9d3e182a4',1,'arm_dct4_init_f32.c']]], + ['weights_5f2048',['Weights_2048',['../group___d_c_t4___i_d_c_t4.html#gac3a2a00b3106dfcb5e0a582f50c65692',1,'arm_dct4_init_f32.c']]], + ['weights_5f512',['Weights_512',['../group___d_c_t4___i_d_c_t4.html#gaeb67b0be5b3c2139d660e02cedeed908',1,'arm_dct4_init_f32.c']]], + ['weights_5f8192',['Weights_8192',['../group___d_c_t4___i_d_c_t4.html#ga45a8ec91e5da91790566105bc7e6f0c2',1,'arm_dct4_init_f32.c']]], + ['weightsq15_5f128',['WeightsQ15_128',['../group___d_c_t4___i_d_c_t4.html#gaa4ff5e6f062efb1d1ec8c6c2207c3727',1,'arm_dct4_init_q15.c']]], + ['weightsq15_5f2048',['WeightsQ15_2048',['../group___d_c_t4___i_d_c_t4.html#ga2235ec700d0d6925d9733f48541d46f5',1,'arm_dct4_init_q15.c']]], + ['weightsq15_5f512',['WeightsQ15_512',['../group___d_c_t4___i_d_c_t4.html#gadc8ee250fc217d6cb5c84dd7c1eb6d31',1,'arm_dct4_init_q15.c']]], + ['weightsq15_5f8192',['WeightsQ15_8192',['../group___d_c_t4___i_d_c_t4.html#ga4fdc60621eb306984a82ce8b2d645bb7',1,'arm_dct4_init_q15.c']]], + ['weightsq31_5f128',['WeightsQ31_128',['../group___d_c_t4___i_d_c_t4.html#ga02d7024538a87214296b01d83ba36b02',1,'arm_dct4_init_q31.c']]], + ['weightsq31_5f2048',['WeightsQ31_2048',['../group___d_c_t4___i_d_c_t4.html#ga725b65c25a02b3cad329e18bb832f65e',1,'arm_dct4_init_q31.c']]], + ['weightsq31_5f512',['WeightsQ31_512',['../group___d_c_t4___i_d_c_t4.html#ga31a8217a96f7d3171921e98398f31596',1,'arm_dct4_init_q31.c']]], + ['weightsq31_5f8192',['WeightsQ31_8192',['../group___d_c_t4___i_d_c_t4.html#ga16bf6bbe5c4c9b35f88253cf7bdcc435',1,'arm_dct4_init_q31.c']]], + ['wire1',['wire1',['../arm__signal__converge__example__f32_8c.html#a16e759789fbc05f878863f009066c8ea',1,'wire1(): arm_signal_converge_example_f32.c'],['../arm__variance__example__f32_8c.html#acc43b372d92d5027b9f9cac782c8b3c7',1,'wire1(): arm_variance_example_f32.c']]], + ['wire2',['wire2',['../arm__signal__converge__example__f32_8c.html#a4e370163c81ae2b72cc655a6b79e4c6a',1,'wire2(): arm_signal_converge_example_f32.c'],['../arm__variance__example__f32_8c.html#a41a9afab5be5ccd2e6f618b83102f0d1',1,'wire2(): arm_variance_example_f32.c']]], + ['wire3',['wire3',['../arm__signal__converge__example__f32_8c.html#a7e2cceadf6ec7f0aa0f698a680fa3a4b',1,'wire3(): arm_signal_converge_example_f32.c'],['../arm__variance__example__f32_8c.html#af61f43ad332a2322e43ced590b6d9768',1,'wire3(): arm_variance_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/all_78.html b/CMSIS/Documentation/DSP/html/search/all_78.html new file mode 100644 index 0000000..10780d6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/all_78.js b/CMSIS/Documentation/DSP/html/search/all_78.js new file mode 100644 index 0000000..bf3ac96 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/all_78.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['x0',['x0',['../structarm__lms__norm__instance__f32.html#aec958fe89b164a30f38bcca9f5d96218',1,'arm_lms_norm_instance_f32::x0()'],['../structarm__lms__norm__instance__q31.html#a47c4466d644e0d8ba407995adfa9b917',1,'arm_lms_norm_instance_q31::x0()'],['../structarm__lms__norm__instance__q15.html#a3fc1d6f97d2c6d5324871de6895cb7e9',1,'arm_lms_norm_instance_q15::x0()']]], + ['x1',['x1',['../structarm__linear__interp__instance__f32.html#a08352dc6ea82fbc0827408e018535481',1,'arm_linear_interp_instance_f32']]], + ['x_5ff32',['X_f32',['../arm__matrix__example__f32_8c.html#a98c67c0fc0cb5f2df51b21482d31d21c',1,'arm_matrix_example_f32.c']]], + ['xref_5ff32',['xRef_f32',['../arm__matrix__example__f32_8c.html#a6184758419722fa16bb883097c2f596b',1,'arm_matrix_example_f32.c']]], + ['xspacing',['xSpacing',['../structarm__linear__interp__instance__f32.html#aa8e2d686b5434a406d390b347b183511',1,'arm_linear_interp_instance_f32::xSpacing()'],['../arm__linear__interp__example__f32_8c.html#a0ecae49cebd837aac53411c8f877503d',1,'XSPACING(): arm_linear_interp_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/classes_61.html b/CMSIS/Documentation/DSP/html/search/classes_61.html new file mode 100644 index 0000000..85e5d72 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/classes_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/classes_61.js b/CMSIS/Documentation/DSP/html/search/classes_61.js new file mode 100644 index 0000000..8f91fe1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/classes_61.js @@ -0,0 +1,64 @@ +var searchData= +[ + ['arm_5fbilinear_5finterp_5finstance_5ff32',['arm_bilinear_interp_instance_f32',['../structarm__bilinear__interp__instance__f32.html',1,'']]], + ['arm_5fbilinear_5finterp_5finstance_5fq15',['arm_bilinear_interp_instance_q15',['../structarm__bilinear__interp__instance__q15.html',1,'']]], + ['arm_5fbilinear_5finterp_5finstance_5fq31',['arm_bilinear_interp_instance_q31',['../structarm__bilinear__interp__instance__q31.html',1,'']]], + ['arm_5fbilinear_5finterp_5finstance_5fq7',['arm_bilinear_interp_instance_q7',['../structarm__bilinear__interp__instance__q7.html',1,'']]], + ['arm_5fbiquad_5fcas_5fdf1_5f32x64_5fins_5fq31',['arm_biquad_cas_df1_32x64_ins_q31',['../structarm__biquad__cas__df1__32x64__ins__q31.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finstance_5ff32',['arm_biquad_cascade_df2T_instance_f32',['../structarm__biquad__cascade__df2_t__instance__f32.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finstance_5ff64',['arm_biquad_cascade_df2T_instance_f64',['../structarm__biquad__cascade__df2_t__instance__f64.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5finstance_5ff32',['arm_biquad_cascade_stereo_df2T_instance_f32',['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html',1,'']]], + ['arm_5fbiquad_5fcasd_5fdf1_5finst_5ff32',['arm_biquad_casd_df1_inst_f32',['../structarm__biquad__casd__df1__inst__f32.html',1,'']]], + ['arm_5fbiquad_5fcasd_5fdf1_5finst_5fq15',['arm_biquad_casd_df1_inst_q15',['../structarm__biquad__casd__df1__inst__q15.html',1,'']]], + ['arm_5fbiquad_5fcasd_5fdf1_5finst_5fq31',['arm_biquad_casd_df1_inst_q31',['../structarm__biquad__casd__df1__inst__q31.html',1,'']]], + ['arm_5fcfft_5finstance_5ff32',['arm_cfft_instance_f32',['../structarm__cfft__instance__f32.html',1,'']]], + ['arm_5fcfft_5finstance_5fq15',['arm_cfft_instance_q15',['../structarm__cfft__instance__q15.html',1,'']]], + ['arm_5fcfft_5finstance_5fq31',['arm_cfft_instance_q31',['../structarm__cfft__instance__q31.html',1,'']]], + ['arm_5fcfft_5fradix2_5finstance_5ff32',['arm_cfft_radix2_instance_f32',['../structarm__cfft__radix2__instance__f32.html',1,'']]], + ['arm_5fcfft_5fradix2_5finstance_5fq15',['arm_cfft_radix2_instance_q15',['../structarm__cfft__radix2__instance__q15.html',1,'']]], + ['arm_5fcfft_5fradix2_5finstance_5fq31',['arm_cfft_radix2_instance_q31',['../structarm__cfft__radix2__instance__q31.html',1,'']]], + ['arm_5fcfft_5fradix4_5finstance_5ff32',['arm_cfft_radix4_instance_f32',['../structarm__cfft__radix4__instance__f32.html',1,'']]], + ['arm_5fcfft_5fradix4_5finstance_5fq15',['arm_cfft_radix4_instance_q15',['../structarm__cfft__radix4__instance__q15.html',1,'']]], + ['arm_5fcfft_5fradix4_5finstance_5fq31',['arm_cfft_radix4_instance_q31',['../structarm__cfft__radix4__instance__q31.html',1,'']]], + ['arm_5fdct4_5finstance_5ff32',['arm_dct4_instance_f32',['../structarm__dct4__instance__f32.html',1,'']]], + ['arm_5fdct4_5finstance_5fq15',['arm_dct4_instance_q15',['../structarm__dct4__instance__q15.html',1,'']]], + ['arm_5fdct4_5finstance_5fq31',['arm_dct4_instance_q31',['../structarm__dct4__instance__q31.html',1,'']]], + ['arm_5ffir_5fdecimate_5finstance_5ff32',['arm_fir_decimate_instance_f32',['../structarm__fir__decimate__instance__f32.html',1,'']]], + ['arm_5ffir_5fdecimate_5finstance_5fq15',['arm_fir_decimate_instance_q15',['../structarm__fir__decimate__instance__q15.html',1,'']]], + ['arm_5ffir_5fdecimate_5finstance_5fq31',['arm_fir_decimate_instance_q31',['../structarm__fir__decimate__instance__q31.html',1,'']]], + ['arm_5ffir_5finstance_5ff32',['arm_fir_instance_f32',['../structarm__fir__instance__f32.html',1,'']]], + ['arm_5ffir_5finstance_5fq15',['arm_fir_instance_q15',['../structarm__fir__instance__q15.html',1,'']]], + ['arm_5ffir_5finstance_5fq31',['arm_fir_instance_q31',['../structarm__fir__instance__q31.html',1,'']]], + ['arm_5ffir_5finstance_5fq7',['arm_fir_instance_q7',['../structarm__fir__instance__q7.html',1,'']]], + ['arm_5ffir_5finterpolate_5finstance_5ff32',['arm_fir_interpolate_instance_f32',['../structarm__fir__interpolate__instance__f32.html',1,'']]], + ['arm_5ffir_5finterpolate_5finstance_5fq15',['arm_fir_interpolate_instance_q15',['../structarm__fir__interpolate__instance__q15.html',1,'']]], + ['arm_5ffir_5finterpolate_5finstance_5fq31',['arm_fir_interpolate_instance_q31',['../structarm__fir__interpolate__instance__q31.html',1,'']]], + ['arm_5ffir_5flattice_5finstance_5ff32',['arm_fir_lattice_instance_f32',['../structarm__fir__lattice__instance__f32.html',1,'']]], + ['arm_5ffir_5flattice_5finstance_5fq15',['arm_fir_lattice_instance_q15',['../structarm__fir__lattice__instance__q15.html',1,'']]], + ['arm_5ffir_5flattice_5finstance_5fq31',['arm_fir_lattice_instance_q31',['../structarm__fir__lattice__instance__q31.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5ff32',['arm_fir_sparse_instance_f32',['../structarm__fir__sparse__instance__f32.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5fq15',['arm_fir_sparse_instance_q15',['../structarm__fir__sparse__instance__q15.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5fq31',['arm_fir_sparse_instance_q31',['../structarm__fir__sparse__instance__q31.html',1,'']]], + ['arm_5ffir_5fsparse_5finstance_5fq7',['arm_fir_sparse_instance_q7',['../structarm__fir__sparse__instance__q7.html',1,'']]], + ['arm_5fiir_5flattice_5finstance_5ff32',['arm_iir_lattice_instance_f32',['../structarm__iir__lattice__instance__f32.html',1,'']]], + ['arm_5fiir_5flattice_5finstance_5fq15',['arm_iir_lattice_instance_q15',['../structarm__iir__lattice__instance__q15.html',1,'']]], + ['arm_5fiir_5flattice_5finstance_5fq31',['arm_iir_lattice_instance_q31',['../structarm__iir__lattice__instance__q31.html',1,'']]], + ['arm_5flinear_5finterp_5finstance_5ff32',['arm_linear_interp_instance_f32',['../structarm__linear__interp__instance__f32.html',1,'']]], + ['arm_5flms_5finstance_5ff32',['arm_lms_instance_f32',['../structarm__lms__instance__f32.html',1,'']]], + ['arm_5flms_5finstance_5fq15',['arm_lms_instance_q15',['../structarm__lms__instance__q15.html',1,'']]], + ['arm_5flms_5finstance_5fq31',['arm_lms_instance_q31',['../structarm__lms__instance__q31.html',1,'']]], + ['arm_5flms_5fnorm_5finstance_5ff32',['arm_lms_norm_instance_f32',['../structarm__lms__norm__instance__f32.html',1,'']]], + ['arm_5flms_5fnorm_5finstance_5fq15',['arm_lms_norm_instance_q15',['../structarm__lms__norm__instance__q15.html',1,'']]], + ['arm_5flms_5fnorm_5finstance_5fq31',['arm_lms_norm_instance_q31',['../structarm__lms__norm__instance__q31.html',1,'']]], + ['arm_5fmatrix_5finstance_5ff32',['arm_matrix_instance_f32',['../structarm__matrix__instance__f32.html',1,'']]], + ['arm_5fmatrix_5finstance_5ff64',['arm_matrix_instance_f64',['../structarm__matrix__instance__f64.html',1,'']]], + ['arm_5fmatrix_5finstance_5fq15',['arm_matrix_instance_q15',['../structarm__matrix__instance__q15.html',1,'']]], + ['arm_5fmatrix_5finstance_5fq31',['arm_matrix_instance_q31',['../structarm__matrix__instance__q31.html',1,'']]], + ['arm_5fpid_5finstance_5ff32',['arm_pid_instance_f32',['../structarm__pid__instance__f32.html',1,'']]], + ['arm_5fpid_5finstance_5fq15',['arm_pid_instance_q15',['../structarm__pid__instance__q15.html',1,'']]], + ['arm_5fpid_5finstance_5fq31',['arm_pid_instance_q31',['../structarm__pid__instance__q31.html',1,'']]], + ['arm_5frfft_5ffast_5finstance_5ff32',['arm_rfft_fast_instance_f32',['../structarm__rfft__fast__instance__f32.html',1,'']]], + ['arm_5frfft_5finstance_5ff32',['arm_rfft_instance_f32',['../structarm__rfft__instance__f32.html',1,'']]], + ['arm_5frfft_5finstance_5fq15',['arm_rfft_instance_q15',['../structarm__rfft__instance__q15.html',1,'']]], + ['arm_5frfft_5finstance_5fq31',['arm_rfft_instance_q31',['../structarm__rfft__instance__q31.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/close.png b/CMSIS/Documentation/DSP/html/search/close.png new file mode 100644 index 0000000..9342d3d Binary files /dev/null and b/CMSIS/Documentation/DSP/html/search/close.png differ diff --git a/CMSIS/Documentation/DSP/html/search/defines_5f.html b/CMSIS/Documentation/DSP/html/search/defines_5f.html new file mode 100644 index 0000000..548a824 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_5f.js b/CMSIS/Documentation/DSP/html/search/defines_5f.js new file mode 100644 index 0000000..c26bc12 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_5f.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['_5f_5fcmsis_5fgeneric',['__CMSIS_GENERIC',['../arm__math_8h.html#a87c3b351c33a90de11a2f23e67867a8a',1,'arm_math.h']]], + ['_5f_5fhsi',['__HSI',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#abbd628d8a30e6695b3715ae72a693e56',1,'__HSI(): system_ARMCM7.c']]], + ['_5f_5fpackq7',['__PACKq7',['../arm__math_8h.html#a3ebff224ad44c217fde9f530342e2960',1,'arm_math.h']]], + ['_5f_5fsimd32',['__SIMD32',['../arm__math_8h.html#a9de2e0a5785be82866bcb96012282248',1,'arm_math.h']]], + ['_5f_5fsimd32_5fconst',['__SIMD32_CONST',['../arm__math_8h.html#a1185d670d798aaf52eec13f0403f3407',1,'arm_math.h']]], + ['_5f_5fsimd64',['__SIMD64',['../arm__math_8h.html#ad1b053da364f9fd82ca1a381df7590b6',1,'arm_math.h']]], + ['_5f_5fsystem_5fclock',['__SYSTEM_CLOCK',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a16323f44d2b5b11ef3972f71339cbd39',1,'__SYSTEM_CLOCK(): system_ARMCM7.c']]], + ['_5f_5fxtal',['__XTAL',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a8687edecd98881631a879bd10528c7da',1,'__XTAL(): system_ARMCM7.c']]], + ['_5fsimd32_5foffset',['_SIMD32_OFFSET',['../arm__math_8h.html#af0d54ec57b936994a34f073d0049ea3f',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_61.html b/CMSIS/Documentation/DSP/html/search/defines_61.html new file mode 100644 index 0000000..039f0b7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_61.js b/CMSIS/Documentation/DSP/html/search/defines_61.js new file mode 100644 index 0000000..3c5496d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_61.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['align4',['ALIGN4',['../arm__math_8h.html#a280a402ab28c399fcc4168f2ed631acb',1,'arm_math.h']]], + ['armbitrevindextable1024_5ftable_5flength',['ARMBITREVINDEXTABLE1024_TABLE_LENGTH',['../arm__common__tables_8h.html#af3b3659a55efaf414757d15e6c0ea9cc',1,'arm_common_tables.h']]], + ['armbitrevindextable2048_5ftable_5flength',['ARMBITREVINDEXTABLE2048_TABLE_LENGTH',['../arm__common__tables_8h.html#a1137f42be79c5941e942b58e262b5225',1,'arm_common_tables.h']]], + ['armbitrevindextable4096_5ftable_5flength',['ARMBITREVINDEXTABLE4096_TABLE_LENGTH',['../arm__common__tables_8h.html#af08eb635c0e1cf0ab3e29931f9bf1492',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f128_5ftable_5flength',['ARMBITREVINDEXTABLE_128_TABLE_LENGTH',['../arm__common__tables_8h.html#abb73376f7efda869394aab2acef4291c',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f256_5ftable_5flength',['ARMBITREVINDEXTABLE_256_TABLE_LENGTH',['../arm__common__tables_8h.html#aa7dc18c3b4f8d76f5a29f7b182007934',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f512_5ftable_5flength',['ARMBITREVINDEXTABLE_512_TABLE_LENGTH',['../arm__common__tables_8h.html#ab21231782baf177ef3edad11aeba5a4f',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f_5f16_5ftable_5flength',['ARMBITREVINDEXTABLE__16_TABLE_LENGTH',['../arm__common__tables_8h.html#a52289ebb691669410fbc40d1a8a1562a',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f_5f32_5ftable_5flength',['ARMBITREVINDEXTABLE__32_TABLE_LENGTH',['../arm__common__tables_8h.html#a6e12fc7073f15899078a1b2d8f4afb4c',1,'arm_common_tables.h']]], + ['armbitrevindextable_5f_5f64_5ftable_5flength',['ARMBITREVINDEXTABLE__64_TABLE_LENGTH',['../arm__common__tables_8h.html#a73e1987baf5282c699168bccf635930e',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f1024_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED_1024_TABLE_LENGTH',['../arm__common__tables_8h.html#ab78db333c5f36a927cf5f6b492e93dd3',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f2048_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED_2048_TABLE_LENGTH',['../arm__common__tables_8h.html#a7dbfc9019953b525d83184a50f9976cc',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f4096_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED_4096_TABLE_LENGTH',['../arm__common__tables_8h.html#acbf48883fbb31d3dc71d232aa8e8f91f',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f128_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED__128_TABLE_LENGTH',['../arm__common__tables_8h.html#aa3b70f6b0a87ecd706fc51bb3551977b',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f256_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED__256_TABLE_LENGTH',['../arm__common__tables_8h.html#ac0711126d0e162366ec7d0ebcb2a4420',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f512_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED__512_TABLE_LENGTH',['../arm__common__tables_8h.html#a5486cba85dce51ffbfe6c0475882cc82',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f_5f16_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED___16_TABLE_LENGTH',['../arm__common__tables_8h.html#a1dfdb9f7a5ad88ba7105c6cbc7e2c76e',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f_5f32_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED___32_TABLE_LENGTH',['../arm__common__tables_8h.html#aaa9ecdc043a73fa12c941cbe6613f9fa',1,'arm_common_tables.h']]], + ['armbitrevindextable_5ffixed_5f_5f_5f64_5ftable_5flength',['ARMBITREVINDEXTABLE_FIXED___64_TABLE_LENGTH',['../arm__common__tables_8h.html#ae53dc7c3198f9cfb5393e3a2644a12ac',1,'arm_common_tables.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_62.html b/CMSIS/Documentation/DSP/html/search/defines_62.html new file mode 100644 index 0000000..48009da --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_62.js b/CMSIS/Documentation/DSP/html/search/defines_62.js new file mode 100644 index 0000000..c6c6a82 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_62.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['block_5fsize',['BLOCK_SIZE',['../arm__fir__example__f32_8c.html#ad51ded0bbd705f02f73fc60c0b721ced',1,'arm_fir_example_f32.c']]], + ['blocksize',['BLOCKSIZE',['../arm__graphic__equalizer__example__q31_8c.html#afcf795f5a96fd55561abe69f56224630',1,'BLOCKSIZE(): arm_graphic_equalizer_example_q31.c'],['../arm__signal__converge__example__f32_8c.html#afcf795f5a96fd55561abe69f56224630',1,'BLOCKSIZE(): arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_63.html b/CMSIS/Documentation/DSP/html/search/defines_63.html new file mode 100644 index 0000000..35ff8ae --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_63.js b/CMSIS/Documentation/DSP/html/search/defines_63.js new file mode 100644 index 0000000..0dd6029 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['controller_5fq31_5fshift',['CONTROLLER_Q31_SHIFT',['../arm__math_8h.html#aaff6d2358c4ada8de838a279254ab550',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_64.html b/CMSIS/Documentation/DSP/html/search/defines_64.html new file mode 100644 index 0000000..7b428bd --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_64.js b/CMSIS/Documentation/DSP/html/search/defines_64.js new file mode 100644 index 0000000..438d36a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_64.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['delta',['DELTA',['../_a_r_m_2arm__convolution__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_convolution_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_dotproduct_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#a3fd2b1bcd7ddcf506237987ad780f495',1,'DELTA(): arm_variance_example_f32.c']]], + ['delta_5fcoeff',['DELTA_COEFF',['../arm__signal__converge__example__f32_8c.html#a9156349d99957ded15d8aa3aa11723de',1,'arm_signal_converge_example_f32.c']]], + ['delta_5ferror',['DELTA_ERROR',['../arm__signal__converge__example__f32_8c.html#a6d3c6a4484dcaac72fbfe5100c39b9b6',1,'arm_signal_converge_example_f32.c']]], + ['delta_5fq15',['DELTA_Q15',['../arm__math_8h.html#a663277ff19ad0b409fb98b64b2c2750b',1,'arm_math.h']]], + ['delta_5fq31',['DELTA_Q31',['../arm__math_8h.html#aad77ae594e95c5af6ae4129bd6a483c2',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_66.html b/CMSIS/Documentation/DSP/html/search/defines_66.html new file mode 100644 index 0000000..4ddd13f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_66.js b/CMSIS/Documentation/DSP/html/search/defines_66.js new file mode 100644 index 0000000..8f64ecf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_66.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['fast_5fmath_5fq15_5fshift',['FAST_MATH_Q15_SHIFT',['../arm__math_8h.html#a34716b73c631e65e8dd855e08384ecb2',1,'arm_math.h']]], + ['fast_5fmath_5fq31_5fshift',['FAST_MATH_Q31_SHIFT',['../arm__math_8h.html#a4268f77b1811a0c7fc2532a0bf6108b0',1,'arm_math.h']]], + ['fast_5fmath_5ftable_5fsize',['FAST_MATH_TABLE_SIZE',['../arm__math_8h.html#afcb9147c96853bea484cfc2dde07463d',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_69.html b/CMSIS/Documentation/DSP/html/search/defines_69.html new file mode 100644 index 0000000..ebf00b8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_69.js b/CMSIS/Documentation/DSP/html/search/defines_69.js new file mode 100644 index 0000000..9f91616 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_69.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['index_5fmask',['INDEX_MASK',['../arm__math_8h.html#a29f839928f4752b73c8858d6dbb55294',1,'arm_math.h']]], + ['input_5fspacing',['INPUT_SPACING',['../arm__math_8h.html#a1339e9abc11a3870e0c04f822a62166a',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_6d.html b/CMSIS/Documentation/DSP/html/search/defines_6d.html new file mode 100644 index 0000000..d282702 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_6d.js b/CMSIS/Documentation/DSP/html/search/defines_6d.js new file mode 100644 index 0000000..790f14d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_6d.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['max_5fblocksize',['MAX_BLOCKSIZE',['../_a_r_m_2arm__convolution__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_convolution_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_dotproduct_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#af8a1d2ed31f7c9a00fec46a798edb61b',1,'MAX_BLOCKSIZE(): arm_variance_example_f32.c']]], + ['mu',['MU',['../arm__signal__converge__example__f32_8c.html#a09bc9e6a44f0291cfcf578f2efcddfab',1,'arm_signal_converge_example_f32.c']]], + ['mult_5f32x32_5fkeep32',['mult_32x32_keep32',['../arm__math_8h.html#abb4baa0192bbb6fabc9251af4b4cb322',1,'arm_math.h']]], + ['mult_5f32x32_5fkeep32_5fr',['mult_32x32_keep32_R',['../arm__math_8h.html#a960f210642058d2b3d5368729a6e8375',1,'arm_math.h']]], + ['multacc_5f32x32_5fkeep32',['multAcc_32x32_keep32',['../arm__math_8h.html#a58454519e12e8157f0a1c36071333655',1,'arm_math.h']]], + ['multacc_5f32x32_5fkeep32_5fr',['multAcc_32x32_keep32_R',['../arm__math_8h.html#aba3e538352fc7f9d6d15f9a18d469399',1,'arm_math.h']]], + ['multsub_5f32x32_5fkeep32',['multSub_32x32_keep32',['../arm__math_8h.html#a9ec66f3082a4c65c78075638255f42ab',1,'arm_math.h']]], + ['multsub_5f32x32_5fkeep32_5fr',['multSub_32x32_keep32_R',['../arm__math_8h.html#a668fbf1cd1c3bc8faf1b1c83964ade23',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_6e.html b/CMSIS/Documentation/DSP/html/search/defines_6e.html new file mode 100644 index 0000000..5b7f68f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_6e.js b/CMSIS/Documentation/DSP/html/search/defines_6e.js new file mode 100644 index 0000000..83c5fc5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_6e.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['num_5ftaps',['NUM_TAPS',['../arm__fir__example__f32_8c.html#a7579d94e0a80fb9d376ea6c7897f73b0',1,'arm_fir_example_f32.c']]], + ['numblocks',['NUMBLOCKS',['../arm__graphic__equalizer__example__q31_8c.html#a814e34126e1b8150f4de047e1a9e7030',1,'arm_graphic_equalizer_example_q31.c']]], + ['numframes',['NUMFRAMES',['../arm__signal__converge__example__f32_8c.html#a4b6b859e1e3f6021a360390be287ca2c',1,'arm_signal_converge_example_f32.c']]], + ['numstages',['NUMSTAGES',['../arm__graphic__equalizer__example__q31_8c.html#a23f8e430b510dfdb3ebe53bffca0d864',1,'arm_graphic_equalizer_example_q31.c']]], + ['numstudents',['NUMSTUDENTS',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a9d89ac0707e7c9363544986d47a70bd3',1,'NUMSTUDENTS(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a9d89ac0707e7c9363544986d47a70bd3',1,'NUMSTUDENTS(): arm_class_marks_example_f32.c']]], + ['numsubjects',['NUMSUBJECTS',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a7b02f9b34bf2cd4d12633f5bf30771ec',1,'NUMSUBJECTS(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a7b02f9b34bf2cd4d12633f5bf30771ec',1,'NUMSUBJECTS(): arm_class_marks_example_f32.c']]], + ['numtaps',['NUMTAPS',['../arm__signal__converge__example__f32_8c.html#ac1d8ddb4f9a957eef3ad13d44de4d804',1,'arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_70.html b/CMSIS/Documentation/DSP/html/search/defines_70.html new file mode 100644 index 0000000..4b0aeb0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_70.js b/CMSIS/Documentation/DSP/html/search/defines_70.js new file mode 100644 index 0000000..0761230 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_70.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['pi',['PI',['../arm__math_8h.html#a598a3330b3c21701223ee0ca14316eca',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_73.html b/CMSIS/Documentation/DSP/html/search/defines_73.html new file mode 100644 index 0000000..913ae48 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_73.js b/CMSIS/Documentation/DSP/html/search/defines_73.js new file mode 100644 index 0000000..d0f96dc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_73.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['snr_5fthreshold',['SNR_THRESHOLD',['../_a_r_m_2arm__convolution__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_convolution_example_f32.c'],['../arm__linear__interp__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_linear_interp_example_f32.c'],['../arm__matrix__example__f32_8c.html#af08ec3fef897d77c6817638bf0e0c5c6',1,'SNR_THRESHOLD(): arm_matrix_example_f32.c']]], + ['snr_5fthreshold_5ff32',['SNR_THRESHOLD_F32',['../arm__fir__example__f32_8c.html#af7d1dd4deffa8e7ed6429e5dd0fe1812',1,'SNR_THRESHOLD_F32(): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#af7d1dd4deffa8e7ed6429e5dd0fe1812',1,'SNR_THRESHOLD_F32(): arm_graphic_equalizer_example_q31.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_74.html b/CMSIS/Documentation/DSP/html/search/defines_74.html new file mode 100644 index 0000000..7c78f10 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_74.js b/CMSIS/Documentation/DSP/html/search/defines_74.js new file mode 100644 index 0000000..39bbc1f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_74.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['table_5fsize',['TABLE_SIZE',['../arm__math_8h.html#a032503e76d6f69bc67e99e909c8125da',1,'arm_math.h']]], + ['table_5fspacing_5fq15',['TABLE_SPACING_Q15',['../arm__math_8h.html#a60b0142af7be007902142add27919b82',1,'arm_math.h']]], + ['table_5fspacing_5fq31',['TABLE_SPACING_Q31',['../arm__math_8h.html#a8407c9e1347d10e3bcf0a7014f1fb2ff',1,'arm_math.h']]], + ['test_5flength_5fsamples',['TEST_LENGTH_SAMPLES',['../_a_r_m_2arm__class__marks__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_fft_bin_example_f32.c'],['../arm__fir__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_fir_example_f32.c'],['../arm__linear__interp__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_linear_interp_example_f32.c'],['../arm__signal__converge__example__f32_8c.html#abc004a7fade488e72310fd96c0a101dc',1,'TEST_LENGTH_SAMPLES(): arm_signal_converge_example_f32.c']]], + ['testlength',['TESTLENGTH',['../arm__graphic__equalizer__example__q31_8c.html#a4f4a95eaace4e7b4e2f5243ed24f6b28',1,'arm_graphic_equalizer_example_q31.c']]], + ['twiddlecoef',['twiddleCoef',['../arm__common__tables_8h.html#a9bf8c85e4c91b9b55818b3d650d2c761',1,'arm_common_tables.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_75.html b/CMSIS/Documentation/DSP/html/search/defines_75.html new file mode 100644 index 0000000..7318a7a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_75.js b/CMSIS/Documentation/DSP/html/search/defines_75.js new file mode 100644 index 0000000..90b4d4b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['use_5fstatic_5finit',['USE_STATIC_INIT',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a821d6c5973940580f5a045e7cf64b7f2',1,'USE_STATIC_INIT(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a821d6c5973940580f5a045e7cf64b7f2',1,'USE_STATIC_INIT(): arm_class_marks_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/defines_78.html b/CMSIS/Documentation/DSP/html/search/defines_78.html new file mode 100644 index 0000000..1b40300 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/defines_78.js b/CMSIS/Documentation/DSP/html/search/defines_78.js new file mode 100644 index 0000000..bd7ebc4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/defines_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['xspacing',['XSPACING',['../arm__linear__interp__example__f32_8c.html#a0ecae49cebd837aac53411c8f877503d',1,'arm_linear_interp_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/enums_61.html b/CMSIS/Documentation/DSP/html/search/enums_61.html new file mode 100644 index 0000000..f27490d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/enums_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/enums_61.js b/CMSIS/Documentation/DSP/html/search/enums_61.js new file mode 100644 index 0000000..4f1e847 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/enums_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['arm_5fstatus',['arm_status',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/enumvalues_61.html b/CMSIS/Documentation/DSP/html/search/enumvalues_61.html new file mode 100644 index 0000000..deef591 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/enumvalues_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/enumvalues_61.js b/CMSIS/Documentation/DSP/html/search/enumvalues_61.js new file mode 100644 index 0000000..ecff4ea --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/enumvalues_61.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['arm_5fmath_5fargument_5ferror',['ARM_MATH_ARGUMENT_ERROR',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a74897e18d4b8f62b12a7d8a01dd2bb35',1,'arm_math.h']]], + ['arm_5fmath_5flength_5ferror',['ARM_MATH_LENGTH_ERROR',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a9ae74d7f8a53aec0512ae8f0a421e0e1',1,'arm_math.h']]], + ['arm_5fmath_5fnaninf',['ARM_MATH_NANINF',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6ac55996aaf19245238a8f57a91aeaefcc',1,'arm_math.h']]], + ['arm_5fmath_5fsingular',['ARM_MATH_SINGULAR',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a91509ea9c819dbd592ac13a6b05382dc',1,'arm_math.h']]], + ['arm_5fmath_5fsize_5fmismatch',['ARM_MATH_SIZE_MISMATCH',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a7071b92f1f6bc3c5c312a237ea91105b',1,'arm_math.h']]], + ['arm_5fmath_5fsuccess',['ARM_MATH_SUCCESS',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a9f8b2a10bd827fb4600e77d455902eb0',1,'arm_math.h']]], + ['arm_5fmath_5ftest_5ffailure',['ARM_MATH_TEST_FAILURE',['../arm__math_8h.html#a5e459c6409dfcd2927bb8a57491d7cf6a09457f2be656b35015fd6d36202fa376',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/files_61.html b/CMSIS/Documentation/DSP/html/search/files_61.html new file mode 100644 index 0000000..5a8e454 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/files_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/files_61.js b/CMSIS/Documentation/DSP/html/search/files_61.js new file mode 100644 index 0000000..6f1b868 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/files_61.js @@ -0,0 +1,389 @@ +var searchData= +[ + ['abstract_2etxt',['Abstract.txt',['../arm__class__marks__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__class__marks__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__convolution__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__fir__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__convolution__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__matrix__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['abstract_2etxt',['Abstract.txt',['../arm__variance__example_2_a_r_m_2_abstract_8txt.html',1,'']]], + ['arm_5fabs_5ff32_2ec',['arm_abs_f32.c',['../arm__abs__f32_8c.html',1,'']]], + ['arm_5fabs_5fq15_2ec',['arm_abs_q15.c',['../arm__abs__q15_8c.html',1,'']]], + ['arm_5fabs_5fq31_2ec',['arm_abs_q31.c',['../arm__abs__q31_8c.html',1,'']]], + ['arm_5fabs_5fq7_2ec',['arm_abs_q7.c',['../arm__abs__q7_8c.html',1,'']]], + ['arm_5fadd_5ff32_2ec',['arm_add_f32.c',['../arm__add__f32_8c.html',1,'']]], + ['arm_5fadd_5fq15_2ec',['arm_add_q15.c',['../arm__add__q15_8c.html',1,'']]], + ['arm_5fadd_5fq31_2ec',['arm_add_q31.c',['../arm__add__q31_8c.html',1,'']]], + ['arm_5fadd_5fq7_2ec',['arm_add_q7.c',['../arm__add__q7_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5f32x64_5finit_5fq31_2ec',['arm_biquad_cascade_df1_32x64_init_q31.c',['../arm__biquad__cascade__df1__32x64__init__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5f32x64_5fq31_2ec',['arm_biquad_cascade_df1_32x64_q31.c',['../arm__biquad__cascade__df1__32x64__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ff32_2ec',['arm_biquad_cascade_df1_f32.c',['../arm__biquad__cascade__df1__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq15_2ec',['arm_biquad_cascade_df1_fast_q15.c',['../arm__biquad__cascade__df1__fast__q15_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq31_2ec',['arm_biquad_cascade_df1_fast_q31.c',['../arm__biquad__cascade__df1__fast__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5ff32_2ec',['arm_biquad_cascade_df1_init_f32.c',['../arm__biquad__cascade__df1__init__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq15_2ec',['arm_biquad_cascade_df1_init_q15.c',['../arm__biquad__cascade__df1__init__q15_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq31_2ec',['arm_biquad_cascade_df1_init_q31.c',['../arm__biquad__cascade__df1__init__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq15_2ec',['arm_biquad_cascade_df1_q15.c',['../arm__biquad__cascade__df1__q15_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq31_2ec',['arm_biquad_cascade_df1_q31.c',['../arm__biquad__cascade__df1__q31_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff32_2ec',['arm_biquad_cascade_df2T_f32.c',['../arm__biquad__cascade__df2_t__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff64_2ec',['arm_biquad_cascade_df2T_f64.c',['../arm__biquad__cascade__df2_t__f64_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff32_2ec',['arm_biquad_cascade_df2T_init_f32.c',['../arm__biquad__cascade__df2_t__init__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff64_2ec',['arm_biquad_cascade_df2T_init_f64.c',['../arm__biquad__cascade__df2_t__init__f64_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5ff32_2ec',['arm_biquad_cascade_stereo_df2T_f32.c',['../arm__biquad__cascade__stereo__df2_t__f32_8c.html',1,'']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5finit_5ff32_2ec',['arm_biquad_cascade_stereo_df2T_init_f32.c',['../arm__biquad__cascade__stereo__df2_t__init__f32_8c.html',1,'']]], + ['arm_5fbitreversal_2ec',['arm_bitreversal.c',['../arm__bitreversal_8c.html',1,'']]], + ['arm_5fcfft_5ff32_2ec',['arm_cfft_f32.c',['../arm__cfft__f32_8c.html',1,'']]], + ['arm_5fcfft_5fq15_2ec',['arm_cfft_q15.c',['../arm__cfft__q15_8c.html',1,'']]], + ['arm_5fcfft_5fq31_2ec',['arm_cfft_q31.c',['../arm__cfft__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5ff32_2ec',['arm_cfft_radix2_f32.c',['../arm__cfft__radix2__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5finit_5ff32_2ec',['arm_cfft_radix2_init_f32.c',['../arm__cfft__radix2__init__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5finit_5fq15_2ec',['arm_cfft_radix2_init_q15.c',['../arm__cfft__radix2__init__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5finit_5fq31_2ec',['arm_cfft_radix2_init_q31.c',['../arm__cfft__radix2__init__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5fq15_2ec',['arm_cfft_radix2_q15.c',['../arm__cfft__radix2__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix2_5fq31_2ec',['arm_cfft_radix2_q31.c',['../arm__cfft__radix2__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5ff32_2ec',['arm_cfft_radix4_f32.c',['../arm__cfft__radix4__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5finit_5ff32_2ec',['arm_cfft_radix4_init_f32.c',['../arm__cfft__radix4__init__f32_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5finit_5fq15_2ec',['arm_cfft_radix4_init_q15.c',['../arm__cfft__radix4__init__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5finit_5fq31_2ec',['arm_cfft_radix4_init_q31.c',['../arm__cfft__radix4__init__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5fq15_2ec',['arm_cfft_radix4_q15.c',['../arm__cfft__radix4__q15_8c.html',1,'']]], + ['arm_5fcfft_5fradix4_5fq31_2ec',['arm_cfft_radix4_q31.c',['../arm__cfft__radix4__q31_8c.html',1,'']]], + ['arm_5fcfft_5fradix8_5ff32_2ec',['arm_cfft_radix8_f32.c',['../arm__cfft__radix8__f32_8c.html',1,'']]], + ['arm_5fclass_5fmarks_5fexample_5ff32_2ec',['arm_class_marks_example_f32.c',['../_a_r_m_2arm__class__marks__example__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fconj_5ff32_2ec',['arm_cmplx_conj_f32.c',['../arm__cmplx__conj__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fconj_5fq15_2ec',['arm_cmplx_conj_q15.c',['../arm__cmplx__conj__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fconj_5fq31_2ec',['arm_cmplx_conj_q31.c',['../arm__cmplx__conj__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fdot_5fprod_5ff32_2ec',['arm_cmplx_dot_prod_f32.c',['../arm__cmplx__dot__prod__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fdot_5fprod_5fq15_2ec',['arm_cmplx_dot_prod_q15.c',['../arm__cmplx__dot__prod__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fdot_5fprod_5fq31_2ec',['arm_cmplx_dot_prod_q31.c',['../arm__cmplx__dot__prod__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5ff32_2ec',['arm_cmplx_mag_f32.c',['../arm__cmplx__mag__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fq15_2ec',['arm_cmplx_mag_q15.c',['../arm__cmplx__mag__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fq31_2ec',['arm_cmplx_mag_q31.c',['../arm__cmplx__mag__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fsquared_5ff32_2ec',['arm_cmplx_mag_squared_f32.c',['../arm__cmplx__mag__squared__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq15_2ec',['arm_cmplx_mag_squared_q15.c',['../arm__cmplx__mag__squared__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq31_2ec',['arm_cmplx_mag_squared_q31.c',['../arm__cmplx__mag__squared__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5fcmplx_5ff32_2ec',['arm_cmplx_mult_cmplx_f32.c',['../arm__cmplx__mult__cmplx__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq15_2ec',['arm_cmplx_mult_cmplx_q15.c',['../arm__cmplx__mult__cmplx__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq31_2ec',['arm_cmplx_mult_cmplx_q31.c',['../arm__cmplx__mult__cmplx__q31_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5freal_5ff32_2ec',['arm_cmplx_mult_real_f32.c',['../arm__cmplx__mult__real__f32_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5freal_5fq15_2ec',['arm_cmplx_mult_real_q15.c',['../arm__cmplx__mult__real__q15_8c.html',1,'']]], + ['arm_5fcmplx_5fmult_5freal_5fq31_2ec',['arm_cmplx_mult_real_q31.c',['../arm__cmplx__mult__real__q31_8c.html',1,'']]], + ['arm_5fcommon_5ftables_2ec',['arm_common_tables.c',['../arm__common__tables_8c.html',1,'']]], + ['arm_5fcommon_5ftables_2eh',['arm_common_tables.h',['../arm__common__tables_8h.html',1,'']]], + ['arm_5fconst_5fstructs_2ec',['arm_const_structs.c',['../arm__const__structs_8c.html',1,'']]], + ['arm_5fconst_5fstructs_2eh',['arm_const_structs.h',['../arm__const__structs_8h.html',1,'']]], + ['arm_5fconv_5ff32_2ec',['arm_conv_f32.c',['../arm__conv__f32_8c.html',1,'']]], + ['arm_5fconv_5ffast_5fopt_5fq15_2ec',['arm_conv_fast_opt_q15.c',['../arm__conv__fast__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5ffast_5fq15_2ec',['arm_conv_fast_q15.c',['../arm__conv__fast__q15_8c.html',1,'']]], + ['arm_5fconv_5ffast_5fq31_2ec',['arm_conv_fast_q31.c',['../arm__conv__fast__q31_8c.html',1,'']]], + ['arm_5fconv_5fopt_5fq15_2ec',['arm_conv_opt_q15.c',['../arm__conv__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5fopt_5fq7_2ec',['arm_conv_opt_q7.c',['../arm__conv__opt__q7_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ff32_2ec',['arm_conv_partial_f32.c',['../arm__conv__partial__f32_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ffast_5fopt_5fq15_2ec',['arm_conv_partial_fast_opt_q15.c',['../arm__conv__partial__fast__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ffast_5fq15_2ec',['arm_conv_partial_fast_q15.c',['../arm__conv__partial__fast__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5ffast_5fq31_2ec',['arm_conv_partial_fast_q31.c',['../arm__conv__partial__fast__q31_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fopt_5fq15_2ec',['arm_conv_partial_opt_q15.c',['../arm__conv__partial__opt__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fopt_5fq7_2ec',['arm_conv_partial_opt_q7.c',['../arm__conv__partial__opt__q7_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fq15_2ec',['arm_conv_partial_q15.c',['../arm__conv__partial__q15_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fq31_2ec',['arm_conv_partial_q31.c',['../arm__conv__partial__q31_8c.html',1,'']]], + ['arm_5fconv_5fpartial_5fq7_2ec',['arm_conv_partial_q7.c',['../arm__conv__partial__q7_8c.html',1,'']]], + ['arm_5fconv_5fq15_2ec',['arm_conv_q15.c',['../arm__conv__q15_8c.html',1,'']]], + ['arm_5fconv_5fq31_2ec',['arm_conv_q31.c',['../arm__conv__q31_8c.html',1,'']]], + ['arm_5fconv_5fq7_2ec',['arm_conv_q7.c',['../arm__conv__q7_8c.html',1,'']]], + ['arm_5fconvolution_5fexample_5ff32_2ec',['arm_convolution_example_f32.c',['../_a_r_m_2arm__convolution__example__f32_8c.html',1,'']]], + ['arm_5fcopy_5ff32_2ec',['arm_copy_f32.c',['../arm__copy__f32_8c.html',1,'']]], + ['arm_5fcopy_5fq15_2ec',['arm_copy_q15.c',['../arm__copy__q15_8c.html',1,'']]], + ['arm_5fcopy_5fq31_2ec',['arm_copy_q31.c',['../arm__copy__q31_8c.html',1,'']]], + ['arm_5fcopy_5fq7_2ec',['arm_copy_q7.c',['../arm__copy__q7_8c.html',1,'']]], + ['arm_5fcorrelate_5ff32_2ec',['arm_correlate_f32.c',['../arm__correlate__f32_8c.html',1,'']]], + ['arm_5fcorrelate_5ffast_5fopt_5fq15_2ec',['arm_correlate_fast_opt_q15.c',['../arm__correlate__fast__opt__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5ffast_5fq15_2ec',['arm_correlate_fast_q15.c',['../arm__correlate__fast__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5ffast_5fq31_2ec',['arm_correlate_fast_q31.c',['../arm__correlate__fast__q31_8c.html',1,'']]], + ['arm_5fcorrelate_5fopt_5fq15_2ec',['arm_correlate_opt_q15.c',['../arm__correlate__opt__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5fopt_5fq7_2ec',['arm_correlate_opt_q7.c',['../arm__correlate__opt__q7_8c.html',1,'']]], + ['arm_5fcorrelate_5fq15_2ec',['arm_correlate_q15.c',['../arm__correlate__q15_8c.html',1,'']]], + ['arm_5fcorrelate_5fq31_2ec',['arm_correlate_q31.c',['../arm__correlate__q31_8c.html',1,'']]], + ['arm_5fcorrelate_5fq7_2ec',['arm_correlate_q7.c',['../arm__correlate__q7_8c.html',1,'']]], + ['arm_5fcos_5ff32_2ec',['arm_cos_f32.c',['../arm__cos__f32_8c.html',1,'']]], + ['arm_5fcos_5fq15_2ec',['arm_cos_q15.c',['../arm__cos__q15_8c.html',1,'']]], + ['arm_5fcos_5fq31_2ec',['arm_cos_q31.c',['../arm__cos__q31_8c.html',1,'']]], + ['arm_5fdct4_5ff32_2ec',['arm_dct4_f32.c',['../arm__dct4__f32_8c.html',1,'']]], + ['arm_5fdct4_5finit_5ff32_2ec',['arm_dct4_init_f32.c',['../arm__dct4__init__f32_8c.html',1,'']]], + ['arm_5fdct4_5finit_5fq15_2ec',['arm_dct4_init_q15.c',['../arm__dct4__init__q15_8c.html',1,'']]], + ['arm_5fdct4_5finit_5fq31_2ec',['arm_dct4_init_q31.c',['../arm__dct4__init__q31_8c.html',1,'']]], + ['arm_5fdct4_5fq15_2ec',['arm_dct4_q15.c',['../arm__dct4__q15_8c.html',1,'']]], + ['arm_5fdct4_5fq31_2ec',['arm_dct4_q31.c',['../arm__dct4__q31_8c.html',1,'']]], + ['arm_5fdot_5fprod_5ff32_2ec',['arm_dot_prod_f32.c',['../arm__dot__prod__f32_8c.html',1,'']]], + ['arm_5fdot_5fprod_5fq15_2ec',['arm_dot_prod_q15.c',['../arm__dot__prod__q15_8c.html',1,'']]], + ['arm_5fdot_5fprod_5fq31_2ec',['arm_dot_prod_q31.c',['../arm__dot__prod__q31_8c.html',1,'']]], + ['arm_5fdot_5fprod_5fq7_2ec',['arm_dot_prod_q7.c',['../arm__dot__prod__q7_8c.html',1,'']]], + ['arm_5fdotproduct_5fexample_5ff32_2ec',['arm_dotproduct_example_f32.c',['../_a_r_m_2arm__dotproduct__example__f32_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fdata_2ec',['arm_fft_bin_data.c',['../_a_r_m_2arm__fft__bin__data_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fexample_5ff32_2ec',['arm_fft_bin_example_f32.c',['../_a_r_m_2arm__fft__bin__example__f32_8c.html',1,'']]], + ['arm_5ffill_5ff32_2ec',['arm_fill_f32.c',['../arm__fill__f32_8c.html',1,'']]], + ['arm_5ffill_5fq15_2ec',['arm_fill_q15.c',['../arm__fill__q15_8c.html',1,'']]], + ['arm_5ffill_5fq31_2ec',['arm_fill_q31.c',['../arm__fill__q31_8c.html',1,'']]], + ['arm_5ffill_5fq7_2ec',['arm_fill_q7.c',['../arm__fill__q7_8c.html',1,'']]], + ['arm_5ffir_5fdata_2ec',['arm_fir_data.c',['../arm__fir__data_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5ff32_2ec',['arm_fir_decimate_f32.c',['../arm__fir__decimate__f32_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5ffast_5fq15_2ec',['arm_fir_decimate_fast_q15.c',['../arm__fir__decimate__fast__q15_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5ffast_5fq31_2ec',['arm_fir_decimate_fast_q31.c',['../arm__fir__decimate__fast__q31_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5finit_5ff32_2ec',['arm_fir_decimate_init_f32.c',['../arm__fir__decimate__init__f32_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5finit_5fq15_2ec',['arm_fir_decimate_init_q15.c',['../arm__fir__decimate__init__q15_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5finit_5fq31_2ec',['arm_fir_decimate_init_q31.c',['../arm__fir__decimate__init__q31_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5fq15_2ec',['arm_fir_decimate_q15.c',['../arm__fir__decimate__q15_8c.html',1,'']]], + ['arm_5ffir_5fdecimate_5fq31_2ec',['arm_fir_decimate_q31.c',['../arm__fir__decimate__q31_8c.html',1,'']]], + ['arm_5ffir_5fexample_5ff32_2ec',['arm_fir_example_f32.c',['../arm__fir__example__f32_8c.html',1,'']]], + ['arm_5ffir_5ff32_2ec',['arm_fir_f32.c',['../arm__fir__f32_8c.html',1,'']]], + ['arm_5ffir_5ffast_5fq15_2ec',['arm_fir_fast_q15.c',['../arm__fir__fast__q15_8c.html',1,'']]], + ['arm_5ffir_5ffast_5fq31_2ec',['arm_fir_fast_q31.c',['../arm__fir__fast__q31_8c.html',1,'']]], + ['arm_5ffir_5finit_5ff32_2ec',['arm_fir_init_f32.c',['../arm__fir__init__f32_8c.html',1,'']]], + ['arm_5ffir_5finit_5fq15_2ec',['arm_fir_init_q15.c',['../arm__fir__init__q15_8c.html',1,'']]], + ['arm_5ffir_5finit_5fq31_2ec',['arm_fir_init_q31.c',['../arm__fir__init__q31_8c.html',1,'']]], + ['arm_5ffir_5finit_5fq7_2ec',['arm_fir_init_q7.c',['../arm__fir__init__q7_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5ff32_2ec',['arm_fir_interpolate_f32.c',['../arm__fir__interpolate__f32_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5finit_5ff32_2ec',['arm_fir_interpolate_init_f32.c',['../arm__fir__interpolate__init__f32_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5finit_5fq15_2ec',['arm_fir_interpolate_init_q15.c',['../arm__fir__interpolate__init__q15_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5finit_5fq31_2ec',['arm_fir_interpolate_init_q31.c',['../arm__fir__interpolate__init__q31_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5fq15_2ec',['arm_fir_interpolate_q15.c',['../arm__fir__interpolate__q15_8c.html',1,'']]], + ['arm_5ffir_5finterpolate_5fq31_2ec',['arm_fir_interpolate_q31.c',['../arm__fir__interpolate__q31_8c.html',1,'']]], + ['arm_5ffir_5flattice_5ff32_2ec',['arm_fir_lattice_f32.c',['../arm__fir__lattice__f32_8c.html',1,'']]], + ['arm_5ffir_5flattice_5finit_5ff32_2ec',['arm_fir_lattice_init_f32.c',['../arm__fir__lattice__init__f32_8c.html',1,'']]], + ['arm_5ffir_5flattice_5finit_5fq15_2ec',['arm_fir_lattice_init_q15.c',['../arm__fir__lattice__init__q15_8c.html',1,'']]], + ['arm_5ffir_5flattice_5finit_5fq31_2ec',['arm_fir_lattice_init_q31.c',['../arm__fir__lattice__init__q31_8c.html',1,'']]], + ['arm_5ffir_5flattice_5fq15_2ec',['arm_fir_lattice_q15.c',['../arm__fir__lattice__q15_8c.html',1,'']]], + ['arm_5ffir_5flattice_5fq31_2ec',['arm_fir_lattice_q31.c',['../arm__fir__lattice__q31_8c.html',1,'']]], + ['arm_5ffir_5fq15_2ec',['arm_fir_q15.c',['../arm__fir__q15_8c.html',1,'']]], + ['arm_5ffir_5fq31_2ec',['arm_fir_q31.c',['../arm__fir__q31_8c.html',1,'']]], + ['arm_5ffir_5fq7_2ec',['arm_fir_q7.c',['../arm__fir__q7_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5ff32_2ec',['arm_fir_sparse_f32.c',['../arm__fir__sparse__f32_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5ff32_2ec',['arm_fir_sparse_init_f32.c',['../arm__fir__sparse__init__f32_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5fq15_2ec',['arm_fir_sparse_init_q15.c',['../arm__fir__sparse__init__q15_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5fq31_2ec',['arm_fir_sparse_init_q31.c',['../arm__fir__sparse__init__q31_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5finit_5fq7_2ec',['arm_fir_sparse_init_q7.c',['../arm__fir__sparse__init__q7_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5fq15_2ec',['arm_fir_sparse_q15.c',['../arm__fir__sparse__q15_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5fq31_2ec',['arm_fir_sparse_q31.c',['../arm__fir__sparse__q31_8c.html',1,'']]], + ['arm_5ffir_5fsparse_5fq7_2ec',['arm_fir_sparse_q7.c',['../arm__fir__sparse__q7_8c.html',1,'']]], + ['arm_5ffloat_5fto_5fq15_2ec',['arm_float_to_q15.c',['../arm__float__to__q15_8c.html',1,'']]], + ['arm_5ffloat_5fto_5fq31_2ec',['arm_float_to_q31.c',['../arm__float__to__q31_8c.html',1,'']]], + ['arm_5ffloat_5fto_5fq7_2ec',['arm_float_to_q7.c',['../arm__float__to__q7_8c.html',1,'']]], + ['arm_5fgraphic_5fequalizer_5fdata_2ec',['arm_graphic_equalizer_data.c',['../arm__graphic__equalizer__data_8c.html',1,'']]], + ['arm_5fgraphic_5fequalizer_5fexample_5fq31_2ec',['arm_graphic_equalizer_example_q31.c',['../arm__graphic__equalizer__example__q31_8c.html',1,'']]], + ['arm_5fiir_5flattice_5ff32_2ec',['arm_iir_lattice_f32.c',['../arm__iir__lattice__f32_8c.html',1,'']]], + ['arm_5fiir_5flattice_5finit_5ff32_2ec',['arm_iir_lattice_init_f32.c',['../arm__iir__lattice__init__f32_8c.html',1,'']]], + ['arm_5fiir_5flattice_5finit_5fq15_2ec',['arm_iir_lattice_init_q15.c',['../arm__iir__lattice__init__q15_8c.html',1,'']]], + ['arm_5fiir_5flattice_5finit_5fq31_2ec',['arm_iir_lattice_init_q31.c',['../arm__iir__lattice__init__q31_8c.html',1,'']]], + ['arm_5fiir_5flattice_5fq15_2ec',['arm_iir_lattice_q15.c',['../arm__iir__lattice__q15_8c.html',1,'']]], + ['arm_5fiir_5flattice_5fq31_2ec',['arm_iir_lattice_q31.c',['../arm__iir__lattice__q31_8c.html',1,'']]], + ['arm_5flinear_5finterp_5fdata_2ec',['arm_linear_interp_data.c',['../arm__linear__interp__data_8c.html',1,'']]], + ['arm_5flinear_5finterp_5fexample_5ff32_2ec',['arm_linear_interp_example_f32.c',['../arm__linear__interp__example__f32_8c.html',1,'']]], + ['arm_5flms_5ff32_2ec',['arm_lms_f32.c',['../arm__lms__f32_8c.html',1,'']]], + ['arm_5flms_5finit_5ff32_2ec',['arm_lms_init_f32.c',['../arm__lms__init__f32_8c.html',1,'']]], + ['arm_5flms_5finit_5fq15_2ec',['arm_lms_init_q15.c',['../arm__lms__init__q15_8c.html',1,'']]], + ['arm_5flms_5finit_5fq31_2ec',['arm_lms_init_q31.c',['../arm__lms__init__q31_8c.html',1,'']]], + ['arm_5flms_5fnorm_5ff32_2ec',['arm_lms_norm_f32.c',['../arm__lms__norm__f32_8c.html',1,'']]], + ['arm_5flms_5fnorm_5finit_5ff32_2ec',['arm_lms_norm_init_f32.c',['../arm__lms__norm__init__f32_8c.html',1,'']]], + ['arm_5flms_5fnorm_5finit_5fq15_2ec',['arm_lms_norm_init_q15.c',['../arm__lms__norm__init__q15_8c.html',1,'']]], + ['arm_5flms_5fnorm_5finit_5fq31_2ec',['arm_lms_norm_init_q31.c',['../arm__lms__norm__init__q31_8c.html',1,'']]], + ['arm_5flms_5fnorm_5fq15_2ec',['arm_lms_norm_q15.c',['../arm__lms__norm__q15_8c.html',1,'']]], + ['arm_5flms_5fnorm_5fq31_2ec',['arm_lms_norm_q31.c',['../arm__lms__norm__q31_8c.html',1,'']]], + ['arm_5flms_5fq15_2ec',['arm_lms_q15.c',['../arm__lms__q15_8c.html',1,'']]], + ['arm_5flms_5fq31_2ec',['arm_lms_q31.c',['../arm__lms__q31_8c.html',1,'']]], + ['arm_5fmat_5fadd_5ff32_2ec',['arm_mat_add_f32.c',['../arm__mat__add__f32_8c.html',1,'']]], + ['arm_5fmat_5fadd_5fq15_2ec',['arm_mat_add_q15.c',['../arm__mat__add__q15_8c.html',1,'']]], + ['arm_5fmat_5fadd_5fq31_2ec',['arm_mat_add_q31.c',['../arm__mat__add__q31_8c.html',1,'']]], + ['arm_5fmat_5fcmplx_5fmult_5ff32_2ec',['arm_mat_cmplx_mult_f32.c',['../arm__mat__cmplx__mult__f32_8c.html',1,'']]], + ['arm_5fmat_5fcmplx_5fmult_5fq15_2ec',['arm_mat_cmplx_mult_q15.c',['../arm__mat__cmplx__mult__q15_8c.html',1,'']]], + ['arm_5fmat_5fcmplx_5fmult_5fq31_2ec',['arm_mat_cmplx_mult_q31.c',['../arm__mat__cmplx__mult__q31_8c.html',1,'']]], + ['arm_5fmat_5finit_5ff32_2ec',['arm_mat_init_f32.c',['../arm__mat__init__f32_8c.html',1,'']]], + ['arm_5fmat_5finit_5fq15_2ec',['arm_mat_init_q15.c',['../arm__mat__init__q15_8c.html',1,'']]], + ['arm_5fmat_5finit_5fq31_2ec',['arm_mat_init_q31.c',['../arm__mat__init__q31_8c.html',1,'']]], + ['arm_5fmat_5finverse_5ff32_2ec',['arm_mat_inverse_f32.c',['../arm__mat__inverse__f32_8c.html',1,'']]], + ['arm_5fmat_5finverse_5ff64_2ec',['arm_mat_inverse_f64.c',['../arm__mat__inverse__f64_8c.html',1,'']]], + ['arm_5fmat_5fmult_5ff32_2ec',['arm_mat_mult_f32.c',['../arm__mat__mult__f32_8c.html',1,'']]], + ['arm_5fmat_5fmult_5ffast_5fq15_2ec',['arm_mat_mult_fast_q15.c',['../arm__mat__mult__fast__q15_8c.html',1,'']]], + ['arm_5fmat_5fmult_5ffast_5fq31_2ec',['arm_mat_mult_fast_q31.c',['../arm__mat__mult__fast__q31_8c.html',1,'']]], + ['arm_5fmat_5fmult_5fq15_2ec',['arm_mat_mult_q15.c',['../arm__mat__mult__q15_8c.html',1,'']]], + ['arm_5fmat_5fmult_5fq31_2ec',['arm_mat_mult_q31.c',['../arm__mat__mult__q31_8c.html',1,'']]], + ['arm_5fmat_5fscale_5ff32_2ec',['arm_mat_scale_f32.c',['../arm__mat__scale__f32_8c.html',1,'']]], + ['arm_5fmat_5fscale_5fq15_2ec',['arm_mat_scale_q15.c',['../arm__mat__scale__q15_8c.html',1,'']]], + ['arm_5fmat_5fscale_5fq31_2ec',['arm_mat_scale_q31.c',['../arm__mat__scale__q31_8c.html',1,'']]], + ['arm_5fmat_5fsub_5ff32_2ec',['arm_mat_sub_f32.c',['../arm__mat__sub__f32_8c.html',1,'']]], + ['arm_5fmat_5fsub_5fq15_2ec',['arm_mat_sub_q15.c',['../arm__mat__sub__q15_8c.html',1,'']]], + ['arm_5fmat_5fsub_5fq31_2ec',['arm_mat_sub_q31.c',['../arm__mat__sub__q31_8c.html',1,'']]], + ['arm_5fmat_5ftrans_5ff32_2ec',['arm_mat_trans_f32.c',['../arm__mat__trans__f32_8c.html',1,'']]], + ['arm_5fmat_5ftrans_5fq15_2ec',['arm_mat_trans_q15.c',['../arm__mat__trans__q15_8c.html',1,'']]], + ['arm_5fmat_5ftrans_5fq31_2ec',['arm_mat_trans_q31.c',['../arm__mat__trans__q31_8c.html',1,'']]], + ['arm_5fmath_2eh',['arm_math.h',['../arm__math_8h.html',1,'']]], + ['arm_5fmatrix_5fexample_5ff32_2ec',['arm_matrix_example_f32.c',['../arm__matrix__example__f32_8c.html',1,'']]], + ['arm_5fmax_5ff32_2ec',['arm_max_f32.c',['../arm__max__f32_8c.html',1,'']]], + ['arm_5fmax_5fq15_2ec',['arm_max_q15.c',['../arm__max__q15_8c.html',1,'']]], + ['arm_5fmax_5fq31_2ec',['arm_max_q31.c',['../arm__max__q31_8c.html',1,'']]], + ['arm_5fmax_5fq7_2ec',['arm_max_q7.c',['../arm__max__q7_8c.html',1,'']]], + ['arm_5fmean_5ff32_2ec',['arm_mean_f32.c',['../arm__mean__f32_8c.html',1,'']]], + ['arm_5fmean_5fq15_2ec',['arm_mean_q15.c',['../arm__mean__q15_8c.html',1,'']]], + ['arm_5fmean_5fq31_2ec',['arm_mean_q31.c',['../arm__mean__q31_8c.html',1,'']]], + ['arm_5fmean_5fq7_2ec',['arm_mean_q7.c',['../arm__mean__q7_8c.html',1,'']]], + ['arm_5fmin_5ff32_2ec',['arm_min_f32.c',['../arm__min__f32_8c.html',1,'']]], + ['arm_5fmin_5fq15_2ec',['arm_min_q15.c',['../arm__min__q15_8c.html',1,'']]], + ['arm_5fmin_5fq31_2ec',['arm_min_q31.c',['../arm__min__q31_8c.html',1,'']]], + ['arm_5fmin_5fq7_2ec',['arm_min_q7.c',['../arm__min__q7_8c.html',1,'']]], + ['arm_5fmult_5ff32_2ec',['arm_mult_f32.c',['../arm__mult__f32_8c.html',1,'']]], + ['arm_5fmult_5fq15_2ec',['arm_mult_q15.c',['../arm__mult__q15_8c.html',1,'']]], + ['arm_5fmult_5fq31_2ec',['arm_mult_q31.c',['../arm__mult__q31_8c.html',1,'']]], + ['arm_5fmult_5fq7_2ec',['arm_mult_q7.c',['../arm__mult__q7_8c.html',1,'']]], + ['arm_5fnegate_5ff32_2ec',['arm_negate_f32.c',['../arm__negate__f32_8c.html',1,'']]], + ['arm_5fnegate_5fq15_2ec',['arm_negate_q15.c',['../arm__negate__q15_8c.html',1,'']]], + ['arm_5fnegate_5fq31_2ec',['arm_negate_q31.c',['../arm__negate__q31_8c.html',1,'']]], + ['arm_5fnegate_5fq7_2ec',['arm_negate_q7.c',['../arm__negate__q7_8c.html',1,'']]], + ['arm_5foffset_5ff32_2ec',['arm_offset_f32.c',['../arm__offset__f32_8c.html',1,'']]], + ['arm_5foffset_5fq15_2ec',['arm_offset_q15.c',['../arm__offset__q15_8c.html',1,'']]], + ['arm_5foffset_5fq31_2ec',['arm_offset_q31.c',['../arm__offset__q31_8c.html',1,'']]], + ['arm_5foffset_5fq7_2ec',['arm_offset_q7.c',['../arm__offset__q7_8c.html',1,'']]], + ['arm_5fpid_5finit_5ff32_2ec',['arm_pid_init_f32.c',['../arm__pid__init__f32_8c.html',1,'']]], + ['arm_5fpid_5finit_5fq15_2ec',['arm_pid_init_q15.c',['../arm__pid__init__q15_8c.html',1,'']]], + ['arm_5fpid_5finit_5fq31_2ec',['arm_pid_init_q31.c',['../arm__pid__init__q31_8c.html',1,'']]], + ['arm_5fpid_5freset_5ff32_2ec',['arm_pid_reset_f32.c',['../arm__pid__reset__f32_8c.html',1,'']]], + ['arm_5fpid_5freset_5fq15_2ec',['arm_pid_reset_q15.c',['../arm__pid__reset__q15_8c.html',1,'']]], + ['arm_5fpid_5freset_5fq31_2ec',['arm_pid_reset_q31.c',['../arm__pid__reset__q31_8c.html',1,'']]], + ['arm_5fpower_5ff32_2ec',['arm_power_f32.c',['../arm__power__f32_8c.html',1,'']]], + ['arm_5fpower_5fq15_2ec',['arm_power_q15.c',['../arm__power__q15_8c.html',1,'']]], + ['arm_5fpower_5fq31_2ec',['arm_power_q31.c',['../arm__power__q31_8c.html',1,'']]], + ['arm_5fpower_5fq7_2ec',['arm_power_q7.c',['../arm__power__q7_8c.html',1,'']]], + ['arm_5fq15_5fto_5ffloat_2ec',['arm_q15_to_float.c',['../arm__q15__to__float_8c.html',1,'']]], + ['arm_5fq15_5fto_5fq31_2ec',['arm_q15_to_q31.c',['../arm__q15__to__q31_8c.html',1,'']]], + ['arm_5fq15_5fto_5fq7_2ec',['arm_q15_to_q7.c',['../arm__q15__to__q7_8c.html',1,'']]], + ['arm_5fq31_5fto_5ffloat_2ec',['arm_q31_to_float.c',['../arm__q31__to__float_8c.html',1,'']]], + ['arm_5fq31_5fto_5fq15_2ec',['arm_q31_to_q15.c',['../arm__q31__to__q15_8c.html',1,'']]], + ['arm_5fq31_5fto_5fq7_2ec',['arm_q31_to_q7.c',['../arm__q31__to__q7_8c.html',1,'']]], + ['arm_5fq7_5fto_5ffloat_2ec',['arm_q7_to_float.c',['../arm__q7__to__float_8c.html',1,'']]], + ['arm_5fq7_5fto_5fq15_2ec',['arm_q7_to_q15.c',['../arm__q7__to__q15_8c.html',1,'']]], + ['arm_5fq7_5fto_5fq31_2ec',['arm_q7_to_q31.c',['../arm__q7__to__q31_8c.html',1,'']]], + ['arm_5frfft_5ff32_2ec',['arm_rfft_f32.c',['../arm__rfft__f32_8c.html',1,'']]], + ['arm_5frfft_5ffast_5ff32_2ec',['arm_rfft_fast_f32.c',['../arm__rfft__fast__f32_8c.html',1,'']]], + ['arm_5frfft_5ffast_5finit_5ff32_2ec',['arm_rfft_fast_init_f32.c',['../arm__rfft__fast__init__f32_8c.html',1,'']]], + ['arm_5frfft_5finit_5ff32_2ec',['arm_rfft_init_f32.c',['../arm__rfft__init__f32_8c.html',1,'']]], + ['arm_5frfft_5finit_5fq15_2ec',['arm_rfft_init_q15.c',['../arm__rfft__init__q15_8c.html',1,'']]], + ['arm_5frfft_5finit_5fq31_2ec',['arm_rfft_init_q31.c',['../arm__rfft__init__q31_8c.html',1,'']]], + ['arm_5frfft_5fq15_2ec',['arm_rfft_q15.c',['../arm__rfft__q15_8c.html',1,'']]], + ['arm_5frfft_5fq31_2ec',['arm_rfft_q31.c',['../arm__rfft__q31_8c.html',1,'']]], + ['arm_5frms_5ff32_2ec',['arm_rms_f32.c',['../arm__rms__f32_8c.html',1,'']]], + ['arm_5frms_5fq15_2ec',['arm_rms_q15.c',['../arm__rms__q15_8c.html',1,'']]], + ['arm_5frms_5fq31_2ec',['arm_rms_q31.c',['../arm__rms__q31_8c.html',1,'']]], + ['arm_5fscale_5ff32_2ec',['arm_scale_f32.c',['../arm__scale__f32_8c.html',1,'']]], + ['arm_5fscale_5fq15_2ec',['arm_scale_q15.c',['../arm__scale__q15_8c.html',1,'']]], + ['arm_5fscale_5fq31_2ec',['arm_scale_q31.c',['../arm__scale__q31_8c.html',1,'']]], + ['arm_5fscale_5fq7_2ec',['arm_scale_q7.c',['../arm__scale__q7_8c.html',1,'']]], + ['arm_5fshift_5fq15_2ec',['arm_shift_q15.c',['../arm__shift__q15_8c.html',1,'']]], + ['arm_5fshift_5fq31_2ec',['arm_shift_q31.c',['../arm__shift__q31_8c.html',1,'']]], + ['arm_5fshift_5fq7_2ec',['arm_shift_q7.c',['../arm__shift__q7_8c.html',1,'']]], + ['arm_5fsignal_5fconverge_5fdata_2ec',['arm_signal_converge_data.c',['../arm__signal__converge__data_8c.html',1,'']]], + ['arm_5fsignal_5fconverge_5fexample_5ff32_2ec',['arm_signal_converge_example_f32.c',['../arm__signal__converge__example__f32_8c.html',1,'']]], + ['arm_5fsin_5fcos_5fexample_5ff32_2ec',['arm_sin_cos_example_f32.c',['../arm__sin__cos__example__f32_8c.html',1,'']]], + ['arm_5fsin_5fcos_5ff32_2ec',['arm_sin_cos_f32.c',['../arm__sin__cos__f32_8c.html',1,'']]], + ['arm_5fsin_5fcos_5fq31_2ec',['arm_sin_cos_q31.c',['../arm__sin__cos__q31_8c.html',1,'']]], + ['arm_5fsin_5ff32_2ec',['arm_sin_f32.c',['../arm__sin__f32_8c.html',1,'']]], + ['arm_5fsin_5fq15_2ec',['arm_sin_q15.c',['../arm__sin__q15_8c.html',1,'']]], + ['arm_5fsin_5fq31_2ec',['arm_sin_q31.c',['../arm__sin__q31_8c.html',1,'']]], + ['arm_5fsqrt_5fq15_2ec',['arm_sqrt_q15.c',['../arm__sqrt__q15_8c.html',1,'']]], + ['arm_5fsqrt_5fq31_2ec',['arm_sqrt_q31.c',['../arm__sqrt__q31_8c.html',1,'']]], + ['arm_5fstd_5ff32_2ec',['arm_std_f32.c',['../arm__std__f32_8c.html',1,'']]], + ['arm_5fstd_5fq15_2ec',['arm_std_q15.c',['../arm__std__q15_8c.html',1,'']]], + ['arm_5fstd_5fq31_2ec',['arm_std_q31.c',['../arm__std__q31_8c.html',1,'']]], + ['arm_5fsub_5ff32_2ec',['arm_sub_f32.c',['../arm__sub__f32_8c.html',1,'']]], + ['arm_5fsub_5fq15_2ec',['arm_sub_q15.c',['../arm__sub__q15_8c.html',1,'']]], + ['arm_5fsub_5fq31_2ec',['arm_sub_q31.c',['../arm__sub__q31_8c.html',1,'']]], + ['arm_5fsub_5fq7_2ec',['arm_sub_q7.c',['../arm__sub__q7_8c.html',1,'']]], + ['arm_5fvar_5ff32_2ec',['arm_var_f32.c',['../arm__var__f32_8c.html',1,'']]], + ['arm_5fvar_5fq15_2ec',['arm_var_q15.c',['../arm__var__q15_8c.html',1,'']]], + ['arm_5fvar_5fq31_2ec',['arm_var_q31.c',['../arm__var__q31_8c.html',1,'']]], + ['arm_5fvariance_5fexample_5ff32_2ec',['arm_variance_example_f32.c',['../arm__variance__example__f32_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__fir__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__matrix__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__convolution__example_2_g_c_c_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2ec',['math_helper.c',['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__convolution__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__convolution__example_2_g_c_c_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__fir__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__matrix__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['math_5fhelper_2eh',['math_helper.h',['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__fir__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__variance__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['rte_5fcomponents_2eh',['RTE_Components.h',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_r_t_e___components_8h.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm0_2ec',['system_ARMCM0.c',['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm3_2ec',['system_ARMCM3.c',['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm4_2ec',['system_ARMCM4.c',['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]], + ['system_5farmcm7_2ec',['system_ARMCM7.c',['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/files_63.html b/CMSIS/Documentation/DSP/html/search/files_63.html new file mode 100644 index 0000000..6611a5b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/files_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/files_63.js b/CMSIS/Documentation/DSP/html/search/files_63.js new file mode 100644 index 0000000..1cc98ab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/files_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['change_20log_2etxt',['Change Log.txt',['../_change_01_log_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/files_67.html b/CMSIS/Documentation/DSP/html/search/files_67.html new file mode 100644 index 0000000..d5df283 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/files_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/files_67.js b/CMSIS/Documentation/DSP/html/search/files_67.js new file mode 100644 index 0000000..264c668 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/files_67.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['arm_5fclass_5fmarks_5fexample_5ff32_2ec',['arm_class_marks_example_f32.c',['../_g_c_c_2arm__class__marks__example__f32_8c.html',1,'']]], + ['arm_5fconvolution_5fexample_5ff32_2ec',['arm_convolution_example_f32.c',['../_g_c_c_2arm__convolution__example__f32_8c.html',1,'']]], + ['arm_5fdotproduct_5fexample_5ff32_2ec',['arm_dotproduct_example_f32.c',['../_g_c_c_2arm__dotproduct__example__f32_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fdata_2ec',['arm_fft_bin_data.c',['../_g_c_c_2arm__fft__bin__data_8c.html',1,'']]], + ['arm_5ffft_5fbin_5fexample_5ff32_2ec',['arm_fft_bin_example_f32.c',['../_g_c_c_2arm__fft__bin__example__f32_8c.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/functions_61.html b/CMSIS/Documentation/DSP/html/search/functions_61.html new file mode 100644 index 0000000..7f39533 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/functions_61.js b/CMSIS/Documentation/DSP/html/search/functions_61.js new file mode 100644 index 0000000..af8bd32 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_61.js @@ -0,0 +1,343 @@ +var searchData= +[ + ['arm_5fabs_5ff32',['arm_abs_f32',['../group___basic_abs.html#ga421b6275f9d35f50286c0ff3beceff02',1,'arm_abs_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_abs_f32.c'],['../group___basic_abs.html#ga421b6275f9d35f50286c0ff3beceff02',1,'arm_abs_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_abs_f32.c']]], + ['arm_5fabs_5fq15',['arm_abs_q15',['../group___basic_abs.html#ga39f92964c9b649ba252e26ebe7b95594',1,'arm_abs_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_abs_q15.c'],['../group___basic_abs.html#ga39f92964c9b649ba252e26ebe7b95594',1,'arm_abs_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_abs_q15.c']]], + ['arm_5fabs_5fq31',['arm_abs_q31',['../group___basic_abs.html#ga59eafcdcdb52da60d37f20aec6ff4577',1,'arm_abs_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_abs_q31.c'],['../group___basic_abs.html#ga59eafcdcdb52da60d37f20aec6ff4577',1,'arm_abs_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_abs_q31.c']]], + ['arm_5fabs_5fq7',['arm_abs_q7',['../group___basic_abs.html#gadc30985e33fbf96802a5a7954dece3b1',1,'arm_abs_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_abs_q7.c'],['../group___basic_abs.html#gadc30985e33fbf96802a5a7954dece3b1',1,'arm_abs_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_abs_q7.c']]], + ['arm_5fadd_5ff32',['arm_add_f32',['../group___basic_add.html#ga6a904a547413b10565dd1d251c6bafbd',1,'arm_add_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_add_f32.c'],['../group___basic_add.html#ga6a904a547413b10565dd1d251c6bafbd',1,'arm_add_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_add_f32.c']]], + ['arm_5fadd_5fq15',['arm_add_q15',['../group___basic_add.html#gabb51285a41f511670bbff62fc0e1bf62',1,'arm_add_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_add_q15.c'],['../group___basic_add.html#gabb51285a41f511670bbff62fc0e1bf62',1,'arm_add_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_add_q15.c']]], + ['arm_5fadd_5fq31',['arm_add_q31',['../group___basic_add.html#ga24d6c3f7f8b9fae4847c0c3f26a39a3b',1,'arm_add_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_add_q31.c'],['../group___basic_add.html#ga24d6c3f7f8b9fae4847c0c3f26a39a3b',1,'arm_add_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_add_q31.c']]], + ['arm_5fadd_5fq7',['arm_add_q7',['../group___basic_add.html#gaed633f415a7840a66861debca2dfb96b',1,'arm_add_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_add_q7.c'],['../group___basic_add.html#gaed633f415a7840a66861debca2dfb96b',1,'arm_add_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_add_q7.c']]], + ['arm_5fapply_5fguard_5fbits',['arm_apply_guard_bits',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a13580a6ff7a8a68146de727bdf8fba88',1,'arm_apply_guard_bits(float32_t *pIn, uint32_t numSamples, uint32_t guard_bits): math_helper.c']]], + ['arm_5fbilinear_5finterp_5ff32',['arm_bilinear_interp_f32',['../group___bilinear_interpolate.html#gab49a4c0f64854903d996d01ba38f711a',1,'arm_math.h']]], + ['arm_5fbilinear_5finterp_5fq15',['arm_bilinear_interp_q15',['../group___bilinear_interpolate.html#gaa8dffbc2a01bb7accf231384498ec85e',1,'arm_math.h']]], + ['arm_5fbilinear_5finterp_5fq31',['arm_bilinear_interp_q31',['../group___bilinear_interpolate.html#ga202a033c8a2ad3678b136f93153b6d13',1,'arm_math.h']]], + ['arm_5fbilinear_5finterp_5fq7',['arm_bilinear_interp_q7',['../group___bilinear_interpolate.html#gade8db9706a3ae9ad03b2750a239d2ee6',1,'arm_math.h']]], + ['arm_5fbiquad_5fcas_5fdf1_5f32x64_5finit_5fq31',['arm_biquad_cas_df1_32x64_init_q31',['../group___biquad_cascade_d_f1__32x64.html#ga44900cecb8083afcaabf905ffcd656bb',1,'arm_biquad_cas_df1_32x64_init_q31(arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift): arm_biquad_cascade_df1_32x64_init_q31.c'],['../group___biquad_cascade_d_f1__32x64.html#ga44900cecb8083afcaabf905ffcd656bb',1,'arm_biquad_cas_df1_32x64_init_q31(arm_biquad_cas_df1_32x64_ins_q31 *S, uint8_t numStages, q31_t *pCoeffs, q63_t *pState, uint8_t postShift): arm_biquad_cascade_df1_32x64_init_q31.c']]], + ['arm_5fbiquad_5fcas_5fdf1_5f32x64_5fq31',['arm_biquad_cas_df1_32x64_q31',['../group___biquad_cascade_d_f1__32x64.html#ga953a83e69685de6575cff37feb358a93',1,'arm_biquad_cas_df1_32x64_q31(const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_32x64_q31.c'],['../group___biquad_cascade_d_f1__32x64.html#ga953a83e69685de6575cff37feb358a93',1,'arm_biquad_cas_df1_32x64_q31(const arm_biquad_cas_df1_32x64_ins_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_32x64_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ff32',['arm_biquad_cascade_df1_f32',['../group___biquad_cascade_d_f1.html#gaa0dbe330d763e3c1d8030b3ef12d5bdc',1,'arm_biquad_cascade_df1_f32(const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_f32.c'],['../group___biquad_cascade_d_f1.html#gaa0dbe330d763e3c1d8030b3ef12d5bdc',1,'arm_biquad_cascade_df1_f32(const arm_biquad_casd_df1_inst_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq15',['arm_biquad_cascade_df1_fast_q15',['../group___biquad_cascade_d_f1.html#gaffb9792c0220882efd4c58f3c6a05fd7',1,'arm_biquad_cascade_df1_fast_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q15.c'],['../group___biquad_cascade_d_f1.html#gaffb9792c0220882efd4c58f3c6a05fd7',1,'arm_biquad_cascade_df1_fast_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q15.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5ffast_5fq31',['arm_biquad_cascade_df1_fast_q31',['../group___biquad_cascade_d_f1.html#ga456390f5e448afad3a38bed7d6e380e3',1,'arm_biquad_cascade_df1_fast_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q31.c'],['../group___biquad_cascade_d_f1.html#ga456390f5e448afad3a38bed7d6e380e3',1,'arm_biquad_cascade_df1_fast_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_fast_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5ff32',['arm_biquad_cascade_df1_init_f32',['../group___biquad_cascade_d_f1.html#ga8e73b69a788e681a61bccc8959d823c5',1,'arm_biquad_cascade_df1_init_f32(arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df1_init_f32.c'],['../group___biquad_cascade_d_f1.html#ga8e73b69a788e681a61bccc8959d823c5',1,'arm_biquad_cascade_df1_init_f32(arm_biquad_casd_df1_inst_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df1_init_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq15',['arm_biquad_cascade_df1_init_q15',['../group___biquad_cascade_d_f1.html#gad54c724132f6d742a444eb6df0e9c731',1,'arm_biquad_cascade_df1_init_q15(arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q15.c'],['../group___biquad_cascade_d_f1.html#gad54c724132f6d742a444eb6df0e9c731',1,'arm_biquad_cascade_df1_init_q15(arm_biquad_casd_df1_inst_q15 *S, uint8_t numStages, q15_t *pCoeffs, q15_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q15.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5finit_5fq31',['arm_biquad_cascade_df1_init_q31',['../group___biquad_cascade_d_f1.html#gaf42a44f9b16d61e636418c83eefe577b',1,'arm_biquad_cascade_df1_init_q31(arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q31.c'],['../group___biquad_cascade_d_f1.html#gaf42a44f9b16d61e636418c83eefe577b',1,'arm_biquad_cascade_df1_init_q31(arm_biquad_casd_df1_inst_q31 *S, uint8_t numStages, q31_t *pCoeffs, q31_t *pState, int8_t postShift): arm_biquad_cascade_df1_init_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq15',['arm_biquad_cascade_df1_q15',['../group___biquad_cascade_d_f1.html#gadd66a0aefdc645031d607b0a5b37a942',1,'arm_biquad_cascade_df1_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q15.c'],['../group___biquad_cascade_d_f1.html#gadd66a0aefdc645031d607b0a5b37a942',1,'arm_biquad_cascade_df1_q15(const arm_biquad_casd_df1_inst_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q15.c']]], + ['arm_5fbiquad_5fcascade_5fdf1_5fq31',['arm_biquad_cascade_df1_q31',['../group___biquad_cascade_d_f1.html#ga27b0c54da702713976e5202d20b4473f',1,'arm_biquad_cascade_df1_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q31.c'],['../group___biquad_cascade_d_f1.html#ga27b0c54da702713976e5202d20b4473f',1,'arm_biquad_cascade_df1_q31(const arm_biquad_casd_df1_inst_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_biquad_cascade_df1_q31.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff32',['arm_biquad_cascade_df2T_f32',['../group___biquad_cascade_d_f2_t.html#ga114f373fbc16a314e9f293c7c7649c7f',1,'arm_biquad_cascade_df2T_f32(const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f32.c'],['../group___biquad_cascade_d_f2_t.html#ga114f373fbc16a314e9f293c7c7649c7f',1,'arm_biquad_cascade_df2T_f32(const arm_biquad_cascade_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5ff64',['arm_biquad_cascade_df2T_f64',['../group___biquad_cascade_d_f2_t.html#gaa8735dda5f3f36d0936283794c2aa771',1,'arm_biquad_cascade_df2T_f64(const arm_biquad_cascade_df2T_instance_f64 *S, float64_t *pSrc, float64_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f64.c'],['../group___biquad_cascade_d_f2_t.html#gaa8735dda5f3f36d0936283794c2aa771',1,'arm_biquad_cascade_df2T_f64(const arm_biquad_cascade_df2T_instance_f64 *S, float64_t *pSrc, float64_t *pDst, uint32_t blockSize): arm_biquad_cascade_df2T_f64.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff32',['arm_biquad_cascade_df2T_init_f32',['../group___biquad_cascade_d_f2_t.html#ga70eaddf317a4a8bde6bd6a97df67fedd',1,'arm_biquad_cascade_df2T_init_f32(arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df2T_init_f32.c'],['../group___biquad_cascade_d_f2_t.html#ga70eaddf317a4a8bde6bd6a97df67fedd',1,'arm_biquad_cascade_df2T_init_f32(arm_biquad_cascade_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_df2T_init_f32.c']]], + ['arm_5fbiquad_5fcascade_5fdf2t_5finit_5ff64',['arm_biquad_cascade_df2T_init_f64',['../group___biquad_cascade_d_f2_t.html#ga12dc5d8e8892806ad70e79ca2ff9f86e',1,'arm_biquad_cascade_df2T_init_f64(arm_biquad_cascade_df2T_instance_f64 *S, uint8_t numStages, float64_t *pCoeffs, float64_t *pState): arm_biquad_cascade_df2T_init_f64.c'],['../group___biquad_cascade_d_f2_t.html#ga12dc5d8e8892806ad70e79ca2ff9f86e',1,'arm_biquad_cascade_df2T_init_f64(arm_biquad_cascade_df2T_instance_f64 *S, uint8_t numStages, float64_t *pCoeffs, float64_t *pState): arm_biquad_cascade_df2T_init_f64.c']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5ff32',['arm_biquad_cascade_stereo_df2T_f32',['../group___biquad_cascade_d_f2_t.html#gac75de449c3e4f733477d81bd0ada5eec',1,'arm_biquad_cascade_stereo_df2T_f32(const arm_biquad_cascade_stereo_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_stereo_df2T_f32.c'],['../group___biquad_cascade_d_f2_t.html#gac75de449c3e4f733477d81bd0ada5eec',1,'arm_biquad_cascade_stereo_df2T_f32(const arm_biquad_cascade_stereo_df2T_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_biquad_cascade_stereo_df2T_f32.c']]], + ['arm_5fbiquad_5fcascade_5fstereo_5fdf2t_5finit_5ff32',['arm_biquad_cascade_stereo_df2T_init_f32',['../group___biquad_cascade_d_f2_t.html#ga405197c89fe4d34003efd23786296425',1,'arm_biquad_cascade_stereo_df2T_init_f32(arm_biquad_cascade_stereo_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_stereo_df2T_init_f32.c'],['../group___biquad_cascade_d_f2_t.html#ga405197c89fe4d34003efd23786296425',1,'arm_biquad_cascade_stereo_df2T_init_f32(arm_biquad_cascade_stereo_df2T_instance_f32 *S, uint8_t numStages, float32_t *pCoeffs, float32_t *pState): arm_biquad_cascade_stereo_df2T_init_f32.c']]], + ['arm_5fbitreversal_5f16',['arm_bitreversal_16',['../arm__cfft__q15_8c.html#a773957c278f4d9e728711f27e8a6e278',1,'arm_cfft_q15.c']]], + ['arm_5fbitreversal_5f32',['arm_bitreversal_32',['../arm__cfft__f32_8c.html#ac8e7ebe1cb131a5b0f55d0464640591f',1,'arm_bitreversal_32(uint32_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable): arm_cfft_f32.c'],['../arm__cfft__q31_8c.html#ac8e7ebe1cb131a5b0f55d0464640591f',1,'arm_bitreversal_32(uint32_t *pSrc, const uint16_t bitRevLen, const uint16_t *pBitRevTable): arm_cfft_q31.c']]], + ['arm_5fbitreversal_5ff32',['arm_bitreversal_f32',['../arm__bitreversal_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix2__f32_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix4__f32_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__rfft__f32_8c.html#a3d4062fdfa6aaa3f51f41cab868e508b',1,'arm_bitreversal_f32(float32_t *pSrc, uint16_t fftSize, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c']]], + ['arm_5fbitreversal_5fq15',['arm_bitreversal_q15',['../arm__bitreversal_8c.html#a12a07b49948c354172ae07358309a4a5',1,'arm_bitreversal_q15(q15_t *pSrc16, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix2__q15_8c.html#a73f48eaea9297605705ae25d3405343e',1,'arm_bitreversal_q15(q15_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix4__q15_8c.html#a73f48eaea9297605705ae25d3405343e',1,'arm_bitreversal_q15(q15_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c']]], + ['arm_5fbitreversal_5fq31',['arm_bitreversal_q31',['../arm__bitreversal_8c.html#a27618705158b5c42db5fb0a381f8efc1',1,'arm_bitreversal_q31(q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTable): arm_bitreversal.c'],['../arm__cfft__radix2__q31_8c.html#a3fab577d25c3a517973c8c214f66f268',1,'arm_bitreversal_q31(q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c'],['../arm__cfft__radix4__q31_8c.html#a3fab577d25c3a517973c8c214f66f268',1,'arm_bitreversal_q31(q31_t *pSrc, uint32_t fftLen, uint16_t bitRevFactor, uint16_t *pBitRevTab): arm_bitreversal.c']]], + ['arm_5fcalc_5f2pow',['arm_calc_2pow',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#ace1e1f7b72573d1934782ec999a04f99',1,'arm_calc_2pow(uint32_t numShifts): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a7c94faac575a175e824d5f9879c97c68',1,'arm_calc_2pow(uint32_t guard_bits): math_helper.c']]], + ['arm_5fcalc_5fguard_5fbits',['arm_calc_guard_bits',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a60ff6e0b31a5e9105c7280797e457742',1,'arm_calc_guard_bits(uint32_t num_adds): math_helper.c']]], + ['arm_5fcfft_5ff32',['arm_cfft_f32',['../group___complex_f_f_t.html#gade0f9c4ff157b6b9c72a1eafd86ebf80',1,'arm_cfft_f32(const arm_cfft_instance_f32 *S, float32_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_f32.c'],['../group___complex_f_f_t.html#gade0f9c4ff157b6b9c72a1eafd86ebf80',1,'arm_cfft_f32(const arm_cfft_instance_f32 *S, float32_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_f32.c']]], + ['arm_5fcfft_5fq15',['arm_cfft_q15',['../group___complex_f_f_t.html#ga68cdacd2267a2967955e40e6b7ec1229',1,'arm_cfft_q15(const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q15.c'],['../group___complex_f_f_t.html#ga68cdacd2267a2967955e40e6b7ec1229',1,'arm_cfft_q15(const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q15.c']]], + ['arm_5fcfft_5fq31',['arm_cfft_q31',['../group___complex_f_f_t.html#ga5a0008bd997ab6e2e299ef2fb272fb4b',1,'arm_cfft_q31(const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q31.c'],['../group___complex_f_f_t.html#ga5a0008bd997ab6e2e299ef2fb272fb4b',1,'arm_cfft_q31(const arm_cfft_instance_q31 *S, q31_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_q31.c']]], + ['arm_5fcfft_5fradix2_5ff32',['arm_cfft_radix2_f32',['../group___complex_f_f_t.html#ga9fadd650b802f612ae558ddaab789a6d',1,'arm_cfft_radix2_f32(const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc): arm_cfft_radix2_f32.c'],['../group___complex_f_f_t.html#ga9fadd650b802f612ae558ddaab789a6d',1,'arm_cfft_radix2_f32(const arm_cfft_radix2_instance_f32 *S, float32_t *pSrc): arm_cfft_radix2_f32.c']]], + ['arm_5fcfft_5fradix2_5finit_5ff32',['arm_cfft_radix2_init_f32',['../group___complex_f_f_t.html#gac9565e6bc7229577ecf5e090313cafd7',1,'arm_cfft_radix2_init_f32(arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_f32.c'],['../group___complex_f_f_t.html#gac9565e6bc7229577ecf5e090313cafd7',1,'arm_cfft_radix2_init_f32(arm_cfft_radix2_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_f32.c']]], + ['arm_5fcfft_5fradix2_5finit_5fq15',['arm_cfft_radix2_init_q15',['../group___complex_f_f_t.html#ga5c5b2127b3c4ea2d03692127f8543858',1,'arm_cfft_radix2_init_q15(arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q15.c'],['../group___complex_f_f_t.html#ga5c5b2127b3c4ea2d03692127f8543858',1,'arm_cfft_radix2_init_q15(arm_cfft_radix2_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q15.c']]], + ['arm_5fcfft_5fradix2_5finit_5fq31',['arm_cfft_radix2_init_q31',['../group___complex_f_f_t.html#gabec9611e77382f31e152668bf6b4b638',1,'arm_cfft_radix2_init_q31(arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q31.c'],['../group___complex_f_f_t.html#gabec9611e77382f31e152668bf6b4b638',1,'arm_cfft_radix2_init_q31(arm_cfft_radix2_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix2_init_q31.c']]], + ['arm_5fcfft_5fradix2_5fq15',['arm_cfft_radix2_q15',['../group___complex_f_f_t.html#ga55b424341dc3efd3fa0bcaaff4bdbf40',1,'arm_cfft_radix2_q15(const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc): arm_cfft_radix2_q15.c'],['../group___complex_f_f_t.html#ga55b424341dc3efd3fa0bcaaff4bdbf40',1,'arm_cfft_radix2_q15(const arm_cfft_radix2_instance_q15 *S, q15_t *pSrc): arm_cfft_radix2_q15.c']]], + ['arm_5fcfft_5fradix2_5fq31',['arm_cfft_radix2_q31',['../group___complex_f_f_t.html#ga6321f703ec87a274aedaab33d3e766b4',1,'arm_cfft_radix2_q31(const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc): arm_cfft_radix2_q31.c'],['../group___complex_f_f_t.html#ga6321f703ec87a274aedaab33d3e766b4',1,'arm_cfft_radix2_q31(const arm_cfft_radix2_instance_q31 *S, q31_t *pSrc): arm_cfft_radix2_q31.c']]], + ['arm_5fcfft_5fradix4_5ff32',['arm_cfft_radix4_f32',['../group___complex_f_f_t.html#ga521f670cd9c571bc61aff9bec89f4c26',1,'arm_cfft_radix4_f32(const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc): arm_cfft_radix4_f32.c'],['../group___complex_f_f_t.html#ga521f670cd9c571bc61aff9bec89f4c26',1,'arm_cfft_radix4_f32(const arm_cfft_radix4_instance_f32 *S, float32_t *pSrc): arm_cfft_radix4_f32.c']]], + ['arm_5fcfft_5fradix4_5finit_5ff32',['arm_cfft_radix4_init_f32',['../group___complex_f_f_t.html#gaf336459f684f0b17bfae539ef1b1b78a',1,'arm_cfft_radix4_init_f32(arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_f32.c'],['../group___complex_f_f_t.html#gaf336459f684f0b17bfae539ef1b1b78a',1,'arm_cfft_radix4_init_f32(arm_cfft_radix4_instance_f32 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_f32.c']]], + ['arm_5fcfft_5fradix4_5finit_5fq15',['arm_cfft_radix4_init_q15',['../group___complex_f_f_t.html#ga0c2acfda3126c452e75b81669e8ad9ef',1,'arm_cfft_radix4_init_q15(arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q15.c'],['../group___complex_f_f_t.html#ga0c2acfda3126c452e75b81669e8ad9ef',1,'arm_cfft_radix4_init_q15(arm_cfft_radix4_instance_q15 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q15.c']]], + ['arm_5fcfft_5fradix4_5finit_5fq31',['arm_cfft_radix4_init_q31',['../group___complex_f_f_t.html#gad5caaafeec900c8ff72321c01bbd462c',1,'arm_cfft_radix4_init_q31(arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q31.c'],['../group___complex_f_f_t.html#gad5caaafeec900c8ff72321c01bbd462c',1,'arm_cfft_radix4_init_q31(arm_cfft_radix4_instance_q31 *S, uint16_t fftLen, uint8_t ifftFlag, uint8_t bitReverseFlag): arm_cfft_radix4_init_q31.c']]], + ['arm_5fcfft_5fradix4_5fq15',['arm_cfft_radix4_q15',['../group___complex_f_f_t.html#ga8d66cdac41b8bf6cefdb895456eee84a',1,'arm_cfft_radix4_q15(const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc): arm_cfft_radix4_q15.c'],['../group___complex_f_f_t.html#ga8d66cdac41b8bf6cefdb895456eee84a',1,'arm_cfft_radix4_q15(const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc): arm_cfft_radix4_q15.c']]], + ['arm_5fcfft_5fradix4_5fq31',['arm_cfft_radix4_q31',['../group___complex_f_f_t.html#gafde3ee1f58cf393b45a9073174fff548',1,'arm_cfft_radix4_q31(const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc): arm_cfft_radix4_q31.c'],['../group___complex_f_f_t.html#gafde3ee1f58cf393b45a9073174fff548',1,'arm_cfft_radix4_q31(const arm_cfft_radix4_instance_q31 *S, q31_t *pSrc): arm_cfft_radix4_q31.c']]], + ['arm_5fcfft_5fradix4by2_5finverse_5fq15',['arm_cfft_radix4by2_inverse_q15',['../arm__cfft__q15_8c.html#abe669acc8db57d1fb9b1e2bba30f2224',1,'arm_cfft_q15.c']]], + ['arm_5fcfft_5fradix4by2_5finverse_5fq31',['arm_cfft_radix4by2_inverse_q31',['../arm__cfft__q31_8c.html#a3f3ae10bc2057cc1360abfa25f224c8c',1,'arm_cfft_q31.c']]], + ['arm_5fcfft_5fradix4by2_5fq15',['arm_cfft_radix4by2_q15',['../arm__cfft__q15_8c.html#af1d4a751153857c173511e0c77ab4fa9',1,'arm_cfft_q15.c']]], + ['arm_5fcfft_5fradix4by2_5fq31',['arm_cfft_radix4by2_q31',['../arm__cfft__q31_8c.html#af6df8bf714c30d44e6b871ea87d22b30',1,'arm_cfft_q31.c']]], + ['arm_5fcfft_5fradix8by2_5ff32',['arm_cfft_radix8by2_f32',['../arm__cfft__f32_8c.html#ae99e2b173033e9910058869bdf0619d9',1,'arm_cfft_f32.c']]], + ['arm_5fcfft_5fradix8by4_5ff32',['arm_cfft_radix8by4_f32',['../arm__cfft__f32_8c.html#a4bb346f59bca06cebe0defc8e15b69a6',1,'arm_cfft_f32.c']]], + ['arm_5fcircularread_5ff32',['arm_circularRead_f32',['../arm__math_8h.html#ae469fac5e1df35f8bcf1b3d7c3136484',1,'arm_math.h']]], + ['arm_5fcircularread_5fq15',['arm_circularRead_q15',['../arm__math_8h.html#ad5fb134f83f2c802261f172e3dceb131',1,'arm_math.h']]], + ['arm_5fcircularread_5fq7',['arm_circularRead_q7',['../arm__math_8h.html#a30aa80ea20abe71f3afa99f2f0391ed5',1,'arm_math.h']]], + ['arm_5fcircularwrite_5ff32',['arm_circularWrite_f32',['../arm__math_8h.html#a6ff56c0896ce00712ba8f2fcf72cacd3',1,'arm_math.h']]], + ['arm_5fcircularwrite_5fq15',['arm_circularWrite_q15',['../arm__math_8h.html#a3ba2d215477e692def7fda46dda883ed',1,'arm_math.h']]], + ['arm_5fcircularwrite_5fq7',['arm_circularWrite_q7',['../arm__math_8h.html#addba85b1f7fbd472fd00ddd9ce43aea8',1,'arm_math.h']]], + ['arm_5fclarke_5ff32',['arm_clarke_f32',['../group__clarke.html#ga2b4ebec76215e1277c970c269ffdbd76',1,'arm_math.h']]], + ['arm_5fclarke_5fq31',['arm_clarke_q31',['../group__clarke.html#ga7fd106ca8d346a2a472842e0656014c1',1,'arm_math.h']]], + ['arm_5fclip_5ff32',['arm_clip_f32',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#ab9768d92bb94894d8294047bdf76a16a',1,'arm_clip_f32(float *pIn, uint32_t numSamples): math_helper.c']]], + ['arm_5fcmplx_5fconj_5ff32',['arm_cmplx_conj_f32',['../group__cmplx__conj.html#ga3a102aead6460ad9fcb0626f6b226ffb',1,'arm_cmplx_conj_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_conj_f32.c'],['../group__cmplx__conj.html#ga3a102aead6460ad9fcb0626f6b226ffb',1,'arm_cmplx_conj_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_conj_f32.c']]], + ['arm_5fcmplx_5fconj_5fq15',['arm_cmplx_conj_q15',['../group__cmplx__conj.html#gaf47689ae07962acaecb8ddde556df4a4',1,'arm_cmplx_conj_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_conj_q15.c'],['../group__cmplx__conj.html#gaf47689ae07962acaecb8ddde556df4a4',1,'arm_cmplx_conj_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_conj_q15.c']]], + ['arm_5fcmplx_5fconj_5fq31',['arm_cmplx_conj_q31',['../group__cmplx__conj.html#gafecc94879a383c5208ec3ef99485e4b5',1,'arm_cmplx_conj_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_conj_q31.c'],['../group__cmplx__conj.html#gafecc94879a383c5208ec3ef99485e4b5',1,'arm_cmplx_conj_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_conj_q31.c']]], + ['arm_5fcmplx_5fdot_5fprod_5ff32',['arm_cmplx_dot_prod_f32',['../group__cmplx__dot__prod.html#gadcfaf567a25eb641da4043eafb9bb076',1,'arm_cmplx_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult): arm_cmplx_dot_prod_f32.c'],['../group__cmplx__dot__prod.html#gadcfaf567a25eb641da4043eafb9bb076',1,'arm_cmplx_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t numSamples, float32_t *realResult, float32_t *imagResult): arm_cmplx_dot_prod_f32.c']]], + ['arm_5fcmplx_5fdot_5fprod_5fq15',['arm_cmplx_dot_prod_q15',['../group__cmplx__dot__prod.html#ga2b08b5e8001d2c15204639d00893fc70',1,'arm_cmplx_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult): arm_cmplx_dot_prod_q15.c'],['../group__cmplx__dot__prod.html#ga2b08b5e8001d2c15204639d00893fc70',1,'arm_cmplx_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t numSamples, q31_t *realResult, q31_t *imagResult): arm_cmplx_dot_prod_q15.c']]], + ['arm_5fcmplx_5fdot_5fprod_5fq31',['arm_cmplx_dot_prod_q31',['../group__cmplx__dot__prod.html#ga5b731a59db062a9ad84562ef68a6c8af',1,'arm_cmplx_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult): arm_cmplx_dot_prod_q31.c'],['../group__cmplx__dot__prod.html#ga5b731a59db062a9ad84562ef68a6c8af',1,'arm_cmplx_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t numSamples, q63_t *realResult, q63_t *imagResult): arm_cmplx_dot_prod_q31.c']]], + ['arm_5fcmplx_5fmag_5ff32',['arm_cmplx_mag_f32',['../group__cmplx__mag.html#gae45024c497392cde2ae358a76d435213',1,'arm_cmplx_mag_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_f32.c'],['../group__cmplx__mag.html#gae45024c497392cde2ae358a76d435213',1,'arm_cmplx_mag_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_f32.c']]], + ['arm_5fcmplx_5fmag_5fq15',['arm_cmplx_mag_q15',['../group__cmplx__mag.html#ga0a4a8f77a6a51d9b3f3b9d729f85b7a4',1,'arm_cmplx_mag_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_q15.c'],['../group__cmplx__mag.html#ga0a4a8f77a6a51d9b3f3b9d729f85b7a4',1,'arm_cmplx_mag_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_q15.c']]], + ['arm_5fcmplx_5fmag_5fq31',['arm_cmplx_mag_q31',['../group__cmplx__mag.html#ga14f82f9230e9d96d5b9774e2fefcb7be',1,'arm_cmplx_mag_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_q31.c'],['../group__cmplx__mag.html#ga14f82f9230e9d96d5b9774e2fefcb7be',1,'arm_cmplx_mag_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_q31.c']]], + ['arm_5fcmplx_5fmag_5fsquared_5ff32',['arm_cmplx_mag_squared_f32',['../group__cmplx__mag__squared.html#gaa7faccc0d96b061d8b7d0d7d82045074',1,'arm_cmplx_mag_squared_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_f32.c'],['../group__cmplx__mag__squared.html#gaa7faccc0d96b061d8b7d0d7d82045074',1,'arm_cmplx_mag_squared_f32(float32_t *pSrc, float32_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_f32.c']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq15',['arm_cmplx_mag_squared_q15',['../group__cmplx__mag__squared.html#ga45537f576102d960d467eb722b8431f2',1,'arm_cmplx_mag_squared_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q15.c'],['../group__cmplx__mag__squared.html#ga45537f576102d960d467eb722b8431f2',1,'arm_cmplx_mag_squared_q15(q15_t *pSrc, q15_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q15.c']]], + ['arm_5fcmplx_5fmag_5fsquared_5fq31',['arm_cmplx_mag_squared_q31',['../group__cmplx__mag__squared.html#ga384b0538101e8c03fa4fa14271e63b04',1,'arm_cmplx_mag_squared_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q31.c'],['../group__cmplx__mag__squared.html#ga384b0538101e8c03fa4fa14271e63b04',1,'arm_cmplx_mag_squared_q31(q31_t *pSrc, q31_t *pDst, uint32_t numSamples): arm_cmplx_mag_squared_q31.c']]], + ['arm_5fcmplx_5fmult_5fcmplx_5ff32',['arm_cmplx_mult_cmplx_f32',['../group___cmplx_by_cmplx_mult.html#ga14b47080054a1ba1250a86805be1ff6b',1,'arm_cmplx_mult_cmplx_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_f32.c'],['../group___cmplx_by_cmplx_mult.html#ga14b47080054a1ba1250a86805be1ff6b',1,'arm_cmplx_mult_cmplx_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_f32.c']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq15',['arm_cmplx_mult_cmplx_q15',['../group___cmplx_by_cmplx_mult.html#ga67e96abfc9c3e30efb70a2ec9d0fe7e8',1,'arm_cmplx_mult_cmplx_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q15.c'],['../group___cmplx_by_cmplx_mult.html#ga67e96abfc9c3e30efb70a2ec9d0fe7e8',1,'arm_cmplx_mult_cmplx_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q15.c']]], + ['arm_5fcmplx_5fmult_5fcmplx_5fq31',['arm_cmplx_mult_cmplx_q31',['../group___cmplx_by_cmplx_mult.html#ga1829e50993a90742de225a0ce4213838',1,'arm_cmplx_mult_cmplx_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q31.c'],['../group___cmplx_by_cmplx_mult.html#ga1829e50993a90742de225a0ce4213838',1,'arm_cmplx_mult_cmplx_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t numSamples): arm_cmplx_mult_cmplx_q31.c']]], + ['arm_5fcmplx_5fmult_5freal_5ff32',['arm_cmplx_mult_real_f32',['../group___cmplx_by_real_mult.html#ga9c18616f56cb4d3c0889ce0b339221ca',1,'arm_cmplx_mult_real_f32(float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_f32.c'],['../group___cmplx_by_real_mult.html#ga9c18616f56cb4d3c0889ce0b339221ca',1,'arm_cmplx_mult_real_f32(float32_t *pSrcCmplx, float32_t *pSrcReal, float32_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_f32.c']]], + ['arm_5fcmplx_5fmult_5freal_5fq15',['arm_cmplx_mult_real_q15',['../group___cmplx_by_real_mult.html#ga3bd8889dcb45980e1d3e53344df54e85',1,'arm_cmplx_mult_real_q15(q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q15.c'],['../group___cmplx_by_real_mult.html#ga3bd8889dcb45980e1d3e53344df54e85',1,'arm_cmplx_mult_real_q15(q15_t *pSrcCmplx, q15_t *pSrcReal, q15_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q15.c']]], + ['arm_5fcmplx_5fmult_5freal_5fq31',['arm_cmplx_mult_real_q31',['../group___cmplx_by_real_mult.html#ga715e4bb8e945b8ca51ec5237611697ce',1,'arm_cmplx_mult_real_q31(q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q31.c'],['../group___cmplx_by_real_mult.html#ga715e4bb8e945b8ca51ec5237611697ce',1,'arm_cmplx_mult_real_q31(q31_t *pSrcCmplx, q31_t *pSrcReal, q31_t *pCmplxDst, uint32_t numSamples): arm_cmplx_mult_real_q31.c']]], + ['arm_5fcompare_5ffixed_5fq15',['arm_compare_fixed_q15',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a64d5207c035db13cddde479317dd131e',1,'arm_compare_fixed_q15(q15_t *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5fcompare_5ffixed_5fq31',['arm_compare_fixed_q31',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a32f9f3d19e53161382c5bd39e3df50fb',1,'arm_compare_fixed_q31(q31_t *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5fconv_5ff32',['arm_conv_f32',['../group___conv.html#ga3f860dc98c6fc4cafc421e4a2aed3c89',1,'arm_conv_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_conv_f32.c'],['../group___conv.html#ga3f860dc98c6fc4cafc421e4a2aed3c89',1,'arm_conv_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_conv_f32.c']]], + ['arm_5fconv_5ffast_5fopt_5fq15',['arm_conv_fast_opt_q15',['../group___conv.html#gaf16f490d245391ec18a42adc73d6d749',1,'arm_conv_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_fast_opt_q15.c'],['../group___conv.html#gaf16f490d245391ec18a42adc73d6d749',1,'arm_conv_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_fast_opt_q15.c']]], + ['arm_5fconv_5ffast_5fq15',['arm_conv_fast_q15',['../group___conv.html#gad75ca978ce906e04abdf86a8d76306d4',1,'arm_conv_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_fast_q15.c'],['../group___conv.html#gad75ca978ce906e04abdf86a8d76306d4',1,'arm_conv_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_fast_q15.c']]], + ['arm_5fconv_5ffast_5fq31',['arm_conv_fast_q31',['../group___conv.html#ga51112dcdf9b3624eb05182cdc4da9ec0',1,'arm_conv_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_fast_q31.c'],['../group___conv.html#ga51112dcdf9b3624eb05182cdc4da9ec0',1,'arm_conv_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_fast_q31.c']]], + ['arm_5fconv_5fopt_5fq15',['arm_conv_opt_q15',['../group___conv.html#gac77dbcaef5c754cac27eab96c4753a3c',1,'arm_conv_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q15.c'],['../group___conv.html#gac77dbcaef5c754cac27eab96c4753a3c',1,'arm_conv_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q15.c']]], + ['arm_5fconv_5fopt_5fq7',['arm_conv_opt_q7',['../group___conv.html#ga4c7cf073e89d6d57cc4e711f078c3f68',1,'arm_conv_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q7.c'],['../group___conv.html#ga4c7cf073e89d6d57cc4e711f078c3f68',1,'arm_conv_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_conv_opt_q7.c']]], + ['arm_5fconv_5fpartial_5ff32',['arm_conv_partial_f32',['../group___partial_conv.html#ga16d10f32072cd79fc5fb6e785df45f5e',1,'arm_conv_partial_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_f32.c'],['../group___partial_conv.html#ga16d10f32072cd79fc5fb6e785df45f5e',1,'arm_conv_partial_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_f32.c']]], + ['arm_5fconv_5fpartial_5ffast_5fopt_5fq15',['arm_conv_partial_fast_opt_q15',['../group___partial_conv.html#ga3de9c4ddcc7886de25b70d875099a8d9',1,'arm_conv_partial_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_fast_opt_q15.c'],['../group___partial_conv.html#ga3de9c4ddcc7886de25b70d875099a8d9',1,'arm_conv_partial_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_fast_opt_q15.c']]], + ['arm_5fconv_5fpartial_5ffast_5fq15',['arm_conv_partial_fast_q15',['../group___partial_conv.html#ga1e4d43385cb62262a78c6752fe1fafb2',1,'arm_conv_partial_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q15.c'],['../group___partial_conv.html#ga1e4d43385cb62262a78c6752fe1fafb2',1,'arm_conv_partial_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q15.c']]], + ['arm_5fconv_5fpartial_5ffast_5fq31',['arm_conv_partial_fast_q31',['../group___partial_conv.html#ga10c5294cda8c4985386f4e3944be7650',1,'arm_conv_partial_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q31.c'],['../group___partial_conv.html#ga10c5294cda8c4985386f4e3944be7650',1,'arm_conv_partial_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_fast_q31.c']]], + ['arm_5fconv_5fpartial_5fopt_5fq15',['arm_conv_partial_opt_q15',['../group___partial_conv.html#ga834b23b4ade8682beeb55778399101f8',1,'arm_conv_partial_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q15.c'],['../group___partial_conv.html#ga834b23b4ade8682beeb55778399101f8',1,'arm_conv_partial_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q15.c']]], + ['arm_5fconv_5fpartial_5fopt_5fq7',['arm_conv_partial_opt_q7',['../group___partial_conv.html#ga3707e16af1435b215840006a7ab0c98f',1,'arm_conv_partial_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q7.c'],['../group___partial_conv.html#ga3707e16af1435b215840006a7ab0c98f',1,'arm_conv_partial_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints, q15_t *pScratch1, q15_t *pScratch2): arm_conv_partial_opt_q7.c']]], + ['arm_5fconv_5fpartial_5fq15',['arm_conv_partial_q15',['../group___partial_conv.html#ga209a2a913a0c5e5679c5988da8f46b03',1,'arm_conv_partial_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q15.c'],['../group___partial_conv.html#ga209a2a913a0c5e5679c5988da8f46b03',1,'arm_conv_partial_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q15.c']]], + ['arm_5fconv_5fpartial_5fq31',['arm_conv_partial_q31',['../group___partial_conv.html#ga78e73a5f02d103168a09821fb461e77a',1,'arm_conv_partial_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q31.c'],['../group___partial_conv.html#ga78e73a5f02d103168a09821fb461e77a',1,'arm_conv_partial_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q31.c']]], + ['arm_5fconv_5fpartial_5fq7',['arm_conv_partial_q7',['../group___partial_conv.html#ga8567259fe18396dd972242c41741ebf4',1,'arm_conv_partial_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q7.c'],['../group___partial_conv.html#ga8567259fe18396dd972242c41741ebf4',1,'arm_conv_partial_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, uint32_t firstIndex, uint32_t numPoints): arm_conv_partial_q7.c']]], + ['arm_5fconv_5fq15',['arm_conv_q15',['../group___conv.html#gaccd6a89b0ff7a94df64610598e6e6893',1,'arm_conv_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_q15.c'],['../group___conv.html#gaccd6a89b0ff7a94df64610598e6e6893',1,'arm_conv_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_conv_q15.c']]], + ['arm_5fconv_5fq31',['arm_conv_q31',['../group___conv.html#ga946b58da734f1e4e78c91fcaab4b12b6',1,'arm_conv_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_q31.c'],['../group___conv.html#ga946b58da734f1e4e78c91fcaab4b12b6',1,'arm_conv_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_conv_q31.c']]], + ['arm_5fconv_5fq7',['arm_conv_q7',['../group___conv.html#gae2070cb792a167e78dbad8d06b97cdab',1,'arm_conv_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_conv_q7.c'],['../group___conv.html#gae2070cb792a167e78dbad8d06b97cdab',1,'arm_conv_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_conv_q7.c']]], + ['arm_5fcopy_5ff32',['arm_copy_f32',['../group__copy.html#gadd1f737e677e0e6ca31767c7001417b3',1,'arm_copy_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_copy_f32.c'],['../group__copy.html#gadd1f737e677e0e6ca31767c7001417b3',1,'arm_copy_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_copy_f32.c']]], + ['arm_5fcopy_5fq15',['arm_copy_q15',['../group__copy.html#ga872ca4cfc18c680b8991ccd569a5fda0',1,'arm_copy_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_copy_q15.c'],['../group__copy.html#ga872ca4cfc18c680b8991ccd569a5fda0',1,'arm_copy_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_copy_q15.c']]], + ['arm_5fcopy_5fq31',['arm_copy_q31',['../group__copy.html#gaddf70be7e3f87e535c324862b501f3f9',1,'arm_copy_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_copy_q31.c'],['../group__copy.html#gaddf70be7e3f87e535c324862b501f3f9',1,'arm_copy_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_copy_q31.c']]], + ['arm_5fcopy_5fq7',['arm_copy_q7',['../group__copy.html#ga467579beda492aa92797529d794c88fb',1,'arm_copy_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_copy_q7.c'],['../group__copy.html#ga467579beda492aa92797529d794c88fb',1,'arm_copy_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_copy_q7.c']]], + ['arm_5fcorrelate_5ff32',['arm_correlate_f32',['../group___corr.html#ga22021e4222773f01e9960358a531cfb8',1,'arm_correlate_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_correlate_f32.c'],['../group___corr.html#ga22021e4222773f01e9960358a531cfb8',1,'arm_correlate_f32(float32_t *pSrcA, uint32_t srcALen, float32_t *pSrcB, uint32_t srcBLen, float32_t *pDst): arm_correlate_f32.c']]], + ['arm_5fcorrelate_5ffast_5fopt_5fq15',['arm_correlate_fast_opt_q15',['../group___corr.html#ga40a0236b17220e8e22a22b5bc1c53c6b',1,'arm_correlate_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_fast_opt_q15.c'],['../group___corr.html#ga40a0236b17220e8e22a22b5bc1c53c6b',1,'arm_correlate_fast_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_fast_opt_q15.c']]], + ['arm_5fcorrelate_5ffast_5fq15',['arm_correlate_fast_q15',['../group___corr.html#gac8de3da44f58e86c2c86156276ca154f',1,'arm_correlate_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_fast_q15.c'],['../group___corr.html#gac8de3da44f58e86c2c86156276ca154f',1,'arm_correlate_fast_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_fast_q15.c']]], + ['arm_5fcorrelate_5ffast_5fq31',['arm_correlate_fast_q31',['../group___corr.html#gabecd3d7b077dbbef43f93e9e037815ed',1,'arm_correlate_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_fast_q31.c'],['../group___corr.html#gabecd3d7b077dbbef43f93e9e037815ed',1,'arm_correlate_fast_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_fast_q31.c']]], + ['arm_5fcorrelate_5fopt_5fq15',['arm_correlate_opt_q15',['../group___corr.html#gad71c0ec70ec69edbc48563d9a5f68451',1,'arm_correlate_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_opt_q15.c'],['../group___corr.html#gad71c0ec70ec69edbc48563d9a5f68451',1,'arm_correlate_opt_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst, q15_t *pScratch): arm_correlate_opt_q15.c']]], + ['arm_5fcorrelate_5fopt_5fq7',['arm_correlate_opt_q7',['../group___corr.html#ga746e8857cafe33ec5d6780729c18c311',1,'arm_correlate_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_correlate_opt_q7.c'],['../group___corr.html#ga746e8857cafe33ec5d6780729c18c311',1,'arm_correlate_opt_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst, q15_t *pScratch1, q15_t *pScratch2): arm_correlate_opt_q7.c']]], + ['arm_5fcorrelate_5fq15',['arm_correlate_q15',['../group___corr.html#ga5ec96b8e420d68b0e626df0812274d46',1,'arm_correlate_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_q15.c'],['../group___corr.html#ga5ec96b8e420d68b0e626df0812274d46',1,'arm_correlate_q15(q15_t *pSrcA, uint32_t srcALen, q15_t *pSrcB, uint32_t srcBLen, q15_t *pDst): arm_correlate_q15.c']]], + ['arm_5fcorrelate_5fq31',['arm_correlate_q31',['../group___corr.html#ga1367dc6c80476406c951e68d7fac4e8c',1,'arm_correlate_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_q31.c'],['../group___corr.html#ga1367dc6c80476406c951e68d7fac4e8c',1,'arm_correlate_q31(q31_t *pSrcA, uint32_t srcALen, q31_t *pSrcB, uint32_t srcBLen, q31_t *pDst): arm_correlate_q31.c']]], + ['arm_5fcorrelate_5fq7',['arm_correlate_q7',['../group___corr.html#ga284ddcc49e4ac532d52a70d0383c5992',1,'arm_correlate_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_correlate_q7.c'],['../group___corr.html#ga284ddcc49e4ac532d52a70d0383c5992',1,'arm_correlate_q7(q7_t *pSrcA, uint32_t srcALen, q7_t *pSrcB, uint32_t srcBLen, q7_t *pDst): arm_correlate_q7.c']]], + ['arm_5fcos_5ff32',['arm_cos_f32',['../group__cos.html#gace15287f9c64b9b4084d1c797d4c49d8',1,'arm_cos_f32(float32_t x): arm_cos_f32.c'],['../group__cos.html#gace15287f9c64b9b4084d1c797d4c49d8',1,'arm_cos_f32(float32_t x): arm_cos_f32.c']]], + ['arm_5fcos_5fq15',['arm_cos_q15',['../group__cos.html#gadfd60c24def501638c0d5db20f4c869b',1,'arm_cos_q15(q15_t x): arm_cos_q15.c'],['../group__cos.html#gadfd60c24def501638c0d5db20f4c869b',1,'arm_cos_q15(q15_t x): arm_cos_q15.c']]], + ['arm_5fcos_5fq31',['arm_cos_q31',['../group__cos.html#gad80f121949ef885a77d83ab36e002567',1,'arm_cos_q31(q31_t x): arm_cos_q31.c'],['../group__cos.html#gad80f121949ef885a77d83ab36e002567',1,'arm_cos_q31(q31_t x): arm_cos_q31.c']]], + ['arm_5fdct4_5ff32',['arm_dct4_f32',['../group___d_c_t4___i_d_c_t4.html#gafd538d68886848bc090ec2b0d364cc81',1,'arm_dct4_f32(const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer): arm_dct4_f32.c'],['../group___d_c_t4___i_d_c_t4.html#gafd538d68886848bc090ec2b0d364cc81',1,'arm_dct4_f32(const arm_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer): arm_dct4_f32.c']]], + ['arm_5fdct4_5finit_5ff32',['arm_dct4_init_f32',['../group___d_c_t4___i_d_c_t4.html#gab094ad3bc6fa1b84e8b12a24e1850a06',1,'arm_dct4_init_f32(arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize): arm_dct4_init_f32.c'],['../group___d_c_t4___i_d_c_t4.html#gab094ad3bc6fa1b84e8b12a24e1850a06',1,'arm_dct4_init_f32(arm_dct4_instance_f32 *S, arm_rfft_instance_f32 *S_RFFT, arm_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize): arm_dct4_init_f32.c']]], + ['arm_5fdct4_5finit_5fq15',['arm_dct4_init_q15',['../group___d_c_t4___i_d_c_t4.html#ga966fd1b66a80873964533703ab5dc054',1,'arm_dct4_init_q15(arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize): arm_dct4_init_q15.c'],['../group___d_c_t4___i_d_c_t4.html#ga966fd1b66a80873964533703ab5dc054',1,'arm_dct4_init_q15(arm_dct4_instance_q15 *S, arm_rfft_instance_q15 *S_RFFT, arm_cfft_radix4_instance_q15 *S_CFFT, uint16_t N, uint16_t Nby2, q15_t normalize): arm_dct4_init_q15.c']]], + ['arm_5fdct4_5finit_5fq31',['arm_dct4_init_q31',['../group___d_c_t4___i_d_c_t4.html#ga631bb59c7c97c814ff7147ecba6a716a',1,'arm_dct4_init_q31(arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize): arm_dct4_init_q31.c'],['../group___d_c_t4___i_d_c_t4.html#ga631bb59c7c97c814ff7147ecba6a716a',1,'arm_dct4_init_q31(arm_dct4_instance_q31 *S, arm_rfft_instance_q31 *S_RFFT, arm_cfft_radix4_instance_q31 *S_CFFT, uint16_t N, uint16_t Nby2, q31_t normalize): arm_dct4_init_q31.c']]], + ['arm_5fdct4_5fq15',['arm_dct4_q15',['../group___d_c_t4___i_d_c_t4.html#ga114cb9635059f678df291fcc887aaf2b',1,'arm_dct4_q15(const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer): arm_dct4_q15.c'],['../group___d_c_t4___i_d_c_t4.html#ga114cb9635059f678df291fcc887aaf2b',1,'arm_dct4_q15(const arm_dct4_instance_q15 *S, q15_t *pState, q15_t *pInlineBuffer): arm_dct4_q15.c']]], + ['arm_5fdct4_5fq31',['arm_dct4_q31',['../group___d_c_t4___i_d_c_t4.html#gad04d0baab6ed081d8e8afe02538eb80b',1,'arm_dct4_q31(const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer): arm_dct4_q31.c'],['../group___d_c_t4___i_d_c_t4.html#gad04d0baab6ed081d8e8afe02538eb80b',1,'arm_dct4_q31(const arm_dct4_instance_q31 *S, q31_t *pState, q31_t *pInlineBuffer): arm_dct4_q31.c']]], + ['arm_5fdot_5fprod_5ff32',['arm_dot_prod_f32',['../group__dot__prod.html#ga55418d4362f6ba84c327f9b4f089a8c3',1,'arm_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result): arm_dot_prod_f32.c'],['../group__dot__prod.html#ga55418d4362f6ba84c327f9b4f089a8c3',1,'arm_dot_prod_f32(float32_t *pSrcA, float32_t *pSrcB, uint32_t blockSize, float32_t *result): arm_dot_prod_f32.c']]], + ['arm_5fdot_5fprod_5fq15',['arm_dot_prod_q15',['../group__dot__prod.html#ga436d5bed28a4b73b24acbde436a3044b',1,'arm_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q15.c'],['../group__dot__prod.html#ga436d5bed28a4b73b24acbde436a3044b',1,'arm_dot_prod_q15(q15_t *pSrcA, q15_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q15.c']]], + ['arm_5fdot_5fprod_5fq31',['arm_dot_prod_q31',['../group__dot__prod.html#gab15d8fa060fc85b4d948d091b7deaa11',1,'arm_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q31.c'],['../group__dot__prod.html#gab15d8fa060fc85b4d948d091b7deaa11',1,'arm_dot_prod_q31(q31_t *pSrcA, q31_t *pSrcB, uint32_t blockSize, q63_t *result): arm_dot_prod_q31.c']]], + ['arm_5fdot_5fprod_5fq7',['arm_dot_prod_q7',['../group__dot__prod.html#ga9c3293a50ac7ec8ba928bf8e3aaea6c1',1,'arm_dot_prod_q7(q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result): arm_dot_prod_q7.c'],['../group__dot__prod.html#ga9c3293a50ac7ec8ba928bf8e3aaea6c1',1,'arm_dot_prod_q7(q7_t *pSrcA, q7_t *pSrcB, uint32_t blockSize, q31_t *result): arm_dot_prod_q7.c']]], + ['arm_5ffill_5ff32',['arm_fill_f32',['../group___fill.html#ga2248e8d3901b4afb7827163132baad94',1,'arm_fill_f32(float32_t value, float32_t *pDst, uint32_t blockSize): arm_fill_f32.c'],['../group___fill.html#ga2248e8d3901b4afb7827163132baad94',1,'arm_fill_f32(float32_t value, float32_t *pDst, uint32_t blockSize): arm_fill_f32.c']]], + ['arm_5ffill_5fq15',['arm_fill_q15',['../group___fill.html#ga76b21c32a3783a2b3334d930a646e5d8',1,'arm_fill_q15(q15_t value, q15_t *pDst, uint32_t blockSize): arm_fill_q15.c'],['../group___fill.html#ga76b21c32a3783a2b3334d930a646e5d8',1,'arm_fill_q15(q15_t value, q15_t *pDst, uint32_t blockSize): arm_fill_q15.c']]], + ['arm_5ffill_5fq31',['arm_fill_q31',['../group___fill.html#ga69cc781cf337bd0a31bb85c772a35f7f',1,'arm_fill_q31(q31_t value, q31_t *pDst, uint32_t blockSize): arm_fill_q31.c'],['../group___fill.html#ga69cc781cf337bd0a31bb85c772a35f7f',1,'arm_fill_q31(q31_t value, q31_t *pDst, uint32_t blockSize): arm_fill_q31.c']]], + ['arm_5ffill_5fq7',['arm_fill_q7',['../group___fill.html#ga0465cf326ada039ed792f94b033d9ec5',1,'arm_fill_q7(q7_t value, q7_t *pDst, uint32_t blockSize): arm_fill_q7.c'],['../group___fill.html#ga0465cf326ada039ed792f94b033d9ec5',1,'arm_fill_q7(q7_t value, q7_t *pDst, uint32_t blockSize): arm_fill_q7.c']]], + ['arm_5ffir_5fdecimate_5ff32',['arm_fir_decimate_f32',['../group___f_i_r__decimate.html#ga25aa3d58a90bf91b6a82272a0bc518f7',1,'arm_fir_decimate_f32(const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_decimate_f32.c'],['../group___f_i_r__decimate.html#ga25aa3d58a90bf91b6a82272a0bc518f7',1,'arm_fir_decimate_f32(const arm_fir_decimate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_decimate_f32.c']]], + ['arm_5ffir_5fdecimate_5ffast_5fq15',['arm_fir_decimate_fast_q15',['../group___f_i_r__decimate.html#ga3f434c9a5d3b4e68061feac0714ea2ac',1,'arm_fir_decimate_fast_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q15.c'],['../group___f_i_r__decimate.html#ga3f434c9a5d3b4e68061feac0714ea2ac',1,'arm_fir_decimate_fast_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q15.c']]], + ['arm_5ffir_5fdecimate_5ffast_5fq31',['arm_fir_decimate_fast_q31',['../group___f_i_r__decimate.html#ga3c18cc3d0548a410c577f1bead9582b7',1,'arm_fir_decimate_fast_q31(arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q31.c'],['../group___f_i_r__decimate.html#ga3c18cc3d0548a410c577f1bead9582b7',1,'arm_fir_decimate_fast_q31(arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_fast_q31.c']]], + ['arm_5ffir_5fdecimate_5finit_5ff32',['arm_fir_decimate_init_f32',['../group___f_i_r__decimate.html#gaaa2524b08220fd6c3f753e692ffc7d3b',1,'arm_fir_decimate_init_f32(arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_decimate_init_f32.c'],['../group___f_i_r__decimate.html#gaaa2524b08220fd6c3f753e692ffc7d3b',1,'arm_fir_decimate_init_f32(arm_fir_decimate_instance_f32 *S, uint16_t numTaps, uint8_t M, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_decimate_init_f32.c']]], + ['arm_5ffir_5fdecimate_5finit_5fq15',['arm_fir_decimate_init_q15',['../group___f_i_r__decimate.html#gada660e54b93d5d32178c6f5e1c6f368d',1,'arm_fir_decimate_init_q15(arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_decimate_init_q15.c'],['../group___f_i_r__decimate.html#gada660e54b93d5d32178c6f5e1c6f368d',1,'arm_fir_decimate_init_q15(arm_fir_decimate_instance_q15 *S, uint16_t numTaps, uint8_t M, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_decimate_init_q15.c']]], + ['arm_5ffir_5fdecimate_5finit_5fq31',['arm_fir_decimate_init_q31',['../group___f_i_r__decimate.html#ga9ed47c4e0f58affa935d84e0508a7f39',1,'arm_fir_decimate_init_q31(arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_decimate_init_q31.c'],['../group___f_i_r__decimate.html#ga9ed47c4e0f58affa935d84e0508a7f39',1,'arm_fir_decimate_init_q31(arm_fir_decimate_instance_q31 *S, uint16_t numTaps, uint8_t M, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_decimate_init_q31.c']]], + ['arm_5ffir_5fdecimate_5fq15',['arm_fir_decimate_q15',['../group___f_i_r__decimate.html#gab8bef6d0f6a26fdbfce9485727713ce5',1,'arm_fir_decimate_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_q15.c'],['../group___f_i_r__decimate.html#gab8bef6d0f6a26fdbfce9485727713ce5',1,'arm_fir_decimate_q15(const arm_fir_decimate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_decimate_q15.c']]], + ['arm_5ffir_5fdecimate_5fq31',['arm_fir_decimate_q31',['../group___f_i_r__decimate.html#gaef8e86add28f15fdc5ecc484e9dd7a4e',1,'arm_fir_decimate_q31(const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_q31.c'],['../group___f_i_r__decimate.html#gaef8e86add28f15fdc5ecc484e9dd7a4e',1,'arm_fir_decimate_q31(const arm_fir_decimate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_decimate_q31.c']]], + ['arm_5ffir_5ff32',['arm_fir_f32',['../group___f_i_r.html#gae8fb334ea67eb6ecbd31824ddc14cd6a',1,'arm_fir_f32(const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_f32.c'],['../group___f_i_r.html#gae8fb334ea67eb6ecbd31824ddc14cd6a',1,'arm_fir_f32(const arm_fir_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_f32.c']]], + ['arm_5ffir_5ffast_5fq15',['arm_fir_fast_q15',['../group___f_i_r.html#gac7d35e9472e49ccd88800f37f3476bd3',1,'arm_fir_fast_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_fast_q15.c'],['../group___f_i_r.html#gac7d35e9472e49ccd88800f37f3476bd3',1,'arm_fir_fast_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_fast_q15.c']]], + ['arm_5ffir_5ffast_5fq31',['arm_fir_fast_q31',['../group___f_i_r.html#ga70d11af009dcd25594c58c75cdb5d6e3',1,'arm_fir_fast_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_fast_q31.c'],['../group___f_i_r.html#ga70d11af009dcd25594c58c75cdb5d6e3',1,'arm_fir_fast_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_fast_q31.c']]], + ['arm_5ffir_5finit_5ff32',['arm_fir_init_f32',['../group___f_i_r.html#ga98d13def6427e29522829f945d0967db',1,'arm_fir_init_f32(arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_init_f32.c'],['../group___f_i_r.html#ga98d13def6427e29522829f945d0967db',1,'arm_fir_init_f32(arm_fir_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_init_f32.c']]], + ['arm_5ffir_5finit_5fq15',['arm_fir_init_q15',['../group___f_i_r.html#gae2a50f692f41ba57e44ed0719b1368bd',1,'arm_fir_init_q15(arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_init_q15.c'],['../group___f_i_r.html#gae2a50f692f41ba57e44ed0719b1368bd',1,'arm_fir_init_q15(arm_fir_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_init_q15.c']]], + ['arm_5ffir_5finit_5fq31',['arm_fir_init_q31',['../group___f_i_r.html#gac00d53af87684cbbe135767b55e748a5',1,'arm_fir_init_q31(arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_init_q31.c'],['../group___f_i_r.html#gac00d53af87684cbbe135767b55e748a5',1,'arm_fir_init_q31(arm_fir_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_init_q31.c']]], + ['arm_5ffir_5finit_5fq7',['arm_fir_init_q7',['../group___f_i_r.html#ga88e48688224d42dc173dbcec702f0c1d',1,'arm_fir_init_q7(arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize): arm_fir_init_q7.c'],['../group___f_i_r.html#ga88e48688224d42dc173dbcec702f0c1d',1,'arm_fir_init_q7(arm_fir_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, uint32_t blockSize): arm_fir_init_q7.c']]], + ['arm_5ffir_5finterpolate_5ff32',['arm_fir_interpolate_f32',['../group___f_i_r___interpolate.html#ga9cae104c5cf60b4e7671c82264a8c12e',1,'arm_fir_interpolate_f32(const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_interpolate_f32.c'],['../group___f_i_r___interpolate.html#ga9cae104c5cf60b4e7671c82264a8c12e',1,'arm_fir_interpolate_f32(const arm_fir_interpolate_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_interpolate_f32.c']]], + ['arm_5ffir_5finterpolate_5finit_5ff32',['arm_fir_interpolate_init_f32',['../group___f_i_r___interpolate.html#ga0f857457a815946f7e4dca989ebf6ff6',1,'arm_fir_interpolate_init_f32(arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_interpolate_init_f32.c'],['../group___f_i_r___interpolate.html#ga0f857457a815946f7e4dca989ebf6ff6',1,'arm_fir_interpolate_init_f32(arm_fir_interpolate_instance_f32 *S, uint8_t L, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, uint32_t blockSize): arm_fir_interpolate_init_f32.c']]], + ['arm_5ffir_5finterpolate_5finit_5fq15',['arm_fir_interpolate_init_q15',['../group___f_i_r___interpolate.html#ga18e8c4a74ff1d0f88876cc63f675288f',1,'arm_fir_interpolate_init_q15(arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q15.c'],['../group___f_i_r___interpolate.html#ga18e8c4a74ff1d0f88876cc63f675288f',1,'arm_fir_interpolate_init_q15(arm_fir_interpolate_instance_q15 *S, uint8_t L, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q15.c']]], + ['arm_5ffir_5finterpolate_5finit_5fq31',['arm_fir_interpolate_init_q31',['../group___f_i_r___interpolate.html#ga9d0ba38ce9f12a850dd242731d307476',1,'arm_fir_interpolate_init_q31(arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q31.c'],['../group___f_i_r___interpolate.html#ga9d0ba38ce9f12a850dd242731d307476',1,'arm_fir_interpolate_init_q31(arm_fir_interpolate_instance_q31 *S, uint8_t L, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, uint32_t blockSize): arm_fir_interpolate_init_q31.c']]], + ['arm_5ffir_5finterpolate_5fq15',['arm_fir_interpolate_q15',['../group___f_i_r___interpolate.html#ga7962b5f9636e54899f75d0c5936800b5',1,'arm_fir_interpolate_q15(const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_interpolate_q15.c'],['../group___f_i_r___interpolate.html#ga7962b5f9636e54899f75d0c5936800b5',1,'arm_fir_interpolate_q15(const arm_fir_interpolate_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_interpolate_q15.c']]], + ['arm_5ffir_5finterpolate_5fq31',['arm_fir_interpolate_q31',['../group___f_i_r___interpolate.html#gaac9c0f01ed91c53f7083995d7411f5ee',1,'arm_fir_interpolate_q31(const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_interpolate_q31.c'],['../group___f_i_r___interpolate.html#gaac9c0f01ed91c53f7083995d7411f5ee',1,'arm_fir_interpolate_q31(const arm_fir_interpolate_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_interpolate_q31.c']]], + ['arm_5ffir_5flattice_5ff32',['arm_fir_lattice_f32',['../group___f_i_r___lattice.html#gae63a45a63a11a65f2eae8b8b1fe370a8',1,'arm_fir_lattice_f32(const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_lattice_f32.c'],['../group___f_i_r___lattice.html#gae63a45a63a11a65f2eae8b8b1fe370a8',1,'arm_fir_lattice_f32(const arm_fir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_fir_lattice_f32.c']]], + ['arm_5ffir_5flattice_5finit_5ff32',['arm_fir_lattice_init_f32',['../group___f_i_r___lattice.html#ga86199a1590af2b8941c6532ee9d03229',1,'arm_fir_lattice_init_f32(arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState): arm_fir_lattice_init_f32.c'],['../group___f_i_r___lattice.html#ga86199a1590af2b8941c6532ee9d03229',1,'arm_fir_lattice_init_f32(arm_fir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pCoeffs, float32_t *pState): arm_fir_lattice_init_f32.c']]], + ['arm_5ffir_5flattice_5finit_5fq15',['arm_fir_lattice_init_q15',['../group___f_i_r___lattice.html#ga1b22f30ce1cc19bf5a5d7c9fca154d72',1,'arm_fir_lattice_init_q15(arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState): arm_fir_lattice_init_q15.c'],['../group___f_i_r___lattice.html#ga1b22f30ce1cc19bf5a5d7c9fca154d72',1,'arm_fir_lattice_init_q15(arm_fir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pCoeffs, q15_t *pState): arm_fir_lattice_init_q15.c']]], + ['arm_5ffir_5flattice_5finit_5fq31',['arm_fir_lattice_init_q31',['../group___f_i_r___lattice.html#gac05a17a0188bb851b58d19e572870a54',1,'arm_fir_lattice_init_q31(arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState): arm_fir_lattice_init_q31.c'],['../group___f_i_r___lattice.html#gac05a17a0188bb851b58d19e572870a54',1,'arm_fir_lattice_init_q31(arm_fir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pCoeffs, q31_t *pState): arm_fir_lattice_init_q31.c']]], + ['arm_5ffir_5flattice_5fq15',['arm_fir_lattice_q15',['../group___f_i_r___lattice.html#gabb0ab07fd313b4d863070c3ddca51542',1,'arm_fir_lattice_q15(const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_lattice_q15.c'],['../group___f_i_r___lattice.html#gabb0ab07fd313b4d863070c3ddca51542',1,'arm_fir_lattice_q15(const arm_fir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_lattice_q15.c']]], + ['arm_5ffir_5flattice_5fq31',['arm_fir_lattice_q31',['../group___f_i_r___lattice.html#ga2e36fd210e4a1a5dd333ce80dd6d9a88',1,'arm_fir_lattice_q31(const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_lattice_q31.c'],['../group___f_i_r___lattice.html#ga2e36fd210e4a1a5dd333ce80dd6d9a88',1,'arm_fir_lattice_q31(const arm_fir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_lattice_q31.c']]], + ['arm_5ffir_5fq15',['arm_fir_q15',['../group___f_i_r.html#ga262d173058d6f80fdf60404ba262a8f5',1,'arm_fir_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_q15.c'],['../group___f_i_r.html#ga262d173058d6f80fdf60404ba262a8f5',1,'arm_fir_q15(const arm_fir_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_fir_q15.c']]], + ['arm_5ffir_5fq31',['arm_fir_q31',['../group___f_i_r.html#gaadd938c68ab08967cbb5fc696f384bb5',1,'arm_fir_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_q31.c'],['../group___f_i_r.html#gaadd938c68ab08967cbb5fc696f384bb5',1,'arm_fir_q31(const arm_fir_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_fir_q31.c']]], + ['arm_5ffir_5fq7',['arm_fir_q7',['../group___f_i_r.html#ga31c91a0bf0962327ef8f626fae68ea32',1,'arm_fir_q7(const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_fir_q7.c'],['../group___f_i_r.html#ga31c91a0bf0962327ef8f626fae68ea32',1,'arm_fir_q7(const arm_fir_instance_q7 *S, q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_fir_q7.c']]], + ['arm_5ffir_5fsparse_5ff32',['arm_fir_sparse_f32',['../group___f_i_r___sparse.html#ga23a9284de5ee39406713b91d18ac8838',1,'arm_fir_sparse_f32(arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_f32.c'],['../group___f_i_r___sparse.html#ga23a9284de5ee39406713b91d18ac8838',1,'arm_fir_sparse_f32(arm_fir_sparse_instance_f32 *S, float32_t *pSrc, float32_t *pDst, float32_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_f32.c']]], + ['arm_5ffir_5fsparse_5finit_5ff32',['arm_fir_sparse_init_f32',['../group___f_i_r___sparse.html#ga86378a08a9d9e1e0e5de77843b34d396',1,'arm_fir_sparse_init_f32(arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_f32.c'],['../group___f_i_r___sparse.html#ga86378a08a9d9e1e0e5de77843b34d396',1,'arm_fir_sparse_init_f32(arm_fir_sparse_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_f32.c']]], + ['arm_5ffir_5fsparse_5finit_5fq15',['arm_fir_sparse_init_q15',['../group___f_i_r___sparse.html#ga5eaa80bf72bcccef5a2c5fc6648d1baa',1,'arm_fir_sparse_init_q15(arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q15.c'],['../group___f_i_r___sparse.html#ga5eaa80bf72bcccef5a2c5fc6648d1baa',1,'arm_fir_sparse_init_q15(arm_fir_sparse_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q15.c']]], + ['arm_5ffir_5fsparse_5finit_5fq31',['arm_fir_sparse_init_q31',['../group___f_i_r___sparse.html#ga9a0bb2134bc85d3e55c6be6d946ee634',1,'arm_fir_sparse_init_q31(arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q31.c'],['../group___f_i_r___sparse.html#ga9a0bb2134bc85d3e55c6be6d946ee634',1,'arm_fir_sparse_init_q31(arm_fir_sparse_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q31.c']]], + ['arm_5ffir_5fsparse_5finit_5fq7',['arm_fir_sparse_init_q7',['../group___f_i_r___sparse.html#ga98f5c1a097d4572ce4ff3b0c58ebcdbd',1,'arm_fir_sparse_init_q7(arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q7.c'],['../group___f_i_r___sparse.html#ga98f5c1a097d4572ce4ff3b0c58ebcdbd',1,'arm_fir_sparse_init_q7(arm_fir_sparse_instance_q7 *S, uint16_t numTaps, q7_t *pCoeffs, q7_t *pState, int32_t *pTapDelay, uint16_t maxDelay, uint32_t blockSize): arm_fir_sparse_init_q7.c']]], + ['arm_5ffir_5fsparse_5fq15',['arm_fir_sparse_q15',['../group___f_i_r___sparse.html#ga2bffda2e156e72427e19276cd9c3d3cc',1,'arm_fir_sparse_q15(arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q15.c'],['../group___f_i_r___sparse.html#ga2bffda2e156e72427e19276cd9c3d3cc',1,'arm_fir_sparse_q15(arm_fir_sparse_instance_q15 *S, q15_t *pSrc, q15_t *pDst, q15_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q15.c']]], + ['arm_5ffir_5fsparse_5fq31',['arm_fir_sparse_q31',['../group___f_i_r___sparse.html#ga03e9c2f0f35ad67d20bac66be9f920ec',1,'arm_fir_sparse_q31(arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_q31.c'],['../group___f_i_r___sparse.html#ga03e9c2f0f35ad67d20bac66be9f920ec',1,'arm_fir_sparse_q31(arm_fir_sparse_instance_q31 *S, q31_t *pSrc, q31_t *pDst, q31_t *pScratchIn, uint32_t blockSize): arm_fir_sparse_q31.c']]], + ['arm_5ffir_5fsparse_5fq7',['arm_fir_sparse_q7',['../group___f_i_r___sparse.html#gae86c145efc2d9ec32dc6d8c1ad2ccb3c',1,'arm_fir_sparse_q7(arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q7.c'],['../group___f_i_r___sparse.html#gae86c145efc2d9ec32dc6d8c1ad2ccb3c',1,'arm_fir_sparse_q7(arm_fir_sparse_instance_q7 *S, q7_t *pSrc, q7_t *pDst, q7_t *pScratchIn, q31_t *pScratchOut, uint32_t blockSize): arm_fir_sparse_q7.c']]], + ['arm_5ffloat_5fto_5fq12_5f20',['arm_float_to_q12_20',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a23f94b0fbfed6d620f38e26bc64cf2f8',1,'arm_float_to_q12_20(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq14',['arm_float_to_q14',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a23cdb5202efd9233f4e92b5f22287eac',1,'arm_float_to_q14(float *pIn, q15_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq15',['arm_float_to_q15',['../group__float__to__x.html#ga215456e35a18db86882e1d3f0d24e1f2',1,'arm_float_to_q15(float32_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_float_to_q15.c'],['../group__float__to__x.html#ga215456e35a18db86882e1d3f0d24e1f2',1,'arm_float_to_q15(float32_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_float_to_q15.c']]], + ['arm_5ffloat_5fto_5fq28',['arm_float_to_q28',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#aa1049b3adb14331612bb762237391625',1,'arm_float_to_q28(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq29',['arm_float_to_q29',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a098c587b93469a7a6bcc521d42fdf6f9',1,'arm_float_to_q29(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq30',['arm_float_to_q30',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#a16764fdbc174a79f04b07032cf902079',1,'arm_float_to_q30(float *pIn, q31_t *pOut, uint32_t numSamples): math_helper.c']]], + ['arm_5ffloat_5fto_5fq31',['arm_float_to_q31',['../group__float__to__x.html#ga177704107f94564e9abe4daaa36f4554',1,'arm_float_to_q31(float32_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_float_to_q31.c'],['../group__float__to__x.html#ga177704107f94564e9abe4daaa36f4554',1,'arm_float_to_q31(float32_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_float_to_q31.c']]], + ['arm_5ffloat_5fto_5fq7',['arm_float_to_q7',['../group__float__to__x.html#ga44a393818cdee8dce80f2d66add25411',1,'arm_float_to_q7(float32_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_float_to_q7.c'],['../group__float__to__x.html#ga44a393818cdee8dce80f2d66add25411',1,'arm_float_to_q7(float32_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_float_to_q7.c']]], + ['arm_5fiir_5flattice_5ff32',['arm_iir_lattice_f32',['../group___i_i_r___lattice.html#ga56164a0fe48619b8ceec160347bdd2ff',1,'arm_iir_lattice_f32(const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_iir_lattice_f32.c'],['../group___i_i_r___lattice.html#ga56164a0fe48619b8ceec160347bdd2ff',1,'arm_iir_lattice_f32(const arm_iir_lattice_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_iir_lattice_f32.c']]], + ['arm_5fiir_5flattice_5finit_5ff32',['arm_iir_lattice_init_f32',['../group___i_i_r___lattice.html#gaed3b0230bb77439dc902daa625985e04',1,'arm_iir_lattice_init_f32(arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize): arm_iir_lattice_init_f32.c'],['../group___i_i_r___lattice.html#gaed3b0230bb77439dc902daa625985e04',1,'arm_iir_lattice_init_f32(arm_iir_lattice_instance_f32 *S, uint16_t numStages, float32_t *pkCoeffs, float32_t *pvCoeffs, float32_t *pState, uint32_t blockSize): arm_iir_lattice_init_f32.c']]], + ['arm_5fiir_5flattice_5finit_5fq15',['arm_iir_lattice_init_q15',['../group___i_i_r___lattice.html#ga1f4bc2dd3d5641e96815d3a5aad58998',1,'arm_iir_lattice_init_q15(arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize): arm_iir_lattice_init_q15.c'],['../group___i_i_r___lattice.html#ga1f4bc2dd3d5641e96815d3a5aad58998',1,'arm_iir_lattice_init_q15(arm_iir_lattice_instance_q15 *S, uint16_t numStages, q15_t *pkCoeffs, q15_t *pvCoeffs, q15_t *pState, uint32_t blockSize): arm_iir_lattice_init_q15.c']]], + ['arm_5fiir_5flattice_5finit_5fq31',['arm_iir_lattice_init_q31',['../group___i_i_r___lattice.html#gab686c14175581797d9c3ad7bf1d5cc1e',1,'arm_iir_lattice_init_q31(arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize): arm_iir_lattice_init_q31.c'],['../group___i_i_r___lattice.html#gab686c14175581797d9c3ad7bf1d5cc1e',1,'arm_iir_lattice_init_q31(arm_iir_lattice_instance_q31 *S, uint16_t numStages, q31_t *pkCoeffs, q31_t *pvCoeffs, q31_t *pState, uint32_t blockSize): arm_iir_lattice_init_q31.c']]], + ['arm_5fiir_5flattice_5fq15',['arm_iir_lattice_q15',['../group___i_i_r___lattice.html#gaeb9e9599a288832ed123183eaa8b294a',1,'arm_iir_lattice_q15(const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_iir_lattice_q15.c'],['../group___i_i_r___lattice.html#gaeb9e9599a288832ed123183eaa8b294a',1,'arm_iir_lattice_q15(const arm_iir_lattice_instance_q15 *S, q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_iir_lattice_q15.c']]], + ['arm_5fiir_5flattice_5fq31',['arm_iir_lattice_q31',['../group___i_i_r___lattice.html#ga123b26fa9156cd8d3622dd85931741ed',1,'arm_iir_lattice_q31(const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_iir_lattice_q31.c'],['../group___i_i_r___lattice.html#ga123b26fa9156cd8d3622dd85931741ed',1,'arm_iir_lattice_q31(const arm_iir_lattice_instance_q31 *S, q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_iir_lattice_q31.c']]], + ['arm_5finv_5fclarke_5ff32',['arm_inv_clarke_f32',['../group__inv__clarke.html#ga137f0396d837477b899ecae89f075a50',1,'arm_math.h']]], + ['arm_5finv_5fclarke_5fq31',['arm_inv_clarke_q31',['../group__inv__clarke.html#ga2d0c60f114f095a2f27442d98781ba02',1,'arm_math.h']]], + ['arm_5finv_5fpark_5ff32',['arm_inv_park_f32',['../group__inv__park.html#gaaf6bef0de21946f774d49df050dd8b05',1,'arm_math.h']]], + ['arm_5finv_5fpark_5fq31',['arm_inv_park_q31',['../group__inv__park.html#ga0b33822b988a15455773d28440c5579a',1,'arm_math.h']]], + ['arm_5flinear_5finterp_5ff32',['arm_linear_interp_f32',['../group___linear_interpolate.html#ga2269263d810cafcd19681957b37d5cf6',1,'arm_math.h']]], + ['arm_5flinear_5finterp_5fq15',['arm_linear_interp_q15',['../group___linear_interpolate.html#ga42c9206e5d2d22b8808716dc30622846',1,'arm_math.h']]], + ['arm_5flinear_5finterp_5fq31',['arm_linear_interp_q31',['../group___linear_interpolate.html#ga690e63e9a513ca0a741b1b174805d031',1,'arm_math.h']]], + ['arm_5flinear_5finterp_5fq7',['arm_linear_interp_q7',['../group___linear_interpolate.html#gacb0d44fe00aca0ba1d036d469a1763fc',1,'arm_math.h']]], + ['arm_5flms_5ff32',['arm_lms_f32',['../group___l_m_s.html#gae266d009e682180421601627c79a3843',1,'arm_lms_f32(const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_f32.c'],['../group___l_m_s.html#gae266d009e682180421601627c79a3843',1,'arm_lms_f32(const arm_lms_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_f32.c']]], + ['arm_5flms_5finit_5ff32',['arm_lms_init_f32',['../group___l_m_s.html#ga9fc7adca0966ff2cec1746fca8364cee',1,'arm_lms_init_f32(arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_init_f32.c'],['../group___l_m_s.html#ga9fc7adca0966ff2cec1746fca8364cee',1,'arm_lms_init_f32(arm_lms_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_init_f32.c']]], + ['arm_5flms_5finit_5fq15',['arm_lms_init_q15',['../group___l_m_s.html#ga9544cc26f18cd4465cfbed371be822b3',1,'arm_lms_init_q15(arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q15.c'],['../group___l_m_s.html#ga9544cc26f18cd4465cfbed371be822b3',1,'arm_lms_init_q15(arm_lms_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q15.c']]], + ['arm_5flms_5finit_5fq31',['arm_lms_init_q31',['../group___l_m_s.html#ga8d4bc251169f4b102355097a9f7530d6',1,'arm_lms_init_q31(arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q31.c'],['../group___l_m_s.html#ga8d4bc251169f4b102355097a9f7530d6',1,'arm_lms_init_q31(arm_lms_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint32_t postShift): arm_lms_init_q31.c']]], + ['arm_5flms_5fnorm_5ff32',['arm_lms_norm_f32',['../group___l_m_s___n_o_r_m.html#ga2418c929087c6eba719758eaae3f3300',1,'arm_lms_norm_f32(arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_norm_f32.c'],['../group___l_m_s___n_o_r_m.html#ga2418c929087c6eba719758eaae3f3300',1,'arm_lms_norm_f32(arm_lms_norm_instance_f32 *S, float32_t *pSrc, float32_t *pRef, float32_t *pOut, float32_t *pErr, uint32_t blockSize): arm_lms_norm_f32.c']]], + ['arm_5flms_5fnorm_5finit_5ff32',['arm_lms_norm_init_f32',['../group___l_m_s___n_o_r_m.html#gac7ccbaea863882056eee815456464670',1,'arm_lms_norm_init_f32(arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_norm_init_f32.c'],['../group___l_m_s___n_o_r_m.html#gac7ccbaea863882056eee815456464670',1,'arm_lms_norm_init_f32(arm_lms_norm_instance_f32 *S, uint16_t numTaps, float32_t *pCoeffs, float32_t *pState, float32_t mu, uint32_t blockSize): arm_lms_norm_init_f32.c']]], + ['arm_5flms_5fnorm_5finit_5fq15',['arm_lms_norm_init_q15',['../group___l_m_s___n_o_r_m.html#ga213ab1ee2e154cc2fa30d667b1994b89',1,'arm_lms_norm_init_q15(arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q15.c'],['../group___l_m_s___n_o_r_m.html#ga213ab1ee2e154cc2fa30d667b1994b89',1,'arm_lms_norm_init_q15(arm_lms_norm_instance_q15 *S, uint16_t numTaps, q15_t *pCoeffs, q15_t *pState, q15_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q15.c']]], + ['arm_5flms_5fnorm_5finit_5fq31',['arm_lms_norm_init_q31',['../group___l_m_s___n_o_r_m.html#ga1d9659dbbea4c89a7a9d14d5fc0dd490',1,'arm_lms_norm_init_q31(arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q31.c'],['../group___l_m_s___n_o_r_m.html#ga1d9659dbbea4c89a7a9d14d5fc0dd490',1,'arm_lms_norm_init_q31(arm_lms_norm_instance_q31 *S, uint16_t numTaps, q31_t *pCoeffs, q31_t *pState, q31_t mu, uint32_t blockSize, uint8_t postShift): arm_lms_norm_init_q31.c']]], + ['arm_5flms_5fnorm_5fq15',['arm_lms_norm_q15',['../group___l_m_s___n_o_r_m.html#gad47486a399dedb0bc85a5990ec5cf981',1,'arm_lms_norm_q15(arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_norm_q15.c'],['../group___l_m_s___n_o_r_m.html#gad47486a399dedb0bc85a5990ec5cf981',1,'arm_lms_norm_q15(arm_lms_norm_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_norm_q15.c']]], + ['arm_5flms_5fnorm_5fq31',['arm_lms_norm_q31',['../group___l_m_s___n_o_r_m.html#ga7128775e99817c183a7d7ad34e8b6e05',1,'arm_lms_norm_q31(arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_norm_q31.c'],['../group___l_m_s___n_o_r_m.html#ga7128775e99817c183a7d7ad34e8b6e05',1,'arm_lms_norm_q31(arm_lms_norm_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_norm_q31.c']]], + ['arm_5flms_5fq15',['arm_lms_q15',['../group___l_m_s.html#gacde16c17eb75979f81b34e2e2a58c7ac',1,'arm_lms_q15(const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_q15.c'],['../group___l_m_s.html#gacde16c17eb75979f81b34e2e2a58c7ac',1,'arm_lms_q15(const arm_lms_instance_q15 *S, q15_t *pSrc, q15_t *pRef, q15_t *pOut, q15_t *pErr, uint32_t blockSize): arm_lms_q15.c']]], + ['arm_5flms_5fq31',['arm_lms_q31',['../group___l_m_s.html#ga6a0abfe6041253a6f91c63b383a64257',1,'arm_lms_q31(const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_q31.c'],['../group___l_m_s.html#ga6a0abfe6041253a6f91c63b383a64257',1,'arm_lms_q31(const arm_lms_instance_q31 *S, q31_t *pSrc, q31_t *pRef, q31_t *pOut, q31_t *pErr, uint32_t blockSize): arm_lms_q31.c']]], + ['arm_5fmat_5fadd_5ff32',['arm_mat_add_f32',['../group___matrix_add.html#ga04bbf64a5f9c9e57dd1efb26a768aba1',1,'arm_mat_add_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_add_f32.c'],['../group___matrix_add.html#ga04bbf64a5f9c9e57dd1efb26a768aba1',1,'arm_mat_add_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_add_f32.c']]], + ['arm_5fmat_5fadd_5fq15',['arm_mat_add_q15',['../group___matrix_add.html#ga147e90b7c12a162735ab8824127a33ee',1,'arm_mat_add_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_add_q15.c'],['../group___matrix_add.html#ga147e90b7c12a162735ab8824127a33ee',1,'arm_mat_add_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_add_q15.c']]], + ['arm_5fmat_5fadd_5fq31',['arm_mat_add_q31',['../group___matrix_add.html#ga7d9d7d81a0832a17b831aad1e4a5dc16',1,'arm_mat_add_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_add_q31.c'],['../group___matrix_add.html#ga7d9d7d81a0832a17b831aad1e4a5dc16',1,'arm_mat_add_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_add_q31.c']]], + ['arm_5fmat_5fcmplx_5fmult_5ff32',['arm_mat_cmplx_mult_f32',['../group___cmplx_matrix_mult.html#ga1adb839ac84445b8c2f04efa43faef35',1,'arm_mat_cmplx_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_cmplx_mult_f32.c'],['../group___cmplx_matrix_mult.html#ga1adb839ac84445b8c2f04efa43faef35',1,'arm_mat_cmplx_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_cmplx_mult_f32.c']]], + ['arm_5fmat_5fcmplx_5fmult_5fq15',['arm_mat_cmplx_mult_q15',['../group___cmplx_matrix_mult.html#ga63066615e7d6f6a44f4358725092419e',1,'arm_mat_cmplx_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pScratch): arm_mat_cmplx_mult_q15.c'],['../group___cmplx_matrix_mult.html#ga63066615e7d6f6a44f4358725092419e',1,'arm_mat_cmplx_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pScratch): arm_mat_cmplx_mult_q15.c']]], + ['arm_5fmat_5fcmplx_5fmult_5fq31',['arm_mat_cmplx_mult_q31',['../group___cmplx_matrix_mult.html#gaaf3c0b171ca8412c77bab9fa90804737',1,'arm_mat_cmplx_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_cmplx_mult_q31.c'],['../group___cmplx_matrix_mult.html#gaaf3c0b171ca8412c77bab9fa90804737',1,'arm_mat_cmplx_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_cmplx_mult_q31.c']]], + ['arm_5fmat_5finit_5ff32',['arm_mat_init_f32',['../group___matrix_init.html#ga11e3dc41592a6401c13182fef9416a27',1,'arm_mat_init_f32(arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData): arm_mat_init_f32.c'],['../group___matrix_init.html#ga11e3dc41592a6401c13182fef9416a27',1,'arm_mat_init_f32(arm_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, float32_t *pData): arm_mat_init_f32.c']]], + ['arm_5fmat_5finit_5fq15',['arm_mat_init_q15',['../group___matrix_init.html#ga31a7c2b991803d49719393eb2d53dc26',1,'arm_mat_init_q15(arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData): arm_mat_init_q15.c'],['../group___matrix_init.html#ga31a7c2b991803d49719393eb2d53dc26',1,'arm_mat_init_q15(arm_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData): arm_mat_init_q15.c']]], + ['arm_5fmat_5finit_5fq31',['arm_mat_init_q31',['../group___matrix_init.html#ga48a5e5d37e1f062cc57fcfaf683343cc',1,'arm_mat_init_q31(arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData): arm_mat_init_q31.c'],['../group___matrix_init.html#ga48a5e5d37e1f062cc57fcfaf683343cc',1,'arm_mat_init_q31(arm_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData): arm_mat_init_q31.c']]], + ['arm_5fmat_5finverse_5ff32',['arm_mat_inverse_f32',['../group___matrix_inv.html#ga542be7aabbf7a2297a4b62cf212910e3',1,'arm_mat_inverse_f32(const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst): arm_mat_inverse_f32.c'],['../group___matrix_inv.html#ga542be7aabbf7a2297a4b62cf212910e3',1,'arm_mat_inverse_f32(const arm_matrix_instance_f32 *src, arm_matrix_instance_f32 *dst): arm_mat_inverse_f32.c']]], + ['arm_5fmat_5finverse_5ff64',['arm_mat_inverse_f64',['../group___matrix_inv.html#gaede2367c02df083cc915ddd5d8fae838',1,'arm_mat_inverse_f64(const arm_matrix_instance_f64 *pSrc, arm_matrix_instance_f64 *pDst): arm_mat_inverse_f64.c'],['../group___matrix_inv.html#gaede2367c02df083cc915ddd5d8fae838',1,'arm_mat_inverse_f64(const arm_matrix_instance_f64 *src, arm_matrix_instance_f64 *dst): arm_mat_inverse_f64.c']]], + ['arm_5fmat_5fmult_5ff32',['arm_mat_mult_f32',['../group___matrix_mult.html#ga917bf0270310c1d3f0eda1fc7c0026a0',1,'arm_mat_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_mult_f32.c'],['../group___matrix_mult.html#ga917bf0270310c1d3f0eda1fc7c0026a0',1,'arm_mat_mult_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_mult_f32.c']]], + ['arm_5fmat_5fmult_5ffast_5fq15',['arm_mat_mult_fast_q15',['../group___matrix_mult.html#ga08f37d93a5bfef0c5000dc5e0a411f93',1,'arm_mat_mult_fast_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState): arm_mat_mult_fast_q15.c'],['../group___matrix_mult.html#ga08f37d93a5bfef0c5000dc5e0a411f93',1,'arm_mat_mult_fast_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState): arm_mat_mult_fast_q15.c']]], + ['arm_5fmat_5fmult_5ffast_5fq31',['arm_mat_mult_fast_q31',['../group___matrix_mult.html#ga2785e8c1b785348b0c439b56aaf585a3',1,'arm_mat_mult_fast_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_fast_q31.c'],['../group___matrix_mult.html#ga2785e8c1b785348b0c439b56aaf585a3',1,'arm_mat_mult_fast_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_fast_q31.c']]], + ['arm_5fmat_5fmult_5fq15',['arm_mat_mult_q15',['../group___matrix_mult.html#ga3657b99a9667945373e520dbac0f4516',1,'arm_mat_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState CMSIS_UNUSED): arm_mat_mult_q15.c'],['../arm__math_8h.html#a7521d59196189bb6dde26e8cdfb66e21',1,'arm_mat_mult_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst, q15_t *pState): arm_math.h']]], + ['arm_5fmat_5fmult_5fq31',['arm_mat_mult_q31',['../group___matrix_mult.html#ga2ec612a8c2c4916477fb9bc1ab548a6e',1,'arm_mat_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_q31.c'],['../group___matrix_mult.html#ga2ec612a8c2c4916477fb9bc1ab548a6e',1,'arm_mat_mult_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_mult_q31.c']]], + ['arm_5fmat_5fscale_5ff32',['arm_mat_scale_f32',['../group___matrix_scale.html#ga9cb4e385b18c9a0b9cbc940c1067ca12',1,'arm_mat_scale_f32(const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst): arm_mat_scale_f32.c'],['../group___matrix_scale.html#ga9cb4e385b18c9a0b9cbc940c1067ca12',1,'arm_mat_scale_f32(const arm_matrix_instance_f32 *pSrc, float32_t scale, arm_matrix_instance_f32 *pDst): arm_mat_scale_f32.c']]], + ['arm_5fmat_5fscale_5fq15',['arm_mat_scale_q15',['../group___matrix_scale.html#ga7521769e2cf1c3d9c4656138cd2ae2ca',1,'arm_mat_scale_q15(const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst): arm_mat_scale_q15.c'],['../group___matrix_scale.html#ga7521769e2cf1c3d9c4656138cd2ae2ca',1,'arm_mat_scale_q15(const arm_matrix_instance_q15 *pSrc, q15_t scaleFract, int32_t shift, arm_matrix_instance_q15 *pDst): arm_mat_scale_q15.c']]], + ['arm_5fmat_5fscale_5fq31',['arm_mat_scale_q31',['../group___matrix_scale.html#ga609743821ee81fa8c34c4bcdc1ed9744',1,'arm_mat_scale_q31(const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst): arm_mat_scale_q31.c'],['../group___matrix_scale.html#ga609743821ee81fa8c34c4bcdc1ed9744',1,'arm_mat_scale_q31(const arm_matrix_instance_q31 *pSrc, q31_t scaleFract, int32_t shift, arm_matrix_instance_q31 *pDst): arm_mat_scale_q31.c']]], + ['arm_5fmat_5fsub_5ff32',['arm_mat_sub_f32',['../group___matrix_sub.html#gac8b72fb70246ccfee3b372002345732c',1,'arm_mat_sub_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_sub_f32.c'],['../group___matrix_sub.html#gac8b72fb70246ccfee3b372002345732c',1,'arm_mat_sub_f32(const arm_matrix_instance_f32 *pSrcA, const arm_matrix_instance_f32 *pSrcB, arm_matrix_instance_f32 *pDst): arm_mat_sub_f32.c']]], + ['arm_5fmat_5fsub_5fq15',['arm_mat_sub_q15',['../group___matrix_sub.html#gaf647776a425b7f9dd0aca3e11d81f02f',1,'arm_mat_sub_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_sub_q15.c'],['../group___matrix_sub.html#gaf647776a425b7f9dd0aca3e11d81f02f',1,'arm_mat_sub_q15(const arm_matrix_instance_q15 *pSrcA, const arm_matrix_instance_q15 *pSrcB, arm_matrix_instance_q15 *pDst): arm_mat_sub_q15.c']]], + ['arm_5fmat_5fsub_5fq31',['arm_mat_sub_q31',['../group___matrix_sub.html#ga39f42e0e3b7f115fbb909d6ff4e1329d',1,'arm_mat_sub_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_sub_q31.c'],['../group___matrix_sub.html#ga39f42e0e3b7f115fbb909d6ff4e1329d',1,'arm_mat_sub_q31(const arm_matrix_instance_q31 *pSrcA, const arm_matrix_instance_q31 *pSrcB, arm_matrix_instance_q31 *pDst): arm_mat_sub_q31.c']]], + ['arm_5fmat_5ftrans_5ff32',['arm_mat_trans_f32',['../group___matrix_trans.html#gad7dd9f108429da13d3864696ceeec789',1,'arm_mat_trans_f32(const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst): arm_mat_trans_f32.c'],['../group___matrix_trans.html#gad7dd9f108429da13d3864696ceeec789',1,'arm_mat_trans_f32(const arm_matrix_instance_f32 *pSrc, arm_matrix_instance_f32 *pDst): arm_mat_trans_f32.c']]], + ['arm_5fmat_5ftrans_5fq15',['arm_mat_trans_q15',['../group___matrix_trans.html#ga4f4f821cc695fd0ef9061d702e08050a',1,'arm_mat_trans_q15(const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst): arm_mat_trans_q15.c'],['../group___matrix_trans.html#ga4f4f821cc695fd0ef9061d702e08050a',1,'arm_mat_trans_q15(const arm_matrix_instance_q15 *pSrc, arm_matrix_instance_q15 *pDst): arm_mat_trans_q15.c']]], + ['arm_5fmat_5ftrans_5fq31',['arm_mat_trans_q31',['../group___matrix_trans.html#ga30a4d49489ac67ff98a46b9f58f73bf1',1,'arm_mat_trans_q31(const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst): arm_mat_trans_q31.c'],['../group___matrix_trans.html#ga30a4d49489ac67ff98a46b9f58f73bf1',1,'arm_mat_trans_q31(const arm_matrix_instance_q31 *pSrc, arm_matrix_instance_q31 *pDst): arm_mat_trans_q31.c']]], + ['arm_5fmax_5ff32',['arm_max_f32',['../group___max.html#ga5b89d1b04575aeec494f678695fb87d8',1,'arm_max_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_max_f32.c'],['../group___max.html#ga5b89d1b04575aeec494f678695fb87d8',1,'arm_max_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_max_f32.c']]], + ['arm_5fmax_5fq15',['arm_max_q15',['../group___max.html#gac132856c68f4bf2a056eaad5921c7880',1,'arm_max_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_max_q15.c'],['../group___max.html#gac132856c68f4bf2a056eaad5921c7880',1,'arm_max_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_max_q15.c']]], + ['arm_5fmax_5fq31',['arm_max_q31',['../group___max.html#gaff7cbd4e955382def06724cc4cc85795',1,'arm_max_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_max_q31.c'],['../group___max.html#gaff7cbd4e955382def06724cc4cc85795',1,'arm_max_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_max_q31.c']]], + ['arm_5fmax_5fq7',['arm_max_q7',['../group___max.html#ga6afd64d381b5c232de59163ebfe71e35',1,'arm_max_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex): arm_max_q7.c'],['../group___max.html#ga6afd64d381b5c232de59163ebfe71e35',1,'arm_max_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex): arm_max_q7.c']]], + ['arm_5fmean_5ff32',['arm_mean_f32',['../group__mean.html#ga74ce08c49ab61e57bd50c3a0ca1fdb2b',1,'arm_mean_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_mean_f32.c'],['../group__mean.html#ga74ce08c49ab61e57bd50c3a0ca1fdb2b',1,'arm_mean_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_mean_f32.c']]], + ['arm_5fmean_5fq15',['arm_mean_q15',['../group__mean.html#gac882495d5f098819fd3939c1ef7795b3',1,'arm_mean_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_mean_q15.c'],['../group__mean.html#gac882495d5f098819fd3939c1ef7795b3',1,'arm_mean_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_mean_q15.c']]], + ['arm_5fmean_5fq31',['arm_mean_q31',['../group__mean.html#gacf2526d8c2d75e486e8f0b0e31877ad0',1,'arm_mean_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_mean_q31.c'],['../group__mean.html#gacf2526d8c2d75e486e8f0b0e31877ad0',1,'arm_mean_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_mean_q31.c']]], + ['arm_5fmean_5fq7',['arm_mean_q7',['../group__mean.html#gaebc707ee539020357c25da4c75b52eb7',1,'arm_mean_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult): arm_mean_q7.c'],['../group__mean.html#gaebc707ee539020357c25da4c75b52eb7',1,'arm_mean_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult): arm_mean_q7.c']]], + ['arm_5fmin_5ff32',['arm_min_f32',['../group___min.html#gaf62b1673740fc516ea64daf777b7d74a',1,'arm_min_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_min_f32.c'],['../group___min.html#gaf62b1673740fc516ea64daf777b7d74a',1,'arm_min_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult, uint32_t *pIndex): arm_min_f32.c']]], + ['arm_5fmin_5fq15',['arm_min_q15',['../group___min.html#gad065e37535ebb726750ac1545cb3fa6f',1,'arm_min_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_min_q15.c'],['../group___min.html#gad065e37535ebb726750ac1545cb3fa6f',1,'arm_min_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult, uint32_t *pIndex): arm_min_q15.c']]], + ['arm_5fmin_5fq31',['arm_min_q31',['../group___min.html#gab20faeceb5ff5d2d9dd628c2ecf41303',1,'arm_min_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_min_q31.c'],['../group___min.html#gab20faeceb5ff5d2d9dd628c2ecf41303',1,'arm_min_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult, uint32_t *pIndex): arm_min_q31.c']]], + ['arm_5fmin_5fq7',['arm_min_q7',['../group___min.html#ga3631d38ac8d715fc14f6f1b343f4c4ed',1,'arm_min_q7(q7_t *pSrc, uint32_t blockSize, q7_t *pResult, uint32_t *pIndex): arm_min_q7.c'],['../group___min.html#ga3631d38ac8d715fc14f6f1b343f4c4ed',1,'arm_min_q7(q7_t *pSrc, uint32_t blockSize, q7_t *result, uint32_t *index): arm_min_q7.c']]], + ['arm_5fmult_5ff32',['arm_mult_f32',['../group___basic_mult.html#gaca3f0b8227da431ab29225b88888aa32',1,'arm_mult_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_mult_f32.c'],['../group___basic_mult.html#gaca3f0b8227da431ab29225b88888aa32',1,'arm_mult_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_mult_f32.c']]], + ['arm_5fmult_5fq15',['arm_mult_q15',['../group___basic_mult.html#gafb0778d27ed98a2a6f2ecb7d48cc8c75',1,'arm_mult_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_mult_q15.c'],['../group___basic_mult.html#gafb0778d27ed98a2a6f2ecb7d48cc8c75',1,'arm_mult_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_mult_q15.c']]], + ['arm_5fmult_5fq31',['arm_mult_q31',['../group___basic_mult.html#ga3528c0f54a0607acc603f0490d3ca6c6',1,'arm_mult_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_mult_q31.c'],['../group___basic_mult.html#ga3528c0f54a0607acc603f0490d3ca6c6',1,'arm_mult_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_mult_q31.c']]], + ['arm_5fmult_5fq7',['arm_mult_q7',['../group___basic_mult.html#ga16677275ed83ff0878da531e875c27ef',1,'arm_mult_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_mult_q7.c'],['../group___basic_mult.html#ga16677275ed83ff0878da531e875c27ef',1,'arm_mult_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_mult_q7.c']]], + ['arm_5fnegate_5ff32',['arm_negate_f32',['../group__negate.html#ga2e169c4de6cc6e3ba4be9473531e6657',1,'arm_negate_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_negate_f32.c'],['../group__negate.html#ga2e169c4de6cc6e3ba4be9473531e6657',1,'arm_negate_f32(float32_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_negate_f32.c']]], + ['arm_5fnegate_5fq15',['arm_negate_q15',['../group__negate.html#ga0239a833d72cf00290b9723c394e5042',1,'arm_negate_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_negate_q15.c'],['../group__negate.html#ga0239a833d72cf00290b9723c394e5042',1,'arm_negate_q15(q15_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_negate_q15.c']]], + ['arm_5fnegate_5fq31',['arm_negate_q31',['../group__negate.html#ga2784c6887686a73dc7c364e2e41c776c',1,'arm_negate_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_negate_q31.c'],['../group__negate.html#ga2784c6887686a73dc7c364e2e41c776c',1,'arm_negate_q31(q31_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_negate_q31.c']]], + ['arm_5fnegate_5fq7',['arm_negate_q7',['../group__negate.html#gaae78fc079a43bdaa3055f9b32e2a1f4c',1,'arm_negate_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_negate_q7.c'],['../group__negate.html#gaae78fc079a43bdaa3055f9b32e2a1f4c',1,'arm_negate_q7(q7_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_negate_q7.c']]], + ['arm_5foffset_5ff32',['arm_offset_f32',['../group__offset.html#ga989dfae15235799d82f62ef9d356abb4',1,'arm_offset_f32(float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize): arm_offset_f32.c'],['../group__offset.html#ga989dfae15235799d82f62ef9d356abb4',1,'arm_offset_f32(float32_t *pSrc, float32_t offset, float32_t *pDst, uint32_t blockSize): arm_offset_f32.c']]], + ['arm_5foffset_5fq15',['arm_offset_q15',['../group__offset.html#gab4c1d2391b599549e5a06fdfbc2747bf',1,'arm_offset_q15(q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize): arm_offset_q15.c'],['../group__offset.html#gab4c1d2391b599549e5a06fdfbc2747bf',1,'arm_offset_q15(q15_t *pSrc, q15_t offset, q15_t *pDst, uint32_t blockSize): arm_offset_q15.c']]], + ['arm_5foffset_5fq31',['arm_offset_q31',['../group__offset.html#gac84ec42cbbebc5c197a87d0221819acf',1,'arm_offset_q31(q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize): arm_offset_q31.c'],['../group__offset.html#gac84ec42cbbebc5c197a87d0221819acf',1,'arm_offset_q31(q31_t *pSrc, q31_t offset, q31_t *pDst, uint32_t blockSize): arm_offset_q31.c']]], + ['arm_5foffset_5fq7',['arm_offset_q7',['../group__offset.html#ga00bd9cc17c5bf905e76c91ad50886393',1,'arm_offset_q7(q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize): arm_offset_q7.c'],['../group__offset.html#ga00bd9cc17c5bf905e76c91ad50886393',1,'arm_offset_q7(q7_t *pSrc, q7_t offset, q7_t *pDst, uint32_t blockSize): arm_offset_q7.c']]], + ['arm_5fpark_5ff32',['arm_park_f32',['../group__park.html#ga08b3a683197de7e143fb00497787683c',1,'arm_math.h']]], + ['arm_5fpark_5fq31',['arm_park_q31',['../group__park.html#gaf4cc6370c0cfc14ea66774ed3c5bb10f',1,'arm_math.h']]], + ['arm_5fpid_5ff32',['arm_pid_f32',['../group___p_i_d.html#gac5c79ed46abf2d72b8cf41fa6c708bda',1,'arm_math.h']]], + ['arm_5fpid_5finit_5ff32',['arm_pid_init_f32',['../group___p_i_d.html#gae31536b19b82b93ed184fb1ab73cfcb3',1,'arm_pid_init_f32(arm_pid_instance_f32 *S, int32_t resetStateFlag): arm_pid_init_f32.c'],['../group___p_i_d.html#gae31536b19b82b93ed184fb1ab73cfcb3',1,'arm_pid_init_f32(arm_pid_instance_f32 *S, int32_t resetStateFlag): arm_pid_init_f32.c']]], + ['arm_5fpid_5finit_5fq15',['arm_pid_init_q15',['../group___p_i_d.html#ga2cb1e3d3ebb167348fdabec74653d5c3',1,'arm_pid_init_q15(arm_pid_instance_q15 *S, int32_t resetStateFlag): arm_pid_init_q15.c'],['../group___p_i_d.html#ga2cb1e3d3ebb167348fdabec74653d5c3',1,'arm_pid_init_q15(arm_pid_instance_q15 *S, int32_t resetStateFlag): arm_pid_init_q15.c']]], + ['arm_5fpid_5finit_5fq31',['arm_pid_init_q31',['../group___p_i_d.html#gad9d88485234fa9460b1ce9e64989ac86',1,'arm_pid_init_q31(arm_pid_instance_q31 *S, int32_t resetStateFlag): arm_pid_init_q31.c'],['../group___p_i_d.html#gad9d88485234fa9460b1ce9e64989ac86',1,'arm_pid_init_q31(arm_pid_instance_q31 *S, int32_t resetStateFlag): arm_pid_init_q31.c']]], + ['arm_5fpid_5fq15',['arm_pid_q15',['../group___p_i_d.html#ga084f646bbb20d55f225c3efafcf7fc1f',1,'arm_math.h']]], + ['arm_5fpid_5fq31',['arm_pid_q31',['../group___p_i_d.html#ga5f6f941e7ae981728dd3a662f8f4ecd7',1,'arm_math.h']]], + ['arm_5fpid_5freset_5ff32',['arm_pid_reset_f32',['../group___p_i_d.html#ga9ec860bcb6f8ca31205bf0f1b51ab723',1,'arm_pid_reset_f32(arm_pid_instance_f32 *S): arm_pid_reset_f32.c'],['../group___p_i_d.html#ga9ec860bcb6f8ca31205bf0f1b51ab723',1,'arm_pid_reset_f32(arm_pid_instance_f32 *S): arm_pid_reset_f32.c']]], + ['arm_5fpid_5freset_5fq15',['arm_pid_reset_q15',['../group___p_i_d.html#ga408566dacb4fa6e0458b2c75672e525f',1,'arm_pid_reset_q15(arm_pid_instance_q15 *S): arm_pid_reset_q15.c'],['../group___p_i_d.html#ga408566dacb4fa6e0458b2c75672e525f',1,'arm_pid_reset_q15(arm_pid_instance_q15 *S): arm_pid_reset_q15.c']]], + ['arm_5fpid_5freset_5fq31',['arm_pid_reset_q31',['../group___p_i_d.html#gaeecbacd3fb37c608ec25474d3a0dffa9',1,'arm_pid_reset_q31(arm_pid_instance_q31 *S): arm_pid_reset_q31.c'],['../group___p_i_d.html#gaeecbacd3fb37c608ec25474d3a0dffa9',1,'arm_pid_reset_q31(arm_pid_instance_q31 *S): arm_pid_reset_q31.c']]], + ['arm_5fpower_5ff32',['arm_power_f32',['../group__power.html#ga993c00dd7f661d66bdb6e58426e893aa',1,'arm_power_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_power_f32.c'],['../group__power.html#ga993c00dd7f661d66bdb6e58426e893aa',1,'arm_power_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_power_f32.c']]], + ['arm_5fpower_5fq15',['arm_power_q15',['../group__power.html#ga7050c04b7515e01a75c38f1abbaf71ba',1,'arm_power_q15(q15_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q15.c'],['../group__power.html#ga7050c04b7515e01a75c38f1abbaf71ba',1,'arm_power_q15(q15_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q15.c']]], + ['arm_5fpower_5fq31',['arm_power_q31',['../group__power.html#ga0b93d31bb5b5ed214c2b94d8a7744cd2',1,'arm_power_q31(q31_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q31.c'],['../group__power.html#ga0b93d31bb5b5ed214c2b94d8a7744cd2',1,'arm_power_q31(q31_t *pSrc, uint32_t blockSize, q63_t *pResult): arm_power_q31.c']]], + ['arm_5fpower_5fq7',['arm_power_q7',['../group__power.html#gaf969c85c5655e3d72d7b99ff188f92c9',1,'arm_power_q7(q7_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_power_q7.c'],['../group__power.html#gaf969c85c5655e3d72d7b99ff188f92c9',1,'arm_power_q7(q7_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_power_q7.c']]], + ['arm_5fprovide_5fguard_5fbits_5fq15',['arm_provide_guard_bits_q15',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#ac8209be1b8081e833c3ec2e85ad2255b',1,'arm_provide_guard_bits_q15(q15_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c']]], + ['arm_5fprovide_5fguard_5fbits_5fq31',['arm_provide_guard_bits_q31',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#aead320f821f927000386d9d7d5ad6d27',1,'arm_provide_guard_bits_q31(q31_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c']]], + ['arm_5fprovide_5fguard_5fbits_5fq7',['arm_provide_guard_bits_q7',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#a392f7c2e7ab9bb58931c4efb56693029',1,'arm_provide_guard_bits_q7(q7_t *input_buf, uint32_t blockSize, uint32_t guard_bits): math_helper.c']]], + ['arm_5fq15_5fto_5ffloat',['arm_q15_to_float',['../group__q15__to__x.html#gaf8b0d2324de273fc430b0e61ad4e9eb2',1,'arm_q15_to_float(q15_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q15_to_float.c'],['../group__q15__to__x.html#gaf8b0d2324de273fc430b0e61ad4e9eb2',1,'arm_q15_to_float(q15_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q15_to_float.c']]], + ['arm_5fq15_5fto_5fq31',['arm_q15_to_q31',['../group__q15__to__x.html#ga7ba2d87366990ad5380439e2b4a4c0a5',1,'arm_q15_to_q31(q15_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q15_to_q31.c'],['../group__q15__to__x.html#ga7ba2d87366990ad5380439e2b4a4c0a5',1,'arm_q15_to_q31(q15_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q15_to_q31.c']]], + ['arm_5fq15_5fto_5fq7',['arm_q15_to_q7',['../group__q15__to__x.html#ga8fb31855ff8cce09c2ec9308f48ded69',1,'arm_q15_to_q7(q15_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q15_to_q7.c'],['../group__q15__to__x.html#ga8fb31855ff8cce09c2ec9308f48ded69',1,'arm_q15_to_q7(q15_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q15_to_q7.c']]], + ['arm_5fq31_5fto_5ffloat',['arm_q31_to_float',['../group__q31__to__x.html#gacf407b007a37da18e99dabd9023c56b4',1,'arm_q31_to_float(q31_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q31_to_float.c'],['../group__q31__to__x.html#gacf407b007a37da18e99dabd9023c56b4',1,'arm_q31_to_float(q31_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q31_to_float.c']]], + ['arm_5fq31_5fto_5fq15',['arm_q31_to_q15',['../group__q31__to__x.html#ga901dede4661365c9e7c630d3eb31c32c',1,'arm_q31_to_q15(q31_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q31_to_q15.c'],['../group__q31__to__x.html#ga901dede4661365c9e7c630d3eb31c32c',1,'arm_q31_to_q15(q31_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q31_to_q15.c']]], + ['arm_5fq31_5fto_5fq7',['arm_q31_to_q7',['../group__q31__to__x.html#ga7f297d1a7d776805395095fdb24a8071',1,'arm_q31_to_q7(q31_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q31_to_q7.c'],['../group__q31__to__x.html#ga7f297d1a7d776805395095fdb24a8071',1,'arm_q31_to_q7(q31_t *pSrc, q7_t *pDst, uint32_t blockSize): arm_q31_to_q7.c']]], + ['arm_5fq7_5fto_5ffloat',['arm_q7_to_float',['../group__q7__to__x.html#ga656620f957b65512ed83db03fd455ec5',1,'arm_q7_to_float(q7_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q7_to_float.c'],['../group__q7__to__x.html#ga656620f957b65512ed83db03fd455ec5',1,'arm_q7_to_float(q7_t *pSrc, float32_t *pDst, uint32_t blockSize): arm_q7_to_float.c']]], + ['arm_5fq7_5fto_5fq15',['arm_q7_to_q15',['../group__q7__to__x.html#gabc02597fc3f01033daf43ec0547a2f78',1,'arm_q7_to_q15(q7_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q7_to_q15.c'],['../group__q7__to__x.html#gabc02597fc3f01033daf43ec0547a2f78',1,'arm_q7_to_q15(q7_t *pSrc, q15_t *pDst, uint32_t blockSize): arm_q7_to_q15.c']]], + ['arm_5fq7_5fto_5fq31',['arm_q7_to_q31',['../group__q7__to__x.html#gad8958cd3cb7f521466168b46a25b7908',1,'arm_q7_to_q31(q7_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q7_to_q31.c'],['../group__q7__to__x.html#gad8958cd3cb7f521466168b46a25b7908',1,'arm_q7_to_q31(q7_t *pSrc, q31_t *pDst, uint32_t blockSize): arm_q7_to_q31.c']]], + ['arm_5fradix2_5fbutterfly_5ff32',['arm_radix2_butterfly_f32',['../arm__cfft__radix2__f32_8c.html#a04631e102b5209af3402b225b1abe868',1,'arm_cfft_radix2_f32.c']]], + ['arm_5fradix2_5fbutterfly_5finverse_5ff32',['arm_radix2_butterfly_inverse_f32',['../arm__cfft__radix2__f32_8c.html#abda34af152e515a95ac38470ac053b77',1,'arm_cfft_radix2_f32.c']]], + ['arm_5fradix2_5fbutterfly_5finverse_5fq15',['arm_radix2_butterfly_inverse_q15',['../arm__cfft__radix2__q15_8c.html#a91ff93fa10757b3872680fec4835c412',1,'arm_cfft_radix2_q15.c']]], + ['arm_5fradix2_5fbutterfly_5finverse_5fq31',['arm_radix2_butterfly_inverse_q31',['../arm__cfft__radix2__q31_8c.html#a4d665f67080455b95cafec04009fd52d',1,'arm_cfft_radix2_q31.c']]], + ['arm_5fradix2_5fbutterfly_5fq15',['arm_radix2_butterfly_q15',['../arm__cfft__radix2__q15_8c.html#a521780ba2fd3450cbf02784e38859699',1,'arm_cfft_radix2_q15.c']]], + ['arm_5fradix2_5fbutterfly_5fq31',['arm_radix2_butterfly_q31',['../arm__cfft__radix2__q31_8c.html#a740f4fe69e6148d22fc99f374d304e7e',1,'arm_cfft_radix2_q31.c']]], + ['arm_5fradix4_5fbutterfly_5ff32',['arm_radix4_butterfly_f32',['../group__group_transforms.html#gae239ddf995d1607115f9e84d5c069b9c',1,'arm_radix4_butterfly_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix4_f32.c'],['../group__group_transforms.html#gae239ddf995d1607115f9e84d5c069b9c',1,'arm_radix4_butterfly_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix4_f32.c']]], + ['arm_5fradix4_5fbutterfly_5finverse_5ff32',['arm_radix4_butterfly_inverse_f32',['../arm__cfft__radix4__f32_8c.html#a2a78df6e4bbf080624f2b6349224ec93',1,'arm_radix4_butterfly_inverse_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen): arm_cfft_radix4_f32.c'],['../arm__rfft__f32_8c.html#a2a78df6e4bbf080624f2b6349224ec93',1,'arm_radix4_butterfly_inverse_f32(float32_t *pSrc, uint16_t fftLen, float32_t *pCoef, uint16_t twidCoefModifier, float32_t onebyfftLen): arm_cfft_radix4_f32.c']]], + ['arm_5fradix4_5fbutterfly_5finverse_5fq15',['arm_radix4_butterfly_inverse_q15',['../arm__cfft__q15_8c.html#a734ecff00f21a6a10e9ec437c8987eb1',1,'arm_radix4_butterfly_inverse_q15(q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c'],['../arm__cfft__radix4__q15_8c.html#aad04e8439d17dab5617bf1be268bb391',1,'arm_radix4_butterfly_inverse_q15(q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c']]], + ['arm_5fradix4_5fbutterfly_5finverse_5fq31',['arm_radix4_butterfly_inverse_q31',['../arm__cfft__q31_8c.html#ac9c7c553114c1201a3a987a11b8a6d01',1,'arm_radix4_butterfly_inverse_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c'],['../arm__cfft__radix4__q31_8c.html#ac9c7c553114c1201a3a987a11b8a6d01',1,'arm_radix4_butterfly_inverse_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c']]], + ['arm_5fradix4_5fbutterfly_5fq15',['arm_radix4_butterfly_q15',['../arm__cfft__q15_8c.html#abf1a2f9aa9f44ad5da1f0dbae8b54f2f',1,'arm_radix4_butterfly_q15(q15_t *pSrc, uint32_t fftLen, q15_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c'],['../arm__cfft__radix4__q15_8c.html#a2d01d2045f280c32036da97d33c52440',1,'arm_radix4_butterfly_q15(q15_t *pSrc16, uint32_t fftLen, q15_t *pCoef16, uint32_t twidCoefModifier): arm_cfft_radix4_q15.c']]], + ['arm_5fradix4_5fbutterfly_5fq31',['arm_radix4_butterfly_q31',['../arm__cfft__q31_8c.html#ac12f1e7f159d5741358cdc36830a0395',1,'arm_radix4_butterfly_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c'],['../arm__cfft__radix4__q31_8c.html#ac12f1e7f159d5741358cdc36830a0395',1,'arm_radix4_butterfly_q31(q31_t *pSrc, uint32_t fftLen, q31_t *pCoef, uint32_t twidCoefModifier): arm_cfft_radix4_q31.c']]], + ['arm_5fradix8_5fbutterfly_5ff32',['arm_radix8_butterfly_f32',['../arm__cfft__f32_8c.html#a72350c6eaa1eef8796ab43c1497c6b9c',1,'arm_radix8_butterfly_f32(float32_t *pSrc, uint16_t fftLen, const float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix8_f32.c'],['../arm__cfft__radix8__f32_8c.html#a72350c6eaa1eef8796ab43c1497c6b9c',1,'arm_radix8_butterfly_f32(float32_t *pSrc, uint16_t fftLen, const float32_t *pCoef, uint16_t twidCoefModifier): arm_cfft_radix8_f32.c']]], + ['arm_5frecip_5fq15',['arm_recip_q15',['../arm__math_8h.html#a1c66e370a6ae91aaafbaec5e979198d7',1,'arm_math.h']]], + ['arm_5frecip_5fq31',['arm_recip_q31',['../arm__math_8h.html#a43140f04ca94c2a7394e7a222e2d8fb4',1,'arm_math.h']]], + ['arm_5frfft_5ff32',['arm_rfft_f32',['../group___real_f_f_t.html#ga3df1766d230532bc068fc4ed69d0fcdc',1,'arm_rfft_f32(const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst): arm_rfft_f32.c'],['../group___real_f_f_t.html#ga3df1766d230532bc068fc4ed69d0fcdc',1,'arm_rfft_f32(const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst): arm_rfft_f32.c']]], + ['arm_5frfft_5ffast_5ff32',['arm_rfft_fast_f32',['../group___real_f_f_t.html#ga180d8b764d59cbb85d37a2d5f7cd9799',1,'arm_rfft_fast_f32(arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag): arm_rfft_fast_f32.c'],['../group___real_f_f_t.html#ga180d8b764d59cbb85d37a2d5f7cd9799',1,'arm_rfft_fast_f32(arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag): arm_rfft_fast_f32.c']]], + ['arm_5frfft_5ffast_5finit_5ff32',['arm_rfft_fast_init_f32',['../group___real_f_f_t.html#gac5fceb172551e7c11eb4d0e17ef15aa3',1,'arm_rfft_fast_init_f32(arm_rfft_fast_instance_f32 *S, uint16_t fftLen): arm_rfft_fast_init_f32.c'],['../group___real_f_f_t.html#gac5fceb172551e7c11eb4d0e17ef15aa3',1,'arm_rfft_fast_init_f32(arm_rfft_fast_instance_f32 *S, uint16_t fftLen): arm_rfft_fast_init_f32.c']]], + ['arm_5frfft_5finit_5ff32',['arm_rfft_init_f32',['../group___real_f_f_t.html#ga10717ee326bf50832ef1c25b85a23068',1,'arm_rfft_init_f32(arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_f32.c'],['../group___real_f_f_t.html#ga10717ee326bf50832ef1c25b85a23068',1,'arm_rfft_init_f32(arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_f32.c']]], + ['arm_5frfft_5finit_5fq15',['arm_rfft_init_q15',['../group___real_f_f_t.html#ga053450cc600a55410ba5b5605e96245d',1,'arm_rfft_init_q15(arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q15.c'],['../group___real_f_f_t.html#ga053450cc600a55410ba5b5605e96245d',1,'arm_rfft_init_q15(arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q15.c']]], + ['arm_5frfft_5finit_5fq31',['arm_rfft_init_q31',['../group___real_f_f_t.html#ga5abde938abbe72e95c5bab080eb33c45',1,'arm_rfft_init_q31(arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q31.c'],['../group___real_f_f_t.html#ga5abde938abbe72e95c5bab080eb33c45',1,'arm_rfft_init_q31(arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag): arm_rfft_init_q31.c']]], + ['arm_5frfft_5fq15',['arm_rfft_q15',['../group___real_f_f_t.html#ga00e615f5db21736ad5b27fb6146f3fc5',1,'arm_rfft_q15(const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst): arm_rfft_q15.c'],['../group___real_f_f_t.html#ga00e615f5db21736ad5b27fb6146f3fc5',1,'arm_rfft_q15(const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst): arm_rfft_q15.c']]], + ['arm_5frfft_5fq31',['arm_rfft_q31',['../group___real_f_f_t.html#gabaeab5646aeea9844e6d42ca8c73fe3a',1,'arm_rfft_q31(const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst): arm_rfft_q31.c'],['../group___real_f_f_t.html#gabaeab5646aeea9844e6d42ca8c73fe3a',1,'arm_rfft_q31(const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst): arm_rfft_q31.c']]], + ['arm_5frms_5ff32',['arm_rms_f32',['../group___r_m_s.html#ga0e3ab1b57da32d45388d1fa90d7fd88c',1,'arm_rms_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_rms_f32.c'],['../group___r_m_s.html#ga0e3ab1b57da32d45388d1fa90d7fd88c',1,'arm_rms_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_rms_f32.c']]], + ['arm_5frms_5fq15',['arm_rms_q15',['../group___r_m_s.html#gaf5b836b72dda9e5dfbbd17c7906fd13f',1,'arm_rms_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_rms_q15.c'],['../group___r_m_s.html#gaf5b836b72dda9e5dfbbd17c7906fd13f',1,'arm_rms_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_rms_q15.c']]], + ['arm_5frms_5fq31',['arm_rms_q31',['../group___r_m_s.html#gae33015fda23fc44e7ead5e5ed7e8d314',1,'arm_rms_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_rms_q31.c'],['../group___r_m_s.html#gae33015fda23fc44e7ead5e5ed7e8d314',1,'arm_rms_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_rms_q31.c']]], + ['arm_5fscale_5ff32',['arm_scale_f32',['../group__scale.html#ga3487af88b112f682ee90589cd419e123',1,'arm_scale_f32(float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize): arm_scale_f32.c'],['../group__scale.html#ga3487af88b112f682ee90589cd419e123',1,'arm_scale_f32(float32_t *pSrc, float32_t scale, float32_t *pDst, uint32_t blockSize): arm_scale_f32.c']]], + ['arm_5fscale_5fq15',['arm_scale_q15',['../group__scale.html#gafaac0e1927daffeb68a42719b53ea780',1,'arm_scale_q15(q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize): arm_scale_q15.c'],['../group__scale.html#gafaac0e1927daffeb68a42719b53ea780',1,'arm_scale_q15(q15_t *pSrc, q15_t scaleFract, int8_t shift, q15_t *pDst, uint32_t blockSize): arm_scale_q15.c']]], + ['arm_5fscale_5fq31',['arm_scale_q31',['../group__scale.html#ga83e36cd82bf51ce35406a199e477d47c',1,'arm_scale_q31(q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize): arm_scale_q31.c'],['../group__scale.html#ga83e36cd82bf51ce35406a199e477d47c',1,'arm_scale_q31(q31_t *pSrc, q31_t scaleFract, int8_t shift, q31_t *pDst, uint32_t blockSize): arm_scale_q31.c']]], + ['arm_5fscale_5fq7',['arm_scale_q7',['../group__scale.html#gabc9fd3d37904c58df56492b351d21fb0',1,'arm_scale_q7(q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize): arm_scale_q7.c'],['../group__scale.html#gabc9fd3d37904c58df56492b351d21fb0',1,'arm_scale_q7(q7_t *pSrc, q7_t scaleFract, int8_t shift, q7_t *pDst, uint32_t blockSize): arm_scale_q7.c']]], + ['arm_5fshift_5fq15',['arm_shift_q15',['../group__shift.html#gaa1757e53279780107acc92cf100adb61',1,'arm_shift_q15(q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize): arm_shift_q15.c'],['../group__shift.html#gaa1757e53279780107acc92cf100adb61',1,'arm_shift_q15(q15_t *pSrc, int8_t shiftBits, q15_t *pDst, uint32_t blockSize): arm_shift_q15.c']]], + ['arm_5fshift_5fq31',['arm_shift_q31',['../group__shift.html#ga387dd8b7b87377378280978f16cdb13d',1,'arm_shift_q31(q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize): arm_shift_q31.c'],['../group__shift.html#ga387dd8b7b87377378280978f16cdb13d',1,'arm_shift_q31(q31_t *pSrc, int8_t shiftBits, q31_t *pDst, uint32_t blockSize): arm_shift_q31.c']]], + ['arm_5fshift_5fq7',['arm_shift_q7',['../group__shift.html#ga47295d08a685f7de700a48dafb4db6fb',1,'arm_shift_q7(q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize): arm_shift_q7.c'],['../group__shift.html#ga47295d08a685f7de700a48dafb4db6fb',1,'arm_shift_q7(q7_t *pSrc, int8_t shiftBits, q7_t *pDst, uint32_t blockSize): arm_shift_q7.c']]], + ['arm_5fsin_5fcos_5ff32',['arm_sin_cos_f32',['../group___sin_cos.html#ga4420d45c37d58c310ef9ae1b5fe58020',1,'arm_sin_cos_f32(float32_t theta, float32_t *pSinVal, float32_t *pCosVal): arm_sin_cos_f32.c'],['../group___sin_cos.html#ga4420d45c37d58c310ef9ae1b5fe58020',1,'arm_sin_cos_f32(float32_t theta, float32_t *pSinVal, float32_t *pCosVal): arm_sin_cos_f32.c']]], + ['arm_5fsin_5fcos_5fq31',['arm_sin_cos_q31',['../group___sin_cos.html#gae9e4ddebff9d4eb5d0a093e28e0bc504',1,'arm_sin_cos_q31(q31_t theta, q31_t *pSinVal, q31_t *pCosVal): arm_sin_cos_q31.c'],['../group___sin_cos.html#gae9e4ddebff9d4eb5d0a093e28e0bc504',1,'arm_sin_cos_q31(q31_t theta, q31_t *pSinVal, q31_t *pCosVal): arm_sin_cos_q31.c']]], + ['arm_5fsin_5ff32',['arm_sin_f32',['../group__sin.html#gae164899c4a3fc0e946dc5d55555fe541',1,'arm_sin_f32(float32_t x): arm_sin_f32.c'],['../group__sin.html#gae164899c4a3fc0e946dc5d55555fe541',1,'arm_sin_f32(float32_t x): arm_sin_f32.c']]], + ['arm_5fsin_5fq15',['arm_sin_q15',['../group__sin.html#ga1fc6d6640be6cfa688a8bea0a48397ee',1,'arm_sin_q15(q15_t x): arm_sin_q15.c'],['../group__sin.html#ga1fc6d6640be6cfa688a8bea0a48397ee',1,'arm_sin_q15(q15_t x): arm_sin_q15.c']]], + ['arm_5fsin_5fq31',['arm_sin_q31',['../group__sin.html#ga57aade7d8892585992cdc6375bd82f9c',1,'arm_sin_q31(q31_t x): arm_sin_q31.c'],['../group__sin.html#ga57aade7d8892585992cdc6375bd82f9c',1,'arm_sin_q31(q31_t x): arm_sin_q31.c']]], + ['arm_5fsnr_5ff32',['arm_snr_f32',['../arm__convolution__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__convolution__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__convolution__example_2_g_c_c_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__fir__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__graphic__equalizer__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__linear__interp__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__matrix__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8c.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c'],['../arm__signal__converge__example_2_a_r_m_2math__helper_8h.html#aeea2952e70a1040a6efa555564bbeeab',1,'arm_snr_f32(float *pRef, float *pTest, uint32_t buffSize): math_helper.c']]], + ['arm_5fsplit_5frfft_5ff32',['arm_split_rfft_f32',['../group__group_transforms.html#ga6cfdb6bdc66b13732ef2351caf98fdbb',1,'arm_rfft_f32.c']]], + ['arm_5fsplit_5frfft_5fq15',['arm_split_rfft_q15',['../arm__rfft__q15_8c.html#a7c2a21793586f9a69c42140665550e09',1,'arm_rfft_q15.c']]], + ['arm_5fsplit_5frfft_5fq31',['arm_split_rfft_q31',['../arm__rfft__q31_8c.html#a520e1c358d44fcd2724cb19d46eb5dfa',1,'arm_rfft_q31.c']]], + ['arm_5fsplit_5frifft_5ff32',['arm_split_rifft_f32',['../arm__rfft__f32_8c.html#a585bef78c103d150a116241a4feb6442',1,'arm_rfft_f32.c']]], + ['arm_5fsplit_5frifft_5fq15',['arm_split_rifft_q15',['../arm__rfft__q15_8c.html#aa72a531dd15a53570dddaf01b62158f4',1,'arm_rfft_q15.c']]], + ['arm_5fsplit_5frifft_5fq31',['arm_split_rifft_q31',['../arm__rfft__q31_8c.html#acc62dd39a59091c4d6a80d4e55adeb13',1,'arm_rfft_q31.c']]], + ['arm_5fsqrt_5ff32',['arm_sqrt_f32',['../group___s_q_r_t.html#ga56a40d1cf842b0b45267df6761975da0',1,'arm_math.h']]], + ['arm_5fsqrt_5fq15',['arm_sqrt_q15',['../group___s_q_r_t.html#ga5abe5ca724f3e15849662b03752c1238',1,'arm_sqrt_q15.c']]], + ['arm_5fsqrt_5fq31',['arm_sqrt_q31',['../group___s_q_r_t.html#ga119e25831e141d734d7ef10636670058',1,'arm_sqrt_q31.c']]], + ['arm_5fstd_5ff32',['arm_std_f32',['../group___s_t_d.html#ga4969b5b5f3d001377bc401a3ee99dfc2',1,'arm_std_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_std_f32.c'],['../group___s_t_d.html#ga4969b5b5f3d001377bc401a3ee99dfc2',1,'arm_std_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_std_f32.c']]], + ['arm_5fstd_5fq15',['arm_std_q15',['../group___s_t_d.html#gaf9d27afa9928ff28a63cd98ea9218a72',1,'arm_std_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_std_q15.c'],['../group___s_t_d.html#gaf9d27afa9928ff28a63cd98ea9218a72',1,'arm_std_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_std_q15.c']]], + ['arm_5fstd_5fq31',['arm_std_q31',['../group___s_t_d.html#ga39495e74f96116178be085c9dc7742f5',1,'arm_std_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_std_q31.c'],['../group___s_t_d.html#ga39495e74f96116178be085c9dc7742f5',1,'arm_std_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_std_q31.c']]], + ['arm_5fsub_5ff32',['arm_sub_f32',['../group___basic_sub.html#ga7f975a472de286331134227c08aad826',1,'arm_sub_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_sub_f32.c'],['../group___basic_sub.html#ga7f975a472de286331134227c08aad826',1,'arm_sub_f32(float32_t *pSrcA, float32_t *pSrcB, float32_t *pDst, uint32_t blockSize): arm_sub_f32.c']]], + ['arm_5fsub_5fq15',['arm_sub_q15',['../group___basic_sub.html#ga997a8ee93088d15bda23c325d455b588',1,'arm_sub_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_sub_q15.c'],['../group___basic_sub.html#ga997a8ee93088d15bda23c325d455b588',1,'arm_sub_q15(q15_t *pSrcA, q15_t *pSrcB, q15_t *pDst, uint32_t blockSize): arm_sub_q15.c']]], + ['arm_5fsub_5fq31',['arm_sub_q31',['../group___basic_sub.html#ga28aa6908d092752144413e21933dc878',1,'arm_sub_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_sub_q31.c'],['../group___basic_sub.html#ga28aa6908d092752144413e21933dc878',1,'arm_sub_q31(q31_t *pSrcA, q31_t *pSrcB, q31_t *pDst, uint32_t blockSize): arm_sub_q31.c']]], + ['arm_5fsub_5fq7',['arm_sub_q7',['../group___basic_sub.html#gab09941de7dfeb247e5c29b406a435fcc',1,'arm_sub_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_sub_q7.c'],['../group___basic_sub.html#gab09941de7dfeb247e5c29b406a435fcc',1,'arm_sub_q7(q7_t *pSrcA, q7_t *pSrcB, q7_t *pDst, uint32_t blockSize): arm_sub_q7.c']]], + ['arm_5fvar_5ff32',['arm_var_f32',['../group__variance.html#ga393f26c5a3bfa05624fb8d32232a6d96',1,'arm_var_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_var_f32.c'],['../group__variance.html#ga393f26c5a3bfa05624fb8d32232a6d96',1,'arm_var_f32(float32_t *pSrc, uint32_t blockSize, float32_t *pResult): arm_var_f32.c']]], + ['arm_5fvar_5fq15',['arm_var_q15',['../group__variance.html#ga79dce009ed2de28a125aeb3f19631654',1,'arm_var_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_var_q15.c'],['../group__variance.html#ga79dce009ed2de28a125aeb3f19631654',1,'arm_var_q15(q15_t *pSrc, uint32_t blockSize, q15_t *pResult): arm_var_q15.c']]], + ['arm_5fvar_5fq31',['arm_var_q31',['../group__variance.html#gac02873f1c2cc80adfd799305f0e6465d',1,'arm_var_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_var_q31.c'],['../group__variance.html#gac02873f1c2cc80adfd799305f0e6465d',1,'arm_var_q31(q31_t *pSrc, uint32_t blockSize, q31_t *pResult): arm_var_q31.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/functions_63.html b/CMSIS/Documentation/DSP/html/search/functions_63.html new file mode 100644 index 0000000..9ebe11d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/functions_63.js b/CMSIS/Documentation/DSP/html/search/functions_63.js new file mode 100644 index 0000000..3ba30fe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_63.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['clip_5fq31_5fto_5fq15',['clip_q31_to_q15',['../arm__math_8h.html#a4af3ca330e14587289518e6565fd04bd',1,'arm_math.h']]], + ['clip_5fq31_5fto_5fq7',['clip_q31_to_q7',['../arm__math_8h.html#aa9918ce19228b0d4f072fb84776eabc1',1,'arm_math.h']]], + ['clip_5fq63_5fto_5fq15',['clip_q63_to_q15',['../arm__math_8h.html#aa6f1e5d0d276f42217e75f071ca84a2e',1,'arm_math.h']]], + ['clip_5fq63_5fto_5fq31',['clip_q63_to_q31',['../arm__math_8h.html#ad7373e53d3c2e1adfeafc8c2e9720b5c',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/functions_67.html b/CMSIS/Documentation/DSP/html/search/functions_67.html new file mode 100644 index 0000000..d0ab42a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/functions_67.js b/CMSIS/Documentation/DSP/html/search/functions_67.js new file mode 100644 index 0000000..21668a8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_67.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['getinput',['getinput',['../arm__signal__converge__example__f32_8c.html#afd2975c4763ec935771e6f63bfe7758b',1,'arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/functions_6d.html b/CMSIS/Documentation/DSP/html/search/functions_6d.html new file mode 100644 index 0000000..d01ac53 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/functions_6d.js b/CMSIS/Documentation/DSP/html/search/functions_6d.js new file mode 100644 index 0000000..5e89575 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_6d.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['main',['main',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a196718f834091385d38586a0ce4009dc',1,'main(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a196718f834091385d38586a0ce4009dc',1,'main(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__convolution__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_convolution_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_dotproduct_example_f32.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_fft_bin_example_f32.c'],['../arm__fir__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_graphic_equalizer_example_q31.c'],['../arm__linear__interp__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_linear_interp_example_f32.c'],['../arm__matrix__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_matrix_example_f32.c'],['../arm__signal__converge__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_signal_converge_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#a52d2cba30e6946c95578be946ac12a65',1,'main(void): arm_variance_example_f32.c']]], + ['merge_5frfft_5ff32',['merge_rfft_f32',['../arm__rfft__fast__f32_8c.html#a93258bc1e64a939a8ebd086367e459af',1,'arm_rfft_fast_f32.c']]], + ['mult32x64',['mult32x64',['../arm__math_8h.html#a642a29d71f7951a7f6c0b797c300b711',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/functions_73.html b/CMSIS/Documentation/DSP/html/search/functions_73.html new file mode 100644 index 0000000..774d577 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/functions_73.js b/CMSIS/Documentation/DSP/html/search/functions_73.js new file mode 100644 index 0000000..3a22832 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_73.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['stage_5frfft_5ff32',['stage_rfft_f32',['../arm__rfft__fast__f32_8c.html#a47157c5a53c8aac5e80fda31acf1f9cc',1,'arm_rfft_fast_f32.c']]], + ['systemcoreclockupdate',['SystemCoreClockUpdate',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#ae0c36a9591fe6e9c45ecb21a794f0f0f',1,'SystemCoreClockUpdate(void): system_ARMCM7.c']]], + ['systeminit',['SystemInit',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#a93f514700ccf00d08dbdcff7f1224eb2',1,'SystemInit(void): system_ARMCM7.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/functions_74.html b/CMSIS/Documentation/DSP/html/search/functions_74.html new file mode 100644 index 0000000..e3c96c3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/functions_74.js b/CMSIS/Documentation/DSP/html/search/functions_74.js new file mode 100644 index 0000000..e97b50c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/functions_74.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['test_5fsignal_5fconverge',['test_signal_converge',['../arm__signal__converge__example__f32_8c.html#a8f521e839d4fad24a4f12a18dfeae5d4',1,'arm_signal_converge_example_f32.c']]], + ['test_5fsignal_5fconverge_5fexample',['test_signal_converge_example',['../arm__signal__converge__example__f32_8c.html#ac786d43cbc17bb09738447034ff8e22e',1,'arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_62.html b/CMSIS/Documentation/DSP/html/search/groups_62.html new file mode 100644 index 0000000..9c8b752 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_62.js b/CMSIS/Documentation/DSP/html/search/groups_62.js new file mode 100644 index 0000000..bd4c40d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_62.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['bilinear_20interpolation',['Bilinear Interpolation',['../group___bilinear_interpolate.html',1,'']]], + ['biquad_20cascade_20iir_20filters_20using_20direct_20form_20i_20structure',['Biquad Cascade IIR Filters Using Direct Form I Structure',['../group___biquad_cascade_d_f1.html',1,'']]], + ['biquad_20cascade_20iir_20filters_20using_20a_20direct_20form_20ii_20transposed_20structure',['Biquad Cascade IIR Filters Using a Direct Form II Transposed Structure',['../group___biquad_cascade_d_f2_t.html',1,'']]], + ['basic_20math_20functions',['Basic Math Functions',['../group__group_math.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_63.html b/CMSIS/Documentation/DSP/html/search/groups_63.html new file mode 100644 index 0000000..dd75625 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_63.js b/CMSIS/Documentation/DSP/html/search/groups_63.js new file mode 100644 index 0000000..da2045d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_63.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['complex_20fft_20tables',['Complex FFT Tables',['../group___c_f_f_t___c_i_f_f_t.html',1,'']]], + ['class_20marks_20example',['Class Marks Example',['../group___class_marks.html',1,'']]], + ['complex_20conjugate',['Complex Conjugate',['../group__cmplx__conj.html',1,'']]], + ['complex_20dot_20product',['Complex Dot Product',['../group__cmplx__dot__prod.html',1,'']]], + ['complex_20magnitude',['Complex Magnitude',['../group__cmplx__mag.html',1,'']]], + ['complex_20magnitude_20squared',['Complex Magnitude Squared',['../group__cmplx__mag__squared.html',1,'']]], + ['complex_2dby_2dcomplex_20multiplication',['Complex-by-Complex Multiplication',['../group___cmplx_by_cmplx_mult.html',1,'']]], + ['complex_2dby_2dreal_20multiplication',['Complex-by-Real Multiplication',['../group___cmplx_by_real_mult.html',1,'']]], + ['complex_20matrix_20multiplication',['Complex Matrix Multiplication',['../group___cmplx_matrix_mult.html',1,'']]], + ['complex_20fft_20functions',['Complex FFT Functions',['../group___complex_f_f_t.html',1,'']]], + ['convolution',['Convolution',['../group___conv.html',1,'']]], + ['convolution_20example',['Convolution Example',['../group___convolution_example.html',1,'']]], + ['correlation',['Correlation',['../group___corr.html',1,'']]], + ['cosine',['Cosine',['../group__cos.html',1,'']]], + ['convert_2032_2dbit_20floating_20point_20value',['Convert 32-bit floating point value',['../group__float__to__x.html',1,'']]], + ['complex_20math_20functions',['Complex Math Functions',['../group__group_cmplx_math.html',1,'']]], + ['controller_20functions',['Controller Functions',['../group__group_controller.html',1,'']]], + ['convert_2016_2dbit_20integer_20value',['Convert 16-bit Integer value',['../group__q15__to__x.html',1,'']]], + ['convert_2032_2dbit_20integer_20value',['Convert 32-bit Integer value',['../group__q31__to__x.html',1,'']]], + ['convert_208_2dbit_20integer_20value',['Convert 8-bit Integer value',['../group__q7__to__x.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_64.html b/CMSIS/Documentation/DSP/html/search/groups_64.html new file mode 100644 index 0000000..ab9c76f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_64.js b/CMSIS/Documentation/DSP/html/search/groups_64.js new file mode 100644 index 0000000..709f9ef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_64.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['dct_20type_20iv_20functions',['DCT Type IV Functions',['../group___d_c_t4___i_d_c_t4.html',1,'']]], + ['dot_20product_20example',['Dot Product Example',['../group___dotproduct_example.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_65.html b/CMSIS/Documentation/DSP/html/search/groups_65.html new file mode 100644 index 0000000..f084d02 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_65.js b/CMSIS/Documentation/DSP/html/search/groups_65.js new file mode 100644 index 0000000..aec8bf2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_65.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['examples',['Examples',['../group__group_examples.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_66.html b/CMSIS/Documentation/DSP/html/search/groups_66.html new file mode 100644 index 0000000..b1879e4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_66.js b/CMSIS/Documentation/DSP/html/search/groups_66.js new file mode 100644 index 0000000..5a9ebfe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_66.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['finite_20impulse_20response_20_28fir_29_20filters',['Finite Impulse Response (FIR) Filters',['../group___f_i_r.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20decimator',['Finite Impulse Response (FIR) Decimator',['../group___f_i_r__decimate.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20interpolator',['Finite Impulse Response (FIR) Interpolator',['../group___f_i_r___interpolate.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20lattice_20filters',['Finite Impulse Response (FIR) Lattice Filters',['../group___f_i_r___lattice.html',1,'']]], + ['finite_20impulse_20response_20_28fir_29_20sparse_20filters',['Finite Impulse Response (FIR) Sparse Filters',['../group___f_i_r___sparse.html',1,'']]], + ['fir_20lowpass_20filter_20example',['FIR Lowpass Filter Example',['../group___f_i_r_l_p_f.html',1,'']]], + ['frequency_20bin_20example',['Frequency Bin Example',['../group___frequency_bin.html',1,'']]], + ['fast_20math_20functions',['Fast Math Functions',['../group__group_fast_math.html',1,'']]], + ['filtering_20functions',['Filtering Functions',['../group__group_filters.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_67.html b/CMSIS/Documentation/DSP/html/search/groups_67.html new file mode 100644 index 0000000..4fc9422 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_67.js b/CMSIS/Documentation/DSP/html/search/groups_67.js new file mode 100644 index 0000000..22ccacf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_67.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['graphic_20audio_20equalizer_20example',['Graphic Audio Equalizer Example',['../group___g_e_q5_band.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_68.html b/CMSIS/Documentation/DSP/html/search/groups_68.html new file mode 100644 index 0000000..343844e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_68.js b/CMSIS/Documentation/DSP/html/search/groups_68.js new file mode 100644 index 0000000..3408c23 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['high_20precision_20q31_20biquad_20cascade_20filter',['High Precision Q31 Biquad Cascade Filter',['../group___biquad_cascade_d_f1__32x64.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_69.html b/CMSIS/Documentation/DSP/html/search/groups_69.html new file mode 100644 index 0000000..2bcea06 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_69.js b/CMSIS/Documentation/DSP/html/search/groups_69.js new file mode 100644 index 0000000..11256cf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_69.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['interpolation_20functions',['Interpolation Functions',['../group__group_interpolation.html',1,'']]], + ['infinite_20impulse_20response_20_28iir_29_20lattice_20filters',['Infinite Impulse Response (IIR) Lattice Filters',['../group___i_i_r___lattice.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_6c.html b/CMSIS/Documentation/DSP/html/search/groups_6c.html new file mode 100644 index 0000000..157903c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_6c.js b/CMSIS/Documentation/DSP/html/search/groups_6c.js new file mode 100644 index 0000000..97f3516 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_6c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['linear_20interpolate_20example',['Linear Interpolate Example',['../group___linear_interp_example.html',1,'']]], + ['linear_20interpolation',['Linear Interpolation',['../group___linear_interpolate.html',1,'']]], + ['least_20mean_20square_20_28lms_29_20filters',['Least Mean Square (LMS) Filters',['../group___l_m_s.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_6d.html b/CMSIS/Documentation/DSP/html/search/groups_6d.html new file mode 100644 index 0000000..7caa8d7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_6d.js b/CMSIS/Documentation/DSP/html/search/groups_6d.js new file mode 100644 index 0000000..d019213 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_6d.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['matrix_20functions',['Matrix Functions',['../group__group_matrix.html',1,'']]], + ['matrix_20addition',['Matrix Addition',['../group___matrix_add.html',1,'']]], + ['matrix_20example',['Matrix Example',['../group___matrix_example.html',1,'']]], + ['matrix_20initialization',['Matrix Initialization',['../group___matrix_init.html',1,'']]], + ['matrix_20inverse',['Matrix Inverse',['../group___matrix_inv.html',1,'']]], + ['matrix_20multiplication',['Matrix Multiplication',['../group___matrix_mult.html',1,'']]], + ['matrix_20scale',['Matrix Scale',['../group___matrix_scale.html',1,'']]], + ['matrix_20subtraction',['Matrix Subtraction',['../group___matrix_sub.html',1,'']]], + ['matrix_20transpose',['Matrix Transpose',['../group___matrix_trans.html',1,'']]], + ['maximum',['Maximum',['../group___max.html',1,'']]], + ['mean',['Mean',['../group__mean.html',1,'']]], + ['minimum',['Minimum',['../group___min.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_6e.html b/CMSIS/Documentation/DSP/html/search/groups_6e.html new file mode 100644 index 0000000..5e9e7d8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_6e.js b/CMSIS/Documentation/DSP/html/search/groups_6e.js new file mode 100644 index 0000000..30f2c09 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_6e.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['normalized_20lms_20filters',['Normalized LMS Filters',['../group___l_m_s___n_o_r_m.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_70.html b/CMSIS/Documentation/DSP/html/search/groups_70.html new file mode 100644 index 0000000..2cb8f74 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_70.js b/CMSIS/Documentation/DSP/html/search/groups_70.js new file mode 100644 index 0000000..f0607b9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_70.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['partial_20convolution',['Partial Convolution',['../group___partial_conv.html',1,'']]], + ['pid_20motor_20control',['PID Motor Control',['../group___p_i_d.html',1,'']]], + ['power',['Power',['../group__power.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_72.html b/CMSIS/Documentation/DSP/html/search/groups_72.html new file mode 100644 index 0000000..a4430da --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_72.js b/CMSIS/Documentation/DSP/html/search/groups_72.js new file mode 100644 index 0000000..b2d7deb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_72.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['real_20fft_20functions',['Real FFT Functions',['../group___fast.html',1,'']]], + ['radix_2d8_20complex_20fft_20functions',['Radix-8 Complex FFT Functions',['../group___radix8___c_f_f_t___c_i_f_f_t.html',1,'']]], + ['realfft',['RealFFT',['../group___real_f_f_t.html',1,'']]], + ['root_20mean_20square_20_28rms_29',['Root mean square (RMS)',['../group___r_m_s.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_73.html b/CMSIS/Documentation/DSP/html/search/groups_73.html new file mode 100644 index 0000000..feab00e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_73.js b/CMSIS/Documentation/DSP/html/search/groups_73.js new file mode 100644 index 0000000..4348104 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_73.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['statistics_20functions',['Statistics Functions',['../group__group_stats.html',1,'']]], + ['support_20functions',['Support Functions',['../group__group_support.html',1,'']]], + ['signal_20convergence_20example',['Signal Convergence Example',['../group___signal_convergence.html',1,'']]], + ['sine',['Sine',['../group__sin.html',1,'']]], + ['sine_20cosine',['Sine Cosine',['../group___sin_cos.html',1,'']]], + ['sinecosine_20example',['SineCosine Example',['../group___sin_cos_example.html',1,'']]], + ['square_20root',['Square Root',['../group___s_q_r_t.html',1,'']]], + ['standard_20deviation',['Standard deviation',['../group___s_t_d.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_74.html b/CMSIS/Documentation/DSP/html/search/groups_74.html new file mode 100644 index 0000000..315d58c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_74.js b/CMSIS/Documentation/DSP/html/search/groups_74.js new file mode 100644 index 0000000..c6dfafc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['transform_20functions',['Transform Functions',['../group__group_transforms.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/groups_76.html b/CMSIS/Documentation/DSP/html/search/groups_76.html new file mode 100644 index 0000000..881bf59 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/groups_76.js b/CMSIS/Documentation/DSP/html/search/groups_76.js new file mode 100644 index 0000000..a02c7b6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/groups_76.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['vector_20absolute_20value',['Vector Absolute Value',['../group___basic_abs.html',1,'']]], + ['vector_20addition',['Vector Addition',['../group___basic_add.html',1,'']]], + ['vector_20multiplication',['Vector Multiplication',['../group___basic_mult.html',1,'']]], + ['vector_20subtraction',['Vector Subtraction',['../group___basic_sub.html',1,'']]], + ['vector_20clarke_20transform',['Vector Clarke Transform',['../group__clarke.html',1,'']]], + ['vector_20copy',['Vector Copy',['../group__copy.html',1,'']]], + ['vector_20dot_20product',['Vector Dot Product',['../group__dot__prod.html',1,'']]], + ['vector_20fill',['Vector Fill',['../group___fill.html',1,'']]], + ['vector_20inverse_20clarke_20transform',['Vector Inverse Clarke Transform',['../group__inv__clarke.html',1,'']]], + ['vector_20inverse_20park_20transform',['Vector Inverse Park transform',['../group__inv__park.html',1,'']]], + ['vector_20negate',['Vector Negate',['../group__negate.html',1,'']]], + ['vector_20offset',['Vector Offset',['../group__offset.html',1,'']]], + ['vector_20park_20transform',['Vector Park Transform',['../group__park.html',1,'']]], + ['vector_20scale',['Vector Scale',['../group__scale.html',1,'']]], + ['vector_20shift',['Vector Shift',['../group__shift.html',1,'']]], + ['variance',['Variance',['../group__variance.html',1,'']]], + ['variance_20example',['Variance Example',['../group___variance_example.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/mag_sel.png b/CMSIS/Documentation/DSP/html/search/mag_sel.png new file mode 100644 index 0000000..81f6040 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/search/mag_sel.png differ diff --git a/CMSIS/Documentation/DSP/html/search/nomatches.html b/CMSIS/Documentation/DSP/html/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/pages_63.html b/CMSIS/Documentation/DSP/html/search/pages_63.html new file mode 100644 index 0000000..3971181 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/pages_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/pages_63.js b/CMSIS/Documentation/DSP/html/search/pages_63.js new file mode 100644 index 0000000..3712cf6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/pages_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['change_20log',['Change Log',['../_change_log_pg.html',1,'']]], + ['cmsis_20dsp_20software_20library',['CMSIS DSP Software Library',['../index.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/pages_64.html b/CMSIS/Documentation/DSP/html/search/pages_64.html new file mode 100644 index 0000000..f416a91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/pages_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/pages_64.js b/CMSIS/Documentation/DSP/html/search/pages_64.js new file mode 100644 index 0000000..038da54 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/pages_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['deprecated_20list',['Deprecated List',['../deprecated.html',1,'']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/search.css b/CMSIS/Documentation/DSP/html/search/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/DSP/html/search/search.js b/CMSIS/Documentation/DSP/html/search/search.js new file mode 100644 index 0000000..9ded8e5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/search.js @@ -0,0 +1,815 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111111011111111111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101000100000100000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111101011111101110111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 8: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111101001000110100111001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 9: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111001110101110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 10: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "files", + 3: "functions", + 4: "variables", + 5: "typedefs", + 6: "enums", + 7: "enumvalues", + 8: "defines", + 9: "groups", + 10: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/typedefs_66.js b/CMSIS/Documentation/DSP/html/search/typedefs_66.js new file mode 100644 index 0000000..2b580b2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/typedefs_66.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['float32_5ft',['float32_t',['../arm__math_8h.html#a4611b605e45ab401f02cab15c5e38715',1,'arm_math.h']]], + ['float64_5ft',['float64_t',['../arm__math_8h.html#ac55f3ae81b5bc9053760baacf57e47f4',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/typedefs_71.html b/CMSIS/Documentation/DSP/html/search/typedefs_71.html new file mode 100644 index 0000000..348f7ff --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/typedefs_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/typedefs_71.js b/CMSIS/Documentation/DSP/html/search/typedefs_71.js new file mode 100644 index 0000000..8efe4a8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/typedefs_71.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['q15_5ft',['q15_t',['../arm__math_8h.html#ab5a8fb21a5b3b983d5f54f31614052ea',1,'arm_math.h']]], + ['q31_5ft',['q31_t',['../arm__math_8h.html#adc89a3547f5324b7b3b95adec3806bc0',1,'arm_math.h']]], + ['q63_5ft',['q63_t',['../arm__math_8h.html#a5aea1cb12fc02d9d44c8abf217eaa5c6',1,'arm_math.h']]], + ['q7_5ft',['q7_t',['../arm__math_8h.html#ae541b6f232c305361e9b416fc9eed263',1,'arm_math.h']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_61.html b/CMSIS/Documentation/DSP/html/search/variables_61.html new file mode 100644 index 0000000..ff1f937 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_61.js b/CMSIS/Documentation/DSP/html/search/variables_61.js new file mode 100644 index 0000000..2fbdf85 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_61.js @@ -0,0 +1,61 @@ +var searchData= +[ + ['a0',['A0',['../structarm__pid__instance__q15.html#ad77f3a2823c7f96de42c92a3fbf3246b',1,'arm_pid_instance_q15::A0()'],['../structarm__pid__instance__q31.html#aa5332635ce9c7078cdb4c1ecf442eadd',1,'arm_pid_instance_q31::A0()'],['../structarm__pid__instance__f32.html#ad7b0bed64915d0a25a3409fa2dc45556',1,'arm_pid_instance_f32::A0()']]], + ['a1',['A1',['../structarm__pid__instance__q15.html#a1b8412c517071962a9acfdc6778906ec',1,'arm_pid_instance_q15::A1()'],['../structarm__pid__instance__q31.html#a2f7492bd6fb92fae5e2de7fbbec39b0e',1,'arm_pid_instance_q31::A1()'],['../structarm__pid__instance__f32.html#a7def89571c50f7137a213326a396e560',1,'arm_pid_instance_f32::A1()']]], + ['a2',['A2',['../structarm__pid__instance__q31.html#a3e34537c53af4f9ad7bfffa4dff27c82',1,'arm_pid_instance_q31::A2()'],['../structarm__pid__instance__f32.html#a155acf642ba2f521869f19d694cd7fa0',1,'arm_pid_instance_f32::A2()']]], + ['a_5ff32',['A_f32',['../arm__matrix__example__f32_8c.html#aed27b92d9847194d9dcce40cecf2b48a',1,'arm_matrix_example_f32.c']]], + ['ak',['Ak',['../_a_r_m_2arm__convolution__example__f32_8c.html#aed74eacd4b96cc7f71b64d18f2e95705',1,'Ak(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#aed74eacd4b96cc7f71b64d18f2e95705',1,'Ak(): arm_convolution_example_f32.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen1024',['arm_cfft_sR_f32_len1024',['../arm__const__structs_8c.html#a05abc294a9159abbd6ffb4f188fe18b1',1,'arm_cfft_sR_f32_len1024(): arm_const_structs.c'],['../arm__const__structs_8h.html#a05abc294a9159abbd6ffb4f188fe18b1',1,'arm_cfft_sR_f32_len1024(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen128',['arm_cfft_sR_f32_len128',['../arm__const__structs_8c.html#ad283193397ba476465a330db9a955973',1,'arm_cfft_sR_f32_len128(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad283193397ba476465a330db9a955973',1,'arm_cfft_sR_f32_len128(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen16',['arm_cfft_sR_f32_len16',['../arm__const__structs_8c.html#a27127e9d3deb59df12747233b1b9ea31',1,'arm_cfft_sR_f32_len16(): arm_const_structs.c'],['../arm__const__structs_8h.html#a27127e9d3deb59df12747233b1b9ea31',1,'arm_cfft_sR_f32_len16(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen2048',['arm_cfft_sR_f32_len2048',['../arm__const__structs_8c.html#a8d2fad347dcadc47377e1226231b9f62',1,'arm_cfft_sR_f32_len2048(): arm_const_structs.c'],['../arm__const__structs_8h.html#a8d2fad347dcadc47377e1226231b9f62',1,'arm_cfft_sR_f32_len2048(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen256',['arm_cfft_sR_f32_len256',['../arm__const__structs_8c.html#aeb2f0a0be605963264217cc10b7bd3b2',1,'arm_cfft_sR_f32_len256(): arm_const_structs.c'],['../arm__const__structs_8h.html#aeb2f0a0be605963264217cc10b7bd3b2',1,'arm_cfft_sR_f32_len256(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen32',['arm_cfft_sR_f32_len32',['../arm__const__structs_8c.html#a5fed2b5e0cc4cb5b8675f14daf226a25',1,'arm_cfft_sR_f32_len32(): arm_const_structs.c'],['../arm__const__structs_8h.html#a5fed2b5e0cc4cb5b8675f14daf226a25',1,'arm_cfft_sR_f32_len32(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen4096',['arm_cfft_sR_f32_len4096',['../arm__const__structs_8c.html#a01d2dbdb8193d43c2b7f003f9cb9a39d',1,'arm_cfft_sR_f32_len4096(): arm_const_structs.c'],['../arm__const__structs_8h.html#a01d2dbdb8193d43c2b7f003f9cb9a39d',1,'arm_cfft_sR_f32_len4096(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen512',['arm_cfft_sR_f32_len512',['../arm__const__structs_8c.html#a15f6e533f5cfeb014839303d8ed52e19',1,'arm_cfft_sR_f32_len512(): arm_const_structs.c'],['../arm__const__structs_8h.html#a15f6e533f5cfeb014839303d8ed52e19',1,'arm_cfft_sR_f32_len512(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5ff32_5flen64',['arm_cfft_sR_f32_len64',['../arm__const__structs_8c.html#af94d90db836f662321946154c76b5b80',1,'arm_cfft_sR_f32_len64(): arm_const_structs.c'],['../arm__const__structs_8h.html#af94d90db836f662321946154c76b5b80',1,'arm_cfft_sR_f32_len64(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen1024',['arm_cfft_sR_q15_len1024',['../arm__const__structs_8c.html#ad343fb2e4cba826f092f9d72c4adc831',1,'arm_cfft_sR_q15_len1024(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad343fb2e4cba826f092f9d72c4adc831',1,'arm_cfft_sR_q15_len1024(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen128',['arm_cfft_sR_q15_len128',['../arm__const__structs_8c.html#a736a97efd37c6386dab8db730904f69b',1,'arm_cfft_sR_q15_len128(): arm_const_structs.c'],['../arm__const__structs_8h.html#a736a97efd37c6386dab8db730904f69b',1,'arm_cfft_sR_q15_len128(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen16',['arm_cfft_sR_q15_len16',['../arm__const__structs_8c.html#a7ed661717c58b18f3e557daa72f2b91b',1,'arm_cfft_sR_q15_len16(): arm_const_structs.c'],['../arm__const__structs_8h.html#a7ed661717c58b18f3e557daa72f2b91b',1,'arm_cfft_sR_q15_len16(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen2048',['arm_cfft_sR_q15_len2048',['../arm__const__structs_8c.html#a92c94dc79c66ec66c95f793aedb964b9',1,'arm_cfft_sR_q15_len2048(): arm_const_structs.c'],['../arm__const__structs_8h.html#a92c94dc79c66ec66c95f793aedb964b9',1,'arm_cfft_sR_q15_len2048(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen256',['arm_cfft_sR_q15_len256',['../arm__const__structs_8c.html#ad80be0db1ea40c66b079404c48d2dcf4',1,'arm_cfft_sR_q15_len256(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad80be0db1ea40c66b079404c48d2dcf4',1,'arm_cfft_sR_q15_len256(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen32',['arm_cfft_sR_q15_len32',['../arm__const__structs_8c.html#a8d5426a822a6017235b5e10119606a90',1,'arm_cfft_sR_q15_len32(): arm_const_structs.c'],['../arm__const__structs_8h.html#a8d5426a822a6017235b5e10119606a90',1,'arm_cfft_sR_q15_len32(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen4096',['arm_cfft_sR_q15_len4096',['../arm__const__structs_8c.html#ab57c118edaa3260f7f16686152845b18',1,'arm_cfft_sR_q15_len4096(): arm_const_structs.c'],['../arm__const__structs_8h.html#ab57c118edaa3260f7f16686152845b18',1,'arm_cfft_sR_q15_len4096(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen512',['arm_cfft_sR_q15_len512',['../arm__const__structs_8c.html#a273b91ec86bb2bd8ac14e69252d487fb',1,'arm_cfft_sR_q15_len512(): arm_const_structs.c'],['../arm__const__structs_8h.html#a273b91ec86bb2bd8ac14e69252d487fb',1,'arm_cfft_sR_q15_len512(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq15_5flen64',['arm_cfft_sR_q15_len64',['../arm__const__structs_8c.html#a95c216e7dcfd59a8d40ef55ac223a749',1,'arm_cfft_sR_q15_len64(): arm_const_structs.c'],['../arm__const__structs_8h.html#a95c216e7dcfd59a8d40ef55ac223a749',1,'arm_cfft_sR_q15_len64(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen1024',['arm_cfft_sR_q31_len1024',['../arm__const__structs_8c.html#ada9813a027999f3cff066c9f7b5df51b',1,'arm_cfft_sR_q31_len1024(): arm_const_structs.c'],['../arm__const__structs_8h.html#ada9813a027999f3cff066c9f7b5df51b',1,'arm_cfft_sR_q31_len1024(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen128',['arm_cfft_sR_q31_len128',['../arm__const__structs_8c.html#a9a2fcdb54300f75ef1fafe02954e9a61',1,'arm_cfft_sR_q31_len128(): arm_const_structs.c'],['../arm__const__structs_8h.html#a9a2fcdb54300f75ef1fafe02954e9a61',1,'arm_cfft_sR_q31_len128(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen16',['arm_cfft_sR_q31_len16',['../arm__const__structs_8c.html#a1336431c4d2a88d32c42308cfe2defa1',1,'arm_cfft_sR_q31_len16(): arm_const_structs.c'],['../arm__const__structs_8h.html#a1336431c4d2a88d32c42308cfe2defa1',1,'arm_cfft_sR_q31_len16(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen2048',['arm_cfft_sR_q31_len2048',['../arm__const__structs_8c.html#a420622d75b277070784083ddd44b95fb',1,'arm_cfft_sR_q31_len2048(): arm_const_structs.c'],['../arm__const__structs_8h.html#a420622d75b277070784083ddd44b95fb',1,'arm_cfft_sR_q31_len2048(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen256',['arm_cfft_sR_q31_len256',['../arm__const__structs_8c.html#a3f2de67938bd228918e40f60f18dd6b5',1,'arm_cfft_sR_q31_len256(): arm_const_structs.c'],['../arm__const__structs_8h.html#a3f2de67938bd228918e40f60f18dd6b5',1,'arm_cfft_sR_q31_len256(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen32',['arm_cfft_sR_q31_len32',['../arm__const__structs_8c.html#a4c083c013ef17920cf8f28dc6f139a39',1,'arm_cfft_sR_q31_len32(): arm_const_structs.c'],['../arm__const__structs_8h.html#a4c083c013ef17920cf8f28dc6f139a39',1,'arm_cfft_sR_q31_len32(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen4096',['arm_cfft_sR_q31_len4096',['../arm__const__structs_8c.html#abfc9595f40a1c7aaba85e1328d824b1c',1,'arm_cfft_sR_q31_len4096(): arm_const_structs.c'],['../arm__const__structs_8h.html#abfc9595f40a1c7aaba85e1328d824b1c',1,'arm_cfft_sR_q31_len4096(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen512',['arm_cfft_sR_q31_len512',['../arm__const__structs_8c.html#aa337272cf78aaf6075e7e19d0a097d6f',1,'arm_cfft_sR_q31_len512(): arm_const_structs.c'],['../arm__const__structs_8h.html#aa337272cf78aaf6075e7e19d0a097d6f',1,'arm_cfft_sR_q31_len512(): arm_const_structs.c']]], + ['arm_5fcfft_5fsr_5fq31_5flen64',['arm_cfft_sR_q31_len64',['../arm__const__structs_8c.html#ad11668a5662334e0bc6a2811c9cb1047',1,'arm_cfft_sR_q31_len64(): arm_const_structs.c'],['../arm__const__structs_8h.html#ad11668a5662334e0bc6a2811c9cb1047',1,'arm_cfft_sR_q31_len64(): arm_const_structs.c']]], + ['arm_5flinear_5finterep_5ftable',['arm_linear_interep_table',['../arm__linear__interp__data_8c.html#a1a5a6c95f39221fcf8129fe478f54696',1,'arm_linear_interep_table(): arm_linear_interp_data.c'],['../arm__linear__interp__example__f32_8c.html#a1a5a6c95f39221fcf8129fe478f54696',1,'arm_linear_interep_table(): arm_linear_interp_data.c']]], + ['armbitrevindextable1024',['armBitRevIndexTable1024',['../arm__common__tables_8c.html#ae69b72fb0be5dab9a0ea76e9b6995cb6',1,'armBitRevIndexTable1024(): arm_common_tables.c'],['../arm__common__tables_8h.html#ae69b72fb0be5dab9a0ea76e9b6995cb6',1,'armBitRevIndexTable1024(): arm_common_tables.c']]], + ['armbitrevindextable128',['armBitRevIndexTable128',['../arm__common__tables_8c.html#a04711bbb245f2ac7202db666eaaf10f2',1,'armBitRevIndexTable128(): arm_common_tables.c'],['../arm__common__tables_8h.html#a04711bbb245f2ac7202db666eaaf10f2',1,'armBitRevIndexTable128(): arm_common_tables.c']]], + ['armbitrevindextable16',['armBitRevIndexTable16',['../arm__common__tables_8c.html#a5ab065857509fe5780d79fdcdce801cb',1,'armBitRevIndexTable16(): arm_common_tables.c'],['../arm__common__tables_8h.html#a5ab065857509fe5780d79fdcdce801cb',1,'armBitRevIndexTable16(): arm_common_tables.c']]], + ['armbitrevindextable2048',['armBitRevIndexTable2048',['../arm__common__tables_8c.html#a68b7fcd07ae5433082e600dc7e7c7430',1,'armBitRevIndexTable2048(): arm_common_tables.c'],['../arm__common__tables_8h.html#a68b7fcd07ae5433082e600dc7e7c7430',1,'armBitRevIndexTable2048(): arm_common_tables.c']]], + ['armbitrevindextable256',['armBitRevIndexTable256',['../arm__common__tables_8c.html#a77b17c8e7539af315c57de27610d8407',1,'armBitRevIndexTable256(): arm_common_tables.c'],['../arm__common__tables_8h.html#a77b17c8e7539af315c57de27610d8407',1,'armBitRevIndexTable256(): arm_common_tables.c']]], + ['armbitrevindextable32',['armBitRevIndexTable32',['../arm__common__tables_8c.html#afae094ea3df14c134012c4cb7b816637',1,'armBitRevIndexTable32(): arm_common_tables.c'],['../arm__common__tables_8h.html#afae094ea3df14c134012c4cb7b816637',1,'armBitRevIndexTable32(): arm_common_tables.c']]], + ['armbitrevindextable4096',['armBitRevIndexTable4096',['../arm__common__tables_8c.html#ac6bd23609f5bb10182e8eae65400541b',1,'armBitRevIndexTable4096(): arm_common_tables.c'],['../arm__common__tables_8h.html#ac6bd23609f5bb10182e8eae65400541b',1,'armBitRevIndexTable4096(): arm_common_tables.c']]], + ['armbitrevindextable512',['armBitRevIndexTable512',['../arm__common__tables_8c.html#a297a311183fb6d17d7ee0152ad1e43f3',1,'armBitRevIndexTable512(): arm_common_tables.c'],['../arm__common__tables_8h.html#a297a311183fb6d17d7ee0152ad1e43f3',1,'armBitRevIndexTable512(): arm_common_tables.c']]], + ['armbitrevindextable64',['armBitRevIndexTable64',['../arm__common__tables_8c.html#aafcb5c9203dada88ed6d1bdcf16aaba4',1,'armBitRevIndexTable64(): arm_common_tables.c'],['../arm__common__tables_8h.html#aafcb5c9203dada88ed6d1bdcf16aaba4',1,'armBitRevIndexTable64(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f1024',['armBitRevIndexTable_fixed_1024',['../arm__common__tables_8c.html#a579beb19201fab01210c37253447fa52',1,'armBitRevIndexTable_fixed_1024(): arm_common_tables.c'],['../arm__common__tables_8h.html#a579beb19201fab01210c37253447fa52',1,'armBitRevIndexTable_fixed_1024(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f128',['armBitRevIndexTable_fixed_128',['../arm__common__tables_8c.html#aa10281deffc0cb708a08d55cfa513507',1,'armBitRevIndexTable_fixed_128(): arm_common_tables.c'],['../arm__common__tables_8h.html#aa10281deffc0cb708a08d55cfa513507',1,'armBitRevIndexTable_fixed_128(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f16',['armBitRevIndexTable_fixed_16',['../arm__common__tables_8c.html#a6c3b510a7d499dccaaea1ff164397ffb',1,'armBitRevIndexTable_fixed_16(): arm_common_tables.c'],['../arm__common__tables_8h.html#a6c3b510a7d499dccaaea1ff164397ffb',1,'armBitRevIndexTable_fixed_16(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f2048',['armBitRevIndexTable_fixed_2048',['../arm__common__tables_8c.html#ad888a207e20f601ed80b2ad43428c8cc',1,'armBitRevIndexTable_fixed_2048(): arm_common_tables.c'],['../arm__common__tables_8h.html#ad888a207e20f601ed80b2ad43428c8cc',1,'armBitRevIndexTable_fixed_2048(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f256',['armBitRevIndexTable_fixed_256',['../arm__common__tables_8c.html#a721d01114016584629f03c0af37dd21e',1,'armBitRevIndexTable_fixed_256(): arm_common_tables.c'],['../arm__common__tables_8h.html#a721d01114016584629f03c0af37dd21e',1,'armBitRevIndexTable_fixed_256(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f32',['armBitRevIndexTable_fixed_32',['../arm__common__tables_8c.html#a59710415522cc38defa30402021f1f6b',1,'armBitRevIndexTable_fixed_32(): arm_common_tables.c'],['../arm__common__tables_8h.html#a59710415522cc38defa30402021f1f6b',1,'armBitRevIndexTable_fixed_32(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f4096',['armBitRevIndexTable_fixed_4096',['../arm__common__tables_8c.html#a2db644df1e878209441166cbb8d0db4f',1,'armBitRevIndexTable_fixed_4096(): arm_common_tables.c'],['../arm__common__tables_8h.html#a2db644df1e878209441166cbb8d0db4f',1,'armBitRevIndexTable_fixed_4096(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f512',['armBitRevIndexTable_fixed_512',['../arm__common__tables_8c.html#a03d1de7bfc5f318bc4fcfddd920bcb5a',1,'armBitRevIndexTable_fixed_512(): arm_common_tables.c'],['../arm__common__tables_8h.html#a03d1de7bfc5f318bc4fcfddd920bcb5a',1,'armBitRevIndexTable_fixed_512(): arm_common_tables.c']]], + ['armbitrevindextable_5ffixed_5f64',['armBitRevIndexTable_fixed_64',['../arm__common__tables_8c.html#af9e1bbd7d535806a170786b069863b47',1,'armBitRevIndexTable_fixed_64(): arm_common_tables.c'],['../arm__common__tables_8h.html#af9e1bbd7d535806a170786b069863b47',1,'armBitRevIndexTable_fixed_64(): arm_common_tables.c']]], + ['armbitrevtable',['armBitRevTable',['../group___c_f_f_t___c_i_f_f_t.html#gae247e83ad50d474107254e25b36ad42b',1,'armBitRevTable(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gae247e83ad50d474107254e25b36ad42b',1,'armBitRevTable(): arm_common_tables.c']]], + ['armreciptableq15',['armRecipTableQ15',['../arm__common__tables_8c.html#a66ca8ac5f3a63d9962f501ae60aa32be',1,'armRecipTableQ15(): arm_common_tables.c'],['../arm__common__tables_8h.html#a56d3642e4ee33e3ada57ff11ecda1498',1,'armRecipTableQ15(): arm_common_tables.c']]], + ['armreciptableq31',['armRecipTableQ31',['../arm__common__tables_8c.html#aae6056f6c4e8f7e494445196bf864479',1,'armRecipTableQ31(): arm_common_tables.c'],['../arm__common__tables_8h.html#aae6056f6c4e8f7e494445196bf864479',1,'armRecipTableQ31(): arm_common_tables.c']]], + ['at_5ff32',['AT_f32',['../arm__matrix__example__f32_8c.html#a46dc2aa6dfc692af7b4a1379d7329ccd',1,'arm_matrix_example_f32.c']]], + ['atma_5ff32',['ATMA_f32',['../arm__matrix__example__f32_8c.html#a867497c6bf86014513bf2ad3551aa896',1,'arm_matrix_example_f32.c']]], + ['atmai_5ff32',['ATMAI_f32',['../arm__matrix__example__f32_8c.html#a44425c149c52b326a3b7a77676686f00',1,'arm_matrix_example_f32.c']]], + ['axb',['AxB',['../_a_r_m_2arm__convolution__example__f32_8c.html#a13521f3164dc55679f43b7cb2e41e098',1,'AxB(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a13521f3164dc55679f43b7cb2e41e098',1,'AxB(): arm_convolution_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_62.html b/CMSIS/Documentation/DSP/html/search/variables_62.html new file mode 100644 index 0000000..c55a15e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_62.js b/CMSIS/Documentation/DSP/html/search/variables_62.js new file mode 100644 index 0000000..d712489 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_62.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['b_5ff32',['B_f32',['../arm__matrix__example__f32_8c.html#a974d5f0aace6a99e29ca767907fb3b9f',1,'arm_matrix_example_f32.c']]], + ['biquadstateband1q31',['biquadStateBand1Q31',['../arm__graphic__equalizer__example__q31_8c.html#a8e7062fa3f8b5ed9849566d16270f4ec',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband2q31',['biquadStateBand2Q31',['../arm__graphic__equalizer__example__q31_8c.html#a4a82090b15ebd0a45048d94f16131782',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband3q31',['biquadStateBand3Q31',['../arm__graphic__equalizer__example__q31_8c.html#ad487a54340631b764952fccf599adc8a',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband4q31',['biquadStateBand4Q31',['../arm__graphic__equalizer__example__q31_8c.html#a122ed5f6d8665139fbe9424a073b3474',1,'arm_graphic_equalizer_example_q31.c']]], + ['biquadstateband5q31',['biquadStateBand5Q31',['../arm__graphic__equalizer__example__q31_8c.html#af88658a8c5f87eeea26da30305921b59',1,'arm_graphic_equalizer_example_q31.c']]], + ['bitreverseflag',['bitReverseFlag',['../structarm__cfft__radix2__instance__q15.html#af8300c1f60caa21e6b44b9240ab5af19',1,'arm_cfft_radix2_instance_q15::bitReverseFlag()'],['../structarm__cfft__radix4__instance__q15.html#a101e3f7b0bd6b5b14cd5214f23df4133',1,'arm_cfft_radix4_instance_q15::bitReverseFlag()'],['../structarm__cfft__radix2__instance__q31.html#a6239b8d268285334e88c008c07d68616',1,'arm_cfft_radix2_instance_q31::bitReverseFlag()'],['../structarm__cfft__radix4__instance__q31.html#a5a7c4f4c7b3fb655cbb2bc11ef160a2a',1,'arm_cfft_radix4_instance_q31::bitReverseFlag()'],['../structarm__cfft__radix2__instance__f32.html#af713b4ac5256a19bc965c89fe3005fa3',1,'arm_cfft_radix2_instance_f32::bitReverseFlag()'],['../structarm__cfft__radix4__instance__f32.html#ac10927a1620195a88649ce63dab66120',1,'arm_cfft_radix4_instance_f32::bitReverseFlag()']]], + ['bitreverseflagr',['bitReverseFlagR',['../structarm__rfft__instance__q15.html#a4c65cd40e0098ec2f5c0dc31488b9bc6',1,'arm_rfft_instance_q15::bitReverseFlagR()'],['../structarm__rfft__instance__q31.html#a3cb90cdc928a88b0203917dcb3dc1b71',1,'arm_rfft_instance_q31::bitReverseFlagR()'],['../structarm__rfft__instance__f32.html#ac342f3248157cbbd2f04a3c8ec9fc9eb',1,'arm_rfft_instance_f32::bitReverseFlagR()']]], + ['bitrevfactor',['bitRevFactor',['../structarm__cfft__radix2__instance__q15.html#a8722720c542cabd41df83fe88ef4f4cb',1,'arm_cfft_radix2_instance_q15::bitRevFactor()'],['../structarm__cfft__radix4__instance__q15.html#a6b010e5f02d1130c621e3d2e26b95df1',1,'arm_cfft_radix4_instance_q15::bitRevFactor()'],['../structarm__cfft__radix2__instance__q31.html#a9d17a87263953fe3559a007512c9f3a4',1,'arm_cfft_radix2_instance_q31::bitRevFactor()'],['../structarm__cfft__radix4__instance__q31.html#a94d2fead4efa4d5eaae142bbe30b0e15',1,'arm_cfft_radix4_instance_q31::bitRevFactor()'],['../structarm__cfft__radix2__instance__f32.html#ac1688dafa5177f6b1505abbfd0cf8b21',1,'arm_cfft_radix2_instance_f32::bitRevFactor()'],['../structarm__cfft__radix4__instance__f32.html#acc8cb18a8b901b8321ab9d86491e41a3',1,'arm_cfft_radix4_instance_f32::bitRevFactor()']]], + ['bitrevlength',['bitRevLength',['../structarm__cfft__instance__q15.html#a738907cf34bdbbaf724414ac2decbc3c',1,'arm_cfft_instance_q15::bitRevLength()'],['../structarm__cfft__instance__q31.html#a2250fa6b8fe73292c5418c50c0549f87',1,'arm_cfft_instance_q31::bitRevLength()'],['../structarm__cfft__instance__f32.html#a3ba329ed153d182746376208e773d648',1,'arm_cfft_instance_f32::bitRevLength()']]], + ['bk',['Bk',['../_a_r_m_2arm__convolution__example__f32_8c.html#a88a0167516ae7ed66203fd60e6ddeea3',1,'Bk(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a88a0167516ae7ed66203fd60e6ddeea3',1,'Bk(): arm_convolution_example_f32.c']]], + ['blocksize',['blockSize',['../arm__fir__example__f32_8c.html#ab6558f40a619c2502fbc24c880fd4fb0',1,'blockSize(): arm_fir_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#ab6558f40a619c2502fbc24c880fd4fb0',1,'blockSize(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#ab6558f40a619c2502fbc24c880fd4fb0',1,'blockSize(): arm_variance_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_63.html b/CMSIS/Documentation/DSP/html/search/variables_63.html new file mode 100644 index 0000000..c649c81 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_63.js b/CMSIS/Documentation/DSP/html/search/variables_63.js new file mode 100644 index 0000000..4b0ba3e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_63.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['coefftable',['coeffTable',['../arm__graphic__equalizer__example__q31_8c.html#a024c59772b9603698b898721c1e8204e',1,'arm_graphic_equalizer_example_q31.c']]], + ['cos_5ffactors_5f128',['cos_factors_128',['../group___d_c_t4___i_d_c_t4.html#ga16248ed86161ef97538011b49f13e8b7',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactors_5f2048',['cos_factors_2048',['../group___d_c_t4___i_d_c_t4.html#ga1ba5306e0bc44730b40ab34cced45fd6',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactors_5f512',['cos_factors_512',['../group___d_c_t4___i_d_c_t4.html#ga49fd288352ca5bb43f5cec52273b0d80',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactors_5f8192',['cos_factors_8192',['../group___d_c_t4___i_d_c_t4.html#gac12484542bc6aaecc754c855457411de',1,'arm_dct4_init_f32.c']]], + ['cos_5ffactorsq15_5f128',['cos_factorsQ15_128',['../group___d_c_t4___i_d_c_t4.html#ga1477edd21c7b08b0b59a564f6c24d6c5',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq15_5f2048',['cos_factorsQ15_2048',['../group___d_c_t4___i_d_c_t4.html#gaeee5df7c1be2374441868ecbbc6c7e5d',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq15_5f512',['cos_factorsQ15_512',['../group___d_c_t4___i_d_c_t4.html#gac056c3d026058eab3ba650828ff5642f',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq15_5f8192',['cos_factorsQ15_8192',['../group___d_c_t4___i_d_c_t4.html#ga988ff0563cc9df7848c9348871ac6c07',1,'arm_dct4_init_q15.c']]], + ['cos_5ffactorsq31_5f128',['cos_factorsQ31_128',['../group___d_c_t4___i_d_c_t4.html#gabb8ee2004a3520fd08388db637d43875',1,'arm_dct4_init_q31.c']]], + ['cos_5ffactorsq31_5f2048',['cos_factorsQ31_2048',['../group___d_c_t4___i_d_c_t4.html#gaa15fc3fb058482defda371113cd12e74',1,'arm_dct4_init_q31.c']]], + ['cos_5ffactorsq31_5f512',['cos_factorsQ31_512',['../group___d_c_t4___i_d_c_t4.html#ga3559569e603cb918911074be88523d0e',1,'arm_dct4_init_q31.c']]], + ['cos_5ffactorsq31_5f8192',['cos_factorsQ31_8192',['../group___d_c_t4___i_d_c_t4.html#gaf687c4bbdbc700a3ad5d807d28de63e4',1,'arm_dct4_init_q31.c']]], + ['cosoutput',['cosOutput',['../arm__sin__cos__example__f32_8c.html#a85b1050fcef4347d69f35a9aee798f8a',1,'arm_sin_cos_example_f32.c']]], + ['cossquareoutput',['cosSquareOutput',['../arm__sin__cos__example__f32_8c.html#a2cb185794dcb587d158f346ab049cc4e',1,'arm_sin_cos_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_64.html b/CMSIS/Documentation/DSP/html/search/variables_64.html new file mode 100644 index 0000000..fee6769 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_64.js b/CMSIS/Documentation/DSP/html/search/variables_64.js new file mode 100644 index 0000000..a14368d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['dobitreverse',['doBitReverse',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a4d2e31c38e8172505e0a369a6898657d',1,'doBitReverse(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a4d2e31c38e8172505e0a369a6898657d',1,'doBitReverse(): arm_fft_bin_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_65.html b/CMSIS/Documentation/DSP/html/search/variables_65.html new file mode 100644 index 0000000..95b64e6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_65.js b/CMSIS/Documentation/DSP/html/search/variables_65.js new file mode 100644 index 0000000..4e88c21 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_65.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['energy',['energy',['../structarm__lms__norm__instance__f32.html#a6a4119e4f39447bbee31b066deafa16f',1,'arm_lms_norm_instance_f32::energy()'],['../structarm__lms__norm__instance__q31.html#a3c0ae42869afec8555dc8e3a7ef9b386',1,'arm_lms_norm_instance_q31::energy()'],['../structarm__lms__norm__instance__q15.html#a1c81ded399919d8181026bc1c8602e7b',1,'arm_lms_norm_instance_q15::energy()']]], + ['err_5fsignal',['err_signal',['../arm__signal__converge__example__f32_8c.html#ae6bcc00ea126543ab33d6174549eacda',1,'arm_signal_converge_example_f32.c']]], + ['erroutput',['errOutput',['../arm__signal__converge__example__f32_8c.html#a276e8a27484cf9389dabf047e76992ed',1,'arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_66.html b/CMSIS/Documentation/DSP/html/search/variables_66.html new file mode 100644 index 0000000..9ff42ab --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_66.js b/CMSIS/Documentation/DSP/html/search/variables_66.js new file mode 100644 index 0000000..f6b6665 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_66.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['fftlen',['fftLen',['../structarm__cfft__radix2__instance__q15.html#a874085647351dcf3f0de39d2b1d49744',1,'arm_cfft_radix2_instance_q15::fftLen()'],['../structarm__cfft__radix4__instance__q15.html#a5fc543e7d84ca8cb7cf6648970f21ca6',1,'arm_cfft_radix4_instance_q15::fftLen()'],['../structarm__cfft__radix2__instance__q31.html#a960199f1373a192366878ef279eab00f',1,'arm_cfft_radix2_instance_q31::fftLen()'],['../structarm__cfft__radix4__instance__q31.html#ab413d2a5d3f45fa187d93813bf3bf81b',1,'arm_cfft_radix4_instance_q31::fftLen()'],['../structarm__cfft__radix2__instance__f32.html#a2f915a1c29635c1623086aaaa726be8f',1,'arm_cfft_radix2_instance_f32::fftLen()'],['../structarm__cfft__radix4__instance__f32.html#a7e6a6d290ce158ce9a15a45e364b021a',1,'arm_cfft_radix4_instance_f32::fftLen()'],['../structarm__cfft__instance__q15.html#a5f9e1d3a8c127ee323b5e6929aeb90df',1,'arm_cfft_instance_q15::fftLen()'],['../structarm__cfft__instance__q31.html#a4406f23e8fd0bff8d555225612e2a2a8',1,'arm_cfft_instance_q31::fftLen()'],['../structarm__cfft__instance__f32.html#acd8f9e9540e3dd348212726e5d6aaa95',1,'arm_cfft_instance_f32::fftLen()']]], + ['fftlenby2',['fftLenBy2',['../structarm__rfft__instance__f32.html#a075076e07ebb8521d8e3b49a31db6c57',1,'arm_rfft_instance_f32']]], + ['fftlenreal',['fftLenReal',['../structarm__rfft__instance__q15.html#aac5cf9e825917cbb14f439e56bb86ab3',1,'arm_rfft_instance_q15::fftLenReal()'],['../structarm__rfft__instance__q31.html#af777b0cadd5abaf064323692c2e6693b',1,'arm_rfft_instance_q31::fftLenReal()'],['../structarm__rfft__instance__f32.html#a4219d4669699e4efdcb150ed7a0d9a57',1,'arm_rfft_instance_f32::fftLenReal()']]], + ['fftlenrfft',['fftLenRFFT',['../structarm__rfft__fast__instance__f32.html#aef06ab665041ec36f5b25d464f0cab14',1,'arm_rfft_fast_instance_f32']]], + ['fftsize',['fftSize',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a9b500899c581f6df3ffc0a9f3a9ef6aa',1,'fftSize(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a9b500899c581f6df3ffc0a9f3a9ef6aa',1,'fftSize(): arm_fft_bin_example_f32.c']]], + ['fircoeff_5ff32',['FIRCoeff_f32',['../arm__signal__converge__data_8c.html#aede8780f021b7f5c33df0c5ee2183ee6',1,'FIRCoeff_f32(): arm_signal_converge_data.c'],['../arm__signal__converge__example__f32_8c.html#aede8780f021b7f5c33df0c5ee2183ee6',1,'FIRCoeff_f32(): arm_signal_converge_data.c']]], + ['fircoeffs32',['firCoeffs32',['../arm__fir__example__f32_8c.html#ae070afd14f437ad1ae0a947e4403dd0e',1,'arm_fir_example_f32.c']]], + ['firstatef32',['firStateF32',['../arm__fir__example__f32_8c.html#a46d61cabe5cb207f2776e1d4f8ca0f38',1,'firStateF32(): arm_fir_example_f32.c'],['../arm__signal__converge__example__f32_8c.html#a358ec4e79689e6d3787b89fe78bdb772',1,'firStateF32(): arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_67.html b/CMSIS/Documentation/DSP/html/search/variables_67.html new file mode 100644 index 0000000..a7dd438 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_67.js b/CMSIS/Documentation/DSP/html/search/variables_67.js new file mode 100644 index 0000000..5c39067 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_67.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['gaindb',['gainDB',['../arm__graphic__equalizer__example__q31_8c.html#a963aee85bb41a50fc943ac9048d123ab',1,'arm_graphic_equalizer_example_q31.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_69.html b/CMSIS/Documentation/DSP/html/search/variables_69.html new file mode 100644 index 0000000..d4ddaf0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_69.js b/CMSIS/Documentation/DSP/html/search/variables_69.js new file mode 100644 index 0000000..f3dcb0b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_69.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['ifftflag',['ifftFlag',['../structarm__cfft__radix2__instance__q15.html#ab5c073286bdd2f6e2bf783ced36bf1de',1,'arm_cfft_radix2_instance_q15::ifftFlag()'],['../structarm__cfft__radix4__instance__q15.html#a2ecff6ea735cb4d22e922d0fd5736655',1,'arm_cfft_radix4_instance_q15::ifftFlag()'],['../structarm__cfft__radix2__instance__q31.html#a2607378ce64be16698bb8a3b1af8d3c8',1,'arm_cfft_radix2_instance_q31::ifftFlag()'],['../structarm__cfft__radix4__instance__q31.html#adc0a62ba669ad2282ecbe43d5d96abab',1,'arm_cfft_radix4_instance_q31::ifftFlag()'],['../structarm__cfft__radix2__instance__f32.html#a8dbe98d2c924e35e0a3fed2fe948176f',1,'arm_cfft_radix2_instance_f32::ifftFlag()'],['../structarm__cfft__radix4__instance__f32.html#a25d1da64dd6487c291f04d226f9acc66',1,'arm_cfft_radix4_instance_f32::ifftFlag()'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a379ccb99013d369a41b49619083c16ef',1,'ifftFlag(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a379ccb99013d369a41b49619083c16ef',1,'ifftFlag(): arm_fft_bin_example_f32.c']]], + ['ifftflagr',['ifftFlagR',['../structarm__rfft__instance__q15.html#a8051ffe268c147e431e1bea7bb4c4258',1,'arm_rfft_instance_q15::ifftFlagR()'],['../structarm__rfft__instance__q31.html#af5c2615e6cde15524df38fa57ea32d94',1,'arm_rfft_instance_q31::ifftFlagR()'],['../structarm__rfft__instance__f32.html#a5ee6d10a934ab4b666e0bb286c3d633f',1,'arm_rfft_instance_f32::ifftFlagR()']]], + ['inputq31',['inputQ31',['../arm__graphic__equalizer__example__q31_8c.html#a79521a4d6a9adb144c4d999ae713413c',1,'arm_graphic_equalizer_example_q31.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_6b.html b/CMSIS/Documentation/DSP/html/search/variables_6b.html new file mode 100644 index 0000000..4cc58a6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6b.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_6b.js b/CMSIS/Documentation/DSP/html/search/variables_6b.js new file mode 100644 index 0000000..dbdbd2b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6b.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['kd',['Kd',['../structarm__pid__instance__q15.html#af5d4b53091f19eff7536636b7cc43111',1,'arm_pid_instance_q15::Kd()'],['../structarm__pid__instance__q31.html#aab4ff371d14441df501f1169f71cbd17',1,'arm_pid_instance_q31::Kd()'],['../structarm__pid__instance__f32.html#ad5b68fbf84d16188ae4747ff91f6f088',1,'arm_pid_instance_f32::Kd()']]], + ['ki',['Ki',['../structarm__pid__instance__q15.html#a0dcc19d5c8f7bc401acea9e8318cd777',1,'arm_pid_instance_q15::Ki()'],['../structarm__pid__instance__q31.html#aa861d69fd398f29aa0b4b455a823ed72',1,'arm_pid_instance_q31::Ki()'],['../structarm__pid__instance__f32.html#ac0feffde05fe391eeab3bf78e953830a',1,'arm_pid_instance_f32::Ki()']]], + ['kp',['Kp',['../structarm__pid__instance__q15.html#ad228aae24a1b6d855c93a8b9bbc1c4f1',1,'arm_pid_instance_q15::Kp()'],['../structarm__pid__instance__q31.html#ac2410bf7f856d58dc1d773d4983cac8e',1,'arm_pid_instance_q31::Kp()'],['../structarm__pid__instance__f32.html#aa9b9aa9e413c6cec376a9dddc9f01ebe',1,'arm_pid_instance_f32::Kp()']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_6c.html b/CMSIS/Documentation/DSP/html/search/variables_6c.html new file mode 100644 index 0000000..6016f5c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_6c.js b/CMSIS/Documentation/DSP/html/search/variables_6c.js new file mode 100644 index 0000000..c2340d5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6c.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['l',['L',['../structarm__fir__interpolate__instance__q15.html#a5431bdc079e72a973b51d359f7f13603',1,'arm_fir_interpolate_instance_q15::L()'],['../structarm__fir__interpolate__instance__q31.html#a5cdf0a631cb74e0e9588c388abe5235c',1,'arm_fir_interpolate_instance_q31::L()'],['../structarm__fir__interpolate__instance__f32.html#ae6f94dcc0ccd8aa4bc699b20985d9df5',1,'arm_fir_interpolate_instance_f32::L()']]], + ['lmsnorm_5finstance',['lmsNorm_instance',['../arm__signal__converge__example__f32_8c.html#a519f9b4db839245f3bf2075ff4c17605',1,'arm_signal_converge_example_f32.c']]], + ['lmsnormcoeff_5ff32',['lmsNormCoeff_f32',['../arm__signal__converge__data_8c.html#aad7c60c30c5af397bb75e603f250f9d3',1,'lmsNormCoeff_f32(): arm_signal_converge_data.c'],['../arm__signal__converge__example__f32_8c.html#aad7c60c30c5af397bb75e603f250f9d3',1,'lmsNormCoeff_f32(): arm_signal_converge_data.c']]], + ['lmsstatef32',['lmsStateF32',['../arm__signal__converge__example__f32_8c.html#a706980f6f654d199c61e08e7814bd0a1',1,'arm_signal_converge_example_f32.c']]], + ['lpf_5finstance',['LPF_instance',['../arm__signal__converge__example__f32_8c.html#a652d3507a776117b4860b3e18f2d2d64',1,'arm_signal_converge_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_6d.html b/CMSIS/Documentation/DSP/html/search/variables_6d.html new file mode 100644 index 0000000..b7924e3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_6d.js b/CMSIS/Documentation/DSP/html/search/variables_6d.js new file mode 100644 index 0000000..2e0be6b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6d.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['m',['M',['../structarm__fir__decimate__instance__q15.html#aad9320284218b3aa378527ea518cf093',1,'arm_fir_decimate_instance_q15::M()'],['../structarm__fir__decimate__instance__q31.html#ad3d6936c36303b30dd38f1eddf248ae5',1,'arm_fir_decimate_instance_q31::M()'],['../structarm__fir__decimate__instance__f32.html#a76a8b2161731638eb3d67f277919f95d',1,'arm_fir_decimate_instance_f32::M()']]], + ['m0',['M0',['../arm__class__marks__example_2_a_r_m_2_abstract_8txt.html#a59a24f1db2c97fc0ad7948b4a74267ee',1,'M0(): Abstract.txt'],['../arm__class__marks__example_2_g_c_c_2_abstract_8txt.html#a59a24f1db2c97fc0ad7948b4a74267ee',1,'M0(): Abstract.txt'],['../arm__convolution__example_2_a_r_m_2_abstract_8txt.html#adc5db9f8d5aa735dbce2dc35f184d85e',1,'M0(): Abstract.txt'],['../arm__convolution__example_2_g_c_c_2_abstract_8txt.html#adc5db9f8d5aa735dbce2dc35f184d85e',1,'M0(): Abstract.txt'],['../arm__dotproduct__example_2_a_r_m_2_abstract_8txt.html#aafffda4c4e9b93a580e5a8cc96c11e37',1,'M0(): Abstract.txt'],['../arm__dotproduct__example_2_g_c_c_2_abstract_8txt.html#aafffda4c4e9b93a580e5a8cc96c11e37',1,'M0(): Abstract.txt'],['../arm__fft__bin__example_2_a_r_m_2_abstract_8txt.html#ad0415ef995ebc3fc2ad584da9907dcb5',1,'M0(): Abstract.txt'],['../arm__fft__bin__example_2_g_c_c_2_abstract_8txt.html#ad0415ef995ebc3fc2ad584da9907dcb5',1,'M0(): Abstract.txt'],['../arm__fir__example_2_a_r_m_2_abstract_8txt.html#abf726d1cea9345acb0021535d4fdd5af',1,'M0(): Abstract.txt'],['../arm__graphic__equalizer__example_2_a_r_m_2_abstract_8txt.html#ac378b27aa1fc4fe4ac9a4dfa2d185553',1,'M0(): Abstract.txt'],['../arm__linear__interp__example_2_a_r_m_2_abstract_8txt.html#a80f8916aca7a5a98fcfc39d1ef743b37',1,'M0(): Abstract.txt'],['../arm__matrix__example_2_a_r_m_2_abstract_8txt.html#a267aee43e600168b057c1aa126029002',1,'M0(): Abstract.txt'],['../arm__signal__converge__example_2_a_r_m_2_abstract_8txt.html#a20d2ac954144a7f2d4aced0816eecef6',1,'M0(): Abstract.txt'],['../arm__sin__cos__example_2_a_r_m_2_abstract_8txt.html#ae39c147711857790fd5c3cc7a75ef0c3',1,'M0(): Abstract.txt'],['../arm__variance__example_2_a_r_m_2_abstract_8txt.html#a8c8cf1e0f2ebd6135c79d5338a60899c',1,'M0(): Abstract.txt']]], + ['max_5fmarks',['max_marks',['../_a_r_m_2arm__class__marks__example__f32_8c.html#aad32888fa966b3d9db9c31bcbba9d9ef',1,'max_marks(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#aad32888fa966b3d9db9c31bcbba9d9ef',1,'max_marks(): arm_class_marks_example_f32.c']]], + ['maxdelay',['maxDelay',['../structarm__fir__sparse__instance__f32.html#af8b8c775f4084c36774f06c082b4c078',1,'arm_fir_sparse_instance_f32::maxDelay()'],['../structarm__fir__sparse__instance__q31.html#afdd3a1dc72132c854dc379154b68b674',1,'arm_fir_sparse_instance_q31::maxDelay()'],['../structarm__fir__sparse__instance__q15.html#ad14cc1070eecf7e1926d8f67a8273182',1,'arm_fir_sparse_instance_q15::maxDelay()'],['../structarm__fir__sparse__instance__q7.html#af74dacc1d34c078283e50f2530eb91df',1,'arm_fir_sparse_instance_q7::maxDelay()']]], + ['mean',['mean',['../_a_r_m_2arm__class__marks__example__f32_8c.html#acc9290716b3c97381ce52d14b4b01681',1,'mean(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#acc9290716b3c97381ce52d14b4b01681',1,'mean(): arm_class_marks_example_f32.c']]], + ['min_5fmarks',['min_marks',['../_a_r_m_2arm__class__marks__example__f32_8c.html#abb7687fa07ec54d8e792cfcbfe2ca809',1,'min_marks(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#abb7687fa07ec54d8e792cfcbfe2ca809',1,'min_marks(): arm_class_marks_example_f32.c']]], + ['mu',['mu',['../structarm__lms__instance__f32.html#ae2af43d74c93dba16b876e10c97a5b99',1,'arm_lms_instance_f32::mu()'],['../structarm__lms__instance__q15.html#aae46129d7cfd7f1c162cc502ed0a9d49',1,'arm_lms_instance_q15::mu()'],['../structarm__lms__instance__q31.html#acb6ca9996b3c5f740d5d6c8e9f4f1d46',1,'arm_lms_instance_q31::mu()'],['../structarm__lms__norm__instance__f32.html#a84401d3cfc6c40f69c08223cf341b886',1,'arm_lms_norm_instance_f32::mu()'],['../structarm__lms__norm__instance__q31.html#ad3dd2a2406e02fdaa7782ba6c3940a64',1,'arm_lms_norm_instance_q31::mu()'],['../structarm__lms__norm__instance__q15.html#a7ce00f21d11cfda6d963240641deea8c',1,'arm_lms_norm_instance_q15::mu()']]], + ['multoutput',['multOutput',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#ad0bfd425dfe1ff2bda80fb957e464098',1,'multOutput(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#ad0bfd425dfe1ff2bda80fb957e464098',1,'multOutput(): arm_dotproduct_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_6e.html b/CMSIS/Documentation/DSP/html/search/variables_6e.html new file mode 100644 index 0000000..4cc41d5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_6e.js b/CMSIS/Documentation/DSP/html/search/variables_6e.js new file mode 100644 index 0000000..58e38af --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6e.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['n',['N',['../structarm__dct4__instance__f32.html#a262b29a51c371b46efc89120e31ccf37',1,'arm_dct4_instance_f32::N()'],['../structarm__dct4__instance__q31.html#a46a9f136457350676e2bfd3768ff9d6d',1,'arm_dct4_instance_q31::N()'],['../structarm__dct4__instance__q15.html#a53d24009bb9b2e93d0aa07db7f1a6c25',1,'arm_dct4_instance_q15::N()']]], + ['nby2',['Nby2',['../structarm__dct4__instance__f32.html#adb1ef2739ddbe62e5cdadc47455a4147',1,'arm_dct4_instance_f32::Nby2()'],['../structarm__dct4__instance__q31.html#a32d3268ba4629908dba056599f0a904d',1,'arm_dct4_instance_q31::Nby2()'],['../structarm__dct4__instance__q15.html#af43dcbbc2fc661ffbc525afe3dcbd7da',1,'arm_dct4_instance_q15::Nby2()']]], + ['normalize',['normalize',['../structarm__dct4__instance__f32.html#a61ce8c967b2e998a9c0041cca73cdef8',1,'arm_dct4_instance_f32::normalize()'],['../structarm__dct4__instance__q31.html#ac80ff7b28fca36aeef74dea12e8312dd',1,'arm_dct4_instance_q31::normalize()'],['../structarm__dct4__instance__q15.html#a197098140d68e89a08f7a249003a0b86',1,'arm_dct4_instance_q15::normalize()']]], + ['numblocks',['numBlocks',['../arm__fir__example__f32_8c.html#af7d5613bda9a19b2ccae5d6cb79a22bc',1,'arm_fir_example_f32.c']]], + ['numcols',['numCols',['../structarm__matrix__instance__f32.html#acdd1fb73734df68b89565c54f1dd8ae2',1,'arm_matrix_instance_f32::numCols()'],['../structarm__matrix__instance__f64.html#ab0f0399aff3201880e2d8a447de9a7ee',1,'arm_matrix_instance_f64::numCols()'],['../structarm__matrix__instance__q15.html#acbbce67ba058d8e1c867c71d57288c97',1,'arm_matrix_instance_q15::numCols()'],['../structarm__matrix__instance__q31.html#abd161da7614eda927157f18b698074b1',1,'arm_matrix_instance_q31::numCols()'],['../structarm__bilinear__interp__instance__f32.html#aede17bebfb1f835b61d71dd813eab3f8',1,'arm_bilinear_interp_instance_f32::numCols()'],['../structarm__bilinear__interp__instance__q31.html#a6c3eff4eb17ff1d43f170efb84713a2d',1,'arm_bilinear_interp_instance_q31::numCols()'],['../structarm__bilinear__interp__instance__q15.html#a7fa8772d01583374ff8ac18205a26a37',1,'arm_bilinear_interp_instance_q15::numCols()'],['../structarm__bilinear__interp__instance__q7.html#a860dd0d24380ea06cfbb348fb3b12c9a',1,'arm_bilinear_interp_instance_q7::numCols()']]], + ['numrows',['numRows',['../structarm__matrix__instance__f32.html#a23f4e34d70a82c9cad7612add5640b7b',1,'arm_matrix_instance_f32::numRows()'],['../structarm__matrix__instance__f64.html#a8b44d1e5003345047c4ead9e1593bf22',1,'arm_matrix_instance_f64::numRows()'],['../structarm__matrix__instance__q15.html#a9bac6ed54be287c4d4f01a1a28be65f5',1,'arm_matrix_instance_q15::numRows()'],['../structarm__matrix__instance__q31.html#a63bacac158a821c8cfc06088d251598c',1,'arm_matrix_instance_q31::numRows()'],['../structarm__bilinear__interp__instance__f32.html#a34f2b17cc57b95011960df9718af6ed6',1,'arm_bilinear_interp_instance_f32::numRows()'],['../structarm__bilinear__interp__instance__q31.html#a2082e3eac56354d75291f03e96ce4aa5',1,'arm_bilinear_interp_instance_q31::numRows()'],['../structarm__bilinear__interp__instance__q15.html#a2130ae30a804995a9f5d0e2189e08565',1,'arm_bilinear_interp_instance_q15::numRows()'],['../structarm__bilinear__interp__instance__q7.html#ad5a8067cab5f9ea4688b11a623e16607',1,'arm_bilinear_interp_instance_q7::numRows()']]], + ['numstages',['numStages',['../structarm__biquad__casd__df1__inst__q15.html#ad6d95e70abcf4ff1300181415ad92153',1,'arm_biquad_casd_df1_inst_q15::numStages()'],['../structarm__biquad__casd__df1__inst__q31.html#a2c2b579f1df1d8273a5d9d945c27e1b2',1,'arm_biquad_casd_df1_inst_q31::numStages()'],['../structarm__biquad__casd__df1__inst__f32.html#af69820c37a87252c46453e4cfe120585',1,'arm_biquad_casd_df1_inst_f32::numStages()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#ad7cb9a9f5df8f4fcfc7a0b633672e574',1,'arm_biquad_cas_df1_32x64_ins_q31::numStages()'],['../structarm__biquad__cascade__df2_t__instance__f32.html#a4d17958c33c3d0a905f974bac50f033f',1,'arm_biquad_cascade_df2T_instance_f32::numStages()'],['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a5655328252da5c2c2425ceed253bc4f1',1,'arm_biquad_cascade_stereo_df2T_instance_f32::numStages()'],['../structarm__biquad__cascade__df2_t__instance__f64.html#ad55380ff835b533aa5168f836db8a4de',1,'arm_biquad_cascade_df2T_instance_f64::numStages()'],['../structarm__fir__lattice__instance__q15.html#a38b179138d6a6c9cac4f8f79b6fd5357',1,'arm_fir_lattice_instance_q15::numStages()'],['../structarm__fir__lattice__instance__q31.html#a9f3773bbb76bc5a8a5ee9d37786bf478',1,'arm_fir_lattice_instance_q31::numStages()'],['../structarm__fir__lattice__instance__f32.html#ad369bd9997a250f195254df37408a38f',1,'arm_fir_lattice_instance_f32::numStages()'],['../structarm__iir__lattice__instance__q15.html#a96fbed313bef01070409fa182d26ba3f',1,'arm_iir_lattice_instance_q15::numStages()'],['../structarm__iir__lattice__instance__q31.html#a9df4570ed28c50fd9193ab654ff236ad',1,'arm_iir_lattice_instance_q31::numStages()'],['../structarm__iir__lattice__instance__f32.html#af8de449af5efe1f30be82f9ba35587ee',1,'arm_iir_lattice_instance_f32::numStages()']]], + ['numstudents',['numStudents',['../_a_r_m_2arm__class__marks__example__f32_8c.html#ab3b66d06b4af1af4ea2740d0ccf4e7bd',1,'numStudents(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#ab3b66d06b4af1af4ea2740d0ccf4e7bd',1,'numStudents(): arm_class_marks_example_f32.c']]], + ['numsubjects',['numSubjects',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a3d01884f63bcb694226ca7c24980757a',1,'numSubjects(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a3d01884f63bcb694226ca7c24980757a',1,'numSubjects(): arm_class_marks_example_f32.c']]], + ['numtaps',['numTaps',['../structarm__fir__instance__q7.html#a9b50840e2c5ef5b17e1a584fb4cf0d06',1,'arm_fir_instance_q7::numTaps()'],['../structarm__fir__instance__q15.html#a0e46f93cf51bfb18b1be808be9c5bfc9',1,'arm_fir_instance_q15::numTaps()'],['../structarm__fir__instance__q31.html#a918fadd775b7a0482b21bf34dae2f094',1,'arm_fir_instance_q31::numTaps()'],['../structarm__fir__instance__f32.html#a20cf98c92b5323799b7881c9ff4d2f7c',1,'arm_fir_instance_f32::numTaps()'],['../structarm__fir__decimate__instance__q15.html#ac1e9844488ec717da334fbd4c4f41990',1,'arm_fir_decimate_instance_q15::numTaps()'],['../structarm__fir__decimate__instance__q31.html#a37915d42b0dc5e3057ebe83110798482',1,'arm_fir_decimate_instance_q31::numTaps()'],['../structarm__fir__decimate__instance__f32.html#a2aa2986129db8affef03ede88dd45a03',1,'arm_fir_decimate_instance_f32::numTaps()'],['../structarm__lms__instance__f32.html#af73880d9009982f5d14529869494ec3d',1,'arm_lms_instance_f32::numTaps()'],['../structarm__lms__instance__q15.html#a0078e894f805af1b360369e619fb57b3',1,'arm_lms_instance_q15::numTaps()'],['../structarm__lms__instance__q31.html#ac0d84f7d054555931ef8a62511fbcb8a',1,'arm_lms_instance_q31::numTaps()'],['../structarm__lms__norm__instance__f32.html#ac95f8ca3d816524c2070643852fac5e8',1,'arm_lms_norm_instance_f32::numTaps()'],['../structarm__lms__norm__instance__q31.html#a28e4c085af69c9c3e2e95dacf8004c3e',1,'arm_lms_norm_instance_q31::numTaps()'],['../structarm__lms__norm__instance__q15.html#a9ee7a45f4f315d7996a969e25fdc7146',1,'arm_lms_norm_instance_q15::numTaps()'],['../structarm__fir__sparse__instance__f32.html#a5e19e7f234ac30a3db843352bf2a8515',1,'arm_fir_sparse_instance_f32::numTaps()'],['../structarm__fir__sparse__instance__q31.html#a07b6c01e58ec6dde384719130d36b0dc',1,'arm_fir_sparse_instance_q31::numTaps()'],['../structarm__fir__sparse__instance__q15.html#a0f66b126dd8b85f7467cfb01b7bc4d77',1,'arm_fir_sparse_instance_q15::numTaps()'],['../structarm__fir__sparse__instance__q7.html#a54cdd27ca1c672b126c38763ce678b1c',1,'arm_fir_sparse_instance_q7::numTaps()']]], + ['nvalues',['nValues',['../structarm__linear__interp__instance__f32.html#a95f02a926b16d35359aca5b31e813b11',1,'arm_linear_interp_instance_f32']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_6f.html b/CMSIS/Documentation/DSP/html/search/variables_6f.html new file mode 100644 index 0000000..12fe64f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_6f.js b/CMSIS/Documentation/DSP/html/search/variables_6f.js new file mode 100644 index 0000000..c744120 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_6f.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['onebyfftlen',['onebyfftLen',['../structarm__cfft__radix2__instance__f32.html#a1d3d289d47443e597d88a40effd14b8f',1,'arm_cfft_radix2_instance_f32::onebyfftLen()'],['../structarm__cfft__radix4__instance__f32.html#ab9eed39e40b8d7c16381fbccf84467cd',1,'arm_cfft_radix4_instance_f32::onebyfftLen()']]], + ['outlen',['outLen',['../_a_r_m_2arm__convolution__example__f32_8c.html#a9c49c44c8bc5c432d220d33a26b4b589',1,'outLen(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a9c49c44c8bc5c432d220d33a26b4b589',1,'outLen(): arm_convolution_example_f32.c']]], + ['outputq31',['outputQ31',['../arm__graphic__equalizer__example__q31_8c.html#a9862488450f2547b07aee8035d6b4d8a',1,'arm_graphic_equalizer_example_q31.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_70.html b/CMSIS/Documentation/DSP/html/search/variables_70.html new file mode 100644 index 0000000..bc5c193 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_70.js b/CMSIS/Documentation/DSP/html/search/variables_70.js new file mode 100644 index 0000000..7b05b8d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_70.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['pbitrevtable',['pBitRevTable',['../structarm__cfft__radix2__instance__q15.html#ab88afeff6493be3c8b5e4530efa82d51',1,'arm_cfft_radix2_instance_q15::pBitRevTable()'],['../structarm__cfft__radix4__instance__q15.html#a4acf704ae0cf30b53bf0fbfae8e34a59',1,'arm_cfft_radix4_instance_q15::pBitRevTable()'],['../structarm__cfft__radix2__instance__q31.html#ada8e5264f4b22ff4c621817978994674',1,'arm_cfft_radix2_instance_q31::pBitRevTable()'],['../structarm__cfft__radix4__instance__q31.html#a33a3bc774c97373261699463c05dfe54',1,'arm_cfft_radix4_instance_q31::pBitRevTable()'],['../structarm__cfft__radix2__instance__f32.html#a92b8fa0a151cd800436094903a5ca0a4',1,'arm_cfft_radix2_instance_f32::pBitRevTable()'],['../structarm__cfft__radix4__instance__f32.html#a8da0d2ca69749fde8cbb95caeac6fe6a',1,'arm_cfft_radix4_instance_f32::pBitRevTable()'],['../structarm__cfft__instance__q15.html#ac9160b80243b99a0b6e2f75ddb5cf0ae',1,'arm_cfft_instance_q15::pBitRevTable()'],['../structarm__cfft__instance__q31.html#a8a464461649f023325ced1e10470f5d0',1,'arm_cfft_instance_q31::pBitRevTable()'],['../structarm__cfft__instance__f32.html#a21ceaf59a1bb8440af57c28d2dd9bbab',1,'arm_cfft_instance_f32::pBitRevTable()']]], + ['pcfft',['pCfft',['../structarm__rfft__instance__q15.html#a4329c15b056444746d37ff082a24d31a',1,'arm_rfft_instance_q15::pCfft()'],['../structarm__rfft__instance__q31.html#a8fe10d425b59e096c23aa4bb5caa1974',1,'arm_rfft_instance_q31::pCfft()'],['../structarm__rfft__instance__f32.html#a9f47ba9f50c81e4445ae3827b981bc05',1,'arm_rfft_instance_f32::pCfft()'],['../structarm__dct4__instance__f32.html#a018f7860b6e070af533fb7d76c7cdc32',1,'arm_dct4_instance_f32::pCfft()'],['../structarm__dct4__instance__q31.html#ac96579cfb28d08bb11dd2fe4c6303833',1,'arm_dct4_instance_q31::pCfft()'],['../structarm__dct4__instance__q15.html#a7284932ee8c36107c33815eb62eadffc',1,'arm_dct4_instance_q15::pCfft()']]], + ['pcoeffs',['pCoeffs',['../structarm__fir__instance__q7.html#a0e45aedefc3fffad6cb315c5b6e5bd49',1,'arm_fir_instance_q7::pCoeffs()'],['../structarm__fir__instance__q15.html#a6d16db16a5f8f0db54938f2967244d9e',1,'arm_fir_instance_q15::pCoeffs()'],['../structarm__fir__instance__q31.html#afaae4c884bdf11a4ec2f3b9bb2bb51d0',1,'arm_fir_instance_q31::pCoeffs()'],['../structarm__fir__instance__f32.html#a1c9cfca901d5902afeb640f2831488f4',1,'arm_fir_instance_f32::pCoeffs()'],['../structarm__biquad__casd__df1__inst__q15.html#a1edaacdebb5b09d7635bf20c779855fc',1,'arm_biquad_casd_df1_inst_q15::pCoeffs()'],['../structarm__biquad__casd__df1__inst__q31.html#aa62366c632f3b5305086f841f079dbd2',1,'arm_biquad_casd_df1_inst_q31::pCoeffs()'],['../structarm__biquad__casd__df1__inst__f32.html#af9df3820576fb921809d1462c9c6d16c',1,'arm_biquad_casd_df1_inst_f32::pCoeffs()'],['../structarm__fir__decimate__instance__q15.html#a01cacab67e73945e8289075598ede14d',1,'arm_fir_decimate_instance_q15::pCoeffs()'],['../structarm__fir__decimate__instance__q31.html#a030d0391538c2481c5b348fd09a952ff',1,'arm_fir_decimate_instance_q31::pCoeffs()'],['../structarm__fir__decimate__instance__f32.html#a268a8b0e80a3d9764baf33e4bc10dde2',1,'arm_fir_decimate_instance_f32::pCoeffs()'],['../structarm__fir__interpolate__instance__q15.html#a767d91d61d4c0beeddd4325d28d28e24',1,'arm_fir_interpolate_instance_q15::pCoeffs()'],['../structarm__fir__interpolate__instance__q31.html#afa719433687e1936ec3403d0d32f06e6',1,'arm_fir_interpolate_instance_q31::pCoeffs()'],['../structarm__fir__interpolate__instance__f32.html#a86053b715980a93c9df630d6de5bb63c',1,'arm_fir_interpolate_instance_f32::pCoeffs()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#a490462d6ebe0fecfb6acbf51bed22ecf',1,'arm_biquad_cas_df1_32x64_ins_q31::pCoeffs()'],['../structarm__biquad__cascade__df2_t__instance__f32.html#a49a24fe1b6ad3b0b26779c32d8d80b2e',1,'arm_biquad_cascade_df2T_instance_f32::pCoeffs()'],['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a58b15644de62a632c5e9d4a563569dc6',1,'arm_biquad_cascade_stereo_df2T_instance_f32::pCoeffs()'],['../structarm__biquad__cascade__df2_t__instance__f64.html#ae2f0180f9038c0393e1d6921bb3b878b',1,'arm_biquad_cascade_df2T_instance_f64::pCoeffs()'],['../structarm__fir__lattice__instance__q15.html#a78f872826140069cf67836fff87360bc',1,'arm_fir_lattice_instance_q15::pCoeffs()'],['../structarm__fir__lattice__instance__q31.html#a66c3364bf5863cd45e05f1652c3dc522',1,'arm_fir_lattice_instance_q31::pCoeffs()'],['../structarm__fir__lattice__instance__f32.html#a33bf5948c947f9ef80a99717cb0a0a43',1,'arm_fir_lattice_instance_f32::pCoeffs()'],['../structarm__lms__instance__f32.html#a4795c6f7d3f17cec15c2fd09f66edd1a',1,'arm_lms_instance_f32::pCoeffs()'],['../structarm__lms__instance__q15.html#a42f95368b94898eb82608e1113d18cab',1,'arm_lms_instance_q15::pCoeffs()'],['../structarm__lms__instance__q31.html#a4afe56e991a5416adfd462aa88bda500',1,'arm_lms_instance_q31::pCoeffs()'],['../structarm__lms__norm__instance__f32.html#a1ba688d90aba7de003ed4ad8e2e7ddda',1,'arm_lms_norm_instance_f32::pCoeffs()'],['../structarm__lms__norm__instance__q31.html#a57a64c1ff102d033c1bd05043f1d9955',1,'arm_lms_norm_instance_q31::pCoeffs()'],['../structarm__lms__norm__instance__q15.html#ae7bca648c75a2ffa02d87852bb78bc8a',1,'arm_lms_norm_instance_q15::pCoeffs()'],['../structarm__fir__sparse__instance__f32.html#a04af7c738dfb0882ad102fcad501d94a',1,'arm_fir_sparse_instance_f32::pCoeffs()'],['../structarm__fir__sparse__instance__q31.html#a093d6227f0d1597982cd083fb126f4e0',1,'arm_fir_sparse_instance_q31::pCoeffs()'],['../structarm__fir__sparse__instance__q15.html#a78a6565473b5f0b8c77c3f0f58a76069',1,'arm_fir_sparse_instance_q15::pCoeffs()'],['../structarm__fir__sparse__instance__q7.html#a3dac86f15e33553e8f3e19e0d712bae5',1,'arm_fir_sparse_instance_q7::pCoeffs()']]], + ['pcosfactor',['pCosFactor',['../structarm__dct4__instance__f32.html#a6da1187e070801e011ce5e0582efa861',1,'arm_dct4_instance_f32::pCosFactor()'],['../structarm__dct4__instance__q31.html#af97204d1838925621fc82021a0c2d6c1',1,'arm_dct4_instance_q31::pCosFactor()'],['../structarm__dct4__instance__q15.html#ac76df681b1bd502fb4874c06f055dded',1,'arm_dct4_instance_q15::pCosFactor()']]], + ['pdata',['pData',['../structarm__matrix__instance__f32.html#af3917c032600a9dfd5ed4a96f074910a',1,'arm_matrix_instance_f32::pData()'],['../structarm__matrix__instance__f64.html#a5b2475f8ff1e4818955cdd18bc40a097',1,'arm_matrix_instance_f64::pData()'],['../structarm__matrix__instance__q15.html#a6da33a5553e634787d0f515cf8d724af',1,'arm_matrix_instance_q15::pData()'],['../structarm__matrix__instance__q31.html#a09a64267c0579fef086efc9059741e56',1,'arm_matrix_instance_q31::pData()'],['../structarm__bilinear__interp__instance__f32.html#afd1e764591c991c212d56c893efb5ea4',1,'arm_bilinear_interp_instance_f32::pData()'],['../structarm__bilinear__interp__instance__q31.html#a843eae0c9db5f815e77e1aaf9afea358',1,'arm_bilinear_interp_instance_q31::pData()'],['../structarm__bilinear__interp__instance__q15.html#a50d75b1316cee3e0dfad6dcc4c9a2954',1,'arm_bilinear_interp_instance_q15::pData()'],['../structarm__bilinear__interp__instance__q7.html#af05194d691bbefb02c34bafb22ca9ef0',1,'arm_bilinear_interp_instance_q7::pData()']]], + ['phaselength',['phaseLength',['../structarm__fir__interpolate__instance__q15.html#ad5178a02a697a77e0d0e60705d9f0a19',1,'arm_fir_interpolate_instance_q15::phaseLength()'],['../structarm__fir__interpolate__instance__q31.html#a5d243796584afc7cd6c557f00b7acca5',1,'arm_fir_interpolate_instance_q31::phaseLength()'],['../structarm__fir__interpolate__instance__f32.html#a389e669e13ec56292a70db8e92194b12',1,'arm_fir_interpolate_instance_f32::phaseLength()']]], + ['pkcoeffs',['pkCoeffs',['../structarm__iir__lattice__instance__q15.html#a41c214a1ec38d4a82fae8899d715dd29',1,'arm_iir_lattice_instance_q15::pkCoeffs()'],['../structarm__iir__lattice__instance__q31.html#a1d30aa16aac7722936ea9dee59211863',1,'arm_iir_lattice_instance_q31::pkCoeffs()'],['../structarm__iir__lattice__instance__f32.html#aa69fcdd3775e828d450ce1bbd978fa31',1,'arm_iir_lattice_instance_f32::pkCoeffs()']]], + ['postshift',['postShift',['../structarm__biquad__casd__df1__inst__q15.html#ada7e9d6269e6ed4eacf8f68729e9832d',1,'arm_biquad_casd_df1_inst_q15::postShift()'],['../structarm__biquad__casd__df1__inst__q31.html#a636c7fbe09ec4bef0bc0a4b4e2151cbe',1,'arm_biquad_casd_df1_inst_q31::postShift()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#a8e9d58e8dba5aa3b2fc4f36d2ed07996',1,'arm_biquad_cas_df1_32x64_ins_q31::postShift()'],['../structarm__lms__instance__q15.html#acca5fbaef4a52ae411de24c9a0b929cf',1,'arm_lms_instance_q15::postShift()'],['../structarm__lms__instance__q31.html#a4705a8f0011bb9166e09bf5bd51e595e',1,'arm_lms_instance_q31::postShift()'],['../structarm__lms__norm__instance__q31.html#a28d7b9e437817f83397e081967e90f3c',1,'arm_lms_norm_instance_q31::postShift()'],['../structarm__lms__norm__instance__q15.html#aa0d435fbcf7dedb7179d4467e9b79e9f',1,'arm_lms_norm_instance_q15::postShift()']]], + ['prfft',['pRfft',['../structarm__dct4__instance__f32.html#a978f37fc19add31af243ab5c63ae502f',1,'arm_dct4_instance_f32::pRfft()'],['../structarm__dct4__instance__q31.html#af1487dab5e7963b85dc0fdc6bf492542',1,'arm_dct4_instance_q31::pRfft()'],['../structarm__dct4__instance__q15.html#a11cf95c1cd9dd2dd5e4b81b8f88dc208',1,'arm_dct4_instance_q15::pRfft()']]], + ['pstate',['pState',['../structarm__fir__instance__q7.html#aaddea3b9c7e16ddfd9428b7bf9f9c200',1,'arm_fir_instance_q7::pState()'],['../structarm__fir__instance__q15.html#aa8d25f44f45b6a6c4cf38c31569b8a01',1,'arm_fir_instance_q15::pState()'],['../structarm__fir__instance__q31.html#a409f39c93b744784648bdc365541444d',1,'arm_fir_instance_q31::pState()'],['../structarm__fir__instance__f32.html#a7afcf4022e8560db9b8fd28b0d090a15',1,'arm_fir_instance_f32::pState()'],['../structarm__biquad__casd__df1__inst__q15.html#a5481104ef2f8f81360b80b47d69ae932',1,'arm_biquad_casd_df1_inst_q15::pState()'],['../structarm__biquad__casd__df1__inst__q31.html#a5dcf4727f58eb4e8e8b392508d8657bb',1,'arm_biquad_casd_df1_inst_q31::pState()'],['../structarm__biquad__casd__df1__inst__f32.html#a8c245d79e0d8cfabc82409d4b54fb682',1,'arm_biquad_casd_df1_inst_f32::pState()'],['../structarm__fir__decimate__instance__q15.html#a3f7b5184bb28853ef401b001df121047',1,'arm_fir_decimate_instance_q15::pState()'],['../structarm__fir__decimate__instance__q31.html#a0ef0ef9e265f7ab873cfc6daa7593fdb',1,'arm_fir_decimate_instance_q31::pState()'],['../structarm__fir__decimate__instance__f32.html#a5bddf29aaaf2011d2e3bcec59a83f633',1,'arm_fir_decimate_instance_f32::pState()'],['../structarm__fir__interpolate__instance__q15.html#a26b864363fa47954248f2590e3a82a3c',1,'arm_fir_interpolate_instance_q15::pState()'],['../structarm__fir__interpolate__instance__q31.html#addde04514b6e6ac72be3d609f0398b1a',1,'arm_fir_interpolate_instance_q31::pState()'],['../structarm__fir__interpolate__instance__f32.html#a42a8ba1bda85fa86d7b6c84d3da4c75b',1,'arm_fir_interpolate_instance_f32::pState()'],['../structarm__biquad__cas__df1__32x64__ins__q31.html#a4c899cdfaf2bb955323e93637bd662e0',1,'arm_biquad_cas_df1_32x64_ins_q31::pState()'],['../structarm__biquad__cascade__df2_t__instance__f32.html#a24d223addfd926a7177088cf2efe76b1',1,'arm_biquad_cascade_df2T_instance_f32::pState()'],['../structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a2cb00048bb1fe957a03c1ff56dfaf8f0',1,'arm_biquad_cascade_stereo_df2T_instance_f32::pState()'],['../structarm__biquad__cascade__df2_t__instance__f64.html#a0bde57b618e3f9059b23b0de64e12ce3',1,'arm_biquad_cascade_df2T_instance_f64::pState()'],['../structarm__fir__lattice__instance__q15.html#a37b90dea2bc3ee7c9951a9fe74db0cbb',1,'arm_fir_lattice_instance_q15::pState()'],['../structarm__fir__lattice__instance__q31.html#a08fe9494ab7cd336b791e9657adadcf6',1,'arm_fir_lattice_instance_q31::pState()'],['../structarm__fir__lattice__instance__f32.html#ae348884a1ba9b83fadccd5da640cbcaf',1,'arm_fir_lattice_instance_f32::pState()'],['../structarm__iir__lattice__instance__q15.html#afd0136ab917b529554d93f41a5e04618',1,'arm_iir_lattice_instance_q15::pState()'],['../structarm__iir__lattice__instance__q31.html#a941282745effd26a889fbfadf4b95e6a',1,'arm_iir_lattice_instance_q31::pState()'],['../structarm__iir__lattice__instance__f32.html#a30babe7815510219e6e3d28e6e4a5969',1,'arm_iir_lattice_instance_f32::pState()'],['../structarm__lms__instance__f32.html#aaf94285be2f99b5b9af40bea8dcb14b9',1,'arm_lms_instance_f32::pState()'],['../structarm__lms__instance__q15.html#a9a575ff82c1e68cbb583083439260d08',1,'arm_lms_instance_q15::pState()'],['../structarm__lms__instance__q31.html#a206d47b49de6f357f933ebe61520753c',1,'arm_lms_instance_q31::pState()'],['../structarm__lms__norm__instance__f32.html#a0bc03338687002ed5f2e4a363eb095ec',1,'arm_lms_norm_instance_f32::pState()'],['../structarm__lms__norm__instance__q31.html#a6b25c96cf048b77078d62f4252a01ec4',1,'arm_lms_norm_instance_q31::pState()'],['../structarm__lms__norm__instance__q15.html#aa4de490b3bdbd03561b76ee07901c8e3',1,'arm_lms_norm_instance_q15::pState()'],['../structarm__fir__sparse__instance__f32.html#a794af0916666d11cc564d6df08553555',1,'arm_fir_sparse_instance_f32::pState()'],['../structarm__fir__sparse__instance__q31.html#a830be89daa5a393b225048889aa045d1',1,'arm_fir_sparse_instance_q31::pState()'],['../structarm__fir__sparse__instance__q15.html#a98b92b0f5208110129b9a67b1db90408',1,'arm_fir_sparse_instance_q15::pState()'],['../structarm__fir__sparse__instance__q7.html#a18072cf3ef3666d588f0d49512f2b28f',1,'arm_fir_sparse_instance_q7::pState()']]], + ['ptapdelay',['pTapDelay',['../structarm__fir__sparse__instance__f32.html#aaa54ae67e5d10c6dd0d697945c638d31',1,'arm_fir_sparse_instance_f32::pTapDelay()'],['../structarm__fir__sparse__instance__q31.html#ab87ae457adec8f727afefaa2599fc983',1,'arm_fir_sparse_instance_q31::pTapDelay()'],['../structarm__fir__sparse__instance__q15.html#aeab2855176c6efdb231a73a3672837d5',1,'arm_fir_sparse_instance_q15::pTapDelay()'],['../structarm__fir__sparse__instance__q7.html#ac625393c84bc0342ffdf26fc4eba1ac1',1,'arm_fir_sparse_instance_q7::pTapDelay()']]], + ['ptwiddle',['pTwiddle',['../structarm__cfft__radix2__instance__q15.html#a3809dd15e7cbf1a054c728cfbbb0cc5a',1,'arm_cfft_radix2_instance_q15::pTwiddle()'],['../structarm__cfft__radix4__instance__q15.html#a29dd693537e45421a36891f8439e1fba',1,'arm_cfft_radix4_instance_q15::pTwiddle()'],['../structarm__cfft__radix2__instance__q31.html#a1d5bbe9a991e133f81652a77a7985d23',1,'arm_cfft_radix2_instance_q31::pTwiddle()'],['../structarm__cfft__radix4__instance__q31.html#a561c22dee4cbdcfa0fd5f15106ecc306',1,'arm_cfft_radix4_instance_q31::pTwiddle()'],['../structarm__cfft__radix2__instance__f32.html#adb0c9d47dbfbd90a6f6ed0a05313a974',1,'arm_cfft_radix2_instance_f32::pTwiddle()'],['../structarm__cfft__radix4__instance__f32.html#a14860c7544911702ca1fa0bf78204ef3',1,'arm_cfft_radix4_instance_f32::pTwiddle()'],['../structarm__cfft__instance__q15.html#afdaf12ce4687cec021c5ae73d0987a3f',1,'arm_cfft_instance_q15::pTwiddle()'],['../structarm__cfft__instance__q31.html#af751114feb91de3ace8600e91bdd0872',1,'arm_cfft_instance_q31::pTwiddle()'],['../structarm__cfft__instance__f32.html#a59cc6f753f1498716e1444ac054c06de',1,'arm_cfft_instance_f32::pTwiddle()'],['../structarm__dct4__instance__f32.html#ad13544aafad268588c62e3eb35ae662c',1,'arm_dct4_instance_f32::pTwiddle()'],['../structarm__dct4__instance__q31.html#a7db236e22673146bb1d2c962f0713f08',1,'arm_dct4_instance_q31::pTwiddle()'],['../structarm__dct4__instance__q15.html#abc6c847e9f906781e1d5da40e9aafa76',1,'arm_dct4_instance_q15::pTwiddle()']]], + ['ptwiddleareal',['pTwiddleAReal',['../structarm__rfft__instance__q15.html#affbf2de522ac029432d98e8373c0ec53',1,'arm_rfft_instance_q15::pTwiddleAReal()'],['../structarm__rfft__instance__q31.html#a2a0c944e66bab92fcbe19d1c29153250',1,'arm_rfft_instance_q31::pTwiddleAReal()'],['../structarm__rfft__instance__f32.html#a534cc7e6e9b3e3dd022fad611c762142',1,'arm_rfft_instance_f32::pTwiddleAReal()']]], + ['ptwiddlebreal',['pTwiddleBReal',['../structarm__rfft__instance__q15.html#a937d815022adc557b435ba8c6cd58b0d',1,'arm_rfft_instance_q15::pTwiddleBReal()'],['../structarm__rfft__instance__q31.html#ae5070be4c2e0327e618f5e1f4c5b9d80',1,'arm_rfft_instance_q31::pTwiddleBReal()'],['../structarm__rfft__instance__f32.html#a23543ecfd027fea2477fe1eea23c3c4d',1,'arm_rfft_instance_f32::pTwiddleBReal()']]], + ['ptwiddlerfft',['pTwiddleRFFT',['../structarm__rfft__fast__instance__f32.html#a9f30b04f163fabc1b24421d3c323d5fc',1,'arm_rfft_fast_instance_f32']]], + ['pvcoeffs',['pvCoeffs',['../structarm__iir__lattice__instance__q15.html#a4c4f57f45b223abbe2a9fb727bd2cad9',1,'arm_iir_lattice_instance_q15::pvCoeffs()'],['../structarm__iir__lattice__instance__q31.html#a04507e2b982b1dfa97b7b55752dea6b9',1,'arm_iir_lattice_instance_q31::pvCoeffs()'],['../structarm__iir__lattice__instance__f32.html#afc7c8f577e6f27d097fe55f57e707f72',1,'arm_iir_lattice_instance_f32::pvCoeffs()']]], + ['pydata',['pYData',['../structarm__linear__interp__instance__f32.html#ab373001f6afad0850359c344a4d7eee4',1,'arm_linear_interp_instance_f32']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_72.html b/CMSIS/Documentation/DSP/html/search/variables_72.html new file mode 100644 index 0000000..29b87f0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_72.js b/CMSIS/Documentation/DSP/html/search/variables_72.js new file mode 100644 index 0000000..388bd05 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_72.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['realcoefa',['realCoefA',['../group___real_f_f_t.html#ga8b1ad947c470596674fa3364e16045c6',1,'arm_rfft_init_f32.c']]], + ['realcoefaq15',['realCoefAQ15',['../group___real_f_f_t.html#ga11e84d0ee257a547f749b37dd0078d36',1,'arm_rfft_init_q15.c']]], + ['realcoefaq31',['realCoefAQ31',['../group___real_f_f_t.html#gaf1592a6cf0504675205074a43c3728a2',1,'arm_rfft_init_q31.c']]], + ['realcoefb',['realCoefB',['../group___real_f_f_t.html#gac52f98b52a1f03bfac8b57a67ba07397',1,'arm_rfft_init_f32.c']]], + ['realcoefbq15',['realCoefBQ15',['../group___real_f_f_t.html#gac871666f018b70938b2b98017628cb97',1,'arm_rfft_init_q15.c']]], + ['realcoefbq31',['realCoefBQ31',['../group___real_f_f_t.html#ga1eb5745728a61c3715755f5d69a4a960',1,'arm_rfft_init_q31.c']]], + ['reciptable',['recipTable',['../structarm__lms__norm__instance__q31.html#a85836d0907077b9ac660f7bbbaa9d694',1,'arm_lms_norm_instance_q31::recipTable()'],['../structarm__lms__norm__instance__q15.html#a9aabb0e4c79f3db807e7a441fa36f5f8',1,'arm_lms_norm_instance_q15::recipTable()']]], + ['refdotprodout',['refDotProdOut',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#ad57c1f9ad68d098d79b15ec6844a26fc',1,'refDotProdOut(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#ad57c1f9ad68d098d79b15ec6844a26fc',1,'refDotProdOut(): arm_dotproduct_example_f32.c']]], + ['refindex',['refIndex',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#aec50b0f697fd9e7e7e244487a4bd57e4',1,'refIndex(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#aec50b0f697fd9e7e7e244487a4bd57e4',1,'refIndex(): arm_fft_bin_example_f32.c']]], + ['refoutput',['refOutput',['../arm__fir__data_8c.html#aa7570f8c2e7a3c929d9d32a14a51389f',1,'refOutput(): arm_fir_data.c'],['../arm__fir__example__f32_8c.html#a12d0acaa028f1dcd964d2d188e7df331',1,'refOutput(): arm_fir_data.c']]], + ['refvarianceout',['refVarianceOut',['../arm__variance__example__f32_8c.html#a26cbbfe2a7905669e8440159465050df',1,'arm_variance_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_73.html b/CMSIS/Documentation/DSP/html/search/variables_73.html new file mode 100644 index 0000000..65b8f64 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_73.js b/CMSIS/Documentation/DSP/html/search/variables_73.js new file mode 100644 index 0000000..bfc43b0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_73.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['sinoutput',['sinOutput',['../arm__sin__cos__example__f32_8c.html#a1e232694019f6b61710fbff5ee27126c',1,'arm_sin_cos_example_f32.c']]], + ['sinsquareoutput',['sinSquareOutput',['../arm__sin__cos__example__f32_8c.html#aa5a66e866ebb91eb971f2805209e9d36',1,'arm_sin_cos_example_f32.c']]], + ['sint',['Sint',['../structarm__rfft__fast__instance__f32.html#a37419ababdfb3151b1891ae6bcd21012',1,'arm_rfft_fast_instance_f32']]], + ['sintable_5ff32',['sinTable_f32',['../arm__common__tables_8c.html#a1dec82d596780f1a66ef4f76f137c1d9',1,'sinTable_f32(): arm_common_tables.c'],['../arm__common__tables_8h.html#a1dec82d596780f1a66ef4f76f137c1d9',1,'sinTable_f32(): arm_common_tables.c']]], + ['sintable_5fq15',['sinTable_q15',['../arm__common__tables_8c.html#a9cbcfe313f61add745ebfeddb4fecd55',1,'sinTable_q15(): arm_common_tables.c'],['../arm__common__tables_8h.html#a9cbcfe313f61add745ebfeddb4fecd55',1,'sinTable_q15(): arm_common_tables.c']]], + ['sintable_5fq31',['sinTable_q31',['../arm__common__tables_8c.html#a8bfccee9e1c0042cf4a765f4b19d097d',1,'sinTable_q31(): arm_common_tables.c'],['../arm__common__tables_8h.html#a8bfccee9e1c0042cf4a765f4b19d097d',1,'sinTable_q31(): arm_common_tables.c']]], + ['snr',['snr',['../_a_r_m_2arm__convolution__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_convolution_example_f32.c'],['../arm__fir__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_graphic_equalizer_example_q31.c'],['../arm__matrix__example__f32_8c.html#af06013f588a7003278de222913c9d819',1,'snr(): arm_matrix_example_f32.c']]], + ['snr1',['snr1',['../arm__linear__interp__example__f32_8c.html#ad492c21cf2dd4e9199ae46c77f812cbc',1,'arm_linear_interp_example_f32.c']]], + ['snr2',['snr2',['../arm__linear__interp__example__f32_8c.html#a269948ab25f230d33e3f22eab85aa1cf',1,'arm_linear_interp_example_f32.c']]], + ['srca_5fbuf_5ff32',['srcA_buf_f32',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a0c248a472fdc0507e4ab7d693e4876b6',1,'srcA_buf_f32(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a0c248a472fdc0507e4ab7d693e4876b6',1,'srcA_buf_f32(): arm_dotproduct_example_f32.c']]], + ['srcalen',['srcALen',['../_a_r_m_2arm__convolution__example__f32_8c.html#ace48ed566e2cd6a680f0681192e6af28',1,'srcALen(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#ace48ed566e2cd6a680f0681192e6af28',1,'srcALen(): arm_convolution_example_f32.c']]], + ['srcb_5fbuf_5ff32',['srcB_buf_f32',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a67d9082c1585d4854ae9ca38db170ff5',1,'srcB_buf_f32(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a67d9082c1585d4854ae9ca38db170ff5',1,'srcB_buf_f32(): arm_dotproduct_example_f32.c']]], + ['srcblen',['srcBLen',['../_a_r_m_2arm__convolution__example__f32_8c.html#aea71286f498978c5ed3775609b974fc8',1,'srcBLen(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#aea71286f498978c5ed3775609b974fc8',1,'srcBLen(): arm_convolution_example_f32.c']]], + ['state',['state',['../structarm__pid__instance__q15.html#a4a3f0a878b5b6b055e3478a2f244cd30',1,'arm_pid_instance_q15::state()'],['../structarm__pid__instance__q31.html#a228e4a64da6014844a0a671a1fa391d4',1,'arm_pid_instance_q31::state()'],['../structarm__pid__instance__f32.html#afd394e1e52fb1d526aa472c83b8f2464',1,'arm_pid_instance_f32::state()']]], + ['stateindex',['stateIndex',['../structarm__fir__sparse__instance__f32.html#a57585aeca9dc8686e08df2865375a86d',1,'arm_fir_sparse_instance_f32::stateIndex()'],['../structarm__fir__sparse__instance__q31.html#a557ed9d477e76e4ad2019344f19f568a',1,'arm_fir_sparse_instance_q31::stateIndex()'],['../structarm__fir__sparse__instance__q15.html#a89487f28cab52637426024005e478985',1,'arm_fir_sparse_instance_q15::stateIndex()'],['../structarm__fir__sparse__instance__q7.html#a2d2e65473fe3a3f2b953b4e0b60824df',1,'arm_fir_sparse_instance_q7::stateIndex()']]], + ['status',['status',['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a88ccb294236ab22b00310c47164c53c3',1,'status(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a88ccb294236ab22b00310c47164c53c3',1,'status(): arm_dotproduct_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a88ccb294236ab22b00310c47164c53c3',1,'status(): arm_sin_cos_example_f32.c']]], + ['std',['std',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a150b0cf729b51893379f5b5548d4f989',1,'std(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a150b0cf729b51893379f5b5548d4f989',1,'std(): arm_class_marks_example_f32.c']]], + ['student_5fnum',['student_num',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a798cf43a3725d7df2fcaf3f328969f53',1,'student_num(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a798cf43a3725d7df2fcaf3f328969f53',1,'student_num(): arm_class_marks_example_f32.c']]], + ['systemcoreclock',['SystemCoreClock',['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__class__marks__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__class__marks__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__convolution__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__convolution__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__dotproduct__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__dotproduct__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fft__bin__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__fft__bin__example_2_g_c_c_2_startup_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__fir__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__graphic__equalizer__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__linear__interp__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__matrix__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__signal__converge__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__sin__cos__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m0_2system___a_r_m_c_m0_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM0.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m3_2system___a_r_m_c_m3_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM3.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m4___f_p_2system___a_r_m_c_m4_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM4.c'],['../arm__variance__example_2_a_r_m_2_r_t_e_2_device_2_a_r_m_c_m7___s_p_2system___a_r_m_c_m7_8c.html#aa3cd3e43291e81e795d642b79b6088e6',1,'SystemCoreClock(): system_ARMCM7.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_74.html b/CMSIS/Documentation/DSP/html/search/variables_74.html new file mode 100644 index 0000000..6093922 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_74.js b/CMSIS/Documentation/DSP/html/search/variables_74.js new file mode 100644 index 0000000..8ec1132 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_74.js @@ -0,0 +1,53 @@ +var searchData= +[ + ['testindex',['testIndex',['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a4a391651dbb95db35ccba70fc4f9e049',1,'testIndex(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a4a391651dbb95db35ccba70fc4f9e049',1,'testIndex(): arm_fft_bin_example_f32.c']]], + ['testinput_5ff32',['testInput_f32',['../arm__graphic__equalizer__data_8c.html#a987ef9f3767fa5e083bcf2dd1efed05c',1,'testInput_f32(): arm_graphic_equalizer_data.c'],['../arm__graphic__equalizer__example__q31_8c.html#aa4699dc6ee05353c83e0be4e69f6ad05',1,'testInput_f32(): arm_graphic_equalizer_data.c'],['../arm__signal__converge__data_8c.html#a898fab3d597516192bb221fb658315cc',1,'testInput_f32(): arm_signal_converge_data.c'],['../arm__signal__converge__example__f32_8c.html#aac98609c83ad8ed2b05c4fd82d2ba59b',1,'testInput_f32(): arm_graphic_equalizer_data.c'],['../arm__sin__cos__example__f32_8c.html#a8b3b7113988efd5bf11a247d07ae39a1',1,'testInput_f32(): arm_sin_cos_example_f32.c'],['../arm__variance__example__f32_8c.html#a9170ec9e681e2b519fe9c46a30455841',1,'testInput_f32(): arm_variance_example_f32.c']]], + ['testinput_5ff32_5f10khz',['testInput_f32_10khz',['../_a_r_m_2arm__fft__bin__data_8c.html#a8a12a8ec4b866be84f4b7d3daf6a1242',1,'testInput_f32_10khz(): arm_fft_bin_data.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#a3d8ecb82590486ceebccc76263963b16',1,'testInput_f32_10khz(): arm_fft_bin_data.c'],['../_g_c_c_2arm__fft__bin__data_8c.html#a8a12a8ec4b866be84f4b7d3daf6a1242',1,'testInput_f32_10khz(): arm_fft_bin_data.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#a3d8ecb82590486ceebccc76263963b16',1,'testInput_f32_10khz(): arm_fft_bin_data.c']]], + ['testinput_5ff32_5f1khz_5f15khz',['testInput_f32_1kHz_15kHz',['../arm__fir__data_8c.html#a143154a165358f0016714cb7f1c83970',1,'testInput_f32_1kHz_15kHz(): arm_fir_data.c'],['../arm__fir__example__f32_8c.html#a35d190391c204b677e2839d76ede6e8b',1,'testInput_f32_1kHz_15kHz(): arm_fir_data.c']]], + ['testinputa_5ff32',['testInputA_f32',['../_a_r_m_2arm__convolution__example__f32_8c.html#a7db2f016e1afcb524a2fdc3c5a3cb640',1,'testInputA_f32(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a7db2f016e1afcb524a2fdc3c5a3cb640',1,'testInputA_f32(): arm_convolution_example_f32.c']]], + ['testinputb_5ff32',['testInputB_f32',['../_a_r_m_2arm__convolution__example__f32_8c.html#acb22287e7e096b677e352dfd363ba60d',1,'testInputB_f32(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#acb22287e7e096b677e352dfd363ba60d',1,'testInputB_f32(): arm_convolution_example_f32.c']]], + ['testinputsin_5ff32',['testInputSin_f32',['../arm__linear__interp__example__f32_8c.html#a4be0c4d25e63ce04b8cc8ad070805287',1,'arm_linear_interp_example_f32.c']]], + ['testlinintoutput',['testLinIntOutput',['../arm__linear__interp__example__f32_8c.html#a8ca7d0ad6e04efed464bcaacedacf925',1,'arm_linear_interp_example_f32.c']]], + ['testmarks_5ff32',['testMarks_f32',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a0153222efa82b7f1a0ea3835921bf921',1,'testMarks_f32(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a0153222efa82b7f1a0ea3835921bf921',1,'testMarks_f32(): arm_class_marks_example_f32.c']]], + ['testoutput',['testOutput',['../_a_r_m_2arm__class__marks__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_class_marks_example_f32.c'],['../_a_r_m_2arm__dotproduct__example__f32_8c.html#a324833b61eae796082e07d078a67c34f',1,'testOutput(): arm_dotproduct_example_f32.c'],['../_g_c_c_2arm__dotproduct__example__f32_8c.html#a324833b61eae796082e07d078a67c34f',1,'testOutput(): arm_dotproduct_example_f32.c'],['../_a_r_m_2arm__fft__bin__example__f32_8c.html#aaaf907bde12051bc8bb5d48b7d315a35',1,'testOutput(): arm_fft_bin_example_f32.c'],['../_g_c_c_2arm__fft__bin__example__f32_8c.html#aaaf907bde12051bc8bb5d48b7d315a35',1,'testOutput(): arm_fft_bin_example_f32.c'],['../arm__fir__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_fir_example_f32.c'],['../arm__graphic__equalizer__example__q31_8c.html#a3293e83a154108a1d398bb042e293894',1,'testOutput(): arm_graphic_equalizer_example_q31.c'],['../arm__linear__interp__example__f32_8c.html#afd4d61aad5f35a4e42d580004e2f9a1d',1,'testOutput(): arm_linear_interp_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a324833b61eae796082e07d078a67c34f',1,'testOutput(): arm_sin_cos_example_f32.c']]], + ['testrefoutput_5ff32',['testRefOutput_f32',['../_a_r_m_2arm__convolution__example__f32_8c.html#a7ede41b07b8766013744c8fdbb80af75',1,'testRefOutput_f32(): arm_convolution_example_f32.c'],['../_g_c_c_2arm__convolution__example__f32_8c.html#a7ede41b07b8766013744c8fdbb80af75',1,'testRefOutput_f32(): arm_convolution_example_f32.c'],['../arm__graphic__equalizer__data_8c.html#a32c13cab7708773e0f86a9677e259c64',1,'testRefOutput_f32(): arm_graphic_equalizer_data.c'],['../arm__graphic__equalizer__example__q31_8c.html#a9cbbafa975d67bc8ee8ea3260fdd5638',1,'testRefOutput_f32(): arm_convolution_example_f32.c'],['../arm__sin__cos__example__f32_8c.html#a8bcb5c1f75ed5f1737e435f0de1850a3',1,'testRefOutput_f32(): arm_sin_cos_example_f32.c']]], + ['testrefsinoutput32_5ff32',['testRefSinOutput32_f32',['../arm__linear__interp__example__f32_8c.html#a5a33218d422603f3e5267b6984bdddd1',1,'arm_linear_interp_example_f32.c']]], + ['testunity_5ff32',['testUnity_f32',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a993b9b2a1faf43b319c1c6d58b26e7a1',1,'testUnity_f32(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a993b9b2a1faf43b319c1c6d58b26e7a1',1,'testUnity_f32(): arm_class_marks_example_f32.c']]], + ['twidcoefmodifier',['twidCoefModifier',['../structarm__cfft__radix2__instance__q15.html#a6f2ab87fb4c568656e1f92f687b5c850',1,'arm_cfft_radix2_instance_q15::twidCoefModifier()'],['../structarm__cfft__radix4__instance__q15.html#af32fdc78bcc27ca385f9b76a0a1f71c3',1,'arm_cfft_radix4_instance_q15::twidCoefModifier()'],['../structarm__cfft__radix2__instance__q31.html#ae63ca9193322cd477970c1d2086407d1',1,'arm_cfft_radix2_instance_q31::twidCoefModifier()'],['../structarm__cfft__radix4__instance__q31.html#a8cf8187b8232815cf17ee82bf572ecf9',1,'arm_cfft_radix4_instance_q31::twidCoefModifier()'],['../structarm__cfft__radix2__instance__f32.html#a411f75b6ed01690293f4f5988030ea42',1,'arm_cfft_radix2_instance_f32::twidCoefModifier()'],['../structarm__cfft__radix4__instance__f32.html#abe31ea2157dfa233e389cdfd3b9993ee',1,'arm_cfft_radix4_instance_f32::twidCoefModifier()']]], + ['twidcoefrmodifier',['twidCoefRModifier',['../structarm__rfft__instance__q15.html#afd444d05858c5f419980e94e8240d5c3',1,'arm_rfft_instance_q15::twidCoefRModifier()'],['../structarm__rfft__instance__q31.html#a6fc90252b579f7c29e01bd279334fc43',1,'arm_rfft_instance_q31::twidCoefRModifier()'],['../structarm__rfft__instance__f32.html#aede85350fb5ae6baa1b3e8bfa15b18d6',1,'arm_rfft_instance_f32::twidCoefRModifier()']]], + ['twiddlecoef_5f1024',['twiddleCoef_1024',['../group___c_f_f_t___c_i_f_f_t.html#ga27c056eb130a4333d1cc5dd43ec738b1',1,'twiddleCoef_1024(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga27c056eb130a4333d1cc5dd43ec738b1',1,'twiddleCoef_1024(): arm_common_tables.c']]], + ['twiddlecoef_5f1024_5fq15',['twiddleCoef_1024_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga8a0ec95d866fe96b740e77d6e1356b59',1,'twiddleCoef_1024_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga8a0ec95d866fe96b740e77d6e1356b59',1,'twiddleCoef_1024_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f1024_5fq31',['twiddleCoef_1024_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga514443c44b62b8b3d240afefebcda310',1,'twiddleCoef_1024_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga514443c44b62b8b3d240afefebcda310',1,'twiddleCoef_1024_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f128',['twiddleCoef_128',['../group___c_f_f_t___c_i_f_f_t.html#ga948433536dafaac1381decfccf4e2d9c',1,'twiddleCoef_128(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga948433536dafaac1381decfccf4e2d9c',1,'twiddleCoef_128(): arm_common_tables.c']]], + ['twiddlecoef_5f128_5fq15',['twiddleCoef_128_q15',['../group___c_f_f_t___c_i_f_f_t.html#gabfdd1c5cd2b3f96da5fe5f07c707a8e5',1,'twiddleCoef_128_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gabfdd1c5cd2b3f96da5fe5f07c707a8e5',1,'twiddleCoef_128_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f128_5fq31',['twiddleCoef_128_q31',['../group___c_f_f_t___c_i_f_f_t.html#gafecf9ed9873415d9f5f17f37b30c7250',1,'twiddleCoef_128_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gafecf9ed9873415d9f5f17f37b30c7250',1,'twiddleCoef_128_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f16',['twiddleCoef_16',['../group___c_f_f_t___c_i_f_f_t.html#gae75e243ec61706427314270f222e0c8e',1,'twiddleCoef_16(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gae75e243ec61706427314270f222e0c8e',1,'twiddleCoef_16(): arm_common_tables.c']]], + ['twiddlecoef_5f16_5fq15',['twiddleCoef_16_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga8e4e2e05f4a3112184c96cb3308d6c39',1,'twiddleCoef_16_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga8e4e2e05f4a3112184c96cb3308d6c39',1,'twiddleCoef_16_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f16_5fq31',['twiddleCoef_16_q31',['../group___c_f_f_t___c_i_f_f_t.html#gaef4697e1ba348c4ac9358f2b9e279e93',1,'twiddleCoef_16_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gaef4697e1ba348c4ac9358f2b9e279e93',1,'twiddleCoef_16_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f2048',['twiddleCoef_2048',['../group___c_f_f_t___c_i_f_f_t.html#ga23e7f30421a7905b21c2015429779633',1,'twiddleCoef_2048(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga23e7f30421a7905b21c2015429779633',1,'twiddleCoef_2048(): arm_common_tables.c']]], + ['twiddlecoef_5f2048_5fq15',['twiddleCoef_2048_q15',['../group___c_f_f_t___c_i_f_f_t.html#gadd16ce08ffd1048c385e0534a3b19cbb',1,'twiddleCoef_2048_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gadd16ce08ffd1048c385e0534a3b19cbb',1,'twiddleCoef_2048_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f2048_5fq31',['twiddleCoef_2048_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga9c5767de9f5a409fd0c2027e6ac67179',1,'twiddleCoef_2048_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga9c5767de9f5a409fd0c2027e6ac67179',1,'twiddleCoef_2048_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f256',['twiddleCoef_256',['../group___c_f_f_t___c_i_f_f_t.html#gafe813758a03a798e972359a092315be4',1,'twiddleCoef_256(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gafe813758a03a798e972359a092315be4',1,'twiddleCoef_256(): arm_common_tables.c']]], + ['twiddlecoef_5f256_5fq15',['twiddleCoef_256_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga6099ae5262a0a3a8d9ce1e6da02f0c2e',1,'twiddleCoef_256_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga6099ae5262a0a3a8d9ce1e6da02f0c2e',1,'twiddleCoef_256_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f256_5fq31',['twiddleCoef_256_q31',['../group___c_f_f_t___c_i_f_f_t.html#gaef1ea005053b715b851cf5f908168ede',1,'twiddleCoef_256_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gaef1ea005053b715b851cf5f908168ede',1,'twiddleCoef_256_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f32',['twiddleCoef_32',['../group___c_f_f_t___c_i_f_f_t.html#ga78a72c85d88185de98050c930cfc76e3',1,'twiddleCoef_32(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga78a72c85d88185de98050c930cfc76e3',1,'twiddleCoef_32(): arm_common_tables.c']]], + ['twiddlecoef_5f32_5fq15',['twiddleCoef_32_q15',['../group___c_f_f_t___c_i_f_f_t.html#gac194a4fe04a19051ae1811f69c6e5df2',1,'twiddleCoef_32_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gac194a4fe04a19051ae1811f69c6e5df2',1,'twiddleCoef_32_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f32_5fq31',['twiddleCoef_32_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga8ba78d5e6ef4bdc58e8f0044e0664a0a',1,'twiddleCoef_32_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga8ba78d5e6ef4bdc58e8f0044e0664a0a',1,'twiddleCoef_32_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f4096',['twiddleCoef_4096',['../group___c_f_f_t___c_i_f_f_t.html#gae0182d1dd3b2f21aad4e38a815a0bd40',1,'twiddleCoef_4096(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gae0182d1dd3b2f21aad4e38a815a0bd40',1,'twiddleCoef_4096(): arm_common_tables.c']]], + ['twiddlecoef_5f4096_5fq15',['twiddleCoef_4096_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga9b409d6995eab17805b1d1881d4bc652',1,'twiddleCoef_4096_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga9b409d6995eab17805b1d1881d4bc652',1,'twiddleCoef_4096_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f4096_5fq31',['twiddleCoef_4096_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga67c0890317deab3391e276f22c1fc400',1,'twiddleCoef_4096_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga67c0890317deab3391e276f22c1fc400',1,'twiddleCoef_4096_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f512',['twiddleCoef_512',['../group___c_f_f_t___c_i_f_f_t.html#gad8830f0c068ab2cc19f2f87d220fa148',1,'twiddleCoef_512(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gad8830f0c068ab2cc19f2f87d220fa148',1,'twiddleCoef_512(): arm_common_tables.c']]], + ['twiddlecoef_5f512_5fq15',['twiddleCoef_512_q15',['../group___c_f_f_t___c_i_f_f_t.html#ga6152621af210f847128c6f38958fa385',1,'twiddleCoef_512_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga6152621af210f847128c6f38958fa385',1,'twiddleCoef_512_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f512_5fq31',['twiddleCoef_512_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga416c61b2f08542a39111e06b0378bebe',1,'twiddleCoef_512_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga416c61b2f08542a39111e06b0378bebe',1,'twiddleCoef_512_q31(): arm_common_tables.c']]], + ['twiddlecoef_5f64',['twiddleCoef_64',['../group___c_f_f_t___c_i_f_f_t.html#ga4f3c6d98c7e66393b4ef3ac63746e43d',1,'twiddleCoef_64(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga4f3c6d98c7e66393b4ef3ac63746e43d',1,'twiddleCoef_64(): arm_common_tables.c']]], + ['twiddlecoef_5f64_5fq15',['twiddleCoef_64_q15',['../group___c_f_f_t___c_i_f_f_t.html#gaa0cc411e0b3c82078e85cfdf1b84290f',1,'twiddleCoef_64_q15(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#gaa0cc411e0b3c82078e85cfdf1b84290f',1,'twiddleCoef_64_q15(): arm_common_tables.c']]], + ['twiddlecoef_5f64_5fq31',['twiddleCoef_64_q31',['../group___c_f_f_t___c_i_f_f_t.html#ga6e0a7e941a25a0d74b2e6590307de47e',1,'twiddleCoef_64_q31(): arm_common_tables.c'],['../group___c_f_f_t___c_i_f_f_t.html#ga6e0a7e941a25a0d74b2e6590307de47e',1,'twiddleCoef_64_q31(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f1024',['twiddleCoef_rfft_1024',['../arm__common__tables_8c.html#aa7d8d3aa9898d557385748a13c959a4c',1,'twiddleCoef_rfft_1024(): arm_common_tables.c'],['../arm__common__tables_8h.html#aa7d8d3aa9898d557385748a13c959a4c',1,'twiddleCoef_rfft_1024(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f128',['twiddleCoef_rfft_128',['../arm__common__tables_8c.html#af089dd2fe1a543d40a3325982bf45e7c',1,'twiddleCoef_rfft_128(): arm_common_tables.c'],['../arm__common__tables_8h.html#af089dd2fe1a543d40a3325982bf45e7c',1,'twiddleCoef_rfft_128(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f2048',['twiddleCoef_rfft_2048',['../arm__common__tables_8c.html#a749a5995ebd433a163f7adc474dabcaa',1,'twiddleCoef_rfft_2048(): arm_common_tables.c'],['../arm__common__tables_8h.html#a749a5995ebd433a163f7adc474dabcaa',1,'twiddleCoef_rfft_2048(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f256',['twiddleCoef_rfft_256',['../arm__common__tables_8c.html#a5c5c161dd469d8e6806664956dae31f9',1,'twiddleCoef_rfft_256(): arm_common_tables.c'],['../arm__common__tables_8h.html#a5c5c161dd469d8e6806664956dae31f9',1,'twiddleCoef_rfft_256(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f32',['twiddleCoef_rfft_32',['../arm__common__tables_8c.html#a5992afe8574289cd71921651b80bd57d',1,'twiddleCoef_rfft_32(): arm_common_tables.c'],['../arm__common__tables_8h.html#a5992afe8574289cd71921651b80bd57d',1,'twiddleCoef_rfft_32(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f4096',['twiddleCoef_rfft_4096',['../arm__common__tables_8c.html#a8013d68dd2476c86b77173bb98b87b29',1,'twiddleCoef_rfft_4096(): arm_common_tables.c'],['../arm__common__tables_8h.html#a8013d68dd2476c86b77173bb98b87b29',1,'twiddleCoef_rfft_4096(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f512',['twiddleCoef_rfft_512',['../arm__common__tables_8c.html#a94bd2fc98798f87003fef5cd0c04d1f5',1,'twiddleCoef_rfft_512(): arm_common_tables.c'],['../arm__common__tables_8h.html#a94bd2fc98798f87003fef5cd0c04d1f5',1,'twiddleCoef_rfft_512(): arm_common_tables.c']]], + ['twiddlecoef_5frfft_5f64',['twiddleCoef_rfft_64',['../arm__common__tables_8c.html#a2759d8789e1e6ae2ba7fb8d7f5e9c2ab',1,'twiddleCoef_rfft_64(): arm_common_tables.c'],['../arm__common__tables_8h.html#a2759d8789e1e6ae2ba7fb8d7f5e9c2ab',1,'twiddleCoef_rfft_64(): arm_common_tables.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_76.html b/CMSIS/Documentation/DSP/html/search/variables_76.html new file mode 100644 index 0000000..ab1aba9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_76.js b/CMSIS/Documentation/DSP/html/search/variables_76.js new file mode 100644 index 0000000..7d88cb3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_76.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['var',['var',['../_a_r_m_2arm__class__marks__example__f32_8c.html#a3bd39c4335d84be071cc1eaa9b0a8642',1,'var(): arm_class_marks_example_f32.c'],['../_g_c_c_2arm__class__marks__example__f32_8c.html#a3bd39c4335d84be071cc1eaa9b0a8642',1,'var(): arm_class_marks_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_77.html b/CMSIS/Documentation/DSP/html/search/variables_77.html new file mode 100644 index 0000000..25c3e3a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_77.js b/CMSIS/Documentation/DSP/html/search/variables_77.js new file mode 100644 index 0000000..cd511b1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_77.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['weights_5f128',['Weights_128',['../group___d_c_t4___i_d_c_t4.html#gad00f29d896d64d6da7afbbb9d3e182a4',1,'arm_dct4_init_f32.c']]], + ['weights_5f2048',['Weights_2048',['../group___d_c_t4___i_d_c_t4.html#gac3a2a00b3106dfcb5e0a582f50c65692',1,'arm_dct4_init_f32.c']]], + ['weights_5f512',['Weights_512',['../group___d_c_t4___i_d_c_t4.html#gaeb67b0be5b3c2139d660e02cedeed908',1,'arm_dct4_init_f32.c']]], + ['weights_5f8192',['Weights_8192',['../group___d_c_t4___i_d_c_t4.html#ga45a8ec91e5da91790566105bc7e6f0c2',1,'arm_dct4_init_f32.c']]], + ['weightsq15_5f128',['WeightsQ15_128',['../group___d_c_t4___i_d_c_t4.html#gaa4ff5e6f062efb1d1ec8c6c2207c3727',1,'arm_dct4_init_q15.c']]], + ['weightsq15_5f2048',['WeightsQ15_2048',['../group___d_c_t4___i_d_c_t4.html#ga2235ec700d0d6925d9733f48541d46f5',1,'arm_dct4_init_q15.c']]], + ['weightsq15_5f512',['WeightsQ15_512',['../group___d_c_t4___i_d_c_t4.html#gadc8ee250fc217d6cb5c84dd7c1eb6d31',1,'arm_dct4_init_q15.c']]], + ['weightsq15_5f8192',['WeightsQ15_8192',['../group___d_c_t4___i_d_c_t4.html#ga4fdc60621eb306984a82ce8b2d645bb7',1,'arm_dct4_init_q15.c']]], + ['weightsq31_5f128',['WeightsQ31_128',['../group___d_c_t4___i_d_c_t4.html#ga02d7024538a87214296b01d83ba36b02',1,'arm_dct4_init_q31.c']]], + ['weightsq31_5f2048',['WeightsQ31_2048',['../group___d_c_t4___i_d_c_t4.html#ga725b65c25a02b3cad329e18bb832f65e',1,'arm_dct4_init_q31.c']]], + ['weightsq31_5f512',['WeightsQ31_512',['../group___d_c_t4___i_d_c_t4.html#ga31a8217a96f7d3171921e98398f31596',1,'arm_dct4_init_q31.c']]], + ['weightsq31_5f8192',['WeightsQ31_8192',['../group___d_c_t4___i_d_c_t4.html#ga16bf6bbe5c4c9b35f88253cf7bdcc435',1,'arm_dct4_init_q31.c']]], + ['wire1',['wire1',['../arm__signal__converge__example__f32_8c.html#a16e759789fbc05f878863f009066c8ea',1,'wire1(): arm_signal_converge_example_f32.c'],['../arm__variance__example__f32_8c.html#acc43b372d92d5027b9f9cac782c8b3c7',1,'wire1(): arm_variance_example_f32.c']]], + ['wire2',['wire2',['../arm__signal__converge__example__f32_8c.html#a4e370163c81ae2b72cc655a6b79e4c6a',1,'wire2(): arm_signal_converge_example_f32.c'],['../arm__variance__example__f32_8c.html#a41a9afab5be5ccd2e6f618b83102f0d1',1,'wire2(): arm_variance_example_f32.c']]], + ['wire3',['wire3',['../arm__signal__converge__example__f32_8c.html#a7e2cceadf6ec7f0aa0f698a680fa3a4b',1,'wire3(): arm_signal_converge_example_f32.c'],['../arm__variance__example__f32_8c.html#af61f43ad332a2322e43ced590b6d9768',1,'wire3(): arm_variance_example_f32.c']]] +]; diff --git a/CMSIS/Documentation/DSP/html/search/variables_78.html b/CMSIS/Documentation/DSP/html/search/variables_78.html new file mode 100644 index 0000000..4a1263d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/DSP/html/search/variables_78.js b/CMSIS/Documentation/DSP/html/search/variables_78.js new file mode 100644 index 0000000..a44121a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/search/variables_78.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['x0',['x0',['../structarm__lms__norm__instance__f32.html#aec958fe89b164a30f38bcca9f5d96218',1,'arm_lms_norm_instance_f32::x0()'],['../structarm__lms__norm__instance__q31.html#a47c4466d644e0d8ba407995adfa9b917',1,'arm_lms_norm_instance_q31::x0()'],['../structarm__lms__norm__instance__q15.html#a3fc1d6f97d2c6d5324871de6895cb7e9',1,'arm_lms_norm_instance_q15::x0()']]], + ['x1',['x1',['../structarm__linear__interp__instance__f32.html#a08352dc6ea82fbc0827408e018535481',1,'arm_linear_interp_instance_f32']]], + ['x_5ff32',['X_f32',['../arm__matrix__example__f32_8c.html#a98c67c0fc0cb5f2df51b21482d31d21c',1,'arm_matrix_example_f32.c']]], + ['xref_5ff32',['xRef_f32',['../arm__matrix__example__f32_8c.html#a6184758419722fa16bb883097c2f596b',1,'arm_matrix_example_f32.c']]], + ['xspacing',['xSpacing',['../structarm__linear__interp__instance__f32.html#aa8e2d686b5434a406d390b347b183511',1,'arm_linear_interp_instance_f32']]] +]; diff --git a/CMSIS/Documentation/DSP/html/sinCos.gif b/CMSIS/Documentation/DSP/html/sinCos.gif new file mode 100644 index 0000000..b31221f Binary files /dev/null and b/CMSIS/Documentation/DSP/html/sinCos.gif differ diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.html new file mode 100644 index 0000000..9fc0037 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.html @@ -0,0 +1,196 @@ + + + + + +arm_bilinear_interp_instance_f32 Struct Reference +CMSIS-DSP: arm_bilinear_interp_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_bilinear_interp_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point bilinear interpolation function. +

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    float32_tpData
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_f32::numCols
    +
    +

    number of columns in the data table.

    + +

    Referenced by arm_bilinear_interp_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_f32::numRows
    +
    +

    number of rows in the data table.

    + +

    Referenced by arm_bilinear_interp_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_bilinear_interp_instance_f32::pData
    +
    +

    points to the data table.

    + +

    Referenced by arm_bilinear_interp_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.js new file mode 100644 index 0000000..f6412fe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__f32.js @@ -0,0 +1,6 @@ +var structarm__bilinear__interp__instance__f32 = +[ + [ "numCols", "structarm__bilinear__interp__instance__f32.html#aede17bebfb1f835b61d71dd813eab3f8", null ], + [ "numRows", "structarm__bilinear__interp__instance__f32.html#a34f2b17cc57b95011960df9718af6ed6", null ], + [ "pData", "structarm__bilinear__interp__instance__f32.html#afd1e764591c991c212d56c893efb5ea4", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.html new file mode 100644 index 0000000..a3965cc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.html @@ -0,0 +1,196 @@ + + + + + +arm_bilinear_interp_instance_q15 Struct Reference +CMSIS-DSP: arm_bilinear_interp_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_bilinear_interp_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 bilinear interpolation function. +

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    q15_tpData
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_q15::numCols
    +
    +

    number of columns in the data table.

    + +

    Referenced by arm_bilinear_interp_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_q15::numRows
    +
    +

    number of rows in the data table.

    + +

    Referenced by arm_bilinear_interp_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_bilinear_interp_instance_q15::pData
    +
    +

    points to the data table.

    + +

    Referenced by arm_bilinear_interp_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.js new file mode 100644 index 0000000..8404ecf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q15.js @@ -0,0 +1,6 @@ +var structarm__bilinear__interp__instance__q15 = +[ + [ "numCols", "structarm__bilinear__interp__instance__q15.html#a7fa8772d01583374ff8ac18205a26a37", null ], + [ "numRows", "structarm__bilinear__interp__instance__q15.html#a2130ae30a804995a9f5d0e2189e08565", null ], + [ "pData", "structarm__bilinear__interp__instance__q15.html#a50d75b1316cee3e0dfad6dcc4c9a2954", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.html new file mode 100644 index 0000000..7e0c956 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.html @@ -0,0 +1,196 @@ + + + + + +arm_bilinear_interp_instance_q31 Struct Reference +CMSIS-DSP: arm_bilinear_interp_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_bilinear_interp_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 bilinear interpolation function. +

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    q31_tpData
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_q31::numCols
    +
    +

    number of columns in the data table.

    + +

    Referenced by arm_bilinear_interp_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_q31::numRows
    +
    +

    number of rows in the data table.

    + +

    Referenced by arm_bilinear_interp_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_bilinear_interp_instance_q31::pData
    +
    +

    points to the data table.

    + +

    Referenced by arm_bilinear_interp_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.js new file mode 100644 index 0000000..dafecb9 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q31.js @@ -0,0 +1,6 @@ +var structarm__bilinear__interp__instance__q31 = +[ + [ "numCols", "structarm__bilinear__interp__instance__q31.html#a6c3eff4eb17ff1d43f170efb84713a2d", null ], + [ "numRows", "structarm__bilinear__interp__instance__q31.html#a2082e3eac56354d75291f03e96ce4aa5", null ], + [ "pData", "structarm__bilinear__interp__instance__q31.html#a843eae0c9db5f815e77e1aaf9afea358", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.html b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.html new file mode 100644 index 0000000..ef9dce0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.html @@ -0,0 +1,196 @@ + + + + + +arm_bilinear_interp_instance_q7 Struct Reference +CMSIS-DSP: arm_bilinear_interp_instance_q7 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_bilinear_interp_instance_q7 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 bilinear interpolation function. +

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    q7_tpData
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_q7::numCols
    +
    +

    number of columns in the data table.

    + +

    Referenced by arm_bilinear_interp_q7().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_bilinear_interp_instance_q7::numRows
    +
    +

    number of rows in the data table.

    + +

    Referenced by arm_bilinear_interp_q7().

    + +
    +
    + +
    +
    + + + + +
    q7_t* arm_bilinear_interp_instance_q7::pData
    +
    +

    points to the data table.

    + +

    Referenced by arm_bilinear_interp_q7().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.js b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.js new file mode 100644 index 0000000..749e67e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__bilinear__interp__instance__q7.js @@ -0,0 +1,6 @@ +var structarm__bilinear__interp__instance__q7 = +[ + [ "numCols", "structarm__bilinear__interp__instance__q7.html#a860dd0d24380ea06cfbb348fb3b12c9a", null ], + [ "numRows", "structarm__bilinear__interp__instance__q7.html#ad5a8067cab5f9ea4688b11a623e16607", null ], + [ "pData", "structarm__bilinear__interp__instance__q7.html#af05194d691bbefb02c34bafb22ca9ef0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.html b/CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.html new file mode 100644 index 0000000..b2d957f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.html @@ -0,0 +1,215 @@ + + + + + +arm_biquad_cas_df1_32x64_ins_q31 Struct Reference +CMSIS-DSP: arm_biquad_cas_df1_32x64_ins_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cas_df1_32x64_ins_q31 Struct Reference
    +
    +
    + +

    Instance structure for the high precision Q31 Biquad cascade filter. + More...

    + + + + + + + + + + +

    +Data Fields

    uint8_t numStages
     
    q63_tpState
     
    q31_tpCoeffs
     
    uint8_t postShift
     
    +

    Description

    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_biquad_cas_df1_32x64_ins_q31::numStages
    +
    +

    number of 2nd order stages in the filter. Overall order is 2*numStages.

    + +

    Referenced by arm_biquad_cas_df1_32x64_init_q31(), and arm_biquad_cas_df1_32x64_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_biquad_cas_df1_32x64_ins_q31::pCoeffs
    +
    +

    points to the array of coefficients. The array is of length 5*numStages.

    + +

    Referenced by arm_biquad_cas_df1_32x64_init_q31(), and arm_biquad_cas_df1_32x64_q31().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_biquad_cas_df1_32x64_ins_q31::postShift
    +
    +

    additional shift, in bits, applied to each output sample.

    + +

    Referenced by arm_biquad_cas_df1_32x64_init_q31(), and arm_biquad_cas_df1_32x64_q31().

    + +
    +
    + +
    +
    + + + + +
    q63_t* arm_biquad_cas_df1_32x64_ins_q31::pState
    +
    +

    points to the array of state coefficients. The array is of length 4*numStages.

    + +

    Referenced by arm_biquad_cas_df1_32x64_init_q31(), and arm_biquad_cas_df1_32x64_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.js b/CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.js new file mode 100644 index 0000000..994fb3e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cas__df1__32x64__ins__q31.js @@ -0,0 +1,7 @@ +var structarm__biquad__cas__df1__32x64__ins__q31 = +[ + [ "numStages", "structarm__biquad__cas__df1__32x64__ins__q31.html#ad7cb9a9f5df8f4fcfc7a0b633672e574", null ], + [ "pCoeffs", "structarm__biquad__cas__df1__32x64__ins__q31.html#a490462d6ebe0fecfb6acbf51bed22ecf", null ], + [ "postShift", "structarm__biquad__cas__df1__32x64__ins__q31.html#a8e9d58e8dba5aa3b2fc4f36d2ed07996", null ], + [ "pState", "structarm__biquad__cas__df1__32x64__ins__q31.html#a4c899cdfaf2bb955323e93637bd662e0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.html new file mode 100644 index 0000000..516f2ae --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.html @@ -0,0 +1,196 @@ + + + + + +arm_biquad_cascade_df2T_instance_f32 Struct Reference +CMSIS-DSP: arm_biquad_cascade_df2T_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df2T_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point transposed direct form II Biquad cascade filter. +

    + + + + + + + + +

    +Data Fields

    uint8_t numStages
     
    float32_tpState
     
    float32_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_biquad_cascade_df2T_instance_f32::numStages
    +
    +

    number of 2nd order stages in the filter. Overall order is 2*numStages.

    + +

    Referenced by arm_biquad_cascade_df2T_f32(), and arm_biquad_cascade_df2T_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_biquad_cascade_df2T_instance_f32::pCoeffs
    +
    +

    points to the array of coefficients. The array is of length 5*numStages.

    + +

    Referenced by arm_biquad_cascade_df2T_f32(), and arm_biquad_cascade_df2T_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_biquad_cascade_df2T_instance_f32::pState
    +
    +

    points to the array of state coefficients. The array is of length 2*numStages.

    + +

    Referenced by arm_biquad_cascade_df2T_f32(), and arm_biquad_cascade_df2T_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.js new file mode 100644 index 0000000..3582642 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f32.js @@ -0,0 +1,6 @@ +var structarm__biquad__cascade__df2_t__instance__f32 = +[ + [ "numStages", "structarm__biquad__cascade__df2_t__instance__f32.html#a4d17958c33c3d0a905f974bac50f033f", null ], + [ "pCoeffs", "structarm__biquad__cascade__df2_t__instance__f32.html#a49a24fe1b6ad3b0b26779c32d8d80b2e", null ], + [ "pState", "structarm__biquad__cascade__df2_t__instance__f32.html#a24d223addfd926a7177088cf2efe76b1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.html b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.html new file mode 100644 index 0000000..d52b8ff --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.html @@ -0,0 +1,196 @@ + + + + + +arm_biquad_cascade_df2T_instance_f64 Struct Reference +CMSIS-DSP: arm_biquad_cascade_df2T_instance_f64 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_df2T_instance_f64 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point transposed direct form II Biquad cascade filter. +

    + + + + + + + + +

    +Data Fields

    uint8_t numStages
     
    float64_tpState
     
    float64_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_biquad_cascade_df2T_instance_f64::numStages
    +
    +

    number of 2nd order stages in the filter. Overall order is 2*numStages.

    + +

    Referenced by arm_biquad_cascade_df2T_f64(), and arm_biquad_cascade_df2T_init_f64().

    + +
    +
    + +
    +
    + + + + +
    float64_t* arm_biquad_cascade_df2T_instance_f64::pCoeffs
    +
    +

    points to the array of coefficients. The array is of length 5*numStages.

    + +

    Referenced by arm_biquad_cascade_df2T_f64(), and arm_biquad_cascade_df2T_init_f64().

    + +
    +
    + +
    +
    + + + + +
    float64_t* arm_biquad_cascade_df2T_instance_f64::pState
    +
    +

    points to the array of state coefficients. The array is of length 2*numStages.

    + +

    Referenced by arm_biquad_cascade_df2T_f64(), and arm_biquad_cascade_df2T_init_f64().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.js b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.js new file mode 100644 index 0000000..1949ebc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__df2_t__instance__f64.js @@ -0,0 +1,6 @@ +var structarm__biquad__cascade__df2_t__instance__f64 = +[ + [ "numStages", "structarm__biquad__cascade__df2_t__instance__f64.html#ad55380ff835b533aa5168f836db8a4de", null ], + [ "pCoeffs", "structarm__biquad__cascade__df2_t__instance__f64.html#ae2f0180f9038c0393e1d6921bb3b878b", null ], + [ "pState", "structarm__biquad__cascade__df2_t__instance__f64.html#a0bde57b618e3f9059b23b0de64e12ce3", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.html new file mode 100644 index 0000000..cc7d4ae --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.html @@ -0,0 +1,196 @@ + + + + + +arm_biquad_cascade_stereo_df2T_instance_f32 Struct Reference +CMSIS-DSP: arm_biquad_cascade_stereo_df2T_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_cascade_stereo_df2T_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point transposed direct form II Biquad cascade filter. +

    + + + + + + + + +

    +Data Fields

    uint8_t numStages
     
    float32_tpState
     
    float32_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_biquad_cascade_stereo_df2T_instance_f32::numStages
    +
    +

    number of 2nd order stages in the filter. Overall order is 2*numStages.

    + +

    Referenced by arm_biquad_cascade_stereo_df2T_f32(), and arm_biquad_cascade_stereo_df2T_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_biquad_cascade_stereo_df2T_instance_f32::pCoeffs
    +
    +

    points to the array of coefficients. The array is of length 5*numStages.

    + +

    Referenced by arm_biquad_cascade_stereo_df2T_f32(), and arm_biquad_cascade_stereo_df2T_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_biquad_cascade_stereo_df2T_instance_f32::pState
    +
    +

    points to the array of state coefficients. The array is of length 4*numStages.

    + +

    Referenced by arm_biquad_cascade_stereo_df2T_f32(), and arm_biquad_cascade_stereo_df2T_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.js new file mode 100644 index 0000000..32ab0d1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__cascade__stereo__df2_t__instance__f32.js @@ -0,0 +1,6 @@ +var structarm__biquad__cascade__stereo__df2_t__instance__f32 = +[ + [ "numStages", "structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a5655328252da5c2c2425ceed253bc4f1", null ], + [ "pCoeffs", "structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a58b15644de62a632c5e9d4a563569dc6", null ], + [ "pState", "structarm__biquad__cascade__stereo__df2_t__instance__f32.html#a2cb00048bb1fe957a03c1ff56dfaf8f0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.html b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.html new file mode 100644 index 0000000..d1ae5c6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.html @@ -0,0 +1,196 @@ + + + + + +arm_biquad_casd_df1_inst_f32 Struct Reference +CMSIS-DSP: arm_biquad_casd_df1_inst_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_casd_df1_inst_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point Biquad cascade filter. +

    + + + + + + + + +

    +Data Fields

    uint32_t numStages
     
    float32_tpState
     
    float32_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t arm_biquad_casd_df1_inst_f32::numStages
    +
    +

    number of 2nd order stages in the filter. Overall order is 2*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_f32(), and arm_biquad_cascade_df1_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_biquad_casd_df1_inst_f32::pCoeffs
    +
    +

    Points to the array of coefficients. The array is of length 5*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_f32(), and arm_biquad_cascade_df1_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_biquad_casd_df1_inst_f32::pState
    +
    +

    Points to the array of state coefficients. The array is of length 4*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_f32(), and arm_biquad_cascade_df1_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.js b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.js new file mode 100644 index 0000000..47b84ce --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__f32.js @@ -0,0 +1,6 @@ +var structarm__biquad__casd__df1__inst__f32 = +[ + [ "numStages", "structarm__biquad__casd__df1__inst__f32.html#af69820c37a87252c46453e4cfe120585", null ], + [ "pCoeffs", "structarm__biquad__casd__df1__inst__f32.html#af9df3820576fb921809d1462c9c6d16c", null ], + [ "pState", "structarm__biquad__casd__df1__inst__f32.html#a8c245d79e0d8cfabc82409d4b54fb682", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.html b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.html new file mode 100644 index 0000000..059c140 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.html @@ -0,0 +1,213 @@ + + + + + +arm_biquad_casd_df1_inst_q15 Struct Reference +CMSIS-DSP: arm_biquad_casd_df1_inst_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_casd_df1_inst_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 Biquad cascade filter. +

    + + + + + + + + + + +

    +Data Fields

    int8_t numStages
     
    q15_tpState
     
    q15_tpCoeffs
     
    int8_t postShift
     
    +

    Field Documentation

    + +
    +
    + + + + +
    int8_t arm_biquad_casd_df1_inst_q15::numStages
    +
    +

    number of 2nd order stages in the filter. Overall order is 2*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q15(), arm_biquad_cascade_df1_init_q15(), and arm_biquad_cascade_df1_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_biquad_casd_df1_inst_q15::pCoeffs
    +
    +

    Points to the array of coefficients. The array is of length 5*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q15(), arm_biquad_cascade_df1_init_q15(), and arm_biquad_cascade_df1_q15().

    + +
    +
    + +
    +
    + + + + +
    int8_t arm_biquad_casd_df1_inst_q15::postShift
    +
    +

    Additional shift, in bits, applied to each output sample.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q15(), arm_biquad_cascade_df1_init_q15(), and arm_biquad_cascade_df1_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_biquad_casd_df1_inst_q15::pState
    +
    +

    Points to the array of state coefficients. The array is of length 4*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q15(), arm_biquad_cascade_df1_init_q15(), and arm_biquad_cascade_df1_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.js b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.js new file mode 100644 index 0000000..2ca2a56 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q15.js @@ -0,0 +1,7 @@ +var structarm__biquad__casd__df1__inst__q15 = +[ + [ "numStages", "structarm__biquad__casd__df1__inst__q15.html#ad6d95e70abcf4ff1300181415ad92153", null ], + [ "pCoeffs", "structarm__biquad__casd__df1__inst__q15.html#a1edaacdebb5b09d7635bf20c779855fc", null ], + [ "postShift", "structarm__biquad__casd__df1__inst__q15.html#ada7e9d6269e6ed4eacf8f68729e9832d", null ], + [ "pState", "structarm__biquad__casd__df1__inst__q15.html#a5481104ef2f8f81360b80b47d69ae932", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.html b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.html new file mode 100644 index 0000000..c9d5fff --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.html @@ -0,0 +1,215 @@ + + + + + +arm_biquad_casd_df1_inst_q31 Struct Reference +CMSIS-DSP: arm_biquad_casd_df1_inst_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_biquad_casd_df1_inst_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 Biquad cascade filter. + More...

    + + + + + + + + + + +

    +Data Fields

    uint32_t numStages
     
    q31_tpState
     
    q31_tpCoeffs
     
    uint8_t postShift
     
    +

    Description

    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t arm_biquad_casd_df1_inst_q31::numStages
    +
    +

    number of 2nd order stages in the filter. Overall order is 2*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q31(), arm_biquad_cascade_df1_init_q31(), and arm_biquad_cascade_df1_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_biquad_casd_df1_inst_q31::pCoeffs
    +
    +

    Points to the array of coefficients. The array is of length 5*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q31(), arm_biquad_cascade_df1_init_q31(), and arm_biquad_cascade_df1_q31().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_biquad_casd_df1_inst_q31::postShift
    +
    +

    Additional shift, in bits, applied to each output sample.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q31(), arm_biquad_cascade_df1_init_q31(), and arm_biquad_cascade_df1_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_biquad_casd_df1_inst_q31::pState
    +
    +

    Points to the array of state coefficients. The array is of length 4*numStages.

    + +

    Referenced by arm_biquad_cascade_df1_fast_q31(), arm_biquad_cascade_df1_init_q31(), and arm_biquad_cascade_df1_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.js b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.js new file mode 100644 index 0000000..0a072f1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__biquad__casd__df1__inst__q31.js @@ -0,0 +1,7 @@ +var structarm__biquad__casd__df1__inst__q31 = +[ + [ "numStages", "structarm__biquad__casd__df1__inst__q31.html#a2c2b579f1df1d8273a5d9d945c27e1b2", null ], + [ "pCoeffs", "structarm__biquad__casd__df1__inst__q31.html#aa62366c632f3b5305086f841f079dbd2", null ], + [ "postShift", "structarm__biquad__casd__df1__inst__q31.html#a636c7fbe09ec4bef0bc0a4b4e2151cbe", null ], + [ "pState", "structarm__biquad__casd__df1__inst__q31.html#a5dcf4727f58eb4e8e8b392508d8657bb", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.html new file mode 100644 index 0000000..9e85cb3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.html @@ -0,0 +1,213 @@ + + + + + +arm_cfft_instance_f32 Struct Reference +CMSIS-DSP: arm_cfft_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point CFFT/CIFFT function. +

    + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    const float32_tpTwiddle
     
    const uint16_t * pBitRevTable
     
    uint16_t bitRevLength
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_cfft_instance_f32::bitRevLength
    +
    +

    bit reversal table length.

    + +

    Referenced by arm_cfft_f32(), and arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_instance_f32::fftLen
    +
    +
    + +
    +
    + + + + +
    const uint16_t* arm_cfft_instance_f32::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_f32(), and arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    const float32_t* arm_cfft_instance_f32::pTwiddle
    +
    +

    points to the Twiddle factor table.

    + +

    Referenced by arm_cfft_f32(), arm_cfft_radix8by2_f32(), arm_cfft_radix8by4_f32(), and arm_rfft_fast_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.js new file mode 100644 index 0000000..1f2e999 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__f32.js @@ -0,0 +1,7 @@ +var structarm__cfft__instance__f32 = +[ + [ "bitRevLength", "structarm__cfft__instance__f32.html#a3ba329ed153d182746376208e773d648", null ], + [ "fftLen", "structarm__cfft__instance__f32.html#acd8f9e9540e3dd348212726e5d6aaa95", null ], + [ "pBitRevTable", "structarm__cfft__instance__f32.html#a21ceaf59a1bb8440af57c28d2dd9bbab", null ], + [ "pTwiddle", "structarm__cfft__instance__f32.html#a59cc6f753f1498716e1444ac054c06de", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.html new file mode 100644 index 0000000..00d9c13 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.html @@ -0,0 +1,213 @@ + + + + + +arm_cfft_instance_q15 Struct Reference +CMSIS-DSP: arm_cfft_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the fixed-point CFFT/CIFFT function. +

    + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    const q15_tpTwiddle
     
    const uint16_t * pBitRevTable
     
    uint16_t bitRevLength
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_cfft_instance_q15::bitRevLength
    +
    +

    bit reversal table length.

    + +

    Referenced by arm_cfft_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_instance_q15::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_q15().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t* arm_cfft_instance_q15::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_q15().

    + +
    +
    + +
    +
    + + + + +
    const q15_t* arm_cfft_instance_q15::pTwiddle
    +
    +

    points to the Twiddle factor table.

    + +

    Referenced by arm_cfft_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.js new file mode 100644 index 0000000..ab4f5c8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q15.js @@ -0,0 +1,7 @@ +var structarm__cfft__instance__q15 = +[ + [ "bitRevLength", "structarm__cfft__instance__q15.html#a738907cf34bdbbaf724414ac2decbc3c", null ], + [ "fftLen", "structarm__cfft__instance__q15.html#a5f9e1d3a8c127ee323b5e6929aeb90df", null ], + [ "pBitRevTable", "structarm__cfft__instance__q15.html#ac9160b80243b99a0b6e2f75ddb5cf0ae", null ], + [ "pTwiddle", "structarm__cfft__instance__q15.html#afdaf12ce4687cec021c5ae73d0987a3f", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.html new file mode 100644 index 0000000..1db6f2b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.html @@ -0,0 +1,213 @@ + + + + + +arm_cfft_instance_q31 Struct Reference +CMSIS-DSP: arm_cfft_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the fixed-point CFFT/CIFFT function. +

    + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    const q31_tpTwiddle
     
    const uint16_t * pBitRevTable
     
    uint16_t bitRevLength
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_cfft_instance_q31::bitRevLength
    +
    +

    bit reversal table length.

    + +

    Referenced by arm_cfft_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_instance_q31::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_q31().

    + +
    +
    + +
    +
    + + + + +
    const uint16_t* arm_cfft_instance_q31::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_q31().

    + +
    +
    + +
    +
    + + + + +
    const q31_t* arm_cfft_instance_q31::pTwiddle
    +
    +

    points to the Twiddle factor table.

    + +

    Referenced by arm_cfft_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.js new file mode 100644 index 0000000..5082247 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__instance__q31.js @@ -0,0 +1,7 @@ +var structarm__cfft__instance__q31 = +[ + [ "bitRevLength", "structarm__cfft__instance__q31.html#a2250fa6b8fe73292c5418c50c0549f87", null ], + [ "fftLen", "structarm__cfft__instance__q31.html#a4406f23e8fd0bff8d555225612e2a2a8", null ], + [ "pBitRevTable", "structarm__cfft__instance__q31.html#a8a464461649f023325ced1e10470f5d0", null ], + [ "pTwiddle", "structarm__cfft__instance__q31.html#af751114feb91de3ace8600e91bdd0872", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.html new file mode 100644 index 0000000..5f8363a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.html @@ -0,0 +1,281 @@ + + + + + +arm_cfft_radix2_instance_f32 Struct Reference +CMSIS-DSP: arm_cfft_radix2_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point CFFT/CIFFT function. +

    + + + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    uint8_t ifftFlag
     
    uint8_t bitReverseFlag
     
    float32_tpTwiddle
     
    uint16_t * pBitRevTable
     
    uint16_t twidCoefModifier
     
    uint16_t bitRevFactor
     
    float32_t onebyfftLen
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_cfft_radix2_instance_f32::bitReverseFlag
    +
    +

    flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_f32::bitRevFactor
    +
    +

    bit reversal modifier that supports different size FFTs with the same bit reversal table.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_f32::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_cfft_radix2_instance_f32::ifftFlag
    +
    +

    flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_cfft_radix2_instance_f32::onebyfftLen
    +
    +

    value of 1/fftLen.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t* arm_cfft_radix2_instance_f32::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_cfft_radix2_instance_f32::pTwiddle
    +
    +

    points to the Twiddle factor table.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_f32::twidCoefModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_cfft_radix2_f32(), and arm_cfft_radix2_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.js new file mode 100644 index 0000000..88a5ed4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__f32.js @@ -0,0 +1,11 @@ +var structarm__cfft__radix2__instance__f32 = +[ + [ "bitReverseFlag", "structarm__cfft__radix2__instance__f32.html#af713b4ac5256a19bc965c89fe3005fa3", null ], + [ "bitRevFactor", "structarm__cfft__radix2__instance__f32.html#ac1688dafa5177f6b1505abbfd0cf8b21", null ], + [ "fftLen", "structarm__cfft__radix2__instance__f32.html#a2f915a1c29635c1623086aaaa726be8f", null ], + [ "ifftFlag", "structarm__cfft__radix2__instance__f32.html#a8dbe98d2c924e35e0a3fed2fe948176f", null ], + [ "onebyfftLen", "structarm__cfft__radix2__instance__f32.html#a1d3d289d47443e597d88a40effd14b8f", null ], + [ "pBitRevTable", "structarm__cfft__radix2__instance__f32.html#a92b8fa0a151cd800436094903a5ca0a4", null ], + [ "pTwiddle", "structarm__cfft__radix2__instance__f32.html#adb0c9d47dbfbd90a6f6ed0a05313a974", null ], + [ "twidCoefModifier", "structarm__cfft__radix2__instance__f32.html#a411f75b6ed01690293f4f5988030ea42", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.html new file mode 100644 index 0000000..32a27d8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.html @@ -0,0 +1,264 @@ + + + + + +arm_cfft_radix2_instance_q15 Struct Reference +CMSIS-DSP: arm_cfft_radix2_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 CFFT/CIFFT function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    uint8_t ifftFlag
     
    uint8_t bitReverseFlag
     
    q15_tpTwiddle
     
    uint16_t * pBitRevTable
     
    uint16_t twidCoefModifier
     
    uint16_t bitRevFactor
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_cfft_radix2_instance_q15::bitReverseFlag
    +
    +

    flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.

    + +

    Referenced by arm_cfft_radix2_init_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_q15::bitRevFactor
    +
    +

    bit reversal modifier that supports different size FFTs with the same bit reversal table.

    + +

    Referenced by arm_cfft_radix2_init_q15(), and arm_cfft_radix2_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_q15::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_radix2_init_q15(), and arm_cfft_radix2_q15().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_cfft_radix2_instance_q15::ifftFlag
    +
    +

    flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.

    + +

    Referenced by arm_cfft_radix2_init_q15(), and arm_cfft_radix2_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t* arm_cfft_radix2_instance_q15::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_radix2_init_q15(), and arm_cfft_radix2_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_cfft_radix2_instance_q15::pTwiddle
    +
    +

    points to the Sin twiddle factor table.

    + +

    Referenced by arm_cfft_radix2_init_q15(), and arm_cfft_radix2_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_q15::twidCoefModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_cfft_radix2_init_q15(), and arm_cfft_radix2_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.js new file mode 100644 index 0000000..d0cbb41 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q15.js @@ -0,0 +1,10 @@ +var structarm__cfft__radix2__instance__q15 = +[ + [ "bitReverseFlag", "structarm__cfft__radix2__instance__q15.html#af8300c1f60caa21e6b44b9240ab5af19", null ], + [ "bitRevFactor", "structarm__cfft__radix2__instance__q15.html#a8722720c542cabd41df83fe88ef4f4cb", null ], + [ "fftLen", "structarm__cfft__radix2__instance__q15.html#a874085647351dcf3f0de39d2b1d49744", null ], + [ "ifftFlag", "structarm__cfft__radix2__instance__q15.html#ab5c073286bdd2f6e2bf783ced36bf1de", null ], + [ "pBitRevTable", "structarm__cfft__radix2__instance__q15.html#ab88afeff6493be3c8b5e4530efa82d51", null ], + [ "pTwiddle", "structarm__cfft__radix2__instance__q15.html#a3809dd15e7cbf1a054c728cfbbb0cc5a", null ], + [ "twidCoefModifier", "structarm__cfft__radix2__instance__q15.html#a6f2ab87fb4c568656e1f92f687b5c850", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.html new file mode 100644 index 0000000..67e9234 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.html @@ -0,0 +1,264 @@ + + + + + +arm_cfft_radix2_instance_q31 Struct Reference +CMSIS-DSP: arm_cfft_radix2_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix2_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Radix-2 Q31 CFFT/CIFFT function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    uint8_t ifftFlag
     
    uint8_t bitReverseFlag
     
    q31_tpTwiddle
     
    uint16_t * pBitRevTable
     
    uint16_t twidCoefModifier
     
    uint16_t bitRevFactor
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_cfft_radix2_instance_q31::bitReverseFlag
    +
    +

    flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.

    + +

    Referenced by arm_cfft_radix2_init_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_q31::bitRevFactor
    +
    +

    bit reversal modifier that supports different size FFTs with the same bit reversal table.

    + +

    Referenced by arm_cfft_radix2_init_q31(), and arm_cfft_radix2_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_q31::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_radix2_init_q31(), and arm_cfft_radix2_q31().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_cfft_radix2_instance_q31::ifftFlag
    +
    +

    flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.

    + +

    Referenced by arm_cfft_radix2_init_q31(), and arm_cfft_radix2_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t* arm_cfft_radix2_instance_q31::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_radix2_init_q31(), and arm_cfft_radix2_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_cfft_radix2_instance_q31::pTwiddle
    +
    +

    points to the Twiddle factor table.

    + +

    Referenced by arm_cfft_radix2_init_q31(), and arm_cfft_radix2_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix2_instance_q31::twidCoefModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_cfft_radix2_init_q31(), and arm_cfft_radix2_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.js new file mode 100644 index 0000000..eb1e9a8 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix2__instance__q31.js @@ -0,0 +1,10 @@ +var structarm__cfft__radix2__instance__q31 = +[ + [ "bitReverseFlag", "structarm__cfft__radix2__instance__q31.html#a6239b8d268285334e88c008c07d68616", null ], + [ "bitRevFactor", "structarm__cfft__radix2__instance__q31.html#a9d17a87263953fe3559a007512c9f3a4", null ], + [ "fftLen", "structarm__cfft__radix2__instance__q31.html#a960199f1373a192366878ef279eab00f", null ], + [ "ifftFlag", "structarm__cfft__radix2__instance__q31.html#a2607378ce64be16698bb8a3b1af8d3c8", null ], + [ "pBitRevTable", "structarm__cfft__radix2__instance__q31.html#ada8e5264f4b22ff4c621817978994674", null ], + [ "pTwiddle", "structarm__cfft__radix2__instance__q31.html#a1d5bbe9a991e133f81652a77a7985d23", null ], + [ "twidCoefModifier", "structarm__cfft__radix2__instance__q31.html#ae63ca9193322cd477970c1d2086407d1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.html new file mode 100644 index 0000000..de3e3e2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.html @@ -0,0 +1,283 @@ + + + + + +arm_cfft_radix4_instance_f32 Struct Reference +CMSIS-DSP: arm_cfft_radix4_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point CFFT/CIFFT function. + More...

    + + + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    uint8_t ifftFlag
     
    uint8_t bitReverseFlag
     
    float32_tpTwiddle
     
    uint16_t * pBitRevTable
     
    uint16_t twidCoefModifier
     
    uint16_t bitRevFactor
     
    float32_t onebyfftLen
     
    +

    Description

    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_cfft_radix4_instance_f32::bitReverseFlag
    +
    +

    flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.

    + +

    Referenced by arm_cfft_radix4_f32(), and arm_cfft_radix4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_f32::bitRevFactor
    +
    +

    bit reversal modifier that supports different size FFTs with the same bit reversal table.

    + +

    Referenced by arm_cfft_radix4_f32(), arm_cfft_radix4_init_f32(), and arm_rfft_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_f32::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_radix4_f32(), arm_cfft_radix4_init_f32(), and arm_rfft_f32().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_cfft_radix4_instance_f32::ifftFlag
    +
    +

    flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.

    + +

    Referenced by arm_cfft_radix4_f32(), and arm_cfft_radix4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_cfft_radix4_instance_f32::onebyfftLen
    +
    +

    value of 1/fftLen.

    + +

    Referenced by arm_cfft_radix4_f32(), arm_cfft_radix4_init_f32(), and arm_rfft_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t* arm_cfft_radix4_instance_f32::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_radix4_f32(), arm_cfft_radix4_init_f32(), and arm_rfft_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_cfft_radix4_instance_f32::pTwiddle
    +
    +

    points to the Twiddle factor table.

    + +

    Referenced by arm_cfft_radix4_f32(), arm_cfft_radix4_init_f32(), and arm_rfft_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_f32::twidCoefModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_cfft_radix4_f32(), arm_cfft_radix4_init_f32(), and arm_rfft_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.js new file mode 100644 index 0000000..e51ec9c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__f32.js @@ -0,0 +1,11 @@ +var structarm__cfft__radix4__instance__f32 = +[ + [ "bitReverseFlag", "structarm__cfft__radix4__instance__f32.html#ac10927a1620195a88649ce63dab66120", null ], + [ "bitRevFactor", "structarm__cfft__radix4__instance__f32.html#acc8cb18a8b901b8321ab9d86491e41a3", null ], + [ "fftLen", "structarm__cfft__radix4__instance__f32.html#a7e6a6d290ce158ce9a15a45e364b021a", null ], + [ "ifftFlag", "structarm__cfft__radix4__instance__f32.html#a25d1da64dd6487c291f04d226f9acc66", null ], + [ "onebyfftLen", "structarm__cfft__radix4__instance__f32.html#ab9eed39e40b8d7c16381fbccf84467cd", null ], + [ "pBitRevTable", "structarm__cfft__radix4__instance__f32.html#a8da0d2ca69749fde8cbb95caeac6fe6a", null ], + [ "pTwiddle", "structarm__cfft__radix4__instance__f32.html#a14860c7544911702ca1fa0bf78204ef3", null ], + [ "twidCoefModifier", "structarm__cfft__radix4__instance__f32.html#abe31ea2157dfa233e389cdfd3b9993ee", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.html new file mode 100644 index 0000000..71b57e7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.html @@ -0,0 +1,264 @@ + + + + + +arm_cfft_radix4_instance_q15 Struct Reference +CMSIS-DSP: arm_cfft_radix4_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 CFFT/CIFFT function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    uint8_t ifftFlag
     
    uint8_t bitReverseFlag
     
    q15_tpTwiddle
     
    uint16_t * pBitRevTable
     
    uint16_t twidCoefModifier
     
    uint16_t bitRevFactor
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_cfft_radix4_instance_q15::bitReverseFlag
    +
    +

    flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.

    + +

    Referenced by arm_cfft_radix4_init_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_q15::bitRevFactor
    +
    +

    bit reversal modifier that supports different size FFTs with the same bit reversal table.

    + +

    Referenced by arm_cfft_radix4_init_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_q15::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_radix4_init_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_cfft_radix4_instance_q15::ifftFlag
    +
    +

    flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.

    + +

    Referenced by arm_cfft_radix4_init_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t* arm_cfft_radix4_instance_q15::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_radix4_init_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_cfft_radix4_instance_q15::pTwiddle
    +
    +

    points to the twiddle factor table.

    + +

    Referenced by arm_cfft_radix4_init_q15(), and arm_cfft_radix4_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_q15::twidCoefModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_cfft_radix4_init_q15(), and arm_cfft_radix4_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.js new file mode 100644 index 0000000..fbb00ca --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q15.js @@ -0,0 +1,10 @@ +var structarm__cfft__radix4__instance__q15 = +[ + [ "bitReverseFlag", "structarm__cfft__radix4__instance__q15.html#a101e3f7b0bd6b5b14cd5214f23df4133", null ], + [ "bitRevFactor", "structarm__cfft__radix4__instance__q15.html#a6b010e5f02d1130c621e3d2e26b95df1", null ], + [ "fftLen", "structarm__cfft__radix4__instance__q15.html#a5fc543e7d84ca8cb7cf6648970f21ca6", null ], + [ "ifftFlag", "structarm__cfft__radix4__instance__q15.html#a2ecff6ea735cb4d22e922d0fd5736655", null ], + [ "pBitRevTable", "structarm__cfft__radix4__instance__q15.html#a4acf704ae0cf30b53bf0fbfae8e34a59", null ], + [ "pTwiddle", "structarm__cfft__radix4__instance__q15.html#a29dd693537e45421a36891f8439e1fba", null ], + [ "twidCoefModifier", "structarm__cfft__radix4__instance__q15.html#af32fdc78bcc27ca385f9b76a0a1f71c3", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.html new file mode 100644 index 0000000..dbe5819 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.html @@ -0,0 +1,264 @@ + + + + + +arm_cfft_radix4_instance_q31 Struct Reference +CMSIS-DSP: arm_cfft_radix4_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_cfft_radix4_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 CFFT/CIFFT function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t fftLen
     
    uint8_t ifftFlag
     
    uint8_t bitReverseFlag
     
    q31_tpTwiddle
     
    uint16_t * pBitRevTable
     
    uint16_t twidCoefModifier
     
    uint16_t bitRevFactor
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_cfft_radix4_instance_q31::bitReverseFlag
    +
    +

    flag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.

    + +

    Referenced by arm_cfft_radix4_init_q31(), and arm_cfft_radix4_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_q31::bitRevFactor
    +
    +

    bit reversal modifier that supports different size FFTs with the same bit reversal table.

    + +

    Referenced by arm_cfft_radix4_init_q31(), and arm_cfft_radix4_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_q31::fftLen
    +
    +

    length of the FFT.

    + +

    Referenced by arm_cfft_radix4_init_q31(), and arm_cfft_radix4_q31().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_cfft_radix4_instance_q31::ifftFlag
    +
    +

    flag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.

    + +

    Referenced by arm_cfft_radix4_init_q31(), and arm_cfft_radix4_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t* arm_cfft_radix4_instance_q31::pBitRevTable
    +
    +

    points to the bit reversal table.

    + +

    Referenced by arm_cfft_radix4_init_q31(), and arm_cfft_radix4_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_cfft_radix4_instance_q31::pTwiddle
    +
    +

    points to the twiddle factor table.

    + +

    Referenced by arm_cfft_radix4_init_q31(), and arm_cfft_radix4_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_cfft_radix4_instance_q31::twidCoefModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_cfft_radix4_init_q31(), and arm_cfft_radix4_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.js new file mode 100644 index 0000000..227b943 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__cfft__radix4__instance__q31.js @@ -0,0 +1,10 @@ +var structarm__cfft__radix4__instance__q31 = +[ + [ "bitReverseFlag", "structarm__cfft__radix4__instance__q31.html#a5a7c4f4c7b3fb655cbb2bc11ef160a2a", null ], + [ "bitRevFactor", "structarm__cfft__radix4__instance__q31.html#a94d2fead4efa4d5eaae142bbe30b0e15", null ], + [ "fftLen", "structarm__cfft__radix4__instance__q31.html#ab413d2a5d3f45fa187d93813bf3bf81b", null ], + [ "ifftFlag", "structarm__cfft__radix4__instance__q31.html#adc0a62ba669ad2282ecbe43d5d96abab", null ], + [ "pBitRevTable", "structarm__cfft__radix4__instance__q31.html#a33a3bc774c97373261699463c05dfe54", null ], + [ "pTwiddle", "structarm__cfft__radix4__instance__q31.html#a561c22dee4cbdcfa0fd5f15106ecc306", null ], + [ "twidCoefModifier", "structarm__cfft__radix4__instance__q31.html#a8cf8187b8232815cf17ee82bf572ecf9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.html new file mode 100644 index 0000000..fff10fa --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.html @@ -0,0 +1,264 @@ + + + + + +arm_dct4_instance_f32 Struct Reference +CMSIS-DSP: arm_dct4_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point DCT4/IDCT4 function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t N
     
    uint16_t Nby2
     
    float32_t normalize
     
    float32_tpTwiddle
     
    float32_tpCosFactor
     
    arm_rfft_instance_f32pRfft
     
    arm_cfft_radix4_instance_f32pCfft
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_dct4_instance_f32::N
    +
    +

    length of the DCT4.

    + +

    Referenced by arm_dct4_f32(), and arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_dct4_instance_f32::Nby2
    +
    +

    half of the length of the DCT4.

    + +

    Referenced by arm_dct4_f32(), and arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_dct4_instance_f32::normalize
    +
    +

    normalizing factor.

    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    arm_cfft_radix4_instance_f32* arm_dct4_instance_f32::pCfft
    +
    +

    points to the complex FFT instance.

    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_dct4_instance_f32::pCosFactor
    +
    +

    points to the cosFactor table.

    + +

    Referenced by arm_dct4_f32(), and arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    arm_rfft_instance_f32* arm_dct4_instance_f32::pRfft
    +
    +

    points to the real FFT instance.

    + +

    Referenced by arm_dct4_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_dct4_instance_f32::pTwiddle
    +
    +

    points to the twiddle factor table.

    + +

    Referenced by arm_dct4_f32(), and arm_dct4_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.js new file mode 100644 index 0000000..2bb4bef --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__f32.js @@ -0,0 +1,10 @@ +var structarm__dct4__instance__f32 = +[ + [ "N", "structarm__dct4__instance__f32.html#a262b29a51c371b46efc89120e31ccf37", null ], + [ "Nby2", "structarm__dct4__instance__f32.html#adb1ef2739ddbe62e5cdadc47455a4147", null ], + [ "normalize", "structarm__dct4__instance__f32.html#a61ce8c967b2e998a9c0041cca73cdef8", null ], + [ "pCfft", "structarm__dct4__instance__f32.html#a018f7860b6e070af533fb7d76c7cdc32", null ], + [ "pCosFactor", "structarm__dct4__instance__f32.html#a6da1187e070801e011ce5e0582efa861", null ], + [ "pRfft", "structarm__dct4__instance__f32.html#a978f37fc19add31af243ab5c63ae502f", null ], + [ "pTwiddle", "structarm__dct4__instance__f32.html#ad13544aafad268588c62e3eb35ae662c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.html new file mode 100644 index 0000000..d63aae0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.html @@ -0,0 +1,264 @@ + + + + + +arm_dct4_instance_q15 Struct Reference +CMSIS-DSP: arm_dct4_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 DCT4/IDCT4 function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t N
     
    uint16_t Nby2
     
    q15_t normalize
     
    q15_tpTwiddle
     
    q15_tpCosFactor
     
    arm_rfft_instance_q15pRfft
     
    arm_cfft_radix4_instance_q15pCfft
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_dct4_instance_q15::N
    +
    +

    length of the DCT4.

    + +

    Referenced by arm_dct4_init_q15(), and arm_dct4_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_dct4_instance_q15::Nby2
    +
    +

    half of the length of the DCT4.

    + +

    Referenced by arm_dct4_init_q15(), and arm_dct4_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t arm_dct4_instance_q15::normalize
    +
    +

    normalizing factor.

    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + +
    arm_cfft_radix4_instance_q15* arm_dct4_instance_q15::pCfft
    +
    +

    points to the complex FFT instance.

    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_dct4_instance_q15::pCosFactor
    +
    +

    points to the cosFactor table.

    + +

    Referenced by arm_dct4_init_q15(), and arm_dct4_q15().

    + +
    +
    + +
    +
    + + + + +
    arm_rfft_instance_q15* arm_dct4_instance_q15::pRfft
    +
    +

    points to the real FFT instance.

    + +

    Referenced by arm_dct4_init_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_dct4_instance_q15::pTwiddle
    +
    +

    points to the twiddle factor table.

    + +

    Referenced by arm_dct4_init_q15(), and arm_dct4_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.js new file mode 100644 index 0000000..aca660b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q15.js @@ -0,0 +1,10 @@ +var structarm__dct4__instance__q15 = +[ + [ "N", "structarm__dct4__instance__q15.html#a53d24009bb9b2e93d0aa07db7f1a6c25", null ], + [ "Nby2", "structarm__dct4__instance__q15.html#af43dcbbc2fc661ffbc525afe3dcbd7da", null ], + [ "normalize", "structarm__dct4__instance__q15.html#a197098140d68e89a08f7a249003a0b86", null ], + [ "pCfft", "structarm__dct4__instance__q15.html#a7284932ee8c36107c33815eb62eadffc", null ], + [ "pCosFactor", "structarm__dct4__instance__q15.html#ac76df681b1bd502fb4874c06f055dded", null ], + [ "pRfft", "structarm__dct4__instance__q15.html#a11cf95c1cd9dd2dd5e4b81b8f88dc208", null ], + [ "pTwiddle", "structarm__dct4__instance__q15.html#abc6c847e9f906781e1d5da40e9aafa76", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.html new file mode 100644 index 0000000..b3478d4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.html @@ -0,0 +1,264 @@ + + + + + +arm_dct4_instance_q31 Struct Reference +CMSIS-DSP: arm_dct4_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_dct4_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 DCT4/IDCT4 function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t N
     
    uint16_t Nby2
     
    q31_t normalize
     
    q31_tpTwiddle
     
    q31_tpCosFactor
     
    arm_rfft_instance_q31pRfft
     
    arm_cfft_radix4_instance_q31pCfft
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_dct4_instance_q31::N
    +
    +

    length of the DCT4.

    + +

    Referenced by arm_dct4_init_q31(), and arm_dct4_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_dct4_instance_q31::Nby2
    +
    +

    half of the length of the DCT4.

    + +

    Referenced by arm_dct4_init_q31(), and arm_dct4_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_dct4_instance_q31::normalize
    +
    +

    normalizing factor.

    + +

    Referenced by arm_dct4_init_q31(), and arm_dct4_q31().

    + +
    +
    + +
    +
    + + + + +
    arm_cfft_radix4_instance_q31* arm_dct4_instance_q31::pCfft
    +
    +

    points to the complex FFT instance.

    + +

    Referenced by arm_dct4_init_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_dct4_instance_q31::pCosFactor
    +
    +

    points to the cosFactor table.

    + +

    Referenced by arm_dct4_init_q31(), and arm_dct4_q31().

    + +
    +
    + +
    +
    + + + + +
    arm_rfft_instance_q31* arm_dct4_instance_q31::pRfft
    +
    +

    points to the real FFT instance.

    + +

    Referenced by arm_dct4_init_q31(), and arm_dct4_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_dct4_instance_q31::pTwiddle
    +
    +

    points to the twiddle factor table.

    + +

    Referenced by arm_dct4_init_q31(), and arm_dct4_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.js new file mode 100644 index 0000000..ad6005a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__dct4__instance__q31.js @@ -0,0 +1,10 @@ +var structarm__dct4__instance__q31 = +[ + [ "N", "structarm__dct4__instance__q31.html#a46a9f136457350676e2bfd3768ff9d6d", null ], + [ "Nby2", "structarm__dct4__instance__q31.html#a32d3268ba4629908dba056599f0a904d", null ], + [ "normalize", "structarm__dct4__instance__q31.html#ac80ff7b28fca36aeef74dea12e8312dd", null ], + [ "pCfft", "structarm__dct4__instance__q31.html#ac96579cfb28d08bb11dd2fe4c6303833", null ], + [ "pCosFactor", "structarm__dct4__instance__q31.html#af97204d1838925621fc82021a0c2d6c1", null ], + [ "pRfft", "structarm__dct4__instance__q31.html#af1487dab5e7963b85dc0fdc6bf492542", null ], + [ "pTwiddle", "structarm__dct4__instance__q31.html#a7db236e22673146bb1d2c962f0713f08", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.html new file mode 100644 index 0000000..693e3e5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.html @@ -0,0 +1,213 @@ + + + + + +arm_fir_decimate_instance_f32 Struct Reference +CMSIS-DSP: arm_fir_decimate_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point FIR decimator. +

    + + + + + + + + + + +

    +Data Fields

    uint8_t M
     
    uint16_t numTaps
     
    float32_tpCoeffs
     
    float32_tpState
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_fir_decimate_instance_f32::M
    +
    +

    decimation factor.

    + +

    Referenced by arm_fir_decimate_f32(), and arm_fir_decimate_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_decimate_instance_f32::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_fir_decimate_f32(), and arm_fir_decimate_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_decimate_instance_f32::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_decimate_f32(), and arm_fir_decimate_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_decimate_instance_f32::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_fir_decimate_f32(), and arm_fir_decimate_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.js new file mode 100644 index 0000000..65803f7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__f32.js @@ -0,0 +1,7 @@ +var structarm__fir__decimate__instance__f32 = +[ + [ "M", "structarm__fir__decimate__instance__f32.html#a76a8b2161731638eb3d67f277919f95d", null ], + [ "numTaps", "structarm__fir__decimate__instance__f32.html#a2aa2986129db8affef03ede88dd45a03", null ], + [ "pCoeffs", "structarm__fir__decimate__instance__f32.html#a268a8b0e80a3d9764baf33e4bc10dde2", null ], + [ "pState", "structarm__fir__decimate__instance__f32.html#a5bddf29aaaf2011d2e3bcec59a83f633", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.html new file mode 100644 index 0000000..0f65695 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.html @@ -0,0 +1,213 @@ + + + + + +arm_fir_decimate_instance_q15 Struct Reference +CMSIS-DSP: arm_fir_decimate_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 FIR decimator. +

    + + + + + + + + + + +

    +Data Fields

    uint8_t M
     
    uint16_t numTaps
     
    q15_tpCoeffs
     
    q15_tpState
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_fir_decimate_instance_q15::M
    +
    +

    decimation factor.

    + +

    Referenced by arm_fir_decimate_fast_q15(), arm_fir_decimate_init_q15(), and arm_fir_decimate_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_decimate_instance_q15::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_fir_decimate_fast_q15(), arm_fir_decimate_init_q15(), and arm_fir_decimate_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_decimate_instance_q15::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_decimate_fast_q15(), arm_fir_decimate_init_q15(), and arm_fir_decimate_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_decimate_instance_q15::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_fir_decimate_fast_q15(), arm_fir_decimate_init_q15(), and arm_fir_decimate_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.js new file mode 100644 index 0000000..6591c22 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q15.js @@ -0,0 +1,7 @@ +var structarm__fir__decimate__instance__q15 = +[ + [ "M", "structarm__fir__decimate__instance__q15.html#aad9320284218b3aa378527ea518cf093", null ], + [ "numTaps", "structarm__fir__decimate__instance__q15.html#ac1e9844488ec717da334fbd4c4f41990", null ], + [ "pCoeffs", "structarm__fir__decimate__instance__q15.html#a01cacab67e73945e8289075598ede14d", null ], + [ "pState", "structarm__fir__decimate__instance__q15.html#a3f7b5184bb28853ef401b001df121047", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.html new file mode 100644 index 0000000..31d943f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.html @@ -0,0 +1,213 @@ + + + + + +arm_fir_decimate_instance_q31 Struct Reference +CMSIS-DSP: arm_fir_decimate_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_decimate_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 FIR decimator. +

    + + + + + + + + + + +

    +Data Fields

    uint8_t M
     
    uint16_t numTaps
     
    q31_tpCoeffs
     
    q31_tpState
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_fir_decimate_instance_q31::M
    +
    +

    decimation factor.

    + +

    Referenced by arm_fir_decimate_fast_q31(), arm_fir_decimate_init_q31(), and arm_fir_decimate_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_decimate_instance_q31::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_fir_decimate_fast_q31(), arm_fir_decimate_init_q31(), and arm_fir_decimate_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_decimate_instance_q31::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_decimate_fast_q31(), arm_fir_decimate_init_q31(), and arm_fir_decimate_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_decimate_instance_q31::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_fir_decimate_fast_q31(), arm_fir_decimate_init_q31(), and arm_fir_decimate_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.js new file mode 100644 index 0000000..b3cd80f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__decimate__instance__q31.js @@ -0,0 +1,7 @@ +var structarm__fir__decimate__instance__q31 = +[ + [ "M", "structarm__fir__decimate__instance__q31.html#ad3d6936c36303b30dd38f1eddf248ae5", null ], + [ "numTaps", "structarm__fir__decimate__instance__q31.html#a37915d42b0dc5e3057ebe83110798482", null ], + [ "pCoeffs", "structarm__fir__decimate__instance__q31.html#a030d0391538c2481c5b348fd09a952ff", null ], + [ "pState", "structarm__fir__decimate__instance__q31.html#a0ef0ef9e265f7ab873cfc6daa7593fdb", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.html new file mode 100644 index 0000000..a06549d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.html @@ -0,0 +1,198 @@ + + + + + +arm_fir_instance_f32 Struct Reference +CMSIS-DSP: arm_fir_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point FIR filter. + More...

    + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    float32_tpState
     
    float32_tpCoeffs
     
    +

    Description

    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_instance_f32::numTaps
    +
    +

    number of filter coefficients in the filter.

    + +

    Referenced by arm_fir_f32(), and arm_fir_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_instance_f32::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_f32(), and arm_fir_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_instance_f32::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_fir_f32(), and arm_fir_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.js new file mode 100644 index 0000000..d67ad4d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__f32.js @@ -0,0 +1,6 @@ +var structarm__fir__instance__f32 = +[ + [ "numTaps", "structarm__fir__instance__f32.html#a20cf98c92b5323799b7881c9ff4d2f7c", null ], + [ "pCoeffs", "structarm__fir__instance__f32.html#a1c9cfca901d5902afeb640f2831488f4", null ], + [ "pState", "structarm__fir__instance__f32.html#a7afcf4022e8560db9b8fd28b0d090a15", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.html new file mode 100644 index 0000000..369af91 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.html @@ -0,0 +1,196 @@ + + + + + +arm_fir_instance_q15 Struct Reference +CMSIS-DSP: arm_fir_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 FIR filter. +

    + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    q15_tpState
     
    q15_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_instance_q15::numTaps
    +
    +

    number of filter coefficients in the filter.

    + +

    Referenced by arm_fir_fast_q15(), arm_fir_init_q15(), and arm_fir_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_instance_q15::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_fast_q15(), arm_fir_init_q15(), and arm_fir_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_instance_q15::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_fir_fast_q15(), arm_fir_init_q15(), and arm_fir_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.js new file mode 100644 index 0000000..1493cc1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q15.js @@ -0,0 +1,6 @@ +var structarm__fir__instance__q15 = +[ + [ "numTaps", "structarm__fir__instance__q15.html#a0e46f93cf51bfb18b1be808be9c5bfc9", null ], + [ "pCoeffs", "structarm__fir__instance__q15.html#a6d16db16a5f8f0db54938f2967244d9e", null ], + [ "pState", "structarm__fir__instance__q15.html#aa8d25f44f45b6a6c4cf38c31569b8a01", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.html new file mode 100644 index 0000000..e82f36f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.html @@ -0,0 +1,196 @@ + + + + + +arm_fir_instance_q31 Struct Reference +CMSIS-DSP: arm_fir_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 FIR filter. +

    + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    q31_tpState
     
    q31_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_instance_q31::numTaps
    +
    +

    number of filter coefficients in the filter.

    + +

    Referenced by arm_fir_fast_q31(), arm_fir_init_q31(), and arm_fir_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_instance_q31::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_fast_q31(), arm_fir_init_q31(), and arm_fir_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_instance_q31::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_fir_fast_q31(), arm_fir_init_q31(), and arm_fir_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.js new file mode 100644 index 0000000..5cc8889 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q31.js @@ -0,0 +1,6 @@ +var structarm__fir__instance__q31 = +[ + [ "numTaps", "structarm__fir__instance__q31.html#a918fadd775b7a0482b21bf34dae2f094", null ], + [ "pCoeffs", "structarm__fir__instance__q31.html#afaae4c884bdf11a4ec2f3b9bb2bb51d0", null ], + [ "pState", "structarm__fir__instance__q31.html#a409f39c93b744784648bdc365541444d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.html b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.html new file mode 100644 index 0000000..c1e54fe --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.html @@ -0,0 +1,196 @@ + + + + + +arm_fir_instance_q7 Struct Reference +CMSIS-DSP: arm_fir_instance_q7 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_instance_q7 Struct Reference
    +
    +
    + +

    Instance structure for the Q7 FIR filter. +

    + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    q7_tpState
     
    q7_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_instance_q7::numTaps
    +
    +

    number of filter coefficients in the filter.

    + +

    Referenced by arm_fir_init_q7(), and arm_fir_q7().

    + +
    +
    + +
    +
    + + + + +
    q7_t* arm_fir_instance_q7::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_init_q7(), and arm_fir_q7().

    + +
    +
    + +
    +
    + + + + +
    q7_t* arm_fir_instance_q7::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_fir_init_q7(), and arm_fir_q7().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.js b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.js new file mode 100644 index 0000000..411b51f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__instance__q7.js @@ -0,0 +1,6 @@ +var structarm__fir__instance__q7 = +[ + [ "numTaps", "structarm__fir__instance__q7.html#a9b50840e2c5ef5b17e1a584fb4cf0d06", null ], + [ "pCoeffs", "structarm__fir__instance__q7.html#a0e45aedefc3fffad6cb315c5b6e5bd49", null ], + [ "pState", "structarm__fir__instance__q7.html#aaddea3b9c7e16ddfd9428b7bf9f9c200", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.html new file mode 100644 index 0000000..5a7588a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.html @@ -0,0 +1,213 @@ + + + + + +arm_fir_interpolate_instance_f32 Struct Reference +CMSIS-DSP: arm_fir_interpolate_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point FIR interpolator. +

    + + + + + + + + + + +

    +Data Fields

    uint8_t L
     
    uint16_t phaseLength
     
    float32_tpCoeffs
     
    float32_tpState
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_fir_interpolate_instance_f32::L
    +
    +

    upsample factor.

    + +

    Referenced by arm_fir_interpolate_f32(), and arm_fir_interpolate_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_interpolate_instance_f32::pCoeffs
    +
    +

    points to the coefficient array. The array is of length L*phaseLength.

    + +

    Referenced by arm_fir_interpolate_f32(), and arm_fir_interpolate_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_interpolate_instance_f32::phaseLength
    +
    +

    length of each polyphase filter component.

    + +

    Referenced by arm_fir_interpolate_f32(), and arm_fir_interpolate_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_interpolate_instance_f32::pState
    +
    +

    points to the state variable array. The array is of length phaseLength+numTaps-1.

    + +

    Referenced by arm_fir_interpolate_f32(), and arm_fir_interpolate_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.js new file mode 100644 index 0000000..2d74ca2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__f32.js @@ -0,0 +1,7 @@ +var structarm__fir__interpolate__instance__f32 = +[ + [ "L", "structarm__fir__interpolate__instance__f32.html#ae6f94dcc0ccd8aa4bc699b20985d9df5", null ], + [ "pCoeffs", "structarm__fir__interpolate__instance__f32.html#a86053b715980a93c9df630d6de5bb63c", null ], + [ "phaseLength", "structarm__fir__interpolate__instance__f32.html#a389e669e13ec56292a70db8e92194b12", null ], + [ "pState", "structarm__fir__interpolate__instance__f32.html#a42a8ba1bda85fa86d7b6c84d3da4c75b", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.html new file mode 100644 index 0000000..1998c0f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.html @@ -0,0 +1,213 @@ + + + + + +arm_fir_interpolate_instance_q15 Struct Reference +CMSIS-DSP: arm_fir_interpolate_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 FIR interpolator. +

    + + + + + + + + + + +

    +Data Fields

    uint8_t L
     
    uint16_t phaseLength
     
    q15_tpCoeffs
     
    q15_tpState
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_fir_interpolate_instance_q15::L
    +
    +

    upsample factor.

    + +

    Referenced by arm_fir_interpolate_init_q15(), and arm_fir_interpolate_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_interpolate_instance_q15::pCoeffs
    +
    +

    points to the coefficient array. The array is of length L*phaseLength.

    + +

    Referenced by arm_fir_interpolate_init_q15(), and arm_fir_interpolate_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_interpolate_instance_q15::phaseLength
    +
    +

    length of each polyphase filter component.

    + +

    Referenced by arm_fir_interpolate_init_q15(), and arm_fir_interpolate_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_interpolate_instance_q15::pState
    +
    +

    points to the state variable array. The array is of length blockSize+phaseLength-1.

    + +

    Referenced by arm_fir_interpolate_init_q15(), and arm_fir_interpolate_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.js new file mode 100644 index 0000000..aa338be --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q15.js @@ -0,0 +1,7 @@ +var structarm__fir__interpolate__instance__q15 = +[ + [ "L", "structarm__fir__interpolate__instance__q15.html#a5431bdc079e72a973b51d359f7f13603", null ], + [ "pCoeffs", "structarm__fir__interpolate__instance__q15.html#a767d91d61d4c0beeddd4325d28d28e24", null ], + [ "phaseLength", "structarm__fir__interpolate__instance__q15.html#ad5178a02a697a77e0d0e60705d9f0a19", null ], + [ "pState", "structarm__fir__interpolate__instance__q15.html#a26b864363fa47954248f2590e3a82a3c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.html new file mode 100644 index 0000000..76029e7 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.html @@ -0,0 +1,213 @@ + + + + + +arm_fir_interpolate_instance_q31 Struct Reference +CMSIS-DSP: arm_fir_interpolate_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_interpolate_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 FIR interpolator. +

    + + + + + + + + + + +

    +Data Fields

    uint8_t L
     
    uint16_t phaseLength
     
    q31_tpCoeffs
     
    q31_tpState
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_fir_interpolate_instance_q31::L
    +
    +

    upsample factor.

    + +

    Referenced by arm_fir_interpolate_init_q31(), and arm_fir_interpolate_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_interpolate_instance_q31::pCoeffs
    +
    +

    points to the coefficient array. The array is of length L*phaseLength.

    + +

    Referenced by arm_fir_interpolate_init_q31(), and arm_fir_interpolate_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_interpolate_instance_q31::phaseLength
    +
    +

    length of each polyphase filter component.

    + +

    Referenced by arm_fir_interpolate_init_q31(), and arm_fir_interpolate_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_interpolate_instance_q31::pState
    +
    +

    points to the state variable array. The array is of length blockSize+phaseLength-1.

    + +

    Referenced by arm_fir_interpolate_init_q31(), and arm_fir_interpolate_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.js new file mode 100644 index 0000000..a603dd4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__interpolate__instance__q31.js @@ -0,0 +1,7 @@ +var structarm__fir__interpolate__instance__q31 = +[ + [ "L", "structarm__fir__interpolate__instance__q31.html#a5cdf0a631cb74e0e9588c388abe5235c", null ], + [ "pCoeffs", "structarm__fir__interpolate__instance__q31.html#afa719433687e1936ec3403d0d32f06e6", null ], + [ "phaseLength", "structarm__fir__interpolate__instance__q31.html#a5d243796584afc7cd6c557f00b7acca5", null ], + [ "pState", "structarm__fir__interpolate__instance__q31.html#addde04514b6e6ac72be3d609f0398b1a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.html new file mode 100644 index 0000000..1a9db4c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.html @@ -0,0 +1,196 @@ + + + + + +arm_fir_lattice_instance_f32 Struct Reference +CMSIS-DSP: arm_fir_lattice_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point FIR lattice filter. +

    + + + + + + + + +

    +Data Fields

    uint16_t numStages
     
    float32_tpState
     
    float32_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_lattice_instance_f32::numStages
    +
    +

    number of filter stages.

    + +

    Referenced by arm_fir_lattice_f32(), and arm_fir_lattice_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_lattice_instance_f32::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numStages.

    + +

    Referenced by arm_fir_lattice_f32(), and arm_fir_lattice_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_lattice_instance_f32::pState
    +
    +

    points to the state variable array. The array is of length numStages.

    + +

    Referenced by arm_fir_lattice_f32(), and arm_fir_lattice_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.js new file mode 100644 index 0000000..90795b2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__f32.js @@ -0,0 +1,6 @@ +var structarm__fir__lattice__instance__f32 = +[ + [ "numStages", "structarm__fir__lattice__instance__f32.html#ad369bd9997a250f195254df37408a38f", null ], + [ "pCoeffs", "structarm__fir__lattice__instance__f32.html#a33bf5948c947f9ef80a99717cb0a0a43", null ], + [ "pState", "structarm__fir__lattice__instance__f32.html#ae348884a1ba9b83fadccd5da640cbcaf", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.html new file mode 100644 index 0000000..090f839 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.html @@ -0,0 +1,196 @@ + + + + + +arm_fir_lattice_instance_q15 Struct Reference +CMSIS-DSP: arm_fir_lattice_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 FIR lattice filter. +

    + + + + + + + + +

    +Data Fields

    uint16_t numStages
     
    q15_tpState
     
    q15_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_lattice_instance_q15::numStages
    +
    +

    number of filter stages.

    + +

    Referenced by arm_fir_lattice_init_q15(), and arm_fir_lattice_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_lattice_instance_q15::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numStages.

    + +

    Referenced by arm_fir_lattice_init_q15(), and arm_fir_lattice_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_lattice_instance_q15::pState
    +
    +

    points to the state variable array. The array is of length numStages.

    + +

    Referenced by arm_fir_lattice_init_q15(), and arm_fir_lattice_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.js new file mode 100644 index 0000000..8df831b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q15.js @@ -0,0 +1,6 @@ +var structarm__fir__lattice__instance__q15 = +[ + [ "numStages", "structarm__fir__lattice__instance__q15.html#a38b179138d6a6c9cac4f8f79b6fd5357", null ], + [ "pCoeffs", "structarm__fir__lattice__instance__q15.html#a78f872826140069cf67836fff87360bc", null ], + [ "pState", "structarm__fir__lattice__instance__q15.html#a37b90dea2bc3ee7c9951a9fe74db0cbb", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.html new file mode 100644 index 0000000..abdc8e3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.html @@ -0,0 +1,196 @@ + + + + + +arm_fir_lattice_instance_q31 Struct Reference +CMSIS-DSP: arm_fir_lattice_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_lattice_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 FIR lattice filter. +

    + + + + + + + + +

    +Data Fields

    uint16_t numStages
     
    q31_tpState
     
    q31_tpCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_lattice_instance_q31::numStages
    +
    +

    number of filter stages.

    + +

    Referenced by arm_fir_lattice_init_q31(), and arm_fir_lattice_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_lattice_instance_q31::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numStages.

    + +

    Referenced by arm_fir_lattice_init_q31(), and arm_fir_lattice_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_lattice_instance_q31::pState
    +
    +

    points to the state variable array. The array is of length numStages.

    + +

    Referenced by arm_fir_lattice_init_q31(), and arm_fir_lattice_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.js new file mode 100644 index 0000000..b05a008 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__lattice__instance__q31.js @@ -0,0 +1,6 @@ +var structarm__fir__lattice__instance__q31 = +[ + [ "numStages", "structarm__fir__lattice__instance__q31.html#a9f3773bbb76bc5a8a5ee9d37786bf478", null ], + [ "pCoeffs", "structarm__fir__lattice__instance__q31.html#a66c3364bf5863cd45e05f1652c3dc522", null ], + [ "pState", "structarm__fir__lattice__instance__q31.html#a08fe9494ab7cd336b791e9657adadcf6", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.html new file mode 100644 index 0000000..c1248c4 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.html @@ -0,0 +1,247 @@ + + + + + +arm_fir_sparse_instance_f32 Struct Reference +CMSIS-DSP: arm_fir_sparse_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point sparse FIR filter. +

    + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    uint16_t stateIndex
     
    float32_tpState
     
    float32_tpCoeffs
     
    uint16_t maxDelay
     
    int32_t * pTapDelay
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_f32::maxDelay
    +
    +

    maximum offset specified by the pTapDelay array.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_f32::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_sparse_instance_f32::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_fir_sparse_instance_f32::pState
    +
    +

    points to the state buffer array. The array is of length maxDelay+blockSize-1.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_init_f32().

    + +
    +
    + +
    +
    + + + + +
    int32_t* arm_fir_sparse_instance_f32::pTapDelay
    +
    +

    points to the array of delay values. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_f32::stateIndex
    +
    +

    state buffer index. Points to the oldest sample in the state buffer.

    + +

    Referenced by arm_fir_sparse_f32(), and arm_fir_sparse_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.js new file mode 100644 index 0000000..e4e5494 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__f32.js @@ -0,0 +1,9 @@ +var structarm__fir__sparse__instance__f32 = +[ + [ "maxDelay", "structarm__fir__sparse__instance__f32.html#af8b8c775f4084c36774f06c082b4c078", null ], + [ "numTaps", "structarm__fir__sparse__instance__f32.html#a5e19e7f234ac30a3db843352bf2a8515", null ], + [ "pCoeffs", "structarm__fir__sparse__instance__f32.html#a04af7c738dfb0882ad102fcad501d94a", null ], + [ "pState", "structarm__fir__sparse__instance__f32.html#a794af0916666d11cc564d6df08553555", null ], + [ "pTapDelay", "structarm__fir__sparse__instance__f32.html#aaa54ae67e5d10c6dd0d697945c638d31", null ], + [ "stateIndex", "structarm__fir__sparse__instance__f32.html#a57585aeca9dc8686e08df2865375a86d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.html new file mode 100644 index 0000000..c27e88a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.html @@ -0,0 +1,247 @@ + + + + + +arm_fir_sparse_instance_q15 Struct Reference +CMSIS-DSP: arm_fir_sparse_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 sparse FIR filter. +

    + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    uint16_t stateIndex
     
    q15_tpState
     
    q15_tpCoeffs
     
    uint16_t maxDelay
     
    int32_t * pTapDelay
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q15::maxDelay
    +
    +

    maximum offset specified by the pTapDelay array.

    + +

    Referenced by arm_fir_sparse_init_q15(), and arm_fir_sparse_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q15::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_fir_sparse_init_q15(), and arm_fir_sparse_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_sparse_instance_q15::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_init_q15(), and arm_fir_sparse_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_fir_sparse_instance_q15::pState
    +
    +

    points to the state buffer array. The array is of length maxDelay+blockSize-1.

    + +

    Referenced by arm_fir_sparse_init_q15(), and arm_fir_sparse_q15().

    + +
    +
    + +
    +
    + + + + +
    int32_t* arm_fir_sparse_instance_q15::pTapDelay
    +
    +

    points to the array of delay values. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_init_q15(), and arm_fir_sparse_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q15::stateIndex
    +
    +

    state buffer index. Points to the oldest sample in the state buffer.

    + +

    Referenced by arm_fir_sparse_init_q15(), and arm_fir_sparse_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.js new file mode 100644 index 0000000..bece02b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q15.js @@ -0,0 +1,9 @@ +var structarm__fir__sparse__instance__q15 = +[ + [ "maxDelay", "structarm__fir__sparse__instance__q15.html#ad14cc1070eecf7e1926d8f67a8273182", null ], + [ "numTaps", "structarm__fir__sparse__instance__q15.html#a0f66b126dd8b85f7467cfb01b7bc4d77", null ], + [ "pCoeffs", "structarm__fir__sparse__instance__q15.html#a78a6565473b5f0b8c77c3f0f58a76069", null ], + [ "pState", "structarm__fir__sparse__instance__q15.html#a98b92b0f5208110129b9a67b1db90408", null ], + [ "pTapDelay", "structarm__fir__sparse__instance__q15.html#aeab2855176c6efdb231a73a3672837d5", null ], + [ "stateIndex", "structarm__fir__sparse__instance__q15.html#a89487f28cab52637426024005e478985", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.html new file mode 100644 index 0000000..df78e69 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.html @@ -0,0 +1,247 @@ + + + + + +arm_fir_sparse_instance_q31 Struct Reference +CMSIS-DSP: arm_fir_sparse_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 sparse FIR filter. +

    + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    uint16_t stateIndex
     
    q31_tpState
     
    q31_tpCoeffs
     
    uint16_t maxDelay
     
    int32_t * pTapDelay
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q31::maxDelay
    +
    +

    maximum offset specified by the pTapDelay array.

    + +

    Referenced by arm_fir_sparse_init_q31(), and arm_fir_sparse_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q31::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_fir_sparse_init_q31(), and arm_fir_sparse_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_sparse_instance_q31::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_init_q31(), and arm_fir_sparse_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_fir_sparse_instance_q31::pState
    +
    +

    points to the state buffer array. The array is of length maxDelay+blockSize-1.

    + +

    Referenced by arm_fir_sparse_init_q31(), and arm_fir_sparse_q31().

    + +
    +
    + +
    +
    + + + + +
    int32_t* arm_fir_sparse_instance_q31::pTapDelay
    +
    +

    points to the array of delay values. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_init_q31(), and arm_fir_sparse_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q31::stateIndex
    +
    +

    state buffer index. Points to the oldest sample in the state buffer.

    + +

    Referenced by arm_fir_sparse_init_q31(), and arm_fir_sparse_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.js new file mode 100644 index 0000000..aa2727d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q31.js @@ -0,0 +1,9 @@ +var structarm__fir__sparse__instance__q31 = +[ + [ "maxDelay", "structarm__fir__sparse__instance__q31.html#afdd3a1dc72132c854dc379154b68b674", null ], + [ "numTaps", "structarm__fir__sparse__instance__q31.html#a07b6c01e58ec6dde384719130d36b0dc", null ], + [ "pCoeffs", "structarm__fir__sparse__instance__q31.html#a093d6227f0d1597982cd083fb126f4e0", null ], + [ "pState", "structarm__fir__sparse__instance__q31.html#a830be89daa5a393b225048889aa045d1", null ], + [ "pTapDelay", "structarm__fir__sparse__instance__q31.html#ab87ae457adec8f727afefaa2599fc983", null ], + [ "stateIndex", "structarm__fir__sparse__instance__q31.html#a557ed9d477e76e4ad2019344f19f568a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.html b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.html new file mode 100644 index 0000000..3c9ddae --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.html @@ -0,0 +1,247 @@ + + + + + +arm_fir_sparse_instance_q7 Struct Reference +CMSIS-DSP: arm_fir_sparse_instance_q7 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_fir_sparse_instance_q7 Struct Reference
    +
    +
    + +

    Instance structure for the Q7 sparse FIR filter. +

    + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    uint16_t stateIndex
     
    q7_tpState
     
    q7_tpCoeffs
     
    uint16_t maxDelay
     
    int32_t * pTapDelay
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q7::maxDelay
    +
    +

    maximum offset specified by the pTapDelay array.

    + +

    Referenced by arm_fir_sparse_init_q7(), and arm_fir_sparse_q7().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q7::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_fir_sparse_init_q7(), and arm_fir_sparse_q7().

    + +
    +
    + +
    +
    + + + + +
    q7_t* arm_fir_sparse_instance_q7::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_init_q7(), and arm_fir_sparse_q7().

    + +
    +
    + +
    +
    + + + + +
    q7_t* arm_fir_sparse_instance_q7::pState
    +
    +

    points to the state buffer array. The array is of length maxDelay+blockSize-1.

    + +

    Referenced by arm_fir_sparse_init_q7(), and arm_fir_sparse_q7().

    + +
    +
    + +
    +
    + + + + +
    int32_t* arm_fir_sparse_instance_q7::pTapDelay
    +
    +

    points to the array of delay values. The array is of length numTaps.

    + +

    Referenced by arm_fir_sparse_init_q7(), and arm_fir_sparse_q7().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_fir_sparse_instance_q7::stateIndex
    +
    +

    state buffer index. Points to the oldest sample in the state buffer.

    + +

    Referenced by arm_fir_sparse_init_q7(), and arm_fir_sparse_q7().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.js b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.js new file mode 100644 index 0000000..fecb8b6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__fir__sparse__instance__q7.js @@ -0,0 +1,9 @@ +var structarm__fir__sparse__instance__q7 = +[ + [ "maxDelay", "structarm__fir__sparse__instance__q7.html#af74dacc1d34c078283e50f2530eb91df", null ], + [ "numTaps", "structarm__fir__sparse__instance__q7.html#a54cdd27ca1c672b126c38763ce678b1c", null ], + [ "pCoeffs", "structarm__fir__sparse__instance__q7.html#a3dac86f15e33553e8f3e19e0d712bae5", null ], + [ "pState", "structarm__fir__sparse__instance__q7.html#a18072cf3ef3666d588f0d49512f2b28f", null ], + [ "pTapDelay", "structarm__fir__sparse__instance__q7.html#ac625393c84bc0342ffdf26fc4eba1ac1", null ], + [ "stateIndex", "structarm__fir__sparse__instance__q7.html#a2d2e65473fe3a3f2b953b4e0b60824df", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.html new file mode 100644 index 0000000..ce77c94 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.html @@ -0,0 +1,213 @@ + + + + + +arm_iir_lattice_instance_f32 Struct Reference +CMSIS-DSP: arm_iir_lattice_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point IIR lattice filter. +

    + + + + + + + + + + +

    +Data Fields

    uint16_t numStages
     
    float32_tpState
     
    float32_tpkCoeffs
     
    float32_tpvCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_iir_lattice_instance_f32::numStages
    +
    +

    number of stages in the filter.

    + +

    Referenced by arm_iir_lattice_f32(), and arm_iir_lattice_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_iir_lattice_instance_f32::pkCoeffs
    +
    +

    points to the reflection coefficient array. The array is of length numStages.

    + +

    Referenced by arm_iir_lattice_f32(), and arm_iir_lattice_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_iir_lattice_instance_f32::pState
    +
    +

    points to the state variable array. The array is of length numStages+blockSize.

    + +

    Referenced by arm_iir_lattice_f32(), and arm_iir_lattice_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_iir_lattice_instance_f32::pvCoeffs
    +
    +

    points to the ladder coefficient array. The array is of length numStages+1.

    + +

    Referenced by arm_iir_lattice_f32(), and arm_iir_lattice_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.js new file mode 100644 index 0000000..51405cc --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__f32.js @@ -0,0 +1,7 @@ +var structarm__iir__lattice__instance__f32 = +[ + [ "numStages", "structarm__iir__lattice__instance__f32.html#af8de449af5efe1f30be82f9ba35587ee", null ], + [ "pkCoeffs", "structarm__iir__lattice__instance__f32.html#aa69fcdd3775e828d450ce1bbd978fa31", null ], + [ "pState", "structarm__iir__lattice__instance__f32.html#a30babe7815510219e6e3d28e6e4a5969", null ], + [ "pvCoeffs", "structarm__iir__lattice__instance__f32.html#afc7c8f577e6f27d097fe55f57e707f72", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.html new file mode 100644 index 0000000..b0a355a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.html @@ -0,0 +1,213 @@ + + + + + +arm_iir_lattice_instance_q15 Struct Reference +CMSIS-DSP: arm_iir_lattice_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 IIR lattice filter. +

    + + + + + + + + + + +

    +Data Fields

    uint16_t numStages
     
    q15_tpState
     
    q15_tpkCoeffs
     
    q15_tpvCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_iir_lattice_instance_q15::numStages
    +
    +

    number of stages in the filter.

    + +

    Referenced by arm_iir_lattice_init_q15(), and arm_iir_lattice_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_iir_lattice_instance_q15::pkCoeffs
    +
    +

    points to the reflection coefficient array. The array is of length numStages.

    + +

    Referenced by arm_iir_lattice_init_q15(), and arm_iir_lattice_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_iir_lattice_instance_q15::pState
    +
    +

    points to the state variable array. The array is of length numStages+blockSize.

    + +

    Referenced by arm_iir_lattice_init_q15(), and arm_iir_lattice_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_iir_lattice_instance_q15::pvCoeffs
    +
    +

    points to the ladder coefficient array. The array is of length numStages+1.

    + +

    Referenced by arm_iir_lattice_init_q15(), and arm_iir_lattice_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.js new file mode 100644 index 0000000..7e4c210 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q15.js @@ -0,0 +1,7 @@ +var structarm__iir__lattice__instance__q15 = +[ + [ "numStages", "structarm__iir__lattice__instance__q15.html#a96fbed313bef01070409fa182d26ba3f", null ], + [ "pkCoeffs", "structarm__iir__lattice__instance__q15.html#a41c214a1ec38d4a82fae8899d715dd29", null ], + [ "pState", "structarm__iir__lattice__instance__q15.html#afd0136ab917b529554d93f41a5e04618", null ], + [ "pvCoeffs", "structarm__iir__lattice__instance__q15.html#a4c4f57f45b223abbe2a9fb727bd2cad9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.html new file mode 100644 index 0000000..146a22c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.html @@ -0,0 +1,213 @@ + + + + + +arm_iir_lattice_instance_q31 Struct Reference +CMSIS-DSP: arm_iir_lattice_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_iir_lattice_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 IIR lattice filter. +

    + + + + + + + + + + +

    +Data Fields

    uint16_t numStages
     
    q31_tpState
     
    q31_tpkCoeffs
     
    q31_tpvCoeffs
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_iir_lattice_instance_q31::numStages
    +
    +

    number of stages in the filter.

    + +

    Referenced by arm_iir_lattice_init_q31(), and arm_iir_lattice_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_iir_lattice_instance_q31::pkCoeffs
    +
    +

    points to the reflection coefficient array. The array is of length numStages.

    + +

    Referenced by arm_iir_lattice_init_q31(), and arm_iir_lattice_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_iir_lattice_instance_q31::pState
    +
    +

    points to the state variable array. The array is of length numStages+blockSize.

    + +

    Referenced by arm_iir_lattice_init_q31(), and arm_iir_lattice_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_iir_lattice_instance_q31::pvCoeffs
    +
    +

    points to the ladder coefficient array. The array is of length numStages+1.

    + +

    Referenced by arm_iir_lattice_init_q31(), and arm_iir_lattice_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.js new file mode 100644 index 0000000..6ea5ef2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__iir__lattice__instance__q31.js @@ -0,0 +1,7 @@ +var structarm__iir__lattice__instance__q31 = +[ + [ "numStages", "structarm__iir__lattice__instance__q31.html#a9df4570ed28c50fd9193ab654ff236ad", null ], + [ "pkCoeffs", "structarm__iir__lattice__instance__q31.html#a1d30aa16aac7722936ea9dee59211863", null ], + [ "pState", "structarm__iir__lattice__instance__q31.html#a941282745effd26a889fbfadf4b95e6a", null ], + [ "pvCoeffs", "structarm__iir__lattice__instance__q31.html#a04507e2b982b1dfa97b7b55752dea6b9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.html new file mode 100644 index 0000000..8af67f1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.html @@ -0,0 +1,215 @@ + + + + + +arm_linear_interp_instance_f32 Struct Reference +CMSIS-DSP: arm_linear_interp_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_linear_interp_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point Linear Interpolate function. + More...

    + + + + + + + + + + +

    +Data Fields

    uint32_t nValues
     
    float32_t x1
     
    float32_t xSpacing
     
    float32_tpYData
     
    +

    Description

    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t arm_linear_interp_instance_f32::nValues
    +
    +

    nValues

    + +

    Referenced by arm_linear_interp_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_linear_interp_instance_f32::pYData
    +
    +

    pointer to the table of Y values

    + +

    Referenced by arm_linear_interp_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_linear_interp_instance_f32::x1
    +
    +

    x1

    + +

    Referenced by arm_linear_interp_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_linear_interp_instance_f32::xSpacing
    +
    +

    xSpacing

    + +

    Referenced by arm_linear_interp_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.js new file mode 100644 index 0000000..45a8410 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__linear__interp__instance__f32.js @@ -0,0 +1,7 @@ +var structarm__linear__interp__instance__f32 = +[ + [ "nValues", "structarm__linear__interp__instance__f32.html#a95f02a926b16d35359aca5b31e813b11", null ], + [ "pYData", "structarm__linear__interp__instance__f32.html#ab373001f6afad0850359c344a4d7eee4", null ], + [ "x1", "structarm__linear__interp__instance__f32.html#a08352dc6ea82fbc0827408e018535481", null ], + [ "xSpacing", "structarm__linear__interp__instance__f32.html#aa8e2d686b5434a406d390b347b183511", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.html new file mode 100644 index 0000000..8adde4d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.html @@ -0,0 +1,213 @@ + + + + + +arm_lms_instance_f32 Struct Reference +CMSIS-DSP: arm_lms_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point LMS filter. +

    + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    float32_tpState
     
    float32_tpCoeffs
     
    float32_t mu
     
    +

    Field Documentation

    + +
    +
    + + + + +
    float32_t arm_lms_instance_f32::mu
    +
    +

    step size that controls filter coefficient updates.

    + +

    Referenced by arm_lms_f32(), and arm_lms_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_lms_instance_f32::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_lms_f32(), and arm_lms_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_lms_instance_f32::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_lms_f32(), and arm_lms_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_lms_instance_f32::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_lms_f32(), and arm_lms_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.js new file mode 100644 index 0000000..502d9ba --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__instance__f32.js @@ -0,0 +1,7 @@ +var structarm__lms__instance__f32 = +[ + [ "mu", "structarm__lms__instance__f32.html#ae2af43d74c93dba16b876e10c97a5b99", null ], + [ "numTaps", "structarm__lms__instance__f32.html#af73880d9009982f5d14529869494ec3d", null ], + [ "pCoeffs", "structarm__lms__instance__f32.html#a4795c6f7d3f17cec15c2fd09f66edd1a", null ], + [ "pState", "structarm__lms__instance__f32.html#aaf94285be2f99b5b9af40bea8dcb14b9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.html new file mode 100644 index 0000000..0365741 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.html @@ -0,0 +1,230 @@ + + + + + +arm_lms_instance_q15 Struct Reference +CMSIS-DSP: arm_lms_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 LMS filter. +

    + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    q15_tpState
     
    q15_tpCoeffs
     
    q15_t mu
     
    uint32_t postShift
     
    +

    Field Documentation

    + +
    +
    + + + + +
    q15_t arm_lms_instance_q15::mu
    +
    +

    step size that controls filter coefficient updates.

    + +

    Referenced by arm_lms_init_q15(), and arm_lms_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_lms_instance_q15::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_lms_init_q15(), and arm_lms_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_lms_instance_q15::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_lms_init_q15(), and arm_lms_q15().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_lms_instance_q15::postShift
    +
    +

    bit shift applied to coefficients.

    + +

    Referenced by arm_lms_init_q15(), and arm_lms_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_lms_instance_q15::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_lms_init_q15(), and arm_lms_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.js new file mode 100644 index 0000000..0051189 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q15.js @@ -0,0 +1,8 @@ +var structarm__lms__instance__q15 = +[ + [ "mu", "structarm__lms__instance__q15.html#aae46129d7cfd7f1c162cc502ed0a9d49", null ], + [ "numTaps", "structarm__lms__instance__q15.html#a0078e894f805af1b360369e619fb57b3", null ], + [ "pCoeffs", "structarm__lms__instance__q15.html#a42f95368b94898eb82608e1113d18cab", null ], + [ "postShift", "structarm__lms__instance__q15.html#acca5fbaef4a52ae411de24c9a0b929cf", null ], + [ "pState", "structarm__lms__instance__q15.html#a9a575ff82c1e68cbb583083439260d08", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.html new file mode 100644 index 0000000..d75d28e --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.html @@ -0,0 +1,230 @@ + + + + + +arm_lms_instance_q31 Struct Reference +CMSIS-DSP: arm_lms_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 LMS filter. +

    + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    q31_tpState
     
    q31_tpCoeffs
     
    q31_t mu
     
    uint32_t postShift
     
    +

    Field Documentation

    + +
    +
    + + + + +
    q31_t arm_lms_instance_q31::mu
    +
    +

    step size that controls filter coefficient updates.

    + +

    Referenced by arm_lms_init_q31(), and arm_lms_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_lms_instance_q31::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_lms_init_q31(), and arm_lms_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_lms_instance_q31::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_lms_init_q31(), and arm_lms_q31().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_lms_instance_q31::postShift
    +
    +

    bit shift applied to coefficients.

    + +

    Referenced by arm_lms_init_q31(), and arm_lms_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_lms_instance_q31::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_lms_init_q31(), and arm_lms_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.js new file mode 100644 index 0000000..1f4d8e2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__instance__q31.js @@ -0,0 +1,8 @@ +var structarm__lms__instance__q31 = +[ + [ "mu", "structarm__lms__instance__q31.html#acb6ca9996b3c5f740d5d6c8e9f4f1d46", null ], + [ "numTaps", "structarm__lms__instance__q31.html#ac0d84f7d054555931ef8a62511fbcb8a", null ], + [ "pCoeffs", "structarm__lms__instance__q31.html#a4afe56e991a5416adfd462aa88bda500", null ], + [ "postShift", "structarm__lms__instance__q31.html#a4705a8f0011bb9166e09bf5bd51e595e", null ], + [ "pState", "structarm__lms__instance__q31.html#a206d47b49de6f357f933ebe61520753c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.html new file mode 100644 index 0000000..35e3e9f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.html @@ -0,0 +1,249 @@ + + + + + +arm_lms_norm_instance_f32 Struct Reference +CMSIS-DSP: arm_lms_norm_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point normalized LMS filter. + More...

    + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    float32_tpState
     
    float32_tpCoeffs
     
    float32_t mu
     
    float32_t energy
     
    float32_t x0
     
    +

    Description

    +

    Field Documentation

    + +
    +
    + + + + +
    float32_t arm_lms_norm_instance_f32::energy
    +
    +

    saves previous frame energy.

    + +

    Referenced by arm_lms_norm_f32(), and arm_lms_norm_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_lms_norm_instance_f32::mu
    +
    +

    step size that control filter coefficient updates.

    + +

    Referenced by arm_lms_norm_f32(), and arm_lms_norm_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_lms_norm_instance_f32::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_lms_norm_f32(), and arm_lms_norm_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_lms_norm_instance_f32::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_lms_norm_f32(), and arm_lms_norm_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_lms_norm_instance_f32::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_lms_norm_f32(), and arm_lms_norm_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_lms_norm_instance_f32::x0
    +
    +

    saves previous input sample.

    + +

    Referenced by arm_lms_norm_f32(), and arm_lms_norm_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.js new file mode 100644 index 0000000..5118d92 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__f32.js @@ -0,0 +1,9 @@ +var structarm__lms__norm__instance__f32 = +[ + [ "energy", "structarm__lms__norm__instance__f32.html#a6a4119e4f39447bbee31b066deafa16f", null ], + [ "mu", "structarm__lms__norm__instance__f32.html#a84401d3cfc6c40f69c08223cf341b886", null ], + [ "numTaps", "structarm__lms__norm__instance__f32.html#ac95f8ca3d816524c2070643852fac5e8", null ], + [ "pCoeffs", "structarm__lms__norm__instance__f32.html#a1ba688d90aba7de003ed4ad8e2e7ddda", null ], + [ "pState", "structarm__lms__norm__instance__f32.html#a0bc03338687002ed5f2e4a363eb095ec", null ], + [ "x0", "structarm__lms__norm__instance__f32.html#aec958fe89b164a30f38bcca9f5d96218", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.html new file mode 100644 index 0000000..37ca23f --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.html @@ -0,0 +1,281 @@ + + + + + +arm_lms_norm_instance_q15 Struct Reference +CMSIS-DSP: arm_lms_norm_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 normalized LMS filter. +

    + + + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    q15_tpState
     
    q15_tpCoeffs
     
    q15_t mu
     
    uint8_t postShift
     
    q15_trecipTable
     
    q15_t energy
     
    q15_t x0
     
    +

    Field Documentation

    + +
    +
    + + + + +
    q15_t arm_lms_norm_instance_q15::energy
    +
    +

    saves previous frame energy.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t arm_lms_norm_instance_q15::mu
    +
    +

    step size that controls filter coefficient updates.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_lms_norm_instance_q15::numTaps
    +
    +

    Number of coefficients in the filter.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_lms_norm_instance_q15::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_lms_norm_instance_q15::postShift
    +
    +

    bit shift applied to coefficients.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_lms_norm_instance_q15::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_lms_norm_instance_q15::recipTable
    +
    +

    Points to the reciprocal initial value table.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t arm_lms_norm_instance_q15::x0
    +
    +

    saves previous input sample.

    + +

    Referenced by arm_lms_norm_init_q15(), and arm_lms_norm_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.js new file mode 100644 index 0000000..91bbb1d --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q15.js @@ -0,0 +1,11 @@ +var structarm__lms__norm__instance__q15 = +[ + [ "energy", "structarm__lms__norm__instance__q15.html#a1c81ded399919d8181026bc1c8602e7b", null ], + [ "mu", "structarm__lms__norm__instance__q15.html#a7ce00f21d11cfda6d963240641deea8c", null ], + [ "numTaps", "structarm__lms__norm__instance__q15.html#a9ee7a45f4f315d7996a969e25fdc7146", null ], + [ "pCoeffs", "structarm__lms__norm__instance__q15.html#ae7bca648c75a2ffa02d87852bb78bc8a", null ], + [ "postShift", "structarm__lms__norm__instance__q15.html#aa0d435fbcf7dedb7179d4467e9b79e9f", null ], + [ "pState", "structarm__lms__norm__instance__q15.html#aa4de490b3bdbd03561b76ee07901c8e3", null ], + [ "recipTable", "structarm__lms__norm__instance__q15.html#a9aabb0e4c79f3db807e7a441fa36f5f8", null ], + [ "x0", "structarm__lms__norm__instance__q15.html#a3fc1d6f97d2c6d5324871de6895cb7e9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.html new file mode 100644 index 0000000..0c8185b --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.html @@ -0,0 +1,281 @@ + + + + + +arm_lms_norm_instance_q31 Struct Reference +CMSIS-DSP: arm_lms_norm_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_lms_norm_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 normalized LMS filter. +

    + + + + + + + + + + + + + + + + + + +

    +Data Fields

    uint16_t numTaps
     
    q31_tpState
     
    q31_tpCoeffs
     
    q31_t mu
     
    uint8_t postShift
     
    q31_trecipTable
     
    q31_t energy
     
    q31_t x0
     
    +

    Field Documentation

    + +
    +
    + + + + +
    q31_t arm_lms_norm_instance_q31::energy
    +
    +

    saves previous frame energy.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_lms_norm_instance_q31::mu
    +
    +

    step size that controls filter coefficient updates.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_lms_norm_instance_q31::numTaps
    +
    +

    number of coefficients in the filter.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_lms_norm_instance_q31::pCoeffs
    +
    +

    points to the coefficient array. The array is of length numTaps.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_lms_norm_instance_q31::postShift
    +
    +

    bit shift applied to coefficients.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_lms_norm_instance_q31::pState
    +
    +

    points to the state variable array. The array is of length numTaps+blockSize-1.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_lms_norm_instance_q31::recipTable
    +
    +

    points to the reciprocal initial value table.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_lms_norm_instance_q31::x0
    +
    +

    saves previous input sample.

    + +

    Referenced by arm_lms_norm_init_q31(), and arm_lms_norm_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.js new file mode 100644 index 0000000..ebfb4f1 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__lms__norm__instance__q31.js @@ -0,0 +1,11 @@ +var structarm__lms__norm__instance__q31 = +[ + [ "energy", "structarm__lms__norm__instance__q31.html#a3c0ae42869afec8555dc8e3a7ef9b386", null ], + [ "mu", "structarm__lms__norm__instance__q31.html#ad3dd2a2406e02fdaa7782ba6c3940a64", null ], + [ "numTaps", "structarm__lms__norm__instance__q31.html#a28e4c085af69c9c3e2e95dacf8004c3e", null ], + [ "pCoeffs", "structarm__lms__norm__instance__q31.html#a57a64c1ff102d033c1bd05043f1d9955", null ], + [ "postShift", "structarm__lms__norm__instance__q31.html#a28d7b9e437817f83397e081967e90f3c", null ], + [ "pState", "structarm__lms__norm__instance__q31.html#a6b25c96cf048b77078d62f4252a01ec4", null ], + [ "recipTable", "structarm__lms__norm__instance__q31.html#a85836d0907077b9ac660f7bbbaa9d694", null ], + [ "x0", "structarm__lms__norm__instance__q31.html#a47c4466d644e0d8ba407995adfa9b917", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.html new file mode 100644 index 0000000..48690e2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.html @@ -0,0 +1,198 @@ + + + + + +arm_matrix_instance_f32 Struct Reference +CMSIS-DSP: arm_matrix_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point matrix structure. + More...

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    float32_tpData
     
    +

    Description

    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_f32::numCols
    +
    +
    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_f32::numRows
    +
    +
    + +
    +
    + + + + +
    float32_t* arm_matrix_instance_f32::pData
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.js new file mode 100644 index 0000000..ce7cdeb --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f32.js @@ -0,0 +1,6 @@ +var structarm__matrix__instance__f32 = +[ + [ "numCols", "structarm__matrix__instance__f32.html#acdd1fb73734df68b89565c54f1dd8ae2", null ], + [ "numRows", "structarm__matrix__instance__f32.html#a23f4e34d70a82c9cad7612add5640b7b", null ], + [ "pData", "structarm__matrix__instance__f32.html#af3917c032600a9dfd5ed4a96f074910a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.html b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.html new file mode 100644 index 0000000..3372ec5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.html @@ -0,0 +1,196 @@ + + + + + +arm_matrix_instance_f64 Struct Reference +CMSIS-DSP: arm_matrix_instance_f64 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_instance_f64 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point matrix structure. +

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    float64_tpData
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_f64::numCols
    +
    +

    number of columns of the matrix.

    + +

    Referenced by arm_mat_inverse_f64().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_f64::numRows
    +
    +

    number of rows of the matrix.

    + +

    Referenced by arm_mat_inverse_f64().

    + +
    +
    + +
    +
    + + + + +
    float64_t* arm_matrix_instance_f64::pData
    +
    +

    points to the data of the matrix.

    + +

    Referenced by arm_mat_inverse_f64().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.js b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.js new file mode 100644 index 0000000..af002e2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__f64.js @@ -0,0 +1,6 @@ +var structarm__matrix__instance__f64 = +[ + [ "numCols", "structarm__matrix__instance__f64.html#ab0f0399aff3201880e2d8a447de9a7ee", null ], + [ "numRows", "structarm__matrix__instance__f64.html#a8b44d1e5003345047c4ead9e1593bf22", null ], + [ "pData", "structarm__matrix__instance__f64.html#a5b2475f8ff1e4818955cdd18bc40a097", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.html new file mode 100644 index 0000000..b86d55a --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.html @@ -0,0 +1,196 @@ + + + + + +arm_matrix_instance_q15 Struct Reference +CMSIS-DSP: arm_matrix_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 matrix structure. +

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    q15_tpData
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_q15::numCols
    +
    +
    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_q15::numRows
    +
    +
    + +
    +
    + + + + +
    q15_t* arm_matrix_instance_q15::pData
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.js new file mode 100644 index 0000000..9d27eae --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q15.js @@ -0,0 +1,6 @@ +var structarm__matrix__instance__q15 = +[ + [ "numCols", "structarm__matrix__instance__q15.html#acbbce67ba058d8e1c867c71d57288c97", null ], + [ "numRows", "structarm__matrix__instance__q15.html#a9bac6ed54be287c4d4f01a1a28be65f5", null ], + [ "pData", "structarm__matrix__instance__q15.html#a6da33a5553e634787d0f515cf8d724af", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.html new file mode 100644 index 0000000..89735ee --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.html @@ -0,0 +1,196 @@ + + + + + +arm_matrix_instance_q31 Struct Reference +CMSIS-DSP: arm_matrix_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_matrix_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 matrix structure. +

    + + + + + + + + +

    +Data Fields

    uint16_t numRows
     
    uint16_t numCols
     
    q31_tpData
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_q31::numCols
    +
    +
    + +
    +
    + + + + +
    uint16_t arm_matrix_instance_q31::numRows
    +
    +
    + +
    +
    + + + + +
    q31_t* arm_matrix_instance_q31::pData
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.js new file mode 100644 index 0000000..6bf45c2 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__matrix__instance__q31.js @@ -0,0 +1,6 @@ +var structarm__matrix__instance__q31 = +[ + [ "numCols", "structarm__matrix__instance__q31.html#abd161da7614eda927157f18b698074b1", null ], + [ "numRows", "structarm__matrix__instance__q31.html#a63bacac158a821c8cfc06088d251598c", null ], + [ "pData", "structarm__matrix__instance__q31.html#a09a64267c0579fef086efc9059741e56", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.html new file mode 100644 index 0000000..ba4d3f6 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.html @@ -0,0 +1,264 @@ + + + + + +arm_pid_instance_f32 Struct Reference +CMSIS-DSP: arm_pid_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point PID Control. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    float32_t A0
     
    float32_t A1
     
    float32_t A2
     
    float32_t state [3]
     
    float32_t Kp
     
    float32_t Ki
     
    float32_t Kd
     
    +

    Field Documentation

    + +
    +
    + + + + +
    float32_t arm_pid_instance_f32::A0
    +
    +

    The derived gain, A0 = Kp + Ki + Kd .

    + +

    Referenced by arm_pid_f32(), and arm_pid_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_pid_instance_f32::A1
    +
    +

    The derived gain, A1 = -Kp - 2Kd.

    + +

    Referenced by arm_pid_f32(), and arm_pid_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_pid_instance_f32::A2
    +
    +

    The derived gain, A2 = Kd .

    + +

    Referenced by arm_pid_f32(), and arm_pid_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_pid_instance_f32::Kd
    +
    +

    The derivative gain.

    + +

    Referenced by arm_pid_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_pid_instance_f32::Ki
    +
    +

    The integral gain.

    + +

    Referenced by arm_pid_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_pid_instance_f32::Kp
    +
    +

    The proportional gain.

    + +

    Referenced by arm_pid_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t arm_pid_instance_f32::state[3]
    +
    +

    The state array of length 3.

    + +

    Referenced by arm_pid_f32(), arm_pid_init_f32(), and arm_pid_reset_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.js new file mode 100644 index 0000000..ab89568 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__pid__instance__f32.js @@ -0,0 +1,10 @@ +var structarm__pid__instance__f32 = +[ + [ "A0", "structarm__pid__instance__f32.html#ad7b0bed64915d0a25a3409fa2dc45556", null ], + [ "A1", "structarm__pid__instance__f32.html#a7def89571c50f7137a213326a396e560", null ], + [ "A2", "structarm__pid__instance__f32.html#a155acf642ba2f521869f19d694cd7fa0", null ], + [ "Kd", "structarm__pid__instance__f32.html#ad5b68fbf84d16188ae4747ff91f6f088", null ], + [ "Ki", "structarm__pid__instance__f32.html#ac0feffde05fe391eeab3bf78e953830a", null ], + [ "Kp", "structarm__pid__instance__f32.html#aa9b9aa9e413c6cec376a9dddc9f01ebe", null ], + [ "state", "structarm__pid__instance__f32.html#afd394e1e52fb1d526aa472c83b8f2464", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.html new file mode 100644 index 0000000..7936ecf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.html @@ -0,0 +1,247 @@ + + + + + +arm_pid_instance_q15 Struct Reference +CMSIS-DSP: arm_pid_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 PID Control. +

    + + + + + + + + + + + + + + +

    +Data Fields

    q15_t A0
     
    q31_t A1
     
    q15_t state [3]
     
    q15_t Kp
     
    q15_t Ki
     
    q15_t Kd
     
    +

    Field Documentation

    + +
    +
    + + + + +
    q15_t arm_pid_instance_q15::A0
    +
    +

    The derived gain, A0 = Kp + Ki + Kd .

    + +

    Referenced by arm_pid_init_q15(), and arm_pid_q15().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_pid_instance_q15::A1
    +
    +

    The derived gain A1 = -Kp - 2Kd | Kd.

    + +

    Referenced by arm_pid_init_q15(), and arm_pid_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t arm_pid_instance_q15::Kd
    +
    +

    The derivative gain.

    + +

    Referenced by arm_pid_init_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t arm_pid_instance_q15::Ki
    +
    +

    The integral gain.

    + +

    Referenced by arm_pid_init_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t arm_pid_instance_q15::Kp
    +
    +

    The proportional gain.

    + +

    Referenced by arm_pid_init_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t arm_pid_instance_q15::state[3]
    +
    +

    The state array of length 3.

    + +

    Referenced by arm_pid_init_q15(), arm_pid_q15(), and arm_pid_reset_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.js new file mode 100644 index 0000000..943e4d3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q15.js @@ -0,0 +1,9 @@ +var structarm__pid__instance__q15 = +[ + [ "A0", "structarm__pid__instance__q15.html#ad77f3a2823c7f96de42c92a3fbf3246b", null ], + [ "A1", "structarm__pid__instance__q15.html#a1b8412c517071962a9acfdc6778906ec", null ], + [ "Kd", "structarm__pid__instance__q15.html#af5d4b53091f19eff7536636b7cc43111", null ], + [ "Ki", "structarm__pid__instance__q15.html#a0dcc19d5c8f7bc401acea9e8318cd777", null ], + [ "Kp", "structarm__pid__instance__q15.html#ad228aae24a1b6d855c93a8b9bbc1c4f1", null ], + [ "state", "structarm__pid__instance__q15.html#a4a3f0a878b5b6b055e3478a2f244cd30", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.html new file mode 100644 index 0000000..72b3340 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.html @@ -0,0 +1,264 @@ + + + + + +arm_pid_instance_q31 Struct Reference +CMSIS-DSP: arm_pid_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_pid_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 PID Control. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    q31_t A0
     
    q31_t A1
     
    q31_t A2
     
    q31_t state [3]
     
    q31_t Kp
     
    q31_t Ki
     
    q31_t Kd
     
    +

    Field Documentation

    + +
    +
    + + + + +
    q31_t arm_pid_instance_q31::A0
    +
    +

    The derived gain, A0 = Kp + Ki + Kd .

    + +

    Referenced by arm_pid_init_q31(), and arm_pid_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_pid_instance_q31::A1
    +
    +

    The derived gain, A1 = -Kp - 2Kd.

    + +

    Referenced by arm_pid_init_q31(), and arm_pid_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_pid_instance_q31::A2
    +
    +

    The derived gain, A2 = Kd .

    + +

    Referenced by arm_pid_init_q31(), and arm_pid_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_pid_instance_q31::Kd
    +
    +

    The derivative gain.

    + +

    Referenced by arm_pid_init_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_pid_instance_q31::Ki
    +
    +

    The integral gain.

    + +

    Referenced by arm_pid_init_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_pid_instance_q31::Kp
    +
    +

    The proportional gain.

    + +

    Referenced by arm_pid_init_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t arm_pid_instance_q31::state[3]
    +
    +

    The state array of length 3.

    + +

    Referenced by arm_pid_init_q31(), arm_pid_q31(), and arm_pid_reset_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.js new file mode 100644 index 0000000..3091ec3 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__pid__instance__q31.js @@ -0,0 +1,10 @@ +var structarm__pid__instance__q31 = +[ + [ "A0", "structarm__pid__instance__q31.html#aa5332635ce9c7078cdb4c1ecf442eadd", null ], + [ "A1", "structarm__pid__instance__q31.html#a2f7492bd6fb92fae5e2de7fbbec39b0e", null ], + [ "A2", "structarm__pid__instance__q31.html#a3e34537c53af4f9ad7bfffa4dff27c82", null ], + [ "Kd", "structarm__pid__instance__q31.html#aab4ff371d14441df501f1169f71cbd17", null ], + [ "Ki", "structarm__pid__instance__q31.html#aa861d69fd398f29aa0b4b455a823ed72", null ], + [ "Kp", "structarm__pid__instance__q31.html#ac2410bf7f856d58dc1d773d4983cac8e", null ], + [ "state", "structarm__pid__instance__q31.html#a228e4a64da6014844a0a671a1fa391d4", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.html new file mode 100644 index 0000000..e1d2b10 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.html @@ -0,0 +1,196 @@ + + + + + +arm_rfft_fast_instance_f32 Struct Reference +CMSIS-DSP: arm_rfft_fast_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_fast_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point RFFT/RIFFT function. +

    + + + + + + + + +

    +Data Fields

    arm_cfft_instance_f32 Sint
     
    uint16_t fftLenRFFT
     
    float32_tpTwiddleRFFT
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint16_t arm_rfft_fast_instance_f32::fftLenRFFT
    +
    +

    length of the real sequence

    + +

    Referenced by arm_rfft_fast_f32(), and arm_rfft_fast_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_rfft_fast_instance_f32::pTwiddleRFFT
    +
    +

    Twiddle factors real stage

    + +

    Referenced by arm_rfft_fast_init_f32(), merge_rfft_f32(), and stage_rfft_f32().

    + +
    +
    + +
    +
    + + + + +
    arm_cfft_instance_f32 arm_rfft_fast_instance_f32::Sint
    +
    +

    Internal CFFT structure.

    + +

    Referenced by arm_rfft_fast_f32(), arm_rfft_fast_init_f32(), merge_rfft_f32(), and stage_rfft_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.js new file mode 100644 index 0000000..3efa62c --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__fast__instance__f32.js @@ -0,0 +1,6 @@ +var structarm__rfft__fast__instance__f32 = +[ + [ "fftLenRFFT", "structarm__rfft__fast__instance__f32.html#aef06ab665041ec36f5b25d464f0cab14", null ], + [ "pTwiddleRFFT", "structarm__rfft__fast__instance__f32.html#a9f30b04f163fabc1b24421d3c323d5fc", null ], + [ "Sint", "structarm__rfft__fast__instance__f32.html#a37419ababdfb3151b1891ae6bcd21012", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.html b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.html new file mode 100644 index 0000000..f1e61d0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.html @@ -0,0 +1,281 @@ + + + + + +arm_rfft_instance_f32 Struct Reference +CMSIS-DSP: arm_rfft_instance_f32 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_instance_f32 Struct Reference
    +
    +
    + +

    Instance structure for the floating-point RFFT/RIFFT function. +

    + + + + + + + + + + + + + + + + + + +

    +Data Fields

    uint32_t fftLenReal
     
    uint16_t fftLenBy2
     
    uint8_t ifftFlagR
     
    uint8_t bitReverseFlagR
     
    uint32_t twidCoefRModifier
     
    float32_tpTwiddleAReal
     
    float32_tpTwiddleBReal
     
    arm_cfft_radix4_instance_f32pCfft
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_rfft_instance_f32::bitReverseFlagR
    +
    +

    flag that enables (bitReverseFlagR=1) or disables (bitReverseFlagR=0) bit reversal of output.

    + +

    Referenced by arm_rfft_f32(), and arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint16_t arm_rfft_instance_f32::fftLenBy2
    +
    +

    length of the complex FFT.

    + +

    Referenced by arm_rfft_f32(), and arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_rfft_instance_f32::fftLenReal
    +
    +

    length of the real FFT.

    + +

    Referenced by arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_rfft_instance_f32::ifftFlagR
    +
    +

    flag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform.

    + +

    Referenced by arm_rfft_f32(), and arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + +
    arm_cfft_radix4_instance_f32* arm_rfft_instance_f32::pCfft
    +
    +

    points to the complex FFT instance.

    + +

    Referenced by arm_rfft_f32(), and arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_rfft_instance_f32::pTwiddleAReal
    +
    +

    points to the real twiddle factor table.

    + +

    Referenced by arm_rfft_f32(), and arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + +
    float32_t* arm_rfft_instance_f32::pTwiddleBReal
    +
    +

    points to the imag twiddle factor table.

    + +

    Referenced by arm_rfft_f32(), and arm_rfft_init_f32().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_rfft_instance_f32::twidCoefRModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_rfft_f32(), and arm_rfft_init_f32().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.js b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.js new file mode 100644 index 0000000..e5ab0e0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__f32.js @@ -0,0 +1,11 @@ +var structarm__rfft__instance__f32 = +[ + [ "bitReverseFlagR", "structarm__rfft__instance__f32.html#ac342f3248157cbbd2f04a3c8ec9fc9eb", null ], + [ "fftLenBy2", "structarm__rfft__instance__f32.html#a075076e07ebb8521d8e3b49a31db6c57", null ], + [ "fftLenReal", "structarm__rfft__instance__f32.html#a4219d4669699e4efdcb150ed7a0d9a57", null ], + [ "ifftFlagR", "structarm__rfft__instance__f32.html#a5ee6d10a934ab4b666e0bb286c3d633f", null ], + [ "pCfft", "structarm__rfft__instance__f32.html#a9f47ba9f50c81e4445ae3827b981bc05", null ], + [ "pTwiddleAReal", "structarm__rfft__instance__f32.html#a534cc7e6e9b3e3dd022fad611c762142", null ], + [ "pTwiddleBReal", "structarm__rfft__instance__f32.html#a23543ecfd027fea2477fe1eea23c3c4d", null ], + [ "twidCoefRModifier", "structarm__rfft__instance__f32.html#aede85350fb5ae6baa1b3e8bfa15b18d6", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.html b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.html new file mode 100644 index 0000000..45dcaa0 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.html @@ -0,0 +1,264 @@ + + + + + +arm_rfft_instance_q15 Struct Reference +CMSIS-DSP: arm_rfft_instance_q15 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_instance_q15 Struct Reference
    +
    +
    + +

    Instance structure for the Q15 RFFT/RIFFT function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint32_t fftLenReal
     
    uint8_t ifftFlagR
     
    uint8_t bitReverseFlagR
     
    uint32_t twidCoefRModifier
     
    q15_tpTwiddleAReal
     
    q15_tpTwiddleBReal
     
    const arm_cfft_instance_q15pCfft
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_rfft_instance_q15::bitReverseFlagR
    +
    +

    flag that enables (bitReverseFlagR=1) or disables (bitReverseFlagR=0) bit reversal of output.

    + +

    Referenced by arm_rfft_init_q15(), and arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_rfft_instance_q15::fftLenReal
    +
    +

    length of the real FFT.

    + +

    Referenced by arm_rfft_init_q15(), and arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_rfft_instance_q15::ifftFlagR
    +
    +

    flag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform.

    + +

    Referenced by arm_rfft_init_q15(), and arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q15* arm_rfft_instance_q15::pCfft
    +
    +

    points to the complex FFT instance.

    + +

    Referenced by arm_rfft_init_q15(), and arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_rfft_instance_q15::pTwiddleAReal
    +
    +

    points to the real twiddle factor table.

    + +

    Referenced by arm_rfft_init_q15(), and arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + +
    q15_t* arm_rfft_instance_q15::pTwiddleBReal
    +
    +

    points to the imag twiddle factor table.

    + +

    Referenced by arm_rfft_init_q15(), and arm_rfft_q15().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_rfft_instance_q15::twidCoefRModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_rfft_init_q15(), and arm_rfft_q15().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.js b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.js new file mode 100644 index 0000000..47afd81 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q15.js @@ -0,0 +1,10 @@ +var structarm__rfft__instance__q15 = +[ + [ "bitReverseFlagR", "structarm__rfft__instance__q15.html#a4c65cd40e0098ec2f5c0dc31488b9bc6", null ], + [ "fftLenReal", "structarm__rfft__instance__q15.html#aac5cf9e825917cbb14f439e56bb86ab3", null ], + [ "ifftFlagR", "structarm__rfft__instance__q15.html#a8051ffe268c147e431e1bea7bb4c4258", null ], + [ "pCfft", "structarm__rfft__instance__q15.html#a4329c15b056444746d37ff082a24d31a", null ], + [ "pTwiddleAReal", "structarm__rfft__instance__q15.html#affbf2de522ac029432d98e8373c0ec53", null ], + [ "pTwiddleBReal", "structarm__rfft__instance__q15.html#a937d815022adc557b435ba8c6cd58b0d", null ], + [ "twidCoefRModifier", "structarm__rfft__instance__q15.html#afd444d05858c5f419980e94e8240d5c3", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.html b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.html new file mode 100644 index 0000000..e46bdaf --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.html @@ -0,0 +1,264 @@ + + + + + +arm_rfft_instance_q31 Struct Reference +CMSIS-DSP: arm_rfft_instance_q31 Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-DSP +  Version 1.4.7 +
    +
    CMSIS DSP Software Library
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    arm_rfft_instance_q31 Struct Reference
    +
    +
    + +

    Instance structure for the Q31 RFFT/RIFFT function. +

    + + + + + + + + + + + + + + + + +

    +Data Fields

    uint32_t fftLenReal
     
    uint8_t ifftFlagR
     
    uint8_t bitReverseFlagR
     
    uint32_t twidCoefRModifier
     
    q31_tpTwiddleAReal
     
    q31_tpTwiddleBReal
     
    const arm_cfft_instance_q31pCfft
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint8_t arm_rfft_instance_q31::bitReverseFlagR
    +
    +

    flag that enables (bitReverseFlagR=1) or disables (bitReverseFlagR=0) bit reversal of output.

    + +

    Referenced by arm_rfft_init_q31(), and arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_rfft_instance_q31::fftLenReal
    +
    +

    length of the real FFT.

    + +

    Referenced by arm_rfft_init_q31(), and arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + +
    uint8_t arm_rfft_instance_q31::ifftFlagR
    +
    +

    flag that selects forward (ifftFlagR=0) or inverse (ifftFlagR=1) transform.

    + +

    Referenced by arm_rfft_init_q31(), and arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + +
    const arm_cfft_instance_q31* arm_rfft_instance_q31::pCfft
    +
    +

    points to the complex FFT instance.

    + +

    Referenced by arm_rfft_init_q31(), and arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_rfft_instance_q31::pTwiddleAReal
    +
    +

    points to the real twiddle factor table.

    + +

    Referenced by arm_rfft_init_q31(), and arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + +
    q31_t* arm_rfft_instance_q31::pTwiddleBReal
    +
    +

    points to the imag twiddle factor table.

    + +

    Referenced by arm_rfft_init_q31(), and arm_rfft_q31().

    + +
    +
    + +
    +
    + + + + +
    uint32_t arm_rfft_instance_q31::twidCoefRModifier
    +
    +

    twiddle coefficient modifier that supports different size FFTs with the same twiddle factor table.

    + +

    Referenced by arm_rfft_init_q31(), and arm_rfft_q31().

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.js b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.js new file mode 100644 index 0000000..ac261d5 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/structarm__rfft__instance__q31.js @@ -0,0 +1,10 @@ +var structarm__rfft__instance__q31 = +[ + [ "bitReverseFlagR", "structarm__rfft__instance__q31.html#a3cb90cdc928a88b0203917dcb3dc1b71", null ], + [ "fftLenReal", "structarm__rfft__instance__q31.html#af777b0cadd5abaf064323692c2e6693b", null ], + [ "ifftFlagR", "structarm__rfft__instance__q31.html#af5c2615e6cde15524df38fa57ea32d94", null ], + [ "pCfft", "structarm__rfft__instance__q31.html#a8fe10d425b59e096c23aa4bb5caa1974", null ], + [ "pTwiddleAReal", "structarm__rfft__instance__q31.html#a2a0c944e66bab92fcbe19d1c29153250", null ], + [ "pTwiddleBReal", "structarm__rfft__instance__q31.html#ae5070be4c2e0327e618f5e1f4c5b9d80", null ], + [ "twidCoefRModifier", "structarm__rfft__instance__q31.html#a6fc90252b579f7c29e01bd279334fc43", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/DSP/html/sync_off.png b/CMSIS/Documentation/DSP/html/sync_off.png new file mode 100644 index 0000000..3b443fc Binary files /dev/null and b/CMSIS/Documentation/DSP/html/sync_off.png differ diff --git a/CMSIS/Documentation/DSP/html/sync_on.png b/CMSIS/Documentation/DSP/html/sync_on.png new file mode 100644 index 0000000..e08320f Binary files /dev/null and b/CMSIS/Documentation/DSP/html/sync_on.png differ diff --git a/CMSIS/Documentation/DSP/html/tab_a.png b/CMSIS/Documentation/DSP/html/tab_a.png new file mode 100644 index 0000000..3b725c4 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/tab_a.png differ diff --git a/CMSIS/Documentation/DSP/html/tab_b.png b/CMSIS/Documentation/DSP/html/tab_b.png new file mode 100644 index 0000000..5f6601a Binary files /dev/null and b/CMSIS/Documentation/DSP/html/tab_b.png differ diff --git a/CMSIS/Documentation/DSP/html/tab_h.png b/CMSIS/Documentation/DSP/html/tab_h.png new file mode 100644 index 0000000..fd5cb70 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/tab_h.png differ diff --git a/CMSIS/Documentation/DSP/html/tab_s.png b/CMSIS/Documentation/DSP/html/tab_s.png new file mode 100644 index 0000000..ab478c9 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/tab_s.png differ diff --git a/CMSIS/Documentation/DSP/html/tab_topnav.png b/CMSIS/Documentation/DSP/html/tab_topnav.png new file mode 100644 index 0000000..b257b77 Binary files /dev/null and b/CMSIS/Documentation/DSP/html/tab_topnav.png differ diff --git a/CMSIS/Documentation/DSP/html/tabs.css b/CMSIS/Documentation/DSP/html/tabs.css new file mode 100644 index 0000000..ffbab50 --- /dev/null +++ b/CMSIS/Documentation/DSP/html/tabs.css @@ -0,0 +1,71 @@ +.tabs, .tabs1, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 10px; +} + +.tabs1 { + background-image: url('tab_topnav.png'); + font-size: 12px; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; + line-height: 24px; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + list-style: none; +} + +.tabs1 .tablist li { + float: left; + display: table-cell; + background-image: url('tab_topnav.png'); + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/CMSIS/Documentation/Driver/html/CAN_Bit_Timing.png b/CMSIS/Documentation/Driver/html/CAN_Bit_Timing.png new file mode 100644 index 0000000..25eaddb Binary files /dev/null and b/CMSIS/Documentation/Driver/html/CAN_Bit_Timing.png differ diff --git a/CMSIS/Documentation/Driver/html/CAN_Node.png b/CMSIS/Documentation/Driver/html/CAN_Node.png new file mode 100644 index 0000000..b16699c Binary files /dev/null and b/CMSIS/Documentation/Driver/html/CAN_Node.png differ diff --git a/CMSIS/Documentation/Driver/html/CMSIS_Logo_Final.png b/CMSIS/Documentation/Driver/html/CMSIS_Logo_Final.png new file mode 100644 index 0000000..2056b7e Binary files /dev/null and b/CMSIS/Documentation/Driver/html/CMSIS_Logo_Final.png differ diff --git a/CMSIS/Documentation/Driver/html/Driver.png b/CMSIS/Documentation/Driver/html/Driver.png new file mode 100644 index 0000000..853b457 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/Driver.png differ diff --git a/CMSIS/Documentation/Driver/html/EthernetSchematic.png b/CMSIS/Documentation/Driver/html/EthernetSchematic.png new file mode 100644 index 0000000..6db8a03 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/EthernetSchematic.png differ diff --git a/CMSIS/Documentation/Driver/html/I2C_BlockDiagram.png b/CMSIS/Documentation/Driver/html/I2C_BlockDiagram.png new file mode 100644 index 0000000..9a7cd65 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/I2C_BlockDiagram.png differ diff --git a/CMSIS/Documentation/Driver/html/NAND_Schematics.png b/CMSIS/Documentation/Driver/html/NAND_Schematics.png new file mode 100644 index 0000000..651524c Binary files /dev/null and b/CMSIS/Documentation/Driver/html/NAND_Schematics.png differ diff --git a/CMSIS/Documentation/Driver/html/Non_blocking_transmit_small.png b/CMSIS/Documentation/Driver/html/Non_blocking_transmit_small.png new file mode 100644 index 0000000..b47e1a5 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/Non_blocking_transmit_small.png differ diff --git a/CMSIS/Documentation/Driver/html/SAI_Schematics.png b/CMSIS/Documentation/Driver/html/SAI_Schematics.png new file mode 100644 index 0000000..35e8e6f Binary files /dev/null and b/CMSIS/Documentation/Driver/html/SAI_Schematics.png differ diff --git a/CMSIS/Documentation/Driver/html/SD_1BitBusMode.png b/CMSIS/Documentation/Driver/html/SD_1BitBusMode.png new file mode 100644 index 0000000..7cdace8 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/SD_1BitBusMode.png differ diff --git a/CMSIS/Documentation/Driver/html/SD_4BitBusMode.png b/CMSIS/Documentation/Driver/html/SD_4BitBusMode.png new file mode 100644 index 0000000..7f3944d Binary files /dev/null and b/CMSIS/Documentation/Driver/html/SD_4BitBusMode.png differ diff --git a/CMSIS/Documentation/Driver/html/SPI_BusMode.png b/CMSIS/Documentation/Driver/html/SPI_BusMode.png new file mode 100644 index 0000000..fbb7e41 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/SPI_BusMode.png differ diff --git a/CMSIS/Documentation/Driver/html/SPI_Master1Slaves.png b/CMSIS/Documentation/Driver/html/SPI_Master1Slaves.png new file mode 100644 index 0000000..45fb964 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/SPI_Master1Slaves.png differ diff --git a/CMSIS/Documentation/Driver/html/SPI_Master3Slaves.png b/CMSIS/Documentation/Driver/html/SPI_Master3Slaves.png new file mode 100644 index 0000000..6a268bd Binary files /dev/null and b/CMSIS/Documentation/Driver/html/SPI_Master3Slaves.png differ diff --git a/CMSIS/Documentation/Driver/html/USB_Schematics.png b/CMSIS/Documentation/Driver/html/USB_Schematics.png new file mode 100644 index 0000000..dcfe569 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/USB_Schematics.png differ diff --git a/CMSIS/Documentation/Driver/html/_driver___c_a_n_8c.html b/CMSIS/Documentation/Driver/html/_driver___c_a_n_8c.html new file mode 100644 index 0000000..a35c1d0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___c_a_n_8c.html @@ -0,0 +1,186 @@ + + + + + +Driver_CAN.c File Reference +CMSIS-Driver: Driver_CAN.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_CAN.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_CAN_GetVersion (void)
     Get driver version.
     
    ARM_CAN_CAPABILITIES ARM_CAN_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_CAN_Initialize (ARM_CAN_SignalUnitEvent_t cb_unit_event, ARM_CAN_SignalObjectEvent_t cb_object_event)
     Initialize CAN interface and register signal (callback) functions.
     
    int32_t ARM_CAN_Uninitialize (void)
     De-initialize CAN interface.
     
    int32_t ARM_CAN_PowerControl (ARM_POWER_STATE state)
     Control CAN interface power.
     
    uint32_t ARM_CAN_GetClock (void)
     Retrieve CAN base clock frequency.
     
    int32_t ARM_CAN_SetBitrate (ARM_CAN_BITRATE_SELECT select, uint32_t bitrate, uint32_t bit_segments)
     Set bitrate for CAN interface.
     
    int32_t ARM_CAN_SetMode (ARM_CAN_MODE mode)
     Set operating mode for CAN interface.
     
    ARM_CAN_OBJ_CAPABILITIES ARM_CAN_ObjectGetCapabilities (uint32_t obj_idx)
     Retrieve capabilities of an object.
     
    int32_t ARM_CAN_ObjectSetFilter (uint32_t obj_idx, ARM_CAN_FILTER_OPERATION operation, uint32_t id, uint32_t arg)
     Add or remove filter for message reception.
     
    int32_t ARM_CAN_ObjectConfigure (uint32_t obj_idx, ARM_CAN_OBJ_CONFIG obj_cfg)
     Configure object.
     
    int32_t ARM_CAN_MessageSend (uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, const uint8_t *data, uint8_t size)
     Send message on CAN bus.
     
    int32_t ARM_CAN_MessageRead (uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, uint8_t *data, uint8_t size)
     Read message received on CAN bus.
     
    int32_t ARM_CAN_Control (uint32_t control, uint32_t arg)
     Control CAN interface.
     
    ARM_CAN_STATUS ARM_CAN_GetStatus (void)
     Get CAN status.
     
    void ARM_CAN_SignalUnitEvent (uint32_t event)
     Signal CAN unit event.
     
    void ARM_CAN_SignalObjectEvent (uint32_t obj_idx, uint32_t event)
     Signal CAN object event.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___c_a_n_8h.html b/CMSIS/Documentation/Driver/html/_driver___c_a_n_8h.html new file mode 100644 index 0000000..f71c2ec --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___c_a_n_8h.html @@ -0,0 +1,607 @@ + + + + + +Driver_CAN.h File Reference +CMSIS-Driver: Driver_CAN.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_CAN.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_CAN_OBJ_CAPABILITIES
     CAN Object Capabilities. More...
     
    struct  ARM_CAN_MSG_INFO
     CAN Message Information. More...
     
    struct  ARM_CAN_STATUS
     CAN Status. More...
     
    struct  ARM_CAN_CAPABILITIES
     CAN Device Driver Capabilities. More...
     
    struct  ARM_DRIVER_CAN
     Access structure of the CAN Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_CAN_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(1,0)/* API version */
     
    #define ARM_CAN_BIT_PROP_SEG_Pos   0UL
     bits 7..0
     
    #define ARM_CAN_BIT_PROP_SEG_Msk   (0xFFUL << ARM_CAN_BIT_PROP_SEG_Pos)
     
    #define ARM_CAN_BIT_PROP_SEG(x)   (((x) << ARM_CAN_BIT_PROP_SEG_Pos) & ARM_CAN_BIT_PROP_SEG_Msk)
     
    #define ARM_CAN_BIT_PHASE_SEG1_Pos   8UL
     bits 15..8
     
    #define ARM_CAN_BIT_PHASE_SEG1_Msk   (0xFFUL << ARM_CAN_BIT_PHASE_SEG1_Pos)
     
    #define ARM_CAN_BIT_PHASE_SEG1(x)   (((x) << ARM_CAN_BIT_PHASE_SEG1_Pos) & ARM_CAN_BIT_PHASE_SEG1_Msk)
     
    #define ARM_CAN_BIT_PHASE_SEG2_Pos   16UL
     bits 23..16
     
    #define ARM_CAN_BIT_PHASE_SEG2_Msk   (0xFFUL << ARM_CAN_BIT_PHASE_SEG2_Pos)
     
    #define ARM_CAN_BIT_PHASE_SEG2(x)   (((x) << ARM_CAN_BIT_PHASE_SEG2_Pos) & ARM_CAN_BIT_PHASE_SEG2_Msk)
     
    #define ARM_CAN_BIT_SJW_Pos   24UL
     bits 28..24
     
    #define ARM_CAN_BIT_SJW_Msk   (0x1FUL << ARM_CAN_BIT_SJW_Pos)
     
    #define ARM_CAN_BIT_SJW(x)   (((x) << ARM_CAN_BIT_SJW_Pos) & ARM_CAN_BIT_SJW_Msk)
     
    #define ARM_CAN_CONTROL_Pos   0UL
     
    #define ARM_CAN_CONTROL_Msk   (0xFFUL << ARM_CAN_CONTROL_Pos)
     
    #define ARM_CAN_SET_FD_MODE   (1UL << ARM_CAN_CONTROL_Pos)
     Set FD operation mode; arg: 0 = disable, 1 = enable.
     
    #define ARM_CAN_ABORT_MESSAGE_SEND   (2UL << ARM_CAN_CONTROL_Pos)
     Abort sending of CAN message; arg = object.
     
    #define ARM_CAN_CONTROL_RETRANSMISSION   (3UL << ARM_CAN_CONTROL_Pos)
     Enable/disable automatic retransmission; arg: 0 = disable, 1 = enable (default state)
     
    #define ARM_CAN_SET_TRANSCEIVER_DELAY   (4UL << ARM_CAN_CONTROL_Pos)
     Set transceiver delay; arg = delay in time quanta.
     
    #define ARM_CAN_ID_IDE_Pos   31UL
     
    #define ARM_CAN_ID_IDE_Msk   (1UL << ARM_CAN_ID_IDE_Pos)
     
    #define ARM_CAN_STANDARD_ID(id)   (id & 0x000007FFUL)
     CAN identifier in standard format (11-bits)
     
    #define ARM_CAN_EXTENDED_ID(id)   ((id & 0x1FFFFFFFUL) | ARM_CAN_ID_IDE_Msk)
     CAN identifier in extended format (29-bits)
     
    #define ARM_CAN_INVALID_BITRATE_SELECT   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     Bitrate selection not supported.
     
    #define ARM_CAN_INVALID_BITRATE   (ARM_DRIVER_ERROR_SPECIFIC - 2)
     Requested bitrate not supported.
     
    #define ARM_CAN_INVALID_BIT_PROP_SEG   (ARM_DRIVER_ERROR_SPECIFIC - 3)
     Propagation segment value not supported.
     
    #define ARM_CAN_INVALID_BIT_PHASE_SEG1   (ARM_DRIVER_ERROR_SPECIFIC - 4)
     Phase segment 1 value not supported.
     
    #define ARM_CAN_INVALID_BIT_PHASE_SEG2   (ARM_DRIVER_ERROR_SPECIFIC - 5)
     Phase segment 2 value not supported.
     
    #define ARM_CAN_INVALID_BIT_SJW   (ARM_DRIVER_ERROR_SPECIFIC - 6)
     SJW value not supported.
     
    #define ARM_CAN_NO_MESSAGE_AVAILABLE   (ARM_DRIVER_ERROR_SPECIFIC - 7)
     Message is not available.
     
    #define ARM_CAN_UNIT_STATE_INACTIVE   (0U)
     Unit state: Not active on bus (initialize or error bus off)
     
    #define ARM_CAN_UNIT_STATE_ACTIVE   (1U)
     Unit state: Active on bus (can generate active error frame)
     
    #define ARM_CAN_UNIT_STATE_PASSIVE   (2U)
     Unit state: Error passive (can not generate active error frame)
     
    #define ARM_CAN_LEC_NO_ERROR   (0U)
     Last error code: No error.
     
    #define ARM_CAN_LEC_BIT_ERROR   (1U)
     Last error code: Bit error.
     
    #define ARM_CAN_LEC_STUFF_ERROR   (2U)
     Last error code: Bit stuffing error.
     
    #define ARM_CAN_LEC_CRC_ERROR   (3U)
     Last error code: CRC error.
     
    #define ARM_CAN_LEC_FORM_ERROR   (4U)
     Last error code: Illegal fixed-form bit.
     
    #define ARM_CAN_LEC_ACK_ERROR   (5U)
     Last error code: Acknowledgement error.
     
    #define ARM_CAN_EVENT_UNIT_ACTIVE   (1U)
     Unit entered Error Active state.
     
    #define ARM_CAN_EVENT_UNIT_WARNING   (2U)
     Unit entered Error Warning state (one or both error counters >= 96)
     
    #define ARM_CAN_EVENT_UNIT_PASSIVE   (3U)
     Unit entered Error Passive state.
     
    #define ARM_CAN_EVENT_UNIT_BUS_OFF   (4U)
     Unit entered bus off state.
     
    #define ARM_CAN_EVENT_SEND_COMPLETE   (1UL << 0)
     Send complete.
     
    #define ARM_CAN_EVENT_RECEIVE   (1UL << 1)
     Message received.
     
    #define ARM_CAN_EVENT_RECEIVE_OVERRUN   (1UL << 2)
     Received message overrun.
     
    + + + + + + + +

    +Typedefs

    typedef void(* ARM_CAN_SignalUnitEvent_t )(uint32_t event)
     Pointer to ARM_CAN_SignalUnitEvent : Signal CAN Unit Event.
     
    typedef void(* ARM_CAN_SignalObjectEvent_t )(uint32_t obj_idx, uint32_t event)
     Pointer to ARM_CAN_SignalObjectEvent : Signal CAN Object Event.
     
    + + + + + + + + + + +

    +Enumerations

    enum  ARM_CAN_BITRATE_SELECT {
    +  ARM_CAN_BITRATE_NOMINAL, +
    +  ARM_CAN_BITRATE_FD_DATA +
    + }
     Set the bit rate. More...
     
    enum  ARM_CAN_MODE {
    +  ARM_CAN_MODE_INITIALIZATION, +
    +  ARM_CAN_MODE_NORMAL, +
    +  ARM_CAN_MODE_RESTRICTED, +
    +  ARM_CAN_MODE_MONITOR, +
    +  ARM_CAN_MODE_LOOPBACK_INTERNAL, +
    +  ARM_CAN_MODE_LOOPBACK_EXTERNAL +
    + }
     
    enum  ARM_CAN_FILTER_OPERATION {
    +  ARM_CAN_FILTER_ID_EXACT_ADD, +
    +  ARM_CAN_FILTER_ID_EXACT_REMOVE, +
    +  ARM_CAN_FILTER_ID_RANGE_ADD, +
    +  ARM_CAN_FILTER_ID_RANGE_REMOVE, +
    +  ARM_CAN_FILTER_ID_MASKABLE_ADD, +
    +  ARM_CAN_FILTER_ID_MASKABLE_REMOVE +
    + }
     
    enum  ARM_CAN_OBJ_CONFIG {
    +  ARM_CAN_OBJ_INACTIVE, +
    +  ARM_CAN_OBJ_TX, +
    +  ARM_CAN_OBJ_RX, +
    +  ARM_CAN_OBJ_RX_RTR_TX_DATA, +
    +  ARM_CAN_OBJ_TX_RTR_RX_DATA +
    + }
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_CAN_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(1,0)/* API version */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_PROP_SEG_Pos   0UL
    +
    + +

    bits 7..0

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_PROP_SEG_Msk   (0xFFUL << ARM_CAN_BIT_PROP_SEG_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_PHASE_SEG1_Pos   8UL
    +
    + +

    bits 15..8

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_PHASE_SEG1_Msk   (0xFFUL << ARM_CAN_BIT_PHASE_SEG1_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_PHASE_SEG2_Pos   16UL
    +
    + +

    bits 23..16

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_PHASE_SEG2_Msk   (0xFFUL << ARM_CAN_BIT_PHASE_SEG2_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_SJW_Pos   24UL
    +
    + +

    bits 28..24

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_BIT_SJW_Msk   (0x1FUL << ARM_CAN_BIT_SJW_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_CONTROL_Pos   0UL
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_CONTROL_Msk   (0xFFUL << ARM_CAN_CONTROL_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_ID_IDE_Pos   31UL
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_ID_IDE_Msk   (1UL << ARM_CAN_ID_IDE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_INVALID_BITRATE_SELECT   (ARM_DRIVER_ERROR_SPECIFIC - 1)
    +
    + +

    Bitrate selection not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_INVALID_BITRATE   (ARM_DRIVER_ERROR_SPECIFIC - 2)
    +
    + +

    Requested bitrate not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_INVALID_BIT_PROP_SEG   (ARM_DRIVER_ERROR_SPECIFIC - 3)
    +
    + +

    Propagation segment value not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_INVALID_BIT_PHASE_SEG1   (ARM_DRIVER_ERROR_SPECIFIC - 4)
    +
    + +

    Phase segment 1 value not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_INVALID_BIT_PHASE_SEG2   (ARM_DRIVER_ERROR_SPECIFIC - 5)
    +
    + +

    Phase segment 2 value not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_INVALID_BIT_SJW   (ARM_DRIVER_ERROR_SPECIFIC - 6)
    +
    + +

    SJW value not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_NO_MESSAGE_AVAILABLE   (ARM_DRIVER_ERROR_SPECIFIC - 7)
    +
    + +

    Message is not available.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___common_8c.html b/CMSIS/Documentation/Driver/html/_driver___common_8c.html new file mode 100644 index 0000000..4e75e50 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___common_8c.html @@ -0,0 +1,129 @@ + + + + + +Driver_Common.c File Reference +CMSIS-Driver: Driver_Common.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___common_8h.html b/CMSIS/Documentation/Driver/html/_driver___common_8h.html new file mode 100644 index 0000000..1894cd2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___common_8h.html @@ -0,0 +1,206 @@ + + + + + +Driver_Common.h File Reference +CMSIS-Driver: Driver_Common.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_Common.h File Reference
    +
    +
    + + + + + +

    +Data Structures

    struct  ARM_DRIVER_VERSION
     Driver Version. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_DRIVER_VERSION_MAJOR_MINOR(major, minor)   (((major) << 8) | (minor))
     
    #define ARM_DRIVER_OK   0
     Operation succeeded.
     
    #define ARM_DRIVER_ERROR   -1
     Unspecified error.
     
    #define ARM_DRIVER_ERROR_BUSY   -2
     Driver is busy.
     
    #define ARM_DRIVER_ERROR_TIMEOUT   -3
     Timeout occurred.
     
    #define ARM_DRIVER_ERROR_UNSUPPORTED   -4
     Operation not supported.
     
    #define ARM_DRIVER_ERROR_PARAMETER   -5
     Parameter error.
     
    #define ARM_DRIVER_ERROR_SPECIFIC   -6
     Start of driver specific errors.
     
    + + + + +

    +Enumerations

    enum  ARM_POWER_STATE {
    +  ARM_POWER_OFF, +
    +  ARM_POWER_LOW, +
    +  ARM_POWER_FULL +
    + }
     General power states. More...
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    #define ARM_DRIVER_VERSION_MAJOR_MINOR( major,
     minor 
    )   (((major) << 8) | (minor))
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___e_t_h_8c.html b/CMSIS/Documentation/Driver/html/_driver___e_t_h_8c.html new file mode 100644 index 0000000..a960db8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___e_t_h_8c.html @@ -0,0 +1,129 @@ + + + + + +Driver_ETH.c File Reference +CMSIS-Driver: Driver_ETH.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___e_t_h_8h.html b/CMSIS/Documentation/Driver/html/_driver___e_t_h_8h.html new file mode 100644 index 0000000..2109fca --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___e_t_h_8h.html @@ -0,0 +1,254 @@ + + + + + +Driver_ETH.h File Reference +CMSIS-Driver: Driver_ETH.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_ETH.h File Reference
    +
    +
    + + + + + + + + +

    +Data Structures

    struct  ARM_ETH_LINK_INFO
     Ethernet link information. More...
     
    struct  ARM_ETH_MAC_ADDR
     Ethernet MAC Address. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_INTERFACE_MII   0
     Ethernet Media Interface type.
     
    #define ARM_ETH_INTERFACE_RMII   1
     Reduced Media Independent Interface (RMII)
     
    #define ARM_ETH_INTERFACE_SMII   2
     Serial Media Independent Interface (SMII)
     
    #define ARM_ETH_SPEED_10M   0
     Ethernet link speed.
     
    #define ARM_ETH_SPEED_100M   1
     100 Mbps link speed
     
    #define ARM_ETH_SPEED_1G   2
     1 Gpbs link speed
     
    #define ARM_ETH_DUPLEX_HALF   0
     Ethernet duplex mode.
     
    #define ARM_ETH_DUPLEX_FULL   1
     Full duplex link.
     
    + + + + +

    +Enumerations

    enum  ARM_ETH_LINK_STATE {
    +  ARM_ETH_LINK_DOWN, +
    +  ARM_ETH_LINK_UP +
    + }
     Ethernet link state. More...
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_SPEED_10M   0
    +
    + +

    Ethernet link speed.

    +

    10 Mbps link speed

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_SPEED_100M   1
    +
    + +

    100 Mbps link speed

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_SPEED_1G   2
    +
    + +

    1 Gpbs link speed

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_DUPLEX_HALF   0
    +
    + +

    Ethernet duplex mode.

    +

    Half duplex link

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_DUPLEX_FULL   1
    +
    + +

    Full duplex link.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8c.html b/CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8c.html new file mode 100644 index 0000000..011aba4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8c.html @@ -0,0 +1,189 @@ + + + + + +Driver_ETH_MAC.c File Reference +CMSIS-Driver: Driver_ETH_MAC.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_ETH_MAC.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_ETH_MAC_GetVersion (void)
     Get driver version.
     
    ARM_ETH_MAC_CAPABILITIES ARM_ETH_MAC_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_ETH_MAC_Initialize (ARM_ETH_MAC_SignalEvent_t cb_event)
     Initialize Ethernet MAC Device.
     
    int32_t ARM_ETH_MAC_Uninitialize (void)
     De-initialize Ethernet MAC Device.
     
    int32_t ARM_ETH_MAC_PowerControl (ARM_POWER_STATE state)
     Control Ethernet MAC Device Power.
     
    int32_t ARM_ETH_MAC_GetMacAddress (ARM_ETH_MAC_ADDR *ptr_addr)
     Get Ethernet MAC Address.
     
    int32_t ARM_ETH_MAC_SetMacAddress (const ARM_ETH_MAC_ADDR *ptr_addr)
     Set Ethernet MAC Address.
     
    int32_t ARM_ETH_MAC_SetAddressFilter (const ARM_ETH_MAC_ADDR *ptr_addr, uint32_t num_addr)
     Configure Address Filter.
     
    int32_t ARM_ETH_MAC_SendFrame (const uint8_t *frame, uint32_t len, uint32_t flags)
     Send Ethernet frame.
     
    int32_t ARM_ETH_MAC_ReadFrame (uint8_t *frame, uint32_t len)
     Read data of received Ethernet frame.
     
    uint32_t ARM_ETH_MAC_GetRxFrameSize (void)
     Get size of received Ethernet frame.
     
    int32_t ARM_ETH_MAC_GetRxFrameTime (ARM_ETH_MAC_TIME *time)
     Get time of received Ethernet frame.
     
    int32_t ARM_ETH_MAC_GetTxFrameTime (ARM_ETH_MAC_TIME *time)
     Get time of transmitted Ethernet frame.
     
    int32_t ARM_ETH_MAC_Control (uint32_t control, uint32_t arg)
     Control Ethernet Interface.
     
    int32_t ARM_ETH_MAC_ControlTimer (uint32_t control, ARM_ETH_MAC_TIME *time)
     Control Precision Timer.
     
    int32_t ARM_ETH_MAC_PHY_Read (uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
     Read Ethernet PHY Register through Management Interface.
     
    int32_t ARM_ETH_MAC_PHY_Write (uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
     Write Ethernet PHY Register through Management Interface.
     
    void ARM_ETH_MAC_SignalEvent (uint32_t event)
     Callback function that signals a Ethernet Event.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8h.html b/CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8h.html new file mode 100644 index 0000000..211ece5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___e_t_h___m_a_c_8h.html @@ -0,0 +1,361 @@ + + + + + +Driver_ETH_MAC.h File Reference +CMSIS-Driver: Driver_ETH_MAC.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_ETH_MAC.h File Reference
    +
    +
    + + + + + + + + + + + +

    +Data Structures

    struct  ARM_ETH_MAC_TIME
     Ethernet MAC Time. More...
     
    struct  ARM_ETH_MAC_CAPABILITIES
     Ethernet MAC Capabilities. More...
     
    struct  ARM_DRIVER_ETH_MAC
     Access structure of the Ethernet MAC Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_MAC_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
     
    #define _ARM_Driver_ETH_MAC_(n)   Driver_ETH_MAC##n
     
    #define ARM_Driver_ETH_MAC_(n)   _ARM_Driver_ETH_MAC_(n)
     
    #define ARM_ETH_MAC_CONFIGURE   (0x01)
     Configure MAC; arg = configuration.
     
    #define ARM_ETH_MAC_CONTROL_TX   (0x02)
     Transmitter; arg: 0=disabled (default), 1=enabled.
     
    #define ARM_ETH_MAC_CONTROL_RX   (0x03)
     Receiver; arg: 0=disabled (default), 1=enabled.
     
    #define ARM_ETH_MAC_FLUSH   (0x04)
     Flush buffer; arg = ARM_ETH_MAC_FLUSH_...
     
    #define ARM_ETH_MAC_SLEEP   (0x05)
     Sleep mode; arg: 1=enter and wait for Magic packet, 0=exit.
     
    #define ARM_ETH_MAC_VLAN_FILTER   (0x06)
     VLAN Filter for received frames; arg15..0: VLAN Tag; arg16: optional ARM_ETH_MAC_VLAN_FILTER_ID_ONLY; 0=disabled (default)
     
    #define ARM_ETH_MAC_SPEED_Pos   0
     
    #define ARM_ETH_MAC_SPEED_Msk   (3UL << ARM_ETH_MAC_SPEED_Pos)
     
    #define ARM_ETH_MAC_SPEED_10M   (ARM_ETH_SPEED_10M << ARM_ETH_MAC_SPEED_Pos)
     10 Mbps link speed
     
    #define ARM_ETH_MAC_SPEED_100M   (ARM_ETH_SPEED_100M << ARM_ETH_MAC_SPEED_Pos)
     100 Mbps link speed
     
    #define ARM_ETH_MAC_SPEED_1G   (ARM_ETH_SPEED_1G << ARM_ETH_MAC_SPEED_Pos)
     1 Gpbs link speed
     
    #define ARM_ETH_MAC_DUPLEX_Pos   2
     
    #define ARM_ETH_MAC_DUPLEX_Msk   (1UL << ARM_ETH_MAC_DUPLEX_Pos)
     
    #define ARM_ETH_MAC_DUPLEX_HALF   (ARM_ETH_DUPLEX_HALF << ARM_ETH_MAC_DUPLEX_Pos)
     Half duplex link.
     
    #define ARM_ETH_MAC_DUPLEX_FULL   (ARM_ETH_DUPLEX_FULL << ARM_ETH_MAC_DUPLEX_Pos)
     Full duplex link.
     
    #define ARM_ETH_MAC_LOOPBACK   (1UL << 4)
     Loop-back test mode.
     
    #define ARM_ETH_MAC_CHECKSUM_OFFLOAD_RX   (1UL << 5)
     Receiver Checksum offload.
     
    #define ARM_ETH_MAC_CHECKSUM_OFFLOAD_TX   (1UL << 6)
     Transmitter Checksum offload.
     
    #define ARM_ETH_MAC_ADDRESS_BROADCAST   (1UL << 7)
     Accept frames with Broadcast address.
     
    #define ARM_ETH_MAC_ADDRESS_MULTICAST   (1UL << 8)
     Accept frames with any Multicast address.
     
    #define ARM_ETH_MAC_ADDRESS_ALL   (1UL << 9)
     Accept frames with any address (Promiscuous Mode)
     
    #define ARM_ETH_MAC_FLUSH_RX   (1UL << 0)
     Flush Receive buffer.
     
    #define ARM_ETH_MAC_FLUSH_TX   (1UL << 1)
     Flush Transmit buffer.
     
    #define ARM_ETH_MAC_VLAN_FILTER_ID_ONLY   (1UL << 16)
     Compare only the VLAN Identifier (12-bit)
     
    #define ARM_ETH_MAC_TX_FRAME_FRAGMENT   (1UL << 0)
     Indicate frame fragment.
     
    #define ARM_ETH_MAC_TX_FRAME_EVENT   (1UL << 1)
     Generate event when frame is transmitted.
     
    #define ARM_ETH_MAC_TX_FRAME_TIMESTAMP   (1UL << 2)
     Capture frame time stamp.
     
    #define ARM_ETH_MAC_TIMER_GET_TIME   (0x01)
     Get current time.
     
    #define ARM_ETH_MAC_TIMER_SET_TIME   (0x02)
     Set new time.
     
    #define ARM_ETH_MAC_TIMER_INC_TIME   (0x03)
     Increment current time.
     
    #define ARM_ETH_MAC_TIMER_DEC_TIME   (0x04)
     Decrement current time.
     
    #define ARM_ETH_MAC_TIMER_SET_ALARM   (0x05)
     Set alarm time.
     
    #define ARM_ETH_MAC_TIMER_ADJUST_CLOCK   (0x06)
     Adjust clock frequency; time->ns: correction factor * 2^31.
     
    #define ARM_ETH_MAC_EVENT_RX_FRAME   (1UL << 0)
     Frame Received.
     
    #define ARM_ETH_MAC_EVENT_TX_FRAME   (1UL << 1)
     Frame Transmitted.
     
    #define ARM_ETH_MAC_EVENT_WAKEUP   (1UL << 2)
     Wake-up (on Magic Packet)
     
    #define ARM_ETH_MAC_EVENT_TIMER_ALARM   (1UL << 3)
     Timer Alarm.
     
    + + + + +

    +Typedefs

    typedef void(* ARM_ETH_MAC_SignalEvent_t )(uint32_t event)
     Pointer to ARM_ETH_MAC_SignalEvent : Signal Ethernet Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define _ARM_Driver_ETH_MAC_( n)   Driver_ETH_MAC##n
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_Driver_ETH_MAC_( n)   _ARM_Driver_ETH_MAC_(n)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_SPEED_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_SPEED_Msk   (3UL << ARM_ETH_MAC_SPEED_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_DUPLEX_Pos   2
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_DUPLEX_Msk   (1UL << ARM_ETH_MAC_DUPLEX_Pos)
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8c.html b/CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8c.html new file mode 100644 index 0000000..2f048c9 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8c.html @@ -0,0 +1,159 @@ + + + + + +Driver_ETH_PHY.c File Reference +CMSIS-Driver: Driver_ETH_PHY.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_ETH_PHY.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_ETH_PHY_GetVersion (void)
     Get driver version.
     
    int32_t ARM_ETH_PHY_Initialize (ARM_ETH_PHY_Read_t fn_read, ARM_ETH_PHY_Write_t fn_write)
     Initialize Ethernet PHY Device.
     
    int32_t ARM_ETH_PHY_Uninitialize (void)
     De-initialize Ethernet PHY Device.
     
    int32_t ARM_ETH_PHY_PowerControl (ARM_POWER_STATE state)
     Control Ethernet PHY Device Power.
     
    int32_t ARM_ETH_PHY_SetInterface (uint32_t interface)
     Set Ethernet Media Interface.
     
    int32_t ARM_ETH_PHY_SetMode (uint32_t mode)
     Set Ethernet PHY Device Operation mode.
     
    ARM_ETH_LINK_STATE ARM_ETH_PHY_GetLinkState (void)
     Get Ethernet PHY Device Link state.
     
    ARM_ETH_LINK_INFO ARM_ETH_PHY_GetLinkInfo (void)
     Get Ethernet PHY Device Link information.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8h.html b/CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8h.html new file mode 100644 index 0000000..b491b53 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___e_t_h___p_h_y_8h.html @@ -0,0 +1,283 @@ + + + + + +Driver_ETH_PHY.h File Reference +CMSIS-Driver: Driver_ETH_PHY.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_ETH_PHY.h File Reference
    +
    +
    + + + + + +

    +Data Structures

    struct  ARM_DRIVER_ETH_PHY
     Access structure of the Ethernet PHY Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_PHY_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,00) /* API version */
     
    #define _ARM_Driver_ETH_PHY_(n)   Driver_ETH_PHY##n
     
    #define ARM_Driver_ETH_PHY_(n)   _ARM_Driver_ETH_PHY_(n)
     
    #define ARM_ETH_PHY_SPEED_Pos   0
     
    #define ARM_ETH_PHY_SPEED_Msk   (3UL << ARM_ETH_PHY_SPEED_Pos)
     
    #define ARM_ETH_PHY_SPEED_10M   (ARM_ETH_SPEED_10M << ARM_ETH_PHY_SPEED_Pos)
     10 Mbps link speed
     
    #define ARM_ETH_PHY_SPEED_100M   (ARM_ETH_SPEED_100M << ARM_ETH_PHY_SPEED_Pos)
     100 Mbps link speed
     
    #define ARM_ETH_PHY_SPEED_1G   (ARM_ETH_SPEED_1G << ARM_ETH_PHY_SPEED_Pos)
     1 Gpbs link speed
     
    #define ARM_ETH_PHY_DUPLEX_Pos   2
     
    #define ARM_ETH_PHY_DUPLEX_Msk   (1UL << ARM_ETH_PHY_DUPLEX_Pos)
     
    #define ARM_ETH_PHY_DUPLEX_HALF   (ARM_ETH_DUPLEX_HALF << ARM_ETH_PHY_DUPLEX_Pos)
     Half duplex link.
     
    #define ARM_ETH_PHY_DUPLEX_FULL   (ARM_ETH_DUPLEX_FULL << ARM_ETH_PHY_DUPLEX_Pos)
     Full duplex link.
     
    #define ARM_ETH_PHY_AUTO_NEGOTIATE   (1UL << 3)
     Auto Negotiation mode.
     
    #define ARM_ETH_PHY_LOOPBACK   (1UL << 4)
     Loop-back test mode.
     
    #define ARM_ETH_PHY_ISOLATE   (1UL << 5)
     Isolate PHY from MII/RMII interface.
     
    + + + + + + + +

    +Typedefs

    typedef int32_t(* ARM_ETH_PHY_Read_t )(uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
     Pointer to ARM_ETH_MAC_PHY_Read : Read Ethernet PHY Register.
     
    typedef int32_t(* ARM_ETH_PHY_Write_t )(uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
     Pointer to ARM_ETH_MAC_PHY_Write : Write Ethernet PHY Register.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_PHY_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,00) /* API version */
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define _ARM_Driver_ETH_PHY_( n)   Driver_ETH_PHY##n
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_Driver_ETH_PHY_( n)   _ARM_Driver_ETH_PHY_(n)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_SPEED_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_SPEED_Msk   (3UL << ARM_ETH_PHY_SPEED_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_DUPLEX_Pos   2
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_DUPLEX_Msk   (1UL << ARM_ETH_PHY_DUPLEX_Pos)
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___flash_8c.html b/CMSIS/Documentation/Driver/html/_driver___flash_8c.html new file mode 100644 index 0000000..5853743 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___flash_8c.html @@ -0,0 +1,171 @@ + + + + + +Driver_Flash.c File Reference +CMSIS-Driver: Driver_Flash.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_Flash.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_Flash_GetVersion (void)
     Get driver version.
     
    ARM_FLASH_CAPABILITIES ARM_Flash_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_Flash_Initialize (ARM_Flash_SignalEvent_t cb_event)
     Initialize the Flash Interface.
     
    int32_t ARM_Flash_Uninitialize (void)
     De-initialize the Flash Interface.
     
    int32_t ARM_Flash_PowerControl (ARM_POWER_STATE state)
     Control the Flash interface power.
     
    int32_t ARM_Flash_ReadData (uint32_t addr, void *data, uint32_t cnt)
     Read data from Flash.
     
    int32_t ARM_Flash_ProgramData (uint32_t addr, const void *data, uint32_t cnt)
     Program data to Flash.
     
    int32_t ARM_Flash_EraseSector (uint32_t addr)
     Erase Flash Sector.
     
    int32_t ARM_Flash_EraseChip (void)
     Erase complete Flash. Optional function for faster full chip erase.
     
    ARM_FLASH_STATUS ARM_Flash_GetStatus (void)
     Get Flash status.
     
    ARM_FLASH_INFOARM_Flash_GetInfo (void)
     Get Flash information.
     
    void ARM_Flash_SignalEvent (uint32_t event)
     Signal Flash event.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___flash_8h.html b/CMSIS/Documentation/Driver/html/_driver___flash_8h.html new file mode 100644 index 0000000..9de6431 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___flash_8h.html @@ -0,0 +1,246 @@ + + + + + +Driver_Flash.h File Reference +CMSIS-Driver: Driver_Flash.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_Flash.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_FLASH_SECTOR
     Flash Sector information. More...
     
    struct  ARM_FLASH_INFO
     Flash information. More...
     
    struct  ARM_FLASH_STATUS
     Flash Status. More...
     
    struct  ARM_FLASH_CAPABILITIES
     Flash Driver Capabilities. More...
     
    struct  ARM_DRIVER_FLASH
     Access structure of the Flash Driver. More...
     
    + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_FLASH_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,00) /* API version */
     
    #define _ARM_Driver_Flash_(n)   Driver_Flash##n
     
    #define ARM_Driver_Flash_(n)   _ARM_Driver_Flash_(n)
     
    #define ARM_FLASH_SECTOR_INFO(addr, size)   { (addr), (addr)+(size)-1 }
     
    #define ARM_FLASH_EVENT_READY   (1UL << 0)
     Flash Ready.
     
    #define ARM_FLASH_EVENT_ERROR   (1UL << 1)
     Read/Program/Erase Error.
     
    + + + + +

    +Typedefs

    typedef void(* ARM_Flash_SignalEvent_t )(uint32_t event)
     Pointer to ARM_Flash_SignalEvent : Signal Flash Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_FLASH_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,00) /* API version */
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define _ARM_Driver_Flash_( n)   Driver_Flash##n
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_Driver_Flash_( n)   _ARM_Driver_Flash_(n)
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    #define ARM_FLASH_SECTOR_INFO( addr,
     size 
    )   { (addr), (addr)+(size)-1 }
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___i2_c_8c.html b/CMSIS/Documentation/Driver/html/_driver___i2_c_8c.html new file mode 100644 index 0000000..ebfdfdc --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___i2_c_8c.html @@ -0,0 +1,174 @@ + + + + + +Driver_I2C.c File Reference +CMSIS-Driver: Driver_I2C.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_I2C.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_I2C_GetVersion (void)
     Get driver version.
     
    ARM_I2C_CAPABILITIES ARM_I2C_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_I2C_Initialize (ARM_I2C_SignalEvent_t cb_event)
     Initialize I2C Interface.
     
    int32_t ARM_I2C_Uninitialize (void)
     De-initialize I2C Interface.
     
    int32_t ARM_I2C_PowerControl (ARM_POWER_STATE state)
     Control I2C Interface Power.
     
    int32_t ARM_I2C_MasterTransmit (uint32_t addr, const uint8_t *data, uint32_t num, bool xfer_pending)
     Start transmitting data as I2C Master.
     
    int32_t ARM_I2C_MasterReceive (uint32_t addr, uint8_t *data, uint32_t num, bool xfer_pending)
     Start receiving data as I2C Master.
     
    int32_t ARM_I2C_SlaveTransmit (const uint8_t *data, uint32_t num)
     Start transmitting data as I2C Slave.
     
    int32_t ARM_I2C_SlaveReceive (uint8_t *data, uint32_t num)
     Start receiving data as I2C Slave.
     
    int32_t ARM_I2C_GetDataCount (void)
     Get transferred data count.
     
    int32_t ARM_I2C_Control (uint32_t control, uint32_t arg)
     Control I2C Interface.
     
    ARM_I2C_STATUS ARM_I2C_GetStatus (void)
     Get I2C status.
     
    void ARM_I2C_SignalEvent (uint32_t event)
     Signal I2C Events.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___i2_c_8h.html b/CMSIS/Documentation/Driver/html/_driver___i2_c_8h.html new file mode 100644 index 0000000..9ba3cbf --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___i2_c_8h.html @@ -0,0 +1,227 @@ + + + + + +Driver_I2C.h File Reference +CMSIS-Driver: Driver_I2C.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_I2C.h File Reference
    +
    +
    + + + + + + + + + + + +

    +Data Structures

    struct  ARM_I2C_STATUS
     I2C Status. More...
     
    struct  ARM_I2C_CAPABILITIES
     I2C Driver Capabilities. More...
     
    struct  ARM_DRIVER_I2C
     Access structure of the I2C Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_I2C_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,02) /* API version */
     
    #define ARM_I2C_OWN_ADDRESS   (0x01)
     Set Own Slave Address; arg = address.
     
    #define ARM_I2C_BUS_SPEED   (0x02)
     Set Bus Speed; arg = speed.
     
    #define ARM_I2C_BUS_CLEAR   (0x03)
     Execute Bus clear: send nine clock pulses.
     
    #define ARM_I2C_ABORT_TRANSFER   (0x04)
     Abort Master/Slave Transmit/Receive.
     
    #define ARM_I2C_BUS_SPEED_STANDARD   (0x01)
     Standard Speed (100kHz)
     
    #define ARM_I2C_BUS_SPEED_FAST   (0x02)
     Fast Speed (400kHz)
     
    #define ARM_I2C_BUS_SPEED_FAST_PLUS   (0x03)
     Fast+ Speed ( 1MHz)
     
    #define ARM_I2C_BUS_SPEED_HIGH   (0x04)
     High Speed (3.4MHz)
     
    #define ARM_I2C_ADDRESS_10BIT   0x0400
     10-bit address flag
     
    #define ARM_I2C_ADDRESS_GC   0x8000
     General Call flag.
     
    #define ARM_I2C_EVENT_TRANSFER_DONE   (1UL << 0)
     Master/Slave Transmit/Receive finished.
     
    #define ARM_I2C_EVENT_TRANSFER_INCOMPLETE   (1UL << 1)
     Master/Slave Transmit/Receive incomplete transfer.
     
    #define ARM_I2C_EVENT_SLAVE_TRANSMIT   (1UL << 2)
     Slave Transmit operation requested.
     
    #define ARM_I2C_EVENT_SLAVE_RECEIVE   (1UL << 3)
     Slave Receive operation requested.
     
    #define ARM_I2C_EVENT_ADDRESS_NACK   (1UL << 4)
     Address not acknowledged from Slave.
     
    #define ARM_I2C_EVENT_GENERAL_CALL   (1UL << 5)
     General Call indication.
     
    #define ARM_I2C_EVENT_ARBITRATION_LOST   (1UL << 6)
     Master lost arbitration.
     
    #define ARM_I2C_EVENT_BUS_ERROR   (1UL << 7)
     Bus error detected (START/STOP at illegal position)
     
    #define ARM_I2C_EVENT_BUS_CLEAR   (1UL << 8)
     Bus clear finished.
     
    + + + + +

    +Typedefs

    typedef void(* ARM_I2C_SignalEvent_t )(uint32_t event)
     Pointer to ARM_I2C_SignalEvent : Signal I2C Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_I2C_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,02) /* API version */
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___m_c_i_8c.html b/CMSIS/Documentation/Driver/html/_driver___m_c_i_8c.html new file mode 100644 index 0000000..0545f7e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___m_c_i_8c.html @@ -0,0 +1,177 @@ + + + + + +Driver_MCI.c File Reference +CMSIS-Driver: Driver_MCI.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_MCI.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_MCI_GetVersion (void)
     Get driver version.
     
    ARM_MCI_CAPABILITIES ARM_MCI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_MCI_Initialize (ARM_MCI_SignalEvent_t cb_event)
     Initialize the Memory Card Interface.
     
    int32_t ARM_MCI_Uninitialize (void)
     De-initialize Memory Card Interface.
     
    int32_t ARM_MCI_PowerControl (ARM_POWER_STATE state)
     Control Memory Card Interface Power.
     
    int32_t ARM_MCI_CardPower (uint32_t voltage)
     Set Memory Card Power supply voltage.
     
    int32_t ARM_MCI_ReadCD (void)
     Read Card Detect (CD) state.
     
    int32_t ARM_MCI_ReadWP (void)
     Read Write Protect (WP) state.
     
    int32_t ARM_MCI_SendCommand (uint32_t cmd, uint32_t arg, uint32_t flags, uint32_t *response)
     Send Command to card and get the response.
     
    int32_t ARM_MCI_SetupTransfer (uint8_t *data, uint32_t block_count, uint32_t block_size, uint32_t mode)
     Setup read or write transfer operation.
     
    int32_t ARM_MCI_AbortTransfer (void)
     Abort current read/write data transfer.
     
    int32_t ARM_MCI_Control (uint32_t control, uint32_t arg)
     Control MCI Interface.
     
    ARM_MCI_STATUS ARM_MCI_GetStatus (void)
     Get MCI status.
     
    void ARM_MCI_SignalEvent (uint32_t event)
     Callback function that signals a MCI Card Event.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___m_c_i_8h.html b/CMSIS/Documentation/Driver/html/_driver___m_c_i_8h.html new file mode 100644 index 0000000..7478940 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___m_c_i_8h.html @@ -0,0 +1,467 @@ + + + + + +Driver_MCI.h File Reference +CMSIS-Driver: Driver_MCI.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_MCI.h File Reference
    +
    +
    + + + + + + + + + + + +

    +Data Structures

    struct  ARM_MCI_STATUS
     MCI Status. More...
     
    struct  ARM_MCI_CAPABILITIES
     MCI Driver Capabilities. More...
     
    struct  ARM_DRIVER_MCI
     Access structure of the MCI Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,02) /* API version */
     
    #define ARM_MCI_RESPONSE_Pos   0
     
    #define ARM_MCI_RESPONSE_Msk   (3UL << ARM_MCI_RESPONSE_Pos)
     
    #define ARM_MCI_RESPONSE_NONE   (0UL << ARM_MCI_RESPONSE_Pos)
     No response expected (default)
     
    #define ARM_MCI_RESPONSE_SHORT   (1UL << ARM_MCI_RESPONSE_Pos)
     Short response (48-bit)
     
    #define ARM_MCI_RESPONSE_SHORT_BUSY   (2UL << ARM_MCI_RESPONSE_Pos)
     Short response with busy signal (48-bit)
     
    #define ARM_MCI_RESPONSE_LONG   (3UL << ARM_MCI_RESPONSE_Pos)
     Long response (136-bit)
     
    #define ARM_MCI_RESPONSE_INDEX   (1UL << 2)
     Check command index in response.
     
    #define ARM_MCI_RESPONSE_CRC   (1UL << 3)
     Check CRC in response.
     
    #define ARM_MCI_WAIT_BUSY   (1UL << 4)
     Wait until busy before sending the command.
     
    #define ARM_MCI_TRANSFER_DATA   (1UL << 5)
     Activate Data transfer.
     
    #define ARM_MCI_CARD_INITIALIZE   (1UL << 6)
     Execute Memory Card initialization sequence.
     
    #define ARM_MCI_INTERRUPT_COMMAND   (1UL << 7)
     Send Interrupt command (CMD40 - MMC only)
     
    #define ARM_MCI_INTERRUPT_RESPONSE   (1UL << 8)
     Send Interrupt response (CMD40 - MMC only)
     
    #define ARM_MCI_BOOT_OPERATION   (1UL << 9)
     Execute Boot operation (MMC only)
     
    #define ARM_MCI_BOOT_ALTERNATIVE   (1UL << 10)
     Execute Alternative Boot operation (MMC only)
     
    #define ARM_MCI_BOOT_ACK   (1UL << 11)
     Expect Boot Acknowledge (MMC only)
     
    #define ARM_MCI_CCSD   (1UL << 12)
     Send Command Completion Signal Disable (CCSD) for CE-ATA device.
     
    #define ARM_MCI_CCS   (1UL << 13)
     Expect Command Completion Signal (CCS) for CE-ATA device.
     
    #define ARM_MCI_TRANSFER_READ   (0UL << 0)
     Data Read Transfer (from MCI)
     
    #define ARM_MCI_TRANSFER_WRITE   (1UL << 0)
     Data Write Transfer (to MCI)
     
    #define ARM_MCI_TRANSFER_BLOCK   (0UL << 1)
     Block Data transfer (default)
     
    #define ARM_MCI_TRANSFER_STREAM   (1UL << 1)
     Stream Data transfer (MMC only)
     
    #define ARM_MCI_BUS_SPEED   (0x01)
     Set Bus Speed; arg = requested speed in bits/s; returns configured speed in bits/s.
     
    #define ARM_MCI_BUS_SPEED_MODE   (0x02)
     Set Bus Speed Mode as specified with arg.
     
    #define ARM_MCI_BUS_CMD_MODE   (0x03)
     Set CMD Line Mode as specified with arg.
     
    #define ARM_MCI_BUS_DATA_WIDTH   (0x04)
     Set Bus Data Width as specified with arg.
     
    #define ARM_MCI_DRIVER_STRENGTH   (0x05)
     Set SD UHS-I Driver Strength as specified with arg.
     
    #define ARM_MCI_CONTROL_RESET   (0x06)
     Control optional RST_n Pin (eMMC); arg: 0=inactive, 1=active.
     
    #define ARM_MCI_CONTROL_CLOCK_IDLE   (0x07)
     Control Clock generation on CLK Pin when idle; arg: 0=disabled, 1=enabled.
     
    #define ARM_MCI_UHS_TUNING_OPERATION   (0x08)
     Sampling clock Tuning operation (SD UHS-I); arg: 0=reset, 1=execute.
     
    #define ARM_MCI_UHS_TUNING_RESULT   (0x09)
     Sampling clock Tuning result (SD UHS-I); returns: 0=done, 1=in progress, -1=error.
     
    #define ARM_MCI_DATA_TIMEOUT   (0x0A)
     Set Data timeout; arg = timeout in bus cycles.
     
    #define ARM_MCI_CSS_TIMEOUT   (0x0B)
     Set Command Completion Signal (CCS) timeout; arg = timeout in bus cycles.
     
    #define ARM_MCI_MONITOR_SDIO_INTERRUPT   (0x0C)
     Monitor SD I/O interrupt: arg: 0=disabled, 1=enabled.
     
    #define ARM_MCI_CONTROL_READ_WAIT   (0x0D)
     Control Read/Wait for SD I/O; arg: 0=disabled, 1=enabled.
     
    #define ARM_MCI_SUSPEND_TRANSFER   (0x0E)
     Suspend Data transfer (SD I/O); returns number of remaining bytes to transfer.
     
    #define ARM_MCI_RESUME_TRANSFER   (0x0F)
     Resume Data transfer (SD I/O)
     
    #define ARM_MCI_BUS_DEFAULT_SPEED   (0x00)
     SD/MMC: Default Speed mode up to 25/26MHz.
     
    #define ARM_MCI_BUS_HIGH_SPEED   (0x01)
     SD/MMC: High Speed mode up to 50/52MHz.
     
    #define ARM_MCI_BUS_UHS_SDR12   (0x02)
     SD: SDR12 (Single Data Rate) up to 25MHz, 12.5MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_SDR25   (0x03)
     SD: SDR25 (Single Data Rate) up to 50MHz, 25 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_SDR50   (0x04)
     SD: SDR50 (Single Data Rate) up to 100MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_SDR104   (0x05)
     SD: SDR104 (Single Data Rate) up to 208MHz, 104 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_DDR50   (0x06)
     SD: DDR50 (Dual Data Rate) up to 50MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_CMD_PUSH_PULL   (0x00)
     Push-Pull CMD line (default)
     
    #define ARM_MCI_BUS_CMD_OPEN_DRAIN   (0x01)
     Open Drain CMD line (MMC only)
     
    #define ARM_MCI_BUS_DATA_WIDTH_1   (0x00)
     Bus data width: 1 bit (default)
     
    #define ARM_MCI_BUS_DATA_WIDTH_4   (0x01)
     Bus data width: 4 bits.
     
    #define ARM_MCI_BUS_DATA_WIDTH_8   (0x02)
     Bus data width: 8 bits.
     
    #define ARM_MCI_BUS_DATA_WIDTH_4_DDR   (0x03)
     Bus data width: 4 bits, DDR (Dual Data Rate) - MMC only.
     
    #define ARM_MCI_BUS_DATA_WIDTH_8_DDR   (0x04)
     Bus data width: 8 bits, DDR (Dual Data Rate) - MMC only.
     
    #define ARM_MCI_DRIVER_TYPE_A   (0x01)
     SD UHS-I Driver Type A.
     
    #define ARM_MCI_DRIVER_TYPE_B   (0x00)
     SD UHS-I Driver Type B (default)
     
    #define ARM_MCI_DRIVER_TYPE_C   (0x02)
     SD UHS-I Driver Type C.
     
    #define ARM_MCI_DRIVER_TYPE_D   (0x03)
     SD UHS-I Driver Type D.
     
    #define ARM_MCI_POWER_VDD_Pos   0
     
    #define ARM_MCI_POWER_VDD_Msk   (0x0FUL << ARM_MCI_POWER_VDD_Pos)
     
    #define ARM_MCI_POWER_VDD_OFF   (0x01UL << ARM_MCI_POWER_VDD_Pos)
     VDD (VCC) turned off.
     
    #define ARM_MCI_POWER_VDD_3V3   (0x02UL << ARM_MCI_POWER_VDD_Pos)
     VDD (VCC) = 3.3V.
     
    #define ARM_MCI_POWER_VDD_1V8   (0x03UL << ARM_MCI_POWER_VDD_Pos)
     VDD (VCC) = 1.8V.
     
    #define ARM_MCI_POWER_VCCQ_Pos   4
     
    #define ARM_MCI_POWER_VCCQ_Msk   (0x0FUL << ARM_MCI_POWER_VCCQ_Pos)
     
    #define ARM_MCI_POWER_VCCQ_OFF   (0x01UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ turned off
     
    #define ARM_MCI_POWER_VCCQ_3V3   (0x02UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ = 3.3V
     
    #define ARM_MCI_POWER_VCCQ_1V8   (0x03UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ = 1.8V
     
    #define ARM_MCI_POWER_VCCQ_1V2   (0x04UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ = 1.2V
     
    #define ARM_MCI_EVENT_CARD_INSERTED   (1UL << 0)
     Memory Card inserted.
     
    #define ARM_MCI_EVENT_CARD_REMOVED   (1UL << 1)
     Memory Card removed.
     
    #define ARM_MCI_EVENT_COMMAND_COMPLETE   (1UL << 2)
     Command completed.
     
    #define ARM_MCI_EVENT_COMMAND_TIMEOUT   (1UL << 3)
     Command timeout.
     
    #define ARM_MCI_EVENT_COMMAND_ERROR   (1UL << 4)
     Command response error (CRC error or invalid response)
     
    #define ARM_MCI_EVENT_TRANSFER_COMPLETE   (1UL << 5)
     Data transfer completed.
     
    #define ARM_MCI_EVENT_TRANSFER_TIMEOUT   (1UL << 6)
     Data transfer timeout.
     
    #define ARM_MCI_EVENT_TRANSFER_ERROR   (1UL << 7)
     Data transfer CRC failed.
     
    #define ARM_MCI_EVENT_SDIO_INTERRUPT   (1UL << 8)
     SD I/O Interrupt.
     
    #define ARM_MCI_EVENT_CCS   (1UL << 9)
     Command Completion Signal (CCS)
     
    #define ARM_MCI_EVENT_CCS_TIMEOUT   (1UL << 10)
     Command Completion Signal (CCS) Timeout.
     
    + + + + +

    +Typedefs

    typedef void(* ARM_MCI_SignalEvent_t )(uint32_t event)
     Pointer to ARM_MCI_SignalEvent : Signal MCI Card Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,02) /* API version */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_Msk   (3UL << ARM_MCI_RESPONSE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VDD_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VDD_Msk   (0x0FUL << ARM_MCI_POWER_VDD_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VCCQ_Pos   4
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VCCQ_Msk   (0x0FUL << ARM_MCI_POWER_VCCQ_Pos)
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8c.html b/CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8c.html new file mode 100644 index 0000000..5cfe690 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8c.html @@ -0,0 +1,192 @@ + + + + + +Driver_NAND.c File Reference +CMSIS-Driver: Driver_NAND.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_NAND.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_NAND_GetVersion (void)
     Get driver version.
     
    ARM_NAND_CAPABILITIES ARM_NAND_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_NAND_Initialize (ARM_NAND_SignalEvent_t cb_event)
     Initialize the NAND Interface.
     
    int32_t ARM_NAND_Uninitialize (void)
     De-initialize the NAND Interface.
     
    int32_t ARM_NAND_PowerControl (ARM_POWER_STATE state)
     Control the NAND interface power.
     
    int32_t ARM_NAND_DevicePower (uint32_t voltage)
     Set device power supply voltage.
     
    int32_t ARM_NAND_WriteProtect (uint32_t dev_num, bool enable)
     Control WPn (Write Protect).
     
    int32_t ARM_NAND_ChipEnable (uint32_t dev_num, bool enable)
     Control CEn (Chip Enable).
     
    int32_t ARM_NAND_GetDeviceBusy (uint32_t dev_num)
     Get Device Busy pin state.
     
    int32_t ARM_NAND_SendCommand (uint32_t dev_num, uint8_t cmd)
     Send command to NAND device.
     
    int32_t ARM_NAND_SendAddress (uint32_t dev_num, uint8_t addr)
     Send address to NAND device.
     
    int32_t ARM_NAND_ReadData (uint32_t dev_num, void *data, uint32_t cnt, uint32_t mode)
     Read data from NAND device.
     
    int32_t ARM_NAND_WriteData (uint32_t dev_num, const void *data, uint32_t cnt, uint32_t mode)
     Write data to NAND device.
     
    int32_t ARM_NAND_ExecuteSequence (uint32_t dev_num, uint32_t code, uint32_t cmd, uint32_t addr_col, uint32_t addr_row, void *data, uint32_t data_cnt, uint8_t *status, uint32_t *count)
     Execute sequence of operations.
     
    int32_t ARM_NAND_AbortSequence (uint32_t dev_num)
     Abort sequence execution.
     
    int32_t ARM_NAND_Control (uint32_t dev_num, uint32_t control, uint32_t arg)
     Control NAND Interface.
     
    ARM_NAND_STATUS ARM_NAND_GetStatus (uint32_t dev_num)
     Get NAND status.
     
    int32_t ARM_NAND_InquireECC (int32_t index, ARM_NAND_ECC_INFO *info)
     Inquire about available ECC.
     
    void ARM_NAND_SignalEvent (uint32_t dev_num, uint32_t event)
     Signal NAND event.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8h.html b/CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8h.html new file mode 100644 index 0000000..373fbfe --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___n_a_n_d_8h.html @@ -0,0 +1,894 @@ + + + + + +Driver_NAND.h File Reference +CMSIS-Driver: Driver_NAND.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_NAND.h File Reference
    +
    +
    + + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_NAND_ECC_INFO
     NAND ECC (Error Correction Code) Information. More...
     
    struct  ARM_NAND_STATUS
     NAND Status. More...
     
    struct  ARM_NAND_CAPABILITIES
     NAND Driver Capabilities. More...
     
    struct  ARM_DRIVER_NAND
     Access structure of the NAND Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_NAND_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
     
    #define ARM_NAND_POWER_VCC_Pos   0
     
    #define ARM_NAND_POWER_VCC_Msk   (0x07UL << ARM_NAND_POWER_VCC_Pos)
     
    #define ARM_NAND_POWER_VCC_OFF   (0x01UL << ARM_NAND_POWER_VCC_Pos)
     VCC Power off.
     
    #define ARM_NAND_POWER_VCC_3V3   (0x02UL << ARM_NAND_POWER_VCC_Pos)
     VCC = 3.3V.
     
    #define ARM_NAND_POWER_VCC_1V8   (0x03UL << ARM_NAND_POWER_VCC_Pos)
     VCC = 1.8V.
     
    #define ARM_NAND_POWER_VCCQ_Pos   3
     
    #define ARM_NAND_POWER_VCCQ_Msk   (0x07UL << ARM_NAND_POWER_VCCQ_Pos)
     
    #define ARM_NAND_POWER_VCCQ_OFF   (0x01UL << ARM_NAND_POWER_VCCQ_Pos)
     VCCQ I/O Power off.
     
    #define ARM_NAND_POWER_VCCQ_3V3   (0x02UL << ARM_NAND_POWER_VCCQ_Pos)
     VCCQ = 3.3V.
     
    #define ARM_NAND_POWER_VCCQ_1V8   (0x03UL << ARM_NAND_POWER_VCCQ_Pos)
     VCCQ = 1.8V.
     
    #define ARM_NAND_POWER_VPP_OFF   (1UL << 6)
     VPP off.
     
    #define ARM_NAND_POWER_VPP_ON   (1Ul << 7)
     VPP on.
     
    #define ARM_NAND_BUS_MODE   (0x01)
     Set Bus Mode as specified with arg.
     
    #define ARM_NAND_BUS_DATA_WIDTH   (0x02)
     Set Bus Data Width as specified with arg.
     
    #define ARM_NAND_DRIVER_STRENGTH   (0x03)
     Set Driver Strength as specified with arg.
     
    #define ARM_NAND_DEVICE_READY_EVENT   (0x04)
     Generate ARM_NAND_EVENT_DEVICE_READY; arg: 0=disabled (default), 1=enabled.
     
    #define ARM_NAND_DRIVER_READY_EVENT   (0x05)
     Generate ARM_NAND_EVENT_DRIVER_READY; arg: 0=disabled (default), 1=enabled.
     
    #define ARM_NAND_BUS_INTERFACE_Pos   4
     
    #define ARM_NAND_BUS_INTERFACE_Msk   (0x03UL << ARM_NAND_BUS_INTERFACE_Pos)
     
    #define ARM_NAND_BUS_SDR   (0x00UL << ARM_NAND_BUS_INTERFACE_Pos)
     Data Interface: SDR (Single Data Rate) - Traditional interface (default)
     
    #define ARM_NAND_BUS_DDR   (0x01UL << ARM_NAND_BUS_INTERFACE_Pos)
     Data Interface: NV-DDR (Double Data Rate)
     
    #define ARM_NAND_BUS_DDR2   (0x02UL << ARM_NAND_BUS_INTERFACE_Pos)
     Data Interface: NV-DDR2 (Double Data Rate)
     
    #define ARM_NAND_BUS_TIMING_MODE_Pos   0
     
    #define ARM_NAND_BUS_TIMING_MODE_Msk   (0x0FUL << ARM_NAND_BUS_TIMING_MODE_Pos)
     
    #define ARM_NAND_BUS_TIMING_MODE_0   (0x00UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 0 (default)
     
    #define ARM_NAND_BUS_TIMING_MODE_1   (0x01UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 1.
     
    #define ARM_NAND_BUS_TIMING_MODE_2   (0x02UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 2.
     
    #define ARM_NAND_BUS_TIMING_MODE_3   (0x03UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 3.
     
    #define ARM_NAND_BUS_TIMING_MODE_4   (0x04UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 4 (SDR EDO capable)
     
    #define ARM_NAND_BUS_TIMING_MODE_5   (0x05UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 5 (SDR EDO capable)
     
    #define ARM_NAND_BUS_TIMING_MODE_6   (0x06UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 6 (NV-DDR2 only)
     
    #define ARM_NAND_BUS_TIMING_MODE_7   (0x07UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 7 (NV-DDR2 only)
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_Pos   8
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_Msk   (0x0FUL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_0   (0x00UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 0 (default)
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_1   (0x01UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 1.
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_2   (0x02UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 2.
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_4   (0x03UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 4.
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_Pos   12
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_Msk   (0x0FUL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_0   (0x00UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 0 (default)
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_1   (0x01UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 1.
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_2   (0x02UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 2.
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_4   (0x03UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 4.
     
    #define ARM_NAND_BUS_DDR2_VEN   (1UL << 16)
     DDR2 Enable external VREFQ as reference.
     
    #define ARM_NAND_BUS_DDR2_CMPD   (1UL << 17)
     DDR2 Enable complementary DQS (DQS_c) signal.
     
    #define ARM_NAND_BUS_DDR2_CMPR   (1UL << 18)
     DDR2 Enable complementary RE_n (RE_c) signal.
     
    #define ARM_NAND_BUS_DATA_WIDTH_8   (0x00)
     Bus Data Width: 8 bit (default)
     
    #define ARM_NAND_BUS_DATA_WIDTH_16   (0x01)
     Bus Data Width: 16 bit.
     
    #define ARM_NAND_DRIVER_STRENGTH_18   (0x00)
     Driver Strength 2.0x = 18 Ohms.
     
    #define ARM_NAND_DRIVER_STRENGTH_25   (0x01)
     Driver Strength 1.4x = 25 Ohms.
     
    #define ARM_NAND_DRIVER_STRENGTH_35   (0x02)
     Driver Strength 1.0x = 35 Ohms (default)
     
    #define ARM_NAND_DRIVER_STRENGTH_50   (0x03)
     Driver Strength 0.7x = 50 Ohms.
     
    #define ARM_NAND_ECC_INDEX_Pos   0
     
    #define ARM_NAND_ECC_INDEX_Msk   (0xFFUL << ARM_NAND_ECC_INDEX_Pos)
     
    #define ARM_NAND_ECC(n)   ((n) & ARM_NAND_ECC_INDEX_Msk)
     Select ECC.
     
    #define ARM_NAND_ECC0   (1UL << 8)
     Use ECC0 of selected ECC.
     
    #define ARM_NAND_ECC1   (1UL << 9)
     Use ECC1 of selected ECC.
     
    #define ARM_NAND_DRIVER_DONE_EVENT   (1UL << 16)
     Generate ARM_NAND_EVENT_DRIVER_DONE.
     
    #define ARM_NAND_CODE_SEND_CMD1   (1UL << 17)
     Send Command 1.
     
    #define ARM_NAND_CODE_SEND_ADDR_COL1   (1UL << 18)
     Send Column Address 1.
     
    #define ARM_NAND_CODE_SEND_ADDR_COL2   (1UL << 19)
     Send Column Address 2.
     
    #define ARM_NAND_CODE_SEND_ADDR_ROW1   (1UL << 20)
     Send Row Address 1.
     
    #define ARM_NAND_CODE_SEND_ADDR_ROW2   (1UL << 21)
     Send Row Address 2.
     
    #define ARM_NAND_CODE_SEND_ADDR_ROW3   (1UL << 22)
     Send Row Address 3.
     
    #define ARM_NAND_CODE_INC_ADDR_ROW   (1UL << 23)
     Auto-increment Row Address.
     
    #define ARM_NAND_CODE_WRITE_DATA   (1UL << 24)
     Write Data.
     
    #define ARM_NAND_CODE_SEND_CMD2   (1UL << 25)
     Send Command 2.
     
    #define ARM_NAND_CODE_WAIT_BUSY   (1UL << 26)
     Wait while R/Bn busy.
     
    #define ARM_NAND_CODE_READ_DATA   (1UL << 27)
     Read Data.
     
    #define ARM_NAND_CODE_SEND_CMD3   (1UL << 28)
     Send Command 3.
     
    #define ARM_NAND_CODE_READ_STATUS   (1UL << 29)
     Read Status byte and check FAIL bit (bit 0)
     
    #define ARM_NAND_CODE_CMD1_Pos   0
     
    #define ARM_NAND_CODE_CMD1_Msk   (0xFFUL << ARM_NAND_CODE_CMD1_Pos)
     
    #define ARM_NAND_CODE_CMD2_Pos   8
     
    #define ARM_NAND_CODE_CMD2_Msk   (0xFFUL << ARM_NAND_CODE_CMD2_Pos)
     
    #define ARM_NAND_CODE_CMD3_Pos   16
     
    #define ARM_NAND_CODE_CMD3_Msk   (0xFFUL << ARM_NAND_CODE_CMD3_Pos)
     
    #define ARM_NAND_CODE_ADDR_COL1_Pos   0
     
    #define ARM_NAND_CODE_ADDR_COL1_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_COL1_Pos)
     
    #define ARM_NAND_CODE_ADDR_COL2_Pos   8
     
    #define ARM_NAND_CODE_ADDR_COL2_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_COL2_Pos)
     
    #define ARM_NAND_CODE_ADDR_ROW1_Pos   0
     
    #define ARM_NAND_CODE_ADDR_ROW1_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_ROW1_Pos)
     
    #define ARM_NAND_CODE_ADDR_ROW2_Pos   8
     
    #define ARM_NAND_CODE_ADDR_ROW2_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_ROW2_Pos)
     
    #define ARM_NAND_CODE_ADDR_ROW3_Pos   16
     
    #define ARM_NAND_CODE_ADDR_ROW3_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_ROW3_Pos)
     
    #define ARM_NAND_ERROR_ECC   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     ECC generation/correction failed.
     
    #define ARM_NAND_EVENT_DEVICE_READY   (1UL << 0)
     Device Ready: R/Bn rising edge.
     
    #define ARM_NAND_EVENT_DRIVER_READY   (1UL << 1)
     Driver Ready.
     
    #define ARM_NAND_EVENT_DRIVER_DONE   (1UL << 2)
     Driver operation done.
     
    #define ARM_NAND_EVENT_ECC_ERROR   (1UL << 3)
     ECC could not correct data.
     
    + + + + +

    +Typedefs

    typedef void(* ARM_NAND_SignalEvent_t )(uint32_t dev_num, uint32_t event)
     Pointer to ARM_NAND_SignalEvent : Signal NAND Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCC_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCC_Msk   (0x07UL << ARM_NAND_POWER_VCC_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCC_OFF   (0x01UL << ARM_NAND_POWER_VCC_Pos)
    +
    + +

    VCC Power off.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCC_3V3   (0x02UL << ARM_NAND_POWER_VCC_Pos)
    +
    + +

    VCC = 3.3V.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCC_1V8   (0x03UL << ARM_NAND_POWER_VCC_Pos)
    +
    + +

    VCC = 1.8V.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCCQ_Pos   3
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCCQ_Msk   (0x07UL << ARM_NAND_POWER_VCCQ_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCCQ_OFF   (0x01UL << ARM_NAND_POWER_VCCQ_Pos)
    +
    + +

    VCCQ I/O Power off.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCCQ_3V3   (0x02UL << ARM_NAND_POWER_VCCQ_Pos)
    +
    + +

    VCCQ = 3.3V.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VCCQ_1V8   (0x03UL << ARM_NAND_POWER_VCCQ_Pos)
    +
    + +

    VCCQ = 1.8V.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VPP_OFF   (1UL << 6)
    +
    + +

    VPP off.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_POWER_VPP_ON   (1Ul << 7)
    +
    + +

    VPP on.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_INTERFACE_Pos   4
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_INTERFACE_Msk   (0x03UL << ARM_NAND_BUS_INTERFACE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_Msk   (0x0FUL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DO_WCYC_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DO_WCYC_Msk   (0x0FUL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DI_WCYC_Pos   12
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DI_WCYC_Msk   (0x0FUL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_ECC_INDEX_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_ECC_INDEX_Msk   (0xFFUL << ARM_NAND_ECC_INDEX_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_CMD1_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_CMD1_Msk   (0xFFUL << ARM_NAND_CODE_CMD1_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_CMD2_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_CMD2_Msk   (0xFFUL << ARM_NAND_CODE_CMD2_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_CMD3_Pos   16
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_CMD3_Msk   (0xFFUL << ARM_NAND_CODE_CMD3_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_COL1_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_COL1_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_COL1_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_COL2_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_COL2_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_COL2_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_ROW1_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_ROW1_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_ROW1_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_ROW2_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_ROW2_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_ROW2_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_ROW3_Pos   16
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_ADDR_ROW3_Msk   (0xFFUL << ARM_NAND_CODE_ADDR_ROW3_Pos)
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___s_a_i_8c.html b/CMSIS/Documentation/Driver/html/_driver___s_a_i_8c.html new file mode 100644 index 0000000..b7525d2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___s_a_i_8c.html @@ -0,0 +1,171 @@ + + + + + +Driver_SAI.c File Reference +CMSIS-Driver: Driver_SAI.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_SAI.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_SAI_GetVersion (void)
     Get driver version.
     
    ARM_SAI_CAPABILITIES ARM_SAI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_SAI_Initialize (ARM_SAI_SignalEvent_t cb_event)
     Initialize SAI Interface.
     
    int32_t ARM_SAI_Uninitialize (void)
     De-initialize SAI Interface.
     
    int32_t ARM_SAI_PowerControl (ARM_POWER_STATE state)
     Control SAI Interface Power.
     
    int32_t ARM_SAI_Send (const void *data, uint32_t num)
     Start sending data to SAI transmitter.
     
    int32_t ARM_SAI_Receive (void *data, uint32_t num)
     Start receiving data from SAI receiver.
     
    uint32_t ARM_SAI_GetTxCount (void)
     Get transmitted data count.
     
    uint32_t ARM_SAI_GetRxCount (void)
     Get received data count.
     
    int32_t ARM_SAI_Control (uint32_t control, uint32_t arg1, uint32_t arg2)
     Control SAI Interface.
     
    ARM_SAI_STATUS ARM_SAI_GetStatus (void)
     Get SAI status.
     
    void ARM_SAI_SignalEvent (uint32_t event)
     Signal SAI Events.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___s_a_i_8h.html b/CMSIS/Documentation/Driver/html/_driver___s_a_i_8h.html new file mode 100644 index 0000000..57fc964 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___s_a_i_8h.html @@ -0,0 +1,813 @@ + + + + + +Driver_SAI.h File Reference +CMSIS-Driver: Driver_SAI.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_SAI.h File Reference
    +
    +
    + + + + + + + + + + + +

    +Data Structures

    struct  ARM_SAI_STATUS
     SAI Status. More...
     
    struct  ARM_SAI_CAPABILITIES
     SAI Driver Capabilities. More...
     
    struct  ARM_DRIVER_SAI
     Access structure of the SAI Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(1,00) /* API version */
     
    #define ARM_SAI_CONTROL_Msk   (0xFFU)
     
    #define ARM_SAI_CONFIGURE_TX   (0x01U)
     Configure Transmitter; arg1 and arg2 provide additional configuration.
     
    #define ARM_SAI_CONFIGURE_RX   (0x02U)
     Configure Receiver; arg1 and arg2 provide additional configuration.
     
    #define ARM_SAI_CONTROL_TX   (0x03U)
     Control Transmitter; arg1.0: 0=disable (default), 1=enable; arg1.1: mute.
     
    #define ARM_SAI_CONTROL_RX   (0x04U)
     Control Receiver; arg1.0: 0=disable (default), 1=enable.
     
    #define ARM_SAI_MASK_SLOTS_TX   (0x05U)
     Mask Transmitter slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.
     
    #define ARM_SAI_MASK_SLOTS_RX   (0x06U)
     Mask Receiver slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.
     
    #define ARM_SAI_ABORT_SEND   (0x07U)
     Abort ARM_SAI_Send.
     
    #define ARM_SAI_ABORT_RECEIVE   (0x08U)
     Abort ARM_SAI_Receive.
     
    #define ARM_SAI_MODE_Pos   8
     
    #define ARM_SAI_MODE_Msk   (1U << ARM_SAI_MODE_Pos)
     
    #define ARM_SAI_MODE_MASTER   (1U << ARM_SAI_MODE_Pos)
     Master Mode.
     
    #define ARM_SAI_MODE_SLAVE   (0U << ARM_SAI_MODE_Pos)
     Slave Mode (default)
     
    #define ARM_SAI_SYNCHRONIZATION_Pos   9
     
    #define ARM_SAI_SYNCHRONIZATION_Msk   (1U << ARM_SAI_SYNCHRONIZATION_Pos)
     
    #define ARM_SAI_ASYNCHRONOUS   (0U << ARM_SAI_SYNCHRONIZATION_Pos)
     Asynchronous (default)
     
    #define ARM_SAI_SYNCHRONOUS   (1U << ARM_SAI_SYNCHRONIZATION_Pos)
     Synchronous.
     
    #define ARM_SAI_PROTOCOL_Pos   10
     
    #define ARM_SAI_PROTOCOL_Msk   (7U << ARM_SAI_PROTOCOL_Pos)
     
    #define ARM_SAI_PROTOCOL_USER   (0U << ARM_SAI_PROTOCOL_Pos)
     User defined (default)
     
    #define ARM_SAI_PROTOCOL_I2S   (1U << ARM_SAI_PROTOCOL_Pos)
     I2S.
     
    #define ARM_SAI_PROTOCOL_MSB_JUSTIFIED   (2U << ARM_SAI_PROTOCOL_Pos)
     MSB (left) justified.
     
    #define ARM_SAI_PROTOCOL_LSB_JUSTIFIED   (3U << ARM_SAI_PROTOCOL_Pos)
     LSB (right) justified.
     
    #define ARM_SAI_PROTOCOL_PCM_SHORT   (4U << ARM_SAI_PROTOCOL_Pos)
     PCM with short frame.
     
    #define ARM_SAI_PROTOCOL_PCM_LONG   (5U << ARM_SAI_PROTOCOL_Pos)
     PCM with long frame.
     
    #define ARM_SAI_PROTOCOL_AC97   (6U << ARM_SAI_PROTOCOL_Pos)
     AC'97.
     
    #define ARM_SAI_DATA_SIZE_Pos   13
     
    #define ARM_SAI_DATA_SIZE_Msk   (0x1FU << ARM_SAI_DATA_SIZE_Pos)
     
    #define ARM_SAI_DATA_SIZE(n)   ((((n)-1)&0x1FU) << ARM_SAI_DATA_SIZE_Pos)
     Data size in bits (8..32)
     
    #define ARM_SAI_BIT_ORDER_Pos   18
     
    #define ARM_SAI_BIT_ORDER_Msk   (1U << ARM_SAI_BIT_ORDER_Pos)
     
    #define ARM_SAI_MSB_FIRST   (0U << ARM_SAI_BIT_ORDER_Pos)
     Data is transferred with MSB first (default)
     
    #define ARM_SAI_LSB_FIRST   (1U << ARM_SAI_BIT_ORDER_Pos)
     Data is transferred with LSB first; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_MONO_MODE   (1U << 19)
     Mono Mode (only for I2S, MSB/LSB justified)
     
    #define ARM_SAI_COMPANDING_Pos   20
     
    #define ARM_SAI_COMPANDING_Msk   (3U << ARM_SAI_COMPANDING_Pos)
     
    #define ARM_SAI_COMPANDING_NONE   (0U << ARM_SAI_COMPANDING_Pos)
     No compading (default)
     
    #define ARM_SAI_COMPANDING_A_LAW   (2U << ARM_SAI_COMPANDING_Pos)
     A-Law companding.
     
    #define ARM_SAI_COMPANDING_U_LAW   (3U << ARM_SAI_COMPANDING_Pos)
     u-Law companding
     
    #define ARM_SAI_CLOCK_POLARITY_Pos   23
     
    #define ARM_SAI_CLOCK_POLARITY_Msk   (1U << ARM_SAI_CLOCK_POLARITY_Pos)
     
    #define ARM_SAI_CLOCK_POLARITY_0   (0U << ARM_SAI_CLOCK_POLARITY_Pos)
     Drive on falling edge, Capture on rising edge (default)
     
    #define ARM_SAI_CLOCK_POLARITY_1   (1U << ARM_SAI_CLOCK_POLARITY_Pos)
     Drive on rising edge, Capture on falling edge.
     
    #define ARM_SAI_MCLK_PIN_Pos   24
     
    #define ARM_SAI_MCLK_PIN_Msk   (3U << ARM_SAI_MCLK_PIN_Pos)
     
    #define ARM_SAI_MCLK_PIN_INACTIVE   (0U << ARM_SAI_MCLK_PIN_Pos)
     MCLK not used (default)
     
    #define ARM_SAI_MCLK_PIN_OUTPUT   (1U << ARM_SAI_MCLK_PIN_Pos)
     MCLK is output (Master only)
     
    #define ARM_SAI_MCLK_PIN_INPUT   (2U << ARM_SAI_MCLK_PIN_Pos)
     MCLK is input (Master only)
     
    #define ARM_SAI_FRAME_LENGTH_Pos   0
     
    #define ARM_SAI_FRAME_LENGTH_Msk   (0x3FFU << ARM_SAI_FRAME_LENGTH_Pos)
     
    #define ARM_SAI_FRAME_LENGTH(n)   ((((n)-1)&0x3FFU) << ARM_SAI_FRAME_LENGTH_Pos)
     Frame length in bits (8..1024); default depends on protocol and data.
     
    #define ARM_SAI_FRAME_SYNC_WIDTH_Pos   10
     
    #define ARM_SAI_FRAME_SYNC_WIDTH_Msk   (0xFFU << ARM_SAI_FRAME_SYNC_WIDTH_Pos)
     
    #define ARM_SAI_FRAME_SYNC_WIDTH(n)   ((((n)-1)&0xFFU) << ARM_SAI_FRAME_SYNC_WIDTH_Pos)
     Frame Sync width in bits (1..256); default=1; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_FRAME_SYNC_POLARITY_Pos   18
     
    #define ARM_SAI_FRAME_SYNC_POLARITY_Msk   (1U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
     
    #define ARM_SAI_FRAME_SYNC_POLARITY_HIGH   (0U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
     Frame Sync is active high (default); User Protocol only (ignored otherwise)
     
    #define ARM_SAI_FRAME_SYNC_POLARITY_LOW   (1U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
     Frame Sync is active low; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_FRAME_SYNC_EARLY   (1U << 19)
     Frame Sync one bit before the first bit of the frame; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_SLOT_COUNT_Pos   20
     
    #define ARM_SAI_SLOT_COUNT_Msk   (0x1FU << ARM_SAI_SLOT_COUNT_Pos)
     
    #define ARM_SAI_SLOT_COUNT(n)   ((((n)-1)&0x1FU) << ARM_SAI_SLOT_COUNT_Pos)
     Number of slots in frame (1..32); default=1; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_SLOT_SIZE_Pos   25
     
    #define ARM_SAI_SLOT_SIZE_Msk   (3U << ARM_SAI_SLOT_SIZE_Pos)
     
    #define ARM_SAI_SLOT_SIZE_DEFAULT   (0U << ARM_SAI_SLOT_SIZE_Pos)
     Slot size is equal to data size (default)
     
    #define ARM_SAI_SLOT_SIZE_16   (1U << ARM_SAI_SLOT_SIZE_Pos)
     Slot size = 16 bits; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_SLOT_SIZE_32   (3U << ARM_SAI_SLOT_SIZE_Pos)
     Slot size = 32 bits; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_SLOT_OFFSET_Pos   27
     
    #define ARM_SAI_SLOT_OFFSET_Msk   (0x1FU << ARM_SAI_SLOT_OFFSET_Pos)
     
    #define ARM_SAI_SLOT_OFFSET(n)   (((n)&0x1FU) << ARM_SAI_SLOT_OFFSET_Pos)
     Offset of first data bit in slot (0..31); default=0; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_AUDIO_FREQ_Msk   (0x0FFFFFU)
     Audio frequency mask.
     
    #define ARM_SAI_MCLK_PRESCALER_Pos   20
     
    #define ARM_SAI_MCLK_PRESCALER_Msk   (0xFFFU << ARM_SAI_MCLK_PRESCALER_Pos)
     
    #define ARM_SAI_MCLK_PRESCALER(n)   ((((n)-1)&0xFFFU) << ARM_SAI_MCLK_PRESCALER_Pos)
     MCLK prescaler; Audio_frequency = MCLK/n; n = 1..4096 (default=1)
     
    #define ARM_SAI_ERROR_SYNCHRONIZATION   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     Specified Synchronization not supported.
     
    #define ARM_SAI_ERROR_PROTOCOL   (ARM_DRIVER_ERROR_SPECIFIC - 2)
     Specified Protocol not supported.
     
    #define ARM_SAI_ERROR_DATA_SIZE   (ARM_DRIVER_ERROR_SPECIFIC - 3)
     Specified Data size not supported.
     
    #define ARM_SAI_ERROR_BIT_ORDER   (ARM_DRIVER_ERROR_SPECIFIC - 4)
     Specified Bit order not supported.
     
    #define ARM_SAI_ERROR_MONO_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 5)
     Specified Mono mode not supported.
     
    #define ARM_SAI_ERROR_COMPANDING   (ARM_DRIVER_ERROR_SPECIFIC - 6)
     Specified Companding not supported.
     
    #define ARM_SAI_ERROR_CLOCK_POLARITY   (ARM_DRIVER_ERROR_SPECIFIC - 7)
     Specified Clock polarity not supported.
     
    #define ARM_SAI_ERROR_AUDIO_FREQ   (ARM_DRIVER_ERROR_SPECIFIC - 8)
     Specified Audio frequency not supported.
     
    #define ARM_SAI_ERROR_MCLK_PIN   (ARM_DRIVER_ERROR_SPECIFIC - 9)
     Specified MCLK Pin setting not supported.
     
    #define ARM_SAI_ERROR_MCLK_PRESCALER   (ARM_DRIVER_ERROR_SPECIFIC - 10)
     Specified MCLK Prescaler not supported.
     
    #define ARM_SAI_ERROR_FRAME_LENGHT   (ARM_DRIVER_ERROR_SPECIFIC - 11)
     Specified Frame length not supported.
     
    #define ARM_SAI_ERROR_FRAME_SYNC_WIDTH   (ARM_DRIVER_ERROR_SPECIFIC - 12)
     Specified Frame Sync width not supported.
     
    #define ARM_SAI_ERROR_FRAME_SYNC_POLARITY   (ARM_DRIVER_ERROR_SPECIFIC - 13)
     Specified Frame Sync polarity not supported.
     
    #define ARM_SAI_ERROR_FRAME_SYNC_EARLY   (ARM_DRIVER_ERROR_SPECIFIC - 14)
     Specified Frame Sync early not supported.
     
    #define ARM_SAI_ERROR_SLOT_COUNT   (ARM_DRIVER_ERROR_SPECIFIC - 15)
     Specified Slot count not supported.
     
    #define ARM_SAI_ERROR_SLOT_SIZE   (ARM_DRIVER_ERROR_SPECIFIC - 16)
     Specified Slot size not supported.
     
    #define ARM_SAI_ERROR_SLOT_OFFESET   (ARM_DRIVER_ERROR_SPECIFIC - 17)
     Specified Slot offset not supported.
     
    #define ARM_SAI_EVENT_SEND_COMPLETE   (1U << 0)
     Send completed.
     
    #define ARM_SAI_EVENT_RECEIVE_COMPLETE   (1U << 1)
     Receive completed.
     
    #define ARM_SAI_EVENT_TX_UNDERFLOW   (1U << 2)
     Transmit data not available.
     
    #define ARM_SAI_EVENT_RX_OVERFLOW   (1U << 3)
     Receive data overflow.
     
    #define ARM_SAI_EVENT_FRAME_ERROR   (1U << 4)
     Sync Frame error in Slave mode (optional)
     
    + + + + +

    +Typedefs

    typedef void(* ARM_SAI_SignalEvent_t )(uint32_t event)
     Pointer to ARM_SAI_SignalEvent : Signal SAI Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(1,00) /* API version */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_CONTROL_Msk   (0xFFU)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MODE_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MODE_Msk   (1U << ARM_SAI_MODE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SYNCHRONIZATION_Pos   9
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SYNCHRONIZATION_Msk   (1U << ARM_SAI_SYNCHRONIZATION_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_Pos   10
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_Msk   (7U << ARM_SAI_PROTOCOL_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_DATA_SIZE_Pos   13
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_DATA_SIZE_Msk   (0x1FU << ARM_SAI_DATA_SIZE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_BIT_ORDER_Pos   18
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_BIT_ORDER_Msk   (1U << ARM_SAI_BIT_ORDER_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_COMPANDING_Pos   20
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_COMPANDING_Msk   (3U << ARM_SAI_COMPANDING_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_CLOCK_POLARITY_Pos   23
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_CLOCK_POLARITY_Msk   (1U << ARM_SAI_CLOCK_POLARITY_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MCLK_PIN_Pos   24
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MCLK_PIN_Msk   (3U << ARM_SAI_MCLK_PIN_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_LENGTH_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_LENGTH_Msk   (0x3FFU << ARM_SAI_FRAME_LENGTH_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_SYNC_WIDTH_Pos   10
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_SYNC_WIDTH_Msk   (0xFFU << ARM_SAI_FRAME_SYNC_WIDTH_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_SYNC_POLARITY_Pos   18
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_SYNC_POLARITY_Msk   (1U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_COUNT_Pos   20
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_COUNT_Msk   (0x1FU << ARM_SAI_SLOT_COUNT_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_SIZE_Pos   25
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_SIZE_Msk   (3U << ARM_SAI_SLOT_SIZE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_OFFSET_Pos   27
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_OFFSET_Msk   (0x1FU << ARM_SAI_SLOT_OFFSET_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_AUDIO_FREQ_Msk   (0x0FFFFFU)
    +
    + +

    Audio frequency mask.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MCLK_PRESCALER_Pos   20
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MCLK_PRESCALER_Msk   (0xFFFU << ARM_SAI_MCLK_PRESCALER_Pos)
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___s_p_i_8c.html b/CMSIS/Documentation/Driver/html/_driver___s_p_i_8c.html new file mode 100644 index 0000000..ca5b812 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___s_p_i_8c.html @@ -0,0 +1,171 @@ + + + + + +Driver_SPI.c File Reference +CMSIS-Driver: Driver_SPI.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_SPI.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_SPI_GetVersion (void)
     Get driver version.
     
    ARM_SPI_CAPABILITIES ARM_SPI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_SPI_Initialize (ARM_SPI_SignalEvent_t cb_event)
     Initialize SPI Interface.
     
    int32_t ARM_SPI_Uninitialize (void)
     De-initialize SPI Interface.
     
    int32_t ARM_SPI_PowerControl (ARM_POWER_STATE state)
     Control SPI Interface Power.
     
    int32_t ARM_SPI_Send (const void *data, uint32_t num)
     Start sending data to SPI transmitter.
     
    int32_t ARM_SPI_Receive (void *data, uint32_t num)
     Start receiving data from SPI receiver.
     
    int32_t ARM_SPI_Transfer (const void *data_out, void *data_in, uint32_t num)
     Start sending/receiving data to/from SPI transmitter/receiver.
     
    uint32_t ARM_SPI_GetDataCount (void)
     Get transferred data count.
     
    int32_t ARM_SPI_Control (uint32_t control, uint32_t arg)
     Control SPI Interface.
     
    ARM_SPI_STATUS ARM_SPI_GetStatus (void)
     Get SPI status.
     
    void ARM_SPI_SignalEvent (uint32_t event)
     Signal SPI Events.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___s_p_i_8h.html b/CMSIS/Documentation/Driver/html/_driver___s_p_i_8h.html new file mode 100644 index 0000000..04212d5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___s_p_i_8h.html @@ -0,0 +1,471 @@ + + + + + +Driver_SPI.h File Reference +CMSIS-Driver: Driver_SPI.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_SPI.h File Reference
    +
    +
    + + + + + + + + + + + +

    +Data Structures

    struct  ARM_SPI_STATUS
     SPI Status. More...
     
    struct  ARM_SPI_CAPABILITIES
     SPI Driver Capabilities. More...
     
    struct  ARM_DRIVER_SPI
     Access structure of the SPI Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SPI_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,00) /* API version */
     
    #define ARM_SPI_CONTROL_Pos   0
     
    #define ARM_SPI_CONTROL_Msk   (0xFFUL << ARM_SPI_CONTROL_Pos)
     
    #define ARM_SPI_MODE_INACTIVE   (0x00UL << ARM_SPI_CONTROL_Pos)
     SPI Inactive.
     
    #define ARM_SPI_MODE_MASTER   (0x01UL << ARM_SPI_CONTROL_Pos)
     SPI Master (Output on MOSI, Input on MISO); arg = Bus Speed in bps.
     
    #define ARM_SPI_MODE_SLAVE   (0x02UL << ARM_SPI_CONTROL_Pos)
     SPI Slave (Output on MISO, Input on MOSI)
     
    #define ARM_SPI_MODE_MASTER_SIMPLEX   (0x03UL << ARM_SPI_CONTROL_Pos)
     SPI Master (Output/Input on MOSI); arg = Bus Speed in bps.
     
    #define ARM_SPI_MODE_SLAVE_SIMPLEX   (0x04UL << ARM_SPI_CONTROL_Pos)
     SPI Slave (Output/Input on MISO)
     
    #define ARM_SPI_FRAME_FORMAT_Pos   8
     
    #define ARM_SPI_FRAME_FORMAT_Msk   (7UL << ARM_SPI_FRAME_FORMAT_Pos)
     
    #define ARM_SPI_CPOL0_CPHA0   (0UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 0, Clock Phase 0 (default)
     
    #define ARM_SPI_CPOL0_CPHA1   (1UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 0, Clock Phase 1.
     
    #define ARM_SPI_CPOL1_CPHA0   (2UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 1, Clock Phase 0.
     
    #define ARM_SPI_CPOL1_CPHA1   (3UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 1, Clock Phase 1.
     
    #define ARM_SPI_TI_SSI   (4UL << ARM_SPI_FRAME_FORMAT_Pos)
     Texas Instruments Frame Format.
     
    #define ARM_SPI_MICROWIRE   (5UL << ARM_SPI_FRAME_FORMAT_Pos)
     National Microwire Frame Format.
     
    #define ARM_SPI_DATA_BITS_Pos   12
     
    #define ARM_SPI_DATA_BITS_Msk   (0x3FUL << ARM_SPI_DATA_BITS_Pos)
     
    #define ARM_SPI_DATA_BITS(n)   (((n) & 0x3F) << ARM_SPI_DATA_BITS_Pos)
     Number of Data bits.
     
    #define ARM_SPI_BIT_ORDER_Pos   18
     
    #define ARM_SPI_BIT_ORDER_Msk   (1UL << ARM_SPI_BIT_ORDER_Pos)
     
    #define ARM_SPI_MSB_LSB   (0UL << ARM_SPI_BIT_ORDER_Pos)
     SPI Bit order from MSB to LSB (default)
     
    #define ARM_SPI_LSB_MSB   (1UL << ARM_SPI_BIT_ORDER_Pos)
     SPI Bit order from LSB to MSB.
     
    #define ARM_SPI_SS_MASTER_MODE_Pos   19
     
    #define ARM_SPI_SS_MASTER_MODE_Msk   (3UL << ARM_SPI_SS_MASTER_MODE_Pos)
     
    #define ARM_SPI_SS_MASTER_UNUSED   (0UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Not used (default)
     
    #define ARM_SPI_SS_MASTER_SW   (1UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Software controlled.
     
    #define ARM_SPI_SS_MASTER_HW_OUTPUT   (2UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Hardware controlled Output.
     
    #define ARM_SPI_SS_MASTER_HW_INPUT   (3UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Hardware monitored Input.
     
    #define ARM_SPI_SS_SLAVE_MODE_Pos   21
     
    #define ARM_SPI_SS_SLAVE_MODE_Msk   (1UL << ARM_SPI_SS_SLAVE_MODE_Pos)
     
    #define ARM_SPI_SS_SLAVE_HW   (0UL << ARM_SPI_SS_SLAVE_MODE_Pos)
     SPI Slave Select when Slave: Hardware monitored (default)
     
    #define ARM_SPI_SS_SLAVE_SW   (1UL << ARM_SPI_SS_SLAVE_MODE_Pos)
     SPI Slave Select when Slave: Software controlled.
     
    #define ARM_SPI_SET_BUS_SPEED   (0x10UL << ARM_SPI_CONTROL_Pos)
     Set Bus Speed in bps; arg = value.
     
    #define ARM_SPI_GET_BUS_SPEED   (0x11UL << ARM_SPI_CONTROL_Pos)
     Get Bus Speed in bps.
     
    #define ARM_SPI_SET_DEFAULT_TX_VALUE   (0x12UL << ARM_SPI_CONTROL_Pos)
     Set default Transmit value; arg = value.
     
    #define ARM_SPI_CONTROL_SS   (0x13UL << ARM_SPI_CONTROL_Pos)
     Control Slave Select; arg: 0=inactive, 1=active.
     
    #define ARM_SPI_ABORT_TRANSFER   (0x14UL << ARM_SPI_CONTROL_Pos)
     Abort current data transfer.
     
    #define ARM_SPI_SS_INACTIVE   0
     SPI Slave Select Signal Inactive.
     
    #define ARM_SPI_SS_ACTIVE   1
     SPI Slave Select Signal Active.
     
    #define ARM_SPI_ERROR_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     Specified Mode not supported.
     
    #define ARM_SPI_ERROR_FRAME_FORMAT   (ARM_DRIVER_ERROR_SPECIFIC - 2)
     Specified Frame Format not supported.
     
    #define ARM_SPI_ERROR_DATA_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 3)
     Specified number of Data bits not supported.
     
    #define ARM_SPI_ERROR_BIT_ORDER   (ARM_DRIVER_ERROR_SPECIFIC - 4)
     Specified Bit order not supported.
     
    #define ARM_SPI_ERROR_SS_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 5)
     Specified Slave Select Mode not supported.
     
    #define ARM_SPI_EVENT_TRANSFER_COMPLETE   (1UL << 0)
     Data Transfer completed.
     
    #define ARM_SPI_EVENT_DATA_LOST   (1UL << 1)
     Data lost: Receive overflow / Transmit underflow.
     
    #define ARM_SPI_EVENT_MODE_FAULT   (1UL << 2)
     Master Mode Fault (SS deactivated when Master)
     
    + + + + +

    +Typedefs

    typedef void(* ARM_SPI_SignalEvent_t )(uint32_t event)
     Pointer to ARM_SPI_SignalEvent : Signal SPI Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,00) /* API version */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_CONTROL_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_CONTROL_Msk   (0xFFUL << ARM_SPI_CONTROL_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_FRAME_FORMAT_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_FRAME_FORMAT_Msk   (7UL << ARM_SPI_FRAME_FORMAT_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_DATA_BITS_Pos   12
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_DATA_BITS_Msk   (0x3FUL << ARM_SPI_DATA_BITS_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_BIT_ORDER_Pos   18
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_BIT_ORDER_Msk   (1UL << ARM_SPI_BIT_ORDER_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_MASTER_MODE_Pos   19
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_MASTER_MODE_Msk   (3UL << ARM_SPI_SS_MASTER_MODE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_SLAVE_MODE_Pos   21
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_SLAVE_MODE_Msk   (1UL << ARM_SPI_SS_SLAVE_MODE_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_INACTIVE   0
    +
    + +

    SPI Slave Select Signal Inactive.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_ACTIVE   1
    +
    + +

    SPI Slave Select Signal Active.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8c.html b/CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8c.html new file mode 100644 index 0000000..167c1ba --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8c.html @@ -0,0 +1,180 @@ + + + + + +Driver_USART.c File Reference +CMSIS-Driver: Driver_USART.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_USART.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_USART_GetVersion (void)
     Get driver version.
     
    ARM_USART_CAPABILITIES ARM_USART_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USART_Initialize (ARM_USART_SignalEvent_t cb_event)
     Initialize USART Interface.
     
    int32_t ARM_USART_Uninitialize (void)
     De-initialize USART Interface.
     
    int32_t ARM_USART_PowerControl (ARM_POWER_STATE state)
     Control USART Interface Power.
     
    int32_t ARM_USART_Send (const void *data, uint32_t num)
     Start sending data to USART transmitter.
     
    int32_t ARM_USART_Receive (void *data, uint32_t num)
     Start receiving data from USART receiver.
     
    int32_t ARM_USART_Transfer (const void *data_out, void *data_in, uint32_t num)
     Start sending/receiving data to/from USART transmitter/receiver.
     
    uint32_t ARM_USART_GetTxCount (void)
     Get transmitted data count.
     
    uint32_t ARM_USART_GetRxCount (void)
     Get received data count.
     
    int32_t ARM_USART_Control (uint32_t control, uint32_t arg)
     Control USART Interface.
     
    ARM_USART_STATUS ARM_USART_GetStatus (void)
     Get USART status.
     
    int32_t ARM_USART_SetModemControl (ARM_USART_MODEM_CONTROL control)
     Set USART Modem Control line state.
     
    ARM_USART_MODEM_STATUS ARM_USART_GetModemStatus (void)
     Get USART Modem Status lines state.
     
    void ARM_USART_SignalEvent (uint32_t event)
     Signal USART Events.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8h.html b/CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8h.html new file mode 100644 index 0000000..d07a140 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_a_r_t_8h.html @@ -0,0 +1,562 @@ + + + + + +Driver_USART.h File Reference +CMSIS-Driver: Driver_USART.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_USART.h File Reference
    +
    +
    + + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_USART_STATUS
     USART Status. More...
     
    struct  ARM_USART_MODEM_STATUS
     USART Modem Status. More...
     
    struct  ARM_USART_CAPABILITIES
     USART Device Driver Capabilities. More...
     
    struct  ARM_DRIVER_USART
     Access structure of the USART Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,02) /* API version */
     
    #define ARM_USART_CONTROL_Pos   0
     
    #define ARM_USART_CONTROL_Msk   (0xFFUL << ARM_USART_CONTROL_Pos)
     
    #define ARM_USART_MODE_ASYNCHRONOUS   (0x01UL << ARM_USART_CONTROL_Pos)
     UART (Asynchronous); arg = Baudrate.
     
    #define ARM_USART_MODE_SYNCHRONOUS_MASTER   (0x02UL << ARM_USART_CONTROL_Pos)
     Synchronous Master (generates clock signal); arg = Baudrate.
     
    #define ARM_USART_MODE_SYNCHRONOUS_SLAVE   (0x03UL << ARM_USART_CONTROL_Pos)
     Synchronous Slave (external clock signal)
     
    #define ARM_USART_MODE_SINGLE_WIRE   (0x04UL << ARM_USART_CONTROL_Pos)
     UART Single-wire (half-duplex); arg = Baudrate.
     
    #define ARM_USART_MODE_IRDA   (0x05UL << ARM_USART_CONTROL_Pos)
     UART IrDA; arg = Baudrate.
     
    #define ARM_USART_MODE_SMART_CARD   (0x06UL << ARM_USART_CONTROL_Pos)
     UART Smart Card; arg = Baudrate.
     
    #define ARM_USART_DATA_BITS_Pos   8
     
    #define ARM_USART_DATA_BITS_Msk   (7UL << ARM_USART_DATA_BITS_Pos)
     
    #define ARM_USART_DATA_BITS_5   (5UL << ARM_USART_DATA_BITS_Pos)
     5 Data bits
     
    #define ARM_USART_DATA_BITS_6   (6UL << ARM_USART_DATA_BITS_Pos)
     6 Data bit
     
    #define ARM_USART_DATA_BITS_7   (7UL << ARM_USART_DATA_BITS_Pos)
     7 Data bits
     
    #define ARM_USART_DATA_BITS_8   (0UL << ARM_USART_DATA_BITS_Pos)
     8 Data bits (default)
     
    #define ARM_USART_DATA_BITS_9   (1UL << ARM_USART_DATA_BITS_Pos)
     9 Data bits
     
    #define ARM_USART_PARITY_Pos   12
     
    #define ARM_USART_PARITY_Msk   (3UL << ARM_USART_PARITY_Pos)
     
    #define ARM_USART_PARITY_NONE   (0UL << ARM_USART_PARITY_Pos)
     No Parity (default)
     
    #define ARM_USART_PARITY_EVEN   (1UL << ARM_USART_PARITY_Pos)
     Even Parity.
     
    #define ARM_USART_PARITY_ODD   (2UL << ARM_USART_PARITY_Pos)
     Odd Parity.
     
    #define ARM_USART_STOP_BITS_Pos   14
     
    #define ARM_USART_STOP_BITS_Msk   (3UL << ARM_USART_STOP_BITS_Pos)
     
    #define ARM_USART_STOP_BITS_1   (0UL << ARM_USART_STOP_BITS_Pos)
     1 Stop bit (default)
     
    #define ARM_USART_STOP_BITS_2   (1UL << ARM_USART_STOP_BITS_Pos)
     2 Stop bits
     
    #define ARM_USART_STOP_BITS_1_5   (2UL << ARM_USART_STOP_BITS_Pos)
     1.5 Stop bits
     
    #define ARM_USART_STOP_BITS_0_5   (3UL << ARM_USART_STOP_BITS_Pos)
     0.5 Stop bits
     
    #define ARM_USART_FLOW_CONTROL_Pos   16
     
    #define ARM_USART_FLOW_CONTROL_Msk   (3UL << ARM_USART_FLOW_CONTROL_Pos)
     
    #define ARM_USART_FLOW_CONTROL_NONE   (0UL << ARM_USART_FLOW_CONTROL_Pos)
     No Flow Control (default)
     
    #define ARM_USART_FLOW_CONTROL_RTS   (1UL << ARM_USART_FLOW_CONTROL_Pos)
     RTS Flow Control.
     
    #define ARM_USART_FLOW_CONTROL_CTS   (2UL << ARM_USART_FLOW_CONTROL_Pos)
     CTS Flow Control.
     
    #define ARM_USART_FLOW_CONTROL_RTS_CTS   (3UL << ARM_USART_FLOW_CONTROL_Pos)
     RTS/CTS Flow Control.
     
    #define ARM_USART_CPOL_Pos   18
     
    #define ARM_USART_CPOL_Msk   (1UL << ARM_USART_CPOL_Pos)
     
    #define ARM_USART_CPOL0   (0UL << ARM_USART_CPOL_Pos)
     CPOL = 0 (default)
     
    #define ARM_USART_CPOL1   (1UL << ARM_USART_CPOL_Pos)
     CPOL = 1.
     
    #define ARM_USART_CPHA_Pos   19
     
    #define ARM_USART_CPHA_Msk   (1UL << ARM_USART_CPHA_Pos)
     
    #define ARM_USART_CPHA0   (0UL << ARM_USART_CPHA_Pos)
     CPHA = 0 (default)
     
    #define ARM_USART_CPHA1   (1UL << ARM_USART_CPHA_Pos)
     CPHA = 1.
     
    #define ARM_USART_SET_DEFAULT_TX_VALUE   (0x10UL << ARM_USART_CONTROL_Pos)
     Set default Transmit value (Synchronous Receive only); arg = value.
     
    #define ARM_USART_SET_IRDA_PULSE   (0x11UL << ARM_USART_CONTROL_Pos)
     Set IrDA Pulse in ns; arg: 0=3/16 of bit period.
     
    #define ARM_USART_SET_SMART_CARD_GUARD_TIME   (0x12UL << ARM_USART_CONTROL_Pos)
     Set Smart Card Guard Time; arg = number of bit periods.
     
    #define ARM_USART_SET_SMART_CARD_CLOCK   (0x13UL << ARM_USART_CONTROL_Pos)
     Set Smart Card Clock in Hz; arg: 0=Clock not generated.
     
    #define ARM_USART_CONTROL_SMART_CARD_NACK   (0x14UL << ARM_USART_CONTROL_Pos)
     Smart Card NACK generation; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_CONTROL_TX   (0x15UL << ARM_USART_CONTROL_Pos)
     Transmitter; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_CONTROL_RX   (0x16UL << ARM_USART_CONTROL_Pos)
     Receiver; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_CONTROL_BREAK   (0x17UL << ARM_USART_CONTROL_Pos)
     Continuous Break transmission; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_ABORT_SEND   (0x18UL << ARM_USART_CONTROL_Pos)
     Abort ARM_USART_Send.
     
    #define ARM_USART_ABORT_RECEIVE   (0x19UL << ARM_USART_CONTROL_Pos)
     Abort ARM_USART_Receive.
     
    #define ARM_USART_ABORT_TRANSFER   (0x1AUL << ARM_USART_CONTROL_Pos)
     Abort ARM_USART_Transfer.
     
    #define ARM_USART_ERROR_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     Specified Mode not supported.
     
    #define ARM_USART_ERROR_BAUDRATE   (ARM_DRIVER_ERROR_SPECIFIC - 2)
     Specified baudrate not supported.
     
    #define ARM_USART_ERROR_DATA_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 3)
     Specified number of Data bits not supported.
     
    #define ARM_USART_ERROR_PARITY   (ARM_DRIVER_ERROR_SPECIFIC - 4)
     Specified Parity not supported.
     
    #define ARM_USART_ERROR_STOP_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 5)
     Specified number of Stop bits not supported.
     
    #define ARM_USART_ERROR_FLOW_CONTROL   (ARM_DRIVER_ERROR_SPECIFIC - 6)
     Specified Flow Control not supported.
     
    #define ARM_USART_ERROR_CPOL   (ARM_DRIVER_ERROR_SPECIFIC - 7)
     Specified Clock Polarity not supported.
     
    #define ARM_USART_ERROR_CPHA   (ARM_DRIVER_ERROR_SPECIFIC - 8)
     Specified Clock Phase not supported.
     
    #define ARM_USART_EVENT_SEND_COMPLETE   (1UL << 0)
     Send completed; however USART may still transmit data.
     
    #define ARM_USART_EVENT_RECEIVE_COMPLETE   (1UL << 1)
     Receive completed.
     
    #define ARM_USART_EVENT_TRANSFER_COMPLETE   (1UL << 2)
     Transfer completed.
     
    #define ARM_USART_EVENT_TX_COMPLETE   (1UL << 3)
     Transmit completed (optional)
     
    #define ARM_USART_EVENT_TX_UNDERFLOW   (1UL << 4)
     Transmit data not available (Synchronous Slave)
     
    #define ARM_USART_EVENT_RX_OVERFLOW   (1UL << 5)
     Receive data overflow.
     
    #define ARM_USART_EVENT_RX_TIMEOUT   (1UL << 6)
     Receive character timeout (optional)
     
    #define ARM_USART_EVENT_RX_BREAK   (1UL << 7)
     Break detected on receive.
     
    #define ARM_USART_EVENT_RX_FRAMING_ERROR   (1UL << 8)
     Framing error detected on receive.
     
    #define ARM_USART_EVENT_RX_PARITY_ERROR   (1UL << 9)
     Parity error detected on receive.
     
    #define ARM_USART_EVENT_CTS   (1UL << 10)
     CTS state changed (optional)
     
    #define ARM_USART_EVENT_DSR   (1UL << 11)
     DSR state changed (optional)
     
    #define ARM_USART_EVENT_DCD   (1UL << 12)
     DCD state changed (optional)
     
    #define ARM_USART_EVENT_RI   (1UL << 13)
     RI state changed (optional)
     
    + + + + +

    +Typedefs

    typedef void(* ARM_USART_SignalEvent_t )(uint32_t event)
     Pointer to ARM_USART_SignalEvent : Signal USART Event.
     
    + + + + +

    +Enumerations

    enum  ARM_USART_MODEM_CONTROL {
    +  ARM_USART_RTS_CLEAR, +
    +  ARM_USART_RTS_SET, +
    +  ARM_USART_DTR_CLEAR, +
    +  ARM_USART_DTR_SET +
    + }
     USART Modem Control. More...
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,02) /* API version */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CONTROL_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CONTROL_Msk   (0xFFUL << ARM_USART_CONTROL_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_DATA_BITS_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_DATA_BITS_Msk   (7UL << ARM_USART_DATA_BITS_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_PARITY_Pos   12
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_PARITY_Msk   (3UL << ARM_USART_PARITY_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_STOP_BITS_Pos   14
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_STOP_BITS_Msk   (3UL << ARM_USART_STOP_BITS_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_FLOW_CONTROL_Pos   16
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_FLOW_CONTROL_Msk   (3UL << ARM_USART_FLOW_CONTROL_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CPOL_Pos   18
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CPOL_Msk   (1UL << ARM_USART_CPOL_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CPHA_Pos   19
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CPHA_Msk   (1UL << ARM_USART_CPHA_Pos)
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_b_8c.html b/CMSIS/Documentation/Driver/html/_driver___u_s_b_8c.html new file mode 100644 index 0000000..8c1620b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_b_8c.html @@ -0,0 +1,129 @@ + + + + + +Driver_USB.c File Reference +CMSIS-Driver: Driver_USB.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_b_8h.html b/CMSIS/Documentation/Driver/html/_driver___u_s_b_8h.html new file mode 100644 index 0000000..54747b2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_b_8h.html @@ -0,0 +1,620 @@ + + + + + +Driver_USB.h File Reference +CMSIS-Driver: Driver_USB.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_USB.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USB_ROLE_NONE   0
     
    #define ARM_USB_ROLE_HOST   1
     
    #define ARM_USB_ROLE_DEVICE   2
     
    #define ARM_USB_PIN_DP   (1 << 0)
     USB D+ pin.
     
    #define ARM_USB_PIN_DM   (1 << 1)
     USB D- pin.
     
    #define ARM_USB_PIN_VBUS   (1 << 2)
     USB VBUS pin.
     
    #define ARM_USB_PIN_OC   (1 << 3)
     USB OverCurrent pin.
     
    #define ARM_USB_PIN_ID   (1 << 4)
     USB ID pin.
     
    #define ARM_USB_SPEED_LOW   0
     Low-speed USB.
     
    #define ARM_USB_SPEED_FULL   1
     Full-speed USB.
     
    #define ARM_USB_SPEED_HIGH   2
     High-speed USB.
     
    #define ARM_USB_PID_OUT   1
     
    #define ARM_USB_PID_IN   9
     
    #define ARM_USB_PID_SOF   5
     
    #define ARM_USB_PID_SETUP   13
     
    #define ARM_USB_PID_DATA0   3
     
    #define ARM_USB_PID_DATA1   11
     
    #define ARM_USB_PID_DATA2   7
     
    #define ARM_USB_PID_MDATA   15
     
    #define ARM_USB_PID_ACK   2
     
    #define ARM_USB_PID_NAK   10
     
    #define ARM_USB_PID_STALL   14
     
    #define ARM_USB_PID_NYET   6
     
    #define ARM_USB_PID_PRE   12
     
    #define ARM_USB_PID_ERR   12
     
    #define ARM_USB_PID_SPLIT   8
     
    #define ARM_USB_PID_PING   4
     
    #define ARM_USB_PID_RESERVED   0
     
    #define ARM_USB_ENDPOINT_NUMBER_MASK   0x0F
     
    #define ARM_USB_ENDPOINT_DIRECTION_MASK   0x80
     
    #define ARM_USB_ENDPOINT_CONTROL   0
     Control Endpoint.
     
    #define ARM_USB_ENDPOINT_ISOCHRONOUS   1
     Isochronous Endpoint.
     
    #define ARM_USB_ENDPOINT_BULK   2
     Bulk Endpoint.
     
    #define ARM_USB_ENDPOINT_INTERRUPT   3
     Interrupt Endpoint.
     
    #define ARM_USB_ENDPOINT_MAX_PACKET_SIZE_MASK   0x07FF
     
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_MASK   0x1800
     
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_1   0x0000
     
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_2   0x0800
     
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_3   0x1000
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USB_ROLE_NONE   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ROLE_HOST   1
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ROLE_DEVICE   2
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PIN_DP   (1 << 0)
    +
    + +

    USB D+ pin.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PIN_DM   (1 << 1)
    +
    + +

    USB D- pin.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PIN_VBUS   (1 << 2)
    +
    + +

    USB VBUS pin.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PIN_OC   (1 << 3)
    +
    + +

    USB OverCurrent pin.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PIN_ID   (1 << 4)
    +
    + +

    USB ID pin.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_OUT   1
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_IN   9
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_SOF   5
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_SETUP   13
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_DATA0   3
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_DATA1   11
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_DATA2   7
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_MDATA   15
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_ACK   2
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_NAK   10
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_STALL   14
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_NYET   6
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_PRE   12
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_ERR   12
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_SPLIT   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_PING   4
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_PID_RESERVED   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_NUMBER_MASK   0x0F
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_DIRECTION_MASK   0x80
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_MAX_PACKET_SIZE_MASK   0x07FF
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_MASK   0x1800
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_1   0x0000
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_2   0x0800
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_3   0x1000
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8c.html b/CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8c.html new file mode 100644 index 0000000..99b57d3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8c.html @@ -0,0 +1,195 @@ + + + + + +Driver_USBD.c File Reference +CMSIS-Driver: Driver_USBD.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_USBD.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_USBD_GetVersion (void)
     Get driver version.
     
    ARM_USBD_CAPABILITIES ARM_USBD_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USBD_Initialize (ARM_USBD_SignalDeviceEvent_t cb_device_event, ARM_USBD_SignalEndpointEvent_t cb_endpoint_event)
     Initialize USB Device Interface.
     
    int32_t ARM_USBD_Uninitialize (void)
     De-initialize USB Device Interface.
     
    int32_t ARM_USBD_PowerControl (ARM_POWER_STATE state)
     Control USB Device Interface Power.
     
    int32_t ARM_USBD_DeviceConnect (void)
     Connect USB Device.
     
    int32_t ARM_USBD_DeviceDisconnect (void)
     Disconnect USB Device.
     
    ARM_USBD_STATE ARM_USBD_DeviceGetState (void)
     Get current USB Device State.
     
    int32_t ARM_USBD_DeviceRemoteWakeup (void)
     Trigger USB Remote Wakeup.
     
    int32_t ARM_USBD_DeviceSetAddress (uint8_t dev_addr)
     Set USB Device Address.
     
    int32_t ARM_USBD_ReadSetupPacket (uint8_t *setup)
     Read setup packet received over Control Endpoint.
     
    int32_t ARM_USBD_EndpointConfigure (uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size)
     Configure USB Endpoint.
     
    int32_t ARM_USBD_EndpointUnconfigure (uint8_t ep_addr)
     Unconfigure USB Endpoint.
     
    int32_t ARM_USBD_EndpointStall (uint8_t ep_addr, bool stall)
     Set/Clear Stall for USB Endpoint.
     
    int32_t ARM_USBD_EndpointTransfer (uint8_t ep_addr, uint8_t *data, uint32_t num)
     Read data from or Write data to USB Endpoint.
     
    uint32_t ARM_USBD_EndpointTransferGetResult (uint8_t ep_addr)
     Get result of USB Endpoint transfer.
     
    int32_t ARM_USBD_EndpointTransferAbort (uint8_t ep_addr)
     Abort current USB Endpoint transfer.
     
    uint16_t ARM_USBD_GetFrameNumber (void)
     Get current USB Frame Number.
     
    void ARM_USBD_SignalDeviceEvent (uint32_t event)
     Signal USB Device Event.
     
    void ARM_USBD_SignalEndpointEvent (uint8_t ep_addr, uint32_t ep_event)
     Signal USB Endpoint Event.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8h.html b/CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8h.html new file mode 100644 index 0000000..7299c02 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_b_d_8h.html @@ -0,0 +1,200 @@ + + + + + +Driver_USBD.h File Reference +CMSIS-Driver: Driver_USBD.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_USBD.h File Reference
    +
    +
    + + + + + + + + + + + +

    +Data Structures

    struct  ARM_USBD_STATE
     USB Device State. More...
     
    struct  ARM_USBD_CAPABILITIES
     USB Device Driver Capabilities. More...
     
    struct  ARM_DRIVER_USBD
     Access structure of the USB Device Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USBD_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
     
    #define ARM_USBD_EVENT_VBUS_ON   (1UL << 0)
     USB Device VBUS On.
     
    #define ARM_USBD_EVENT_VBUS_OFF   (1UL << 1)
     USB Device VBUS Off.
     
    #define ARM_USBD_EVENT_RESET   (1UL << 2)
     USB Reset occurred.
     
    #define ARM_USBD_EVENT_HIGH_SPEED   (1UL << 3)
     USB switch to High Speed occurred.
     
    #define ARM_USBD_EVENT_SUSPEND   (1UL << 4)
     USB Suspend occurred.
     
    #define ARM_USBD_EVENT_RESUME   (1UL << 5)
     USB Resume occurred.
     
    #define ARM_USBD_EVENT_SETUP   (1UL << 0)
     SETUP Packet.
     
    #define ARM_USBD_EVENT_OUT   (1UL << 1)
     OUT Packet(s)
     
    #define ARM_USBD_EVENT_IN   (1UL << 2)
     IN Packet(s)
     
    + + + + + + + +

    +Typedefs

    typedef void(* ARM_USBD_SignalDeviceEvent_t )(uint32_t event)
     Pointer to ARM_USBD_SignalDeviceEvent : Signal USB Device Event.
     
    typedef void(* ARM_USBD_SignalEndpointEvent_t )(uint8_t ep_addr, uint32_t event)
     Pointer to ARM_USBD_SignalEndpointEvent : Signal USB Endpoint Event.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USBD_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8c.html b/CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8c.html new file mode 100644 index 0000000..4d4299a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8c.html @@ -0,0 +1,216 @@ + + + + + +Driver_USBH.c File Reference +CMSIS-Driver: Driver_USBH.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_USBH.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_USBH_GetVersion (void)
     Get driver version.
     
    ARM_USBH_CAPABILITIES ARM_USBH_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USBH_Initialize (ARM_USBH_SignalPortEvent_t cb_port_event, ARM_USBH_SignalPipeEvent_t cb_pipe_event)
     Initialize USB Host Interface.
     
    int32_t ARM_USBH_Uninitialize (void)
     De-initialize USB Host Interface.
     
    int32_t ARM_USBH_PowerControl (ARM_POWER_STATE state)
     Control USB Host Interface Power.
     
    int32_t ARM_USBH_PortVbusOnOff (uint8_t port, bool vbus)
     Root HUB Port VBUS on/off.
     
    int32_t ARM_USBH_PortReset (uint8_t port)
     Do Root HUB Port Reset.
     
    int32_t ARM_USBH_PortSuspend (uint8_t port)
     Suspend Root HUB Port (stop generating SOFs).
     
    int32_t ARM_USBH_PortResume (uint8_t port)
     Resume Root HUB Port (start generating SOFs).
     
    ARM_USBH_PORT_STATE ARM_USBH_PortGetState (uint8_t port)
     Get current Root HUB Port State.
     
    ARM_USBH_PIPE_HANDLE ARM_USBH_PipeCreate (uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size, uint8_t ep_interval)
     Create Pipe in System.
     
    int32_t ARM_USBH_PipeModify (ARM_USBH_PIPE_HANDLE pipe_hndl, uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint16_t ep_max_packet_size)
     Modify Pipe in System.
     
    int32_t ARM_USBH_PipeDelete (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Delete Pipe from System.
     
    int32_t ARM_USBH_PipeReset (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Reset Pipe.
     
    int32_t ARM_USBH_PipeTransfer (ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t packet, uint8_t *data, uint32_t num)
     Transfer packets through USB Pipe.
     
    uint32_t ARM_USBH_PipeTransferGetResult (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Get result of USB Pipe transfer.
     
    int32_t ARM_USBH_PipeTransferAbort (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Abort current USB Pipe transfer.
     
    uint16_t ARM_USBH_GetFrameNumber (void)
     Get current USB Frame Number.
     
    void ARM_USBH_SignalPortEvent (uint8_t port, uint32_t event)
     Signal Root HUB Port Event.
     
    void ARM_USBH_SignalPipeEvent (ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t event)
     Signal Pipe Event.
     
    ARM_DRIVER_VERSION ARM_USBH_HCI_GetVersion (void)
     Get USB Host HCI (OHCI/EHCI) driver version.
     
    ARM_USBH_HCI_CAPABILITIES ARM_USBH_HCI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USBH_HCI_Initialize (ARM_USBH_HCI_Interrupt_t *cb_interrupt)
     Initialize USB Host HCI (OHCI/EHCI) Interface.
     
    int32_t ARM_USBH_HCI_Uninitialize (void)
     De-initialize USB Host HCI (OHCI/EHCI) Interface.
     
    int32_t ARM_USBH_HCI_PowerControl (ARM_POWER_STATE state)
     Control USB Host HCI (OHCI/EHCI) Interface Power.
     
    int32_t ARM_USBH_HCI_PortVbusOnOff (uint8_t port, bool vbus)
     USB Host HCI (OHCI/EHCI) Root HUB Port VBUS on/off.
     
    void ARM_USBH_HCI_Interrupt (void)
     USB Host HCI Interrupt Handler.
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8h.html b/CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8h.html new file mode 100644 index 0000000..40ccf52 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver___u_s_b_h_8h.html @@ -0,0 +1,375 @@ + + + + + +Driver_USBH.h File Reference +CMSIS-Driver: Driver_USBH.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Driver_USBH.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_USBH_PORT_STATE
     USB Host Port State. More...
     
    struct  ARM_USBH_CAPABILITIES
     USB Host Driver Capabilities. More...
     
    struct  ARM_DRIVER_USBH
     Access structure of USB Host Driver. More...
     
    struct  ARM_USBH_HCI_CAPABILITIES
     USB Host HCI (OHCI/EHCI) Driver Capabilities. More...
     
    struct  ARM_DRIVER_USBH_HCI
     Access structure of USB Host HCI (OHCI/EHCI) Driver. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USBH_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
     
    #define ARM_USBH_EP_HANDLE   ARM_USBH_PIPE_HANDLE /* Legacy name */
     
    #define ARM_USBH_PACKET_TOKEN_Pos   0
     
    #define ARM_USBH_PACKET_TOKEN_Msk   (0x0FUL << ARM_USBH_PACKET_TOKEN_Pos)
     
    #define ARM_USBH_PACKET_SETUP   (0x01UL << ARM_USBH_PACKET_TOKEN_Pos)
     SETUP Packet.
     
    #define ARM_USBH_PACKET_OUT   (0x02UL << ARM_USBH_PACKET_TOKEN_Pos)
     OUT Packet.
     
    #define ARM_USBH_PACKET_IN   (0x03UL << ARM_USBH_PACKET_TOKEN_Pos)
     IN Packet.
     
    #define ARM_USBH_PACKET_PING   (0x04UL << ARM_USBH_PACKET_TOKEN_Pos)
     PING Packet.
     
    #define ARM_USBH_PACKET_DATA_Pos   4
     
    #define ARM_USBH_PACKET_DATA_Msk   (0x0FUL << ARM_USBH_PACKET_DATA_Pos)
     
    #define ARM_USBH_PACKET_DATA0   (0x01UL << ARM_USBH_PACKET_DATA_Pos)
     DATA0 PID.
     
    #define ARM_USBH_PACKET_DATA1   (0x02UL << ARM_USBH_PACKET_DATA_Pos)
     DATA1 PID.
     
    #define ARM_USBH_PACKET_SPLIT_Pos   8
     
    #define ARM_USBH_PACKET_SPLIT_Msk   (0x0FUL << ARM_USBH_PACKET_SPLIT_Pos)
     
    #define ARM_USBH_PACKET_SSPLIT   (0x08UL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet.
     
    #define ARM_USBH_PACKET_SSPLIT_S   (0x09UL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet: Data Start.
     
    #define ARM_USBH_PACKET_SSPLIT_E   (0x0AUL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet: Data End.
     
    #define ARM_USBH_PACKET_SSPLIT_S_E   (0x0BUL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet: Data All.
     
    #define ARM_USBH_PACKET_CSPLIT   (0x0CUL << ARM_USBH_PACKET_SPLIT_Pos)
     CSPLIT Packet.
     
    #define ARM_USBH_PACKET_PRE   (1UL << 12)
     PRE Token.
     
    #define ARM_USBH_EVENT_CONNECT   (1UL << 0)
     USB Device Connected to Port.
     
    #define ARM_USBH_EVENT_DISCONNECT   (1UL << 1)
     USB Device Disconnected from Port.
     
    #define ARM_USBH_EVENT_OVERCURRENT   (1UL << 2)
     USB Device caused Overcurrent.
     
    #define ARM_USBH_EVENT_RESET   (1UL << 3)
     USB Reset completed.
     
    #define ARM_USBH_EVENT_SUSPEND   (1UL << 4)
     USB Suspend occurred.
     
    #define ARM_USBH_EVENT_RESUME   (1UL << 5)
     USB Resume occurred.
     
    #define ARM_USBH_EVENT_REMOTE_WAKEUP   (1UL << 6)
     USB Device activated Remote Wakeup.
     
    #define ARM_USBH_EVENT_TRANSFER_COMPLETE   (1UL << 0)
     Transfer completed.
     
    #define ARM_USBH_EVENT_HANDSHAKE_NAK   (1UL << 1)
     NAK Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_NYET   (1UL << 2)
     NYET Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_MDATA   (1UL << 3)
     MDATA Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_STALL   (1UL << 4)
     STALL Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_ERR   (1UL << 5)
     ERR Handshake received.
     
    #define ARM_USBH_EVENT_BUS_ERROR   (1UL << 6)
     Bus Error detected.
     
    #define ARM_USBH_SignalEndpointEvent_t   ARM_USBH_SignalPipeEvent_t /* Legacy name */
     
    + + + + + + + + + + + + + +

    +Typedefs

    typedef uint32_t ARM_USBH_PIPE_HANDLE
     USB Host Pipe Handle.
     
    typedef void(* ARM_USBH_SignalPortEvent_t )(uint8_t port, uint32_t event)
     Pointer to ARM_USBH_SignalPortEvent : Signal Root HUB Port Event.
     
    typedef void(* ARM_USBH_SignalPipeEvent_t )(ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t event)
     Pointer to ARM_USBH_SignalPipeEvent : Signal Pipe Event.
     
    typedef void(* ARM_USBH_HCI_Interrupt_t )(void)
     Pointer to Interrupt Handler Routine.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USBH_API_VERSION   ARM_DRIVER_VERSION_MAJOR_MINOR(2,01) /* API version */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EP_HANDLE   ARM_USBH_PIPE_HANDLE /* Legacy name */
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_TOKEN_Pos   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_TOKEN_Msk   (0x0FUL << ARM_USBH_PACKET_TOKEN_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_DATA_Pos   4
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_DATA_Msk   (0x0FUL << ARM_USBH_PACKET_DATA_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_SPLIT_Pos   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_SPLIT_Msk   (0x0FUL << ARM_USBH_PACKET_SPLIT_Pos)
    +
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_SignalEndpointEvent_t   ARM_USBH_SignalPipeEvent_t /* Legacy name */
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_driver_validation.html b/CMSIS/Documentation/Driver/html/_driver_validation.html new file mode 100644 index 0000000..153e96d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_driver_validation.html @@ -0,0 +1,193 @@ + + + + + +Driver Validation +CMSIS-Driver: Driver Validation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Driver Validation
    +
    +
    +

    ARM offers a Software Pack for the CMSIS-Driver Validation. The ARM::CMSIS-Driver_Validation Pack contains the following:

    +
      +
    • Source code of a CMSIS-Driver Validation Suite along with configuration file.
    • +
    • Documentation of the CMSIS-Driver Validation Suite.
    • +
    • Examples that shows the usage of the CMSIS-Driver Validation Suite on various target platforms.
    • +
    +

    The CMSIS-Driver Validation Suite performs the following tests:

    +
      +
    • Generic Validation of API function calls
    • +
    • Validation of Configuration Parameters
    • +
    • Validation of Communication with loopback tests
    • +
    • Validation of Communication Parameters such as baudrate
    • +
    • Validation of Event functions
    • +
    +

    The following CMSIS-Drivers can be tested with the current release:

    + +

    The Driver Validation output can printed to a console, output via ITM printf, or output to a memory buffer.

    +

    +Sample Test Output

    +
    CMSIS-Driver Test      Aug 24 2015 15:15:14
    +
    +TEST 01: SPI_GetCapabilities          PASSED
    +TEST 02: SPI_Initialization
    +  DV_SPI.c(142) - Failed
    +TEST 03: SPI_PowerControl             NOT EXECUTED
    +  :
    +  :
    +TEST 23: USART_Send 
    +  DV_USART.c(335) - Fail to send 1024 bytes 
    +  DV_USART.c(335) - Fail to send 2048 bytes 
    +  DV_USART.c(341) - Fail to send without callback 2048 bytes 
    +  :
    +  :
    +Test Summary: 52 Tests: 42 Executed, 22 Failed.
    +  653 Test Cases: 56 Errors(s), 12 Warning(s).
    +

    +Setup for Loop Back Communication

    +

    To perform loop back communication tests it is required to connect the input and the output of the peripherals as shown in this table:

    + + + + + + + + + +
    Peripheral Loop Back Configuration
    Ethernet Connect TX+ (Pin 1) with RX+ (Pin 3), TX- (Pin 2) with RX- (Pin 6)
    SPI Connect MISO to MOSI
    USART Connect TX with RX
    +

    The following picture shows the necessary external loop back connections for the Keil MCBSTM32F400 evaluation board:

    +
      +
    • SPI: PB14 (SPI2_MISO) and PB15 (SPI2_MOSI)
    • +
    • USART: PB6 (USART1_TX) and PB7 (USART1_RX)
    • +
    • Ethernet: Pin 1 (TX+) and Pin 3 (RX+), Pin 2 (TX-) and Pin 6 (RX-)
    • +
    +
    +image006.png +
    +Connections for Loop Back Communication Tests on Keil MCBSTM32F400
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_general_8txt.html b/CMSIS/Documentation/Driver/html/_general_8txt.html new file mode 100644 index 0000000..aca421c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_general_8txt.html @@ -0,0 +1,129 @@ + + + + + +General.txt File Reference +CMSIS-Driver: General.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/_reference_implementation.html b/CMSIS/Documentation/Driver/html/_reference_implementation.html new file mode 100644 index 0000000..e5cd9c5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_reference_implementation.html @@ -0,0 +1,236 @@ + + + + + +Reference Implementation +CMSIS-Driver: Reference Implementation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Reference Implementation
    +
    +
    +

    The API of the CMSIS-Drivers is published in the Driver Header Files.

    +

    To simplify the development of a CMSIS-Driver both Driver Template Files and Driver Examples are provided.

    +

    ARM offers also a Software Pack for CMSIS-Driver Validation as described in Driver Validation.

    +

    +Driver Header Files

    +

    The API of each CMSIS-Driver is published in a header file. It is recommended to include the header file that is part of the CMSIS specification in the implementation file of the CMSIS-Driver.

    +

    The following header files are available in the directory .\CMSIS\Driver\Include.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Header File Description
    Driver_Common.h Common Driver Definitions
    Driver_CAN.h CAN Interface
    Driver_ETH.h Ethernet Interface
    Driver_ETH_MAC.h Ethernet MAC Interface
    Driver_ETH_PHY.h Ethernet PHY Interface
    Driver_Flash.h Flash Interface
    Driver_I2C.h I2C Interface
    Driver_MCI.h MCI Interface
    Driver_NAND.h NAND Interface
    Driver_SPI.h SPI Interface
    Driver_SAI.h SAI Interface
    Driver_USART.h USART Interface
    Driver_USB.h USB Interface
    Driver_USBD.h USB Device Interface
    Driver_USBH.h USB Host Interface
    +

    +Driver Template Files

    +

    Driver template files are code skeletons that provide the structure of a CMSIS-Driver. The following templates are available in the directory .\CMSIS\Driver\DriverTemplates.

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Source File Description
    Driver_CAN.c CAN Interface
    Driver_ETH_MAC.c Ethernet MAC Interface
    Driver_ETH_PHY.c Ethernet MAC Interface
    Driver_Flash.c Flash Interface
    Driver_I2C.c I2C Interface
    Driver_MCI.c MCI Interface
    Driver_SAI.c SAI Interface
    Driver_SPI.c SPI Interface
    Driver_USART.c USART Interface
    Driver_USBD.c USB Device Interface
    Driver_USBH.c USB Host Interface
    +

    +Driver Examples

    +

    The driver examples are full working CMSIS-Drivers that may be adapted to a different hardware. Examples are currently available for the NXP LPC1800 series and provide the implementation of a complete CMSIS-Driver. The following examples are available in the directory .\CMSIS\Pack\Example\CMSIS_Driver.

    + + + + + + + + + + + + + + + + + + + + + +
    Source File Header File Description
    EMAC_LPC18xx.c EMAC_LPC18xx.h Ethernet MAC Interface
    SSP_LPC18xx.c SSP_LPC18xx.h SPI Interface
    I2C_LPC18xx.c I2C_LPC18xx.h I2C Interface
    I2S_LPC18xx.c I2S_LPC18xx.h SAI Interface
    MCI_LPC18xx.c MCI_LPC18xx.h MCI Interface
    USART_LPC18xx.c USART_LPC18xx.h USART Interface
    USBn_LPC18xx.c USB_LPC18xx.h common files for USB Device Interface and USB Host Interface
    USBDn_LPC18xx.c none USB Device Interface
    USBHn_LPC18xx.c none USB Host Interface
    +

    These CMSIS-Drivers use additional modules for GPIO and DMA control:

    + + + + + + + + + +
    Source File Header File Description
    GPIO_LPC18xx.c GPIO_LPC18xx.h GPIO Interface for LPC1800 series
    GPDMA_LPC18xx.c none DMA Interface for LPC1800 series
    SCU_LPC18xx.c SCU_LPC18xx.h SCU Interface for LPC1800 series
    +

    The CMSIS-Drivers for the LPC1800 device have also many configuration options that are controls using #define statements in the file .\CMSIS\Pack\Example\CMSIS_Driver\Config\RTE_Device.h. Using this file, the I/O pin and DMA assignment can be set among other parameters such as USB speed and PHY interfaces.

    +

    Further driver reference implementations are available in Device Family Packs (DFP) labeled with version 2.0.0 or higher.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/_theory_operation.html b/CMSIS/Documentation/Driver/html/_theory_operation.html new file mode 100644 index 0000000..842d128 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/_theory_operation.html @@ -0,0 +1,391 @@ + + + + + +Theory of Operation +CMSIS-Driver: Theory of Operation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Theory of Operation
    +
    +
    + +

    This section gives an overview of the general operation of CMSIS-Drivers. It explains the Common Driver Functions that are common in all CMSIS-Drivers along with the Function Call Sequence. The topic Data Transfer Functions describes how data read/write operations to the peripheral are implemented.

    +

    Each CMSIS-Driver defines an Access Struct for calling the various driver functions and each peripheral (that is accessed via a CMSIS-Driver) has one Driver Instance.

    +

    +Common Driver Functions

    +

    Each CMSIS-Driver contains these functions:

    +
      +
    • GetVersion: can be called at any time to obtain version information of the driver interface.
    • +
    +
      +
    • GetCapabilities: can be called at any time to obtain capabilities of the driver interface.
    • +
    +
      +
    • Initialize: must be called before powering the peripheral using PowerControl. This function performs the following:
        +
      • allocate I/O resources.
          +
        • register an optional SignalEvent callback function.
        • +
        +
      • +
      +
    • +
    +
      +
    • SignalEvent: is an optional callback function that is registered with the Initialize function. This callback function is initiated from interrupt service routines and indicates hardware events or the completion of a data block transfer operation.
    • +
    +
      +
    • PowerControl: Controls the power profile of the peripheral and needs to be called after Initialize. Typically, three power options are available:
        +
      • ARM_POWER_FULL: Peripheral is turned on and fully operational. The driver initializes the peripheral registers, interrupts, and (optionally) DMA.
      • +
      • ARM_POWER_LOW: (optional) Peripheral is in low power mode and partially operational; usually, it can detect external events and wake-up.
      • +
      • ARM_POWER_OFF: Peripheral is turned off and not operational (pending operations are terminated). This is the state after device reset.
      • +
      +
    • +
    +
      +
    • Uninitialize: Complementary function to Initialize. Releases the I/O pin resources used by the interface.
    • +
    +
      +
    • Control: Several drivers provide a control function to configure communication parameters or execute miscellaneous control functions.
    • +
    +

    The section Function Call Sequence contains more information on the operation of each function. Additional functions are specific to each driver interface and are described in the individual sections of each driver.

    +

    +Cortex-M Processor Mode

    +

    The CMSIS-Driver functions access peripherals and interrupts and are designed to execute in Privileged mode. When calling CMSIS-Driver functions from RTOS threads, it should be ensure that these threads execute in Privileged mode.

    +

    +Function Call Sequence

    +

    For normal operation of the driver, the API functions GetVersion, GetCapabilities, Initialize, PowerControl, Uninitialize are called in the following order:

    +
    +msc_inline_mscgraph_1 + +
    +

    The functions GetVersion and GetCapabilities can be called any time to obtain the required information from the driver. These functions return always the same information.

    +

    +Start Sequence

    +

    To start working with a peripheral the functions Initialize and PowerControl need to be called in this order:

    +
    drv->Initialize (...); // Allocate I/O pins
    +
    drv->PowerControl (ARM_POWER_FULL); // Power up peripheral, setup IRQ/DMA
    +
      +
    • Initialize typically allocates the I/O resources (pins) for the peripheral. The function can be called multiple times; if the I/O resources are already initialized it performs no operation and just returns with ARM_DRIVER_OK.
    • +
    • PowerControl (ARM_POWER_FULL) sets the peripheral registers including interrupt (NVIC) and optionally DMA. The function can be called multiple times; if the registers are already set it performs no operation and just returns with ARM_DRIVER_OK.
    • +
    +

    +Stop Sequence

    +

    To stop working with a peripheral the functions PowerControl and Uninitialize need to be called in this order:

    +
    drv->PowerControl (ARM_POWER_OFF); // Terminate any pending transfers, reset IRQ/DMA, power off peripheral
    +
    drv->Uninitialize (...); // Release I/O pins
    +

    The functions PowerControl and Uninitialize always execute and can be used to put the peripheral into a Safe State, for example after any data transmission errors. To restart the peripheral in a error condition, you should first execute the Stop Sequence and then the Start Sequence.

    +
      +
    • PowerControl (ARM_POWER_OFF) terminates any pending data transfers with the peripheral, disables the peripheral and leaves it in a defined mode (typically the reset state).
        +
      • when DMA is used it is disabled (including the interrupts)
      • +
      • peripheral interrupts are disabled on NVIC level
      • +
      • the peripheral is reset using a dedicated reset mechanism (if available) or by clearing the peripheral registers
      • +
      • pending peripheral interrupts are cleared on NVIC level
      • +
      • driver variables are cleared
      • +
      +
    • +
    • Uninitialize always releases I/O pin resources.
    • +
    +

    +Shared I/O Pins

    +

    All CMSIS-Driver provide a Start Sequence and Stop Sequence. Therefore two different drivers can share the same I/O pins, for example UART1 and SPI1 can have overlapping I/O pins. In this case the communication channels can be used as shown below:

    +
    SPI1drv->Initialize (...); // Start SPI1
    +
    SPI1drv->PowerControl (ARM_POWER_FULL);
    +
    ... // Do operations with SPI1
    +
    SPI1drv->PowerControl (ARM_POWER_OFF); // Stop SPI1
    +
    SPI1drv->Uninitialize ();
    +
    ...
    +
    USART1drv->Initialize (...); // Start USART1
    +
    USART1drv->PowerControl (ARM_POWER_FULL);
    +
    ... // Do operations with USART1
    +
    USART1drv->PowerControl (ARM_POWER_OFF); // Stop USART1
    +
    USART1drv->Uninitialize ();
    +

    +Data Transfer Functions

    +

    A CMSIS-Driver implements non-blocking functions to transfer data to a peripheral. This means that the driver configures the read or write access to the peripheral and instantly returns to the calling application. The function names for data transfer end with:

    +
      +
    • Send to write data to a peripheral.
    • +
    • Receive to read data from a peripheral.
    • +
    • Transfer to indicate combined read/write operations to a peripheral.
    • +
    +

    During a data transfer, the application can query the number of transferred data items using functions named GetxxxCount. On completion of a data transfer, the driver calls a callback function with a specific event code.

    +

    During the data exchange with the peripheral, the application can decide to:

    +
      +
    • Wait (using an RTOS scheduler) for the callback completion event. The RTOS is controlled by the application code which makes the driver itself RTOS independent.
    • +
    • Use polling functions that return the number of transferred data items to show progress information or partly read or fill data transfer buffers.
    • +
    • Prepare another data transfer buffer for the next data transfer.
    • +
    +

    The following diagram shows the basic communication flow when using the _Send function in an application.

    +
    +Non_blocking_transmit_small.png +
    +Non-blocking Send Function
    +

    +Access Struct

    +

    A CMSIS-Driver publishes an Access Struct with the data type name ARM_DRIVER_xxxx that gives to access the driver functions.

    +

    Code Example: Function Access of the SPI driver

    +
    typedef struct _ARM_DRIVER_SPI {
    +
    ARM_DRIVER_VERSION (*GetVersion) (void);
    +
    ARM_SPI_CAPABILITIES (*GetCapabilities) (void);
    +
    int32_t (*Initialize) (ARM_SPI_SignalEvent_t cb_event);
    +
    int32_t (*Uninitialize) (void);
    +
    int32_t (*PowerControl) (ARM_POWER_STATE state);
    +
    int32_t (*Send) (const void *data, uint32_t num);
    +
    int32_t (*Receive) ( void *data, uint32_t num);
    +
    int32_t (*Transfer) (const void *data_out, void *data_in, uint32_t num);
    +
    uint32_t (*GetDataCount) (void);
    +
    int32_t (*Control) (uint32_t control, uint32_t arg);
    +
    ARM_SPI_STATUS (*GetStatus) (void);
    + +

    +Driver Instances

    +

    A device may offer several peripherals of the same type. For such devices, the CMSIS-Driver publishes multiple instances of the Access Struct. The name of each driver instance reflects the names of the peripheral available in the device.

    +

    Code Example: Access Struct for three SPIs in a microcontroller device.

    +
    ARM_DRIVER_SPI Driver_SPI1; // access functions for SPI1 interface
    +
    ARM_DRIVER_SPI Driver_SPI2; // access functions for SPI2 interface
    +
    ARM_DRIVER_SPI Driver_SPI3; // access functions for SPI3 interface
    +

    The access functions can be passed to middleware to specify the driver instance that the middleware should use for communication.

    +

    Example:

    +
    void init_middleware (ARM_DRIVER_SPI *Drv_spi) ...
    +
    \\ inside the middleware the SPI driver functions are called with:
    +
    \\ Drv_spi->function (...);
    +
    \\ setup middleware
    +
    init_middleware (&Driver_SPI1); // connect middleware to SPI1 interface
    +
    :
    +
    init_middleware (&Driver_SPI2); // connect middleware to SPI2 interface
    +

    +Driver Configuration

    +

    For a device family, the drivers may be configurable. The Reference Implementation stores configuration options in a central file with the name RTE_Device.h. However, the configuration of the drivers itself is not part of the CMSIS-Driver specification.

    +

    +Code Example

    +

    The following example code shows the usage of the SPI interface.

    +
    #include "Driver_SPI.h"
    +
    #include "cmsis_os.h" // ARM::CMSIS:RTOS:Keil RTX
    +
    +
    +
    void mySPI_Thread(void const *argument);
    +
    osThreadId tid_mySPI_Thread;
    +
    +
    +
    /* SPI Driver */
    +
    extern ARM_DRIVER_SPI Driver_SPI0;
    +
    +
    +
    void mySPI_callback(uint32_t event)
    +
    {
    +
    switch (event)
    +
    {
    + +
    /* Success: Wakeup Thread */
    +
    osSignalSet(tid_mySPI_Thread, 0x01);
    +
    break;
    + +
    /* Occurs in slave mode when data is requested/sent by master
    +
    but send/receive/transfer operation has not been started
    +
    and indicates that data is lost. Occurs also in master mode
    +
    when driver cannot transfer data fast enough. */
    +
    __breakpoint(0); /* Error: Call debugger or replace with custom error handling */
    +
    break;
    + +
    /* Occurs in master mode when Slave Select is deactivated and
    +
    indicates Master Mode Fault. */
    +
    __breakpoint(0); /* Error: Call debugger or replace with custom error handling */
    +
    break;
    +
    }
    +
    }
    +
    +
    /* Test data buffers */
    +
    const uint8_t testdata_out[8] = { 0, 1, 2, 3, 4, 5, 6, 7 };
    +
    uint8_t testdata_in [8];
    +
    +
    void mySPI_Thread(void const* arg)
    +
    {
    +
    ARM_DRIVER_SPI* SPIdrv = &Driver_SPI0;
    +
    osEvent evt;
    +
    +
    #ifdef DEBUG
    + +
    ARM_SPI_CAPABILITIES drv_capabilities;
    +
    +
    version = SPIdrv->GetVersion();
    +
    if (version.api < 0x200) /* requires at minimum API version 2.00 or higher */
    +
    { /* error handling */
    +
    return;
    +
    }
    +
    +
    drv_capabilities = SPIdrv->GetCapabilities();
    +
    if (drv_capabilities.event_mode_fault == 0)
    +
    { /* error handling */
    +
    return;
    +
    }
    +
    #endif
    +
    +
    /* Initialize the SPI driver */
    +
    SPIdrv->Initialize(mySPI_callback);
    +
    /* Power up the SPI peripheral */
    + +
    /* Configure the SPI to Master, 8-bit mode @10000 kBits/sec */
    + +
    +
    /* SS line = INACTIVE = HIGH */
    + +
    +
    /* thread loop */
    +
    while (1)
    +
    {
    +
    /* SS line = ACTIVE = LOW */
    + +
    /* Transmit some data */
    +
    SPIdrv->Send(testdata_out, sizeof(testdata_out));
    +
    /* Wait for completion */
    +
    evt = osSignalWait(0x01, 100);
    +
    if (evt.status == osEventTimeout) {
    +
    __breakpoint(0); /* Timeout error: Call debugger */
    +
    }
    +
    /* SS line = INACTIVE = HIGH */
    + +
    +
    /* SS line = ACTIVE = LOW */
    + +
    /* Receive 8 bytes of reply */
    +
    SPIdrv->Receive(testdata_in, 8);
    +
    evt = osSignalWait(0x01, 100);
    +
    if (evt.status == osEventTimeout) {
    +
    __breakpoint(0); /* Timeout error: Call debugger */
    +
    }
    +
    /* SS line = INACTIVE = HIGH */
    + +
    }
    +
    }
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/annotated.html b/CMSIS/Documentation/Driver/html/annotated.html new file mode 100644 index 0000000..8789e2d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/annotated.html @@ -0,0 +1,184 @@ + + + + + +Data Structures +CMSIS-Driver: Data Structures + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Data Structures
    +
    +
    +
    Here are the data structures with brief descriptions:
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    oCARM_CAN_CAPABILITIESCAN Device Driver Capabilities
    oCARM_CAN_MSG_INFOCAN Message Information
    oCARM_CAN_OBJ_CAPABILITIESCAN Object Capabilities
    oCARM_CAN_STATUSCAN Status
    oCARM_DRIVER_CANAccess structure of the CAN Driver
    oCARM_DRIVER_ETH_MACAccess structure of the Ethernet MAC Driver
    oCARM_DRIVER_ETH_PHYAccess structure of the Ethernet PHY Driver
    oCARM_DRIVER_FLASHAccess structure of the Flash Driver
    oCARM_DRIVER_I2CAccess structure of the I2C Driver
    oCARM_DRIVER_MCIAccess structure of the MCI Driver
    oCARM_DRIVER_NANDAccess structure of the NAND Driver
    oCARM_DRIVER_SAIAccess structure of the SAI Driver
    oCARM_DRIVER_SPIAccess structure of the SPI Driver
    oCARM_DRIVER_USARTAccess structure of the USART Driver
    oCARM_DRIVER_USBDAccess structure of the USB Device Driver
    oCARM_DRIVER_USBHAccess structure of USB Host Driver
    oCARM_DRIVER_USBH_HCIAccess structure of USB Host HCI (OHCI/EHCI) Driver
    oCARM_DRIVER_VERSIONDriver Version
    oCARM_ETH_LINK_INFOEthernet link information
    oCARM_ETH_MAC_ADDREthernet MAC Address
    oCARM_ETH_MAC_CAPABILITIESEthernet MAC Capabilities
    oCARM_ETH_MAC_TIMEEthernet MAC Time
    oCARM_FLASH_CAPABILITIESFlash Driver Capabilities
    oCARM_FLASH_INFOFlash information
    oCARM_FLASH_SECTORFlash Sector information
    oCARM_FLASH_STATUSFlash Status
    oCARM_I2C_CAPABILITIESI2C Driver Capabilities
    oCARM_I2C_STATUSI2C Status
    oCARM_MCI_CAPABILITIESMCI Driver Capabilities
    oCARM_MCI_STATUSMCI Status
    oCARM_NAND_CAPABILITIESNAND Driver Capabilities
    oCARM_NAND_ECC_INFONAND ECC (Error Correction Code) Information
    oCARM_NAND_STATUSNAND Status
    oCARM_SAI_CAPABILITIESSAI Driver Capabilities
    oCARM_SAI_STATUSSAI Status
    oCARM_SPI_CAPABILITIESSPI Driver Capabilities
    oCARM_SPI_STATUSSPI Status
    oCARM_USART_CAPABILITIESUSART Device Driver Capabilities
    oCARM_USART_MODEM_STATUSUSART Modem Status
    oCARM_USART_STATUSUSART Status
    oCARM_USBD_CAPABILITIESUSB Device Driver Capabilities
    oCARM_USBD_STATEUSB Device State
    oCARM_USBH_CAPABILITIESUSB Host Driver Capabilities
    oCARM_USBH_HCI_CAPABILITIESUSB Host HCI (OHCI/EHCI) Driver Capabilities
    \CARM_USBH_PORT_STATEUSB Host Port State
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/bc_s.png b/CMSIS/Documentation/Driver/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/CMSIS/Documentation/Driver/html/bc_s.png differ diff --git a/CMSIS/Documentation/Driver/html/bdwn.png b/CMSIS/Documentation/Driver/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/bdwn.png differ diff --git a/CMSIS/Documentation/Driver/html/classes.html b/CMSIS/Documentation/Driver/html/classes.html new file mode 100644 index 0000000..0e477da --- /dev/null +++ b/CMSIS/Documentation/Driver/html/classes.html @@ -0,0 +1,164 @@ + + + + + +Data Structure Index +CMSIS-Driver: Data Structure Index + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/closed.png b/CMSIS/Documentation/Driver/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/closed.png differ diff --git a/CMSIS/Documentation/Driver/html/cmsis.css b/CMSIS/Documentation/Driver/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/Driver/html/dir_041cc4048c8229d7729b502626227b03.html b/CMSIS/Documentation/Driver/html/dir_041cc4048c8229d7729b502626227b03.html new file mode 100644 index 0000000..88051dc --- /dev/null +++ b/CMSIS/Documentation/Driver/html/dir_041cc4048c8229d7729b502626227b03.html @@ -0,0 +1,163 @@ + + + + + +src Directory Reference +CMSIS-Driver: src Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    src Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  Driver_CAN.c
     
    file  Driver_Common.c
     
    file  Driver_ETH.c
     
    file  Driver_ETH_MAC.c
     
    file  Driver_ETH_PHY.c
     
    file  Driver_Flash.c
     
    file  Driver_I2C.c
     
    file  Driver_MCI.c
     
    file  Driver_NAND.c
     
    file  Driver_SAI.c
     
    file  Driver_SPI.c
     
    file  Driver_USART.c
     
    file  Driver_USB.c
     
    file  Driver_USBD.c
     
    file  Driver_USBH.c
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/dir_7151b3cc910409bb744bd274374c738d.html b/CMSIS/Documentation/Driver/html/dir_7151b3cc910409bb744bd274374c738d.html new file mode 100644 index 0000000..1db3c9e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/dir_7151b3cc910409bb744bd274374c738d.html @@ -0,0 +1,135 @@ + + + + + +Driver Directory Reference +CMSIS-Driver: Driver Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Driver Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Include
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/dir_9c39448ea46a8e15f1aabc7dec307fcf.html b/CMSIS/Documentation/Driver/html/dir_9c39448ea46a8e15f1aabc7dec307fcf.html new file mode 100644 index 0000000..5f22ce7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/dir_9c39448ea46a8e15f1aabc7dec307fcf.html @@ -0,0 +1,163 @@ + + + + + +Include Directory Reference +CMSIS-Driver: Include Directory Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Include Directory Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Files

    file  Driver_CAN.h
     
    file  Driver_Common.h
     
    file  Driver_ETH.h
     
    file  Driver_ETH_MAC.h
     
    file  Driver_ETH_PHY.h
     
    file  Driver_Flash.h
     
    file  Driver_I2C.h
     
    file  Driver_MCI.h
     
    file  Driver_NAND.h
     
    file  Driver_SAI.h
     
    file  Driver_SPI.h
     
    file  Driver_USART.h
     
    file  Driver_USB.h
     
    file  Driver_USBD.h
     
    file  Driver_USBH.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/doxygen.css b/CMSIS/Documentation/Driver/html/doxygen.css new file mode 100644 index 0000000..2642e8f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/Driver/html/doxygen.png b/CMSIS/Documentation/Driver/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/doxygen.png differ diff --git a/CMSIS/Documentation/Driver/html/driver_revision_history.html b/CMSIS/Documentation/Driver/html/driver_revision_history.html new file mode 100644 index 0000000..62d9f8c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/driver_revision_history.html @@ -0,0 +1,154 @@ + + + + + +Revision History of CMSIS-Driver +CMSIS-Driver: Revision History of CMSIS-Driver + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Revision History of CMSIS-Driver
    +
    +
    +
    + + + + + + + + + + + + +
    Version Description
    2.04 Modifications compared to Version 2.03:
      +
    • Added: template files for CAN interface driver.
    • +
    +
    2.03 Modifications compared to Version 2.02: +
    2.02 Modifications compared to Version 2.00:
      +
    • Minor API changes, for exact details refer to the header file of each driver.
    • +
    • Added: Flash Interface, NAND interface.
    • +
    +
    2.00 API with non-blocking data transfer, independent of CMSIS-RTOS.
    1.10 Initial release
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/driver_sai_i2s.png b/CMSIS/Documentation/Driver/html/driver_sai_i2s.png new file mode 100644 index 0000000..1f408c1 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/driver_sai_i2s.png differ diff --git a/CMSIS/Documentation/Driver/html/driver_sai_lsb.png b/CMSIS/Documentation/Driver/html/driver_sai_lsb.png new file mode 100644 index 0000000..402198b Binary files /dev/null and b/CMSIS/Documentation/Driver/html/driver_sai_lsb.png differ diff --git a/CMSIS/Documentation/Driver/html/driver_sai_msb.png b/CMSIS/Documentation/Driver/html/driver_sai_msb.png new file mode 100644 index 0000000..7da0b70 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/driver_sai_msb.png differ diff --git a/CMSIS/Documentation/Driver/html/driver_sai_pcm.png b/CMSIS/Documentation/Driver/html/driver_sai_pcm.png new file mode 100644 index 0000000..eed4160 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/driver_sai_pcm.png differ diff --git a/CMSIS/Documentation/Driver/html/driver_sai_user.png b/CMSIS/Documentation/Driver/html/driver_sai_user.png new file mode 100644 index 0000000..41bb8d5 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/driver_sai_user.png differ diff --git a/CMSIS/Documentation/Driver/html/dynsections.js b/CMSIS/Documentation/Driver/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +File List +CMSIS-Driver: File List + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/ftv2blank.png b/CMSIS/Documentation/Driver/html/ftv2blank.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2blank.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2cl.png b/CMSIS/Documentation/Driver/html/ftv2cl.png new file mode 100644 index 0000000..132f657 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2cl.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2doc.png b/CMSIS/Documentation/Driver/html/ftv2doc.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2doc.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2folderclosed.png b/CMSIS/Documentation/Driver/html/ftv2folderclosed.png new file mode 100644 index 0000000..bb8ab35 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2folderclosed.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2folderopen.png b/CMSIS/Documentation/Driver/html/ftv2folderopen.png new file mode 100644 index 0000000..d6c7f67 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2folderopen.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2lastnode.png b/CMSIS/Documentation/Driver/html/ftv2lastnode.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2lastnode.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2link.png b/CMSIS/Documentation/Driver/html/ftv2link.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2link.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2mlastnode.png b/CMSIS/Documentation/Driver/html/ftv2mlastnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2mlastnode.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2mnode.png b/CMSIS/Documentation/Driver/html/ftv2mnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2mnode.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2mo.png b/CMSIS/Documentation/Driver/html/ftv2mo.png new file mode 100644 index 0000000..4bfb80f Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2mo.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2node.png b/CMSIS/Documentation/Driver/html/ftv2node.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2node.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2ns.png b/CMSIS/Documentation/Driver/html/ftv2ns.png new file mode 100644 index 0000000..72e3d71 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2ns.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2plastnode.png b/CMSIS/Documentation/Driver/html/ftv2plastnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2plastnode.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2pnode.png b/CMSIS/Documentation/Driver/html/ftv2pnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2pnode.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2splitbar.png b/CMSIS/Documentation/Driver/html/ftv2splitbar.png new file mode 100644 index 0000000..fe895f2 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2splitbar.png differ diff --git a/CMSIS/Documentation/Driver/html/ftv2vertline.png b/CMSIS/Documentation/Driver/html/ftv2vertline.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Driver/html/ftv2vertline.png differ diff --git a/CMSIS/Documentation/Driver/html/functions.html b/CMSIS/Documentation/Driver/html/functions.html new file mode 100644 index 0000000..eee4be1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions.html @@ -0,0 +1,190 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - a -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x62.html b/CMSIS/Documentation/Driver/html/functions_0x62.html new file mode 100644 index 0000000..ea50473 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x62.html @@ -0,0 +1,180 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - b -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x63.html b/CMSIS/Documentation/Driver/html/functions_0x63.html new file mode 100644 index 0000000..c01b32f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x63.html @@ -0,0 +1,258 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - c -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x64.html b/CMSIS/Documentation/Driver/html/functions_0x64.html new file mode 100644 index 0000000..c9b3479 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x64.html @@ -0,0 +1,248 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - d -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x65.html b/CMSIS/Documentation/Driver/html/functions_0x65.html new file mode 100644 index 0000000..f986e5d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x65.html @@ -0,0 +1,279 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - e -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x66.html b/CMSIS/Documentation/Driver/html/functions_0x66.html new file mode 100644 index 0000000..9139914 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x66.html @@ -0,0 +1,177 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - f -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x67.html b/CMSIS/Documentation/Driver/html/functions_0x67.html new file mode 100644 index 0000000..faf111d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x67.html @@ -0,0 +1,253 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - g -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x68.html b/CMSIS/Documentation/Driver/html/functions_0x68.html new file mode 100644 index 0000000..9c12cf3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x68.html @@ -0,0 +1,168 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - h -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x69.html b/CMSIS/Documentation/Driver/html/functions_0x69.html new file mode 100644 index 0000000..3c5580c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x69.html @@ -0,0 +1,192 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - i -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x6c.html b/CMSIS/Documentation/Driver/html/functions_0x6c.html new file mode 100644 index 0000000..b8b56f5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x6c.html @@ -0,0 +1,168 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - l -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x6d.html b/CMSIS/Documentation/Driver/html/functions_0x6d.html new file mode 100644 index 0000000..eceba85 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x6d.html @@ -0,0 +1,216 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - m -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x6e.html b/CMSIS/Documentation/Driver/html/functions_0x6e.html new file mode 100644 index 0000000..161bdf2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x6e.html @@ -0,0 +1,171 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - n -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x6f.html b/CMSIS/Documentation/Driver/html/functions_0x6f.html new file mode 100644 index 0000000..ded7425 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x6f.html @@ -0,0 +1,177 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x70.html b/CMSIS/Documentation/Driver/html/functions_0x70.html new file mode 100644 index 0000000..d2b4b21 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x70.html @@ -0,0 +1,261 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - p -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x72.html b/CMSIS/Documentation/Driver/html/functions_0x72.html new file mode 100644 index 0000000..9913a09 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x72.html @@ -0,0 +1,244 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - r -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x73.html b/CMSIS/Documentation/Driver/html/functions_0x73.html new file mode 100644 index 0000000..d6a61be --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x73.html @@ -0,0 +1,262 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x74.html b/CMSIS/Documentation/Driver/html/functions_0x74.html new file mode 100644 index 0000000..96c180d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x74.html @@ -0,0 +1,201 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - t -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x75.html b/CMSIS/Documentation/Driver/html/functions_0x75.html new file mode 100644 index 0000000..e61eb5d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x75.html @@ -0,0 +1,207 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - u -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x76.html b/CMSIS/Documentation/Driver/html/functions_0x76.html new file mode 100644 index 0000000..5970349 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x76.html @@ -0,0 +1,197 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - v -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_0x77.html b/CMSIS/Documentation/Driver/html/functions_0x77.html new file mode 100644 index 0000000..92e99ac --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_0x77.html @@ -0,0 +1,177 @@ + + + + + +Data Fields +CMSIS-Driver: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    + +

    - w -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_dup.js b/CMSIS/Documentation/Driver/html/functions_dup.js new file mode 100644 index 0000000..9a1cc2e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_dup.js @@ -0,0 +1,23 @@ +var functions_dup = +[ + [ "a", "functions.html", null ], + [ "b", "functions_0x62.html", null ], + [ "c", "functions_0x63.html", null ], + [ "d", "functions_0x64.html", null ], + [ "e", "functions_0x65.html", null ], + [ "f", "functions_0x66.html", null ], + [ "g", "functions_0x67.html", null ], + [ "h", "functions_0x68.html", null ], + [ "i", "functions_0x69.html", null ], + [ "l", "functions_0x6c.html", null ], + [ "m", "functions_0x6d.html", null ], + [ "n", "functions_0x6e.html", null ], + [ "o", "functions_0x6f.html", null ], + [ "p", "functions_0x70.html", null ], + [ "r", "functions_0x72.html", null ], + [ "s", "functions_0x73.html", null ], + [ "t", "functions_0x74.html", null ], + [ "u", "functions_0x75.html", null ], + [ "v", "functions_0x76.html", null ], + [ "w", "functions_0x77.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/functions_vars.html b/CMSIS/Documentation/Driver/html/functions_vars.html new file mode 100644 index 0000000..4f60982 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars.html @@ -0,0 +1,190 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - a -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars.js b/CMSIS/Documentation/Driver/html/functions_vars.js new file mode 100644 index 0000000..cbcfec7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars.js @@ -0,0 +1,23 @@ +var functions_vars = +[ + [ "a", "functions_vars.html", null ], + [ "b", "functions_vars_0x62.html", null ], + [ "c", "functions_vars_0x63.html", null ], + [ "d", "functions_vars_0x64.html", null ], + [ "e", "functions_vars_0x65.html", null ], + [ "f", "functions_vars_0x66.html", null ], + [ "g", "functions_vars_0x67.html", null ], + [ "h", "functions_vars_0x68.html", null ], + [ "i", "functions_vars_0x69.html", null ], + [ "l", "functions_vars_0x6c.html", null ], + [ "m", "functions_vars_0x6d.html", null ], + [ "n", "functions_vars_0x6e.html", null ], + [ "o", "functions_vars_0x6f.html", null ], + [ "p", "functions_vars_0x70.html", null ], + [ "r", "functions_vars_0x72.html", null ], + [ "s", "functions_vars_0x73.html", null ], + [ "t", "functions_vars_0x74.html", null ], + [ "u", "functions_vars_0x75.html", null ], + [ "v", "functions_vars_0x76.html", null ], + [ "w", "functions_vars_0x77.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x62.html b/CMSIS/Documentation/Driver/html/functions_vars_0x62.html new file mode 100644 index 0000000..a87693d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x62.html @@ -0,0 +1,180 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x63.html b/CMSIS/Documentation/Driver/html/functions_vars_0x63.html new file mode 100644 index 0000000..36b0fae --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x63.html @@ -0,0 +1,258 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - c -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x64.html b/CMSIS/Documentation/Driver/html/functions_vars_0x64.html new file mode 100644 index 0000000..3430d9d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x64.html @@ -0,0 +1,248 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - d -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x65.html b/CMSIS/Documentation/Driver/html/functions_vars_0x65.html new file mode 100644 index 0000000..2333099 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x65.html @@ -0,0 +1,279 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - e -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x66.html b/CMSIS/Documentation/Driver/html/functions_vars_0x66.html new file mode 100644 index 0000000..8f6dd36 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x66.html @@ -0,0 +1,177 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x67.html b/CMSIS/Documentation/Driver/html/functions_vars_0x67.html new file mode 100644 index 0000000..a5fa128 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x67.html @@ -0,0 +1,253 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x68.html b/CMSIS/Documentation/Driver/html/functions_vars_0x68.html new file mode 100644 index 0000000..6285df1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x68.html @@ -0,0 +1,168 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x69.html b/CMSIS/Documentation/Driver/html/functions_vars_0x69.html new file mode 100644 index 0000000..03d6ef2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x69.html @@ -0,0 +1,192 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x6c.html b/CMSIS/Documentation/Driver/html/functions_vars_0x6c.html new file mode 100644 index 0000000..88278e8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x6c.html @@ -0,0 +1,168 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x6d.html b/CMSIS/Documentation/Driver/html/functions_vars_0x6d.html new file mode 100644 index 0000000..8535522 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x6d.html @@ -0,0 +1,216 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - m -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x6e.html b/CMSIS/Documentation/Driver/html/functions_vars_0x6e.html new file mode 100644 index 0000000..2d3d035 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x6e.html @@ -0,0 +1,171 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x6f.html b/CMSIS/Documentation/Driver/html/functions_vars_0x6f.html new file mode 100644 index 0000000..9390cf1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x6f.html @@ -0,0 +1,177 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x70.html b/CMSIS/Documentation/Driver/html/functions_vars_0x70.html new file mode 100644 index 0000000..d4518ae --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x70.html @@ -0,0 +1,261 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - p -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x72.html b/CMSIS/Documentation/Driver/html/functions_vars_0x72.html new file mode 100644 index 0000000..296338d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x72.html @@ -0,0 +1,244 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - r -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x73.html b/CMSIS/Documentation/Driver/html/functions_vars_0x73.html new file mode 100644 index 0000000..ce2991c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x73.html @@ -0,0 +1,262 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x74.html b/CMSIS/Documentation/Driver/html/functions_vars_0x74.html new file mode 100644 index 0000000..d2a7d8a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x74.html @@ -0,0 +1,201 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - t -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x75.html b/CMSIS/Documentation/Driver/html/functions_vars_0x75.html new file mode 100644 index 0000000..89b37c5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x75.html @@ -0,0 +1,207 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x76.html b/CMSIS/Documentation/Driver/html/functions_vars_0x76.html new file mode 100644 index 0000000..38db79b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x76.html @@ -0,0 +1,197 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/functions_vars_0x77.html b/CMSIS/Documentation/Driver/html/functions_vars_0x77.html new file mode 100644 index 0000000..fb0cad0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/functions_vars_0x77.html @@ -0,0 +1,177 @@ + + + + + +Data Fields - Variables +CMSIS-Driver: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/globals.html b/CMSIS/Documentation/Driver/html/globals.html new file mode 100644 index 0000000..7b37d2b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals.html @@ -0,0 +1,162 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - _ -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x63.html b/CMSIS/Documentation/Driver/html/globals_0x63.html new file mode 100644 index 0000000..d20d12b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x63.html @@ -0,0 +1,417 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - c -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x64.html b/CMSIS/Documentation/Driver/html/globals_0x64.html new file mode 100644 index 0000000..7ea8422 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x64.html @@ -0,0 +1,186 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - d -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x65.html b/CMSIS/Documentation/Driver/html/globals_0x65.html new file mode 100644 index 0000000..3a0f36f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x65.html @@ -0,0 +1,426 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - e -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x66.html b/CMSIS/Documentation/Driver/html/globals_0x66.html new file mode 100644 index 0000000..02e424a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x66.html @@ -0,0 +1,204 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - f -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x69.html b/CMSIS/Documentation/Driver/html/globals_0x69.html new file mode 100644 index 0000000..26adeab --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x69.html @@ -0,0 +1,255 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - i -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x6d.html b/CMSIS/Documentation/Driver/html/globals_0x6d.html new file mode 100644 index 0000000..0907761 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x6d.html @@ -0,0 +1,432 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - m -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x6e.html b/CMSIS/Documentation/Driver/html/globals_0x6e.html new file mode 100644 index 0000000..2db6dc2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x6e.html @@ -0,0 +1,495 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - n -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x70.html b/CMSIS/Documentation/Driver/html/globals_0x70.html new file mode 100644 index 0000000..6982c14 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x70.html @@ -0,0 +1,165 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - p -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x73.html b/CMSIS/Documentation/Driver/html/globals_0x73.html new file mode 100644 index 0000000..c81066c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x73.html @@ -0,0 +1,666 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_0x75.html b/CMSIS/Documentation/Driver/html/globals_0x75.html new file mode 100644 index 0000000..9d6e7b0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_0x75.html @@ -0,0 +1,849 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - u -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs.html b/CMSIS/Documentation/Driver/html/globals_defs.html new file mode 100644 index 0000000..f35bb48 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs.html @@ -0,0 +1,161 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - _ -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x63.html b/CMSIS/Documentation/Driver/html/globals_defs_0x63.html new file mode 100644 index 0000000..f5ba9e6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x63.html @@ -0,0 +1,290 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - c -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x64.html b/CMSIS/Documentation/Driver/html/globals_defs_0x64.html new file mode 100644 index 0000000..e32d5f2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x64.html @@ -0,0 +1,185 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - d -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x65.html b/CMSIS/Documentation/Driver/html/globals_defs_0x65.html new file mode 100644 index 0000000..25fc2a4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x65.html @@ -0,0 +1,329 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - e -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x66.html b/CMSIS/Documentation/Driver/html/globals_defs_0x66.html new file mode 100644 index 0000000..3d811f7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x66.html @@ -0,0 +1,164 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - f -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x69.html b/CMSIS/Documentation/Driver/html/globals_defs_0x69.html new file mode 100644 index 0000000..7e44464 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x69.html @@ -0,0 +1,212 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - i -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x6d.html b/CMSIS/Documentation/Driver/html/globals_defs_0x6d.html new file mode 100644 index 0000000..d06470b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x6d.html @@ -0,0 +1,386 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - m -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x6e.html b/CMSIS/Documentation/Driver/html/globals_defs_0x6e.html new file mode 100644 index 0000000..53aa7e5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x6e.html @@ -0,0 +1,434 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - n -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x73.html b/CMSIS/Documentation/Driver/html/globals_defs_0x73.html new file mode 100644 index 0000000..ec3da06 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x73.html @@ -0,0 +1,587 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_defs_0x75.html b/CMSIS/Documentation/Driver/html/globals_defs_0x75.html new file mode 100644 index 0000000..1c22b2e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_defs_0x75.html @@ -0,0 +1,626 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - u -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_enum.html b/CMSIS/Documentation/Driver/html/globals_enum.html new file mode 100644 index 0000000..ae72b87 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_enum.html @@ -0,0 +1,157 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_eval.html b/CMSIS/Documentation/Driver/html/globals_eval.html new file mode 100644 index 0000000..b3ca416 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_eval.html @@ -0,0 +1,220 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_func.html b/CMSIS/Documentation/Driver/html/globals_func.html new file mode 100644 index 0000000..c75e149 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_func.html @@ -0,0 +1,739 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - c -

    + + +

    - e -

    + + +

    - f -

    + + +

    - i -

    + + +

    - m -

    + + +

    - n -

    + + +

    - s -

    + + +

    - u -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/globals_type.html b/CMSIS/Documentation/Driver/html/globals_type.html new file mode 100644 index 0000000..28fd51b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/globals_type.html @@ -0,0 +1,190 @@ + + + + + +Globals +CMSIS-Driver: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___c_a_n__events.html b/CMSIS/Documentation/Driver/html/group___c_a_n__events.html new file mode 100644 index 0000000..28f3c85 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___c_a_n__events.html @@ -0,0 +1,196 @@ + + + + + +CAN Object Events +CMSIS-Driver: CAN Object Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Object Events
    +
    +
    + +

    Callback objects events notified via ARM_CAN_SignalObjectEvent. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_CAN_EVENT_SEND_COMPLETE   (1UL << 0)
     Send complete.
     
    #define ARM_CAN_EVENT_RECEIVE   (1UL << 1)
     Message received.
     
    #define ARM_CAN_EVENT_RECEIVE_OVERRUN   (1UL << 2)
     Received message overrun.
     
    +

    Description

    +

    Callback objects events notified via ARM_CAN_SignalObjectEvent.

    +

    The CAN driver generates callback objects events that are notified via the function ARM_CAN_SignalObjectEvent.

    +

    The following callback notification object events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_CAN_EVENT_SEND_COMPLETE   (1UL << 0)
    +
    + +

    Send complete.

    +
    See Also
    ARM_CAN_SignalObjectEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_EVENT_RECEIVE   (1UL << 1)
    +
    + +

    Message received.

    +
    See Also
    ARM_CAN_SignalObjectEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_EVENT_RECEIVE_OVERRUN   (1UL << 2)
    +
    + +

    Received message overrun.

    +
    See Also
    ARM_CAN_SignalObjectEvent
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___c_a_n__events.js b/CMSIS/Documentation/Driver/html/group___c_a_n__events.js new file mode 100644 index 0000000..872ec5c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___c_a_n__events.js @@ -0,0 +1,6 @@ +var group___c_a_n__events = +[ + [ "ARM_CAN_EVENT_SEND_COMPLETE", "group___c_a_n__events.html#ga486f0f35ebc7e3b5931ee68b56703503", null ], + [ "ARM_CAN_EVENT_RECEIVE", "group___c_a_n__events.html#ga2c1082561eeae3b2b8132e81fc241e47", null ], + [ "ARM_CAN_EVENT_RECEIVE_OVERRUN", "group___c_a_n__events.html#ga6c2d29b5c49d5cd18e97f5931157a94c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.html b/CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.html new file mode 100644 index 0000000..923d159 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.html @@ -0,0 +1,214 @@ + + + + + +CAN Unit Events +CMSIS-Driver: CAN Unit Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Unit Events
    +
    +
    + +

    Callback unit events notified via ARM_CAN_SignalUnitEvent. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_CAN_EVENT_UNIT_ACTIVE   (1U)
     Unit entered Error Active state.
     
    #define ARM_CAN_EVENT_UNIT_WARNING   (2U)
     Unit entered Error Warning state (one or both error counters >= 96)
     
    #define ARM_CAN_EVENT_UNIT_PASSIVE   (3U)
     Unit entered Error Passive state.
     
    #define ARM_CAN_EVENT_UNIT_BUS_OFF   (4U)
     Unit entered bus off state.
     
    +

    Description

    +

    Callback unit events notified via ARM_CAN_SignalUnitEvent.

    +

    The CAN driver generates callback unit events that are notified via the function ARM_CAN_SignalUnitEvent.

    +

    The following callback notification unit events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_CAN_EVENT_UNIT_ACTIVE   (1U)
    +
    + +

    Unit entered Error Active state.

    +
    See Also
    ARM_CAN_SignalUnitEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_EVENT_UNIT_WARNING   (2U)
    +
    + +

    Unit entered Error Warning state (one or both error counters >= 96)

    +
    See Also
    ARM_CAN_SignalUnitEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_EVENT_UNIT_PASSIVE   (3U)
    +
    + +

    Unit entered Error Passive state.

    +
    See Also
    ARM_CAN_SignalUnitEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_EVENT_UNIT_BUS_OFF   (4U)
    +
    + +

    Unit entered bus off state.

    +
    See Also
    ARM_CAN_SignalUnitEvent
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.js b/CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.js new file mode 100644 index 0000000..82216e5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___c_a_n__unit__events.js @@ -0,0 +1,7 @@ +var group___c_a_n__unit__events = +[ + [ "ARM_CAN_EVENT_UNIT_ACTIVE", "group___c_a_n__unit__events.html#ga0e65231ccb20684d7c8eac80385f8c18", null ], + [ "ARM_CAN_EVENT_UNIT_WARNING", "group___c_a_n__unit__events.html#ga3690f864edd2e124f4f9875fdde9a2eb", null ], + [ "ARM_CAN_EVENT_UNIT_PASSIVE", "group___c_a_n__unit__events.html#ga9c529d6697fe21e69639224322f8c4b4", null ], + [ "ARM_CAN_EVENT_UNIT_BUS_OFF", "group___c_a_n__unit__events.html#gafa4f992a97b4ca0f079aec2990a69bed", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.html b/CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.html new file mode 100644 index 0000000..276a87a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.html @@ -0,0 +1,210 @@ + + + + + +Ethernet MAC Events +CMSIS-Driver: Ethernet MAC Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Events
    +
    +
    + +

    The Ethernet MAC driver generates call back events that are notified via the function ARM_ETH_MAC_SignalEvent. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_MAC_EVENT_RX_FRAME   (1UL << 0)
     Frame Received.
     
    #define ARM_ETH_MAC_EVENT_TX_FRAME   (1UL << 1)
     Frame Transmitted.
     
    #define ARM_ETH_MAC_EVENT_WAKEUP   (1UL << 2)
     Wake-up (on Magic Packet)
     
    #define ARM_ETH_MAC_EVENT_TIMER_ALARM   (1UL << 3)
     Timer Alarm.
     
    +

    Description

    +

    The Ethernet MAC driver generates call back events that are notified via the function ARM_ETH_MAC_SignalEvent.

    +

    This section provides the event values for the ARM_ETH_MAC_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_EVENT_RX_FRAME   (1UL << 0)
    +
    + +

    Frame Received.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_EVENT_TX_FRAME   (1UL << 1)
    +
    + +

    Frame Transmitted.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_EVENT_WAKEUP   (1UL << 2)
    +
    + +

    Wake-up (on Magic Packet)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_EVENT_TIMER_ALARM   (1UL << 3)
    +
    + +

    Timer Alarm.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.js b/CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.js new file mode 100644 index 0000000..d117ee6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___e_t_h___m_a_c__events.js @@ -0,0 +1,7 @@ +var group___e_t_h___m_a_c__events = +[ + [ "ARM_ETH_MAC_EVENT_RX_FRAME", "group___e_t_h___m_a_c__events.html#ga76943471a4a3e9e8c1ff9fe83e43bd47", null ], + [ "ARM_ETH_MAC_EVENT_TX_FRAME", "group___e_t_h___m_a_c__events.html#ga0c0328ff7cf886d5fdb53bb84ec03c1b", null ], + [ "ARM_ETH_MAC_EVENT_WAKEUP", "group___e_t_h___m_a_c__events.html#ga1f3bdb219afa8f2a121b58cc84f5761c", null ], + [ "ARM_ETH_MAC_EVENT_TIMER_ALARM", "group___e_t_h___m_a_c__events.html#ga4afc71ecac964f195e27be4acdbe7c61", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___flash__events.html b/CMSIS/Documentation/Driver/html/group___flash__events.html new file mode 100644 index 0000000..645e76e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___flash__events.html @@ -0,0 +1,176 @@ + + + + + +Flash Events +CMSIS-Driver: Flash Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Flash Events
    +
    +
    + +

    The Flash driver generates call back events that are notified via the function ARM_Flash_SignalEvent. +More...

    + + + + + + + + +

    +Macros

    #define ARM_FLASH_EVENT_READY   (1UL << 0)
     Flash Ready.
     
    #define ARM_FLASH_EVENT_ERROR   (1UL << 1)
     Read/Program/Erase Error.
     
    +

    Description

    +

    The Flash driver generates call back events that are notified via the function ARM_Flash_SignalEvent.

    +

    This section provides the event values for the ARM_Flash_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_FLASH_EVENT_READY   (1UL << 0)
    +
    + +

    Flash Ready.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_FLASH_EVENT_ERROR   (1UL << 1)
    +
    + +

    Read/Program/Erase Error.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___flash__events.js b/CMSIS/Documentation/Driver/html/group___flash__events.js new file mode 100644 index 0000000..bac42f9 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___flash__events.js @@ -0,0 +1,5 @@ +var group___flash__events = +[ + [ "ARM_FLASH_EVENT_READY", "group___flash__events.html#gaf7a9c4ad125ee90df35907d861151e23", null ], + [ "ARM_FLASH_EVENT_ERROR", "group___flash__events.html#ga0dfea52761c0eed83e5d73e7a7f69962", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___i2_c__events.html b/CMSIS/Documentation/Driver/html/group___i2_c__events.html new file mode 100644 index 0000000..6f0b943 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___i2_c__events.html @@ -0,0 +1,295 @@ + + + + + +I2C Events +CMSIS-Driver: I2C Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    I2C Events
    +
    +
    + +

    The I2C driver generates call back events that are notified via the function ARM_I2C_SignalEvent. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_I2C_EVENT_TRANSFER_DONE   (1UL << 0)
     Master/Slave Transmit/Receive finished.
     
    #define ARM_I2C_EVENT_TRANSFER_INCOMPLETE   (1UL << 1)
     Master/Slave Transmit/Receive incomplete transfer.
     
    #define ARM_I2C_EVENT_SLAVE_TRANSMIT   (1UL << 2)
     Slave Transmit operation requested.
     
    #define ARM_I2C_EVENT_SLAVE_RECEIVE   (1UL << 3)
     Slave Receive operation requested.
     
    #define ARM_I2C_EVENT_ADDRESS_NACK   (1UL << 4)
     Address not acknowledged from Slave.
     
    #define ARM_I2C_EVENT_GENERAL_CALL   (1UL << 5)
     General Call indication.
     
    #define ARM_I2C_EVENT_ARBITRATION_LOST   (1UL << 6)
     Master lost arbitration.
     
    #define ARM_I2C_EVENT_BUS_ERROR   (1UL << 7)
     Bus error detected (START/STOP at illegal position)
     
    #define ARM_I2C_EVENT_BUS_CLEAR   (1UL << 8)
     Bus clear finished.
     
    +

    Description

    +

    The I2C driver generates call back events that are notified via the function ARM_I2C_SignalEvent.

    +

    This section provides the event values for the ARM_I2C_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_TRANSFER_DONE   (1UL << 0)
    +
    + +

    Master/Slave Transmit/Receive finished.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_TRANSFER_INCOMPLETE   (1UL << 1)
    +
    + +

    Master/Slave Transmit/Receive incomplete transfer.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_SLAVE_TRANSMIT   (1UL << 2)
    +
    + +

    Slave Transmit operation requested.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_SLAVE_RECEIVE   (1UL << 3)
    +
    + +

    Slave Receive operation requested.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_ADDRESS_NACK   (1UL << 4)
    +
    + +

    Address not acknowledged from Slave.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_GENERAL_CALL   (1UL << 5)
    +
    + +

    General Call indication.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_ARBITRATION_LOST   (1UL << 6)
    +
    + +

    Master lost arbitration.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_BUS_ERROR   (1UL << 7)
    +
    + +

    Bus error detected (START/STOP at illegal position)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_EVENT_BUS_CLEAR   (1UL << 8)
    +
    + +

    Bus clear finished.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___i2_c__events.js b/CMSIS/Documentation/Driver/html/group___i2_c__events.js new file mode 100644 index 0000000..ff1c880 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___i2_c__events.js @@ -0,0 +1,12 @@ +var group___i2_c__events = +[ + [ "ARM_I2C_EVENT_TRANSFER_DONE", "group___i2_c__events.html#ga5992dc0f6e839c4d066cfa83d535f30d", null ], + [ "ARM_I2C_EVENT_TRANSFER_INCOMPLETE", "group___i2_c__events.html#gafac3989c7b57727e1bed4ee9f2496ac9", null ], + [ "ARM_I2C_EVENT_SLAVE_TRANSMIT", "group___i2_c__events.html#gacfbbec9af083d35e8ea87ad16e9c6ec2", null ], + [ "ARM_I2C_EVENT_SLAVE_RECEIVE", "group___i2_c__events.html#gabd875b57ce39dadd849c53b885ad6661", null ], + [ "ARM_I2C_EVENT_ADDRESS_NACK", "group___i2_c__events.html#ga98b815769634d9578526b43589caa017", null ], + [ "ARM_I2C_EVENT_GENERAL_CALL", "group___i2_c__events.html#ga3ab54410b6410ed3a58762ff0c0d68b9", null ], + [ "ARM_I2C_EVENT_ARBITRATION_LOST", "group___i2_c__events.html#gac9000f44a578e2117d64dbc2093cec6d", null ], + [ "ARM_I2C_EVENT_BUS_ERROR", "group___i2_c__events.html#gaeef542840355131c18b53fd9ed1904a8", null ], + [ "ARM_I2C_EVENT_BUS_CLEAR", "group___i2_c__events.html#ga81ca21fad73dac1ffaff58921f848ea9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___n_a_n_d__events.html b/CMSIS/Documentation/Driver/html/group___n_a_n_d__events.html new file mode 100644 index 0000000..4cd92a3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___n_a_n_d__events.html @@ -0,0 +1,210 @@ + + + + + +NAND Events +CMSIS-Driver: NAND Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Events
    +
    +
    + +

    The NAND driver generates call back events that are notified via the function ARM_NAND_SignalEvent. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_NAND_EVENT_DEVICE_READY   (1UL << 0)
     Device Ready: R/Bn rising edge.
     
    #define ARM_NAND_EVENT_DRIVER_READY   (1UL << 1)
     Driver Ready.
     
    #define ARM_NAND_EVENT_DRIVER_DONE   (1UL << 2)
     Driver operation done.
     
    #define ARM_NAND_EVENT_ECC_ERROR   (1UL << 3)
     ECC could not correct data.
     
    +

    Description

    +

    The NAND driver generates call back events that are notified via the function ARM_NAND_SignalEvent.

    +

    This section provides the event values for the ARM_NAND_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_EVENT_DEVICE_READY   (1UL << 0)
    +
    + +

    Device Ready: R/Bn rising edge.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_EVENT_DRIVER_READY   (1UL << 1)
    +
    + +

    Driver Ready.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_EVENT_DRIVER_DONE   (1UL << 2)
    +
    + +

    Driver operation done.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_EVENT_ECC_ERROR   (1UL << 3)
    +
    + +

    ECC could not correct data.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___n_a_n_d__events.js b/CMSIS/Documentation/Driver/html/group___n_a_n_d__events.js new file mode 100644 index 0000000..b43c73d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___n_a_n_d__events.js @@ -0,0 +1,7 @@ +var group___n_a_n_d__events = +[ + [ "ARM_NAND_EVENT_DEVICE_READY", "group___n_a_n_d__events.html#gae0be7e1b41188def905de0a1568d442d", null ], + [ "ARM_NAND_EVENT_DRIVER_READY", "group___n_a_n_d__events.html#ga7b390a906db42c5ea4db38e0e85bb9e9", null ], + [ "ARM_NAND_EVENT_DRIVER_DONE", "group___n_a_n_d__events.html#gac774a334871789d24107b843d1ebd00c", null ], + [ "ARM_NAND_EVENT_ECC_ERROR", "group___n_a_n_d__events.html#ga7bee0c32528ab991c0c064f895f80664", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___s_a_i__events.html b/CMSIS/Documentation/Driver/html/group___s_a_i__events.html new file mode 100644 index 0000000..a8487cd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___s_a_i__events.html @@ -0,0 +1,227 @@ + + + + + +SAI Events +CMSIS-Driver: SAI Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Events
    +
    +
    + +

    The SAI driver generates call back events that are notified via the function ARM_SAI_SignalEvent. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_EVENT_SEND_COMPLETE   (1U << 0)
     Send completed.
     
    #define ARM_SAI_EVENT_RECEIVE_COMPLETE   (1U << 1)
     Receive completed.
     
    #define ARM_SAI_EVENT_TX_UNDERFLOW   (1U << 2)
     Transmit data not available.
     
    #define ARM_SAI_EVENT_RX_OVERFLOW   (1U << 3)
     Receive data overflow.
     
    #define ARM_SAI_EVENT_FRAME_ERROR   (1U << 4)
     Sync Frame error in Slave mode (optional)
     
    +

    Description

    +

    The SAI driver generates call back events that are notified via the function ARM_SAI_SignalEvent.

    +

    This section provides the event values for the ARM_SAI_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_EVENT_SEND_COMPLETE   (1U << 0)
    +
    + +

    Send completed.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_EVENT_RECEIVE_COMPLETE   (1U << 1)
    +
    + +

    Receive completed.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_EVENT_TX_UNDERFLOW   (1U << 2)
    +
    + +

    Transmit data not available.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_EVENT_RX_OVERFLOW   (1U << 3)
    +
    + +

    Receive data overflow.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_EVENT_FRAME_ERROR   (1U << 4)
    +
    + +

    Sync Frame error in Slave mode (optional)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___s_a_i__events.js b/CMSIS/Documentation/Driver/html/group___s_a_i__events.js new file mode 100644 index 0000000..d8e2ee7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___s_a_i__events.js @@ -0,0 +1,8 @@ +var group___s_a_i__events = +[ + [ "ARM_SAI_EVENT_SEND_COMPLETE", "group___s_a_i__events.html#ga3dfa64375859f40d157c224187d2885e", null ], + [ "ARM_SAI_EVENT_RECEIVE_COMPLETE", "group___s_a_i__events.html#ga5a9bde0b096aafe53279529a0adbef55", null ], + [ "ARM_SAI_EVENT_TX_UNDERFLOW", "group___s_a_i__events.html#ga6a0be7aaf9d700e5259f741641bc37ca", null ], + [ "ARM_SAI_EVENT_RX_OVERFLOW", "group___s_a_i__events.html#gac83e9df0238803ef2c88f16605f73bf5", null ], + [ "ARM_SAI_EVENT_FRAME_ERROR", "group___s_a_i__events.html#ga6ffcf96fe404b48421a57fbd122b26bc", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___s_p_i__control.html b/CMSIS/Documentation/Driver/html/group___s_p_i__control.html new file mode 100644 index 0000000..4619c40 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___s_p_i__control.html @@ -0,0 +1,167 @@ + + + + + +SPI Control Codes +CMSIS-Driver: SPI Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Control Codes
    +
    +
    + +

    Many parameters of the SPI driver are configured using the ARM_SPI_Control function. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Content

     SPI Mode Controls
     Specifies SPI mode.
     
     SPI Frame Format
     Defines the frame format.
     
     SPI Data Bits
     Defines the number of data bits.
     
     SPI Bit Order
     Defines the bit order.
     
     SPI Slave Select Mode
     Specifies SPI slave select mode.
     
     SPI Miscellaneous Controls
     Specifies additional miscellaneous controls.
     
    +

    Description

    +

    Many parameters of the SPI driver are configured using the ARM_SPI_Control function.

    +

    The various SPI control codes define:

    + +

    Refer to the ARM_SPI_Control function for further details.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___s_p_i__control.js b/CMSIS/Documentation/Driver/html/group___s_p_i__control.js new file mode 100644 index 0000000..5105075 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___s_p_i__control.js @@ -0,0 +1,9 @@ +var group___s_p_i__control = +[ + [ "SPI Mode Controls", "group__spi__mode__ctrls.html", "group__spi__mode__ctrls" ], + [ "SPI Frame Format", "group__spi__frame__format__ctrls.html", "group__spi__frame__format__ctrls" ], + [ "SPI Data Bits", "group__spi__data__bits__ctrls.html", "group__spi__data__bits__ctrls" ], + [ "SPI Bit Order", "group__spi__bit__order__ctrls.html", "group__spi__bit__order__ctrls" ], + [ "SPI Slave Select Mode", "group__spi__slave__select__mode__ctrls.html", "group__spi__slave__select__mode__ctrls" ], + [ "SPI Miscellaneous Controls", "group__spi__misc__ctrls.html", "group__spi__misc__ctrls" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___s_p_i__events.html b/CMSIS/Documentation/Driver/html/group___s_p_i__events.html new file mode 100644 index 0000000..0c1f930 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___s_p_i__events.html @@ -0,0 +1,193 @@ + + + + + +SPI Events +CMSIS-Driver: SPI Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Events
    +
    +
    + +

    The SPI driver generates call back events that are notified via the function ARM_SPI_SignalEvent. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_SPI_EVENT_TRANSFER_COMPLETE   (1UL << 0)
     Data Transfer completed.
     
    #define ARM_SPI_EVENT_DATA_LOST   (1UL << 1)
     Data lost: Receive overflow / Transmit underflow.
     
    #define ARM_SPI_EVENT_MODE_FAULT   (1UL << 2)
     Master Mode Fault (SS deactivated when Master)
     
    +

    Description

    +

    The SPI driver generates call back events that are notified via the function ARM_SPI_SignalEvent.

    +

    This section provides the event values for the ARM_SPI_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_EVENT_TRANSFER_COMPLETE   (1UL << 0)
    +
    + +

    Data Transfer completed.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_EVENT_DATA_LOST   (1UL << 1)
    +
    + +

    Data lost: Receive overflow / Transmit underflow.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_EVENT_MODE_FAULT   (1UL << 2)
    +
    + +

    Master Mode Fault (SS deactivated when Master)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___s_p_i__events.js b/CMSIS/Documentation/Driver/html/group___s_p_i__events.js new file mode 100644 index 0000000..59df5c6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___s_p_i__events.js @@ -0,0 +1,6 @@ +var group___s_p_i__events = +[ + [ "ARM_SPI_EVENT_TRANSFER_COMPLETE", "group___s_p_i__events.html#gaabdfc9e17641144cd50d36d15511a1b8", null ], + [ "ARM_SPI_EVENT_DATA_LOST", "group___s_p_i__events.html#ga8e63d99c80ea56de596a8d0a51fd8244", null ], + [ "ARM_SPI_EVENT_MODE_FAULT", "group___s_p_i__events.html#ga7eaa229003689aa18598273490b3e630", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.html b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.html new file mode 100644 index 0000000..d084f98 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.html @@ -0,0 +1,175 @@ + + + + + +USART Control Codes +CMSIS-Driver: USART Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Control Codes
    +
    +
    + +

    Many parameters of the USART driver are configured using the ARM_USART_Control function. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Content

     USART Mode Control
     Specify USART mode.
     
     USART Miscellaneous Control
     Specifies additional miscellaneous controls.
     
     USART Data Bits
     Defines the number of data bits.
     
     USART Parity Bit
     Defines the parity bit.
     
     USART Stop Bits
     Defines the number of stop bits.
     
     USART Flow Control
     Specifies RTS/CTS flow control.
     
     USART Clock Polarity
     Defines the clock polarity for the synchronous mode.
     
     USART Clock Phase
     Defines the clock phase for the synchronous mode.
     
    +

    Description

    +

    Many parameters of the USART driver are configured using the ARM_USART_Control function.

    +

    The various USART control codes define:

    + +

    Refer to the ARM_USART_Control function for further details.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.js b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.js new file mode 100644 index 0000000..bd7e125 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__control.js @@ -0,0 +1,11 @@ +var group___u_s_a_r_t__control = +[ + [ "USART Mode Control", "group__usart__mode__control.html", "group__usart__mode__control" ], + [ "USART Miscellaneous Control", "group__usart__misc__control.html", "group__usart__misc__control" ], + [ "USART Data Bits", "group__usart__data__bits.html", "group__usart__data__bits" ], + [ "USART Parity Bit", "group__usart__parity__bit.html", "group__usart__parity__bit" ], + [ "USART Stop Bits", "group__usart__stop__bits.html", "group__usart__stop__bits" ], + [ "USART Flow Control", "group__usart__flow__control.html", "group__usart__flow__control" ], + [ "USART Clock Polarity", "group__usart__clock__polarity.html", "group__usart__clock__polarity" ], + [ "USART Clock Phase", "group__usart__clock__phase.html", "group__usart__clock__phase" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.html b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.html new file mode 100644 index 0000000..01d4ed3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.html @@ -0,0 +1,380 @@ + + + + + +USART Events +CMSIS-Driver: USART Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Events
    +
    +
    + +

    The USART driver generates call back events that are notified via the function ARM_USART_SignalEvent. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_EVENT_SEND_COMPLETE   (1UL << 0)
     Send completed; however USART may still transmit data.
     
    #define ARM_USART_EVENT_RECEIVE_COMPLETE   (1UL << 1)
     Receive completed.
     
    #define ARM_USART_EVENT_TRANSFER_COMPLETE   (1UL << 2)
     Transfer completed.
     
    #define ARM_USART_EVENT_TX_COMPLETE   (1UL << 3)
     Transmit completed (optional)
     
    #define ARM_USART_EVENT_TX_UNDERFLOW   (1UL << 4)
     Transmit data not available (Synchronous Slave)
     
    #define ARM_USART_EVENT_RX_OVERFLOW   (1UL << 5)
     Receive data overflow.
     
    #define ARM_USART_EVENT_RX_TIMEOUT   (1UL << 6)
     Receive character timeout (optional)
     
    #define ARM_USART_EVENT_RX_BREAK   (1UL << 7)
     Break detected on receive.
     
    #define ARM_USART_EVENT_RX_FRAMING_ERROR   (1UL << 8)
     Framing error detected on receive.
     
    #define ARM_USART_EVENT_RX_PARITY_ERROR   (1UL << 9)
     Parity error detected on receive.
     
    #define ARM_USART_EVENT_CTS   (1UL << 10)
     CTS state changed (optional)
     
    #define ARM_USART_EVENT_DSR   (1UL << 11)
     DSR state changed (optional)
     
    #define ARM_USART_EVENT_DCD   (1UL << 12)
     DCD state changed (optional)
     
    #define ARM_USART_EVENT_RI   (1UL << 13)
     RI state changed (optional)
     
    +

    Description

    +

    The USART driver generates call back events that are notified via the function ARM_USART_SignalEvent.

    +

    This section provides the event values for the ARM_USART_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_EVENT_SEND_COMPLETE   (1UL << 0)
    +
    + +

    Send completed; however USART may still transmit data.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_RECEIVE_COMPLETE   (1UL << 1)
    +
    + +

    Receive completed.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_TRANSFER_COMPLETE   (1UL << 2)
    +
    + +

    Transfer completed.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_TX_COMPLETE   (1UL << 3)
    +
    + +

    Transmit completed (optional)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_TX_UNDERFLOW   (1UL << 4)
    +
    + +

    Transmit data not available (Synchronous Slave)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_RX_OVERFLOW   (1UL << 5)
    +
    + +

    Receive data overflow.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_RX_TIMEOUT   (1UL << 6)
    +
    + +

    Receive character timeout (optional)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_RX_BREAK   (1UL << 7)
    +
    + +

    Break detected on receive.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_RX_FRAMING_ERROR   (1UL << 8)
    +
    + +

    Framing error detected on receive.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_RX_PARITY_ERROR   (1UL << 9)
    +
    + +

    Parity error detected on receive.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_CTS   (1UL << 10)
    +
    + +

    CTS state changed (optional)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_DSR   (1UL << 11)
    +
    + +

    DSR state changed (optional)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_DCD   (1UL << 12)
    +
    + +

    DCD state changed (optional)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_EVENT_RI   (1UL << 13)
    +
    + +

    RI state changed (optional)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.js b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.js new file mode 100644 index 0000000..cce77ce --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_a_r_t__events.js @@ -0,0 +1,17 @@ +var group___u_s_a_r_t__events = +[ + [ "ARM_USART_EVENT_SEND_COMPLETE", "group___u_s_a_r_t__events.html#gaae1c626192b16ccace93f3546e7884bf", null ], + [ "ARM_USART_EVENT_RECEIVE_COMPLETE", "group___u_s_a_r_t__events.html#ga08b165fd8525e44e3ce42ed6183cd30a", null ], + [ "ARM_USART_EVENT_TRANSFER_COMPLETE", "group___u_s_a_r_t__events.html#ga0599793e6aa531d56ff9f81ff12605d7", null ], + [ "ARM_USART_EVENT_TX_COMPLETE", "group___u_s_a_r_t__events.html#ga12872a3b04343f97d9535b5b0d37286d", null ], + [ "ARM_USART_EVENT_TX_UNDERFLOW", "group___u_s_a_r_t__events.html#gae57b9977bd338bf8bef86978843fa443", null ], + [ "ARM_USART_EVENT_RX_OVERFLOW", "group___u_s_a_r_t__events.html#ga43a0869daf83abb3fea96926a97047ad", null ], + [ "ARM_USART_EVENT_RX_TIMEOUT", "group___u_s_a_r_t__events.html#ga66ee2256571450a3fc3c530344ea9bd7", null ], + [ "ARM_USART_EVENT_RX_BREAK", "group___u_s_a_r_t__events.html#gaa1d19e48faf2bdc2a976de448928288e", null ], + [ "ARM_USART_EVENT_RX_FRAMING_ERROR", "group___u_s_a_r_t__events.html#ga2d97495c650220fbfe9d6977d0953127", null ], + [ "ARM_USART_EVENT_RX_PARITY_ERROR", "group___u_s_a_r_t__events.html#gadb4fec2530fc5ae3ad2b056741883451", null ], + [ "ARM_USART_EVENT_CTS", "group___u_s_a_r_t__events.html#ga4cd807ca131bdcb1a7eb4f223fa70476", null ], + [ "ARM_USART_EVENT_DSR", "group___u_s_a_r_t__events.html#ga5afef591c2e8dd9bc4332b7bc8d96309", null ], + [ "ARM_USART_EVENT_DCD", "group___u_s_a_r_t__events.html#ga1628b951feba1c851f424ce89da409a4", null ], + [ "ARM_USART_EVENT_RI", "group___u_s_a_r_t__events.html#gac17fe5723d4c5923656dadd9d1302154", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.html b/CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.html new file mode 100644 index 0000000..c04c789 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.html @@ -0,0 +1,209 @@ + + + + + +USB Endpoint Type +CMSIS-Driver: USB Endpoint Type + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USB Endpoint Type
    +
    +
    + +

    USB Endpoint Type definitions. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USB_ENDPOINT_CONTROL   0
     Control Endpoint.
     
    #define ARM_USB_ENDPOINT_ISOCHRONOUS   1
     Isochronous Endpoint.
     
    #define ARM_USB_ENDPOINT_BULK   2
     Bulk Endpoint.
     
    #define ARM_USB_ENDPOINT_INTERRUPT   3
     Interrupt Endpoint.
     
    +

    Description

    +

    USB Endpoint Type definitions.

    +

    The following USB Endpoint Type values are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_CONTROL   0
    +
    + +

    Control Endpoint.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_ISOCHRONOUS   1
    +
    + +

    Isochronous Endpoint.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_BULK   2
    +
    + +

    Bulk Endpoint.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_ENDPOINT_INTERRUPT   3
    +
    + +

    Interrupt Endpoint.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.js b/CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.js new file mode 100644 index 0000000..911028a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b__endpoint__type.js @@ -0,0 +1,7 @@ +var group___u_s_b__endpoint__type = +[ + [ "ARM_USB_ENDPOINT_CONTROL", "group___u_s_b__endpoint__type.html#gaf8df4a353e829cf41a9f712e1b3c93a1", null ], + [ "ARM_USB_ENDPOINT_ISOCHRONOUS", "group___u_s_b__endpoint__type.html#gabb5913e9d1434240588ec43722d3eb16", null ], + [ "ARM_USB_ENDPOINT_BULK", "group___u_s_b__endpoint__type.html#gac80fcc73aada5562e35e4bf2c21b7b2d", null ], + [ "ARM_USB_ENDPOINT_INTERRUPT", "group___u_s_b__endpoint__type.html#ga9375cd3a2735e7d5c8c359a1cdbc7d95", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b__speed.html b/CMSIS/Documentation/Driver/html/group___u_s_b__speed.html new file mode 100644 index 0000000..5406252 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b__speed.html @@ -0,0 +1,192 @@ + + + + + +USB Speed +CMSIS-Driver: USB Speed + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USB Speed
    +
    +
    + +

    USB Speed definitions. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_USB_SPEED_LOW   0
     Low-speed USB.
     
    #define ARM_USB_SPEED_FULL   1
     Full-speed USB.
     
    #define ARM_USB_SPEED_HIGH   2
     High-speed USB.
     
    +

    Description

    +

    USB Speed definitions.

    +

    The following USB speed values are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USB_SPEED_LOW   0
    +
    + +

    Low-speed USB.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_SPEED_FULL   1
    +
    + +

    Full-speed USB.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USB_SPEED_HIGH   2
    +
    + +

    High-speed USB.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b__speed.js b/CMSIS/Documentation/Driver/html/group___u_s_b__speed.js new file mode 100644 index 0000000..4618400 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b__speed.js @@ -0,0 +1,6 @@ +var group___u_s_b__speed = +[ + [ "ARM_USB_SPEED_LOW", "group___u_s_b__speed.html#gae44fe8958474cd90f2288ea27752df27", null ], + [ "ARM_USB_SPEED_FULL", "group___u_s_b__speed.html#ga0d1b465db654b651dcf588c8b59899d5", null ], + [ "ARM_USB_SPEED_HIGH", "group___u_s_b__speed.html#ga13fa1e1934021f744dba837776205c89", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.html b/CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.html new file mode 100644 index 0000000..5f9aea3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.html @@ -0,0 +1,244 @@ + + + + + +USBD Device Events +CMSIS-Driver: USBD Device Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USBD Device Events
    +
    +
    + +

    The USB Device driver generates Device call back events that are notified via the function ARM_USBD_SignalDeviceEvent. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USBD_EVENT_VBUS_ON   (1UL << 0)
     USB Device VBUS On.
     
    #define ARM_USBD_EVENT_VBUS_OFF   (1UL << 1)
     USB Device VBUS Off.
     
    #define ARM_USBD_EVENT_RESET   (1UL << 2)
     USB Reset occurred.
     
    #define ARM_USBD_EVENT_HIGH_SPEED   (1UL << 3)
     USB switch to High Speed occurred.
     
    #define ARM_USBD_EVENT_SUSPEND   (1UL << 4)
     USB Suspend occurred.
     
    #define ARM_USBD_EVENT_RESUME   (1UL << 5)
     USB Resume occurred.
     
    +

    Description

    +

    The USB Device driver generates Device call back events that are notified via the function ARM_USBD_SignalDeviceEvent.

    +

    This section provides the event values for the ARM_USBD_SignalDeviceEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_VBUS_ON   (1UL << 0)
    +
    + +

    USB Device VBUS On.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_VBUS_OFF   (1UL << 1)
    +
    + +

    USB Device VBUS Off.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_RESET   (1UL << 2)
    +
    + +

    USB Reset occurred.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_HIGH_SPEED   (1UL << 3)
    +
    + +

    USB switch to High Speed occurred.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_SUSPEND   (1UL << 4)
    +
    + +

    USB Suspend occurred.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_RESUME   (1UL << 5)
    +
    + +

    USB Resume occurred.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.js b/CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.js new file mode 100644 index 0000000..b2f0ffc --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_d__dev__events.js @@ -0,0 +1,9 @@ +var group___u_s_b_d__dev__events = +[ + [ "ARM_USBD_EVENT_VBUS_ON", "group___u_s_b_d__dev__events.html#ga32546413cfe55154351f74fb56de1045", null ], + [ "ARM_USBD_EVENT_VBUS_OFF", "group___u_s_b_d__dev__events.html#ga6810c08a6e6a46ba443899e5ba9c3aec", null ], + [ "ARM_USBD_EVENT_RESET", "group___u_s_b_d__dev__events.html#ga489e1b88f7b0361494ca3a8dc73c227a", null ], + [ "ARM_USBD_EVENT_HIGH_SPEED", "group___u_s_b_d__dev__events.html#ga689d1e031013d0e66aeef4243490d843", null ], + [ "ARM_USBD_EVENT_SUSPEND", "group___u_s_b_d__dev__events.html#ga74dc7c0ba71baf285400d5a555224653", null ], + [ "ARM_USBD_EVENT_RESUME", "group___u_s_b_d__dev__events.html#ga5b1c9884b237ba7778f79761e5db9f45", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.html b/CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.html new file mode 100644 index 0000000..42defeb --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.html @@ -0,0 +1,193 @@ + + + + + +USBD Endpoint Events +CMSIS-Driver: USBD Endpoint Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USBD Endpoint Events
    +
    +
    + +

    The USB Device driver generates Endpoint call back events that are notified via the function ARM_USBD_SignalEndpointEvent. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_USBD_EVENT_SETUP   (1UL << 0)
     SETUP Packet.
     
    #define ARM_USBD_EVENT_OUT   (1UL << 1)
     OUT Packet(s)
     
    #define ARM_USBD_EVENT_IN   (1UL << 2)
     IN Packet(s)
     
    +

    Description

    +

    The USB Device driver generates Endpoint call back events that are notified via the function ARM_USBD_SignalEndpointEvent.

    +

    This section provides the event values for the ARM_USBD_SignalEndpointEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_SETUP   (1UL << 0)
    +
    + +

    SETUP Packet.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_OUT   (1UL << 1)
    +
    + +

    OUT Packet(s)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBD_EVENT_IN   (1UL << 2)
    +
    + +

    IN Packet(s)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.js b/CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.js new file mode 100644 index 0000000..b829088 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_d__ep__events.js @@ -0,0 +1,6 @@ +var group___u_s_b_d__ep__events = +[ + [ "ARM_USBD_EVENT_SETUP", "group___u_s_b_d__ep__events.html#gaa0814f6880f4c0ac302ac9ebc8170739", null ], + [ "ARM_USBD_EVENT_OUT", "group___u_s_b_d__ep__events.html#ga35f7340508acb5fe7a5f43bbcac1887a", null ], + [ "ARM_USBD_EVENT_IN", "group___u_s_b_d__ep__events.html#ga375d3d8f363a056ff607c5ab3b92a864", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.html b/CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.html new file mode 100644 index 0000000..e39efc4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.html @@ -0,0 +1,358 @@ + + + + + +USBH Packet Information +CMSIS-Driver: USBH Packet Information + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USBH Packet Information
    +
    +
    + +

    Specify USB packet information used by the function ARM_USBH_PipeTransfer. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USBH_PACKET_SETUP   (0x01UL << ARM_USBH_PACKET_TOKEN_Pos)
     SETUP Packet.
     
    #define ARM_USBH_PACKET_OUT   (0x02UL << ARM_USBH_PACKET_TOKEN_Pos)
     OUT Packet.
     
    #define ARM_USBH_PACKET_IN   (0x03UL << ARM_USBH_PACKET_TOKEN_Pos)
     IN Packet.
     
    #define ARM_USBH_PACKET_PING   (0x04UL << ARM_USBH_PACKET_TOKEN_Pos)
     PING Packet.
     
    #define ARM_USBH_PACKET_DATA0   (0x01UL << ARM_USBH_PACKET_DATA_Pos)
     DATA0 PID.
     
    #define ARM_USBH_PACKET_DATA1   (0x02UL << ARM_USBH_PACKET_DATA_Pos)
     DATA1 PID.
     
    #define ARM_USBH_PACKET_SSPLIT   (0x08UL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet.
     
    #define ARM_USBH_PACKET_SSPLIT_S   (0x09UL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet: Data Start.
     
    #define ARM_USBH_PACKET_SSPLIT_E   (0x0AUL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet: Data End.
     
    #define ARM_USBH_PACKET_SSPLIT_S_E   (0x0BUL << ARM_USBH_PACKET_SPLIT_Pos)
     SSPLIT Packet: Data All.
     
    #define ARM_USBH_PACKET_CSPLIT   (0x0CUL << ARM_USBH_PACKET_SPLIT_Pos)
     CSPLIT Packet.
     
    #define ARM_USBH_PACKET_PRE   (1UL << 12)
     PRE Token.
     
    +

    Description

    +

    Specify USB packet information used by the function ARM_USBH_PipeTransfer.

    +

    This section provides the packet information values (parameter packet) for the ARM_USBH_PipeTransfer function.

    +

    The following values are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_SETUP   (0x01UL << ARM_USBH_PACKET_TOKEN_Pos)
    +
    + +

    SETUP Packet.

    +

    Generate SETUP transaction.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_OUT   (0x02UL << ARM_USBH_PACKET_TOKEN_Pos)
    +
    + +

    OUT Packet.

    +

    Generate OUT transaction.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_IN   (0x03UL << ARM_USBH_PACKET_TOKEN_Pos)
    +
    + +

    IN Packet.

    +

    Generate IN transaction.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_PING   (0x04UL << ARM_USBH_PACKET_TOKEN_Pos)
    +
    + +

    PING Packet.

    +

    Generate PING transaction (no data packet).

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_DATA0   (0x01UL << ARM_USBH_PACKET_DATA_Pos)
    +
    + +

    DATA0 PID.

    +

    Force DATA0 PID (Packet Identifier) for the initial data packet. When not specified than the driver provides the initial value according to the current state.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_DATA1   (0x02UL << ARM_USBH_PACKET_DATA_Pos)
    +
    + +

    DATA1 PID.

    +

    Force DATA1 PID (Packet Identifier) for the initial data packet. When not specified than the driver provides the initial value according to the current state.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_SSPLIT   (0x08UL << ARM_USBH_PACKET_SPLIT_Pos)
    +
    + +

    SSPLIT Packet.

    +

    Used when driver does not support automatic handling of SPLIT packets and indicates Start-Split packet. For isochronous OUT it indicates that the High-speed data is in the middle of the Full-speed data payload.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_SSPLIT_S   (0x09UL << ARM_USBH_PACKET_SPLIT_Pos)
    +
    + +

    SSPLIT Packet: Data Start.

    +

    Used when driver does not support automatic handling of SPLIT packets and indicates Start-Split packet. Valid only for isochronous OUT and indicates that the High-speed data is the start of the Full-speed data payload.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_SSPLIT_E   (0x0AUL << ARM_USBH_PACKET_SPLIT_Pos)
    +
    + +

    SSPLIT Packet: Data End.

    +

    Used when driver does not support automatic handling of SPLIT packets and indicates Start-Split packet. Valid only for isochronous OUT and indicates that the High-speed data is the end of the Full-speed data payload.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_SSPLIT_S_E   (0x0BUL << ARM_USBH_PACKET_SPLIT_Pos)
    +
    + +

    SSPLIT Packet: Data All.

    +

    Used when driver does not support automatic handling of SPLIT packets and indicates Start-Split packet. Valid only for isochronous OUT and indicates that the High-speed data is all of the Full-speed data payload.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_CSPLIT   (0x0CUL << ARM_USBH_PACKET_SPLIT_Pos)
    +
    + +

    CSPLIT Packet.

    +

    Used when driver does not support automatic handling of SPLIT packets and indicates Complete-Split packet.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_PACKET_PRE   (1UL << 12)
    +
    + +

    PRE Token.

    +

    Generate PRE (Preamble) for low-speed devices within a full/low-speed signaling environment.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.js b/CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.js new file mode 100644 index 0000000..02de0e7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_h__packets.js @@ -0,0 +1,15 @@ +var group___u_s_b_h__packets = +[ + [ "ARM_USBH_PACKET_SETUP", "group___u_s_b_h__packets.html#gafb0bcfee8abd4ada7f789aec2993048a", null ], + [ "ARM_USBH_PACKET_OUT", "group___u_s_b_h__packets.html#ga409b2ae6503e738eb86e35652f9ebf8d", null ], + [ "ARM_USBH_PACKET_IN", "group___u_s_b_h__packets.html#ga08d60ec20c091b5e7e252d137268cb76", null ], + [ "ARM_USBH_PACKET_PING", "group___u_s_b_h__packets.html#ga2eeab58cebb4556214c021ff02c36b16", null ], + [ "ARM_USBH_PACKET_DATA0", "group___u_s_b_h__packets.html#ga40075aa1d3eff6d4b94dfe28d7745873", null ], + [ "ARM_USBH_PACKET_DATA1", "group___u_s_b_h__packets.html#ga34014ff212b26e3ee8c8670a180846e2", null ], + [ "ARM_USBH_PACKET_SSPLIT", "group___u_s_b_h__packets.html#gaf47930d994c53fc1772caed129aee921", null ], + [ "ARM_USBH_PACKET_SSPLIT_S", "group___u_s_b_h__packets.html#ga3b8fa0d3aa083718b4f5d60e92394b47", null ], + [ "ARM_USBH_PACKET_SSPLIT_E", "group___u_s_b_h__packets.html#gaf99ee84befc6522fef56b21df870df72", null ], + [ "ARM_USBH_PACKET_SSPLIT_S_E", "group___u_s_b_h__packets.html#ga8d2b46fbc04d871abe0661f8acd18a94", null ], + [ "ARM_USBH_PACKET_CSPLIT", "group___u_s_b_h__packets.html#gadbfbbf7b4709f3ee4c3610da8402cfec", null ], + [ "ARM_USBH_PACKET_PRE", "group___u_s_b_h__packets.html#ga6dd82c7b96bc1339d725a6133a32a62f", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.html b/CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.html new file mode 100644 index 0000000..b7ab526 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.html @@ -0,0 +1,261 @@ + + + + + +USBH Pipe Events +CMSIS-Driver: USBH Pipe Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USBH Pipe Events
    +
    +
    + +

    The USB Host driver generates Pipe call back events that are notified via the function ARM_USBH_SignalPipeEvent. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USBH_EVENT_TRANSFER_COMPLETE   (1UL << 0)
     Transfer completed.
     
    #define ARM_USBH_EVENT_HANDSHAKE_NAK   (1UL << 1)
     NAK Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_NYET   (1UL << 2)
     NYET Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_MDATA   (1UL << 3)
     MDATA Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_STALL   (1UL << 4)
     STALL Handshake received.
     
    #define ARM_USBH_EVENT_HANDSHAKE_ERR   (1UL << 5)
     ERR Handshake received.
     
    #define ARM_USBH_EVENT_BUS_ERROR   (1UL << 6)
     Bus Error detected.
     
    +

    Description

    +

    The USB Host driver generates Pipe call back events that are notified via the function ARM_USBH_SignalPipeEvent.

    +

    This section provides the event values for the ARM_USBH_SignalPipeEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_TRANSFER_COMPLETE   (1UL << 0)
    +
    + +

    Transfer completed.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_HANDSHAKE_NAK   (1UL << 1)
    +
    + +

    NAK Handshake received.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_HANDSHAKE_NYET   (1UL << 2)
    +
    + +

    NYET Handshake received.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_HANDSHAKE_MDATA   (1UL << 3)
    +
    + +

    MDATA Handshake received.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_HANDSHAKE_STALL   (1UL << 4)
    +
    + +

    STALL Handshake received.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_HANDSHAKE_ERR   (1UL << 5)
    +
    + +

    ERR Handshake received.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_BUS_ERROR   (1UL << 6)
    +
    + +

    Bus Error detected.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.js b/CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.js new file mode 100644 index 0000000..11d7bc3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_h__pipe__events.js @@ -0,0 +1,10 @@ +var group___u_s_b_h__pipe__events = +[ + [ "ARM_USBH_EVENT_TRANSFER_COMPLETE", "group___u_s_b_h__pipe__events.html#gab161955b1ab0b7928befe446ef78634b", null ], + [ "ARM_USBH_EVENT_HANDSHAKE_NAK", "group___u_s_b_h__pipe__events.html#ga3895b82193855d9a6f0b7e8a9b65e2c0", null ], + [ "ARM_USBH_EVENT_HANDSHAKE_NYET", "group___u_s_b_h__pipe__events.html#ga62ae214576c923ce737a16098e9836e5", null ], + [ "ARM_USBH_EVENT_HANDSHAKE_MDATA", "group___u_s_b_h__pipe__events.html#ga681ce0983f8c77c41f3cc5df1af8d010", null ], + [ "ARM_USBH_EVENT_HANDSHAKE_STALL", "group___u_s_b_h__pipe__events.html#ga4fdc44fc78f342576dd11ad7cb84b4b8", null ], + [ "ARM_USBH_EVENT_HANDSHAKE_ERR", "group___u_s_b_h__pipe__events.html#gac7cc573f879fbab678dc7d1347c68614", null ], + [ "ARM_USBH_EVENT_BUS_ERROR", "group___u_s_b_h__pipe__events.html#ga7bd871b1e5c059bee398c32429370724", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.html b/CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.html new file mode 100644 index 0000000..c0b7300 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.html @@ -0,0 +1,261 @@ + + + + + +USBH Port Events +CMSIS-Driver: USBH Port Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USBH Port Events
    +
    +
    + +

    The USB Host driver generates Port call back events that are notified via the function ARM_USBH_SignalPortEvent. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USBH_EVENT_CONNECT   (1UL << 0)
     USB Device Connected to Port.
     
    #define ARM_USBH_EVENT_DISCONNECT   (1UL << 1)
     USB Device Disconnected from Port.
     
    #define ARM_USBH_EVENT_OVERCURRENT   (1UL << 2)
     USB Device caused Overcurrent.
     
    #define ARM_USBH_EVENT_RESET   (1UL << 3)
     USB Reset completed.
     
    #define ARM_USBH_EVENT_SUSPEND   (1UL << 4)
     USB Suspend occurred.
     
    #define ARM_USBH_EVENT_RESUME   (1UL << 5)
     USB Resume occurred.
     
    #define ARM_USBH_EVENT_REMOTE_WAKEUP   (1UL << 6)
     USB Device activated Remote Wakeup.
     
    +

    Description

    +

    The USB Host driver generates Port call back events that are notified via the function ARM_USBH_SignalPortEvent.

    +

    This section provides the event values for the ARM_USBH_SignalPortEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_CONNECT   (1UL << 0)
    +
    + +

    USB Device Connected to Port.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_DISCONNECT   (1UL << 1)
    +
    + +

    USB Device Disconnected from Port.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_OVERCURRENT   (1UL << 2)
    +
    + +

    USB Device caused Overcurrent.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_RESET   (1UL << 3)
    +
    + +

    USB Reset completed.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_SUSPEND   (1UL << 4)
    +
    + +

    USB Suspend occurred.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_RESUME   (1UL << 5)
    +
    + +

    USB Resume occurred.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USBH_EVENT_REMOTE_WAKEUP   (1UL << 6)
    +
    + +

    USB Device activated Remote Wakeup.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.js b/CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.js new file mode 100644 index 0000000..988a1eb --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group___u_s_b_h__port__events.js @@ -0,0 +1,10 @@ +var group___u_s_b_h__port__events = +[ + [ "ARM_USBH_EVENT_CONNECT", "group___u_s_b_h__port__events.html#ga71bfd8b8cd41b8aa6303d5d3a91597e6", null ], + [ "ARM_USBH_EVENT_DISCONNECT", "group___u_s_b_h__port__events.html#gaba67919f64e9a08ba1264363b2710d20", null ], + [ "ARM_USBH_EVENT_OVERCURRENT", "group___u_s_b_h__port__events.html#ga0955fdc2aedd2c5aa2be6cd782b3f2a8", null ], + [ "ARM_USBH_EVENT_RESET", "group___u_s_b_h__port__events.html#ga70ae1e0a7872556d302a7f7840843c4a", null ], + [ "ARM_USBH_EVENT_SUSPEND", "group___u_s_b_h__port__events.html#gae1f91db7d31bcebbf60a23fb04cf7eb5", null ], + [ "ARM_USBH_EVENT_RESUME", "group___u_s_b_h__port__events.html#ga42f62bdf6dd639f9f3dffc6c127456e3", null ], + [ "ARM_USBH_EVENT_REMOTE_WAKEUP", "group___u_s_b_h__port__events.html#ga2b61e9df3c63fd78fc08f79280a7066e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.html b/CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.html new file mode 100644 index 0000000..c7835c1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.html @@ -0,0 +1,194 @@ + + + + + +CAN Bus Communication Mode +CMSIS-Driver: CAN Bus Communication Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Bus Communication Mode
    +
    +
    + +

    Set or initialize the CAN bus. +More...

    + + + + +

    +Enumerations

    enum  ARM_CAN_MODE {
    +  ARM_CAN_MODE_INITIALIZATION, +
    +  ARM_CAN_MODE_NORMAL, +
    +  ARM_CAN_MODE_RESTRICTED, +
    +  ARM_CAN_MODE_MONITOR, +
    +  ARM_CAN_MODE_LOOPBACK_INTERNAL, +
    +  ARM_CAN_MODE_LOOPBACK_EXTERNAL +
    + }
     
    +

    Description

    +

    Set or initialize the CAN bus.

    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum ARM_CAN_MODE
    +
    +

    The enumerations below initialize and set the bus communication mode.

    +

    Parameter for:

    + +
    Enumerator:
    + + + + + + +
    ARM_CAN_MODE_INITIALIZATION  +

    Initialization mode.

    +
    ARM_CAN_MODE_NORMAL  +

    Normal operation mode.

    +
    ARM_CAN_MODE_RESTRICTED  +

    Restricted operation mode.

    +
    ARM_CAN_MODE_MONITOR  +

    Bus monitoring mode.

    +
    ARM_CAN_MODE_LOOPBACK_INTERNAL  +

    Loopback internal mode.

    +
    ARM_CAN_MODE_LOOPBACK_EXTERNAL  +

    Loopback external mode.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.js b/CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.js new file mode 100644 index 0000000..afc9e1c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__bus__mode__ctrls.js @@ -0,0 +1,11 @@ +var group__can__bus__mode__ctrls = +[ + [ "ARM_CAN_MODE", "group__can__bus__mode__ctrls.html#gabbca99c46d478bcf822eee71cdf75dcd", [ + [ "ARM_CAN_MODE_INITIALIZATION", "_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda9967a5ebaa045afe54d75e5629676ddc", null ], + [ "ARM_CAN_MODE_NORMAL", "_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcdaa3190344bdf3452462e5c0518ac3cdc4", null ], + [ "ARM_CAN_MODE_RESTRICTED", "_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda22a9bb26e68c2a04f641d466040d755d", null ], + [ "ARM_CAN_MODE_MONITOR", "_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda904f68f08c84c4b85c763f5d98c574ab", null ], + [ "ARM_CAN_MODE_LOOPBACK_INTERNAL", "_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda8579315576baa43860a398a30fd527d8", null ], + [ "ARM_CAN_MODE_LOOPBACK_EXTERNAL", "_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda5ee1ba60abcf39d575e7cb309e641b9b", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__control.html b/CMSIS/Documentation/Driver/html/group__can__control.html new file mode 100644 index 0000000..20f354c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__control.html @@ -0,0 +1,166 @@ + + + + + +CAN Control Codes +CMSIS-Driver: CAN Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Control Codes
    +
    +
    + +

    Codes to configure the CAN driver. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Content

     CAN Identifier
     Set object to standard or extended.
     
     CAN Operation Codes
     Set CAN operation modes.
     
     CAN Bus Communication Mode
     Set or initialize the CAN bus.
     
     CAN Bit Timing Codes
     Set bit timing.
     
     CAN Filter Operation Codes
     Set CAN filter manipulation codes.
     
     CAN Object Configuration Codes
     CAN Object Configuration codes.
     
    +

    Description

    +

    Codes to configure the CAN driver.

    +

    The various CAN control codes define:

    + +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__control.js b/CMSIS/Documentation/Driver/html/group__can__control.js new file mode 100644 index 0000000..e75d588 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__control.js @@ -0,0 +1,9 @@ +var group__can__control = +[ + [ "CAN Identifier", "group__can__identifer__ctrls.html", "group__can__identifer__ctrls" ], + [ "CAN Operation Codes", "group__can__mode__ctrls.html", "group__can__mode__ctrls" ], + [ "CAN Bus Communication Mode", "group__can__bus__mode__ctrls.html", "group__can__bus__mode__ctrls" ], + [ "CAN Bit Timing Codes", "group__can__timeseg__ctrls.html", "group__can__timeseg__ctrls" ], + [ "CAN Filter Operation Codes", "group__can__filter__operation__ctrls.html", "group__can__filter__operation__ctrls" ], + [ "CAN Object Configuration Codes", "group__can__obj__config__ctrls.html", "group__can__obj__config__ctrls" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.html b/CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.html new file mode 100644 index 0000000..7e9ffd4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.html @@ -0,0 +1,194 @@ + + + + + +CAN Filter Operation Codes +CMSIS-Driver: CAN Filter Operation Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Filter Operation Codes
    +
    +
    + +

    Set CAN filter manipulation codes. +More...

    + + + + +

    +Enumerations

    enum  ARM_CAN_FILTER_OPERATION {
    +  ARM_CAN_FILTER_ID_EXACT_ADD, +
    +  ARM_CAN_FILTER_ID_EXACT_REMOVE, +
    +  ARM_CAN_FILTER_ID_RANGE_ADD, +
    +  ARM_CAN_FILTER_ID_RANGE_REMOVE, +
    +  ARM_CAN_FILTER_ID_MASKABLE_ADD, +
    +  ARM_CAN_FILTER_ID_MASKABLE_REMOVE +
    + }
     
    +

    Description

    +

    Set CAN filter manipulation codes.

    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum ARM_CAN_FILTER_OPERATION
    +
    +

    ARM_CAN_FILTER_OPERATION provides the controls for setting the filter type. Refer to CAN Message Filtering for details.

    +

    Parameter for:

    + +
    Enumerator:
    + + + + + + +
    ARM_CAN_FILTER_ID_EXACT_ADD  +

    Add exact id filter.

    +
    ARM_CAN_FILTER_ID_EXACT_REMOVE  +

    Remove exact id filter.

    +
    ARM_CAN_FILTER_ID_RANGE_ADD  +

    Add range id filter.

    +
    ARM_CAN_FILTER_ID_RANGE_REMOVE  +

    Remove range id filter.

    +
    ARM_CAN_FILTER_ID_MASKABLE_ADD  +

    Add maskable id filter.

    +
    ARM_CAN_FILTER_ID_MASKABLE_REMOVE  +

    Remove maskable id filter.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.js b/CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.js new file mode 100644 index 0000000..ec54925 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__filter__operation__ctrls.js @@ -0,0 +1,11 @@ +var group__can__filter__operation__ctrls = +[ + [ "ARM_CAN_FILTER_OPERATION", "group__can__filter__operation__ctrls.html#gacb04d0f8b3969ee69362ff2b62941d75", [ + [ "ARM_CAN_FILTER_ID_EXACT_ADD", "_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75aa734058b50573de3b0cc49311997806b", null ], + [ "ARM_CAN_FILTER_ID_EXACT_REMOVE", "_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a6fdaecf3fa244ef1e4d1069d9c6c95f8", null ], + [ "ARM_CAN_FILTER_ID_RANGE_ADD", "_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a22123bef8e773844fce604c553bf2ed5", null ], + [ "ARM_CAN_FILTER_ID_RANGE_REMOVE", "_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a17fea7d388dc702bb3318ecae911f50d", null ], + [ "ARM_CAN_FILTER_ID_MASKABLE_ADD", "_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ac4ad302fa9b762c1d14964141e234ba9", null ], + [ "ARM_CAN_FILTER_ID_MASKABLE_REMOVE", "_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ad9573d5d0e112aece7abc0bc24aa92fb", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.html b/CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.html new file mode 100644 index 0000000..801c8dd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.html @@ -0,0 +1,184 @@ + + + + + +CAN Identifier +CMSIS-Driver: CAN Identifier + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Identifier
    +
    +
    + +

    Set object to standard or extended. +More...

    + + + + + + + + +

    +Macros

    #define ARM_CAN_STANDARD_ID(id)   (id & 0x000007FFUL)
     CAN identifier in standard format (11-bits)
     
    #define ARM_CAN_EXTENDED_ID(id)   ((id & 0x1FFFFFFFUL) | ARM_CAN_ID_IDE_Msk)
     CAN identifier in extended format (29-bits)
     
    +

    Description

    +

    Set object to standard or extended.

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_CAN_STANDARD_ID( id)   (id & 0x000007FFUL)
    +
    + +

    CAN identifier in standard format (11-bits)

    +
    See Also
    ARM_CAN_ObjectConfigure
    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_CAN_EXTENDED_ID( id)   ((id & 0x1FFFFFFFUL) | ARM_CAN_ID_IDE_Msk)
    +
    + +

    CAN identifier in extended format (29-bits)

    +
    See Also
    ARM_CAN_ObjectConfigure
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.js b/CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.js new file mode 100644 index 0000000..17fd946 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__identifer__ctrls.js @@ -0,0 +1,5 @@ +var group__can__identifer__ctrls = +[ + [ "ARM_CAN_STANDARD_ID", "group__can__identifer__ctrls.html#ga561635b816ddaf5fb87377155fc692c7", null ], + [ "ARM_CAN_EXTENDED_ID", "group__can__identifer__ctrls.html#gae7d4efb6fb49e1ec47c2b12e22f37cae", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__interface__gr.html b/CMSIS/Documentation/Driver/html/group__can__interface__gr.html new file mode 100644 index 0000000..4cd44a9 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__interface__gr.html @@ -0,0 +1,1927 @@ + + + + + +CAN Interface +CMSIS-Driver: CAN Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Interface
    +
    +
    + +

    Driver API for CAN Bus Peripheral (Driver_CAN.h) +More...

    + + + + + + + + + + + + + + +

    +Content

     Status Error Codes
     Status codes of the CAN driver.
     
     CAN Unit Events
     Callback unit events notified via ARM_CAN_SignalUnitEvent.
     
     CAN Object Events
     Callback objects events notified via ARM_CAN_SignalObjectEvent.
     
     CAN Control Codes
     Codes to configure the CAN driver.
     
    + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_CAN
     Access structure of the CAN Driver. More...
     
    struct  ARM_CAN_CAPABILITIES
     CAN Device Driver Capabilities. More...
     
    struct  ARM_CAN_STATUS
     CAN Status. More...
     
    struct  ARM_CAN_MSG_INFO
     CAN Message Information. More...
     
    struct  ARM_CAN_OBJ_CAPABILITIES
     CAN Object Capabilities. More...
     
    + + + + + + + +

    +Typedefs

    typedef void(* ARM_CAN_SignalUnitEvent_t )(uint32_t event)
     Pointer to ARM_CAN_SignalUnitEvent : Signal CAN Unit Event.
     
    typedef void(* ARM_CAN_SignalObjectEvent_t )(uint32_t obj_idx, uint32_t event)
     Pointer to ARM_CAN_SignalObjectEvent : Signal CAN Object Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_CAN_GetVersion (void)
     Get driver version.
     
    ARM_CAN_CAPABILITIES ARM_CAN_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_CAN_Initialize (ARM_CAN_SignalUnitEvent_t cb_unit_event, ARM_CAN_SignalObjectEvent_t cb_object_event)
     Initialize CAN interface and register signal (callback) functions.
     
    int32_t ARM_CAN_Uninitialize (void)
     De-initialize CAN interface.
     
    int32_t ARM_CAN_PowerControl (ARM_POWER_STATE state)
     Control CAN interface power.
     
    uint32_t ARM_CAN_GetClock (void)
     Retrieve CAN base clock frequency.
     
    int32_t ARM_CAN_SetBitrate (ARM_CAN_BITRATE_SELECT select, uint32_t bitrate, uint32_t bit_segments)
     Set bitrate for CAN interface.
     
    int32_t ARM_CAN_SetMode (ARM_CAN_MODE mode)
     Set operating mode for CAN interface.
     
    ARM_CAN_OBJ_CAPABILITIES ARM_CAN_ObjectGetCapabilities (uint32_t obj_idx)
     Retrieve capabilities of an object.
     
    int32_t ARM_CAN_ObjectSetFilter (uint32_t obj_idx, ARM_CAN_FILTER_OPERATION operation, uint32_t id, uint32_t arg)
     Add or remove filter for message reception.
     
    int32_t ARM_CAN_ObjectConfigure (uint32_t obj_idx, ARM_CAN_OBJ_CONFIG obj_cfg)
     Configure object.
     
    int32_t ARM_CAN_MessageSend (uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, const uint8_t *data, uint8_t size)
     Send message on CAN bus.
     
    int32_t ARM_CAN_MessageRead (uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, uint8_t *data, uint8_t size)
     Read message received on CAN bus.
     
    int32_t ARM_CAN_Control (uint32_t control, uint32_t arg)
     Control CAN interface.
     
    ARM_CAN_STATUS ARM_CAN_GetStatus (void)
     Get CAN status.
     
    void ARM_CAN_SignalUnitEvent (uint32_t event)
     Signal CAN unit event.
     
    void ARM_CAN_SignalObjectEvent (uint32_t obj_idx, uint32_t event)
     Signal CAN object event.
     
    +

    Description

    +

    Driver API for CAN Bus Peripheral (Driver_CAN.h)

    +

    The Controller Area Network Interface Bus (CAN) implements a multi-master serial bus for connecting microcontrollers and devices, also known as nodes, to communicate with each other in applications without a host computer. CAN is a message-based protocol, designed originally for automotive applications, but meanwhile used also in many other surroundings. The complexity of the node can range from a simple I/O device up to an embedded computer with a CAN interface and sophisticated software. The node may also be a gateway allowing a standard computer to communicate over a USB or Ethernet port to the devices on a CAN network. Devices are connected to the bus through a host processor, a CAN controller, and a CAN transceiver.

    +

    The CAN Driver API allows to implement CAN Interfaces that conform to the following CAN specifications available from BOSCH:

    +
      +
    • CAN 2.0B: CAN Specification 2.0B (released Sep. 1991) which is now superseded by ISO 11898-1.
    • +
    • CAN FD: CAN with Flexible Data Rate introduced in 2012 (released April 17th, 2012).
    • +
    +

    Wikipedia offers more information about the CAN Bus.

    +

    CAN 2.0B Every CAN CMSIS-Driver supports the CAN 2.0B standard

    +

    CAN 2.0B supports:

    +
      +
    • message can contain up to 8 data bytes
    • +
    • bitrates of up to 1Mbits/s
    • +
    • Remote Frame requests
    • +
    +

    CAN FD

    +

    Support for CAN FD depends on the hardware. A CMSIS-Driver that supports CAN FD has the capability ARM_CAN_CAPABILITIES data field fd_mode = 1, which can be retrieved with the function ARM_CAN_GetCapabilities.

    +

    CAN FD supports:

    +
      +
    • message can contain up to 64 data bytes
    • +
    • faster data transfers with faster bitrate used during the data phase
    • +
    +

    CAN FD does not support Remote Frame requests.

    +

    Block Diagram

    +

    The CAN Driver API defines a CAN interface for middleware components. The CAN Driver supports multiple nodes, which are able to send and receive messages, but not simultaneously.

    +
    +CAN_Node.png +
    +CAN Node Schematic
    +

    CAN API

    +

    The following header files define the Application Programming Interface (API) for the CAN interface:

    +
      +
    • Driver_CAN.h : Driver API for CAN Bus Peripheral
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Example Code

    +

    The following example code shows the usage of the CAN interface.

    +
    #include <stdio.h>
    +
    #include <string.h>
    +
    #include "cmsis_os.h"
    +
    +
    #include "Driver_CAN.h"
    +
    +
    // CAN Driver Controller selector
    +
    #define CAN_CONTROLLER 1 // CAN Controller number
    +
    +
    #define _CAN_Driver_(n) Driver_CAN##n
    +
    #define CAN_Driver_(n) _CAN_Driver_(n)
    +
    extern ARM_DRIVER_CAN CAN_Driver_(CAN_CONTROLLER);
    +
    #define ptrCAN (&CAN_Driver_(CAN_CONTROLLER))
    +
    +
    uint32_t rx_obj_idx = 0xFFFFFFFFU;
    +
    uint8_t rx_data[8];
    +
    ARM_CAN_MSG_INFO rx_msg_info;
    +
    uint32_t tx_obj_idx = 0xFFFFFFFFU;
    +
    uint8_t tx_data[8];
    +
    ARM_CAN_MSG_INFO tx_msg_info;
    +
    +
    static void Error_Handler (void) { while (1); }
    +
    +
    void CAN_SignalUnitEvent (uint32_t event) {}
    +
    +
    void CAN_SignalObjectEvent (uint32_t obj_idx, uint32_t event) {
    +
    +
    if (obj_idx == rx_obj_idx) { // If receive object event
    +
    if (event == ARM_CAN_EVENT_RECEIVE) { // If message was received successfully
    +
    if (ptrCAN->MessageRead(rx_obj_idx, &rx_msg_info, rx_data, 8U) > 0U) {
    +
    // Read received message
    +
    // process received message ...
    +
    }
    +
    }
    +
    }
    +
    if (obj_idx == tx_obj_idx) { // If transmit object event
    +
    if (event == ARM_CAN_EVENT_SEND_COMPLETE) { // If message was sent successfully
    +
    // acknowledge sent message ...
    +
    }
    +
    }
    +
    }
    +
    +
    int main (void) {
    + + +
    int32_t status;
    +
    uint32_t i, num_objects;
    +
    +
    can_cap = ptrCAN->GetCapabilities (); // Get CAN driver capabilities
    +
    num_objects = can_cap.num_objects; // Number of receive/transmit objects
    +
    +
    status = ptrCAN->Initialize (CAN_SignalUnitEvent, CAN_SignalObjectEvent); // Initialize CAN driver
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    status = ptrCAN->PowerControl (ARM_POWER_FULL); // Power-up CAN controller
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    status = ptrCAN->SetMode (ARM_CAN_MODE_INITIALIZATION); // Activate initialization mode
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    status = ptrCAN->SetBitrate (ARM_CAN_BITRATE_NOMINAL, // Set nominal bitrate
    +
    100000U, // Set bitrate to 100 kbit/s
    +
    ARM_CAN_BIT_PROP_SEG(5U) | // Set propagation segment to 5 time quanta
    +
    ARM_CAN_BIT_PHASE_SEG1(1U) | // Set phase segment 1 to 1 time quantum (sample point at 87.5% of bit time)
    +
    ARM_CAN_BIT_PHASE_SEG2(1U) | // Set phase segment 2 to 1 time quantum (total bit is 8 time quanta long)
    +
    ARM_CAN_BIT_SJW(1U)); // Resynchronization jump width is same as phase segment 2
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    for (i = 0U; i < num_objects; i++) { // Find first available object for receive and transmit
    +
    can_obj_cap = ptrCAN->ObjectGetCapabilities (i); // Get object capabilities
    +
    if ((rx_obj_idx == 0xFFFFFFFFU) && (can_obj_cap.rx == 1U)) { rx_obj_idx = i; }
    +
    else if ((tx_obj_idx == 0xFFFFFFFFU) && (can_obj_cap.tx == 1U)) { tx_obj_idx = i; break; }
    +
    }
    +
    if ((rx_obj_idx == 0xFFFFFFFFU) || (tx_obj_idx == 0xFFFFFFFFU)) { Error_Handler(); }
    +
    +
    // Set filter to receive messages with extended ID 0x12345678 to receive object
    +
    status = ptrCAN->ObjectSetFilter(rx_obj_idx, ARM_CAN_FILTER_ID_EXACT_ADD, ARM_CAN_EXTENDED_ID(0x12345678U), 0U);
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    status = ptrCAN->ObjectConfigure(tx_obj_idx, ARM_CAN_OBJ_TX); // Configure transmit object
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    status = ptrCAN->ObjectConfigure(rx_obj_idx, ARM_CAN_OBJ_RX); // Configure receive object
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    status = ptrCAN->SetMode (ARM_CAN_MODE_NORMAL); // Activate normal operation mode
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    memset(&tx_msg_info, 0U, sizeof(ARM_CAN_MSG_INFO)); // Clear message info structure
    +
    tx_msg_info.id = ARM_CAN_EXTENDED_ID(0x12345678U); // Set extended ID for transmit message
    +
    tx_data[0] = 0xFFU; // Initialize transmit data
    +
    while (1) {
    +
    tx_data[0]++; // Increment transmit data
    +
    status = ptrCAN->MessageSend(tx_obj_idx, &tx_msg_info, tx_data, 1U); // Send data message with 1 data byte
    +
    if (status != 1U) { Error_Handler(); }
    +
    for (i = 0U; i < 1000000U; i++) { __nop(); } // Wait a little while
    +
    }
    +
    }
    +

    +CAN Message Objects

    +

    The CMSIS-Driver for the CAN interface provides multiple CAN message objects, which can be seen as individual communication channels. The number of available CAN message objects depends on the CAN peripheral. The function ARM_CAN_GetCapabilities returns the maximum number of available CAN message objects. The number is encoded in the structure ARM_CAN_CAPABILITIES in the data field num_objects. CAN message objects are addressed with the functions listed below, whereby the parameter obj_idx addresses an individual object. The valid range for obj_idx is [0 .. (num_objects - 1)].

    + + + + + + + + + + + + + + + +
    Function Description
    ARM_CAN_ObjectGetCapabilities Retrieves message object capabilities such as receive, transmit, Remote Frame automatic handling and CAN Message Filtering.
    ARM_CAN_ObjectSetFilter Allows to set-up CAN ID filtering for the message object.
    ARM_CAN_ObjectConfigure Allows to configure the message object for receive, transmit or Remote Frame automatic handling.
    ARM_CAN_MessageRead Read received message from the message object.
    ARM_CAN_MessageSend Send CAN message or send Remote Frame or set CAN message to be sent automatically on reception of matching Remote Frame on the message object.
    ARM_CAN_SignalObjectEvent Callback function that signals a message transfer or a received message overrun.
    +

    Each CAN message object may have different capabilities. Before using a CAN message object, call the function ARM_CAN_ObjectGetCapabilities to verify the available features.

    +

    +CAN Message Filtering

    +

    The CMSIS-Driver for the CAN interface supports ID filtering for the receiving message objects. The receiving CAN node examines the identifier to decide if it was relevant. This filtering is done by the CAN peripheral according the settings configured with the function ARM_CAN_ObjectSetFilter.

    +

    The function ARM_CAN_ObjectGetCapabilities retrieves the filter capabilities of the CAN message objects stored in ARM_CAN_OBJ_CAPABILITIES.

    + + + + + + + + + + + +
    Data Fields CAN Messages Object can be filtered with ...
    exact_filtering an exact ID value set by using the function ARM_CAN_ObjectSetFilter with control = ARM_CAN_FILTER_ID_EXACT_ADD.
    range_filtering a range ID value set by using the function ARM_CAN_ObjectSetFilter with control = ARM_CAN_FILTER_ID_RANGE_ADD.
    mask_filtering a mask ID value set by as using the function ARM_CAN_ObjectSetFilter with control = ARM_CAN_FILTER_ID_MASKABLE_ADD.
    multiple_filters ... several filters to capture multiple ID values, or ID value ranges.
    +

    CAN message filtering using an exact ID

    +

    Example: accept in message object #1 only frames with extended ID = 0x1567.

    +
    status = ptrCAN->ObjectSetFilter (1, ARM_CAN_FILTER_ID_EXACT_ADD, ARM_CAN_EXTENDED_ID(0x1567), 0);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +

    Example: accept in message object #2 frames with extended ID = 0x3167 and extended ID = 0x42123.

    +
    status = ptrCAN->ObjectSetFilter (2, ARM_CAN_FILTER_ID_EXACT_ADD, ARM_CAN_EXTENDED_ID(0x3167), 0);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +
    status = ptrCAN->ObjectSetFilter (2, ARM_CAN_FILTER_ID_EXACT_ADD, ARM_CAN_EXTENDED_ID(0x42123), 0);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +

    CAN message filtering using a range ID

    +

    Example: accept in message object #3 only frames with extended ID >= 0x1567 and extended ID <= 0x1577.

    +
    status = ptrCAN->ObjectSetFilter (3, ARM_CAN_FILTER_ID_RANGE_ADD, ARM_CAN_EXTENDED_ID(0x1567), ARM_CAN_EXTENDED_ID(0x1577));
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +

    CAN message filtering using a mask ID

    +

    Using the function ARM_CAN_ObjectSetFilter with control = ARM_CAN_FILTER_ID_MASKABLE_ADD allows to specify with arg a mask value.

    +
      +
    • if a mask bit is 0, the corresponding ID bit will be accepted, regardless of the value.
    • +
    • if a mask bit is 1, the corresponding ID bit will be compared with the value of the ID filter bit; if they match the message will be accepted otherwise the frame is rejected.
    • +
    +

    Example: accept in message object #0 only frames with extended IDs 0x1560 to 0x156F.

    +
    status = ptrCAN->ObjectSetFilter (0, ARM_CAN_FILTER_ID_MASKABLE_ADD, ARM_CAN_EXTENDED_ID(0x1560), 0x1FFFFFF0);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +

    Example: accept in message object #2 only frames with extended IDs 0x35603, 0x35613, 0x35623, and 0x35633.

    +
    status = ptrCAN->ObjectSetFilter (2, ARM_CAN_FILTER_ID_MASKABLE_ADD, ARM_CAN_EXTENDED_ID(0x35603), 0x1FFFFFCF);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +

    Example: accept any message in object #4 regardless of the ID.

    +
    status = ptrCAN->ObjectSetFilter (4, ARM_CAN_FILTER_ID_MASKABLE_ADD, ARM_CAN_EXTENDED_ID(0), 0);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +

    +Remote Frame

    +

    In general, data transmission is performed on an autonomous basis with the data source node sending out Data Frames.

    +

    However, sending a Remote Frame allows a destination node to request the data from the source node. The examples below shows the data exchange using a Remote Transmission Request (RTR).

    +

    Example for automatic Data Message response on RTR

    +

    For automatic data message response on an RTR, the object is configured with the function ARM_CAN_ObjectConfigure obj_cfg = ARM_CAN_OBJ_RX_RTR_TX_DATA.

    +

    In this case, the function ARM_CAN_MessageSend sets a data message that is transmitted when an RTR with a matching CAN ID is received. If ARM_CAN_MessageSend was not called before the RTR is received, the response is hardware dependent (either last data message is repeated or no data message is sent until ARM_CAN_MessageSend is called).

    +

    After data transmission is completed, the driver calls a callback function ARM_CAN_SignalObjectEvent with event = ARM_CAN_EVENT_SEND_COMPLETE and the related obj_idx.

    +

    Example:

    +
    status = ptrCAN->ObjectSetFilter(0, ARM_CAN_FILTER_ID_EXACT_ADD, ARM_CAN_EXTENDED_ID(0x12345678U), 0U);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +
    status = trCAN->ObjectConfigure(0, ARM_CAN_OBJ_RX_RTR_TX_DATA);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +
    +
    memset(&tx_msg_info, 0, sizeof(ARM_CAN_MSG_INFO)); // Clear transmit message structure
    +
    tx_msg_info.id = ARM_CAN_EXTENDED_ID(0x12345678U); // Set ID of message
    +
    data_buf[0] = '1'; data_buf[1] = '2'; // Prepare data to transmit
    +
    data_buf[2] = '3'; data_buf[3] = '4';
    +
    data_buf[4] = '5'; data_buf[5] = '6';
    +
    data_buf[6] = '7'; data_buf[7] = '8';
    +
    ptrCAN->MessageSend(0, &tx_msg_info, data_buf, 8); // Start send message that will be triggered on RTR reception
    +

    Example for automatic Data Message reception using RTR

    +

    For automatic data message reception on an RTR, the object is configured with the function ARM_CAN_ObjectConfigure obj_cfg = ARM_CAN_OBJ_TX_RTR_RX_DATA.

    +

    The receiver or consumer requests data with transmission of an RTR with the ARM_CAN_MessageSend. This RTR requests from the transmitter or producer to send the data message. Once the data message is received, the driver calls a callback function ARM_CAN_SignalObjectEvent with event = ARM_CAN_EVENT_RECEIVE and the related obj_idx. The received data message can then be read with the function ARM_CAN_MessageRead.

    +

    Example:

    +
    status = ptrCAN->ObjectSetFilter(0, ARM_CAN_FILTER_ID_EXACT_ADD, ARM_CAN_EXTENDED_ID(0x12345678U), 0U);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +
    status = ptrCAN->ObjectConfigure(0, ARM_CAN_OBJ_TX_RTR_RX_DATA);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    +
    memset(&tx_msg_info, 0, sizeof(ARM_CAN_MSG_INFO)); // Clear transmit message structure
    +
    tx_msg_info.id = ARM_CAN_EXTENDED_ID(0x12345678U); // Set ID of message
    +
    tx_msg_info.rtr = 1; // Set RTR flag of message to send RTR
    +
    tx_msg_info.dlc = 1; // Set data length code of message to 1 to request 1 data byte
    +
    ptrCAN->MesageSend(0, &tx_msg_info, 0, 0); // Send RTR
    +
    +
    // Wait for ARM_CAN_EVENT_RECEIVE
    +
    ptrCAN->MessageRead(0, &rx_msg_info, data_buf, 8); // Read received message
    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_CAN
    +
    +

    Access structure of the CAN Driver.

    +

    The functions of the CAN are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of a CAN provides such an access structure. The instance is identified by a postfix number in the symbol name of the access structure, for example:

    +
      +
    • Driver_CAN0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_CAN1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows you to connect the middleware to a specific driver instance Driver_CANn.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_CAN_GetVersion : Get driver version.
     
    ARM_CAN_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_CAN_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_CAN_SignalUnitEvent_t cb_unit_event, ARM_CAN_SignalObjectEvent_t cb_object_event)
     Pointer to ARM_CAN_Initialize : Initialize CAN interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_CAN_Uninitialize : De-initialize CAN interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_CAN_PowerControl : Control CAN interface power.
     
    uint32_t(* GetClock )(void)
     Pointer to ARM_CAN_GetClock : Retrieve CAN base clock frequency.
     
    int32_t(* SetBitrate )(ARM_CAN_BITRATE_SELECT select, uint32_t bitrate, uint32_t bit_segments)
     Pointer to ARM_CAN_SetBitrate : Set bitrate for CAN interface.
     
    int32_t(* SetMode )(ARM_CAN_MODE mode)
     Pointer to ARM_CAN_SetMode : Set operating mode for CAN interface.
     
    ARM_CAN_OBJ_CAPABILITIES(* ObjectGetCapabilities )(uint32_t obj_idx)
     Pointer to ARM_CAN_ObjectGetCapabilities : Retrieve capabilities of an object.
     
    int32_t(* ObjectSetFilter )(uint32_t obj_idx, ARM_CAN_FILTER_OPERATION operation, uint32_t id, uint32_t arg)
     Pointer to ARM_CAN_ObjectSetFilter : Add or remove filter for message reception.
     
    int32_t(* ObjectConfigure )(uint32_t obj_idx, ARM_CAN_OBJ_CONFIG obj_cfg)
     Pointer to ARM_CAN_ObjectConfigure : Configure object.
     
    int32_t(* MessageSend )(uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, const uint8_t *data, uint8_t size)
     Pointer to ARM_CAN_MessageSend : Send message on CAN bus.
     
    int32_t(* MessageRead )(uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, uint8_t *data, uint8_t size)
     Pointer to ARM_CAN_MessageRead : Read message received on CAN bus.
     
    int32_t(* Control )(uint32_t control, uint32_t arg)
     Pointer to ARM_CAN_Control : Control CAN interface.
     
    ARM_CAN_STATUS(* GetStatus )(void)
     Pointer to ARM_CAN_GetStatus : Get CAN status.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_CAN_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_CAN_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_CAN_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_CAN_SignalUnitEvent_t cb_unit_event, ARM_CAN_SignalObjectEvent_t cb_object_event)
    +
    + +

    Pointer to ARM_CAN_Initialize : Initialize CAN interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_CAN_Uninitialize : De-initialize CAN interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_CAN_PowerControl : Control CAN interface power.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* GetClock)(void)
    +
    + +

    Pointer to ARM_CAN_GetClock : Retrieve CAN base clock frequency.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetBitrate)(ARM_CAN_BITRATE_SELECT select, uint32_t bitrate, uint32_t bit_segments)
    +
    + +

    Pointer to ARM_CAN_SetBitrate : Set bitrate for CAN interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetMode)(ARM_CAN_MODE mode)
    +
    + +

    Pointer to ARM_CAN_SetMode : Set operating mode for CAN interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_CAN_OBJ_CAPABILITIES(* ObjectGetCapabilities)(uint32_t obj_idx)
    +
    + +

    Pointer to ARM_CAN_ObjectGetCapabilities : Retrieve capabilities of an object.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ObjectSetFilter)(uint32_t obj_idx, ARM_CAN_FILTER_OPERATION operation, uint32_t id, uint32_t arg)
    +
    + +

    Pointer to ARM_CAN_ObjectSetFilter : Add or remove filter for message reception.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ObjectConfigure)(uint32_t obj_idx, ARM_CAN_OBJ_CONFIG obj_cfg)
    +
    + +

    Pointer to ARM_CAN_ObjectConfigure : Configure object.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* MessageSend)(uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, const uint8_t *data, uint8_t size)
    +
    + +

    Pointer to ARM_CAN_MessageSend : Send message on CAN bus.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* MessageRead)(uint32_t obj_idx, ARM_CAN_MSG_INFO *msg_info, uint8_t *data, uint8_t size)
    +
    + +

    Pointer to ARM_CAN_MessageRead : Read message received on CAN bus.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t control, uint32_t arg)
    +
    + +

    Pointer to ARM_CAN_Control : Control CAN interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_CAN_STATUS(* GetStatus)(void)
    +
    + +

    Pointer to ARM_CAN_GetStatus : Get CAN status.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_CAN_CAPABILITIES
    +
    +

    CAN Device Driver Capabilities.

    +

    A CAN driver can be implemented with different capabilities encoded in the data fields of this structure.

    +

    Returned by:

    + +
    See Also
    ARM_CAN_OBJ_CAPABILITIES for information about CAN objects.
    +
    + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +num_objects: 8 +Number of CAN Message Objects available.
    +uint32_t +reentrant_operation: 1 +Support for reentrant calls to ARM_CAN_MessageSend, ARM_CAN_MessageRead, ARM_CAN_ObjectConfigure and abort message sending used by ARM_CAN_Control.
    +uint32_t +fd_mode: 1 +Support for CAN with flexible data-rate mode (CAN_FD) (set by ARM_CAN_Control)
    +uint32_t +restricted_mode: 1 +Support for restricted operation mode (set by ARM_CAN_SetMode)
    +uint32_t +monitor_mode: 1 +Support for bus monitoring mode (set by ARM_CAN_SetMode)
    +uint32_t +internal_loopback: 1 +Support for internal loopback mode (set by ARM_CAN_SetMode)
    +uint32_t +external_loopback: 1 +Support for external loopback mode (set by ARM_CAN_SetMode)
    + +
    +
    + +
    +
    + + + + +
    struct ARM_CAN_STATUS
    +
    +

    CAN Status.

    +

    Structure with information about the status of the CAN unit state and errors. The data fields encode the unit bus state, last error code, transmitter error count, and receiver error count.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +unit_state: 4 +Unit bus state.
    +uint32_t +last_error_code: 4 +Last error code.
    +uint32_t +tx_error_count: 8 +Transmitter error count.
    +uint32_t +rx_error_count: 8 +Receiver error count.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_CAN_MSG_INFO
    +
    +

    CAN Message Information.

    +

    Structure with information about the CAN message.

    +

    In CAN mode, the following ARM_CAN_MSG_INFO data fields are ignored: edl, brs, esi.
    + In CAN FD mode, the following ARM_CAN_MSG_INFO data field is ignored: rtr.

    +

    Parameter for:

    + +
    See Also
    CAN Message Filtering
    +
    +Remote Frame
    +
    + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +id +CAN identifier with frame format specifier (bit 31)
    +uint32_t +rtr: 1 +Remote transmission request frame.
    +uint32_t +edl: 1 +Flexible data-rate format extended data length.
    +uint32_t +brs: 1 +Flexible data-rate format with bitrate switch.
    +uint32_t +esi: 1 +Flexible data-rate format error state indicator.
    +uint32_t +dlc: 4 +Data length code.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_CAN_OBJ_CAPABILITIES
    +
    +

    CAN Object Capabilities.

    +

    A CAN object can be implemented with different capabilities encoded in the data fields of this structure.

    +

    Returned by:

    + +
    See Also
    ARM_CAN_ObjectConfigure
    +
    +ARM_CAN_MessageSend
    +
    +ARM_CAN_MessageRead
    +
    +ARM_CAN_MSG_INFO
    +
    +CAN Message Filtering
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +tx: 1 +Object supports transmission.
    +uint32_t +rx: 1 +Object supports reception.
    +uint32_t +rx_rtr_tx_data: 1 +Object supports RTR reception and automatic Data Frame transmission.
    +uint32_t +tx_rtr_rx_data: 1 +Object supports RTR transmission and automatic Data Frame reception.
    +uint32_t +multiple_filters: 1 +Object allows assignment of multiple filters to it.
    +uint32_t +exact_filtering: 1 +Object supports exact identifier filtering.
    +uint32_t +range_filtering: 1 +Object supports range identifier filtering.
    +uint32_t +mask_filtering: 1 +Object supports mask identifier filtering.
    +uint32_t +message_depth: 8 +Number of messages buffers (FIFO) for that object.
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_CAN_SignalUnitEvent_t
    +
    + +

    Pointer to ARM_CAN_SignalUnitEvent : Signal CAN Unit Event.

    +

    Provides the typedef for the callback function ARM_CAN_SignalUnitEvent.

    +

    Parameter for:

    + + +
    +
    + +
    +
    + + + + +
    ARM_CAN_SignalObjectEvent_t
    +
    + +

    Pointer to ARM_CAN_SignalObjectEvent : Signal CAN Object Event.

    +

    Provides the typedef for the callback function ARM_CAN_SignalObjectEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_CAN_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_CAN_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_CAN Driver_CAN0;
    +
    ARM_DRIVER_CAN *drv_info;
    +
    +
    void setup_can (void) {
    + +
    +
    drv_info = &Driver_CAN0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_CAN_CAPABILITIES ARM_CAN_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_CAN_CAPABILITIES
    +

    The function ARM_CAN_GetCapabilities returns information about the capabilities in this driver implementation. The data fields of the structure ARM_CAN_CAPABILITIES encode various capabilities.

    +

    Example:

    +
    extern ARM_DRIVER_CAN Driver_CAN0;
    +
    ARM_DRIVER_CAN *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_CAN_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_CAN0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_CAN_Initialize (ARM_CAN_SignalUnitEvent_t cb_unit_event,
    ARM_CAN_SignalObjectEvent_t cb_object_event 
    )
    +
    + +

    Initialize CAN interface and register signal (callback) functions.

    +
    Parameters
    + + + +
    [in]cb_unit_eventPointer to ARM_CAN_SignalUnitEvent callback function
    [in]cb_object_eventPointer to ARM_CAN_SignalObjectEvent callback function
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function initializes the CAN interface.

    +

    The function performs the following operations:

    +
      +
    • Initializes the resources needed for the CAN interface, for example dynamic memory allocation, RTOS object allocation, and possibly hardware pin configuration.
    • +
    • Registers the ARM_CAN_SignalUnitEvent callback function.
    • +
    • Registers the ARM_CAN_SignalObjectEvent callback function.
    • +
    +

    The parameter cb_unit_event is a pointer to the ARM_CAN_SignalUnitEvent callback function; use a NULL pointer when no callback signals are required.

    +

    The parameter cb_object_event is a pointer to the ARM_CAN_SignalObjectEvent callback function; use a NULL pointer when no callback signals are required.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_CAN_Uninitialize (void )
    +
    + +

    De-initialize CAN interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_CAN_Uninitialize de-initializes the resources of the CAN interface. It is called to release the software resources used by the interface such as deallocate any RTOS objects, dynamic memory and pin de-configuration.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_CAN_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control CAN interface power.

    +
    Parameters
    + + +
    [in]statePower state +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_CAN_PowerControl controls the power modes of the CAN interface.

    +

    The parameter state can be:

    +
      +
    • ARM_POWER_FULL: Activate clocks and driver functionality as if peripheral was reset.
    • +
    • ARM_POWER_OFF: Unconditionally put peripheral into non-functional (reset) state.
    • +
    • ARM_POWER_LOW: Put peripheral into low power consumption state ready to wake up on bus event.
    • +
    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_CAN_GetClock (void )
    +
    + +

    Retrieve CAN base clock frequency.

    +
    Returns
    base clock frequency
    +

    The function ARM_CAN_GetClock returns the CAN base clock frequency in [Hz]. This value may be used to validate the bitrate for the function ARM_CAN_SetBitrate.

    +

    Example:

    +
    CAN_clock = ARM_CAN_GetClock(); // CAN base clock frequency
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_CAN_SetBitrate (ARM_CAN_BITRATE_SELECT select,
    uint32_t bitrate,
    uint32_t bit_segments 
    )
    +
    + +

    Set bitrate for CAN interface.

    +
    Parameters
    + + + + +
    [in]selectBitrate selection +
    [in]bitrateBitrate
    [in]bit_segmentsSegment time quanta for signal sampling
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_CAN_SetBitrate sets the CAN communication bit rate.

    +

    The parameter select selects the bit rate affected by function call as defined in ARM_CAN_BITRATE_SELECT and listed in the table below.

    + + + + + + + +
    Parameter select CAN Mode Bit Rate
    ARM_CAN_BITRATE_NOMINAL Select nominal (flexible data-rate arbitration) bitrate (CAN 2.0B)
    ARM_CAN_BITRATE_FD_DATA Select flexible data-rate data bitrate (CAN_FD)
    +

    The parameter bitrate is the bit rate for the selected CAN mode.

    +

    The parameter bit_segments is used to setup the time quanta for sampling (see picture below). The values listed in the table below are ORed and specify the various sampling segments. The CAN controller samples each bit on the bus at the Sample Point.

    + + + + + + + + + + + + + + + +
    Parameter bit_segments Bit for select = ARM_CAN_BITRATE_NOMINAL
    + (CAN specification)
    for select = ARM_CAN_BITRATE_NOMINAL
    + (CAN FD specification)
    for select = ARM_CAN_BITRATE_FD_DATA
    + (CAN FD specification)
    ARM_CAN_BIT_PROP_SEG(x)
    + Propagation Time Segment
    + (PROP_SEG)
    0..7 x = [1..8] x = [1..32] or more x = [0..8]
    ARM_CAN_BIT_PHASE_SEG1(x)
    + Phase Buffer Segment 1
    + (PHASE_SEG1)
    8..15 x = [1..8] x = [1..32] or more x = [1..8]
    ARM_CAN_BIT_PHASE_SEG2(x)
    + Phase Buffer Segment 2
    + (PHASE_SEG2)
    16..23 x = [1..8] x = [1..32] or more x = [1..8]
    The maximum allowed value is x = MAX (PHASE_SEG1, IPT). IPT = Information Processing Time. Usually, IPT = 2. Exceptions apply. Read the specifications of your CAN controller.
    ARM_CAN_BIT_SJW(x)
    + (Re-)Synchronization Jump Width
    + (SJW).
    24..31 x = [1..4] x = [1..4] x = [1..4]
    The maximum allowed value is x = MIN (MIN (PHASE_SEG1, PHASE_SEG2), 4). SJW is not allowed to be greater than either PHASE segment.
    +

    The picture shows a Nominal Bit Time with 10 time quanta.

    +
    +CAN_Bit_Timing.png +
    +CAN Bit Timing
    +

    The time quanta (N) per bit is:

    +
    N = 1 + PROP_SEG + PHASE_SEG1 + PHASE_SEG2; // note SYNC_SEG is always 1
    +

    The driver uses this value and the CAN clock to calculate a suitable prescaler value (P). If the driver cannot achieve the requested bitrate it returns with ARM_CAN_INVALID_BITRATE. The formula for the bitrate is:

    +
    bitrate = (CAN_Clock / P) / N;
    +

    Example:

    +
    status = ptrCAN->SetBitrate (ARM_CAN_BITRATE_NOMINAL, // Set nominal bitrate
    +
    125000U, // Set bitrate to 125 kbit/s
    +
    ARM_CAN_BIT_PROP_SEG(5U) | // Set propagation segment to 5 time quanta
    +
    ARM_CAN_BIT_PHASE_SEG1(1U) | // Set phase segment 1 to 1 time quantum (sample point at 87.5% of bit time)
    +
    ARM_CAN_BIT_PHASE_SEG2(1U) | // Set phase segment 2 to 1 time quantum (total bit is 8 time quanta long)
    +
    ARM_CAN_BIT_SJW(1U)); // Resynchronization jump width is same as phase segment 2
    +

    In this example, N = 8 and with a CAN_Clock = 8MHz the prescaler (P) is calculated by the driver to 8.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_CAN_SetMode (ARM_CAN_MODE mode)
    +
    + +

    Set operating mode for CAN interface.

    +
    Parameters
    + + +
    [in]modeOperating mode +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_CAN_SetMode sets the CAN bus communication mode using the parameter mode.

    +

    The table lists the values for mode.

    + + + + + + + + + + + + + + + +
    Parameter mode Bus Communication Mode supported when ARM_CAN_OBJ_CAPABILITIES data field
    ARM_CAN_MODE_INITIALIZATION Initialization mode; Used to setup communication parameters for the reception objects and global filtering, while peripheral is not active on the bus. Refer to CAN Message Filtering for details. always supported
    ARM_CAN_MODE_NORMAL Normal operation mode. Used when peripheral is in active mode to receive, transmit, and acknowledge messages on the bus. Depending on the current unit state, it can generate error or overload messages. Verify the unit state with ARM_CAN_GetStatus. always supported
    ARM_CAN_MODE_RESTRICTED Restricted operation mode. Used for monitoring the bus communication non-intrusively without transmitting. restricted_mode = 1
    ARM_CAN_MODE_MONITOR Bus monitoring mode. monitor_mode = 1
    ARM_CAN_MODE_LOOPBACK_INTERNAL Test mode; loopback of CAN transmission to its receiver. No transmission visible on CAN bus. internal_loopback = 1
    ARM_CAN_MODE_LOOPBACK_EXTERNAL Test mode; loopback of CAN transmission to its receiver. Transmission is visible on CAN bus. external_loopback = 1
    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_CAN_OBJ_CAPABILITIES ARM_CAN_ObjectGetCapabilities (uint32_t obj_idx)
    +
    + +

    Retrieve capabilities of an object.

    +
    Parameters
    + + +
    [in]obj_idxObject index
    +
    +
    +
    Returns
    ARM_CAN_OBJ_CAPABILITIES
    +

    The function ARM_CAN_ObjectGetCapabilities retrieves the capabilities of a CAN object. The structure ARM_CAN_OBJ_CAPABILITIES stores the values.

    +

    The parameter obj_idx is the message object index.

    +
    See Also
    ARM_CAN_ObjectConfigure
    +
    +ARM_CAN_ObjectSetFilter
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_CAN_ObjectSetFilter (uint32_t obj_idx,
    ARM_CAN_FILTER_OPERATION operation,
    uint32_t id,
    uint32_t arg 
    )
    +
    + +

    Add or remove filter for message reception.

    +
    Parameters
    + + + + + +
    [in]obj_idxObject index of object that filter should be or is assigned to
    [in]operationOperation on filter +
    [in]idID or start of ID range (depending on filter type)
    [in]argMask or end of ID range (depending on filter type)
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_CAN_ObjectSetFilter sets or removes the filter for message reception. Refer to CAN Message Filtering for details on filtering.

    +

    The parameter obj_idx is the message object index.
    + The parameter operation is the operation on the filter as listed in the table below and which are defined in the structure ARM_CAN_FILTER_OPERATION.

    + + + + + + + + + + + + + + + +
    Parameter operation Operation on Filter supported when ARM_CAN_OBJ_CAPABILITIES data field
    ARM_CAN_FILTER_ID_EXACT_ADD Add exact ID filter exact_filtering = 1
    ARM_CAN_FILTER_ID_EXACT_REMOVE Remove exact ID filter exact_filtering = 1
    ARM_CAN_FILTER_ID_RANGE_ADD Add range ID filter range_filtering = 1
    ARM_CAN_FILTER_ID_RANGE_REMOVE Remove range ID filter range_filtering = 1
    ARM_CAN_FILTER_ID_MASKABLE_ADD Add maskable ID filter mask_filtering = 1
    ARM_CAN_FILTER_ID_MASKABLE_REMOVE Remove maskable ID filter mask_filtering = 1
    +

    The parameter id is the identifier of the filter or defines the start of the filter range (depends on the filter operation).
    + The parameter arg is the mask of the filter or defines the end of the filter range (depends on the filter operation).

    +
    See Also
    ARM_CAN_ObjectConfigure
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_CAN_ObjectConfigure (uint32_t obj_idx,
    ARM_CAN_OBJ_CONFIG obj_cfg 
    )
    +
    + +

    Configure object.

    +
    Parameters
    + + + +
    [in]obj_idxObject index
    [in]obj_cfgObject configuration state +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_CAN_ObjectConfigure configures the message object, which can be a mailbox or FIFO. Refer to CAN Message Filtering for details.

    +

    The parameter obj_idx specifies the message object index.
    + The parameter obj_cfg configures the object with values as shown in the following table.

    + + + + + + + + + + + + + +
    Parameter obj_cfg Object Configuration supported when ARM_CAN_OBJ_CAPABILITIES data field
    ARM_CAN_OBJ_INACTIVE Deactivate object (default after ARM_CAN_Initialize) always supported
    ARM_CAN_OBJ_RX Receive object; read received message with ARM_CAN_MessageRead. rx = 1
    ARM_CAN_OBJ_TX Transmit object; send message with ARM_CAN_MessageSend. tx = 1
    ARM_CAN_OBJ_RX_RTR_TX_DATA Remote Frame Receive; when RTR is received data message is transmitted; set data message with ARM_CAN_MessageSend. rx_rtr_tx_data = 1
    ARM_CAN_OBJ_TX_RTR_RX_DATA Remote Frame Transmit; a RTR is sent with ARM_CAN_MessageSend to trigger object reception; read received data message with ARM_CAN_MessageRead. tx_rtr_rx_data = 1
    +

    When the object is deactivated, it is not used for data communication.

    +
    See Also
    ARM_CAN_ObjectSetFilter
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_CAN_MessageSend (uint32_t obj_idx,
    ARM_CAN_MSG_INFOmsg_info,
    const uint8_t * data,
    uint8_t size 
    )
    +
    + +

    Send message on CAN bus.

    +
    Parameters
    + + + + + +
    [in]obj_idxObject index
    [in]msg_infoPointer to CAN message information
    [in]dataPointer to data buffer
    [in]sizeNumber of data bytes to send
    +
    +
    +
    Returns
    value >= 0 number of data bytes accepted to send
    +
    +value < 0 Status Error Codes
    +

    The function ARM_CAN_MessageSend sends a CAN message on the CAN bus, or sets data message that will be automatically returned upon RTR reception with matching CAN ID.

    +

    Only one message can be sent with a call to this function (for CAN up to 8 bytes; for CAN FD up to 64 bytes of data). A message transmission can be terminated with a call to the function ARM_CAN_Control with control = ARM_CAN_ABORT_MESSAGE_SEND.

    +

    The parameter obj_idx specifies the message object index.

    +

    The parameter msg_info is a pointer to the structure ARM_CAN_MSG_INFO, which contains the following relevant data fields for sending message:

    +
      +
    • id: Identifier of the message; bit 31 specifies if this is an 11-bit or 29-bit identifier.
    • +
    • rtr: Specifies if Remote Transmission Request should be sent (dlc is used for number of requested bytes), otherwise the data message will be sent. Refer to Remote Frame for details.
    • +
    • edl: Specifies if Extended Data Length is used; for CAN FD, message can contain up to 64 data bytes.
    • +
    • brs: Specifies if Bit Rate Switching is to be used; for CAN FD, the bit rate can be increased during data phase.
    • +
    • dlc: Data Length Code of requested data bytes when sending Remote Transmission Request.
    • +
    +

    The parameter data is a pointer to the data buffer.
    + The parameter size is the number of data bytes to send.
    +

    +

    The function returns the number of bytes accepted to be sent or ARM_DRIVER_ERROR_BUSY if the hardware is not ready to accept a new message for transmission.

    +

    When the message is sent, the callback function ARM_CAN_SignalObjectEvent is called signalling ARM_CAN_EVENT_SEND_COMPLETE on specified object.

    +
    See Also
    CAN Message Filtering
    +

    Example:

    +
    status = ptrCAN->ObjectConfigure(0, ARM_CAN_OBJ_TX);
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    memset(&tx_msg_info, 0, sizeof(ARM_CAN_MSG_INFO)); // Clear transmit message structure
    +
    tx_msg_info.id = ARM_CAN_EXTENDED_ID(0x12345678U); // Set ID of message
    +
    data_buf[0] = '1'; data_buf[1] = '2'; // Prepare data to transmit
    +
    data_buf[2] = '3'; data_buf[3] = '4';
    +
    data_buf[4] = '5'; data_buf[5] = '6';
    +
    data_buf[6] = '7'; data_buf[7] = '8';
    +
    status = ptrCAN->MesageSend(0, &tx_msg_info, data_buf, 8); // Send message
    +
    if (status != ARM_DRIVER_OK ) { Error_Handler(); }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_CAN_MessageRead (uint32_t obj_idx,
    ARM_CAN_MSG_INFOmsg_info,
    uint8_t * data,
    uint8_t size 
    )
    +
    + +

    Read message received on CAN bus.

    +
    Parameters
    + + + + + +
    [in]obj_idxObject index
    [out]msg_infoPointer to read CAN message information
    [out]dataPointer to data buffer for read data
    [in]sizeMaximum number of data bytes to read
    +
    +
    +
    Returns
    value >= 0 number of data bytes read
    +
    +value < 0 Status Error Codes
    +

    The function ARM_CAN_MessageRead reads the message received on the CAN bus, if obj_idx was configured for reception or for automatic Data Message reception using RTR and the callback function ARM_CAN_SignalObjectEvent was called signalling ARM_CAN_EVENT_RECEIVE. If the message was overrun by another received message, then the callback function ARM_CAN_SignalObjectEvent will be called signalling ARM_CAN_EVENT_RECEIVE_OVERRUN.

    +

    The function can read a maximum of 8 data bytes for CAN and 64 bytes for CAN FD.

    +

    The parameter obj_idx specifies the message object index.
    + The parameter msg_info is a pointer to the CAN information structure.
    + The parameter data is a pointer to the data buffer for reading data.
    + The parameter size is data buffer size in bytes and indicates the maximum number of bytes that can be read.

    +

    The function returns the number of read data in bytes or the Status Error Codes.

    +

    All data fields of the structure ARM_CAN_MSG_INFO are updated as described below:

    +
      +
    • id: Identifier of the message that was received, bit 31 specifies if it is a 11-bit identifier or 29-bit identifier.
    • +
    • rtr: 1 = Remote Frame Request was received (dlc is number of requested bytes). 0 = data message
    • +
    • edl: 1 = CAN FD Extended Data Length message was received. 0 = not Extended Data Length message.
    • +
    • brs: 1 = CAN FD Bit Rate Switching was used for message transfer. 0 = no Bit Rate Switching was used.
    • +
    • esi: 1 = CAN FD Error State Indicator is active for received message. 0 = Error State Indicator is not active.
    • +
    • dlc: Data Length Code is the number of data bytes in the received message or number of data bytes requested by RTR.
    • +
    +

    Message reception can be disabled by de-configuring the receive object with the function ARM_CAN_ObjectConfigure.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_CAN_Control (uint32_t control,
    uint32_t arg 
    )
    +
    + +

    Control CAN interface.

    +
    Parameters
    + + + +
    [in]controlOperation +
    [in]argArgument of operation
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_CAN_Control controls the CAN interface settings and executes various operations.

    +

    The parameter control specifies various operations that are listed in the table below.

    +

    The parameters arg provides, depending on the control value, additional information or set values.

    + + + + + + + + + + + +
    Parameter control Operation
    ARM_CAN_SET_FD_MODE Select CAN FD mode; arg : 0 = CAN 2.0B; 1 = CAN FD.
    ARM_CAN_ABORT_MESSAGE_SEND Abort sending of CAN message; arg : object index
    ARM_CAN_CONTROL_RETRANSMISSION Enable/disable automatic retransmission; arg : 0 = disable, 1 = enable (default state)
    ARM_CAN_SET_TRANSCEIVER_DELAY Set transceiver delay; arg : delay in time quanta
    +

    Verify the CAN interface capabilities with ARM_CAN_GetCapabilities.

    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_CAN_STATUS ARM_CAN_GetStatus (void )
    +
    + +

    Get CAN status.

    +
    Returns
    CAN status ARM_CAN_STATUS
    +

    The function ARM_CAN_GetStatus retrieves runtime information on CAN bus and CAN unit state.

    +

    The following defines give information about the current unit involvement in bus communication:

    + + + + + + + + + +
    Unit State Description
    ARM_CAN_UNIT_STATE_INACTIVE Unit is not active on bus (initialize or error bus off).
    ARM_CAN_UNIT_STATE_ACTIVE Unit is active on bus (can generate active error frame).
    ARM_CAN_UNIT_STATE_PASSIVE Error passive (can not generate active error frame). Unit is interacting on the bus but does not send active error or overload frames.
    +

    The following defines are error codes of the last error that happened on the bus:

    + + + + + + + + + + + + + + + +
    Last Error Code Description
    ARM_CAN_LEC_NO_ERROR No error. There was no error since last read of status or last successful transmit or receive.
    ARM_CAN_LEC_BIT_ERROR Bit error. The bit monitored is different than the bit sent (except during arbitration phase).
    ARM_CAN_LEC_STUFF_ERROR Bit stuffing error. There were 6 consecutive same bit levels on the bus.
    ARM_CAN_LEC_CRC_ERROR CRC error. CRC of received data is not as expected.
    ARM_CAN_LEC_FORM_ERROR Illegal fixed-form bit. Error in fixed form bits.
    ARM_CAN_LEC_ACK_ERROR Acknowledgment error. Message was not acknowledged by any receiver on the bus.
    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_CAN_SignalUnitEvent (uint32_t event)
    +
    + +

    Signal CAN unit event.

    +
    Parameters
    + + +
    [in]eventCAN Unit Events
    +
    +
    +
    Returns
    none
    +

    The function ARM_CAN_SignalUnitEvent is a callback function registered by the function ARM_CAN_Initialize.

    +

    The parameter event indicates unit event that occurred during driver operation.

    +

    The following callback notifications are generated:

    + + + + + + + + + + + +
    Parameter event Value Description
    ARM_CAN_EVENT_UNIT_ACTIVE 0 Unit became active on the bus.
    ARM_CAN_EVENT_UNIT_WARNING 1 Unit error counter reached >= 96.
    ARM_CAN_EVENT_UNIT_PASSIVE 2 Unit became passive on the bus.
    ARM_CAN_EVENT_UNIT_BUS_OFF 3 Unit became inactive on the bus.
    +
    See Also
    ARM_CAN_GetStatus
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void ARM_CAN_SignalObjectEvent (uint32_t obj_idx,
    uint32_t event 
    )
    +
    + +

    Signal CAN object event.

    +
    Parameters
    + + + +
    [in]obj_idxObject index
    [in]eventCAN Object Events
    +
    +
    +
    Returns
    none
    +

    The function ARM_CAN_SignalObjectEvent is a callback function registered by the function ARM_CAN_Initialize and signals a CAN message object event.

    +

    The parameter obj_idx is the index of the message object.
    + The parameter event indicates object event that occurred during driver operation.

    +

    The following events can be generated:

    + + + + + + + + + +
    Parameter event Bit Description
    ARM_CAN_EVENT_SEND_COMPLETE 0 Message was sent successfully by the obj_idx object.
    ARM_CAN_EVENT_RECEIVE 1 Message was received successfully by the obj_idx object.
    ARM_CAN_EVENT_RECEIVE_OVERRUN 2 Message was overwritten before it was read on the obj_idx object.
    +
    See Also
    ARM_CAN_MessageSend
    +
    +ARM_CAN_MessageRead
    +
    +ARM_CAN_ObjectConfigure
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__interface__gr.js b/CMSIS/Documentation/Driver/html/group__can__interface__gr.js new file mode 100644 index 0000000..e753ea2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__interface__gr.js @@ -0,0 +1,77 @@ +var group__can__interface__gr = +[ + [ "Status Error Codes", "group__can__status__code__ctrls.html", "group__can__status__code__ctrls" ], + [ "CAN Unit Events", "group___c_a_n__unit__events.html", "group___c_a_n__unit__events" ], + [ "CAN Object Events", "group___c_a_n__events.html", "group___c_a_n__events" ], + [ "CAN Control Codes", "group__can__control.html", "group__can__control" ], + [ "ARM_DRIVER_CAN", "group__can__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___c_a_n", [ + [ "GetVersion", "group__can__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__can__interface__gr.html#a62c0c62c2bf482c000b1b2a2c817a96f", null ], + [ "Initialize", "group__can__interface__gr.html#a322b44b8e757887616b75035a8fd7027", null ], + [ "Uninitialize", "group__can__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__can__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "GetClock", "group__can__interface__gr.html#a21063f38e762cf29dfd3f5991ee936e2", null ], + [ "SetBitrate", "group__can__interface__gr.html#a360a314665607fc2d866c24e1608fd06", null ], + [ "SetMode", "group__can__interface__gr.html#a0fa2edbde052011604addec816782b4e", null ], + [ "ObjectGetCapabilities", "group__can__interface__gr.html#a7239c03265659edcaf69dc9ea5e29ce3", null ], + [ "ObjectSetFilter", "group__can__interface__gr.html#a2bfa264f66c84606ebf9f9e8dc45b907", null ], + [ "ObjectConfigure", "group__can__interface__gr.html#a24cfe29d7f6a29dfbac3c7011fc5b652", null ], + [ "MessageSend", "group__can__interface__gr.html#a3e6eb8bae2b7f8af99a3ca3cbbacce22", null ], + [ "MessageRead", "group__can__interface__gr.html#ace17a0046cf2c6cdbcb0fd3202e460a0", null ], + [ "Control", "group__can__interface__gr.html#a6e0f47a92f626a971c5197fca6545505", null ], + [ "GetStatus", "group__can__interface__gr.html#ad60ff24982cdb3ce38b8c17e0b4f0acc", null ] + ] ], + [ "ARM_CAN_CAPABILITIES", "group__can__interface__gr.html#struct_a_r_m___c_a_n___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "num_objects", "group__can__interface__gr.html#a69bd1a164443cf6f501489f4d31f4681", null ], + [ "reentrant_operation", "group__can__interface__gr.html#ae0514834750c7452431717a881471e2b", null ], + [ "fd_mode", "group__can__interface__gr.html#a15d22d5906d419ed1a7ca0968be00a04", null ], + [ "restricted_mode", "group__can__interface__gr.html#a93008ac105806db484e78e0582ca118c", null ], + [ "monitor_mode", "group__can__interface__gr.html#a176f42e68d9cba86b3594c40044b86c6", null ], + [ "internal_loopback", "group__can__interface__gr.html#af19cdbb26d3496ed7dd63a59a7c7711f", null ], + [ "external_loopback", "group__can__interface__gr.html#a2b76df7e4bfbdd9866cc906415e626c9", null ] + ] ], + [ "ARM_CAN_STATUS", "group__can__interface__gr.html#struct_a_r_m___c_a_n___s_t_a_t_u_s", [ + [ "unit_state", "group__can__interface__gr.html#a96ec94acab56690b3801e3c5fbd09fa2", null ], + [ "last_error_code", "group__can__interface__gr.html#a2171ea8dff5e4b54e84728aa134854b6", null ], + [ "tx_error_count", "group__can__interface__gr.html#a8941505f6f3ebd69825c4382184c580f", null ], + [ "rx_error_count", "group__can__interface__gr.html#ab7e8b863b379b786ad1af935aa3ef2e8", null ] + ] ], + [ "ARM_CAN_MSG_INFO", "group__can__interface__gr.html#struct_a_r_m___c_a_n___m_s_g___i_n_f_o", [ + [ "id", "group__can__interface__gr.html#abaabdc509cdaba7df9f56c6c76f3ae19", null ], + [ "rtr", "group__can__interface__gr.html#a1f32fc9e5d3b33babf5905140e7a53af", null ], + [ "edl", "group__can__interface__gr.html#ab6883964c9d4bdf60616684e8d2459df", null ], + [ "brs", "group__can__interface__gr.html#a3539c043c5868c59f76c736fe2bcadf4", null ], + [ "esi", "group__can__interface__gr.html#ada78e3124de6adf5a5d212f9ebc4bbe0", null ], + [ "dlc", "group__can__interface__gr.html#a811fbb0cb2c2263b1a7440a7e9d78239", null ] + ] ], + [ "ARM_CAN_OBJ_CAPABILITIES", "group__can__interface__gr.html#struct_a_r_m___c_a_n___o_b_j___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "tx", "group__can__interface__gr.html#a9706173b2ed538efeb5ee4a952e2272f", null ], + [ "rx", "group__can__interface__gr.html#a895532773c3204e1538191f155c7bac8", null ], + [ "rx_rtr_tx_data", "group__can__interface__gr.html#a8a41139926d7c032247458d055071fda", null ], + [ "tx_rtr_rx_data", "group__can__interface__gr.html#a1debac19545140bdfe3c5fa8d53f1863", null ], + [ "multiple_filters", "group__can__interface__gr.html#a3662fb9a8fb81212043cadd90da704af", null ], + [ "exact_filtering", "group__can__interface__gr.html#a886337af58da4f995529eba228fb9b7a", null ], + [ "range_filtering", "group__can__interface__gr.html#a96dcf869f4adc9cec686630082c7c60a", null ], + [ "mask_filtering", "group__can__interface__gr.html#a2aa0e772d6cb8c30bb76ce1324423464", null ], + [ "message_depth", "group__can__interface__gr.html#a5a782fc223b0ea5034c6676eaec6f2d4", null ] + ] ], + [ "ARM_CAN_SignalUnitEvent_t", "group__can__interface__gr.html#gaac07b9fdf614bf439414f5417aaa376e", null ], + [ "ARM_CAN_SignalObjectEvent_t", "group__can__interface__gr.html#ga7ceceac3e9aa0981c5cacfab88efb4eb", null ], + [ "ARM_CAN_GetVersion", "group__can__interface__gr.html#ga4256d5b23ffcb27759a05f8e6b854f13", null ], + [ "ARM_CAN_GetCapabilities", "group__can__interface__gr.html#ga35f21cabe1637b1be964024a8f77721c", null ], + [ "ARM_CAN_Initialize", "group__can__interface__gr.html#gaa72ceb25ba67e279d7432404632deb44", null ], + [ "ARM_CAN_Uninitialize", "group__can__interface__gr.html#ga1e3e364b64f2ab277399e3279cce5ef8", null ], + [ "ARM_CAN_PowerControl", "group__can__interface__gr.html#ga6f634f126ac97daef2f3115aa7bfed7c", null ], + [ "ARM_CAN_GetClock", "group__can__interface__gr.html#ga1fe6cc207415de604975ae251e269361", null ], + [ "ARM_CAN_SetBitrate", "group__can__interface__gr.html#ga88bb27a8525503a250cca7a2c4a5d07a", null ], + [ "ARM_CAN_SetMode", "group__can__interface__gr.html#ga28226a6e223f9b95b4dafb7c2f48a855", null ], + [ "ARM_CAN_ObjectGetCapabilities", "group__can__interface__gr.html#ga45ab314f5121cf5a1b32d9adc600e0f7", null ], + [ "ARM_CAN_ObjectSetFilter", "group__can__interface__gr.html#ga4f9bc7088704483388e14872c9d5385d", null ], + [ "ARM_CAN_ObjectConfigure", "group__can__interface__gr.html#ga00ec0715f6755a49dae5b60dca182630", null ], + [ "ARM_CAN_MessageSend", "group__can__interface__gr.html#ga0dcffd362b4093043442a030eaebbcfe", null ], + [ "ARM_CAN_MessageRead", "group__can__interface__gr.html#gafc37084df5eab32f593c2744d35cf647", null ], + [ "ARM_CAN_Control", "group__can__interface__gr.html#ga8d9f0c5f03a8a81ab062b5aa57e5dea4", null ], + [ "ARM_CAN_GetStatus", "group__can__interface__gr.html#ga676d6b567fc4ab3d44f5d7a50ec9419c", null ], + [ "ARM_CAN_SignalUnitEvent", "group__can__interface__gr.html#ga38795d1ed135ce3bd87f31ef1596bccf", null ], + [ "ARM_CAN_SignalObjectEvent", "group__can__interface__gr.html#gabfcaeac9e2ca25936ba5a29f2d594e7e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__mode__ctrls.html b/CMSIS/Documentation/Driver/html/group__can__mode__ctrls.html new file mode 100644 index 0000000..ab1e6bd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__mode__ctrls.html @@ -0,0 +1,213 @@ + + + + + +CAN Operation Codes +CMSIS-Driver: CAN Operation Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Operation Codes
    +
    +
    + +

    Set CAN operation modes. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_CAN_SET_FD_MODE   (1UL << ARM_CAN_CONTROL_Pos)
     Set FD operation mode; arg: 0 = disable, 1 = enable.
     
    #define ARM_CAN_ABORT_MESSAGE_SEND   (2UL << ARM_CAN_CONTROL_Pos)
     Abort sending of CAN message; arg = object.
     
    #define ARM_CAN_CONTROL_RETRANSMISSION   (3UL << ARM_CAN_CONTROL_Pos)
     Enable/disable automatic retransmission; arg: 0 = disable, 1 = enable (default state)
     
    #define ARM_CAN_SET_TRANSCEIVER_DELAY   (4UL << ARM_CAN_CONTROL_Pos)
     Set transceiver delay; arg = delay in time quanta.
     
    +

    Description

    +

    Set CAN operation modes.

    +

    These controls set the CAN operation using the function ARM_CAN_Control.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_CAN_SET_FD_MODE   (1UL << ARM_CAN_CONTROL_Pos)
    +
    + +

    Set FD operation mode; arg: 0 = disable, 1 = enable.

    +
    See Also
    ARM_CAN_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_ABORT_MESSAGE_SEND   (2UL << ARM_CAN_CONTROL_Pos)
    +
    + +

    Abort sending of CAN message; arg = object.

    +
    See Also
    ARM_CAN_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_CONTROL_RETRANSMISSION   (3UL << ARM_CAN_CONTROL_Pos)
    +
    + +

    Enable/disable automatic retransmission; arg: 0 = disable, 1 = enable (default state)

    +
    See Also
    ARM_CAN_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_SET_TRANSCEIVER_DELAY   (4UL << ARM_CAN_CONTROL_Pos)
    +
    + +

    Set transceiver delay; arg = delay in time quanta.

    +
    See Also
    ARM_CAN_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__mode__ctrls.js b/CMSIS/Documentation/Driver/html/group__can__mode__ctrls.js new file mode 100644 index 0000000..407ee41 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__mode__ctrls.js @@ -0,0 +1,7 @@ +var group__can__mode__ctrls = +[ + [ "ARM_CAN_SET_FD_MODE", "group__can__mode__ctrls.html#ga978ab3e8860f644dea780e87b3478ff4", null ], + [ "ARM_CAN_ABORT_MESSAGE_SEND", "group__can__mode__ctrls.html#gae051a548bf785104a934908360529438", null ], + [ "ARM_CAN_CONTROL_RETRANSMISSION", "group__can__mode__ctrls.html#ga0453b8900ca3a0d5210ffd6a918a78e6", null ], + [ "ARM_CAN_SET_TRANSCEIVER_DELAY", "group__can__mode__ctrls.html#ga398dd25256e644cd8d6506495a06bde8", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.html b/CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.html new file mode 100644 index 0000000..2326681 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.html @@ -0,0 +1,189 @@ + + + + + +CAN Object Configuration Codes +CMSIS-Driver: CAN Object Configuration Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Object Configuration Codes
    +
    +
    + +

    CAN Object Configuration codes. +More...

    + + + + +

    +Enumerations

    enum  ARM_CAN_OBJ_CONFIG {
    +  ARM_CAN_OBJ_INACTIVE, +
    +  ARM_CAN_OBJ_TX, +
    +  ARM_CAN_OBJ_RX, +
    +  ARM_CAN_OBJ_RX_RTR_TX_DATA, +
    +  ARM_CAN_OBJ_TX_RTR_RX_DATA +
    + }
     
    +

    Description

    +

    CAN Object Configuration codes.

    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum ARM_CAN_OBJ_CONFIG
    +
    +

    Provides defined values for the configuration of CAN objects.

    +

    Parameter for:

    + +
    Enumerator:
    + + + + + +
    ARM_CAN_OBJ_INACTIVE  +

    CAN object inactive.

    +
    ARM_CAN_OBJ_TX  +

    CAN transmit object.

    +
    ARM_CAN_OBJ_RX  +

    CAN receive object.

    +
    ARM_CAN_OBJ_RX_RTR_TX_DATA  +

    CAN object that on RTR reception automatically transmits Data Frame.

    +
    ARM_CAN_OBJ_TX_RTR_RX_DATA  +

    CAN object that transmits RTR and automatically receives Data Frame.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.js b/CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.js new file mode 100644 index 0000000..da4058d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__obj__config__ctrls.js @@ -0,0 +1,10 @@ +var group__can__obj__config__ctrls = +[ + [ "ARM_CAN_OBJ_CONFIG", "group__can__obj__config__ctrls.html#gaa9488554de0575bc821c9f65213c4cd0", [ + [ "ARM_CAN_OBJ_INACTIVE", "_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0aebbd0da59658805af30203be66d80249", null ], + [ "ARM_CAN_OBJ_TX", "_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a3e20952f92855298cd0a39a7f47b3f3c", null ], + [ "ARM_CAN_OBJ_RX", "_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a14780ac7274831ee94f427cbbf67c003", null ], + [ "ARM_CAN_OBJ_RX_RTR_TX_DATA", "_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0ac5d28d180ea9e4328974ffcb8b928a0c", null ], + [ "ARM_CAN_OBJ_TX_RTR_RX_DATA", "_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a396d7a6cd2353e1a2936405ace6417f5", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.html b/CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.html new file mode 100644 index 0000000..3e8df77 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.html @@ -0,0 +1,294 @@ + + + + + +Status Error Codes +CMSIS-Driver: Status Error Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Status Error Codes
    +
    +
    + +

    Status codes of the CAN driver. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_CAN_UNIT_STATE_INACTIVE   (0U)
     Unit state: Not active on bus (initialize or error bus off)
     
    #define ARM_CAN_UNIT_STATE_ACTIVE   (1U)
     Unit state: Active on bus (can generate active error frame)
     
    #define ARM_CAN_UNIT_STATE_PASSIVE   (2U)
     Unit state: Error passive (can not generate active error frame)
     
    #define ARM_CAN_LEC_NO_ERROR   (0U)
     Last error code: No error.
     
    #define ARM_CAN_LEC_BIT_ERROR   (1U)
     Last error code: Bit error.
     
    #define ARM_CAN_LEC_STUFF_ERROR   (2U)
     Last error code: Bit stuffing error.
     
    #define ARM_CAN_LEC_CRC_ERROR   (3U)
     Last error code: CRC error.
     
    #define ARM_CAN_LEC_FORM_ERROR   (4U)
     Last error code: Illegal fixed-form bit.
     
    #define ARM_CAN_LEC_ACK_ERROR   (5U)
     Last error code: Acknowledgement error.
     
    +

    Description

    +

    Status codes of the CAN driver.

    +

    The following callback notification unit events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_CAN_UNIT_STATE_INACTIVE   (0U)
    +
    + +

    Unit state: Not active on bus (initialize or error bus off)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_UNIT_STATE_ACTIVE   (1U)
    +
    + +

    Unit state: Active on bus (can generate active error frame)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_UNIT_STATE_PASSIVE   (2U)
    +
    + +

    Unit state: Error passive (can not generate active error frame)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_LEC_NO_ERROR   (0U)
    +
    + +

    Last error code: No error.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_LEC_BIT_ERROR   (1U)
    +
    + +

    Last error code: Bit error.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_LEC_STUFF_ERROR   (2U)
    +
    + +

    Last error code: Bit stuffing error.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_LEC_CRC_ERROR   (3U)
    +
    + +

    Last error code: CRC error.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_LEC_FORM_ERROR   (4U)
    +
    + +

    Last error code: Illegal fixed-form bit.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_CAN_LEC_ACK_ERROR   (5U)
    +
    + +

    Last error code: Acknowledgement error.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.js b/CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.js new file mode 100644 index 0000000..7ad86f6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__status__code__ctrls.js @@ -0,0 +1,12 @@ +var group__can__status__code__ctrls = +[ + [ "ARM_CAN_UNIT_STATE_INACTIVE", "group__can__status__code__ctrls.html#ga911a65cc31304d57d283a21476d9ade7", null ], + [ "ARM_CAN_UNIT_STATE_ACTIVE", "group__can__status__code__ctrls.html#ga5f72c295ee2b829a8ae33b96466cc0e8", null ], + [ "ARM_CAN_UNIT_STATE_PASSIVE", "group__can__status__code__ctrls.html#gace2db0f930f935054c21242f735e1922", null ], + [ "ARM_CAN_LEC_NO_ERROR", "group__can__status__code__ctrls.html#ga5332a311f44caec256d59087c705e1e9", null ], + [ "ARM_CAN_LEC_BIT_ERROR", "group__can__status__code__ctrls.html#ga0571c3c3e341ac0579aa713fdfdae77e", null ], + [ "ARM_CAN_LEC_STUFF_ERROR", "group__can__status__code__ctrls.html#ga33cbda311f4c2f2464e4070dee78b2f2", null ], + [ "ARM_CAN_LEC_CRC_ERROR", "group__can__status__code__ctrls.html#ga1380f80b709ca921634aecdaf34a24e5", null ], + [ "ARM_CAN_LEC_FORM_ERROR", "group__can__status__code__ctrls.html#ga9f753ba50045b28653fb3215ec2e4b8a", null ], + [ "ARM_CAN_LEC_ACK_ERROR", "group__can__status__code__ctrls.html#gaae6e827242137bc4d8976cd4ba73015f", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.html b/CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.html new file mode 100644 index 0000000..c0bca48 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.html @@ -0,0 +1,259 @@ + + + + + +CAN Bit Timing Codes +CMSIS-Driver: CAN Bit Timing Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CAN Bit Timing Codes
    +
    +
    + +

    Set bit timing. +More...

    + + + + + + + + + + +

    +Macros

    #define ARM_CAN_BIT_PROP_SEG(x)   (((x) << ARM_CAN_BIT_PROP_SEG_Pos) & ARM_CAN_BIT_PROP_SEG_Msk)
     
    #define ARM_CAN_BIT_PHASE_SEG1(x)   (((x) << ARM_CAN_BIT_PHASE_SEG1_Pos) & ARM_CAN_BIT_PHASE_SEG1_Msk)
     
    #define ARM_CAN_BIT_PHASE_SEG2(x)   (((x) << ARM_CAN_BIT_PHASE_SEG2_Pos) & ARM_CAN_BIT_PHASE_SEG2_Msk)
     
    #define ARM_CAN_BIT_SJW(x)   (((x) << ARM_CAN_BIT_SJW_Pos) & ARM_CAN_BIT_SJW_Msk)
     
    + + + + +

    +Enumerations

    enum  ARM_CAN_BITRATE_SELECT {
    +  ARM_CAN_BITRATE_NOMINAL, +
    +  ARM_CAN_BITRATE_FD_DATA +
    + }
     Set the bit rate. More...
     
    +

    Description

    +

    Set bit timing.

    +

    The following codes are used with the function ARM_CAN_SetBitrate.

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_CAN_BIT_PROP_SEG( x)   (((x) << ARM_CAN_BIT_PROP_SEG_Pos) & ARM_CAN_BIT_PROP_SEG_Msk)
    +
    +
    See Also
    ARM_CAN_SetBitrate
    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_CAN_BIT_PHASE_SEG1( x)   (((x) << ARM_CAN_BIT_PHASE_SEG1_Pos) & ARM_CAN_BIT_PHASE_SEG1_Msk)
    +
    +
    See Also
    ARM_CAN_SetBitrate
    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_CAN_BIT_PHASE_SEG2( x)   (((x) << ARM_CAN_BIT_PHASE_SEG2_Pos) & ARM_CAN_BIT_PHASE_SEG2_Msk)
    +
    +
    See Also
    ARM_CAN_SetBitrate
    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_CAN_BIT_SJW( x)   (((x) << ARM_CAN_BIT_SJW_Pos) & ARM_CAN_BIT_SJW_Msk)
    +
    +
    See Also
    ARM_CAN_SetBitrate
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum ARM_CAN_BITRATE_SELECT
    +
    + +

    Set the bit rate.

    +

    Provides the typedef for setting the bit rate.

    +

    Parameter for:

    + +
    Enumerator:
    + + +
    ARM_CAN_BITRATE_NOMINAL  +

    Select nominal (flexible data-rate arbitration) bitrate.

    +
    ARM_CAN_BITRATE_FD_DATA  +

    Select flexible data-rate data bitrate.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.js b/CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.js new file mode 100644 index 0000000..f625728 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__can__timeseg__ctrls.js @@ -0,0 +1,11 @@ +var group__can__timeseg__ctrls = +[ + [ "ARM_CAN_BIT_PROP_SEG", "group__can__timeseg__ctrls.html#ga01183319a5a899eafea9ffe7af73d5ea", null ], + [ "ARM_CAN_BIT_PHASE_SEG1", "group__can__timeseg__ctrls.html#ga03f1921ee97a7ebf5d767b6cacf40792", null ], + [ "ARM_CAN_BIT_PHASE_SEG2", "group__can__timeseg__ctrls.html#ga76de056d56803cb7a0d01978ee981e80", null ], + [ "ARM_CAN_BIT_SJW", "group__can__timeseg__ctrls.html#gab32e97fa4edf497c111dd3f0d8779269", null ], + [ "ARM_CAN_BITRATE_SELECT", "group__can__timeseg__ctrls.html#ga11c12020b81a63a73a8b53e96a7e3dea", [ + [ "ARM_CAN_BITRATE_NOMINAL", "_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaa3b6d191c99f1eba4f01bcc5fbfaf67f3", null ], + [ "ARM_CAN_BITRATE_FD_DATA", "_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaaa6c9996de0cdf42da5c02086cd8f16dc", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__common__drv__gr.html b/CMSIS/Documentation/Driver/html/group__common__drv__gr.html new file mode 100644 index 0000000..2587602 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__common__drv__gr.html @@ -0,0 +1,234 @@ + + + + + +Common Driver Definitions +CMSIS-Driver: Common Driver Definitions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Common Driver Definitions
    +
    +
    + +

    Definitions common in all driver interfaces (Driver_Common.h) +More...

    + + + + + +

    +Content

     Status Error Codes
     Negative return values of functions indicate errors occurred during execution.
     
    + + + + +

    +Data Structures

    struct  ARM_DRIVER_VERSION
     Driver Version. More...
     
    + + + + +

    +Enumerations

    enum  ARM_POWER_STATE {
    +  ARM_POWER_OFF, +
    +  ARM_POWER_LOW, +
    +  ARM_POWER_FULL +
    + }
     General power states. More...
     
    +

    Description

    +

    Definitions common in all driver interfaces (Driver_Common.h)

    +

    The following definitions are common in all CMSIS-Driver interfaces. Refer to Common Driver Functions for a general overview.

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_VERSION
    +
    +

    Driver Version.

    +

    The access structure of each CMSIS-Driver provides the function GetVersion, which returns in the struct ARM_DRIVER_VERSION:

    +
      +
    • API version, which is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version, which is the source code version of the actual driver implementation.
    • +
    +

    The version is encoded as 16-bit unsigned value (uint16_t) with:

    +
      +
    • high-byte: major version.
    • +
    • low-byte: minor version.
    • +
    +

    For example, version 1.12 is encoded as 0x10C.

    +
    + + + + + + + +
    Data Fields
    +uint16_t +api +API version.
    +uint16_t +drv +Driver version.
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum ARM_POWER_STATE
    +
    + +

    General power states.

    +

    The access structure of each CMSIS-Driver provides the function PowerControl, which handles the power profile for a peripheral using the parameter ARM_POWER_STATE. Depending on this parameter, the peripheral will operate at full speed, detect just events, or is completely un-powered.

    +

    Refer to Function Call Sequence for more information.

    +
    Enumerator:
    + + + +
    ARM_POWER_OFF  +

    Power off: no operation possible.

    +
    ARM_POWER_LOW  +

    Low Power mode: retain state, detect and signal wake-up events.

    +
    ARM_POWER_FULL  +

    Power on: full operation at maximum performance.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__common__drv__gr.js b/CMSIS/Documentation/Driver/html/group__common__drv__gr.js new file mode 100644 index 0000000..5949d86 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__common__drv__gr.js @@ -0,0 +1,13 @@ +var group__common__drv__gr = +[ + [ "Status Error Codes", "group__execution__status.html", "group__execution__status" ], + [ "ARM_DRIVER_VERSION", "group__common__drv__gr.html#struct_a_r_m___d_r_i_v_e_r___v_e_r_s_i_o_n", [ + [ "api", "group__common__drv__gr.html#ad180da20fbde1d3dafc074af87c19540", null ], + [ "drv", "group__common__drv__gr.html#adcd153bc4507926c792e86ebe74e6455", null ] + ] ], + [ "ARM_POWER_STATE", "group__common__drv__gr.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5", [ + [ "ARM_POWER_OFF", "_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5ab6f5becc85ebd51c3dd2524a95d2ca35", null ], + [ "ARM_POWER_LOW", "_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5a9ef9e57cbcc948d0e22314e73dc8c434", null ], + [ "ARM_POWER_FULL", "_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5abed52b77a9ce4775570e44a842b1295e", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__interface__gr.html b/CMSIS/Documentation/Driver/html/group__eth__interface__gr.html new file mode 100644 index 0000000..47c3bda --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__interface__gr.html @@ -0,0 +1,359 @@ + + + + + +Ethernet Interface +CMSIS-Driver: Ethernet Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet Interface
    +
    +
    + +

    Ethernet common definitions (Driver_ETH.h) +More...

    + + + + + + + + + + + +

    +Content

     Media Interface Types
     Ethernet Media Interface type.
     
     Ethernet MAC Interface
     Driver API for Ethernet MAC Peripheral (Driver_ETH_MAC.h)
     
     Ethernet PHY Interface
     Driver API for Ethernet PHY Peripheral (Driver_ETH_PHY.h)
     
    + + + + + + + +

    +Data Structures

    struct  ARM_ETH_LINK_INFO
     Ethernet link information. More...
     
    struct  ARM_ETH_MAC_ADDR
     Ethernet MAC Address. More...
     
    + + + + +

    +Enumerations

    enum  ARM_ETH_LINK_STATE {
    +  ARM_ETH_LINK_DOWN, +
    +  ARM_ETH_LINK_UP +
    + }
     Ethernet link state. More...
     
    +

    Description

    +

    Ethernet common definitions (Driver_ETH.h)

    +

    Ethernet is a networking technology for exchanging data packages between computer systems. Several microcontrollers integrate an Ethernet MAC (Media Access Control) data-link layer that interfaces to an Ethernet PHY (Physical Interface Transceiver).

    +

    Wikipedia offers more information about the Ethernet.

    +

    Block Diagram

    +

    The Ethernet PHY connects typically to the Ethernet MAC using an MII (Media Independent Interface) or RMII (Reduced Media Independent Interface).

    +


    +

    +
    +EthernetSchematic.png +
    +Block Diagram of a typical Ethernet Interface
    +

    Ethernet API

    +

    The following header files define the Application Programming Interface (API) for the Ethernet interface:

    +
      +
    • Driver_ETH.h : Common definitions of the Ethernet PHY and MAC part
    • +
    • Driver_ETH_MAC.h : API for the Ethernet MAC
    • +
    • Driver_ETH_PHY.h : API for the Ethernet PHY
    • +
    +

    The driver implementation of the Ethernet MAC is a typical part of a Device Family Pack (DFP) that supports the peripherals of the microcontroller family. The driver implementation of the Ethernet PHY is a typical part of a Network Software Pack, since PHY is typically not integrated into the microcontroller.

    +
    Note
    For parameters, the value marked with (default) is the setting after the driver initialization.
    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Both drivers are used in combination and usually the Ethernet MAC provides a media interface to the Ethernet PHY. A typical setup sequence for the drivers is shown below:

    +

    Example Code

    +

    The following example code shows the usage of the Ethernet interface.

    +
    extern ARM_DRIVER_ETH_MAC Driver_ETH_MAC0;
    +
    extern ARM_DRIVER_ETH_PHY Driver_ETH_PHY0;
    +
    +
    static ARM_DRIVER_ETH_MAC *mac;
    +
    static ARM_DRIVER_ETH_PHY *phy;
    +
    static ARM_ETH_MAC_ADDR own_mac_address;
    +
    static ARM_ETH_MAC_CAPABILITIES capabilities;
    +
    +
    void ethernet_mac_notify (uint32_t event) {
    +
    switch (event) {
    +
    :
    +
    }
    +
    }
    +
    +
    +
    void initialize_ethernet_interface (void) {
    +
    mac = &Driver_ETH_MAC0;
    +
    phy = &Driver_ETH_PHY0;
    +
    +
    // Initialize Media Access Controller
    +
    capabilities = mac->GetCapabilities ();
    +
    +
    mac->Initialize (ethernet_mac_notify);
    + +
    +
    if (capabilities.mac_address == 0) {
    +
    // populate own_mac_address with the address to use
    +
    mac->SetMacAddress(&own_mac_address);
    +
    }
    +
    else {
    +
    mac->GetMacAddress(&own_mac_address);
    +
    }
    +
    +
    // Initialize Physical Media Interface
    +
    if (phy->Initialize (mac->PHY_Read, mac->PHY_Write) == ARM_DRIVER_OK) {
    + +
    phy->SetInterface (capabilities.media_interface);
    + +
    }
    +
    :
    +
    :
    +
    }
    +
    +
    +
    static ARM_ETH_LINK_STATE ethernet_link; // current link status
    +
    +
    void ethernet_check_link_status (void) {
    + +
    +
    link = phy->GetLinkState ();
    +
    if (link == ethernet_link) {
    +
    return; // link state unchanged
    +
    }
    +
    // link state changed
    +
    ethernet_link = link;
    +
    if (link == ARM_ETH_LINK_UP) { // start transfer
    + + + + + + + +
    }
    +
    else { // stop transfer
    + + + +
    }
    +
    }
    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_ETH_LINK_INFO
    +
    +

    Ethernet link information.

    +

    The Ethernet Link information provides parameters about the current established communication.

    +

    Returned by:

    + +
    + + + + + + + +
    Data Fields
    +uint32_t +speed: 2 +Link speed: 0= 10 MBit, 1= 100 MBit, 2= 1 GBit.
    +uint32_t +duplex: 1 +Duplex mode: 0= Half, 1= Full.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_ETH_MAC_ADDR
    +
    +

    Ethernet MAC Address.

    +

    Stores the MAC Address of the Ethernet interface as defined by IEEE 802. Wikipedia offers more information about the MAC Address.

    +

    Parameter for:

    + +
    + + + + +
    Data Fields
    +uint8_t +b +MAC Address (6 bytes), MSB first.
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum ARM_ETH_LINK_STATE
    +
    + +

    Ethernet link state.

    +

    The Ethernet Link status shows if the communication is currently established (up) or interrupted (down).

    +

    Returned by:

    + +
    Enumerator:
    + + +
    ARM_ETH_LINK_DOWN  +

    Link is down.

    +
    ARM_ETH_LINK_UP  +

    Link is up.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__interface__gr.js b/CMSIS/Documentation/Driver/html/group__eth__interface__gr.js new file mode 100644 index 0000000..d4361e8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__interface__gr.js @@ -0,0 +1,17 @@ +var group__eth__interface__gr = +[ + [ "Media Interface Types", "group__eth__interface__types1.html", "group__eth__interface__types1" ], + [ "Ethernet MAC Interface", "group__eth__mac__interface__gr.html", "group__eth__mac__interface__gr" ], + [ "Ethernet PHY Interface", "group__eth__phy__interface__gr.html", "group__eth__phy__interface__gr" ], + [ "ARM_ETH_LINK_INFO", "group__eth__interface__gr.html#struct_a_r_m___e_t_h___l_i_n_k___i_n_f_o", [ + [ "speed", "group__eth__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5", null ], + [ "duplex", "group__eth__interface__gr.html#a44b6cae894d7311dcdae7e93969c3c09", null ] + ] ], + [ "ARM_ETH_MAC_ADDR", "group__eth__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___a_d_d_r", [ + [ "b", "group__eth__interface__gr.html#ab590318ac859d0e57e15c3dd6c62a605", null ] + ] ], + [ "ARM_ETH_LINK_STATE", "group__eth__interface__gr.html#gacf7db5320eb841b462a4af3c56cc9291", [ + [ "ARM_ETH_LINK_DOWN", "_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291a5f635c9352db6cb6fa9ad95660850487", null ], + [ "ARM_ETH_LINK_UP", "_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291ab5e5b02c3c8a5a0fefcf69f3be7e31c1", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__interface__types1.html b/CMSIS/Documentation/Driver/html/group__eth__interface__types1.html new file mode 100644 index 0000000..4247432 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__interface__types1.html @@ -0,0 +1,200 @@ + + + + + +Media Interface Types +CMSIS-Driver: Media Interface Types + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Media Interface Types
    +
    +
    + +

    Ethernet Media Interface type. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_INTERFACE_MII   0
     Ethernet Media Interface type.
     
    #define ARM_ETH_INTERFACE_RMII   1
     Reduced Media Independent Interface (RMII)
     
    #define ARM_ETH_INTERFACE_SMII   2
     Serial Media Independent Interface (SMII)
     
    +

    Description

    +

    Ethernet Media Interface type.

    +

    Encodes the supported media interface between Ethernet MAC and Ethernet PHY. The function ARM_ETH_MAC_GetCapabilities retrieves the media interface type encoded in the data field media_interface of the struct ARM_ETH_MAC_CAPABILITIES.

    +

    Parameter for:

    + +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_INTERFACE_MII   0
    +
    + +

    Ethernet Media Interface type.

    +

    Media Independent Interface (MII)

    +
    See Also
    ARM_ETH_PHY_SetInterface
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_INTERFACE_RMII   1
    +
    + +

    Reduced Media Independent Interface (RMII)

    +
    See Also
    ARM_ETH_PHY_SetInterface
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_INTERFACE_SMII   2
    +
    + +

    Serial Media Independent Interface (SMII)

    +
    See Also
    ARM_ETH_PHY_SetInterface
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__interface__types1.js b/CMSIS/Documentation/Driver/html/group__eth__interface__types1.js new file mode 100644 index 0000000..14102a5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__interface__types1.js @@ -0,0 +1,6 @@ +var group__eth__interface__types1 = +[ + [ "ARM_ETH_INTERFACE_MII", "group__eth__interface__types1.html#ga468c848ddf75d7925130171af1ec2ac7", null ], + [ "ARM_ETH_INTERFACE_RMII", "group__eth__interface__types1.html#gac0361b34fbec9c19840ad0349e4c388b", null ], + [ "ARM_ETH_INTERFACE_SMII", "group__eth__interface__types1.html#ga24047d142be48bbc241e8d6eacb5cf7a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.html b/CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.html new file mode 100644 index 0000000..419a01b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.html @@ -0,0 +1,328 @@ + + + + + +Ethernet MAC Configuration +CMSIS-Driver: Ethernet MAC Configuration + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Configuration
    +
    +
    + +

    Specifies speed mode, link mode, checksum, and frame filtering modes. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_MAC_SPEED_10M   (ARM_ETH_SPEED_10M << ARM_ETH_MAC_SPEED_Pos)
     10 Mbps link speed
     
    #define ARM_ETH_MAC_SPEED_100M   (ARM_ETH_SPEED_100M << ARM_ETH_MAC_SPEED_Pos)
     100 Mbps link speed
     
    #define ARM_ETH_MAC_SPEED_1G   (ARM_ETH_SPEED_1G << ARM_ETH_MAC_SPEED_Pos)
     1 Gpbs link speed
     
    #define ARM_ETH_MAC_DUPLEX_HALF   (ARM_ETH_DUPLEX_HALF << ARM_ETH_MAC_DUPLEX_Pos)
     Half duplex link.
     
    #define ARM_ETH_MAC_DUPLEX_FULL   (ARM_ETH_DUPLEX_FULL << ARM_ETH_MAC_DUPLEX_Pos)
     Full duplex link.
     
    #define ARM_ETH_MAC_LOOPBACK   (1UL << 4)
     Loop-back test mode.
     
    #define ARM_ETH_MAC_CHECKSUM_OFFLOAD_RX   (1UL << 5)
     Receiver Checksum offload.
     
    #define ARM_ETH_MAC_CHECKSUM_OFFLOAD_TX   (1UL << 6)
     Transmitter Checksum offload.
     
    #define ARM_ETH_MAC_ADDRESS_BROADCAST   (1UL << 7)
     Accept frames with Broadcast address.
     
    #define ARM_ETH_MAC_ADDRESS_MULTICAST   (1UL << 8)
     Accept frames with any Multicast address.
     
    #define ARM_ETH_MAC_ADDRESS_ALL   (1UL << 9)
     Accept frames with any address (Promiscuous Mode)
     
    +

    Description

    +

    Specifies speed mode, link mode, checksum, and frame filtering modes.

    +

    The function ARM_ETH_MAC_Control with control = ARM_ETH_MAC_CONFIGURE configures the Ethernet MAC interface as specified with arg listed bellow.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_SPEED_10M   (ARM_ETH_SPEED_10M << ARM_ETH_MAC_SPEED_Pos)
    +
    + +

    10 Mbps link speed

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_SPEED_100M   (ARM_ETH_SPEED_100M << ARM_ETH_MAC_SPEED_Pos)
    +
    + +

    100 Mbps link speed

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_SPEED_1G   (ARM_ETH_SPEED_1G << ARM_ETH_MAC_SPEED_Pos)
    +
    + +

    1 Gpbs link speed

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_DUPLEX_HALF   (ARM_ETH_DUPLEX_HALF << ARM_ETH_MAC_DUPLEX_Pos)
    +
    + +

    Half duplex link.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_DUPLEX_FULL   (ARM_ETH_DUPLEX_FULL << ARM_ETH_MAC_DUPLEX_Pos)
    +
    + +

    Full duplex link.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_LOOPBACK   (1UL << 4)
    +
    + +

    Loop-back test mode.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_CHECKSUM_OFFLOAD_RX   (1UL << 5)
    +
    + +

    Receiver Checksum offload.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_CHECKSUM_OFFLOAD_TX   (1UL << 6)
    +
    + +

    Transmitter Checksum offload.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_ADDRESS_BROADCAST   (1UL << 7)
    +
    + +

    Accept frames with Broadcast address.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_ADDRESS_MULTICAST   (1UL << 8)
    +
    + +

    Accept frames with any Multicast address.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_ADDRESS_ALL   (1UL << 9)
    +
    + +

    Accept frames with any address (Promiscuous Mode)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.js b/CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.js new file mode 100644 index 0000000..f75a65a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__configuration__ctrls.js @@ -0,0 +1,14 @@ +var group__eth__mac__configuration__ctrls = +[ + [ "ARM_ETH_MAC_SPEED_10M", "group__eth__mac__configuration__ctrls.html#ga8c5b40d018ecfad05fe2546ba717c1d4", null ], + [ "ARM_ETH_MAC_SPEED_100M", "group__eth__mac__configuration__ctrls.html#ga29160c83a7b0952c64053d86789c6490", null ], + [ "ARM_ETH_MAC_SPEED_1G", "group__eth__mac__configuration__ctrls.html#ga8acefed744d8397a1777b9fd0e6230d2", null ], + [ "ARM_ETH_MAC_DUPLEX_HALF", "group__eth__mac__configuration__ctrls.html#gadb0fe2c5a1e21b0656d39c788ae22f36", null ], + [ "ARM_ETH_MAC_DUPLEX_FULL", "group__eth__mac__configuration__ctrls.html#gad5a7d4b5b8a31825eff1504e3828d8f6", null ], + [ "ARM_ETH_MAC_LOOPBACK", "group__eth__mac__configuration__ctrls.html#gab32765f35c35b672ee476278fe24a24e", null ], + [ "ARM_ETH_MAC_CHECKSUM_OFFLOAD_RX", "group__eth__mac__configuration__ctrls.html#ga281dfed993b5666ed999709b9f28578f", null ], + [ "ARM_ETH_MAC_CHECKSUM_OFFLOAD_TX", "group__eth__mac__configuration__ctrls.html#ga7272d2c55aeeeadbb95c591cbf6c1a2e", null ], + [ "ARM_ETH_MAC_ADDRESS_BROADCAST", "group__eth__mac__configuration__ctrls.html#ga43792feab641c3c87eafb943351ab0f4", null ], + [ "ARM_ETH_MAC_ADDRESS_MULTICAST", "group__eth__mac__configuration__ctrls.html#ga1d3ff8c63362b385548fe91730f20588", null ], + [ "ARM_ETH_MAC_ADDRESS_ALL", "group__eth__mac__configuration__ctrls.html#gab29ab9e295807f4c59ddd1c4642086d1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__control.html b/CMSIS/Documentation/Driver/html/group__eth__mac__control.html new file mode 100644 index 0000000..9b230a3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__control.html @@ -0,0 +1,160 @@ + + + + + +Ethernet MAC Control Codes +CMSIS-Driver: Ethernet MAC Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Control Codes
    +
    +
    + +

    Configure and control the Ethernet MAC using the ARM_ETH_MAC_Control. +More...

    + + + + + + + + + + + + + + +

    +Content

     Ethernet MAC Controls
     Configure and control the Ethernet MAC interface.
     
     Ethernet MAC Configuration
     Specifies speed mode, link mode, checksum, and frame filtering modes.
     
     Ethernet MAC Flush Flags
     Specify controls to flush a buffer.
     
     Ethernet MAC VLAN Filter Flag
     Specify whether to compare only the VLAN Identifier.
     
    +

    Description

    +

    Configure and control the Ethernet MAC using the ARM_ETH_MAC_Control.

    +

    Many parameters of the Ethernet MAC driver are configured using the ARM_ETH_MAC_Control function.

    +

    The various Ethernet MAC control codes define:

    + +

    Refer to the ARM_ETH_MAC_Control function for further details.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__control.js b/CMSIS/Documentation/Driver/html/group__eth__mac__control.js new file mode 100644 index 0000000..42da044 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__control.js @@ -0,0 +1,7 @@ +var group__eth__mac__control = +[ + [ "Ethernet MAC Controls", "group__eth__mac__ctrls.html", "group__eth__mac__ctrls" ], + [ "Ethernet MAC Configuration", "group__eth__mac__configuration__ctrls.html", "group__eth__mac__configuration__ctrls" ], + [ "Ethernet MAC Flush Flags", "group__eth__mac__flush__flag__ctrls.html", "group__eth__mac__flush__flag__ctrls" ], + [ "Ethernet MAC VLAN Filter Flag", "group__eth__mac__vlan__filter__ctrls.html", "group__eth__mac__vlan__filter__ctrls" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.html b/CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.html new file mode 100644 index 0000000..7d2b305 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.html @@ -0,0 +1,248 @@ + + + + + +Ethernet MAC Controls +CMSIS-Driver: Ethernet MAC Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Controls
    +
    +
    + +

    Configure and control the Ethernet MAC interface. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_MAC_CONFIGURE   (0x01)
     Configure MAC; arg = configuration.
     
    #define ARM_ETH_MAC_CONTROL_TX   (0x02)
     Transmitter; arg: 0=disabled (default), 1=enabled.
     
    #define ARM_ETH_MAC_CONTROL_RX   (0x03)
     Receiver; arg: 0=disabled (default), 1=enabled.
     
    #define ARM_ETH_MAC_FLUSH   (0x04)
     Flush buffer; arg = ARM_ETH_MAC_FLUSH_...
     
    #define ARM_ETH_MAC_SLEEP   (0x05)
     Sleep mode; arg: 1=enter and wait for Magic packet, 0=exit.
     
    #define ARM_ETH_MAC_VLAN_FILTER   (0x06)
     VLAN Filter for received frames; arg15..0: VLAN Tag; arg16: optional ARM_ETH_MAC_VLAN_FILTER_ID_ONLY; 0=disabled (default)
     
    +

    Description

    +

    Configure and control the Ethernet MAC interface.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_CONFIGURE   (0x01)
    +
    + +

    Configure MAC; arg = configuration.

    +
    See Also
    ARM_ETH_MAC_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_CONTROL_TX   (0x02)
    +
    + +

    Transmitter; arg: 0=disabled (default), 1=enabled.

    +
    See Also
    ARM_ETH_MAC_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_CONTROL_RX   (0x03)
    +
    + +

    Receiver; arg: 0=disabled (default), 1=enabled.

    +
    See Also
    ARM_ETH_MAC_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_FLUSH   (0x04)
    +
    + +

    Flush buffer; arg = ARM_ETH_MAC_FLUSH_...

    +
    See Also
    ARM_ETH_MAC_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_SLEEP   (0x05)
    +
    + +

    Sleep mode; arg: 1=enter and wait for Magic packet, 0=exit.

    +
    See Also
    ARM_ETH_MAC_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_VLAN_FILTER   (0x06)
    +
    + +

    VLAN Filter for received frames; arg15..0: VLAN Tag; arg16: optional ARM_ETH_MAC_VLAN_FILTER_ID_ONLY; 0=disabled (default)

    +
    See Also
    ARM_ETH_MAC_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.js b/CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.js new file mode 100644 index 0000000..05d57b1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__ctrls.js @@ -0,0 +1,9 @@ +var group__eth__mac__ctrls = +[ + [ "ARM_ETH_MAC_CONFIGURE", "group__eth__mac__ctrls.html#ga7819c7a1aa7bbc13dc42d0fd7e75a23c", null ], + [ "ARM_ETH_MAC_CONTROL_TX", "group__eth__mac__ctrls.html#ga3a98c8a7ee5ed4b1ffd250eecaeefe5c", null ], + [ "ARM_ETH_MAC_CONTROL_RX", "group__eth__mac__ctrls.html#gae0964364b81b38b6e1fbf7196f3be869", null ], + [ "ARM_ETH_MAC_FLUSH", "group__eth__mac__ctrls.html#ga530812ef349a2e297f23de72e660fe27", null ], + [ "ARM_ETH_MAC_SLEEP", "group__eth__mac__ctrls.html#ga4afe66589216f566f529af52f9075fdf", null ], + [ "ARM_ETH_MAC_VLAN_FILTER", "group__eth__mac__ctrls.html#gab332b58ba320e73864830dc42ad74181", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.html b/CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.html new file mode 100644 index 0000000..f1ff326 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.html @@ -0,0 +1,175 @@ + + + + + +Ethernet MAC Flush Flags +CMSIS-Driver: Ethernet MAC Flush Flags + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Flush Flags
    +
    +
    + +

    Specify controls to flush a buffer. +More...

    + + + + + + + + +

    +Macros

    #define ARM_ETH_MAC_FLUSH_RX   (1UL << 0)
     Flush Receive buffer.
     
    #define ARM_ETH_MAC_FLUSH_TX   (1UL << 1)
     Flush Transmit buffer.
     
    +

    Description

    +

    Specify controls to flush a buffer.

    +

    The function ARM_ETH_MAC_Control with control = ARM_ETH_MAC_FLUSH flushes the buffer which is specified with arg listed bellow.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_FLUSH_RX   (1UL << 0)
    +
    + +

    Flush Receive buffer.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_FLUSH_TX   (1UL << 1)
    +
    + +

    Flush Transmit buffer.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.js b/CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.js new file mode 100644 index 0000000..0b243ba --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__flush__flag__ctrls.js @@ -0,0 +1,5 @@ +var group__eth__mac__flush__flag__ctrls = +[ + [ "ARM_ETH_MAC_FLUSH_RX", "group__eth__mac__flush__flag__ctrls.html#gac18950811038319960756f063e1ef6d4", null ], + [ "ARM_ETH_MAC_FLUSH_TX", "group__eth__mac__flush__flag__ctrls.html#ga2d10ff33f4f4927820c6a17a2262b120", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.html b/CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.html new file mode 100644 index 0000000..dad73ba --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.html @@ -0,0 +1,194 @@ + + + + + +Ethernet MAC Frame Transmit Flags +CMSIS-Driver: Ethernet MAC Frame Transmit Flags + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Frame Transmit Flags
    +
    +
    + +

    Specify frame transmit flags. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_MAC_TX_FRAME_FRAGMENT   (1UL << 0)
     Indicate frame fragment.
     
    #define ARM_ETH_MAC_TX_FRAME_EVENT   (1UL << 1)
     Generate event when frame is transmitted.
     
    #define ARM_ETH_MAC_TX_FRAME_TIMESTAMP   (1UL << 2)
     Capture frame time stamp.
     
    +

    Description

    +

    Specify frame transmit flags.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TX_FRAME_FRAGMENT   (1UL << 0)
    +
    + +

    Indicate frame fragment.

    +
    See Also
    ARM_ETH_MAC_SendFrame
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TX_FRAME_EVENT   (1UL << 1)
    +
    + +

    Generate event when frame is transmitted.

    +
    See Also
    ARM_ETH_MAC_SendFrame
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TX_FRAME_TIMESTAMP   (1UL << 2)
    +
    + +

    Capture frame time stamp.

    +
    See Also
    ARM_ETH_MAC_SendFrame
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.js b/CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.js new file mode 100644 index 0000000..0d72d74 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__frame__transmit__ctrls.js @@ -0,0 +1,6 @@ +var group__eth__mac__frame__transmit__ctrls = +[ + [ "ARM_ETH_MAC_TX_FRAME_FRAGMENT", "group__eth__mac__frame__transmit__ctrls.html#gab7bd6dea5bb57240291db71e95c99d9c", null ], + [ "ARM_ETH_MAC_TX_FRAME_EVENT", "group__eth__mac__frame__transmit__ctrls.html#ga91a923680ea0dad758b8950a3fbd237e", null ], + [ "ARM_ETH_MAC_TX_FRAME_TIMESTAMP", "group__eth__mac__frame__transmit__ctrls.html#gade137f65dd345ae40e93c77d495f9b54", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.html b/CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.html new file mode 100644 index 0000000..40eea76 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.html @@ -0,0 +1,1487 @@ + + + + + +Ethernet MAC Interface +CMSIS-Driver: Ethernet MAC Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Interface
    +
    +
    + +

    Driver API for Ethernet MAC Peripheral (Driver_ETH_MAC.h) +More...

    + + + + + + + + + + + + + + +

    +Content

     Ethernet MAC Events
     The Ethernet MAC driver generates call back events that are notified via the function ARM_ETH_MAC_SignalEvent.
     
     Ethernet MAC Control Codes
     Configure and control the Ethernet MAC using the ARM_ETH_MAC_Control.
     
     Ethernet MAC Timer Control Codes
     Control codes for ARM_ETH_MAC_ControlTimer function.
     
     Ethernet MAC Frame Transmit Flags
     Specify frame transmit flags.
     
    + + + + + + + + + + +

    +Data Structures

    struct  ARM_ETH_MAC_CAPABILITIES
     Ethernet MAC Capabilities. More...
     
    struct  ARM_DRIVER_ETH_MAC
     Access structure of the Ethernet MAC Driver. More...
     
    struct  ARM_ETH_MAC_TIME
     Ethernet MAC Time. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_ETH_MAC_SignalEvent_t )(uint32_t event)
     Pointer to ARM_ETH_MAC_SignalEvent : Signal Ethernet Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_ETH_MAC_GetVersion (void)
     Get driver version.
     
    ARM_ETH_MAC_CAPABILITIES ARM_ETH_MAC_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_ETH_MAC_Initialize (ARM_ETH_MAC_SignalEvent_t cb_event)
     Initialize Ethernet MAC Device.
     
    int32_t ARM_ETH_MAC_Uninitialize (void)
     De-initialize Ethernet MAC Device.
     
    int32_t ARM_ETH_MAC_PowerControl (ARM_POWER_STATE state)
     Control Ethernet MAC Device Power.
     
    int32_t ARM_ETH_MAC_GetMacAddress (ARM_ETH_MAC_ADDR *ptr_addr)
     Get Ethernet MAC Address.
     
    int32_t ARM_ETH_MAC_SetMacAddress (const ARM_ETH_MAC_ADDR *ptr_addr)
     Set Ethernet MAC Address.
     
    int32_t ARM_ETH_MAC_SetAddressFilter (const ARM_ETH_MAC_ADDR *ptr_addr, uint32_t num_addr)
     Configure Address Filter.
     
    int32_t ARM_ETH_MAC_SendFrame (const uint8_t *frame, uint32_t len, uint32_t flags)
     Send Ethernet frame.
     
    int32_t ARM_ETH_MAC_ReadFrame (uint8_t *frame, uint32_t len)
     Read data of received Ethernet frame.
     
    uint32_t ARM_ETH_MAC_GetRxFrameSize (void)
     Get size of received Ethernet frame.
     
    int32_t ARM_ETH_MAC_GetRxFrameTime (ARM_ETH_MAC_TIME *time)
     Get time of received Ethernet frame.
     
    int32_t ARM_ETH_MAC_GetTxFrameTime (ARM_ETH_MAC_TIME *time)
     Get time of transmitted Ethernet frame.
     
    int32_t ARM_ETH_MAC_Control (uint32_t control, uint32_t arg)
     Control Ethernet Interface.
     
    int32_t ARM_ETH_MAC_ControlTimer (uint32_t control, ARM_ETH_MAC_TIME *time)
     Control Precision Timer.
     
    int32_t ARM_ETH_MAC_PHY_Read (uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
     Read Ethernet PHY Register through Management Interface.
     
    int32_t ARM_ETH_MAC_PHY_Write (uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
     Write Ethernet PHY Register through Management Interface.
     
    void ARM_ETH_MAC_SignalEvent (uint32_t event)
     Callback function that signals a Ethernet Event.
     
    +

    Description

    +

    Driver API for Ethernet MAC Peripheral (Driver_ETH_MAC.h)

    +

    The following section describes the Ethernet MAC Interface as defined in the Driver_ETH_MAC.h header file.

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_ETH_MAC_CAPABILITIES
    +
    +

    Ethernet MAC Capabilities.

    +

    An Ethernet MAC driver can be implemented with different capabilities. The data fields of this struct encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +checksum_offload_rx_ip4: 1 +1 = IPv4 header checksum verified on receive
    +uint32_t +checksum_offload_rx_ip6: 1 +1 = IPv6 checksum verification supported on receive
    +uint32_t +checksum_offload_rx_udp: 1 +1 = UDP payload checksum verified on receive
    +uint32_t +checksum_offload_rx_tcp: 1 +1 = TCP payload checksum verified on receive
    +uint32_t +checksum_offload_rx_icmp: 1 +1 = ICMP payload checksum verified on receive
    +uint32_t +checksum_offload_tx_ip4: 1 +1 = IPv4 header checksum generated on transmit
    +uint32_t +checksum_offload_tx_ip6: 1 +1 = IPv6 checksum generation supported on transmit
    +uint32_t +checksum_offload_tx_udp: 1 +1 = UDP payload checksum generated on transmit
    +uint32_t +checksum_offload_tx_tcp: 1 +1 = TCP payload checksum generated on transmit
    +uint32_t +checksum_offload_tx_icmp: 1 +1 = ICMP payload checksum generated on transmit
    +uint32_t +media_interface: 2 +Ethernet Media Interface type.
    +uint32_t +mac_address: 1 +1 = driver provides initial valid MAC address
    +uint32_t +event_rx_frame: 1 +1 = callback event ARM_ETH_MAC_EVENT_RX_FRAME generated
    +uint32_t +event_tx_frame: 1 +1 = callback event ARM_ETH_MAC_EVENT_TX_FRAME generated
    +uint32_t +event_wakeup: 1 +1 = wakeup event ARM_ETH_MAC_EVENT_WAKEUP generated
    +uint32_t +precision_timer: 1 +1 = Precision Timer supported
    + +
    +
    + +
    +
    + + + + +
    struct ARM_DRIVER_ETH_MAC
    +
    +

    Access structure of the Ethernet MAC Driver.

    +

    The functions of the Ethernet MAC are accessed by function pointers. Refer to Common Driver Functions for overview information.

    +

    Each instance of an Ethernet MAC provides such an access struct. The instance is indicated by a postfix in the symbol name of the access struct, for example:

    +
      +
    • Driver_ETH_MAC0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_ETH_MAC1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows connecting the middleware to a specific driver instance Driver_ETH_MACn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_ETH_MAC_GetVersion : Get driver version.
     
    ARM_ETH_MAC_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_ETH_MAC_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_ETH_MAC_SignalEvent_t cb_event)
     Pointer to ARM_ETH_MAC_Initialize : Initialize Ethernet MAC Device.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_ETH_MAC_Uninitialize : De-initialize Ethernet MAC Device.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_ETH_MAC_PowerControl : Control Ethernet MAC Device Power.
     
    int32_t(* GetMacAddress )(ARM_ETH_MAC_ADDR *ptr_addr)
     Pointer to ARM_ETH_MAC_GetMacAddress : Get Ethernet MAC Address.
     
    int32_t(* SetMacAddress )(const ARM_ETH_MAC_ADDR *ptr_addr)
     Pointer to ARM_ETH_MAC_SetMacAddress : Set Ethernet MAC Address.
     
    int32_t(* SetAddressFilter )(const ARM_ETH_MAC_ADDR *ptr_addr, uint32_t num_addr)
     Pointer to ARM_ETH_MAC_SetAddressFilter : Configure Address Filter.
     
    int32_t(* SendFrame )(const uint8_t *frame, uint32_t len, uint32_t flags)
     Pointer to ARM_ETH_MAC_SendFrame : Send Ethernet frame.
     
    int32_t(* ReadFrame )(uint8_t *frame, uint32_t len)
     Pointer to ARM_ETH_MAC_ReadFrame : Read data of received Ethernet frame.
     
    uint32_t(* GetRxFrameSize )(void)
     Pointer to ARM_ETH_MAC_GetRxFrameSize : Get size of received Ethernet frame.
     
    int32_t(* GetRxFrameTime )(ARM_ETH_MAC_TIME *time)
     Pointer to ARM_ETH_MAC_GetRxFrameTime : Get time of received Ethernet frame.
     
    int32_t(* GetTxFrameTime )(ARM_ETH_MAC_TIME *time)
     Pointer to ARM_ETH_MAC_GetTxFrameTime : Get time of transmitted Ethernet frame.
     
    int32_t(* ControlTimer )(uint32_t control, ARM_ETH_MAC_TIME *time)
     Pointer to ARM_ETH_MAC_ControlTimer : Control Precision Timer.
     
    int32_t(* Control )(uint32_t control, uint32_t arg)
     Pointer to ARM_ETH_MAC_Control : Control Ethernet Interface.
     
    int32_t(* PHY_Read )(uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
     Pointer to ARM_ETH_MAC_PHY_Read : Read Ethernet PHY Register through Management Interface.
     
    int32_t(* PHY_Write )(uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
     Pointer to ARM_ETH_MAC_PHY_Write : Write Ethernet PHY Register through Management Interface.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_ETH_MAC_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_ETH_MAC_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_ETH_MAC_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_ETH_MAC_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_ETH_MAC_Initialize : Initialize Ethernet MAC Device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_ETH_MAC_Uninitialize : De-initialize Ethernet MAC Device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_ETH_MAC_PowerControl : Control Ethernet MAC Device Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* GetMacAddress)(ARM_ETH_MAC_ADDR *ptr_addr)
    +
    + +

    Pointer to ARM_ETH_MAC_GetMacAddress : Get Ethernet MAC Address.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetMacAddress)(const ARM_ETH_MAC_ADDR *ptr_addr)
    +
    + +

    Pointer to ARM_ETH_MAC_SetMacAddress : Set Ethernet MAC Address.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetAddressFilter)(const ARM_ETH_MAC_ADDR *ptr_addr, uint32_t num_addr)
    +
    + +

    Pointer to ARM_ETH_MAC_SetAddressFilter : Configure Address Filter.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SendFrame)(const uint8_t *frame, uint32_t len, uint32_t flags)
    +
    + +

    Pointer to ARM_ETH_MAC_SendFrame : Send Ethernet frame.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ReadFrame)(uint8_t *frame, uint32_t len)
    +
    + +

    Pointer to ARM_ETH_MAC_ReadFrame : Read data of received Ethernet frame.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* GetRxFrameSize)(void)
    +
    + +

    Pointer to ARM_ETH_MAC_GetRxFrameSize : Get size of received Ethernet frame.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* GetRxFrameTime)(ARM_ETH_MAC_TIME *time)
    +
    + +

    Pointer to ARM_ETH_MAC_GetRxFrameTime : Get time of received Ethernet frame.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* GetTxFrameTime)(ARM_ETH_MAC_TIME *time)
    +
    + +

    Pointer to ARM_ETH_MAC_GetTxFrameTime : Get time of transmitted Ethernet frame.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ControlTimer)(uint32_t control, ARM_ETH_MAC_TIME *time)
    +
    + +

    Pointer to ARM_ETH_MAC_ControlTimer : Control Precision Timer.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t control, uint32_t arg)
    +
    + +

    Pointer to ARM_ETH_MAC_Control : Control Ethernet Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PHY_Read)(uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
    +
    + +

    Pointer to ARM_ETH_MAC_PHY_Read : Read Ethernet PHY Register through Management Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PHY_Write)(uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
    +
    + +

    Pointer to ARM_ETH_MAC_PHY_Write : Write Ethernet PHY Register through Management Interface.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_ETH_MAC_TIME
    +
    +

    Ethernet MAC Time.

    +

    The two members of this struct provide fields to encode time values in the order Nano seconds and seconds.

    +

    The member ns is also used as a correction factor for ARM_ETH_MAC_TIMER_ADJUST_CLOCK.

    +

    Used in:

    + +
    + + + + + + + +
    Data Fields
    +uint32_t +ns +Nano seconds.
    +uint32_t +sec +Seconds.
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_ETH_MAC_SignalEvent_t
    +
    + +

    Pointer to ARM_ETH_MAC_SignalEvent : Signal Ethernet Event.

    +

    Provides the typedef for the callback function ARM_ETH_MAC_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_ETH_MAC_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_ETH_MAC_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_ETH_MAC Driver_ETH_MAC0;
    + +
    +
    void setup_ethernet (void) {
    + +
    +
    mac = &Driver_ETH_MAC0;
    +
    version = mac->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_ETH_MAC_CAPABILITIES ARM_ETH_MAC_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_ETH_MAC_CAPABILITIES
    +

    The function ARM_ETH_MAC_GetCapabilities retrieves information about capabilities in this driver implementation. The data fields of the struct ARM_ETH_MAC_CAPABILITIES encode various capabilities, for example if a hardware is capable to create checksums in hardware or signal events using the ARM_ETH_MAC_SignalEvent callback function.

    +

    Example:

    +
    extern ARM_DRIVER_ETH_MAC Driver_ETH_MAC0;
    + +
    +
    void read_capabilities (void) {
    +
    ARM_ETH_MAC_CAPABILITIES mac_capabilities;
    +
    +
    mac = &Driver_ETH_MAC0;
    +
    mac_capabilities = mac->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_MAC_Initialize (ARM_ETH_MAC_SignalEvent_t cb_event)
    +
    + +

    Initialize Ethernet MAC Device.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_ETH_MAC_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_Initialize initializes the Ethernet MAC interface. It is called when the middleware component starts operation.

    +

    The ARM_ETH_MAC_Initialize function performs the following operations:

    +
      +
    • Initializes the resources needed for the Ethernet MAC peripheral.
    • +
    • Registers the ARM_ETH_MAC_SignalEvent callback function.
    • +
    +

    The parameter cb_event is a pointer to the ARM_ETH_MAC_SignalEvent callback function; use a NULL pointer when no callback signals are required.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_MAC_Uninitialize (void )
    +
    + +

    De-initialize Ethernet MAC Device.

    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_Uninitialize de-initializes the resources of Ethernet MAC interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_MAC_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control Ethernet MAC Device Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_PowerControl allows you to configure the power modes of the Ethernet MAC interface.

    +

    The parameter state can be:

    +
      +
    • ARM_POWER_OFF: Ethernet MAC peripheral is turned off.
    • +
    • ARM_POWER_FULL: Ethernet MAC peripheral is turned on and fully operational.
    • +
    +

    If power state specifies an unsupported mode, the function returns ARM_DRIVER_ERROR_UNSUPPORTED as status information and the previous power state of the peripheral is unchanged. Multiple calls with the same state generate no error.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_MAC_GetMacAddress (ARM_ETH_MAC_ADDRptr_addr)
    +
    + +

    Get Ethernet MAC Address.

    +
    Parameters
    + + +
    [in]ptr_addrPointer to address
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_GetMacAddress retrieves the Ethernet MAC own address from the driver.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_MAC_SetMacAddress (const ARM_ETH_MAC_ADDRptr_addr)
    +
    + +

    Set Ethernet MAC Address.

    +
    Parameters
    + + +
    [in]ptr_addrPointer to address
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_SetMacAddress configures Ethernet MAC own address. The Ethernet MAC accepts packets Ethernet frames which contains a MAC destination address that matches the address specified with ptr_addr.

    +

    The Ethernet MAC receiver will accept also packets with addresses configured by ARM_ETH_MAC_SetAddressFilter function.

    +

    MAC receiver can be configured to accept also packets with broadcast address, any multicast address or even all packets regardless of address (Promiscuity Mode). This is configured by function ARM_ETH_MAC_Control with ARM_ETH_MAC_CONFIGURE as control parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_MAC_SetAddressFilter (const ARM_ETH_MAC_ADDRptr_addr,
    uint32_t num_addr 
    )
    +
    + +

    Configure Address Filter.

    +
    Parameters
    + + + +
    [in]ptr_addrPointer to addresses
    [in]num_addrNumber of addresses to configure
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_SetAddressFilter configures Ethernet MAC receiver address filtering. The Ethernet MAC accepts packets Ethernet frames which contains a MAC destination address of the list supplied with ptr_addr. The parameter ptr_addr provides and array of Ethernet MAC addresses. The number of addresses is supplied by num_addr. Specifying num_adr = 0 disables address filtering previously set with this function.

    +

    The Ethernet MAC receiver will accept packets addressed to its own address and packets with addresses configured by this function.

    +

    MAC receiver can be configured to accept also packets with broadcast address, any multicast address or even all packets regardless of address (Promiscuity Mode). This is configured by function ARM_ETH_MAC_Control with ARM_ETH_MAC_CONFIGURE as control parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_MAC_SendFrame (const uint8_t * frame,
    uint32_t len,
    uint32_t flags 
    )
    +
    + +

    Send Ethernet frame.

    +
    Parameters
    + + + + +
    [in]framePointer to frame buffer with data to send
    [in]lenFrame buffer length in bytes
    [in]flagsFrame transmit flags (see ARM_ETH_MAC_TX_FRAME_...)
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_SendFrame writes an Ethernet frame to the Ethernet MAC transmit buffer.

    +

    The Ethernet MAC transmit engine must be enabled by using the function ARM_ETH_MAC_Control (ARM_ETH_MAC_CONTROL_TX, 1) before a call to this function.

    +

    The frame data addressed by buf starts with MAC destination and ends with the last Payload data byte. The frame data is copied into the transmit buffer of the Ethernet MAC interface. The function does not wait until the transmission over the Ethernet is complete, however the memory addressed by buf is available for the next Ethernet frame after return.

    +

    The maximum value for len is implied by the size restrictions of the Ethernet frame but is not verified. Using an invalid value for len may generate unpredicted results.

    +

    The parameter flags specifies additional attributes for the function as shown in the following table. Multiple flags can be combined, for example: ARM_ETH_MAC_TX_FRAME_EVENT | ARM_ETH_MAC_TX_FRAME_TIMESTAMP.

    + + + + + + + + + +
    Flag bit Description
    ARM_ETH_MAC_TX_FRAME_FRAGMENT Indicates that it is a fragment of the frame. allows you to collect multiple fragments before the frame is sent.
    ARM_ETH_MAC_TX_FRAME_EVENT ARM_ETH_MAC_SignalEvent with event bit ARM_ETH_MAC_EVENT_TX_FRAME set will be called when frame send is complete.
    ARM_ETH_MAC_TX_FRAME_TIMESTAMP Capture the time stamp of the frame. The time stamp can be obtained using the function ARM_ETH_MAC_GetTxFrameTime.
    +

    Example:

    +
    status = mac->SendFrame (&frame->data[0], frame->length, 0);
    +
    if (status != ARM_DRIVER_OK) {
    +
    // error handling
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_MAC_ReadFrame (uint8_t * frame,
    uint32_t len 
    )
    +
    + +

    Read data of received Ethernet frame.

    +
    Parameters
    + + + +
    [in]framePointer to frame buffer for data to read into
    [in]lenFrame buffer length in bytes
    +
    +
    +
    Returns
    number of data bytes read or execution status
      +
    • value >= 0: number of data bytes read
    • +
    • value < 0: error occurred, value is execution status as defined with Status Error Codes
    • +
    +
    +

    The function ARM_ETH_MAC_ReadFrame reads an Ethernet frame from the Ethernet MAC receive buffer.

    +

    The Ethernet MAC receive engine must be enabled using the function ARM_ETH_MAC_Control (ARM_ETH_MAC_CONTROL_RX , 1) before a call to this function. The len of the Ethernet frame can be checked using the function ARM_ETH_MAC_GetRxFrameSize.

    +

    The frame data addressed by buf starts with MAC destination and ends with the last Payload data byte. The frame data is read from the receive buffer of the Ethernet MAC interface and the number of bytes written into the memory addressed by buf is returned. A negative return value indicates an error whereby the status code is defined with driver common return codes.

    +

    The function ARM_ETH_MAC_ReadFrame may be called with buf = NULL and len = 0 to discard or release an frame. This is useful when an incorrect frame has been received or no memory is available to hold the Ethernet frame.

    +

    Example:

    +
    size = mac->GetRxFrameSize ();
    +
    if ((size < 14) || (size > 1514)) { // frame excludes CRC
    +
    mac->ReadFrame (NULL, 0); // Frame error, release it
    +
    }
    +
    len = mac->ReadFrame (&frame->data[0], size);
    +
    if (len < 0) {
    +
    // error handling
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_ETH_MAC_GetRxFrameSize (void )
    +
    + +

    Get size of received Ethernet frame.

    +
    Returns
    number of bytes in received frame
    +

    The function ARM_ETH_MAC_GetRxFrameSize returns the size of a received Ethernet frame. This function is called before ARM_ETH_MAC_ReadFrame and supplies the value len.

    +

    The frame size includes MAC destination and ends with the last Payload data byte. Value 0 indicates that no Ethernet frame is available in the receive buffer. Values smaller than minimum size of Ethernet frame or larger than maximum size of Ethernet frame indicate an invalid frame which needs to be discarded by calling ARM_ETH_MAC_ReadFrame.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_MAC_GetRxFrameTime (ARM_ETH_MAC_TIMEtime)
    +
    + +

    Get time of received Ethernet frame.

    +
    Parameters
    + + +
    [in]timePointer to time structure for data to read into
    +
    +
    +
    Returns
    Status Error Codes
    +

    Retrieve time stamp of a received Ethernet frame. This function must be called before the frame is read using ARM_ETH_MAC_ReadFrame.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_MAC_GetTxFrameTime (ARM_ETH_MAC_TIMEtime)
    +
    + +

    Get time of transmitted Ethernet frame.

    +
    Parameters
    + + +
    [in]timePointer to time structure for data to read into
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function returns the time stamp of a transmitted Ethernet frame.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_MAC_Control (uint32_t control,
    uint32_t arg 
    )
    +
    + +

    Control Ethernet Interface.

    +
    Parameters
    + + + +
    [in]controlOperation
    [in]argArgument of operation (optional)
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_Control controls the Ethernet MAC interface and executes various operations. After initialization, the Ethernet transceiver and receiver are disabled.

    +

    The parameter control specifies an operation as defined in the table Parameter control.
    + The parameter arg provides, depending on the operation, additional information or values.

    +

    The table lists values for the parameter control.

    + + + + + + + + + + + + + + + +
    Parameter control Operation
    ARM_ETH_MAC_CONFIGURE Configure the Ethernet MAC interface; For arg values, see table Parameter arg for CONFIGURE
    ARM_ETH_MAC_CONTROL_TX Enable or disable the transmitter; arg : 0=disable; 1=enable
    ARM_ETH_MAC_CONTROL_RX Enable or disable the receiver; arg : 0=disable; 1=enable
    ARM_ETH_MAC_FLUSH Flush a buffer; arg : see table Parameter arg for FLUSH
    ARM_ETH_MAC_SLEEP Exit/Enter Sleep mode; arg : 0=exit; 1=enter and wait for Magic packet
    ARM_ETH_MAC_VLAN_FILTER Configure VLAN Filter for received frames; arg : See table Parameter arg for VLAN Filter
    +

    The table Parameter arg for CONFIGURE lists the arg values for the control ARM_ETH_MAC_CONFIGURE. The values can be ORed in the following way:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter arg CONFIGURE
    Parameter arg Bit Category Description
    ARM_ETH_MAC_SPEED_10M 0..1 Link Speed Set the link speed to 10 [Mbps]
    ARM_ETH_MAC_SPEED_100M Set the link speed to 100 [Mbps]
    ARM_ETH_MAC_SPEED_1G Set the link speed to 1 [Gbps]
    ARM_ETH_MAC_DUPLEX_HALF 2 Link Mode Set the link mode to half duplex
    ARM_ETH_MAC_DUPLEX_FULL Set the link mode to full duplex
    n.a. 3 n.a. reserved
    ARM_ETH_MAC_LOOPBACK 4 Loopback Test Mode Set the interface into a Loop-back test mode
    ARM_ETH_MAC_CHECKSUM_OFFLOAD_RX5 Receiver Checksum offloadEnable Receiver Checksum offload
    ARM_ETH_MAC_CHECKSUM_OFFLOAD_TX6 Transmitter Checksum offloadEnable Transmitter Checksum offload
    ARM_ETH_MAC_ADDRESS_BROADCAST 7 Broadcast Frame address Accept frames with Broadcast address
    ARM_ETH_MAC_ADDRESS_MULTICAST 8 Multicast Frame address Accept frames with any Multicast address
    ARM_ETH_MAC_ADDRESS_ALL 9 Any Frame address Accept frames with any address (Promiscuous Mode)
    +

    The table Parameter arg for FLUSH lists the arg values for the control ARM_ETH_MAC_FLUSH. The arg values can be ORed.

    + + + + + + + + + +
    Parameter arg for FLUSH
    Parameter arg Bit Category Description
    ARM_ETH_MAC_FLUSH_RX 1 Receive buffer Flush the Receive buffer
    ARM_ETH_MAC_FLUSH_TX 2 Transmit buffer Flush the Transmit buffer
    +

    The table Parameter arg for VLAN Filter lists the arg values for the control ARM_ETH_MAC_VLAN_FILTER. The arg values can be ORed.

    + + + + + + + + + + + + + +
    Parameter arg for VLAN Filter
    Parameter arg Bit Category Description
    value 0..15 VLAN Tag Set VLAN Tag value
    0 16 Use of VLAN Compare the complete 16-bit VLAN Tag value
    ARM_ETH_MAC_VLAN_FILTER_ID_ONLY Compare only the 12-bit VLAN Identifier
    0 0..16 Disable Disable the VLAN Filter
    +

    Example:

    +

    For a complete example, refer to Ethernet Interface - Driver Functions.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_MAC_ControlTimer (uint32_t control,
    ARM_ETH_MAC_TIMEtime 
    )
    +
    + +

    Control Precision Timer.

    +
    Parameters
    + + + +
    [in]controlOperation
    [in]timePointer to time structure
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_ControlTimer controls the timer required for PTP (Precision Time Protocol).

    +

    The parameter control receives ARM_ETH_MAC_TIMER_xxx codes to manage the timer for a PTP enabled Ethernet MAC interface.
    + The parameter time is pointer to a structure that holds time information.

    + + + + + + + + + + + + + + + +
    Mode Parameters: Timer Controls Description
    ARM_ETH_MAC_TIMER_GET_TIME Retrieve the current time and update the content ARM_ETH_MAC_TIME *time.
    ARM_ETH_MAC_TIMER_SET_TIME Set the new time using the values provided with ARM_ETH_MAC_TIME *time.
    ARM_ETH_MAC_TIMER_INC_TIME Increment the current time by using the values provided with ARM_ETH_MAC_TIME *time.
    ARM_ETH_MAC_TIMER_DEC_TIME Decrement the current time by using the values provided with ARM_ETH_MAC_TIME *time.
    ARM_ETH_MAC_TIMER_SET_ALARM Set the alarm time to the values provided with ARM_ETH_MAC_TIME *time.
    ARM_ETH_MAC_TIMER_ADJUST_CLOCK Set the clock frequency; the value in time->ns is the correction factor in fractional format q31.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_MAC_PHY_Read (uint8_t phy_addr,
    uint8_t reg_addr,
    uint16_t * data 
    )
    +
    + +

    Read Ethernet PHY Register through Management Interface.

    +
    Parameters
    + + + + +
    [in]phy_addr5-bit device address
    [in]reg_addr5-bit register address
    [out]dataPointer where the result is written to
    +
    +
    +
    Returns
    Status Error Codes
    +

    Read Ethernet PHY Register through the Management Interface. The function is passed to ARM_ETH_PHY_Initialize. The Ethernet PHY driver uses this function to read the value of PHY registers.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_MAC_PHY_Write (uint8_t phy_addr,
    uint8_t reg_addr,
    uint16_t data 
    )
    +
    + +

    Write Ethernet PHY Register through Management Interface.

    +
    Parameters
    + + + + +
    [in]phy_addr5-bit device address
    [in]reg_addr5-bit register address
    [in]data16-bit data to write
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_MAC_PHY_Write writes to a Ethernet PHY register through the Management Interface. The function is passed to ARM_ETH_PHY_Initialize. The Ethernet PHY driver uses this function to write data to PHY registers.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_ETH_MAC_SignalEvent (uint32_t event)
    +
    + +

    Callback function that signals a Ethernet Event.

    +
    Parameters
    + + +
    [in]eventevent notification mask
    +
    +
    +
    Returns
    none
    +

    The function ARM_ETH_MAC_SignalEvent is a callback function registered by the function ARM_ETH_MAC_Initialize. This function is typically called from interrupt service routines (ISR) to indicate that a frame is processed or a special event occurred.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_ETH_MAC_CAPABILITIES, which can be retrieved with the function ARM_ETH_MAC_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + + + + + +
    Parameter event Bit Description
    ARM_ETH_MAC_EVENT_RX_FRAME 0 Occurs after a frame is received. Frame can be read by calling ARM_ETH_MAC_ReadFrame.
    ARM_ETH_MAC_EVENT_TX_FRAME 1 Occurs after call to ARM_ETH_MAC_SendFrame to indicate that the frame is transmitted.
    ARM_ETH_MAC_EVENT_WAKEUP 2 Indicates that a Magic Packet is received while the driver is in Sleep mode (set by ARM_ETH_MAC_SLEEP using ARM_ETH_MAC_Control).
    ARM_ETH_MAC_EVENT_TIMER_ALARM 3 Indicates that a Timer Alarm occurred that was set with ARM_ETH_MAC_TIMER_SET_ALARM using ARM_ETH_MAC_ControlTimer.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.js b/CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.js new file mode 100644 index 0000000..e8a6bdb --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__interface__gr.js @@ -0,0 +1,67 @@ +var group__eth__mac__interface__gr = +[ + [ "Ethernet MAC Events", "group___e_t_h___m_a_c__events.html", "group___e_t_h___m_a_c__events" ], + [ "Ethernet MAC Control Codes", "group__eth__mac__control.html", "group__eth__mac__control" ], + [ "Ethernet MAC Timer Control Codes", "group__eth__mac__time__control.html", "group__eth__mac__time__control" ], + [ "Ethernet MAC Frame Transmit Flags", "group__eth__mac__frame__transmit__ctrls.html", "group__eth__mac__frame__transmit__ctrls" ], + [ "ARM_ETH_MAC_CAPABILITIES", "group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "checksum_offload_rx_ip4", "group__eth__mac__interface__gr.html#a0051111be2e389c3161da1c444746216", null ], + [ "checksum_offload_rx_ip6", "group__eth__mac__interface__gr.html#a674b2306c64901e924b3cb7bb882f32f", null ], + [ "checksum_offload_rx_udp", "group__eth__mac__interface__gr.html#a5a447f05a5fbfd35896aad9cd769511c", null ], + [ "checksum_offload_rx_tcp", "group__eth__mac__interface__gr.html#a730d6be6a7b868e0690d9548e77b7aae", null ], + [ "checksum_offload_rx_icmp", "group__eth__mac__interface__gr.html#a142179445bfdbaaaf0d451f277fb0e96", null ], + [ "checksum_offload_tx_ip4", "group__eth__mac__interface__gr.html#ac787d70407ce70e28724932fb32ef0ba", null ], + [ "checksum_offload_tx_ip6", "group__eth__mac__interface__gr.html#a8f7a154565e652d976b9e65bf3516504", null ], + [ "checksum_offload_tx_udp", "group__eth__mac__interface__gr.html#ab3f9560668a087606c40cd81b935396b", null ], + [ "checksum_offload_tx_tcp", "group__eth__mac__interface__gr.html#a6c2b80bbfe520f3e7808cf3d4aaedb45", null ], + [ "checksum_offload_tx_icmp", "group__eth__mac__interface__gr.html#a7b701bac9d66886b5c6964b20c6ca55a", null ], + [ "media_interface", "group__eth__mac__interface__gr.html#a3c5cb74e086417a01d0079f847a3fc8d", null ], + [ "mac_address", "group__eth__mac__interface__gr.html#a7fdea04bacd9c0e12792751055ef6238", null ], + [ "event_rx_frame", "group__eth__mac__interface__gr.html#a8c8f1ac2bf053a9bac98c476646a6018", null ], + [ "event_tx_frame", "group__eth__mac__interface__gr.html#a1b4af3590d59ea4f8e845b4239a4e445", null ], + [ "event_wakeup", "group__eth__mac__interface__gr.html#a7536d9b9818b20b6974a712e0449439b", null ], + [ "precision_timer", "group__eth__mac__interface__gr.html#a881a863974d32f95d7829f768ac47aa2", null ] + ] ], + [ "ARM_DRIVER_ETH_MAC", "group__eth__mac__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___m_a_c", [ + [ "GetVersion", "group__eth__mac__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__eth__mac__interface__gr.html#a9fd725bb058c584a9ced9c579561cdf1", null ], + [ "Initialize", "group__eth__mac__interface__gr.html#aa34417c70cb8b43567c59aa530866cc7", null ], + [ "Uninitialize", "group__eth__mac__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__eth__mac__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "GetMacAddress", "group__eth__mac__interface__gr.html#a02837059933cd04b04bf795a7138f218", null ], + [ "SetMacAddress", "group__eth__mac__interface__gr.html#ac640f929dc4d5bde3e4282c75b25c00d", null ], + [ "SetAddressFilter", "group__eth__mac__interface__gr.html#a45b879a6df608f582d1866daff715798", null ], + [ "SendFrame", "group__eth__mac__interface__gr.html#ac095aea379f23e30a0e51b1f3518ad37", null ], + [ "ReadFrame", "group__eth__mac__interface__gr.html#a466b724be2167ea7d9a14569062a8fa8", null ], + [ "GetRxFrameSize", "group__eth__mac__interface__gr.html#a3286cc9c7624168b162aa3ce3cbe135e", null ], + [ "GetRxFrameTime", "group__eth__mac__interface__gr.html#a8ae5a588bf4055bba3de73cfba78f7e8", null ], + [ "GetTxFrameTime", "group__eth__mac__interface__gr.html#acf081f5020f4ef1435bcff7333a70b93", null ], + [ "ControlTimer", "group__eth__mac__interface__gr.html#ab6bdbdc7fdfcc52e027201738b88b431", null ], + [ "Control", "group__eth__mac__interface__gr.html#a6e0f47a92f626a971c5197fca6545505", null ], + [ "PHY_Read", "group__eth__mac__interface__gr.html#a0f2ddb734e4242077275761400b26e35", null ], + [ "PHY_Write", "group__eth__mac__interface__gr.html#ac3efe9bdc31c3b1d7fd8eb82bbfb4c13", null ] + ] ], + [ "ARM_ETH_MAC_TIME", "group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___t_i_m_e", [ + [ "ns", "group__eth__mac__interface__gr.html#a048317f84621fb38ed0bf8c8255e26f0", null ], + [ "sec", "group__eth__mac__interface__gr.html#aaf5f5a3fa5d596a9136b4331f2b54bfc", null ] + ] ], + [ "ARM_ETH_MAC_SignalEvent_t", "group__eth__mac__interface__gr.html#gadfc95cb09c541a29a72da86963668726", null ], + [ "ARM_ETH_MAC_GetVersion", "group__eth__mac__interface__gr.html#ga86b15062c297384ad5842dd57b9d6b1d", null ], + [ "ARM_ETH_MAC_GetCapabilities", "group__eth__mac__interface__gr.html#ga2b13b230502736d8c7679b359dff20d0", null ], + [ "ARM_ETH_MAC_Initialize", "group__eth__mac__interface__gr.html#gacf42d11b171cd032f0ec1de6db2b6832", null ], + [ "ARM_ETH_MAC_Uninitialize", "group__eth__mac__interface__gr.html#gacb2c2ae06f32328775bffbdeaaabfb5d", null ], + [ "ARM_ETH_MAC_PowerControl", "group__eth__mac__interface__gr.html#ga346fef040a0e9bac5762a04a306b1be7", null ], + [ "ARM_ETH_MAC_GetMacAddress", "group__eth__mac__interface__gr.html#ga66308c1e791952047e974bd653037fae", null ], + [ "ARM_ETH_MAC_SetMacAddress", "group__eth__mac__interface__gr.html#ga7cc3d17c7312c5032202dfd9a915f24a", null ], + [ "ARM_ETH_MAC_SetAddressFilter", "group__eth__mac__interface__gr.html#ga150fe30290275a4b32756f94208124e8", null ], + [ "ARM_ETH_MAC_SendFrame", "group__eth__mac__interface__gr.html#ga5bf58defdb239ed7dc948f1da147a1c3", null ], + [ "ARM_ETH_MAC_ReadFrame", "group__eth__mac__interface__gr.html#ga4b79f57d8624bb4410ee12c73a483993", null ], + [ "ARM_ETH_MAC_GetRxFrameSize", "group__eth__mac__interface__gr.html#ga5ee86d6b0efab5329b9bc191c23a466d", null ], + [ "ARM_ETH_MAC_GetRxFrameTime", "group__eth__mac__interface__gr.html#gaa7c6865fb09754be869778142466c5e4", null ], + [ "ARM_ETH_MAC_GetTxFrameTime", "group__eth__mac__interface__gr.html#ga115b5c7e149aec2b181de760f5d83f60", null ], + [ "ARM_ETH_MAC_Control", "group__eth__mac__interface__gr.html#gac3e90c66058d20077f04ac8e8b8d0536", null ], + [ "ARM_ETH_MAC_ControlTimer", "group__eth__mac__interface__gr.html#ga85d9dc865af3702b71a514b18a588643", null ], + [ "ARM_ETH_MAC_PHY_Read", "group__eth__mac__interface__gr.html#gaded29ad58366e9222487db9944373c29", null ], + [ "ARM_ETH_MAC_PHY_Write", "group__eth__mac__interface__gr.html#ga79dd38672749aeebd28f39d9b4f813ce", null ], + [ "ARM_ETH_MAC_SignalEvent", "group__eth__mac__interface__gr.html#gae0697be4c4229601f3bfc17e2978ada6", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__time__control.html b/CMSIS/Documentation/Driver/html/group__eth__mac__time__control.html new file mode 100644 index 0000000..a7e2b57 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__time__control.html @@ -0,0 +1,249 @@ + + + + + +Ethernet MAC Timer Control Codes +CMSIS-Driver: Ethernet MAC Timer Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC Timer Control Codes
    +
    +
    + +

    Control codes for ARM_ETH_MAC_ControlTimer function. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_MAC_TIMER_GET_TIME   (0x01)
     Get current time.
     
    #define ARM_ETH_MAC_TIMER_SET_TIME   (0x02)
     Set new time.
     
    #define ARM_ETH_MAC_TIMER_INC_TIME   (0x03)
     Increment current time.
     
    #define ARM_ETH_MAC_TIMER_DEC_TIME   (0x04)
     Decrement current time.
     
    #define ARM_ETH_MAC_TIMER_SET_ALARM   (0x05)
     Set alarm time.
     
    #define ARM_ETH_MAC_TIMER_ADJUST_CLOCK   (0x06)
     Adjust clock frequency; time->ns: correction factor * 2^31.
     
    +

    Description

    +

    Control codes for ARM_ETH_MAC_ControlTimer function.

    +

    The following timer controls are used as parameter control for the ARM_ETH_MAC_ControlTimer function:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TIMER_GET_TIME   (0x01)
    +
    + +

    Get current time.

    +
    See Also
    ARM_ETH_MAC_ControlTimer
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TIMER_SET_TIME   (0x02)
    +
    + +

    Set new time.

    +
    See Also
    ARM_ETH_MAC_ControlTimer
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TIMER_INC_TIME   (0x03)
    +
    + +

    Increment current time.

    +
    See Also
    ARM_ETH_MAC_ControlTimer
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TIMER_DEC_TIME   (0x04)
    +
    + +

    Decrement current time.

    +
    See Also
    ARM_ETH_MAC_ControlTimer
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TIMER_SET_ALARM   (0x05)
    +
    + +

    Set alarm time.

    +
    See Also
    ARM_ETH_MAC_ControlTimer
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_MAC_TIMER_ADJUST_CLOCK   (0x06)
    +
    + +

    Adjust clock frequency; time->ns: correction factor * 2^31.

    +
    See Also
    ARM_ETH_MAC_ControlTimer
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__time__control.js b/CMSIS/Documentation/Driver/html/group__eth__mac__time__control.js new file mode 100644 index 0000000..03232e3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__time__control.js @@ -0,0 +1,9 @@ +var group__eth__mac__time__control = +[ + [ "ARM_ETH_MAC_TIMER_GET_TIME", "group__eth__mac__time__control.html#gad9a439b9727c032a7d851df2a7a622c2", null ], + [ "ARM_ETH_MAC_TIMER_SET_TIME", "group__eth__mac__time__control.html#ga5e867a003c06046d7944bcb5723e6049", null ], + [ "ARM_ETH_MAC_TIMER_INC_TIME", "group__eth__mac__time__control.html#ga3c57b3150717fb1a8cbbbac6a9b7ff69", null ], + [ "ARM_ETH_MAC_TIMER_DEC_TIME", "group__eth__mac__time__control.html#gaca9f1c4259d0342e9717a362de1ccf41", null ], + [ "ARM_ETH_MAC_TIMER_SET_ALARM", "group__eth__mac__time__control.html#ga04c2469ba027b020bc6b5baf3b51cf74", null ], + [ "ARM_ETH_MAC_TIMER_ADJUST_CLOCK", "group__eth__mac__time__control.html#ga85cb862eba0934e958a8552022588db7", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.html b/CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.html new file mode 100644 index 0000000..7150f38 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.html @@ -0,0 +1,160 @@ + + + + + +Ethernet MAC VLAN Filter Flag +CMSIS-Driver: Ethernet MAC VLAN Filter Flag + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet MAC VLAN Filter Flag
    +
    +
    + +

    Specify whether to compare only the VLAN Identifier. +More...

    + + + + + +

    +Macros

    #define ARM_ETH_MAC_VLAN_FILTER_ID_ONLY   (1UL << 16)
     Compare only the VLAN Identifier (12-bit)
     
    +

    Description

    +

    Specify whether to compare only the VLAN Identifier.

    +

    The function ARM_ETH_MAC_Control with control = ARM_ETH_MAC_VLAN_FILTER configures the VLAN Filter for received frames as specified with arg.

    +

    By default the complete VLAN Tag (16-bit) is compared. When ARM_ETH_MAC_VLAN_FILTER_ID_ONLY is specified then only the VLAN Identifier (12-bit) is compared.

    +

    Specifying arg=0 disables the VLAN Filter.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_MAC_VLAN_FILTER_ID_ONLY   (1UL << 16)
    +
    + +

    Compare only the VLAN Identifier (12-bit)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.js b/CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.js new file mode 100644 index 0000000..a2d8ddd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__mac__vlan__filter__ctrls.js @@ -0,0 +1,4 @@ +var group__eth__mac__vlan__filter__ctrls = +[ + [ "ARM_ETH_MAC_VLAN_FILTER_ID_ONLY", "group__eth__mac__vlan__filter__ctrls.html#ga2511c9e4c22a2b351ce2e454be1c9427", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.html b/CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.html new file mode 100644 index 0000000..c2e39fa --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.html @@ -0,0 +1,703 @@ + + + + + +Ethernet PHY Interface +CMSIS-Driver: Ethernet PHY Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet PHY Interface
    +
    +
    + +

    Driver API for Ethernet PHY Peripheral (Driver_ETH_PHY.h) +More...

    + + + + + +

    +Content

     Ethernet PHY Mode
     Specify operation modes of the Ethernet PHY interface.
     
    + + + + +

    +Data Structures

    struct  ARM_DRIVER_ETH_PHY
     Access structure of the Ethernet PHY Driver. More...
     
    + + + + + + + +

    +Typedefs

    typedef int32_t(* ARM_ETH_PHY_Read_t )(uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
     Pointer to ARM_ETH_MAC_PHY_Read : Read Ethernet PHY Register.
     
    typedef int32_t(* ARM_ETH_PHY_Write_t )(uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
     Pointer to ARM_ETH_MAC_PHY_Write : Write Ethernet PHY Register.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_ETH_PHY_GetVersion (void)
     Get driver version.
     
    int32_t ARM_ETH_PHY_Initialize (ARM_ETH_PHY_Read_t fn_read, ARM_ETH_PHY_Write_t fn_write)
     Initialize Ethernet PHY Device.
     
    int32_t ARM_ETH_PHY_Uninitialize (void)
     De-initialize Ethernet PHY Device.
     
    int32_t ARM_ETH_PHY_PowerControl (ARM_POWER_STATE state)
     Control Ethernet PHY Device Power.
     
    int32_t ARM_ETH_PHY_SetInterface (uint32_t interface)
     Set Ethernet Media Interface.
     
    int32_t ARM_ETH_PHY_SetMode (uint32_t mode)
     Set Ethernet PHY Device Operation mode.
     
    ARM_ETH_LINK_STATE ARM_ETH_PHY_GetLinkState (void)
     Get Ethernet PHY Device Link state.
     
    ARM_ETH_LINK_INFO ARM_ETH_PHY_GetLinkInfo (void)
     Get Ethernet PHY Device Link information.
     
    +

    Description

    +

    Driver API for Ethernet PHY Peripheral (Driver_ETH_PHY.h)

    +

    The following section describes the Ethernet PHY Interface as defined in the Driver_ETH_PHY.h header file.

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_ETH_PHY
    +
    +

    Access structure of the Ethernet PHY Driver.

    +

    The functions of the Ethernet PHY are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of an Ethernet PHY provides such an access struct. The instance is identified by a postfix number in the symbol name of the access struct, for example:

    +
      +
    • Driver_ETH_PHY0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_ETH_PHY1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows connecting the middleware to a specific driver instance Driver_ETH_PHYn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_ETH_PHY_GetVersion : Get driver version.
     
    int32_t(* Initialize )(ARM_ETH_PHY_Read_t fn_read, ARM_ETH_PHY_Write_t fn_write)
     Pointer to ARM_ETH_PHY_Initialize : Initialize PHY Device.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_ETH_PHY_Uninitialize : De-initialize PHY Device.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_ETH_PHY_PowerControl : Control PHY Device Power.
     
    int32_t(* SetInterface )(uint32_t interface)
     Pointer to ARM_ETH_PHY_SetInterface : Set Ethernet Media Interface.
     
    int32_t(* SetMode )(uint32_t mode)
     Pointer to ARM_ETH_PHY_SetMode : Set Ethernet PHY Device Operation mode.
     
    ARM_ETH_LINK_STATE(* GetLinkState )(void)
     Pointer to ARM_ETH_PHY_GetLinkState : Get Ethernet PHY Device Link state.
     
    ARM_ETH_LINK_INFO(* GetLinkInfo )(void)
     Pointer to ARM_ETH_PHY_GetLinkInfo : Get Ethernet PHY Device Link information.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_ETH_PHY_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_ETH_PHY_Read_t fn_read, ARM_ETH_PHY_Write_t fn_write)
    +
    + +

    Pointer to ARM_ETH_PHY_Initialize : Initialize PHY Device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_ETH_PHY_Uninitialize : De-initialize PHY Device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_ETH_PHY_PowerControl : Control PHY Device Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetInterface)(uint32_t interface)
    +
    + +

    Pointer to ARM_ETH_PHY_SetInterface : Set Ethernet Media Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetMode)(uint32_t mode)
    +
    + +

    Pointer to ARM_ETH_PHY_SetMode : Set Ethernet PHY Device Operation mode.

    + +
    +
    + +
    +
    + + + + +
    ARM_ETH_LINK_STATE(* GetLinkState)(void)
    +
    + +

    Pointer to ARM_ETH_PHY_GetLinkState : Get Ethernet PHY Device Link state.

    + +
    +
    + +
    +
    + + + + +
    ARM_ETH_LINK_INFO(* GetLinkInfo)(void)
    +
    + +

    Pointer to ARM_ETH_PHY_GetLinkInfo : Get Ethernet PHY Device Link information.

    + +
    +
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_ETH_PHY_Read_t
    +
    + +

    Pointer to ARM_ETH_MAC_PHY_Read : Read Ethernet PHY Register.

    +

    Provides the typedef for the register read function ARM_ETH_MAC_PHY_Read.

    +

    Parameter for:

    + + +
    +
    + +
    +
    + + + + +
    ARM_ETH_PHY_Write_t
    +
    + +

    Pointer to ARM_ETH_MAC_PHY_Write : Write Ethernet PHY Register.

    +

    Provides the typedef for the register write function ARM_ETH_MAC_PHY_Write.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_ETH_PHY_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_ETH_PHY_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_ETH_PHY Driver_ETH_PHY0;
    + +
    +
    void setup_ethernet_phy (void) {
    + +
    +
    drv_info = &Driver_ETH_PHY0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_ETH_PHY_Initialize (ARM_ETH_PHY_Read_t fn_read,
    ARM_ETH_PHY_Write_t fn_write 
    )
    +
    + +

    Initialize Ethernet PHY Device.

    +
    Parameters
    + + + +
    [in]fn_readPointer to ARM_ETH_MAC_PHY_Read
    [in]fn_writePointer to ARM_ETH_MAC_PHY_Write
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_PHY_Initialize initializes the Ethernet PHY interface. It is called when the middleware component starts operation.

    +

    The ARM_ETH_PHY_Initialize function performs the following operations:

    + +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_PHY_Uninitialize (void )
    +
    + +

    De-initialize Ethernet PHY Device.

    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_PHY_Uninitialize de-initializes the resources of Ethernet PHY interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_PHY_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control Ethernet PHY Device Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_PHY_PowerControl operates the power modes of the Ethernet PHY interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_PHY_SetInterface (uint32_t interface)
    +
    + +

    Set Ethernet Media Interface.

    +
    Parameters
    + + +
    [in]interfaceMedia Interface type
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_PHY_SetInterface specifies the Media Interface Types that links the Ethernet MAC and Ethernet PHY. After initialization of the PHY interface, you can set the media type. The function ARM_ETH_MAC_GetCapabilities retrieves the media interface type encoded in the data field media_interface of the structure ARM_ETH_MAC_CAPABILITIES.

    +

    The parameter interface can have the following values:

    + + + + + + + + + +
    Parameter interface Media Type
    ARM_ETH_INTERFACE_MII Media Independent Interface (MII)
    ARM_ETH_INTERFACE_RMII Reduced Media Independent Interface (RMII)
    ARM_ETH_INTERFACE_SMII Serial Media Independent Interface (SMII);
    +
    Note
    Some interface values may be unsupported by a driver implementation. For example ARM_ETH_INTERFACE_SMII may return ARM_DRIVER_ERROR_UNSUPPORTED.
    +

    Example:

    +
    static ARM_ETH_MAC_CAPABILITIES capabilities;
    +
    static ARM_DRIVER_ETH_MAC *mac;
    +
    static ARM_DRIVER_ETH_PHY *phy;
    +
    +
    mac = &Driver_ETH_MAC0;
    +
    phy = &Driver_ETH_PHY0;
    +
    +
    // Initialize Media Access Controller
    +
    capabilities = mac->GetCapabilities ();
    +
    ...
    +
    status = phy->SetInterface (capabilities.media_interface);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    + +
    if (status != ARM_DRIVER_OK) ... // error handling
    +
    ...
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_ETH_PHY_SetMode (uint32_t mode)
    +
    + +

    Set Ethernet PHY Device Operation mode.

    +
    Parameters
    + + +
    [in]modeOperation Mode
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_ETH_PHY_SetMode sets the operation mode parameters for the Ethernet PHY.

    +

    The table below lists the possible values for the parameter mode. Values from different categories can be ORed as shown in this example code:

    +


    +

    + + + + + + + + + + + + + + + + + + + +
    Parameter mode bit Category Description
    ARM_ETH_PHY_SPEED_10M 0..1 Link Speed Set the link speed to 10 [Mbps]
    ARM_ETH_PHY_SPEED_100M Set the link speed to 100 [Mbps]
    ARM_ETH_PHY_SPEED_1G Set the link speed to 1 [Gbps]
    ARM_ETH_PHY_DUPLEX_HALF 2 Link Mode Set the link mode to half duplex
    ARM_ETH_PHY_DUPLEX_FULL Set the link mode to full duplex
    ARM_ETH_PHY_AUTO_NEGOTIATE 3 Autonegotiation Set the interface to Auto Negotiation mode of transmission parameters
    ARM_ETH_PHY_LOOPBACK 4 Loopback Set the interface into a Loop-back test mode
    ARM_ETH_PHY_ISOLATE 5 Isolation Set to indicate electrical isolation of PHY interface from MII/RMII interface
    +
    Note
    Some settings may be also taken from configuration pins (example ARM_ETH_PHY_ISOLATE). Check the effect of mode settings in the actual driver implementation.
    +
    +Some mode values may be unsupported by a driver implementation. For example ARM_ETH_PHY_SPEED_1G may return ARM_DRIVER_ERROR_UNSUPPORTED.
    +

    Example:

    +
    static ARM_ETH_MAC_CAPABILITIES capabilities;
    +
    static ARM_DRIVER_ETH_MAC *mac;
    +
    static ARM_DRIVER_ETH_PHY *phy;
    +
    +
    mac = &Driver_ETH_MAC0;
    +
    phy = &Driver_ETH_PHY0;
    +
    +
    // Initialize Media Access Controller
    +
    capabilities = mac->GetCapabilities ();
    +
    ...
    +
    status = phy->SetInterface (capabilities.media_interface);
    +
    if (status != ARM_DRIVER_OK) ... // error handling
    + +
    if (status != ARM_DRIVER_OK) ... // error handling
    +
    ...
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_ETH_LINK_STATE ARM_ETH_PHY_GetLinkState (void )
    +
    + +

    Get Ethernet PHY Device Link state.

    +
    Returns
    current link status ARM_ETH_LINK_STATE
    +

    The function ARM_ETH_PHY_GetLinkState retrieves the connection status of the physical Ethernet link.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    ARM_ETH_LINK_INFO ARM_ETH_PHY_GetLinkInfo (void )
    +
    + +

    Get Ethernet PHY Device Link information.

    +
    Returns
    current link parameters ARM_ETH_LINK_INFO
    +

    The function ARM_ETH_PHY_GetLinkInfo retrieves information about the current established communication mode (half/full duplex) and communication speed. Information is only valid when link is up (see ARM_ETH_PHY_GetLinkState).

    +

    Example:

    + + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.js b/CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.js new file mode 100644 index 0000000..36a1648 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__phy__interface__gr.js @@ -0,0 +1,24 @@ +var group__eth__phy__interface__gr = +[ + [ "Ethernet PHY Mode", "group__eth__phy__mode__ctrls.html", "group__eth__phy__mode__ctrls" ], + [ "ARM_DRIVER_ETH_PHY", "group__eth__phy__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___p_h_y", [ + [ "GetVersion", "group__eth__phy__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "Initialize", "group__eth__phy__interface__gr.html#a9f9e7173bf8fed4d774fa48da53739ba", null ], + [ "Uninitialize", "group__eth__phy__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__eth__phy__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "SetInterface", "group__eth__phy__interface__gr.html#a7dfc7cf346c80e7fdb2fe4cea2c61161", null ], + [ "SetMode", "group__eth__phy__interface__gr.html#ae6686344f4d6afa0881d1e545c898a3d", null ], + [ "GetLinkState", "group__eth__phy__interface__gr.html#a0e25b2f267edc874f1bd785175fcf08a", null ], + [ "GetLinkInfo", "group__eth__phy__interface__gr.html#ac162bfaf93512fa0966bfbb923c45463", null ] + ] ], + [ "ARM_ETH_PHY_Read_t", "group__eth__phy__interface__gr.html#ga987d5dd36f179192721c03df37d93e87", null ], + [ "ARM_ETH_PHY_Write_t", "group__eth__phy__interface__gr.html#gaf690fde16281b25f2ffa07f9c4e8e240", null ], + [ "ARM_ETH_PHY_GetVersion", "group__eth__phy__interface__gr.html#ga6850d33d699d9deee4e983a2c99e9734", null ], + [ "ARM_ETH_PHY_Initialize", "group__eth__phy__interface__gr.html#gacf2332a7fa2d84694b8e5f0838135589", null ], + [ "ARM_ETH_PHY_Uninitialize", "group__eth__phy__interface__gr.html#ga26ea7e1e9825b959284241ebff6eea3f", null ], + [ "ARM_ETH_PHY_PowerControl", "group__eth__phy__interface__gr.html#gaba0f92561754dad8f8f03feb1cf2855e", null ], + [ "ARM_ETH_PHY_SetInterface", "group__eth__phy__interface__gr.html#gaedd8b5650a1259d572a1f303d3e2c01c", null ], + [ "ARM_ETH_PHY_SetMode", "group__eth__phy__interface__gr.html#ga9aa688c951f01ed9ca7c88cf51be8a09", null ], + [ "ARM_ETH_PHY_GetLinkState", "group__eth__phy__interface__gr.html#ga4085cd24ebe33b78d51a3c003da4a5ba", null ], + [ "ARM_ETH_PHY_GetLinkInfo", "group__eth__phy__interface__gr.html#ga8c79dcd7a12656403f3befab3c8605a2", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.html b/CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.html new file mode 100644 index 0000000..ebb257f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.html @@ -0,0 +1,284 @@ + + + + + +Ethernet PHY Mode +CMSIS-Driver: Ethernet PHY Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Ethernet PHY Mode
    +
    +
    + +

    Specify operation modes of the Ethernet PHY interface. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_ETH_PHY_SPEED_10M   (ARM_ETH_SPEED_10M << ARM_ETH_PHY_SPEED_Pos)
     10 Mbps link speed
     
    #define ARM_ETH_PHY_SPEED_100M   (ARM_ETH_SPEED_100M << ARM_ETH_PHY_SPEED_Pos)
     100 Mbps link speed
     
    #define ARM_ETH_PHY_SPEED_1G   (ARM_ETH_SPEED_1G << ARM_ETH_PHY_SPEED_Pos)
     1 Gpbs link speed
     
    #define ARM_ETH_PHY_DUPLEX_HALF   (ARM_ETH_DUPLEX_HALF << ARM_ETH_PHY_DUPLEX_Pos)
     Half duplex link.
     
    #define ARM_ETH_PHY_DUPLEX_FULL   (ARM_ETH_DUPLEX_FULL << ARM_ETH_PHY_DUPLEX_Pos)
     Full duplex link.
     
    #define ARM_ETH_PHY_AUTO_NEGOTIATE   (1UL << 3)
     Auto Negotiation mode.
     
    #define ARM_ETH_PHY_LOOPBACK   (1UL << 4)
     Loop-back test mode.
     
    #define ARM_ETH_PHY_ISOLATE   (1UL << 5)
     Isolate PHY from MII/RMII interface.
     
    +

    Description

    +

    Specify operation modes of the Ethernet PHY interface.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_ETH_PHY_SPEED_10M   (ARM_ETH_SPEED_10M << ARM_ETH_PHY_SPEED_Pos)
    +
    + +

    10 Mbps link speed

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_SPEED_100M   (ARM_ETH_SPEED_100M << ARM_ETH_PHY_SPEED_Pos)
    +
    + +

    100 Mbps link speed

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_SPEED_1G   (ARM_ETH_SPEED_1G << ARM_ETH_PHY_SPEED_Pos)
    +
    + +

    1 Gpbs link speed

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_DUPLEX_HALF   (ARM_ETH_DUPLEX_HALF << ARM_ETH_PHY_DUPLEX_Pos)
    +
    + +

    Half duplex link.

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_DUPLEX_FULL   (ARM_ETH_DUPLEX_FULL << ARM_ETH_PHY_DUPLEX_Pos)
    +
    + +

    Full duplex link.

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_AUTO_NEGOTIATE   (1UL << 3)
    +
    + +

    Auto Negotiation mode.

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_LOOPBACK   (1UL << 4)
    +
    + +

    Loop-back test mode.

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    + +
    +
    + + + + +
    #define ARM_ETH_PHY_ISOLATE   (1UL << 5)
    +
    + +

    Isolate PHY from MII/RMII interface.

    +
    See Also
    ARM_ETH_PHY_SetMode
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.js b/CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.js new file mode 100644 index 0000000..35cd9e6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__eth__phy__mode__ctrls.js @@ -0,0 +1,11 @@ +var group__eth__phy__mode__ctrls = +[ + [ "ARM_ETH_PHY_SPEED_10M", "group__eth__phy__mode__ctrls.html#gabc7acc4ebe828c3d0825400e14ad20f0", null ], + [ "ARM_ETH_PHY_SPEED_100M", "group__eth__phy__mode__ctrls.html#gad1e8b2c8c210fa36949db9a34a993657", null ], + [ "ARM_ETH_PHY_SPEED_1G", "group__eth__phy__mode__ctrls.html#ga046605398ceae99a176e6f82432ae710", null ], + [ "ARM_ETH_PHY_DUPLEX_HALF", "group__eth__phy__mode__ctrls.html#gace797b3cd143be22f47c3ef61b20e14d", null ], + [ "ARM_ETH_PHY_DUPLEX_FULL", "group__eth__phy__mode__ctrls.html#ga5d06a94867c89cd311b6e279669321e3", null ], + [ "ARM_ETH_PHY_AUTO_NEGOTIATE", "group__eth__phy__mode__ctrls.html#ga6a8c54f8fed3e5f68bd04eb715d10ab9", null ], + [ "ARM_ETH_PHY_LOOPBACK", "group__eth__phy__mode__ctrls.html#ga5f7e46cda8ab3c774fe7ce0a8a1ba3ec", null ], + [ "ARM_ETH_PHY_ISOLATE", "group__eth__phy__mode__ctrls.html#ga8d68719e07c7af449b57c5df802376c8", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__execution__status.html b/CMSIS/Documentation/Driver/html/group__execution__status.html new file mode 100644 index 0000000..8e4383d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__execution__status.html @@ -0,0 +1,271 @@ + + + + + +Status Error Codes +CMSIS-Driver: Status Error Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Status Error Codes
    +
    +
    + +

    Negative return values of functions indicate errors occurred during execution. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_DRIVER_OK   0
     Operation succeeded.
     
    #define ARM_DRIVER_ERROR   -1
     Unspecified error.
     
    #define ARM_DRIVER_ERROR_BUSY   -2
     Driver is busy.
     
    #define ARM_DRIVER_ERROR_TIMEOUT   -3
     Timeout occurred.
     
    #define ARM_DRIVER_ERROR_UNSUPPORTED   -4
     Operation not supported.
     
    #define ARM_DRIVER_ERROR_PARAMETER   -5
     Parameter error.
     
    #define ARM_DRIVER_ERROR_SPECIFIC   -6
     Start of driver specific errors.
     
    +

    Description

    +

    Negative return values of functions indicate errors occurred during execution.

    +

    Most functions return a status information using negative return values. The following list provides the status error codes that are common in all drivers. The drivers may return also status error codes that are specific to the peripheral.

    +
    See Also
    Status Error Codes for SPI driver; Status Error Codes for USART driver; Status Error Codes for NAND driver;
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_DRIVER_OK   0
    +
    + +

    Operation succeeded.

    +

    The value 0 or positive values indicate that the function execution is completed without any errors. Note that positive values are used to provide for example the number of data items.

    + +

    Referenced by ARM_CAN_Control(), ARM_CAN_GetClock(), ARM_CAN_GetStatus(), ARM_CAN_Initialize(), ARM_CAN_MessageRead(), ARM_CAN_MessageSend(), ARM_CAN_ObjectConfigure(), ARM_CAN_ObjectSetFilter(), ARM_CAN_PowerControl(), ARM_CAN_SetBitrate(), ARM_CAN_SetMode(), ARM_CAN_Uninitialize(), ARM_I2C_Control(), ARM_I2C_Initialize(), ARM_I2C_MasterReceive(), ARM_I2C_MasterTransmit(), ARM_I2C_PowerControl(), ARM_I2C_SlaveReceive(), ARM_I2C_SlaveTransmit(), ARM_I2C_Uninitialize(), ARM_MCI_AbortTransfer(), ARM_MCI_CardPower(), ARM_MCI_Control(), ARM_MCI_GetStatus(), ARM_MCI_Initialize(), ARM_MCI_PowerControl(), ARM_MCI_SendCommand(), ARM_MCI_SetupTransfer(), ARM_MCI_Uninitialize(), ARM_SAI_Control(), ARM_SAI_Initialize(), ARM_SAI_PowerControl(), ARM_SAI_Receive(), ARM_SAI_Send(), ARM_SAI_Uninitialize(), ARM_SPI_Control(), ARM_SPI_Initialize(), ARM_SPI_PowerControl(), ARM_SPI_Receive(), ARM_SPI_Send(), ARM_SPI_Transfer(), ARM_SPI_Uninitialize(), ARM_USART_Control(), ARM_USART_Initialize(), ARM_USART_PowerControl(), ARM_USART_Receive(), ARM_USART_Send(), ARM_USART_SetModemControl(), ARM_USART_Transfer(), ARM_USART_Uninitialize(), ARM_USBD_DeviceConnect(), ARM_USBD_DeviceDisconnect(), ARM_USBD_DeviceGetState(), ARM_USBD_DeviceRemoteWakeup(), ARM_USBD_DeviceSetAddress(), ARM_USBD_EndpointConfigure(), ARM_USBD_EndpointStall(), ARM_USBD_EndpointTransfer(), ARM_USBD_EndpointTransferAbort(), ARM_USBD_EndpointUnconfigure(), ARM_USBD_Initialize(), ARM_USBD_PowerControl(), ARM_USBD_ReadSetupPacket(), ARM_USBD_Uninitialize(), ARM_USBH_HCI_Initialize(), ARM_USBH_HCI_PortVbusOnOff(), ARM_USBH_HCI_PowerControl(), ARM_USBH_HCI_Uninitialize(), ARM_USBH_Initialize(), ARM_USBH_PipeDelete(), ARM_USBH_PipeModify(), ARM_USBH_PipeReset(), ARM_USBH_PipeTransfer(), ARM_USBH_PipeTransferAbort(), ARM_USBH_PortReset(), ARM_USBH_PortResume(), ARM_USBH_PortSuspend(), ARM_USBH_PortVbusOnOff(), ARM_USBH_PowerControl(), and ARM_USBH_Uninitialize().

    + +
    +
    + +
    +
    + + + + +
    #define ARM_DRIVER_ERROR   -1
    +
    + +

    Unspecified error.

    +

    The function did not execute correct and an unspecified error occurred during execution.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_DRIVER_ERROR_BUSY   -2
    +
    + +

    Driver is busy.

    +

    The function cannot be executed because the driver is busy with the execution of a conflicting operation.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_DRIVER_ERROR_TIMEOUT   -3
    +
    + +

    Timeout occurred.

    +

    The function execution is terminated because a peripheral did not react within a specific timeout limit.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_DRIVER_ERROR_UNSUPPORTED   -4
    +
    + +

    Operation not supported.

    +

    The function requested an operation (for example by using an illegal control code) that is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_DRIVER_ERROR_PARAMETER   -5
    +
    + +

    Parameter error.

    +

    A function parameter is incorrect.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_DRIVER_ERROR_SPECIFIC   -6
    +
    + +

    Start of driver specific errors.

    +

    This value indicates the start of status error codes that are specific to the peripheral driver.

    +
    See Also
    Status Error Codes for SPI driver; Status Error Codes for USART driver;
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__execution__status.js b/CMSIS/Documentation/Driver/html/group__execution__status.js new file mode 100644 index 0000000..7a73ebd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__execution__status.js @@ -0,0 +1,10 @@ +var group__execution__status = +[ + [ "ARM_DRIVER_OK", "group__execution__status.html#ga85752c5de59e8adeb001e35ff5be6be7", null ], + [ "ARM_DRIVER_ERROR", "group__execution__status.html#ga2f627075447749bb368d3b768be107cb", null ], + [ "ARM_DRIVER_ERROR_BUSY", "group__execution__status.html#ga13c1123319c7b9a4735d63447f35116b", null ], + [ "ARM_DRIVER_ERROR_TIMEOUT", "group__execution__status.html#ga0bac892205bb2d586b822e8b178ab310", null ], + [ "ARM_DRIVER_ERROR_UNSUPPORTED", "group__execution__status.html#ga2efa59e480d82697795439220e6884e4", null ], + [ "ARM_DRIVER_ERROR_PARAMETER", "group__execution__status.html#gac781d4b70ce17c4c2efe2db045be751c", null ], + [ "ARM_DRIVER_ERROR_SPECIFIC", "group__execution__status.html#ga5a2b5d68f6649598d099b88c0eaee3e5", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__flash__interface__gr.html b/CMSIS/Documentation/Driver/html/group__flash__interface__gr.html new file mode 100644 index 0000000..597d94b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__flash__interface__gr.html @@ -0,0 +1,1018 @@ + + + + + +Flash Interface +CMSIS-Driver: Flash Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Flash Interface
    +
    +
    + +

    Driver API for Flash Device Interface (Driver_Flash.h) +More...

    + + + + + +

    +Content

     Flash Events
     The Flash driver generates call back events that are notified via the function ARM_Flash_SignalEvent.
     
    + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_FLASH_SECTOR
     Flash Sector information. More...
     
    struct  ARM_FLASH_INFO
     Flash information. More...
     
    struct  ARM_DRIVER_FLASH
     Access structure of the Flash Driver. More...
     
    struct  ARM_FLASH_CAPABILITIES
     Flash Driver Capabilities. More...
     
    struct  ARM_FLASH_STATUS
     Flash Status. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_Flash_SignalEvent_t )(uint32_t event)
     Pointer to ARM_Flash_SignalEvent : Signal Flash Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_Flash_GetVersion (void)
     Get driver version.
     
    ARM_FLASH_CAPABILITIES ARM_Flash_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_Flash_Initialize (ARM_Flash_SignalEvent_t cb_event)
     Initialize the Flash Interface.
     
    int32_t ARM_Flash_Uninitialize (void)
     De-initialize the Flash Interface.
     
    int32_t ARM_Flash_PowerControl (ARM_POWER_STATE state)
     Control the Flash interface power.
     
    int32_t ARM_Flash_ReadData (uint32_t addr, void *data, uint32_t cnt)
     Read data from Flash.
     
    int32_t ARM_Flash_ProgramData (uint32_t addr, const void *data, uint32_t cnt)
     Program data to Flash.
     
    int32_t ARM_Flash_EraseSector (uint32_t addr)
     Erase Flash Sector.
     
    int32_t ARM_Flash_EraseChip (void)
     Erase complete Flash. Optional function for faster full chip erase.
     
    ARM_FLASH_STATUS ARM_Flash_GetStatus (void)
     Get Flash status.
     
    ARM_FLASH_INFOARM_Flash_GetInfo (void)
     Get Flash information.
     
    void ARM_Flash_SignalEvent (uint32_t event)
     Signal Flash event.
     
    +

    Description

    +

    Driver API for Flash Device Interface (Driver_Flash.h)

    +

    Flash devices based on NOR memory cells are the preferred technology for embedded applications requiring a discrete non-volatile memory device. The low read latency characteristic of these Flash devices allow a direct code execution (XIP) and data storage in a single memory product.

    +

    Flash API

    +

    The Flash API provides a generic API suitable for Flashes with NOR memory cells independent from the actual interface to the MCU (memory bus, SPI, ...). SPI flashes are typically not named NOR flashes but have usually same flash cell properties.

    +

    The following header files define the Application Programming Interface (API) for the Flash interface:

    +
      +
    • Driver_Flash.h : Driver API for Flash Device Interface
    • +
    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_FLASH_SECTOR
    +
    +

    Flash Sector information.

    +

    Specifies sector start and end address.

    +

    Element of:

    + +
    + + + + + + + +
    Data Fields
    +uint32_t +start +Sector Start address.
    +uint32_t +end +Sector End address (start+size-1)
    + +
    +
    + +
    +
    + + + + +
    struct ARM_FLASH_INFO
    +
    +

    Flash information.

    +

    Stores the characteristics of a Flash device. This includes sector layout, programming size and a default value for erased memory. This information can be obtained from the Flash device datasheet and is used by the middleware in order to properly interact with the Flash device.

    +

    Sector layout is described by specifying the sector_info which points to an array of sector information (start and end address) and by specifying the sector_count which defines the number of sectors. The element sector_size is not used in this case and needs to be 0. Flash sectors need not to be aligned continuously. Gaps are allowed in the device memory space in order to reserve sectors for other usage (for example application code).

    +

    When the device has uniform sector size than the sector layout can be described by specifying the sector_size which defines the size of a single sector and by specifying the sector_count which defines the number of sectors. The element sector_info is not used in this case and needs to be NULL.

    +

    The smallest programmable unit within a sector is specified by the program_unit. It defines the granularity for programming data.

    +

    Optimal programming page size is specified by the page_size and defines the amount of data that should be programmed in one step to achieve maximum programming speed.

    +

    Contents of erased memory is specified by the erased_value and is typically 0xFF. This value can be used before erasing a sector to check if the sector is blank and erase can be skipped.

    +
    + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +ARM_FLASH_SECTOR * +sector_info +Sector layout information (NULL=Uniform sectors)
    +uint32_t +sector_count +Number of sectors.
    +uint32_t +sector_size +Uniform sector size in bytes (0=sector_info used)
    +uint32_t +page_size +Optimal programming page size in bytes.
    +uint32_t +program_unit +Smallest programmable unit in bytes.
    +uint8_t +erased_value +Contents of erased memory (usually 0xFF)
    + +
    +
    + +
    +
    + + + + +
    struct ARM_DRIVER_FLASH
    +
    +

    Access structure of the Flash Driver.

    +

    The functions of the Flash driver are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of a Flash interface provides such an access structure. The instance is identified by a postfix number in the symbol name of the access structure, for example:

    +
      +
    • Driver_Flash0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_Flash1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A middleware configuration setting allows connecting the middleware to a specific driver instance Driver_Flashn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_Flash_GetVersion : Get driver version.
     
    ARM_FLASH_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_Flash_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_Flash_SignalEvent_t cb_event)
     Pointer to ARM_Flash_Initialize : Initialize Flash Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_Flash_Uninitialize : De-initialize Flash Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_Flash_PowerControl : Control Flash Interface Power.
     
    int32_t(* ReadData )(uint32_t addr, void *data, uint32_t cnt)
     Pointer to ARM_Flash_ReadData : Read data from Flash.
     
    int32_t(* ProgramData )(uint32_t addr, const void *data, uint32_t cnt)
     Pointer to ARM_Flash_ProgramData : Program data to Flash.
     
    int32_t(* EraseSector )(uint32_t addr)
     Pointer to ARM_Flash_EraseSector : Erase Flash Sector.
     
    int32_t(* EraseChip )(void)
     Pointer to ARM_Flash_EraseChip : Erase complete Flash.
     
    ARM_FLASH_STATUS(* GetStatus )(void)
     Pointer to ARM_Flash_GetStatus : Get Flash status.
     
    ARM_FLASH_INFO *(* GetInfo )(void)
     Pointer to ARM_Flash_GetInfo : Get Flash information.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_Flash_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_FLASH_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_Flash_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_Flash_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_Flash_Initialize : Initialize Flash Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_Flash_Uninitialize : De-initialize Flash Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_Flash_PowerControl : Control Flash Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ReadData)(uint32_t addr, void *data, uint32_t cnt)
    +
    + +

    Pointer to ARM_Flash_ReadData : Read data from Flash.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ProgramData)(uint32_t addr, const void *data, uint32_t cnt)
    +
    + +

    Pointer to ARM_Flash_ProgramData : Program data to Flash.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* EraseSector)(uint32_t addr)
    +
    + +

    Pointer to ARM_Flash_EraseSector : Erase Flash Sector.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* EraseChip)(void)
    +
    + +

    Pointer to ARM_Flash_EraseChip : Erase complete Flash.

    + +
    +
    + +
    +
    + + + + +
    ARM_FLASH_STATUS(* GetStatus)(void)
    +
    + +

    Pointer to ARM_Flash_GetStatus : Get Flash status.

    + +
    +
    + +
    +
    + + + + +
    ARM_FLASH_INFO*(* GetInfo)(void)
    +
    + +

    Pointer to ARM_Flash_GetInfo : Get Flash information.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_FLASH_CAPABILITIES
    +
    +

    Flash Driver Capabilities.

    +

    A Flash driver can be implemented with different capabilities. The data fields of this struct encode the capabilities implemented by this driver.

    +

    The element event_ready indicates that the driver is able to generate the ARM_FLASH_EVENT_READY event. In case that this event is not available it is possible to poll the driver status by calling the ARM_Flash_GetStatus and check the busy flag.

    +

    The element data_width specifies the data access size and also defines the data type (uint8_t, uint16_t or uint32_t) for the data parameter in ARM_Flash_ReadData and ARM_Flash_ProgramData functions.

    +

    The element erase_chip specifies that the ARM_Flash_EraseChip function is supported. Typically full chip erase is much faster than erasing the whole device sector per sector.

    +

    Returned by:

    + +
    + + + + + + + + + + +
    Data Fields
    +uint32_t +event_ready: 1 +Signal Flash Ready event.
    +uint32_t +data_width: 2 +Data width: 0=8-bit, 1=16-bit, 2=32-bit.
    +uint32_t +erase_chip: 1 +Supports EraseChip operation.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_FLASH_STATUS
    +
    +

    Flash Status.

    +

    Structure with information about the status of the Flash.

    +

    The flag busy indicates that the driver is busy executing read/program/erase operation.

    +

    The flag error flag is cleared on start of read/program/erase operation and is set at the end of the current operation in case of error.

    +

    Returned by:

    + +
    + + + + + + + +
    Data Fields
    +uint32_t +busy: 1 +Flash busy flag.
    +uint32_t +error: 1 +Read/Program/Erase error flag (cleared on start of next operation)
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_Flash_SignalEvent_t
    +
    + +

    Pointer to ARM_Flash_SignalEvent : Signal Flash Event.

    +

    Provides the typedef for the callback function ARM_Flash_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_Flash_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_Flash_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_FLASH Driver_Flash0;
    +
    ARM_DRIVER_FLASH *drv_info;
    +
    +
    void read_version (void) {
    + +
    +
    drv_info = &Driver_Flash0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_FLASH_CAPABILITIES ARM_Flash_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_FLASH_CAPABILITIES
    +

    The function ARM_Flash_GetCapabilities returns information about capabilities in this driver implementation. The data fields of the struct ARM_FLASH_CAPABILITIES encode various capabilities, for example if a hardware is able to create signal events using the ARM_Flash_SignalEvent callback function.

    +

    Example:

    +
    extern ARM_DRIVER_FLASH Driver_Flash0;
    +
    ARM_DRIVER_FLASH *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_FLASH_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_Flash0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_Flash_Initialize (ARM_Flash_SignalEvent_t cb_event)
    +
    + +

    Initialize the Flash Interface.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_Flash_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_Flash_Initialize initializes the Flash interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    +
      +
    • Initializes the resources needed for the Flash interface.
    • +
    • Registers the ARM_Flash_SignalEvent callback function.
    • +
    +

    The parameter cb_event is a pointer to the ARM_Flash_SignalEvent callback function; use a NULL pointer when no callback signals are required.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_Flash_Uninitialize (void )
    +
    + +

    De-initialize the Flash Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_Flash_Uninitialize de-initializes the resources of Flash interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_Flash_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control the Flash interface power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_Flash_PowerControl operates the power modes of the Flash interface.

    +

    The parameter state can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode, then the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_Flash_ReadData (uint32_t addr,
    void * data,
    uint32_t cnt 
    )
    +
    + +

    Read data from Flash.

    +
    Parameters
    + + + + +
    [in]addrData address.
    [out]dataPointer to a buffer storing the data read from Flash.
    [in]cntNumber of data items to read.
    +
    +
    +
    Returns
    number of data items read or Status Error Codes
    +

    This function ARM_Flash_ReadData reads data from the Flash device.

    +

    The parameter addr specifies the address from where to read data (needs to be aligned to data type size).
    + The parameter data specifies the pointer to a buffer storing the data read. The data type is uint8_t, uint16_t or uint32_t and is specified by the data_width in ARM_FLASH_CAPABILITIES.
    + The parameter cnt specifies the number of data items to read.

    +

    The function executes in the following ways:

    +
      +
    • When the operation is non-blocking (typical for SPI Flash) then the function only starts the operation and returns with zero number of data items read. When the operation is completed the ARM_FLASH_EVENT_READY event is generated (if supported and reported by ARM_Flash_GetCapabilities). In case of errors the ARM_FLASH_EVENT_ERROR event is generated at the same time. Progress of the operation can also be monitored by calling the ARM_Flash_GetStatus function and checking the busy flag.
    • +
    • When the operation is blocking (typical for memory mapped Flash) then the function returns after the data is read and returns the number of data items read.
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_Flash_ProgramData (uint32_t addr,
    const void * data,
    uint32_t cnt 
    )
    +
    + +

    Program data to Flash.

    +
    Parameters
    + + + + +
    [in]addrData address.
    [in]dataPointer to a buffer containing the data to be programmed to Flash.
    [in]cntNumber of data items to program.
    +
    +
    +
    Returns
    number of data items programmed or Status Error Codes
    +

    This function ARM_Flash_ProgramData programs data to the Flash device.

    +

    The parameter addr specifies the address to where to program data (needs to be aligned to program_unit specified in ARM_FLASH_INFO).
    + The parameter data specifies the pointer to a buffer containing data to be programmed. The data type is uint8_t, uint16_t or uint32_t and is specified by the data_width in ARM_FLASH_CAPABILITIES.
    + The parameter cnt specifies the number of data items to program (data size needs to be a multiple of program_unit).

    +

    The function executes in the following ways:

    +
      +
    • When the operation is non-blocking (typically) then the function only starts the operation and returns with zero number of data items programmed. When the operation is completed the ARM_FLASH_EVENT_READY event is generated (if supported and reported by ARM_Flash_GetCapabilities). In case of errors the ARM_FLASH_EVENT_ERROR event is generated at the same time. Progress of the operation can also be monitored by calling the ARM_Flash_GetStatus function and checking the busy flag.
    • +
    • When the operation is blocking then the function returns after the data is programmed and returns the number of data items programmed.
    • +
    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_Flash_EraseSector (uint32_t addr)
    +
    + +

    Erase Flash Sector.

    +
    Parameters
    + + +
    [in]addrSector address
    +
    +
    +
    Returns
    Status Error Codes
    +

    This function ARM_Flash_EraseSector erases a flash sector specified by the parameter adr (points to start of the sector).

    +

    The function is non-blocking and returns as soon as the driver has started the operation. When the operation is completed the ARM_FLASH_EVENT_READY event is generated (if supported and reported by ARM_Flash_GetCapabilities). In case of errors the ARM_FLASH_EVENT_ERROR event is generated at the same time. Progress of the operation can also be monitored by calling the ARM_Flash_GetStatus function and checking the busy flag.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_Flash_EraseChip (void )
    +
    + +

    Erase complete Flash. Optional function for faster full chip erase.

    +
    Returns
    Status Error Codes
    +

    The optional function ARM_Flash_EraseChip erases the complete device. If the device does not support global erase or only a portion of the Flash memory space is used for storing files, then the functions returns the error value ARM_DRIVER_ERROR_UNSUPPORTED. The data field eras_chip = 1 of the structure ARM_FLASH_CAPABILITIES encodes that ARM_Flash_EraseChip is supported. The field can be verified with the function ARM_Flash_GetCapabilities.

    +

    The function is non-blocking and returns as soon as the driver has started the operation. When the operation is completed, the ARM_FLASH_EVENT_READY event is generated (if supported and reported by ARM_Flash_GetCapabilities). In case of errors, the ARM_FLASH_EVENT_ERROR event is generated at the same time. Progress of the operation can also be monitored by calling the ARM_Flash_GetStatus function and checking the busy flag.

    +

    See also:

    +
      +
    • ARM_Flash_SignalEvent
    • +
    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_FLASH_STATUS ARM_Flash_GetStatus (void )
    +
    + +

    Get Flash status.

    +
    Returns
    Flash status ARM_FLASH_STATUS
    +

    The function ARM_Flash_GetStatus returns the current Flash interface status stored in the structure ARM_FLASH_STATUS.

    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_FLASH_INFO * ARM_Flash_GetInfo (void )
    +
    + +

    Get Flash information.

    +
    Returns
    Pointer to Flash information ARM_FLASH_INFO
    +

    The function ARM_Flash_GetInfo returns information about the Flash device.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_Flash_SignalEvent (uint32_t event)
    +
    + +

    Signal Flash event.

    +
    Parameters
    + + +
    [in]eventEvent notification mask
    +
    +
    +
    Returns
    none
    +

    The function ARM_Flash_SignalEvent is a callback function registered by the function ARM_Flash_Initialize. The function is called automatically after read/program/erase operation completes.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is coded in a separate bit and therefore it is possible to signal multiple events in the event call back function.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_FLASH_CAPABILITIES, which can be retrieved with the function ARM_Flash_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + +
    Parameter event Bit Description
    ARM_FLASH_EVENT_READY 0 Occurs after read/program/erase operation completes.
    ARM_FLASH_EVENT_ERROR 1 Occurs together with ARM_FLASH_EVENT_READY when operation completes with errors.
    +

    See also:

    + + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__flash__interface__gr.js b/CMSIS/Documentation/Driver/html/group__flash__interface__gr.js new file mode 100644 index 0000000..400ecbe --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__flash__interface__gr.js @@ -0,0 +1,51 @@ +var group__flash__interface__gr = +[ + [ "Flash Events", "group___flash__events.html", "group___flash__events" ], + [ "ARM_FLASH_SECTOR", "group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_e_c_t_o_r", [ + [ "start", "group__flash__interface__gr.html#a61eb63d26b2fa6c2971603ceccffb14b", null ], + [ "end", "group__flash__interface__gr.html#a204a3f4fa39b9c007f9784d3e4af4667", null ] + ] ], + [ "ARM_FLASH_INFO", "group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___i_n_f_o", [ + [ "sector_info", "group__flash__interface__gr.html#a8dfb9d5160358e45293bba527762238d", null ], + [ "sector_count", "group__flash__interface__gr.html#a50947f9a42bbaa2d68d6e5079150d7bf", null ], + [ "sector_size", "group__flash__interface__gr.html#a7d37def484362c6e97a2d75144080b1d", null ], + [ "page_size", "group__flash__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9", null ], + [ "program_unit", "group__flash__interface__gr.html#a483c41066757e2865bf3a27a2a627a54", null ], + [ "erased_value", "group__flash__interface__gr.html#a85c3826bf20669d38e466dfd376994db", null ] + ] ], + [ "ARM_DRIVER_FLASH", "group__flash__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___f_l_a_s_h", [ + [ "GetVersion", "group__flash__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__flash__interface__gr.html#a25076bd7274af5d3b0af6380ed1f0331", null ], + [ "Initialize", "group__flash__interface__gr.html#a2d1eb2b5c3ee21ba5c92c37e89412567", null ], + [ "Uninitialize", "group__flash__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__flash__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "ReadData", "group__flash__interface__gr.html#adec45569a2f6f0d915a206f8f19107bd", null ], + [ "ProgramData", "group__flash__interface__gr.html#a429fc193f1ec62858219ab8749c563ae", null ], + [ "EraseSector", "group__flash__interface__gr.html#ad9d78f9fe07aabf12b23b95239818b55", null ], + [ "EraseChip", "group__flash__interface__gr.html#ae873705c743d94572fb6500421e15760", null ], + [ "GetStatus", "group__flash__interface__gr.html#afc1db6f33f777784f3c95efc816d4856", null ], + [ "GetInfo", "group__flash__interface__gr.html#ae64d4ee61b7a7ee0b38a0ef2b61f1db2", null ] + ] ], + [ "ARM_FLASH_CAPABILITIES", "group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "event_ready", "group__flash__interface__gr.html#add296ba516c8fc17ba51e30f2a00f0a9", null ], + [ "data_width", "group__flash__interface__gr.html#a04c173610dd0a545ecae308e342aafb0", null ], + [ "erase_chip", "group__flash__interface__gr.html#af5ec2b569c193fc5024c2739f46b328a", null ] + ] ], + [ "ARM_FLASH_STATUS", "group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_t_a_t_u_s", [ + [ "busy", "group__flash__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a", null ], + [ "error", "group__flash__interface__gr.html#aa8d183302fdfa4a6892f1d80300cdb32", null ] + ] ], + [ "ARM_Flash_SignalEvent_t", "group__flash__interface__gr.html#gabeb4ad43b1e6fa4ed956cd5c9371d327", null ], + [ "ARM_Flash_GetVersion", "group__flash__interface__gr.html#ga1cfe24b2ffa571ee50ae544bd922b604", null ], + [ "ARM_Flash_GetCapabilities", "group__flash__interface__gr.html#ga27c23c998032cd47cb47293c0185ee5d", null ], + [ "ARM_Flash_Initialize", "group__flash__interface__gr.html#gaa5b4bbe529d620d4ad4825588a4c4cf0", null ], + [ "ARM_Flash_Uninitialize", "group__flash__interface__gr.html#gae23af293e9f8a67cdb19c7d0d562d415", null ], + [ "ARM_Flash_PowerControl", "group__flash__interface__gr.html#gaa8baa4618ea33568f8b3752afb2ab5a2", null ], + [ "ARM_Flash_ReadData", "group__flash__interface__gr.html#ga223138342383219896ed7e255faeb99a", null ], + [ "ARM_Flash_ProgramData", "group__flash__interface__gr.html#ga947f24ea4042093fdb5605a68ae74f9d", null ], + [ "ARM_Flash_EraseSector", "group__flash__interface__gr.html#ga0b2b4fe5a7be579cf3644995a765ea20", null ], + [ "ARM_Flash_EraseChip", "group__flash__interface__gr.html#ga6cbaebe069d31d56c70b1f8f847e2d55", null ], + [ "ARM_Flash_GetStatus", "group__flash__interface__gr.html#ga06885c0d4587d5a23f97614a8b849ef1", null ], + [ "ARM_Flash_GetInfo", "group__flash__interface__gr.html#gac047b7509356e888502e0424a9d189ae", null ], + [ "ARM_Flash_SignalEvent", "group__flash__interface__gr.html#ga97b75555b5433b268add81f2e60f095a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__i2c__address__flags.html b/CMSIS/Documentation/Driver/html/group__i2c__address__flags.html new file mode 100644 index 0000000..6c6d10a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__address__flags.html @@ -0,0 +1,181 @@ + + + + + +I2C Address Flags +CMSIS-Driver: I2C Address Flags + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    I2C Address Flags
    +
    +
    + +

    Specify address flags. +More...

    + + + + + + + + +

    +Macros

    #define ARM_I2C_ADDRESS_10BIT   0x0400
     10-bit address flag
     
    #define ARM_I2C_ADDRESS_GC   0x8000
     General Call flag.
     
    +

    Description

    +

    Specify address flags.

    +

    Specifies the address type for the functions ARM_I2C_MasterReceive, ARM_I2C_MasterTransmit and ARM_I2C_OWN_ADDRESS.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_I2C_ADDRESS_10BIT   0x0400
    +
    + +

    10-bit address flag

    +
    See Also
    ARM_I2C_OWN_ADDRESS
    +
    +ARM_I2C_MasterTransmit
    +
    +ARM_I2C_MasterReceive
    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_ADDRESS_GC   0x8000
    +
    + +

    General Call flag.

    +
    See Also
    ARM_I2C_OWN_ADDRESS
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__i2c__address__flags.js b/CMSIS/Documentation/Driver/html/group__i2c__address__flags.js new file mode 100644 index 0000000..b47bc88 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__address__flags.js @@ -0,0 +1,5 @@ +var group__i2c__address__flags = +[ + [ "ARM_I2C_ADDRESS_10BIT", "group__i2c__address__flags.html#ga16be1861b90774bf062feab2dbb829a4", null ], + [ "ARM_I2C_ADDRESS_GC", "group__i2c__address__flags.html#ga337f4f1aa082e9b593b2dcd43c50134e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.html b/CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.html new file mode 100644 index 0000000..b981ad2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.html @@ -0,0 +1,212 @@ + + + + + +I2C Bus Speed +CMSIS-Driver: I2C Bus Speed + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    I2C Bus Speed
    +
    +
    + +

    Specify the I2C bus speed. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_I2C_BUS_SPEED_STANDARD   (0x01)
     Standard Speed (100kHz)
     
    #define ARM_I2C_BUS_SPEED_FAST   (0x02)
     Fast Speed (400kHz)
     
    #define ARM_I2C_BUS_SPEED_FAST_PLUS   (0x03)
     Fast+ Speed ( 1MHz)
     
    #define ARM_I2C_BUS_SPEED_HIGH   (0x04)
     High Speed (3.4MHz)
     
    +

    Description

    +

    Specify the I2C bus speed.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_I2C_BUS_SPEED_STANDARD   (0x01)
    +
    + +

    Standard Speed (100kHz)

    +
    See Also
    ARM_I2C_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_BUS_SPEED_FAST   (0x02)
    +
    + +

    Fast Speed (400kHz)

    +
    See Also
    ARM_I2C_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_BUS_SPEED_FAST_PLUS   (0x03)
    +
    + +

    Fast+ Speed ( 1MHz)

    +
    See Also
    ARM_I2C_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_BUS_SPEED_HIGH   (0x04)
    +
    + +

    High Speed (3.4MHz)

    +
    See Also
    ARM_I2C_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.js b/CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.js new file mode 100644 index 0000000..dde177a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__bus__speed__ctrls.js @@ -0,0 +1,7 @@ +var group__i2c__bus__speed__ctrls = +[ + [ "ARM_I2C_BUS_SPEED_STANDARD", "group__i2c__bus__speed__ctrls.html#ga0aaa6398280fdd7ad651d7d6d44c863f", null ], + [ "ARM_I2C_BUS_SPEED_FAST", "group__i2c__bus__speed__ctrls.html#ga39f49ef4cd1100a8d9dc9003329e5ecd", null ], + [ "ARM_I2C_BUS_SPEED_FAST_PLUS", "group__i2c__bus__speed__ctrls.html#ga2615262062e0327ab478ec85675ca649", null ], + [ "ARM_I2C_BUS_SPEED_HIGH", "group__i2c__bus__speed__ctrls.html#ga10aae5a8c7fcc90e514c5fb7393056ec", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__i2c__control__codes.html b/CMSIS/Documentation/Driver/html/group__i2c__control__codes.html new file mode 100644 index 0000000..147fdde --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__control__codes.html @@ -0,0 +1,213 @@ + + + + + +I2C Control Codes +CMSIS-Driver: I2C Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    I2C Control Codes
    +
    +
    + +

    Specify operation parameters and various controls. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_I2C_OWN_ADDRESS   (0x01)
     Set Own Slave Address; arg = address.
     
    #define ARM_I2C_BUS_SPEED   (0x02)
     Set Bus Speed; arg = speed.
     
    #define ARM_I2C_BUS_CLEAR   (0x03)
     Execute Bus clear: send nine clock pulses.
     
    #define ARM_I2C_ABORT_TRANSFER   (0x04)
     Abort Master/Slave Transmit/Receive.
     
    +

    Description

    +

    Specify operation parameters and various controls.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_I2C_OWN_ADDRESS   (0x01)
    +
    + +

    Set Own Slave Address; arg = address.

    +
    See Also
    ARM_I2C_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_BUS_SPEED   (0x02)
    +
    + +

    Set Bus Speed; arg = speed.

    +

    Speed is specified using the following values: I2C Bus Speed

    +
    See Also
    ARM_I2C_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_BUS_CLEAR   (0x03)
    +
    + +

    Execute Bus clear: send nine clock pulses.

    +
    See Also
    ARM_I2C_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_I2C_ABORT_TRANSFER   (0x04)
    +
    + +

    Abort Master/Slave Transmit/Receive.

    +
    See Also
    ARM_I2C_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__i2c__control__codes.js b/CMSIS/Documentation/Driver/html/group__i2c__control__codes.js new file mode 100644 index 0000000..7a852aa --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__control__codes.js @@ -0,0 +1,7 @@ +var group__i2c__control__codes = +[ + [ "ARM_I2C_OWN_ADDRESS", "group__i2c__control__codes.html#ga69d130b9f8aa34d6df5334ab67c74307", null ], + [ "ARM_I2C_BUS_SPEED", "group__i2c__control__codes.html#ga35733133237d65146abd9449f5353a7f", null ], + [ "ARM_I2C_BUS_CLEAR", "group__i2c__control__codes.html#gadacf04578770faca4b3eaae34b2c5f03", null ], + [ "ARM_I2C_ABORT_TRANSFER", "group__i2c__control__codes.html#ga661e91aaa642d10ba80e3cc72f263040", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__i2c__control__gr.html b/CMSIS/Documentation/Driver/html/group__i2c__control__gr.html new file mode 100644 index 0000000..ea1618a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__control__gr.html @@ -0,0 +1,151 @@ + + + + + +I2C Control Codes +CMSIS-Driver: I2C Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    I2C Control Codes
    +
    +
    + +

    Many parameters of the I2C driver are configured using the ARM_I2C_Control function. +More...

    + + + + + + + + +

    +Content

     I2C Control Codes
     Specify operation parameters and various controls.
     
     I2C Bus Speed
     Specify the I2C bus speed.
     
    +

    Description

    +

    Many parameters of the I2C driver are configured using the ARM_I2C_Control function.

    +

    The various I2C control codes define:

    + +

    Refer to the ARM_I2C_Control function for further details.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__i2c__control__gr.js b/CMSIS/Documentation/Driver/html/group__i2c__control__gr.js new file mode 100644 index 0000000..035cd69 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__control__gr.js @@ -0,0 +1,5 @@ +var group__i2c__control__gr = +[ + [ "I2C Control Codes", "group__i2c__control__codes.html", "group__i2c__control__codes" ], + [ "I2C Bus Speed", "group__i2c__bus__speed__ctrls.html", "group__i2c__bus__speed__ctrls" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__i2c__interface__gr.html b/CMSIS/Documentation/Driver/html/group__i2c__interface__gr.html new file mode 100644 index 0000000..aa44481 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__interface__gr.html @@ -0,0 +1,1262 @@ + + + + + +I2C Interface +CMSIS-Driver: I2C Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    I2C Interface
    +
    +
    + +

    Driver API for I2C Bus Peripheral (Driver_I2C.h) +More...

    + + + + + + + + + + + +

    +Content

     I2C Events
     The I2C driver generates call back events that are notified via the function ARM_I2C_SignalEvent.
     
     I2C Control Codes
     Many parameters of the I2C driver are configured using the ARM_I2C_Control function.
     
     I2C Address Flags
     Specify address flags.
     
    + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_I2C
     Access structure of the I2C Driver. More...
     
    struct  ARM_I2C_CAPABILITIES
     I2C Driver Capabilities. More...
     
    struct  ARM_I2C_STATUS
     I2C Status. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_I2C_SignalEvent_t )(uint32_t event)
     Pointer to ARM_I2C_SignalEvent : Signal I2C Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_I2C_GetVersion (void)
     Get driver version.
     
    ARM_I2C_CAPABILITIES ARM_I2C_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_I2C_Initialize (ARM_I2C_SignalEvent_t cb_event)
     Initialize I2C Interface.
     
    int32_t ARM_I2C_Uninitialize (void)
     De-initialize I2C Interface.
     
    int32_t ARM_I2C_PowerControl (ARM_POWER_STATE state)
     Control I2C Interface Power.
     
    int32_t ARM_I2C_MasterTransmit (uint32_t addr, const uint8_t *data, uint32_t num, bool xfer_pending)
     Start transmitting data as I2C Master.
     
    int32_t ARM_I2C_MasterReceive (uint32_t addr, uint8_t *data, uint32_t num, bool xfer_pending)
     Start receiving data as I2C Master.
     
    int32_t ARM_I2C_SlaveTransmit (const uint8_t *data, uint32_t num)
     Start transmitting data as I2C Slave.
     
    int32_t ARM_I2C_SlaveReceive (uint8_t *data, uint32_t num)
     Start receiving data as I2C Slave.
     
    int32_t ARM_I2C_GetDataCount (void)
     Get transferred data count.
     
    int32_t ARM_I2C_Control (uint32_t control, uint32_t arg)
     Control I2C Interface.
     
    ARM_I2C_STATUS ARM_I2C_GetStatus (void)
     Get I2C status.
     
    void ARM_I2C_SignalEvent (uint32_t event)
     Signal I2C Events.
     
    +

    Description

    +

    Driver API for I2C Bus Peripheral (Driver_I2C.h)

    +

    I2C (Inter-Integrated Circuit, referred to as I-squared-C, I-two-C, or IIC) is a multi-master serial single-ended bus and is mostly used on single boards, but can also connect to components which are linked via cable.

    +

    Most significant features of the I2C bus include:

    +
      +
    • Only two bus lines are required
    • +
    • I2C is a true multi-master bus. Simple master/slave relationships exist between all components
    • +
    • A baud rate is not required; the master device determines a bus clock
    • +
    • Each connected device is addressable by a unique address
    • +
    • Providing arbitration and collision detection
    • +
    +

    For more information about I2C refer to the following web pages:

    + +

    Devices can operation in Master or Slave mode:

    + + +

    I2C Slave Address

    +

    Depending on the device, I2C supports 7-bit and 10-bit Slaves addresses. The element address_10_bit in ARM_I2C_CAPABILITIES indicates that the driver is able to handle 10-bit addresses. A 10-bit Slave address is ORed with ARM_I2C_ADDRESS_10BIT.

    +

    I2C also supports a General Call to all Slaves by using the slave address value 0. A General Call is recognized by Slaves have a slave address value ARM_I2C_ADDRESS_GC registered with the function ARM_I2C_Control.

    +

    Block Diagram

    +

    The I2C driver allows you to connect low-speed peripherals to a motherboard, embedded system, cellphone, or other electronic device.

    +
    +I2C_BlockDiagram.png +
    +Master/Slave connected via I2C interface
    +

    I2C API

    +

    The following header files define the Application Programming Interface (API) for the I2C interface:

    +
      +
    • Driver_I2C.h : Driver API for I2C Bus Peripheral
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Example Code

    +

    The following example code shows the usage of the I2C interface in Master mode.

    +
    #include "Driver_I2C.h"
    +
    #include "cmsis_os.h" // ARM::CMSIS:RTOS:Keil RTX
    +
    #include <string.h>
    +
    +
    /* I2C Driver */
    +
    extern ARM_DRIVER_I2C Driver_I2C0;
    +
    static ARM_DRIVER_I2C * I2Cdrv = &Driver_I2C0;
    +
    +
    +
    #ifndef EEPROM_I2C_PORT
    +
    #define EEPROM_I2C_PORT 0 /* I2C Port number */
    +
    #endif
    +
    +
    #define EEPROM_I2C_ADDR 0x51 /* 24LC128 EEPROM I2C address */
    +
    +
    #define EEPROM_MAX_ADDR 16384 /* Max memory locations available */
    +
    #define EEPROM_MAX_WRITE 16 /* Max bytes to write in one step */
    +
    +
    #define A_WR 0 /* Master will write to the I2C */
    +
    #define A_RD 1 /* Master will read from the I2C */
    +
    +
    static uint8_t DeviceAddr;
    +
    static uint8_t wr_buf[EEPROM_MAX_WRITE + 2];
    +
    +
    int32_t EEPROM_WriteBuf (uint16_t addr, const uint8_t *buf, uint32_t len) {
    +
    +
    wr_buf[0] = (uint8_t)(addr >> 8);
    +
    wr_buf[1] = (uint8_t)(addr & 0xFF);
    +
    +
    memcpy (&wr_buf[2], &buf[0], len);
    +
    +
    I2Cdrv->MasterTransmit (DeviceAddr, wr_buf, len + 2, false);
    +
    while (I2Cdrv->GetStatus().busy);
    +
    if (I2Cdrv->GetDataCount () != (len + 2)) return -1;
    +
    /* Acknowledge polling */
    +
    +
    do {
    +
    I2Cdrv->MasterReceive (DeviceAddr, &wr_buf[0], 1, false);
    +
    while (I2Cdrv->GetStatus().busy);
    +
    } while (I2Cdrv->GetDataCount () < 0);
    +
    +
    return 0;
    +
    }
    +
    +
    int32_t EEPROM_ReadBuf (uint16_t addr, uint8_t *buf, uint32_t len) {
    +
    uint8_t a[2];
    +
    +
    a[0] = (uint8_t)(addr >> 8);
    +
    a[1] = (uint8_t)(addr & 0xFF);
    +
    +
    I2Cdrv->MasterTransmit (DeviceAddr, a, 2, true);
    +
    while (I2Cdrv->GetStatus().busy);
    +
    I2Cdrv->MasterReceive (DeviceAddr, buf, len, false);
    +
    while (I2Cdrv->GetStatus().busy);
    +
    if (I2Cdrv->GetDataCount () != len) return -1;
    +
    +
    return 0;
    +
    }
    +
    +
    int32_t EEPROM_Initialize (void) {
    +
    uint8_t val;
    +
    +
    I2Cdrv->Initialize (NULL);
    + + +
    I2Cdrv->Control (ARM_I2C_BUS_CLEAR, 0);
    +
    +
    /* Init 24LC128 EEPROM device */
    +
    DeviceAddr = EEPROM_I2C_ADDR;
    +
    +
    /* Read min and max address */
    +
    if (EEPROM_ReadBuf (0x00, &val, 1) == 0) {
    +
    return (EEPROM_ReadBuf (EEPROM_MAX_ADDR-1, &val, 1));
    +
    }
    +
    return -1;
    +
    }
    +
    +
    uint32_t EEPROM_GetSize (void) {
    +
    return EEPROM_MAX_ADDR;
    +
    }
    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_I2C
    +
    +

    Access structure of the I2C Driver.

    +

    The functions of the I2C interface are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of an I2C provides such an access structure. The instance is indicated by a postfix in the symbol name of the access structure, for example:

    +
      +
    • Driver_I2C0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_I2C1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows connecting the middleware to a specific driver instance Driver_I2Cn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_I2C_GetVersion : Get driver version.
     
    ARM_I2C_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_I2C_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_I2C_SignalEvent_t cb_event)
     Pointer to ARM_I2C_Initialize : Initialize I2C Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_I2C_Uninitialize : De-initialize I2C Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_I2C_PowerControl : Control I2C Interface Power.
     
    int32_t(* MasterTransmit )(uint32_t addr, const uint8_t *data, uint32_t num, bool xfer_pending)
     Pointer to ARM_I2C_MasterTransmit : Start transmitting data as I2C Master.
     
    int32_t(* MasterReceive )(uint32_t addr, uint8_t *data, uint32_t num, bool xfer_pending)
     Pointer to ARM_I2C_MasterReceive : Start receiving data as I2C Master.
     
    int32_t(* SlaveTransmit )(const uint8_t *data, uint32_t num)
     Pointer to ARM_I2C_SlaveTransmit : Start transmitting data as I2C Slave.
     
    int32_t(* SlaveReceive )(uint8_t *data, uint32_t num)
     Pointer to ARM_I2C_SlaveReceive : Start receiving data as I2C Slave.
     
    int32_t(* GetDataCount )(void)
     Pointer to ARM_I2C_GetDataCount : Get transferred data count.
     
    int32_t(* Control )(uint32_t control, uint32_t arg)
     Pointer to ARM_I2C_Control : Control I2C Interface.
     
    ARM_I2C_STATUS(* GetStatus )(void)
     Pointer to ARM_I2C_GetStatus : Get I2C status.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_I2C_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_I2C_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_I2C_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_I2C_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_I2C_Initialize : Initialize I2C Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_I2C_Uninitialize : De-initialize I2C Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_I2C_PowerControl : Control I2C Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* MasterTransmit)(uint32_t addr, const uint8_t *data, uint32_t num, bool xfer_pending)
    +
    + +

    Pointer to ARM_I2C_MasterTransmit : Start transmitting data as I2C Master.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* MasterReceive)(uint32_t addr, uint8_t *data, uint32_t num, bool xfer_pending)
    +
    + +

    Pointer to ARM_I2C_MasterReceive : Start receiving data as I2C Master.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SlaveTransmit)(const uint8_t *data, uint32_t num)
    +
    + +

    Pointer to ARM_I2C_SlaveTransmit : Start transmitting data as I2C Slave.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SlaveReceive)(uint8_t *data, uint32_t num)
    +
    + +

    Pointer to ARM_I2C_SlaveReceive : Start receiving data as I2C Slave.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* GetDataCount)(void)
    +
    + +

    Pointer to ARM_I2C_GetDataCount : Get transferred data count.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t control, uint32_t arg)
    +
    + +

    Pointer to ARM_I2C_Control : Control I2C Interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_I2C_STATUS(* GetStatus)(void)
    +
    + +

    Pointer to ARM_I2C_GetStatus : Get I2C status.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_I2C_CAPABILITIES
    +
    +

    I2C Driver Capabilities.

    +

    An I2C driver can be implemented with different capabilities. The data fields of this struct encode the capabilities implemented by this driver.

    +

    The element address_10_bit indicates that the driver is able to handle 10-bit addressing natively. User can still emulate the 10-bit addressing in software if the driver does not support it.

    +

    Returned by:

    + +
    + + + + +
    Data Fields
    +uint32_t +address_10_bit: 1 +supports 10-bit addressing
    + +
    +
    + +
    +
    + + + + +
    struct ARM_I2C_STATUS
    +
    +

    I2C Status.

    +

    Structure with information about the status of the I2C.

    +

    The flag busy indicates that the driver is busy executing Master/Slave Transmit/Receive operation.

    +

    It is set:

    + +

    It is cleared when Master/Slave operation has finished.

    +

    The flag mode indicates the current mode which is Master when Master Transmit/Receive is active or Slave otherwise.

    +

    The flag direction indicates either Transmitter or Receiver mode. It is updated during Master/Slave operation when the Slave is addressed by a Master.

    +

    The flag general_call indicates a General call (address 0) when in Slave mode.

    +

    The flag arbitration_lost indicates that the Master has lost arbitration. The current Master operation is aborted.

    +

    The flag bus_error indicates that a bus error has been detected. The current Master/Slave operation is aborted.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +busy: 1 +Busy flag.
    +uint32_t +mode: 1 +Mode: 0=Slave, 1=Master.
    +uint32_t +direction: 1 +Direction: 0=Transmitter, 1=Receiver.
    +uint32_t +general_call: 1 +General Call indication (cleared on start of next Slave operation)
    +uint32_t +arbitration_lost: 1 +Master lost arbitration (cleared on start of next Master operation)
    +uint32_t +bus_error: 1 +Bus error detected (cleared on start of next Master/Slave operation)
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_I2C_SignalEvent_t
    +
    + +

    Pointer to ARM_I2C_SignalEvent : Signal I2C Event.

    +

    Provides the typedef for the callback function ARM_I2C_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_I2C_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_I2C_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_I2C Driver_I2C0;
    +
    ARM_DRIVER_I2C *drv_info;
    +
    +
    void setup_i2c (void) {
    + +
    +
    drv_info = &Driver_I2C0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_I2C_CAPABILITIES ARM_I2C_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_I2C_CAPABILITIES
    +

    The function ARM_I2C_GetCapabilities returns information about capabilities of this driver implementation. The data fields of the struct ARM_I2C_CAPABILITIES encodes the driver capabilities.

    +

    Example:

    +
    extern ARM_DRIVER_I2C Driver_I2C0;
    +
    ARM_DRIVER_I2C *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_I2C_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_I2C0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_I2C_Initialize (ARM_I2C_SignalEvent_t cb_event)
    +
    + +

    Initialize I2C Interface.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_I2C_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_I2C_Initialize initializes the I2C interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    +
      +
    • Initializes and the I/O resources for the I2C interface.
    • +
    • Registers the ARM_I2C_SignalEvent callback function.
    • +
    +

    The parameter cb_event is a pointer to the ARM_I2C_SignalEvent callback function. Use a NULL pointer when no callback events are required.

    +

    Can be called multiple times. If the peripheral is already initialized the function performs no operation and returns with ARM_DRIVER_OK. Refer to Function Call Sequence for more information.

    +
    See Also
    ARM_I2C_PowerControl
    +
    +ARM_I2C_Uninitialize
    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_I2C_Uninitialize (void )
    +
    + +

    De-initialize I2C Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_I2C_Uninitialize releases the I/O resources of I2C interface.

    +

    It is called when the middleware component stops operation and releases the I/O resources used by the I2C interface. Refer to Function Call Sequence for more information.

    +
    See Also
    ARM_I2C_Initialize
    +
    +ARM_I2C_PowerControl
    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_I2C_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control I2C Interface Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_I2C_PowerControl operates the power modes of the I2C interface.

    +

    The parameter state can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode, then the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    +
    See Also
    ARM_I2C_Initialize
    +
    +ARM_I2C_Uninitialize
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_I2C_MasterTransmit (uint32_t addr,
    const uint8_t * data,
    uint32_t num,
    bool xfer_pending 
    )
    +
    + +

    Start transmitting data as I2C Master.

    +
    Parameters
    + + + + + +
    [in]addrSlave address (7-bit or 10-bit)
    [in]dataPointer to buffer with data to transmit to I2C Slave
    [in]numNumber of data bytes to transmit
    [in]xfer_pendingTransfer operation is pending - Stop condition will not be generated
    +
    +
    +
    Returns
    Status Error Codes
    +

    This function ARM_I2C_MasterTransmit transmits data as Master to the selected Slave.

    +

    The operation consists of:

    +
      +
    • Master generates START condition
    • +
    • Master addresses the Slave as Master Transmitter
    • +
    • Master transmits data to the addressed Slave
    • +
    • Master generates STOP condition (if xfer_pending is "false")
    • +
    +

    The parameter addr is the address of the slave to transmit the data to. The value can be ORed with ARM_I2C_ADDRESS_10BIT to identify a 10-bit address value.
    + The parameter data and num specify the address of a data buffer and the number of bytes to transmit.
    + Set the parameter xfer_pending to 'true' if another transfer operation follows. With xfer_pending set to 'false' a STOP condition is generated.

    +

    The function is non-blocking and returns as soon as the driver has started the operation. During the operation it is not allowed to call any Master function again. Also the data buffer must stay allocated and the contents of data must not be modified. When transmit operation has finished the ARM_I2C_EVENT_TRANSFER_DONE event is generated. When not all the data is transferred then the ARM_I2C_EVENT_TRANSFER_INCOMPLETE flag is set at the same time.

    +

    Number of data bytes transmitted and acknowledged is returned by the function ARM_I2C_GetDataCount during and after the operation has finished.

    +

    The operation is aborted in the following cases (ARM_I2C_EVENT_TRANSFER_DONE event is generated together with):

    + +

    Status can be monitored by calling the ARM_I2C_GetStatus and checking the flags.

    +

    Transmit operation can be aborted also by calling ARM_I2C_Control with the parameter control ARM_I2C_ABORT_TRANSFER.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_I2C_MasterReceive (uint32_t addr,
    uint8_t * data,
    uint32_t num,
    bool xfer_pending 
    )
    +
    + +

    Start receiving data as I2C Master.

    +
    Parameters
    + + + + + +
    [in]addrSlave address (7-bit or 10-bit)
    [out]dataPointer to buffer for data to receive from I2C Slave
    [in]numNumber of data bytes to receive
    [in]xfer_pendingTransfer operation is pending - Stop condition will not be generated
    +
    +
    +
    Returns
    Status Error Codes
    +

    This function ARM_I2C_MasterReceive is used to receive data as Master from the selected Slave.

    +

    The operation consists of:

    +
      +
    • Master generates START condition
    • +
    • Master addresses the Slave as Master Receiver
    • +
    • Master receives data from the addressed Slave
    • +
    • Master generates STOP condition (if xfer_pending is "false")
    • +
    +

    The parameter addr is the address of the slave to receive the data from. The value can be ORed with ARM_I2C_ADDRESS_10BIT to identify a 10-bit address value.
    + The parameter data and num specify the address of a data buffer and the number of bytes to receive.
    + Set the parameter xfer_pending to 'true' if another transfer operation follows. With xfer_pending set to 'false' a STOP condition is generated.

    +

    The function is non-blocking and returns as soon as the driver has started the operation. During the operation it is not allowed to call any Master function again. Also the data buffer must stay allocated. When receive operation has finished the ARM_I2C_EVENT_TRANSFER_DONE event is generated. When not all the data is transferred then the ARM_I2C_EVENT_TRANSFER_INCOMPLETE flag is set at the same time.

    +

    Number of data bytes received is returned by the function ARM_I2C_GetDataCount during and after the operation has finished.

    +

    The operation is aborted in the following cases (ARM_I2C_EVENT_TRANSFER_DONE event is generated together with):

    + +

    Status can be monitored by calling the ARM_I2C_GetStatus and checking the flags.

    +

    Receive operation can be aborted also by calling ARM_I2C_Control with the parameter control = ARM_I2C_ABORT_TRANSFER.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_I2C_SlaveTransmit (const uint8_t * data,
    uint32_t num 
    )
    +
    + +

    Start transmitting data as I2C Slave.

    +
    Parameters
    + + + +
    [in]dataPointer to buffer with data to transmit to I2C Master
    [in]numNumber of data bytes to transmit
    +
    +
    +
    Returns
    Status Error Codes
    +

    This function ARM_I2C_SlaveTransmit is used to transmit data as Slave to the Master.

    +

    The parameter data is a pointer to the data to transmit.
    + The parameter num specifies the number of bytes to transmit.

    +

    The function is non-blocking and returns as soon as the driver has registered the operation. The actual operation will start after being addressed by the master as a Slave Transmitter. If the operation has not been registered at that point the ARM_I2C_EVENT_SLAVE_TRANSMIT event is generated. The same event is also generated if the operation has finished (specified number of bytes transmitted) but more data is requested by the master.

    +

    It is not allowed to call this function again if the operation has started until it finishes. Also the data buffer must stay allocated and the contents of data must not be modified. When transmit operation has finished the ARM_I2C_EVENT_TRANSFER_DONE event is generated. When not all the data is transferred then the ARM_I2C_EVENT_TRANSFER_INCOMPLETE flag is set at the same time.

    +

    Number of data bytes transmitted is returned by the function ARM_I2C_GetDataCount during and after the operation has finished.

    +

    In case that a General call has been detected the ARM_I2C_EVENT_GENERAL_CALL flag is indicated together with the ARM_I2C_EVENT_TRANSFER_DONE event (also with ARM_I2C_EVENT_SLAVE_TRANSMIT event).

    +

    In case that bus error has been detected then the operation is aborted and the ARM_I2C_EVENT_BUS_ERROR event is generated together with ARM_I2C_EVENT_TRANSFER_DONE.

    +

    Slave will only respond to its own address (or General call if enabled) that is specified by calling ARM_I2C_Control with ARM_I2C_OWN_ADDRESS as control parameter. Using address 0 disables the slave.

    +

    Status can be monitored by calling the ARM_I2C_GetStatus and checking the flags.

    +

    Transmit operation can be canceled or aborted by calling ARM_I2C_Control with the parameter control = ARM_I2C_ABORT_TRANSFER.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_I2C_SlaveReceive (uint8_t * data,
    uint32_t num 
    )
    +
    + +

    Start receiving data as I2C Slave.

    +
    Parameters
    + + + +
    [out]dataPointer to buffer for data to receive from I2C Master
    [in]numNumber of data bytes to receive
    +
    +
    +
    Returns
    Status Error Codes
    +

    This function ARM_I2C_SlaveReceive receives data as Slave from the Master.

    +

    The parameter data is a pointer to the data to receive.
    + The parameter num specifies the number of bytes to receive.

    +

    The function is non-blocking and returns as soon as the driver has registered the operation. The actual operation will start after being addressed by the master as a Slave Receiver. If the operation has not been registered at that point the ARM_I2C_EVENT_SLAVE_RECEIVE event is generated.

    +

    It is not allowed to call this function again if the operation has started until it finishes. Also the data buffer must stay allocated. When receive operation has finished the ARM_I2C_EVENT_TRANSFER_DONE event is generated. When not all the data is transferred then the ARM_I2C_EVENT_TRANSFER_INCOMPLETE flag is set at the same time.

    +

    Number of data bytes received and acknowledged is returned by the function ARM_I2C_GetDataCount during and after the operation has finished.

    +

    In case that a General call has been detected the ARM_I2C_EVENT_GENERAL_CALL flag is indicated together with the ARM_I2C_EVENT_TRANSFER_DONE event (also with ARM_I2C_EVENT_SLAVE_RECEIVE event).

    +

    In case that bus error has been detected then the operation is aborted and the ARM_I2C_EVENT_BUS_ERROR event is generated together with ARM_I2C_EVENT_TRANSFER_DONE.

    +

    Slave will only respond to its own address (or General call if enabled) that is specified by calling ARM_I2C_Control with ARM_I2C_OWN_ADDRESS as control parameter. Using address 0 disables the slave.

    +

    Status can be monitored by calling the ARM_I2C_GetStatus and checking the flags.

    +

    Receive operation can be canceled or aborted by calling ARM_I2C_Control with the parameter control = ARM_I2C_ABORT_TRANSFER.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_I2C_GetDataCount (void )
    +
    + +

    Get transferred data count.

    +
    Returns
    number of data bytes transferred; -1 when Slave is not addressed by Master
    +

    The function ARM_I2C_GetDataCount returns the number of currently transferred data bytes during and after:

    + +

    When the Slave is not yet addressed by the Master then -1 is returned.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_I2C_Control (uint32_t control,
    uint32_t arg 
    )
    +
    + +

    Control I2C Interface.

    +
    Parameters
    + + + +
    [in]controlOperation
    [in]argArgument of operation (optional)
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_I2C_Control operates the I2C interface and executes various operations.

    +

    The parameter control specifies various operations as listed in the table below.
    + The parameter arg provides, depending on the operation, additional information.
    +

    + + + + + + + + + + + +
    Parameter control Operation
    ARM_I2C_OWN_ADDRESS Set Own Slave Address; arg = slave address
    ARM_I2C_BUS_SPEED Set Bus Speed; arg = bus speed
    ARM_I2C_BUS_CLEAR Clear the bus by sending nine clock pulses
    ARM_I2C_ABORT_TRANSFER Aborts the data transfer between Master and Slave for Transmit or Receive
    +

    Set Own Slave Address

    +

    After initialization, the I2C Device has no slave address assigned and does not accept any requests from an I2C Master.

    +

    The control operation ARM_I2C_OWN_ADDRESS sets the slave address with the parameter arg. The slave address can be ORed with ARM_I2C_ADDRESS_10BIT to indicate a 10-bit address.

    +

    The slave address can be ORed with ARM_I2C_ADDRESS_GC to indicate that the slave accepts a General Call. If the slave address value is only ARM_I2C_ADDRESS_GC, then the slave only accepts a General Call.

    +

    The slave address value 0 disables Slave mode and clears any assigned slave address.

    +

    Examples:

    +

    Set the Slave address value 0x45 as 7-bit address.

    +
    I2Cdrv->Control (ARM_I2C_OWN_ADDRESS, 0x45);
    +

    Set the Slave address value 0x135 as 10-bit address and accept a General Call.

    +

    Bus Speed

    +

    The control operation ARM_I2C_BUS_SPEED sets the bus speed using the parameter arg.

    + + + + + + + + + + + +
    Parameter arg Bus Speed
    ARM_I2C_BUS_SPEED_STANDARD Standard Speed to (100 kHz)
    ARM_I2C_BUS_SPEED_FAST Fast Speed (400kHz)
    ARM_I2C_BUS_SPEED_FAST_PLUS Fast + Speed (1MHz)
    ARM_I2C_BUS_SPEED_HIGH High Speed (3.4MHz)
    +

    Example:

    +
    I2Cdrv->Control (ARM_I2C_BUS_SPEED, I2C_BUS_SPEED_FAST);
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_I2C_STATUS ARM_I2C_GetStatus (void )
    +
    + +

    Get I2C status.

    +
    Returns
    I2C status ARM_I2C_STATUS
    +

    The function ARM_I2C_GetStatus returns the current I2C interface status.

    +

    Refer to ARM_I2C_STATUS for details.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_I2C_SignalEvent (uint32_t event)
    +
    + +

    Signal I2C Events.

    +
    Parameters
    + + +
    [in]eventI2C Events notification mask
    +
    +
    +

    The function ARM_I2C_SignalEvent is a callback function registered by the function ARM_I2C_Initialize.. It is called by the I2C driver to notify the application about I2C Events occured during operation.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    The following events can be generated:

    + + + + + + + + + + + + + + + + + + + + + +
    Parameter event Bit Description
    ARM_I2C_EVENT_TRANSFER_DONE 0 Occurs after Master/Slave Transmit/Receive operation has finished.
    ARM_I2C_EVENT_TRANSFER_INCOMPLETE 1 Occurs together with ARM_I2C_EVENT_TRANSFER_DONE when less data is transferred then requested.
    ARM_I2C_EVENT_SLAVE_TRANSMIT 2 Occurs when addressed as Slave Transmitter and ARM_I2C_SlaveTransmit has not been started.
    ARM_I2C_EVENT_SLAVE_RECEIVE 3 Occurs when addressed as Slave Receiver and ARM_I2C_SlaveReceive has not been started.
    ARM_I2C_EVENT_GENERAL_CALL 4 Indicates General Call in slave mode together with ARM_I2C_EVENT_TRANSFER_DONE, ARM_I2C_EVENT_SLAVE_TRANSMIT and ARM_I2C_EVENT_SLAVE_RECEIVE.
    ARM_I2C_EVENT_ADDRESS_NACK 5 Occurs in master mode when address is not acknowledged from slave.
    ARM_I2C_EVENT_ARBITRATION_LOST 6 Occurs in master mode when arbitration is lost.
    ARM_I2C_EVENT_BUS_ERROR 7 Occurs when bus error is detected.
    ARM_I2C_EVENT_BUS_CLEAR 8 Occurs after ARM_I2C_BUS_CLEAR Control operation has finished.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__i2c__interface__gr.js b/CMSIS/Documentation/Driver/html/group__i2c__interface__gr.js new file mode 100644 index 0000000..92a5b13 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__i2c__interface__gr.js @@ -0,0 +1,45 @@ +var group__i2c__interface__gr = +[ + [ "I2C Events", "group___i2_c__events.html", "group___i2_c__events" ], + [ "I2C Control Codes", "group__i2c__control__gr.html", "group__i2c__control__gr" ], + [ "I2C Address Flags", "group__i2c__address__flags.html", "group__i2c__address__flags" ], + [ "ARM_DRIVER_I2C", "group__i2c__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___i2_c", [ + [ "GetVersion", "group__i2c__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__i2c__interface__gr.html#a5dfa74ca82e0af995d43da61e08c3103", null ], + [ "Initialize", "group__i2c__interface__gr.html#ab0480980f67e0ebe0461ccea7873a65b", null ], + [ "Uninitialize", "group__i2c__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__i2c__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "MasterTransmit", "group__i2c__interface__gr.html#a9e58f7ea5fd9476e06b45c70b6696b95", null ], + [ "MasterReceive", "group__i2c__interface__gr.html#aa135ff2f4832d35ceb5d7e248159b981", null ], + [ "SlaveTransmit", "group__i2c__interface__gr.html#ae9e3b81b352d4564fd2337fdf0e5488c", null ], + [ "SlaveReceive", "group__i2c__interface__gr.html#a12d2689d6e93985e64b9561a8e4e917b", null ], + [ "GetDataCount", "group__i2c__interface__gr.html#ad421a9b9b07fd6d3e6537396c2b98788", null ], + [ "Control", "group__i2c__interface__gr.html#a6e0f47a92f626a971c5197fca6545505", null ], + [ "GetStatus", "group__i2c__interface__gr.html#ad4b47653bc47cdb02965dd311e88b96a", null ] + ] ], + [ "ARM_I2C_CAPABILITIES", "group__i2c__interface__gr.html#struct_a_r_m___i2_c___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "address_10_bit", "group__i2c__interface__gr.html#a4ffaaf168a9f43e98d710abff5861ed5", null ] + ] ], + [ "ARM_I2C_STATUS", "group__i2c__interface__gr.html#struct_a_r_m___i2_c___s_t_a_t_u_s", [ + [ "busy", "group__i2c__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a", null ], + [ "mode", "group__i2c__interface__gr.html#a6b29e4f37f4482274af785ad5ffe96a7", null ], + [ "direction", "group__i2c__interface__gr.html#a2148ffb99828aeaced6a5655502434ac", null ], + [ "general_call", "group__i2c__interface__gr.html#ab65804439f6f5beda8da30381b0ad22d", null ], + [ "arbitration_lost", "group__i2c__interface__gr.html#ab3e3c8eeeae7fbe3c51dcb3d4104af24", null ], + [ "bus_error", "group__i2c__interface__gr.html#a43b1d210c48f4361c5054ba69bcae702", null ] + ] ], + [ "ARM_I2C_SignalEvent_t", "group__i2c__interface__gr.html#ga24277c48248a09b0dd7f12bbe22ce13c", null ], + [ "ARM_I2C_GetVersion", "group__i2c__interface__gr.html#ga956bd87590c7fb6e23609a0abfb5412c", null ], + [ "ARM_I2C_GetCapabilities", "group__i2c__interface__gr.html#gad20e6731f627aa7b9d6e99a50806122e", null ], + [ "ARM_I2C_Initialize", "group__i2c__interface__gr.html#ga79d2f7d01b3a681d1cf0d70ac6692696", null ], + [ "ARM_I2C_Uninitialize", "group__i2c__interface__gr.html#ga30d8bf600b6b3182a1f867407b3d6e75", null ], + [ "ARM_I2C_PowerControl", "group__i2c__interface__gr.html#ga734a69200e063fdbfb5110062afe9329", null ], + [ "ARM_I2C_MasterTransmit", "group__i2c__interface__gr.html#ga8bf4214580149d5a5d2360f71f0feb94", null ], + [ "ARM_I2C_MasterReceive", "group__i2c__interface__gr.html#gafa22504bcf88a85584dfe6e0dd270ad5", null ], + [ "ARM_I2C_SlaveTransmit", "group__i2c__interface__gr.html#gafe164f30eba78f066272373b98a62cd4", null ], + [ "ARM_I2C_SlaveReceive", "group__i2c__interface__gr.html#gae3c9abccd1d377385d3d4cfe29035164", null ], + [ "ARM_I2C_GetDataCount", "group__i2c__interface__gr.html#ga19db20ad8d7fde84d07f6db4d75f4b7c", null ], + [ "ARM_I2C_Control", "group__i2c__interface__gr.html#ga828f5fa289d065675ef78a9a73d129dc", null ], + [ "ARM_I2C_GetStatus", "group__i2c__interface__gr.html#gaba4e0f3eb4018e7dafd51b675c465f3e", null ], + [ "ARM_I2C_SignalEvent", "group__i2c__interface__gr.html#gad4f93d2895794b416dc8d8e9de91c05e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.html new file mode 100644 index 0000000..30379a0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.html @@ -0,0 +1,228 @@ + + + + + +MCI Bus Data Width +CMSIS-Driver: MCI Bus Data Width + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Bus Data Width
    +
    +
    + +

    Specify the data bus width. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_BUS_DATA_WIDTH_1   (0x00)
     Bus data width: 1 bit (default)
     
    #define ARM_MCI_BUS_DATA_WIDTH_4   (0x01)
     Bus data width: 4 bits.
     
    #define ARM_MCI_BUS_DATA_WIDTH_8   (0x02)
     Bus data width: 8 bits.
     
    #define ARM_MCI_BUS_DATA_WIDTH_4_DDR   (0x03)
     Bus data width: 4 bits, DDR (Dual Data Rate) - MMC only.
     
    #define ARM_MCI_BUS_DATA_WIDTH_8_DDR   (0x04)
     Bus data width: 8 bits, DDR (Dual Data Rate) - MMC only.
     
    +

    Description

    +

    Specify the data bus width.

    +

    The function ARM_MCI_Control with control = ARM_MCI_BUS_DATA_WIDTH specifies with arg the number of data I/O pins on the SD/MMC interface.

    +

    For high-speed memory cards, a 4-bit bus data width should be used (or 8-bit for eMMC). The data fields data_width_4 and data_width_8 of the structure ARM_MCI_CAPABILITIES encode whether the driver supports a specific bus data with.

    +

    The following codes are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_BUS_DATA_WIDTH_1   (0x00)
    +
    + +

    Bus data width: 1 bit (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_DATA_WIDTH_4   (0x01)
    +
    + +

    Bus data width: 4 bits.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_DATA_WIDTH_8   (0x02)
    +
    + +

    Bus data width: 8 bits.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_DATA_WIDTH_4_DDR   (0x03)
    +
    + +

    Bus data width: 4 bits, DDR (Dual Data Rate) - MMC only.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_DATA_WIDTH_8_DDR   (0x04)
    +
    + +

    Bus data width: 8 bits, DDR (Dual Data Rate) - MMC only.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.js new file mode 100644 index 0000000..e91c333 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__bus__data__width__ctrls.js @@ -0,0 +1,8 @@ +var group__mci__bus__data__width__ctrls = +[ + [ "ARM_MCI_BUS_DATA_WIDTH_1", "group__mci__bus__data__width__ctrls.html#gaa09a00d810a4dfd1d1824311ee290585", null ], + [ "ARM_MCI_BUS_DATA_WIDTH_4", "group__mci__bus__data__width__ctrls.html#gaa28150d8c3789e8cf1bcda318f74a28c", null ], + [ "ARM_MCI_BUS_DATA_WIDTH_8", "group__mci__bus__data__width__ctrls.html#ga3bb99a2d98ba9fb8c5bc97fa2b8ef469", null ], + [ "ARM_MCI_BUS_DATA_WIDTH_4_DDR", "group__mci__bus__data__width__ctrls.html#gaccb174bd131f8fd8cd9a56439a8ebb60", null ], + [ "ARM_MCI_BUS_DATA_WIDTH_8_DDR", "group__mci__bus__data__width__ctrls.html#ga7b31f81ae703229095fe9efcfbe80b47", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.html new file mode 100644 index 0000000..28bc0fc --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.html @@ -0,0 +1,267 @@ + + + + + +MCI Bus Speed Mode +CMSIS-Driver: MCI Bus Speed Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Bus Speed Mode
    +
    +
    + +

    Specify the bus speed mode. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_BUS_DEFAULT_SPEED   (0x00)
     SD/MMC: Default Speed mode up to 25/26MHz.
     
    #define ARM_MCI_BUS_HIGH_SPEED   (0x01)
     SD/MMC: High Speed mode up to 50/52MHz.
     
    #define ARM_MCI_BUS_UHS_SDR12   (0x02)
     SD: SDR12 (Single Data Rate) up to 25MHz, 12.5MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_SDR25   (0x03)
     SD: SDR25 (Single Data Rate) up to 50MHz, 25 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_SDR50   (0x04)
     SD: SDR50 (Single Data Rate) up to 100MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_SDR104   (0x05)
     SD: SDR104 (Single Data Rate) up to 208MHz, 104 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    #define ARM_MCI_BUS_UHS_DDR50   (0x06)
     SD: DDR50 (Dual Data Rate) up to 50MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.
     
    +

    Description

    +

    Specify the bus speed mode.

    +

    The function ARM_MCI_Control with control = ARM_MCI_BUS_SPEED configures the bus speed of the MCI to the requested bits/s specified with arg.

    +

    The function ARM_MCI_Control with control = ARM_MCI_BUS_SPEED_MODE configures the bus speed mode of the MCI as specified with arg listed bellow.

    +

    The function ARM_MCI_GetCapabilities lists the supported bus speed modes. Initially, all SD cards use a 3.3 volt electrical interface. Some SD cards can switch to 1.8 volt operation. For example, the use of ultra-high-speed (UHS) SD cards requires 1.8 volt operation and a 4-bit bus data width. The data field uhs_signaling of the structure ARM_MCI_CAPABILITIES encodes whether the driver supports 1.8 volt UHS signaling.

    +
    See Also
    +
    +

    The following codes are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_BUS_DEFAULT_SPEED   (0x00)
    +
    + +

    SD/MMC: Default Speed mode up to 25/26MHz.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_HIGH_SPEED   (0x01)
    +
    + +

    SD/MMC: High Speed mode up to 50/52MHz.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_UHS_SDR12   (0x02)
    +
    + +

    SD: SDR12 (Single Data Rate) up to 25MHz, 12.5MB/s: UHS-I (Ultra High Speed) 1.8V signaling.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_UHS_SDR25   (0x03)
    +
    + +

    SD: SDR25 (Single Data Rate) up to 50MHz, 25 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_UHS_SDR50   (0x04)
    +
    + +

    SD: SDR50 (Single Data Rate) up to 100MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_UHS_SDR104   (0x05)
    +
    + +

    SD: SDR104 (Single Data Rate) up to 208MHz, 104 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_UHS_DDR50   (0x06)
    +
    + +

    SD: DDR50 (Dual Data Rate) up to 50MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signaling.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.js new file mode 100644 index 0000000..1cb041a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__bus__speed__ctrls.js @@ -0,0 +1,10 @@ +var group__mci__bus__speed__ctrls = +[ + [ "ARM_MCI_BUS_DEFAULT_SPEED", "group__mci__bus__speed__ctrls.html#ga601fa8b27ab2e5f6d90c93d54c8f412d", null ], + [ "ARM_MCI_BUS_HIGH_SPEED", "group__mci__bus__speed__ctrls.html#gaabda746ac7d6b4497358ff655a8ea6be", null ], + [ "ARM_MCI_BUS_UHS_SDR12", "group__mci__bus__speed__ctrls.html#ga0473c44a7b65044b3c6a8e7012009a4a", null ], + [ "ARM_MCI_BUS_UHS_SDR25", "group__mci__bus__speed__ctrls.html#gae32422631052307b3c4d269b25415907", null ], + [ "ARM_MCI_BUS_UHS_SDR50", "group__mci__bus__speed__ctrls.html#ga9f326c02391d965918ae619b912b81e7", null ], + [ "ARM_MCI_BUS_UHS_SDR104", "group__mci__bus__speed__ctrls.html#gad2bab563e7bbb4bcf6bdabe6a13dadf4", null ], + [ "ARM_MCI_BUS_UHS_DDR50", "group__mci__bus__speed__ctrls.html#ga04da920a5cac99eab9784527057f1b9c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.html new file mode 100644 index 0000000..402d229 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.html @@ -0,0 +1,261 @@ + + + + + +MCI Card Power Controls +CMSIS-Driver: MCI Card Power Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Card Power Controls
    +
    +
    + +

    Specify Memory Card Power supply voltage. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_POWER_VDD_OFF   (0x01UL << ARM_MCI_POWER_VDD_Pos)
     VDD (VCC) turned off.
     
    #define ARM_MCI_POWER_VDD_3V3   (0x02UL << ARM_MCI_POWER_VDD_Pos)
     VDD (VCC) = 3.3V.
     
    #define ARM_MCI_POWER_VDD_1V8   (0x03UL << ARM_MCI_POWER_VDD_Pos)
     VDD (VCC) = 1.8V.
     
    #define ARM_MCI_POWER_VCCQ_OFF   (0x01UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ turned off
     
    #define ARM_MCI_POWER_VCCQ_3V3   (0x02UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ = 3.3V
     
    #define ARM_MCI_POWER_VCCQ_1V8   (0x03UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ = 1.8V
     
    #define ARM_MCI_POWER_VCCQ_1V2   (0x04UL << ARM_MCI_POWER_VCCQ_Pos)
     eMMC VCCQ = 1.2V
     
    +

    Description

    +

    Specify Memory Card Power supply voltage.

    +

    Specifies the power supply volatge for a memory card. Used with the function ARM_MCI_CardPower as the parameter voltage.

    +

    The following codes are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VDD_OFF   (0x01UL << ARM_MCI_POWER_VDD_Pos)
    +
    + +

    VDD (VCC) turned off.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VDD_3V3   (0x02UL << ARM_MCI_POWER_VDD_Pos)
    +
    + +

    VDD (VCC) = 3.3V.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VDD_1V8   (0x03UL << ARM_MCI_POWER_VDD_Pos)
    +
    + +

    VDD (VCC) = 1.8V.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VCCQ_OFF   (0x01UL << ARM_MCI_POWER_VCCQ_Pos)
    +
    + +

    eMMC VCCQ turned off

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VCCQ_3V3   (0x02UL << ARM_MCI_POWER_VCCQ_Pos)
    +
    + +

    eMMC VCCQ = 3.3V

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VCCQ_1V8   (0x03UL << ARM_MCI_POWER_VCCQ_Pos)
    +
    + +

    eMMC VCCQ = 1.8V

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_POWER_VCCQ_1V2   (0x04UL << ARM_MCI_POWER_VCCQ_Pos)
    +
    + +

    eMMC VCCQ = 1.2V

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.js new file mode 100644 index 0000000..7cee951 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__card__power__ctrls.js @@ -0,0 +1,10 @@ +var group__mci__card__power__ctrls = +[ + [ "ARM_MCI_POWER_VDD_OFF", "group__mci__card__power__ctrls.html#ga288fbd80b384739a80e8f3ec31205cf5", null ], + [ "ARM_MCI_POWER_VDD_3V3", "group__mci__card__power__ctrls.html#ga565ecd36c8d0379fb4172da577cc540d", null ], + [ "ARM_MCI_POWER_VDD_1V8", "group__mci__card__power__ctrls.html#ga2ce8e379c3691da3b51c9c97d61770ef", null ], + [ "ARM_MCI_POWER_VCCQ_OFF", "group__mci__card__power__ctrls.html#ga6929c98a6bc8d898939a95111509220b", null ], + [ "ARM_MCI_POWER_VCCQ_3V3", "group__mci__card__power__ctrls.html#ga91a7201173cc092eaf7f0bcee028871e", null ], + [ "ARM_MCI_POWER_VCCQ_1V8", "group__mci__card__power__ctrls.html#gaaf389e0a139d5808dff8ebb6897d4c7b", null ], + [ "ARM_MCI_POWER_VCCQ_1V2", "group__mci__card__power__ctrls.html#ga5304b3b6cadc5113f841c3d526ab5db6", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.html new file mode 100644 index 0000000..db5c2ec --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.html @@ -0,0 +1,175 @@ + + + + + +MCI CMD Line Mode +CMSIS-Driver: MCI CMD Line Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI CMD Line Mode
    +
    +
    + +

    Specify the CMD line mode (Push-Pull or Open Drain). +More...

    + + + + + + + + +

    +Macros

    #define ARM_MCI_BUS_CMD_PUSH_PULL   (0x00)
     Push-Pull CMD line (default)
     
    #define ARM_MCI_BUS_CMD_OPEN_DRAIN   (0x01)
     Open Drain CMD line (MMC only)
     
    +

    Description

    +

    Specify the CMD line mode (Push-Pull or Open Drain).

    +

    Set the CMD line type with the function ARM_MCI_Control. The CMD line mode is push-pull (default) or open drain (needed for older MMC).

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_BUS_CMD_PUSH_PULL   (0x00)
    +
    + +

    Push-Pull CMD line (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_CMD_OPEN_DRAIN   (0x01)
    +
    + +

    Open Drain CMD line (MMC only)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.js new file mode 100644 index 0000000..fb7a89e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__cmd__line__ctrls.js @@ -0,0 +1,5 @@ +var group__mci__cmd__line__ctrls = +[ + [ "ARM_MCI_BUS_CMD_PUSH_PULL", "group__mci__cmd__line__ctrls.html#gaaed404312d9bc073e3489779a911c7dc", null ], + [ "ARM_MCI_BUS_CMD_OPEN_DRAIN", "group__mci__cmd__line__ctrls.html#gaadf8667985731964d57d1ed672e90fd3", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__control__gr.html b/CMSIS/Documentation/Driver/html/group__mci__control__gr.html new file mode 100644 index 0000000..311ff16 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__control__gr.html @@ -0,0 +1,164 @@ + + + + + +MCI Control Codes +CMSIS-Driver: MCI Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Control Codes
    +
    +
    + +

    Configure and control the MCI using the ARM_MCI_Control. +More...

    + + + + + + + + + + + + + + + + + +

    +Content

     MCI Controls
     Configure and control the MCI interface.
     
     MCI Bus Speed Mode
     Specify the bus speed mode.
     
     MCI Bus Data Width
     Specify the data bus width.
     
     MCI CMD Line Mode
     Specify the CMD line mode (Push-Pull or Open Drain).
     
     MCI Driver Strength
     Specify the driver strength.
     
    +

    Description

    +

    Configure and control the MCI using the ARM_MCI_Control.

    +

    Many parameters of the MCI driver are configured using the ARM_MCI_Control function.

    +

    The various MCI control codes define:

    + +

    Refer to the function ARM_MCI_Control for further details.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__control__gr.js b/CMSIS/Documentation/Driver/html/group__mci__control__gr.js new file mode 100644 index 0000000..d162169 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__control__gr.js @@ -0,0 +1,8 @@ +var group__mci__control__gr = +[ + [ "MCI Controls", "group__mci__mode__ctrls.html", "group__mci__mode__ctrls" ], + [ "MCI Bus Speed Mode", "group__mci__bus__speed__ctrls.html", "group__mci__bus__speed__ctrls" ], + [ "MCI Bus Data Width", "group__mci__bus__data__width__ctrls.html", "group__mci__bus__data__width__ctrls" ], + [ "MCI CMD Line Mode", "group__mci__cmd__line__ctrls.html", "group__mci__cmd__line__ctrls" ], + [ "MCI Driver Strength", "group__mci__driver__strength__ctrls.html", "group__mci__driver__strength__ctrls" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.html new file mode 100644 index 0000000..130ab31 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.html @@ -0,0 +1,214 @@ + + + + + +MCI Driver Strength +CMSIS-Driver: MCI Driver Strength + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Driver Strength
    +
    +
    + +

    Specify the driver strength. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_DRIVER_TYPE_A   (0x01)
     SD UHS-I Driver Type A.
     
    #define ARM_MCI_DRIVER_TYPE_B   (0x00)
     SD UHS-I Driver Type B (default)
     
    #define ARM_MCI_DRIVER_TYPE_C   (0x02)
     SD UHS-I Driver Type C.
     
    #define ARM_MCI_DRIVER_TYPE_D   (0x03)
     SD UHS-I Driver Type D.
     
    +

    Description

    +

    Specify the driver strength.

    +

    The function ARM_MCI_Control with control = ARM_MCI_DRIVER_STRENGTH specifies with arg the driver type of the SD interface.

    +
    See Also
    +
    +

    The following codes are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_DRIVER_TYPE_A   (0x01)
    +
    + +

    SD UHS-I Driver Type A.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_DRIVER_TYPE_B   (0x00)
    +
    + +

    SD UHS-I Driver Type B (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_DRIVER_TYPE_C   (0x02)
    +
    + +

    SD UHS-I Driver Type C.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_DRIVER_TYPE_D   (0x03)
    +
    + +

    SD UHS-I Driver Type D.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.js new file mode 100644 index 0000000..0df57f6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__driver__strength__ctrls.js @@ -0,0 +1,7 @@ +var group__mci__driver__strength__ctrls = +[ + [ "ARM_MCI_DRIVER_TYPE_A", "group__mci__driver__strength__ctrls.html#ga64eb1c4847711a262f084c361b60a912", null ], + [ "ARM_MCI_DRIVER_TYPE_B", "group__mci__driver__strength__ctrls.html#ga078d3c3bc7c9335b92e6445a0abafc46", null ], + [ "ARM_MCI_DRIVER_TYPE_C", "group__mci__driver__strength__ctrls.html#ga3da11696d1fcd3930eb7e70fe097d747", null ], + [ "ARM_MCI_DRIVER_TYPE_D", "group__mci__driver__strength__ctrls.html#ga8185f82b1d8857a3f0eb461d664f2b3d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__event__gr.html b/CMSIS/Documentation/Driver/html/group__mci__event__gr.html new file mode 100644 index 0000000..7198b93 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__event__gr.html @@ -0,0 +1,340 @@ + + + + + +MCI Events +CMSIS-Driver: MCI Events + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Events
    +
    +
    + +

    The MCI driver generates call back events that are notified via the function ARM_MCI_SignalEvent. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_EVENT_CARD_INSERTED   (1UL << 0)
     Memory Card inserted.
     
    #define ARM_MCI_EVENT_CARD_REMOVED   (1UL << 1)
     Memory Card removed.
     
    #define ARM_MCI_EVENT_COMMAND_COMPLETE   (1UL << 2)
     Command completed.
     
    #define ARM_MCI_EVENT_COMMAND_TIMEOUT   (1UL << 3)
     Command timeout.
     
    #define ARM_MCI_EVENT_COMMAND_ERROR   (1UL << 4)
     Command response error (CRC error or invalid response)
     
    #define ARM_MCI_EVENT_TRANSFER_COMPLETE   (1UL << 5)
     Data transfer completed.
     
    #define ARM_MCI_EVENT_TRANSFER_TIMEOUT   (1UL << 6)
     Data transfer timeout.
     
    #define ARM_MCI_EVENT_TRANSFER_ERROR   (1UL << 7)
     Data transfer CRC failed.
     
    #define ARM_MCI_EVENT_SDIO_INTERRUPT   (1UL << 8)
     SD I/O Interrupt.
     
    #define ARM_MCI_EVENT_CCS   (1UL << 9)
     Command Completion Signal (CCS)
     
    #define ARM_MCI_EVENT_CCS_TIMEOUT   (1UL << 10)
     Command Completion Signal (CCS) Timeout.
     
    +

    Description

    +

    The MCI driver generates call back events that are notified via the function ARM_MCI_SignalEvent.

    +

    This section provides the event values for the ARM_MCI_SignalEvent callback function.

    +

    The following call back notification events are generated:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_CARD_INSERTED   (1UL << 0)
    +
    + +

    Memory Card inserted.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_CARD_REMOVED   (1UL << 1)
    +
    + +

    Memory Card removed.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_COMMAND_COMPLETE   (1UL << 2)
    +
    + +

    Command completed.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_COMMAND_TIMEOUT   (1UL << 3)
    +
    + +

    Command timeout.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_COMMAND_ERROR   (1UL << 4)
    +
    + +

    Command response error (CRC error or invalid response)

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_TRANSFER_COMPLETE   (1UL << 5)
    +
    + +

    Data transfer completed.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_TRANSFER_TIMEOUT   (1UL << 6)
    +
    + +

    Data transfer timeout.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_TRANSFER_ERROR   (1UL << 7)
    +
    + +

    Data transfer CRC failed.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_SDIO_INTERRUPT   (1UL << 8)
    +
    + +

    SD I/O Interrupt.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_CCS   (1UL << 9)
    +
    + +

    Command Completion Signal (CCS)

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_EVENT_CCS_TIMEOUT   (1UL << 10)
    +
    + +

    Command Completion Signal (CCS) Timeout.

    +
    See Also
    ARM_MCI_SignalEvent
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__event__gr.js b/CMSIS/Documentation/Driver/html/group__mci__event__gr.js new file mode 100644 index 0000000..e092b98 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__event__gr.js @@ -0,0 +1,14 @@ +var group__mci__event__gr = +[ + [ "ARM_MCI_EVENT_CARD_INSERTED", "group__mci__event__gr.html#gae2cf8ef238c092e94e96a01602f3a23c", null ], + [ "ARM_MCI_EVENT_CARD_REMOVED", "group__mci__event__gr.html#ga92ba748f9324ec13898f10456f17c8cc", null ], + [ "ARM_MCI_EVENT_COMMAND_COMPLETE", "group__mci__event__gr.html#gae69356c75d55103d93ef91ac1bc02b49", null ], + [ "ARM_MCI_EVENT_COMMAND_TIMEOUT", "group__mci__event__gr.html#gab79b3ab4dcd03c38df1e173fa903d822", null ], + [ "ARM_MCI_EVENT_COMMAND_ERROR", "group__mci__event__gr.html#ga373aeb3eca0e4c6d159312488a130442", null ], + [ "ARM_MCI_EVENT_TRANSFER_COMPLETE", "group__mci__event__gr.html#gabc3c468dedaed890683360f2c5c65bea", null ], + [ "ARM_MCI_EVENT_TRANSFER_TIMEOUT", "group__mci__event__gr.html#ga614e7c7226adbaa8ec4165bf8b87ef27", null ], + [ "ARM_MCI_EVENT_TRANSFER_ERROR", "group__mci__event__gr.html#ga5d2cee5ba6d0e40ad505983155706c29", null ], + [ "ARM_MCI_EVENT_SDIO_INTERRUPT", "group__mci__event__gr.html#ga75a050fdfe04e6816e96c938d6a6c197", null ], + [ "ARM_MCI_EVENT_CCS", "group__mci__event__gr.html#ga8161f3960ddf2a3cdc3c4c83148c6099", null ], + [ "ARM_MCI_EVENT_CCS_TIMEOUT", "group__mci__event__gr.html#gafa8cbcd597a05c64901eeb777cc0b74f", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__interface__gr.html b/CMSIS/Documentation/Driver/html/group__mci__interface__gr.html new file mode 100644 index 0000000..960d747 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__interface__gr.html @@ -0,0 +1,1509 @@ + + + + + +MCI Interface +CMSIS-Driver: MCI Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Interface
    +
    +
    + +

    Driver API for Memory Card Interface using SD/MMC interface (Driver_MCI.h) +More...

    + + + + + + + + + + + + + + + + + +

    +Content

     MCI Events
     The MCI driver generates call back events that are notified via the function ARM_MCI_SignalEvent.
     
     MCI Control Codes
     Configure and control the MCI using the ARM_MCI_Control.
     
     MCI Send Command Flags
     Specify various options for sending commands to the card and the expected response.
     
     MCI Transfer Controls
     Specify data transfer mode.
     
     MCI Card Power Controls
     Specify Memory Card Power supply voltage.
     
    + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_MCI
     Access structure of the MCI Driver. More...
     
    struct  ARM_MCI_CAPABILITIES
     MCI Driver Capabilities. More...
     
    struct  ARM_MCI_STATUS
     MCI Status. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_MCI_SignalEvent_t )(uint32_t event)
     Pointer to ARM_MCI_SignalEvent : Signal MCI Card Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_MCI_GetVersion (void)
     Get driver version.
     
    ARM_MCI_CAPABILITIES ARM_MCI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_MCI_Initialize (ARM_MCI_SignalEvent_t cb_event)
     Initialize the Memory Card Interface.
     
    int32_t ARM_MCI_Uninitialize (void)
     De-initialize Memory Card Interface.
     
    int32_t ARM_MCI_PowerControl (ARM_POWER_STATE state)
     Control Memory Card Interface Power.
     
    int32_t ARM_MCI_CardPower (uint32_t voltage)
     Set Memory Card Power supply voltage.
     
    int32_t ARM_MCI_ReadCD (void)
     Read Card Detect (CD) state.
     
    int32_t ARM_MCI_ReadWP (void)
     Read Write Protect (WP) state.
     
    int32_t ARM_MCI_SendCommand (uint32_t cmd, uint32_t arg, uint32_t flags, uint32_t *response)
     Send Command to card and get the response.
     
    int32_t ARM_MCI_SetupTransfer (uint8_t *data, uint32_t block_count, uint32_t block_size, uint32_t mode)
     Setup read or write transfer operation.
     
    int32_t ARM_MCI_AbortTransfer (void)
     Abort current read/write data transfer.
     
    int32_t ARM_MCI_Control (uint32_t control, uint32_t arg)
     Control MCI Interface.
     
    ARM_MCI_STATUS ARM_MCI_GetStatus (void)
     Get MCI status.
     
    void ARM_MCI_SignalEvent (uint32_t event)
     Callback function that signals a MCI Card Event.
     
    +

    Description

    +

    Driver API for Memory Card Interface using SD/MMC interface (Driver_MCI.h)

    +

    The Memory Card Interface (MCI) implements the hardware abstraction layer for Secure Digital (SD) and Multi Media Card (MMC) memory that is typically used as file storage. For embedded systems, SD/MMC devices are available as memory cards in several forms (SD, miniSD, microSD, MMC, MMCmicro) or as non-removable devic es that are directly soldered to the PCB (eMMC).

    +

    References:

    +
      +
    • Wikipedia offers more information about the Secure Digital memory.
    • +
    • Wikipedia offers more information about the MultiMediaCard.
    • +
    • The SD Association provides detailed documentation under www.sdcard.org.
    • +
    • The MultiMediaCard Association (merged with JEDEC) provides detailed documentation under www.jedec.org.
    • +
    +

    Block Diagram

    +

    The MCI driver allows you to exchange data of the SD/MMC memory via SD/MMC interface.

    +

    The following modes are supported by SD/MMC memory cards:

    +
      +
    • SPI bus mode: Serial Peripheral Interface Bus supported by most microcontrollers.
    • +
    • 1-bit SD/MMC Bus mode: proprietary data transfer protocol supported by SD/MMC interfaces.
    • +
    • 4-bit SD/MMC Bus mode: high-speed version of the SD/MMC interface using 4 data I/O pins.
    • +
    • 8-bit SD/MMC Bus mode: high-speed version of the SD/MMC interface using 8 data I/O pins.
    • +
    +
    +SPI_BusMode.png +
    +SD memory connected via SPI interface
    +

     

    +
    +SD_1BitBusMode.png +
    +SD memory connected via 1-bit SD Bus Mode
    +

     

    +
    +SD_4BitBusMode.png +
    +SD memory connected via 4-bit SD Bus Mode
    +

    MCI API

    +

    The following header files define the Application Programming Interface (API) for the MCI interface:

    +
      +
    • Driver_MCI.h : Driver API for Memory Card Interface using SD/MMC interface
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +
    Note
    For parameters, the value marked with (default) is the setting after the driver initialization.
    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_MCI
    +
    +

    Access structure of the MCI Driver.

    +

    The functions of the MCI are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of an MCI provides such an access structure. The instance is identified by a postfix number in the symbol name of the access structure, for example:

    +
      +
    • Driver_MCI0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_MCI1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows connecting the middleware to a specific driver instance Driver_MCIn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_MCI_GetVersion : Get driver version.
     
    ARM_MCI_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_MCI_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_MCI_SignalEvent_t cb_event)
     Pointer to ARM_MCI_Initialize : Initialize MCI Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_MCI_Uninitialize : De-initialize MCI Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_MCI_PowerControl : Control MCI Interface Power.
     
    int32_t(* CardPower )(uint32_t voltage)
     Pointer to ARM_MCI_CardPower : Set card power supply voltage.
     
    int32_t(* ReadCD )(void)
     Pointer to ARM_MCI_ReadCD : Read Card Detect (CD) state.
     
    int32_t(* ReadWP )(void)
     Pointer to ARM_MCI_ReadWP : Read Write Protect (WP) state.
     
    int32_t(* SendCommand )(uint32_t cmd, uint32_t arg, uint32_t flags, uint32_t *response)
     Pointer to ARM_MCI_SendCommand : Send Command to card and get the response.
     
    int32_t(* SetupTransfer )(uint8_t *data, uint32_t block_count, uint32_t block_size, uint32_t mode)
     Pointer to ARM_MCI_SetupTransfer : Setup data transfer operation.
     
    int32_t(* AbortTransfer )(void)
     Pointer to ARM_MCI_AbortTransfer : Abort current data transfer.
     
    int32_t(* Control )(uint32_t control, uint32_t arg)
     Pointer to ARM_MCI_Control : Control MCI Interface.
     
    ARM_MCI_STATUS(* GetStatus )(void)
     Pointer to ARM_MCI_GetStatus : Get MCI status.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_MCI_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_MCI_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_MCI_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_MCI_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_MCI_Initialize : Initialize MCI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_MCI_Uninitialize : De-initialize MCI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_MCI_PowerControl : Control MCI Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* CardPower)(uint32_t voltage)
    +
    + +

    Pointer to ARM_MCI_CardPower : Set card power supply voltage.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ReadCD)(void)
    +
    + +

    Pointer to ARM_MCI_ReadCD : Read Card Detect (CD) state.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ReadWP)(void)
    +
    + +

    Pointer to ARM_MCI_ReadWP : Read Write Protect (WP) state.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SendCommand)(uint32_t cmd, uint32_t arg, uint32_t flags, uint32_t *response)
    +
    + +

    Pointer to ARM_MCI_SendCommand : Send Command to card and get the response.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetupTransfer)(uint8_t *data, uint32_t block_count, uint32_t block_size, uint32_t mode)
    +
    + +

    Pointer to ARM_MCI_SetupTransfer : Setup data transfer operation.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* AbortTransfer)(void)
    +
    + +

    Pointer to ARM_MCI_AbortTransfer : Abort current data transfer.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t control, uint32_t arg)
    +
    + +

    Pointer to ARM_MCI_Control : Control MCI Interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_MCI_STATUS(* GetStatus)(void)
    +
    + +

    Pointer to ARM_MCI_GetStatus : Get MCI status.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_MCI_CAPABILITIES
    +
    +

    MCI Driver Capabilities.

    +

    A MCI driver can be implemented with different capabilities. The data fields of this struct encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +cd_state: 1 +Card Detect State available.
    +uint32_t +cd_event: 1 +Signal Card Detect change event.
    +uint32_t +wp_state: 1 +Write Protect State available.
    +uint32_t +vdd: 1 +Supports VDD Card Power Supply Control.
    +uint32_t +vdd_1v8: 1 +Supports 1.8 VDD Card Power Supply.
    +uint32_t +vccq: 1 +Supports VCCQ Card Power Supply Control (eMMC)
    +uint32_t +vccq_1v8: 1 +Supports 1.8 VCCQ Card Power Supply (eMMC)
    +uint32_t +vccq_1v2: 1 +Supports 1.2 VCCQ Card Power Supply (eMMC)
    +uint32_t +data_width_4: 1 +Supports 4-bit data.
    +uint32_t +data_width_8: 1 +Supports 8-bit data.
    +uint32_t +data_width_4_ddr: 1 +Supports 4-bit data, DDR (Dual Data Rate) - MMC only.
    +uint32_t +data_width_8_ddr: 1 +Supports 8-bit data, DDR (Dual Data Rate) - MMC only.
    +uint32_t +high_speed: 1 +Supports SD/MMC High Speed Mode.
    +uint32_t +uhs_signaling: 1 +Supports SD UHS-I (Ultra High Speed) 1.8V signaling.
    +uint32_t +uhs_tuning: 1 +Supports SD UHS-I tuning.
    +uint32_t +uhs_sdr50: 1 +Supports SD UHS-I SDR50 (Single Data Rate) up to 50MB/s.
    +uint32_t +uhs_sdr104: 1 +Supports SD UHS-I SDR104 (Single Data Rate) up to 104MB/s.
    +uint32_t +uhs_ddr50: 1 +Supports SD UHS-I DDR50 (Dual Data Rate) up to 50MB/s.
    +uint32_t +uhs_driver_type_a: 1 +Supports SD UHS-I Driver Type A.
    +uint32_t +uhs_driver_type_c: 1 +Supports SD UHS-I Driver Type C.
    +uint32_t +uhs_driver_type_d: 1 +Supports SD UHS-I Driver Type D.
    +uint32_t +sdio_interrupt: 1 +Supports SD I/O Interrupt.
    +uint32_t +read_wait: 1 +Supports Read Wait (SD I/O)
    +uint32_t +suspend_resume: 1 +Supports Suspend/Resume (SD I/O)
    +uint32_t +mmc_interrupt: 1 +Supports MMC Interrupt.
    +uint32_t +mmc_boot: 1 +Supports MMC Boot.
    +uint32_t +rst_n: 1 +Supports RST_n Pin Control (eMMC)
    +uint32_t +ccs: 1 +Supports Command Completion Signal (CCS) for CE-ATA.
    +uint32_t +ccs_timeout: 1 +Supports Command Completion Signal (CCS) timeout for CE-ATA.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_MCI_STATUS
    +
    +

    MCI Status.

    +

    Structure with information about the status of the MCI.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +command_active: 1 +Command active flag.
    +uint32_t +command_timeout: 1 +Command timeout flag (cleared on start of next command)
    +uint32_t +command_error: 1 +Command error flag (cleared on start of next command)
    +uint32_t +transfer_active: 1 +Transfer active flag.
    +uint32_t +transfer_timeout: 1 +Transfer timeout flag (cleared on start of next command)
    +uint32_t +transfer_error: 1 +Transfer error flag (cleared on start of next command)
    +uint32_t +sdio_interrupt: 1 +SD I/O Interrupt flag (cleared on start of monitoring)
    +uint32_t +ccs: 1 +CCS flag (cleared on start of next command)
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_MCI_SignalEvent_t
    +
    + +

    Pointer to ARM_MCI_SignalEvent : Signal MCI Card Event.

    +

    Provides the typedef for the callback function ARM_MCI_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_MCI_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_MCI_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_MCI Driver_MCI0;
    +
    ARM_DRIVER_MCI *drv_info;
    +
    +
    void setup_mci (void) {
    + +
    +
    drv_info = &Driver_MCI0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_MCI_CAPABILITIES ARM_MCI_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_MCI_CAPABILITIES
    +

    The function ARM_MCI_GetCapabilities returns information about capabilities in this driver implementation. The data fields of the structure ARM_MCI_CAPABILITIES encode various capabilities, for example supported bus modes ...

    +

    Example:

    +
    extern ARM_DRIVER_MCI Driver_MCI0;
    +
    ARM_DRIVER_MCI *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_MCI_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_MCI0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_MCI_Initialize (ARM_MCI_SignalEvent_t cb_event)
    +
    + +

    Initialize the Memory Card Interface.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_MCI_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_MCI_Initialize initializes the MCI interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    +
      +
    • Initializes the resources needed for the MCI interface.
    • +
    • Registers the ARM_MCI_SignalEvent callback function.
    • +
    +

    The parameter cb_event is a pointer to the ARM_MCI_SignalEvent callback function; use a NULL pointer when no callback signals are required.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_MCI_Uninitialize (void )
    +
    + +

    De-initialize Memory Card Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_MCI_Uninitialize de-initializes the resources of I2C interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_MCI_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control Memory Card Interface Power.

    +
    Parameters
    + + +
    [in]statePower state ARM_POWER_STATE
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_MCI_PowerControl operates the power modes of the MCI interface.

    +

    The parameter state can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode, then the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_MCI_CardPower (uint32_t voltage)
    +
    + +

    Set Memory Card Power supply voltage.

    +
    Parameters
    + + +
    [in]voltageMemory Card Power supply voltage
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_MCI_CardPower operates the memory card power supply voltage.

    +

    The parameter voltage sets the voltage. Not every voltage might be supported by the driver implementation. The structure ARM_MCI_CAPABILITIES encodes the supported voltage. Retrieve the information with the function ARM_MCI_GetCapabilities and verify the data fields.

    +

    The following values:

    + + + + + + + + + + + + + + + + + +
    Parameter voltage Description supported when ARM_MCI_CAPABILITIES
    ARM_MCI_POWER_VDD_OFF VDD (VCC) turned off allways supported
    ARM_MCI_POWER_VDD_3V3 VDD (VCC) = 3.3V data field vdd = 1
    ARM_MCI_POWER_VDD_1V8 VDD (VCC) = 1.8V data field vdd_1v8 = 1
    ARM_MCI_POWER_VCCQ_OFF eMMC VCCQ turned off allways supported
    ARM_MCI_POWER_VCCQ_3V3 eMMC VCCQ = 3.3V data field vccq = 1
    ARM_MCI_POWER_VCCQ_1V8 eMMC VCCQ = 1.8V data field vccq_1v8 = 1
    ARM_MCI_POWER_VCCQ_1V2 eMMC VCCQ = 1.2V data field vccq_1v2 = 1
    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_MCI_ReadCD (void )
    +
    + +

    Read Card Detect (CD) state.

    +
    Returns
    1:card detected, 0:card not detected, or error
    +

    The function ARM_MCI_ReadCD reads the status of the Card Detect (CD) pin.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_MCI_ReadWP (void )
    +
    + +

    Read Write Protect (WP) state.

    +
    Returns
    1:write protected, 0:not write protected, or error
    +

    The function ARM_MCI_ReadWP reads the status of the Write Protect (WP) pin.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_MCI_SendCommand (uint32_t cmd,
    uint32_t arg,
    uint32_t flags,
    uint32_t * response 
    )
    +
    + +

    Send Command to card and get the response.

    +
    Parameters
    + + + + + +
    [in]cmdMemory Card command
    [in]argCommand argument
    [in]flagsCommand flags
    [out]responsePointer to buffer for response
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_MCI_SendCommand

    +
      +
    • sends commands to the memory card
    • +
    • retrieve the response from the card
    • +
    • optionally, start the data transfer.
    • +
    +

    The parameter cmd is the command sent to the card.
    + The parameter arg contains arguments for the command cmd.
    + The parameter flags controls the behavior of the operation and takes predefined values listed in the table below.
    + The parameter response is a pointer to receive data.

    +

    The parameter flags can have the following values:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter flags Description
    ARM_MCI_RESPONSE_NONE No response expected (default)
    ARM_MCI_RESPONSE_SHORT Short response (48-bit) expected
    ARM_MCI_RESPONSE_SHORT_BUSY Short response with busy signal (48-bit) expected
    ARM_MCI_RESPONSE_LONG Long response (136-bit) expected
    ARM_MCI_RESPONSE_INDEX Check command index in response
    ARM_MCI_RESPONSE_CRC Check CRC in response
    ARM_MCI_WAIT_BUSY Wait until busy before sending the command
    ARM_MCI_TRANSFER_DATA Activate Data transfer
    ARM_MCI_CARD_INITIALIZE Execute Memory Card initialization sequence
    ARM_MCI_INTERRUPT_COMMAND Send Interrupt command (CMD40 - MMC only)
    ARM_MCI_INTERRUPT_RESPONSE Send Interrupt response (CMD40 - MMC only)
    ARM_MCI_BOOT_OPERATION Execute Boot operation (MMC only)
    ARM_MCI_BOOT_ALTERNATIVE Execute Alternative Boot operation (MMC only)
    ARM_MCI_BOOT_ACK Expect Boot Acknowledge (MMC only)
    ARM_MCI_CCSD Send Command Completion Signal Disable (CCSD) for CE-ATA device
    ARM_MCI_CCS Expect Command Completion Signal (CCS) for CE-ATA device
    +

    Calling the function ARM_MCI_SendCommand only starts the operation. The function is non-blocking and returns as soon as the driver has started the operation. It is not allowed to call this function again until the operation is in progress.

    +

    After the command is sent the response is retrieved if specified with ARM_MCI_RESPONSE_xxx flags. When the command completes successfully (requested response is received without errors) the ARM_MCI_EVENT_COMMAND_COMPLETE event is generated. In case that response is requested but not received the ARM_MCI_EVENT_COMMAND_TIMEOUT event is generated instead. In case of invalid response (or CRC error) the ARM_MCI_EVENT_COMMAND_ERROR event is generated instead. Progress of command operation can be monitored by calling the ARM_MCI_GetStatus and checking the command_active flag.

    +

    After the command operation the data transfer operation is started if specified with ARM_MCI_TRANSFER_DATA flag. The data transfer needs to be configured before that by calling the ARM_MCI_SetupTransfer. When the data transfer completes successfully the ARM_MCI_EVENT_TRANSFER_COMPLETE event is generated. In case that data transfer is not completed in-time (specified by ARM_MCI_DATA_TIMEOUT) the ARM_MCI_EVENT_TRANSFER_TIMEOUT event is generated instead. In case of CRC errors the ARM_MCI_EVENT_TRANSFER_ERROR event is generated instead. Progress of data transfer operation can be monitored by calling the ARM_MCI_GetStatus and checking the transfer_active flag.

    +

    See also:

    + + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_MCI_SetupTransfer (uint8_t * data,
    uint32_t block_count,
    uint32_t block_size,
    uint32_t mode 
    )
    +
    + +

    Setup read or write transfer operation.

    +
    Parameters
    + + + + + +
    [in,out]dataPointer to data block(s) to be written or read
    [in]block_countNumber of blocks
    [in]block_sizeSize of a block in bytes
    [in]modeTransfer mode
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_MCI_SetupTransfer prepares the data transfer operation that is initiated by calling the function ARM_MCI_SendCommand with the parameter flags = ARM_MCI_TRANSFER_DATA.

    +

    The parameter data is a pointer to the data to transfer.
    + The parameter block_count is the number of blocks to transfer.
    + The parameter block_size is the size of a block.
    + The parameter mode sets the transfer mode and can have the values liste in the table below:

    + + + + + + + + + + + +
    Transfer Directions Description
    ARM_MCI_TRANSFER_READ Read data from MCI
    ARM_MCI_TRANSFER_WRITE Write data to MCI
    ARM_MCI_TRANSFER_BLOCK (default) Block Data transfer
    ARM_MCI_TRANSFER_STREAM Stream Data transfer (MMC only)
    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_MCI_AbortTransfer (void )
    +
    + +

    Abort current read/write data transfer.

    +
    Returns
    Status Error Codes
    +

    The function ARM_MCI_AbortTransfer aborts the active data transfer operation initiated with ARM_MCI_SendCommand.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_MCI_Control (uint32_t control,
    uint32_t arg 
    )
    +
    + +

    Control MCI Interface.

    +
    Parameters
    + + + +
    [in]controlOperation
    [in]argArgument of operation (optional)
    +
    +
    +
    Returns
    Status Error Codes
    +

    Th function ARM_MCI_Control controls the MCI interface and executes various operations.

    +

    The parameter control specifies the operation. Values for control cannot be ORed, but must be called separately in the code.
    + The parameter arg provides, depending on the operation, additional information or sets values.

    +
    Note
    For parameters, the values marked with (default) are the setting after the driver initialization.
    +

    The table lists values for the parameter control.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter control Operation
    ARM_MCI_BUS_SPEED Set the Bus Speed. The parameter arg specifies the speed in bits/s; The function returns the bus speed configured in bits/s.
    ARM_MCI_BUS_SPEED_MODE Set the Bus Speed Mode. Predefined values for arg are listed in the table Bus Speed Mode.
    ARM_MCI_BUS_CMD_MODE Set the CMD Line Mode. Predefined values for arg are listed in the table Bus CMD Line Mode.
    ARM_MCI_BUS_DATA_WIDTH Set data bus width. Predefined values for arg are encoded in Bus Data Width.
    ARM_MCI_DRIVER_STRENGTH Set driver strength. Predefined values for arg are listed in the table Driver Type
    ARM_MCI_CONTROL_RESET Control optional RST_n Pin (eMMC). The parameter arg can have the values [0:inactive(default); 1:active]
    ARM_MCI_CONTROL_CLOCK_IDLE Control clock generation on CLK Pin when idle. The parameter arg can have the values [0:disabled; 1:enabled]
    ARM_MCI_UHS_TUNING_OPERATION Sampling clock Tuning operation (SD UHS-I). The parameter arg can have the values [0:reset; 1:execute]
    ARM_MCI_UHS_TUNING_RESULT Sampling clock Tuning result (SD UHS-I). Returns [0:done; 1:in progress; -1:error]
    ARM_MCI_DATA_TIMEOUT Set Data timeout; The parameter arg sets the timeout in bus cycles.
    ARM_MCI_CSS_TIMEOUT Set Command Completion Signal (CCS) timeout. The parameter arg sets timeout in bus cycles.
    ARM_MCI_MONITOR_SDIO_INTERRUPT Monitor SD I/O interrupt. The parameter arg can have the values [0:disabled(default); 1:enabled]. Monitoring is automatically disabled when an interrupt is recognized.
    ARM_MCI_CONTROL_READ_WAIT Control Read/Wait states for SD I/O. The parameter arg can have the values [0:disabled(default); 1:enabled].
    ARM_MCI_SUSPEND_TRANSFER Suspend Data transfer (SD I/O). Returns the number of remaining bytes to transfer.
    ARM_MCI_RESUME_TRANSFER Resume Data transfer (SD I/O).
    +

    Bus Speed Mode

    +

    The function ARM_MCI_GetCapabilities lists the supported bus speed modes. Initially, all SD cards use a 3.3 volt electrical interface. Some SD cards can switch to 1.8 volt operation. For example, the use of ultra-high-speed (UHS) SD cards requires 1.8 volt operation and a 4-bit bus data width. The bit field ARM_MCI_CAPABILITIES.uhs_signaling encodes whether the driver supports 1.8 volt UHS signaling.

    +

    The control operation ARM_MCI_BUS_SPEED_MODE sets the bus speed mode using the parameter arg.

    + + + + + + + + + + + + + + + + + +
    Parameter arg Bus Speed Mode
    ARM_MCI_BUS_DEFAULT_SPEED (default) Set the bus speed for SD/MMC cards: Default Speed mode up to [25;26]MHz
    ARM_MCI_BUS_HIGH_SPEED Set the bus speed for SD/MMC: High Speed mode up to [50;52]MHz
    ARM_MCI_BUS_UHS_SDR12 Set the bus speed for SD: SDR12 (Single Data Rate) up to 25MHz, 12.5MB/s: UHS-I (Ultra High Speed) 1.8V signalling
    ARM_MCI_BUS_UHS_SDR25 Set the bus speed for SD: SDR25 (Single Data Rate) up to 50MHz, 25 MB/s: UHS-I (Ultra High Speed) 1.8V signalling
    ARM_MCI_BUS_UHS_SDR50 Set the bus speed for SD: SDR50 (Single Data Rate) up to 100MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signalling
    ARM_MCI_BUS_UHS_SDR104 Set the bus speed for SD: SDR104 (Single Data Rate) up to 208MHz, 104 MB/s: UHS-I (Ultra High Speed) 1.8V signalling
    ARM_MCI_BUS_UHS_DDR50 Set the bus speed for SD: DDR50 (Dual Data Rate) up to 50MHz, 50 MB/s: UHS-I (Ultra High Speed) 1.8V signalling
    +

    Bus CMD Line Mode

    +

    The control operation ARM_MCI_BUS_CMD_MODE sets the bus command line mode using the parameter arg.

    + + + + + + + +
    Parameter arg Bus CMD Line Mode
    ARM_MCI_BUS_CMD_PUSH_PULL (default) Set the Push-Pull CMD line
    ARM_MCI_BUS_CMD_OPEN_DRAIN Set the Open Drain CMD line (MMC only)
    +

    Bus Data Width

    +

    Specifies the bus data width (the number of data I/O pins on the SD/MMC interface).

    +

    For high speed memory cards, a 4-bit bus data width should be used (or 8-bit for eMMC). The bit fields ARM_MCI_CAPABILITIES.data_width_4 and ARM_MCI_CAPABILITIES.data_width_8 encode whether the driver supports a specific bus data with.

    +

    The control operation ARM_MCI_BUS_DATA_WIDTH sets the bus data width using the parameter arg.

    + + + + + + + + + + + + + +
    Parameter arg Bus Data Width
    ARM_MCI_BUS_DATA_WIDTH_1 (default) Set the Bus data width to 1 bit
    ARM_MCI_BUS_DATA_WIDTH_4 Set the Bus data width to 4 bits
    ARM_MCI_BUS_DATA_WIDTH_8 Set the Bus data width to 8 bits
    ARM_MCI_BUS_DATA_WIDTH_4_DDR Set the Bus data width to 4 bits, DDR (Dual Data Rate) - MMC only
    ARM_MCI_BUS_DATA_WIDTH_8_DDR Set the Bus data width to 8 bits, DDR (Dual Data Rate) - MMC only
    +

    Driver Type

    +

    Specifies the interface driver type.

    +

    The control operation ARM_MCI_DRIVER_STRENGTH sets the interface driver type using the parameter arg.

    + + + + + + + + + + + +
    Parameter arg Driver Type
    ARM_MCI_DRIVER_TYPE_A Set the interface to SD UHS-I Driver Type A
    ARM_MCI_DRIVER_TYPE_B (default) Set the interface to SD UHS-I Driver Type B
    ARM_MCI_DRIVER_TYPE_C Set the interface to SD UHS-I Driver Type C
    ARM_MCI_DRIVER_TYPE_D Set the interface to SD UHS-I Driver Type D
    +

    Examples:

    +
    // Set Bus Speed to 25MHz
    +
    MCIdrv->Control(ARM_MCI_BUS_SPEED, 25000000);
    +
    +
    // Set High Speed mode
    + +
    +
    // Configure CMD line as Open Drain (MMC only)
    + +
    +
    // Set Bus Data Width = 4bits
    + +
    +
    // Set SD UHS-I Driver Type B
    + +
    +
    // RTS_n Pin is not active by default
    +
    // Assert RTS_n Pin (eMMC)
    +
    MCIdrv->Control(ARM_MCI_CONTROL_RESET, 1);
    +
    // De-assert RTS_n Pin (eMMC)
    +
    MCIdrv->Control(ARM_MCI_CONTROL_RESET, 0);
    +
    +
    // Clock generation on CLK when Idle: hardware specific default behavior
    +
    // Enable Clock generation on CLK when Idle
    +
    MCIdrv->Control(ARM_MCI_CONTROL_CLOCK_IDLE, 1);
    +
    // Disable Clock generation on CLK when Idle
    +
    MCIdrv->Control(ARM_MCI_CONTROL_CLOCK_IDLE, 0);
    +
    +
    // UHS Tuning
    +
    MCIdrv->Control(ARM_MCI_UHS_TUNING_OPERATION, 1); // start tuning
    +
    do {
    +
    status = MCIdrv->Control(ARM_MCI_UHS_TUNING_RESULT, 0/*argument not used*/);
    +
    if (status == -1) { break; /* tuning failed */ }
    +
    } while (status == 1);
    +
    +
    // Set Data Timeout to 12500000 bus cycles (0.5s @25MHz Bus Speed)
    +
    // Default value is hardware specific (typically 2^32-1)
    +
    MCIdrv->Control(ARM_MCI_DATA_TIMEOUT, 12500000);
    +
    +
    // Set CSS Timeout to 1000000 bus cycles
    +
    // Default value is hardware specific
    +
    MCIdrv->Control(ARM_MCI_CSS_TIMEOUT, 1000000);
    +
    +
    // SD I/O Interrupt Monitoring is disabled by default
    +
    // Enable SD I/O Interrupt Monitoring
    +
    MCIdrv->Control(ARM_MCI_MONITOR_SDIO_INTERRUPT, 1);
    +
    // Disable SD I/O Interrupt Monitoring
    +
    MCIdrv->Control(ARM_MCI_MONITOR_SDIO_INTERRUPT, 0);
    +
    +
    // Read/Wait for SD I/O is disabled by default
    +
    // Enable Read/Wait for SD I/O
    +
    MCIdrv->Control(ARM_MCI_CONTROL_READ_WAIT, 1);
    +
    // Disable Read/Wait for SD I/O
    +
    MCIdrv->Control(ARM_MCI_CONTROL_READ_WAIT, 0);
    +
    +
    // Suspend Data transfer (SD I/O)
    +
    MCIdrv->Control(ARM_MCI_SUSPEND_TRANSFER, 0/*argument not used*/);
    +
    +
    // Resume Data transfer (SD I/O)
    +
    MCIdrv->Control(ARM_MCI_RESUME_TRANSFER, 0/*argument not used*/);
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_MCI_STATUS ARM_MCI_GetStatus (void )
    +
    + +

    Get MCI status.

    +
    Returns
    MCI status ARM_MCI_STATUS
    +

    The function ARM_MCI_GetStatus returns the current MCI interface status.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_MCI_SignalEvent (uint32_t event)
    +
    + +

    Callback function that signals a MCI Card Event.

    +
    Parameters
    + + +
    [in]eventMCI Events
    +
    +
    +
    Returns
    none
    +

    The function ARM_MCI_SignalEvent is a callback function registered by the function ARM_MCI_Initialize.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_NAND_CAPABILITIES, which can be retrieved with the function ARM_NAND_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter event Bit Description supported when ARM_NAND_CAPABILITIES
    ARM_MCI_EVENT_CARD_INSERTED 0 Occurs after Memory Card inserted always supported
    ARM_MCI_EVENT_CARD_REMOVED 1 Occurs after Memory Card removal always supported
    ARM_MCI_EVENT_COMMAND_COMPLETE 2 Occurs after command completed successfully always supported
    ARM_MCI_EVENT_COMMAND_TIMEOUT 3 Occurs after command timeout always supported
    ARM_MCI_EVENT_COMMAND_ERROR 4 Occurs after command response error (CRC error or invalid response) always supported
    ARM_MCI_EVENT_TRANSFER_COMPLETE 5 Occurs after data transfer completed successfully always supported
    ARM_MCI_EVENT_TRANSFER_TIMEOUT 6 Occurs after data transfer timeout always supported
    ARM_MCI_EVENT_TRANSFER_ERROR 7 Occurs after data transfer error (CRC failed) always supported
    ARM_MCI_EVENT_SDIO_INTERRUPT 8 Indicates SD I/O Interrupt data field sdio_interrupt = 1
    ARM_MCI_EVENT_CCS 9 Indicates a Command Completion Signal (CCS) data field ccs = 1
    ARM_MCI_EVENT_CCS_TIMEOUT 10 Indicates a Command Completion Signal (CCS) Timeout data field css_timeout = 1
    +

    See also:

    + + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__interface__gr.js b/CMSIS/Documentation/Driver/html/group__mci__interface__gr.js new file mode 100644 index 0000000..6ce13fe --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__interface__gr.js @@ -0,0 +1,79 @@ +var group__mci__interface__gr = +[ + [ "MCI Events", "group__mci__event__gr.html", "group__mci__event__gr" ], + [ "MCI Control Codes", "group__mci__control__gr.html", "group__mci__control__gr" ], + [ "MCI Send Command Flags", "group__mci__send__command__flags__ctrls.html", "group__mci__send__command__flags__ctrls" ], + [ "MCI Transfer Controls", "group__mci__transfer__ctrls.html", "group__mci__transfer__ctrls" ], + [ "MCI Card Power Controls", "group__mci__card__power__ctrls.html", "group__mci__card__power__ctrls" ], + [ "ARM_DRIVER_MCI", "group__mci__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___m_c_i", [ + [ "GetVersion", "group__mci__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__mci__interface__gr.html#a5648b4224e0346ba5e20fefc7e83aee8", null ], + [ "Initialize", "group__mci__interface__gr.html#ae51ec82c310aff0edda6220f9ebfd822", null ], + [ "Uninitialize", "group__mci__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__mci__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "CardPower", "group__mci__interface__gr.html#a73334c737658b227ef3097343d5c78bb", null ], + [ "ReadCD", "group__mci__interface__gr.html#aa4285dd6b0f9b8ca41b6710a478ad641", null ], + [ "ReadWP", "group__mci__interface__gr.html#aee6f8b38f83a51ac05cc4841524b708d", null ], + [ "SendCommand", "group__mci__interface__gr.html#affefb5c1d352082933c2fb0620b37212", null ], + [ "SetupTransfer", "group__mci__interface__gr.html#adc63bab660e8304d78faa1ac429e792b", null ], + [ "AbortTransfer", "group__mci__interface__gr.html#afa8103cc20ba96420b7471455bbb87e4", null ], + [ "Control", "group__mci__interface__gr.html#a6e0f47a92f626a971c5197fca6545505", null ], + [ "GetStatus", "group__mci__interface__gr.html#a2dc63353d6869c0ea2d3d29155c88b49", null ] + ] ], + [ "ARM_MCI_CAPABILITIES", "group__mci__interface__gr.html#struct_a_r_m___m_c_i___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "cd_state", "group__mci__interface__gr.html#af47e73979b028c86c7c1fbe39b095140", null ], + [ "cd_event", "group__mci__interface__gr.html#abcabfa504d3226c723d9bf5debe2f164", null ], + [ "wp_state", "group__mci__interface__gr.html#a02df0162d3a653c36158a7b6a76f6175", null ], + [ "vdd", "group__mci__interface__gr.html#a414baec222a72be862e262f02b821dce", null ], + [ "vdd_1v8", "group__mci__interface__gr.html#abeb0330f882ebed8cabde782652233dd", null ], + [ "vccq", "group__mci__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa", null ], + [ "vccq_1v8", "group__mci__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d", null ], + [ "vccq_1v2", "group__mci__interface__gr.html#af4f95215005e38700ef527714932b361", null ], + [ "data_width_4", "group__mci__interface__gr.html#a950669a8c88b49c8da4c56163b45a79d", null ], + [ "data_width_8", "group__mci__interface__gr.html#a808703d6c70a501464e156e55f5cabd2", null ], + [ "data_width_4_ddr", "group__mci__interface__gr.html#abb1a604b0ee4f7e3510409747890e41e", null ], + [ "data_width_8_ddr", "group__mci__interface__gr.html#acd5f6dce3a548d12c292e8cd17e4e9e2", null ], + [ "high_speed", "group__mci__interface__gr.html#a83ecf7d4472c55362750ef72d8f8f47d", null ], + [ "uhs_signaling", "group__mci__interface__gr.html#a084188480d589cdc8d3e164b9f41bea9", null ], + [ "uhs_tuning", "group__mci__interface__gr.html#a617bf7fb73b49a20398b90098ecc3ec0", null ], + [ "uhs_sdr50", "group__mci__interface__gr.html#a5c3dcb2f8aa6f65408d9a6741abb7b3e", null ], + [ "uhs_sdr104", "group__mci__interface__gr.html#ae07ceef1800252495a79f225142740e7", null ], + [ "uhs_ddr50", "group__mci__interface__gr.html#a1ee73c19020d5f1bedf7c013d0e5f730", null ], + [ "uhs_driver_type_a", "group__mci__interface__gr.html#afe5de4fdc6657aa19fa87577a8d460e5", null ], + [ "uhs_driver_type_c", "group__mci__interface__gr.html#a3c3df9641e7216dd20d3bc395dc4948f", null ], + [ "uhs_driver_type_d", "group__mci__interface__gr.html#a639bebbcb9a3a743f4f232fec82e2bfc", null ], + [ "sdio_interrupt", "group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825", null ], + [ "read_wait", "group__mci__interface__gr.html#a5e38e4ee9cebcc99904e287adc8e6217", null ], + [ "suspend_resume", "group__mci__interface__gr.html#abb03f0187e4658f417b5a24cac33eed9", null ], + [ "mmc_interrupt", "group__mci__interface__gr.html#a3303194ea68bd1094841d4f958f6dbbf", null ], + [ "mmc_boot", "group__mci__interface__gr.html#a072a194948489d4dbd2409b94fdca56b", null ], + [ "rst_n", "group__mci__interface__gr.html#a2e8bd27f2c5c3093c4fec557890b97d4", null ], + [ "ccs", "group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe", null ], + [ "ccs_timeout", "group__mci__interface__gr.html#a9739c230a13b46482feb5475d257e482", null ] + ] ], + [ "ARM_MCI_STATUS", "group__mci__interface__gr.html#struct_a_r_m___m_c_i___s_t_a_t_u_s", [ + [ "command_active", "group__mci__interface__gr.html#aa22ef7c7597e90835bd67d5795ba757e", null ], + [ "command_timeout", "group__mci__interface__gr.html#a56e426979c3872254c156e9ae7eead5b", null ], + [ "command_error", "group__mci__interface__gr.html#afca11cd2ce661c67455a6d75328848cc", null ], + [ "transfer_active", "group__mci__interface__gr.html#a2655d3422b720097b091a28e8bbcea8f", null ], + [ "transfer_timeout", "group__mci__interface__gr.html#a598ae4a196316d6dcb97d07fd337ecdd", null ], + [ "transfer_error", "group__mci__interface__gr.html#a21d4bc1a03e161bd33693619039a6afa", null ], + [ "sdio_interrupt", "group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825", null ], + [ "ccs", "group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe", null ] + ] ], + [ "ARM_MCI_SignalEvent_t", "group__mci__interface__gr.html#ga0d14651f6788c1ffd81544602565faf1", null ], + [ "ARM_MCI_GetVersion", "group__mci__interface__gr.html#ga3418183015dbf3025b94eebaedb00ab1", null ], + [ "ARM_MCI_GetCapabilities", "group__mci__interface__gr.html#ga7e5a78b6e6409189833a0b72a0a3c48a", null ], + [ "ARM_MCI_Initialize", "group__mci__interface__gr.html#ga6f34d4ab362e596ddaf23aac093268cf", null ], + [ "ARM_MCI_Uninitialize", "group__mci__interface__gr.html#gaef8183e77797e74997551d03646d42c2", null ], + [ "ARM_MCI_PowerControl", "group__mci__interface__gr.html#ga19752749d04ed22dc91c4294645e0244", null ], + [ "ARM_MCI_CardPower", "group__mci__interface__gr.html#gab161f80e0eda2815f3e0ebbba1314ff0", null ], + [ "ARM_MCI_ReadCD", "group__mci__interface__gr.html#ga012fca8f1ce5366fce14b708c771c635", null ], + [ "ARM_MCI_ReadWP", "group__mci__interface__gr.html#ga3d70286918405ac81fa795c7d09dc6fd", null ], + [ "ARM_MCI_SendCommand", "group__mci__interface__gr.html#ga5a431da89feabc2b4bc0c27943dff6f2", null ], + [ "ARM_MCI_SetupTransfer", "group__mci__interface__gr.html#gaaec681bcd8e6811c5743e33ee0f35ed1", null ], + [ "ARM_MCI_AbortTransfer", "group__mci__interface__gr.html#ga3dfcf7b7186b711f9b63a096be816fe5", null ], + [ "ARM_MCI_Control", "group__mci__interface__gr.html#gaec0506a2aa4ae75cf6bc02528f36fe30", null ], + [ "ARM_MCI_GetStatus", "group__mci__interface__gr.html#ga8d61aa42ce78d1864fa928c1f273cbd9", null ], + [ "ARM_MCI_SignalEvent", "group__mci__interface__gr.html#gaac2dbd1c1a98436938c5d0d6248cb700", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.html new file mode 100644 index 0000000..f30fc56 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.html @@ -0,0 +1,396 @@ + + + + + +MCI Controls +CMSIS-Driver: MCI Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Controls
    +
    +
    + +

    Configure and control the MCI interface. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_BUS_SPEED   (0x01)
     Set Bus Speed; arg = requested speed in bits/s; returns configured speed in bits/s.
     
    #define ARM_MCI_BUS_SPEED_MODE   (0x02)
     Set Bus Speed Mode as specified with arg.
     
    #define ARM_MCI_BUS_CMD_MODE   (0x03)
     Set CMD Line Mode as specified with arg.
     
    #define ARM_MCI_BUS_DATA_WIDTH   (0x04)
     Set Bus Data Width as specified with arg.
     
    #define ARM_MCI_DRIVER_STRENGTH   (0x05)
     Set SD UHS-I Driver Strength as specified with arg.
     
    #define ARM_MCI_CONTROL_RESET   (0x06)
     Control optional RST_n Pin (eMMC); arg: 0=inactive, 1=active.
     
    #define ARM_MCI_CONTROL_CLOCK_IDLE   (0x07)
     Control Clock generation on CLK Pin when idle; arg: 0=disabled, 1=enabled.
     
    #define ARM_MCI_UHS_TUNING_OPERATION   (0x08)
     Sampling clock Tuning operation (SD UHS-I); arg: 0=reset, 1=execute.
     
    #define ARM_MCI_UHS_TUNING_RESULT   (0x09)
     Sampling clock Tuning result (SD UHS-I); returns: 0=done, 1=in progress, -1=error.
     
    #define ARM_MCI_DATA_TIMEOUT   (0x0A)
     Set Data timeout; arg = timeout in bus cycles.
     
    #define ARM_MCI_CSS_TIMEOUT   (0x0B)
     Set Command Completion Signal (CCS) timeout; arg = timeout in bus cycles.
     
    #define ARM_MCI_MONITOR_SDIO_INTERRUPT   (0x0C)
     Monitor SD I/O interrupt: arg: 0=disabled, 1=enabled.
     
    #define ARM_MCI_CONTROL_READ_WAIT   (0x0D)
     Control Read/Wait for SD I/O; arg: 0=disabled, 1=enabled.
     
    #define ARM_MCI_SUSPEND_TRANSFER   (0x0E)
     Suspend Data transfer (SD I/O); returns number of remaining bytes to transfer.
     
    #define ARM_MCI_RESUME_TRANSFER   (0x0F)
     Resume Data transfer (SD I/O)
     
    +

    Description

    +

    Configure and control the MCI interface.

    +

    The following codes are used as values for the parameter control of the function ARM_MCI_Control to setup the MCI interface.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_BUS_SPEED   (0x01)
    +
    + +

    Set Bus Speed; arg = requested speed in bits/s; returns configured speed in bits/s.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_SPEED_MODE   (0x02)
    +
    + +

    Set Bus Speed Mode as specified with arg.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_CMD_MODE   (0x03)
    +
    + +

    Set CMD Line Mode as specified with arg.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BUS_DATA_WIDTH   (0x04)
    +
    + +

    Set Bus Data Width as specified with arg.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_DRIVER_STRENGTH   (0x05)
    +
    + +

    Set SD UHS-I Driver Strength as specified with arg.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_CONTROL_RESET   (0x06)
    +
    + +

    Control optional RST_n Pin (eMMC); arg: 0=inactive, 1=active.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_CONTROL_CLOCK_IDLE   (0x07)
    +
    + +

    Control Clock generation on CLK Pin when idle; arg: 0=disabled, 1=enabled.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_UHS_TUNING_OPERATION   (0x08)
    +
    + +

    Sampling clock Tuning operation (SD UHS-I); arg: 0=reset, 1=execute.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_UHS_TUNING_RESULT   (0x09)
    +
    + +

    Sampling clock Tuning result (SD UHS-I); returns: 0=done, 1=in progress, -1=error.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_DATA_TIMEOUT   (0x0A)
    +
    + +

    Set Data timeout; arg = timeout in bus cycles.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_CSS_TIMEOUT   (0x0B)
    +
    + +

    Set Command Completion Signal (CCS) timeout; arg = timeout in bus cycles.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_MONITOR_SDIO_INTERRUPT   (0x0C)
    +
    + +

    Monitor SD I/O interrupt: arg: 0=disabled, 1=enabled.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_CONTROL_READ_WAIT   (0x0D)
    +
    + +

    Control Read/Wait for SD I/O; arg: 0=disabled, 1=enabled.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_SUSPEND_TRANSFER   (0x0E)
    +
    + +

    Suspend Data transfer (SD I/O); returns number of remaining bytes to transfer.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESUME_TRANSFER   (0x0F)
    +
    + +

    Resume Data transfer (SD I/O)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.js new file mode 100644 index 0000000..3960852 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__mode__ctrls.js @@ -0,0 +1,18 @@ +var group__mci__mode__ctrls = +[ + [ "ARM_MCI_BUS_SPEED", "group__mci__mode__ctrls.html#ga7f982d2e5aec768307d35a83c65fb3ef", null ], + [ "ARM_MCI_BUS_SPEED_MODE", "group__mci__mode__ctrls.html#gaf7ede525eabc618fbbb9f7a294c8ed96", null ], + [ "ARM_MCI_BUS_CMD_MODE", "group__mci__mode__ctrls.html#ga8b7571e37520c07d8ef4f697f3886715", null ], + [ "ARM_MCI_BUS_DATA_WIDTH", "group__mci__mode__ctrls.html#ga876d964d0eeacdb16e93f7558a544587", null ], + [ "ARM_MCI_DRIVER_STRENGTH", "group__mci__mode__ctrls.html#ga78068f519139f2ae7b09e0608070aaf6", null ], + [ "ARM_MCI_CONTROL_RESET", "group__mci__mode__ctrls.html#ga21e403e8c3fa8cc75431a513813f0a16", null ], + [ "ARM_MCI_CONTROL_CLOCK_IDLE", "group__mci__mode__ctrls.html#ga889473fbfbdcb89aab4d53cc8a13f615", null ], + [ "ARM_MCI_UHS_TUNING_OPERATION", "group__mci__mode__ctrls.html#ga98853f60bdc085aeeccd66f7bdf22d3d", null ], + [ "ARM_MCI_UHS_TUNING_RESULT", "group__mci__mode__ctrls.html#gabd3af448e26da5657c1c5a03330476b7", null ], + [ "ARM_MCI_DATA_TIMEOUT", "group__mci__mode__ctrls.html#ga09a58821e42595f0c2e55f8cc2d32ceb", null ], + [ "ARM_MCI_CSS_TIMEOUT", "group__mci__mode__ctrls.html#gae97b1a819a5d326b1f1009b0d6d48b5a", null ], + [ "ARM_MCI_MONITOR_SDIO_INTERRUPT", "group__mci__mode__ctrls.html#ga19fd7d3b74ac48ca74a2e138b3ee9963", null ], + [ "ARM_MCI_CONTROL_READ_WAIT", "group__mci__mode__ctrls.html#gaaa10c5aa7a8108aa59c3734b3eec2e3a", null ], + [ "ARM_MCI_SUSPEND_TRANSFER", "group__mci__mode__ctrls.html#ga04cf174b0ef13240f26225bf8e45a4a0", null ], + [ "ARM_MCI_RESUME_TRANSFER", "group__mci__mode__ctrls.html#gac4907319499072fddf61f2f83b0dd966", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.html new file mode 100644 index 0000000..6c0d65a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.html @@ -0,0 +1,414 @@ + + + + + +MCI Send Command Flags +CMSIS-Driver: MCI Send Command Flags + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Send Command Flags
    +
    +
    + +

    Specify various options for sending commands to the card and the expected response. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_RESPONSE_NONE   (0UL << ARM_MCI_RESPONSE_Pos)
     No response expected (default)
     
    #define ARM_MCI_RESPONSE_SHORT   (1UL << ARM_MCI_RESPONSE_Pos)
     Short response (48-bit)
     
    #define ARM_MCI_RESPONSE_SHORT_BUSY   (2UL << ARM_MCI_RESPONSE_Pos)
     Short response with busy signal (48-bit)
     
    #define ARM_MCI_RESPONSE_LONG   (3UL << ARM_MCI_RESPONSE_Pos)
     Long response (136-bit)
     
    #define ARM_MCI_RESPONSE_INDEX   (1UL << 2)
     Check command index in response.
     
    #define ARM_MCI_RESPONSE_CRC   (1UL << 3)
     Check CRC in response.
     
    #define ARM_MCI_WAIT_BUSY   (1UL << 4)
     Wait until busy before sending the command.
     
    #define ARM_MCI_TRANSFER_DATA   (1UL << 5)
     Activate Data transfer.
     
    #define ARM_MCI_CARD_INITIALIZE   (1UL << 6)
     Execute Memory Card initialization sequence.
     
    #define ARM_MCI_INTERRUPT_COMMAND   (1UL << 7)
     Send Interrupt command (CMD40 - MMC only)
     
    #define ARM_MCI_INTERRUPT_RESPONSE   (1UL << 8)
     Send Interrupt response (CMD40 - MMC only)
     
    #define ARM_MCI_BOOT_OPERATION   (1UL << 9)
     Execute Boot operation (MMC only)
     
    #define ARM_MCI_BOOT_ALTERNATIVE   (1UL << 10)
     Execute Alternative Boot operation (MMC only)
     
    #define ARM_MCI_BOOT_ACK   (1UL << 11)
     Expect Boot Acknowledge (MMC only)
     
    #define ARM_MCI_CCSD   (1UL << 12)
     Send Command Completion Signal Disable (CCSD) for CE-ATA device.
     
    #define ARM_MCI_CCS   (1UL << 13)
     Expect Command Completion Signal (CCS) for CE-ATA device.
     
    +

    Description

    +

    Specify various options for sending commands to the card and the expected response.

    +

    ARM_MCI_xxx flags are sent with the function ARM_MCI_SendCommand as the parameter flag. It controls the behavior of the command sent to the card and provides information about the expected response from the card.

    +

    The following codes are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_NONE   (0UL << ARM_MCI_RESPONSE_Pos)
    +
    + +

    No response expected (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_SHORT   (1UL << ARM_MCI_RESPONSE_Pos)
    +
    + +

    Short response (48-bit)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_SHORT_BUSY   (2UL << ARM_MCI_RESPONSE_Pos)
    +
    + +

    Short response with busy signal (48-bit)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_LONG   (3UL << ARM_MCI_RESPONSE_Pos)
    +
    + +

    Long response (136-bit)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_INDEX   (1UL << 2)
    +
    + +

    Check command index in response.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_RESPONSE_CRC   (1UL << 3)
    +
    + +

    Check CRC in response.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_WAIT_BUSY   (1UL << 4)
    +
    + +

    Wait until busy before sending the command.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_TRANSFER_DATA   (1UL << 5)
    +
    + +

    Activate Data transfer.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_CARD_INITIALIZE   (1UL << 6)
    +
    + +

    Execute Memory Card initialization sequence.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_INTERRUPT_COMMAND   (1UL << 7)
    +
    + +

    Send Interrupt command (CMD40 - MMC only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_INTERRUPT_RESPONSE   (1UL << 8)
    +
    + +

    Send Interrupt response (CMD40 - MMC only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BOOT_OPERATION   (1UL << 9)
    +
    + +

    Execute Boot operation (MMC only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BOOT_ALTERNATIVE   (1UL << 10)
    +
    + +

    Execute Alternative Boot operation (MMC only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_BOOT_ACK   (1UL << 11)
    +
    + +

    Expect Boot Acknowledge (MMC only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_CCSD   (1UL << 12)
    +
    + +

    Send Command Completion Signal Disable (CCSD) for CE-ATA device.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_CCS   (1UL << 13)
    +
    + +

    Expect Command Completion Signal (CCS) for CE-ATA device.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.js new file mode 100644 index 0000000..91c5e54 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__send__command__flags__ctrls.js @@ -0,0 +1,19 @@ +var group__mci__send__command__flags__ctrls = +[ + [ "ARM_MCI_RESPONSE_NONE", "group__mci__send__command__flags__ctrls.html#ga70934cef80884e8c75fb4eebf8452118", null ], + [ "ARM_MCI_RESPONSE_SHORT", "group__mci__send__command__flags__ctrls.html#gaa5ddf1cf772b234e3c247039effd0e7b", null ], + [ "ARM_MCI_RESPONSE_SHORT_BUSY", "group__mci__send__command__flags__ctrls.html#gaa1d541b0edf32ec05e68d623c727ef9c", null ], + [ "ARM_MCI_RESPONSE_LONG", "group__mci__send__command__flags__ctrls.html#gac49c7b39a7c51bd2193e048835bec2fb", null ], + [ "ARM_MCI_RESPONSE_INDEX", "group__mci__send__command__flags__ctrls.html#ga497abf878c6e12f54cc7ddb92da76c4a", null ], + [ "ARM_MCI_RESPONSE_CRC", "group__mci__send__command__flags__ctrls.html#ga6ab3f4c1a2bf0fdb81fbcf7a5698f2de", null ], + [ "ARM_MCI_WAIT_BUSY", "group__mci__send__command__flags__ctrls.html#ga68e879799bb27a1b13baf57ed19d719d", null ], + [ "ARM_MCI_TRANSFER_DATA", "group__mci__send__command__flags__ctrls.html#ga8aa566f69aa74ed416213df6ca3267bd", null ], + [ "ARM_MCI_CARD_INITIALIZE", "group__mci__send__command__flags__ctrls.html#ga81606bd94ce782e2c3764b913f929f60", null ], + [ "ARM_MCI_INTERRUPT_COMMAND", "group__mci__send__command__flags__ctrls.html#gab2bfeedf1dc2df1872ebbcc559a7385a", null ], + [ "ARM_MCI_INTERRUPT_RESPONSE", "group__mci__send__command__flags__ctrls.html#gabc31b6b26988998c84c92a9a698fd5dc", null ], + [ "ARM_MCI_BOOT_OPERATION", "group__mci__send__command__flags__ctrls.html#gae04254f51dfd9838583206cae0a5f8f7", null ], + [ "ARM_MCI_BOOT_ALTERNATIVE", "group__mci__send__command__flags__ctrls.html#ga30bd304652d4f870ee7ce61c266a9348", null ], + [ "ARM_MCI_BOOT_ACK", "group__mci__send__command__flags__ctrls.html#ga8c55bc0a310630d49810802ccd1bb10d", null ], + [ "ARM_MCI_CCSD", "group__mci__send__command__flags__ctrls.html#gab9df5169b37621764f8bb0f93db5281a", null ], + [ "ARM_MCI_CCS", "group__mci__send__command__flags__ctrls.html#gab82c472e4ca3fca12ae3291e25997f00", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.html b/CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.html new file mode 100644 index 0000000..ce5948d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.html @@ -0,0 +1,210 @@ + + + + + +MCI Transfer Controls +CMSIS-Driver: MCI Transfer Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    MCI Transfer Controls
    +
    +
    + +

    Specify data transfer mode. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_MCI_TRANSFER_READ   (0UL << 0)
     Data Read Transfer (from MCI)
     
    #define ARM_MCI_TRANSFER_WRITE   (1UL << 0)
     Data Write Transfer (to MCI)
     
    #define ARM_MCI_TRANSFER_BLOCK   (0UL << 1)
     Block Data transfer (default)
     
    #define ARM_MCI_TRANSFER_STREAM   (1UL << 1)
     Stream Data transfer (MMC only)
     
    +

    Description

    +

    Specify data transfer mode.

    +

    Data transfer codes specifies the transfer direction and type and are used with the function ARM_MCI_SetupTransfer as the parameter mode.

    +

    The following codes are defined:

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_MCI_TRANSFER_READ   (0UL << 0)
    +
    + +

    Data Read Transfer (from MCI)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_TRANSFER_WRITE   (1UL << 0)
    +
    + +

    Data Write Transfer (to MCI)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_TRANSFER_BLOCK   (0UL << 1)
    +
    + +

    Block Data transfer (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_MCI_TRANSFER_STREAM   (1UL << 1)
    +
    + +

    Stream Data transfer (MMC only)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.js b/CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.js new file mode 100644 index 0000000..8238ec6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__mci__transfer__ctrls.js @@ -0,0 +1,7 @@ +var group__mci__transfer__ctrls = +[ + [ "ARM_MCI_TRANSFER_READ", "group__mci__transfer__ctrls.html#gaa6f3be235a9dce5c66be8fe64f399846", null ], + [ "ARM_MCI_TRANSFER_WRITE", "group__mci__transfer__ctrls.html#gaddc60aab15f75993a99f98f71ddbd50c", null ], + [ "ARM_MCI_TRANSFER_BLOCK", "group__mci__transfer__ctrls.html#ga4ced782e7c0c70d5f0edbddd1e48323b", null ], + [ "ARM_MCI_TRANSFER_STREAM", "group__mci__transfer__ctrls.html#gac7db0cffd571e60758627d889ba7a432", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.html b/CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.html new file mode 100644 index 0000000..7b94e51 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.html @@ -0,0 +1,515 @@ + + + + + +NAND Bus Modes +CMSIS-Driver: NAND Bus Modes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Bus Modes
    +
    +
    + +

    Specify bus mode of the NAND interface. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_NAND_BUS_SDR   (0x00UL << ARM_NAND_BUS_INTERFACE_Pos)
     Data Interface: SDR (Single Data Rate) - Traditional interface (default)
     
    #define ARM_NAND_BUS_DDR   (0x01UL << ARM_NAND_BUS_INTERFACE_Pos)
     Data Interface: NV-DDR (Double Data Rate)
     
    #define ARM_NAND_BUS_DDR2   (0x02UL << ARM_NAND_BUS_INTERFACE_Pos)
     Data Interface: NV-DDR2 (Double Data Rate)
     
    #define ARM_NAND_BUS_TIMING_MODE_0   (0x00UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 0 (default)
     
    #define ARM_NAND_BUS_TIMING_MODE_1   (0x01UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 1.
     
    #define ARM_NAND_BUS_TIMING_MODE_2   (0x02UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 2.
     
    #define ARM_NAND_BUS_TIMING_MODE_3   (0x03UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 3.
     
    #define ARM_NAND_BUS_TIMING_MODE_4   (0x04UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 4 (SDR EDO capable)
     
    #define ARM_NAND_BUS_TIMING_MODE_5   (0x05UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 5 (SDR EDO capable)
     
    #define ARM_NAND_BUS_TIMING_MODE_6   (0x06UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 6 (NV-DDR2 only)
     
    #define ARM_NAND_BUS_TIMING_MODE_7   (0x07UL << ARM_NAND_BUS_TIMING_MODE_Pos)
     Timing Mode 7 (NV-DDR2 only)
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_0   (0x00UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 0 (default)
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_1   (0x01UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 1.
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_2   (0x02UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 2.
     
    #define ARM_NAND_BUS_DDR2_DO_WCYC_4   (0x03UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
     DDR2 Data Output Warm-up cycles: 4.
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_0   (0x00UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 0 (default)
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_1   (0x01UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 1.
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_2   (0x02UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 2.
     
    #define ARM_NAND_BUS_DDR2_DI_WCYC_4   (0x03UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
     DDR2 Data Input Warm-up cycles: 4.
     
    #define ARM_NAND_BUS_DDR2_VEN   (1UL << 16)
     DDR2 Enable external VREFQ as reference.
     
    #define ARM_NAND_BUS_DDR2_CMPD   (1UL << 17)
     DDR2 Enable complementary DQS (DQS_c) signal.
     
    #define ARM_NAND_BUS_DDR2_CMPR   (1UL << 18)
     DDR2 Enable complementary RE_n (RE_c) signal.
     
    +

    Description

    +

    Specify bus mode of the NAND interface.

    +

    The defines can be used in the function ARM_NAND_Control for the parameter arg and with the ARM_NAND_BUS_MODE as the control code.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_BUS_SDR   (0x00UL << ARM_NAND_BUS_INTERFACE_Pos)
    +
    + +

    Data Interface: SDR (Single Data Rate) - Traditional interface (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR   (0x01UL << ARM_NAND_BUS_INTERFACE_Pos)
    +
    + +

    Data Interface: NV-DDR (Double Data Rate)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2   (0x02UL << ARM_NAND_BUS_INTERFACE_Pos)
    +
    + +

    Data Interface: NV-DDR2 (Double Data Rate)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_0   (0x00UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 0 (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_1   (0x01UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 1.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_2   (0x02UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 2.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_3   (0x03UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 3.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_4   (0x04UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 4 (SDR EDO capable)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_5   (0x05UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 5 (SDR EDO capable)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_6   (0x06UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 6 (NV-DDR2 only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_TIMING_MODE_7   (0x07UL << ARM_NAND_BUS_TIMING_MODE_Pos)
    +
    + +

    Timing Mode 7 (NV-DDR2 only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DO_WCYC_0   (0x00UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
    +
    + +

    DDR2 Data Output Warm-up cycles: 0 (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DO_WCYC_1   (0x01UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
    +
    + +

    DDR2 Data Output Warm-up cycles: 1.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DO_WCYC_2   (0x02UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
    +
    + +

    DDR2 Data Output Warm-up cycles: 2.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DO_WCYC_4   (0x03UL << ARM_NAND_BUS_DDR2_DO_WCYC_Pos)
    +
    + +

    DDR2 Data Output Warm-up cycles: 4.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DI_WCYC_0   (0x00UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
    +
    + +

    DDR2 Data Input Warm-up cycles: 0 (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DI_WCYC_1   (0x01UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
    +
    + +

    DDR2 Data Input Warm-up cycles: 1.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DI_WCYC_2   (0x02UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
    +
    + +

    DDR2 Data Input Warm-up cycles: 2.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_DI_WCYC_4   (0x03UL << ARM_NAND_BUS_DDR2_DI_WCYC_Pos)
    +
    + +

    DDR2 Data Input Warm-up cycles: 4.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_VEN   (1UL << 16)
    +
    + +

    DDR2 Enable external VREFQ as reference.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_CMPD   (1UL << 17)
    +
    + +

    DDR2 Enable complementary DQS (DQS_c) signal.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DDR2_CMPR   (1UL << 18)
    +
    + +

    DDR2 Enable complementary RE_n (RE_c) signal.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.js b/CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.js new file mode 100644 index 0000000..6761cf0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__bus__mode__codes.js @@ -0,0 +1,25 @@ +var group__nand__bus__mode__codes = +[ + [ "ARM_NAND_BUS_SDR", "group__nand__bus__mode__codes.html#gac7743aeb6411b97f9fc6a24b556f4963", null ], + [ "ARM_NAND_BUS_DDR", "group__nand__bus__mode__codes.html#ga82b8261b3d0d85881535adada318a7df", null ], + [ "ARM_NAND_BUS_DDR2", "group__nand__bus__mode__codes.html#ga13c102201d6021db184a2f068656c518", null ], + [ "ARM_NAND_BUS_TIMING_MODE_0", "group__nand__bus__mode__codes.html#ga971e574ac412bbba445055e9afc384ba", null ], + [ "ARM_NAND_BUS_TIMING_MODE_1", "group__nand__bus__mode__codes.html#ga475a339e929eca46e11bc8a7b330aa45", null ], + [ "ARM_NAND_BUS_TIMING_MODE_2", "group__nand__bus__mode__codes.html#gaed6154fb03b5516faf0bfd11d7a46309", null ], + [ "ARM_NAND_BUS_TIMING_MODE_3", "group__nand__bus__mode__codes.html#gacbc4e07e1af6ef0e4c656428e81464a9", null ], + [ "ARM_NAND_BUS_TIMING_MODE_4", "group__nand__bus__mode__codes.html#ga709d51a5215cd23ce2d85aec57141456", null ], + [ "ARM_NAND_BUS_TIMING_MODE_5", "group__nand__bus__mode__codes.html#gaee3cad14ce2b8b9af69149bf74597791", null ], + [ "ARM_NAND_BUS_TIMING_MODE_6", "group__nand__bus__mode__codes.html#ga4a3524e0eba994b3a66e06cde877f0f6", null ], + [ "ARM_NAND_BUS_TIMING_MODE_7", "group__nand__bus__mode__codes.html#gaa63d75f5f2b48a7345a066d58de1bd23", null ], + [ "ARM_NAND_BUS_DDR2_DO_WCYC_0", "group__nand__bus__mode__codes.html#ga77348df5f5c2c96bcaeec60b6da02c1b", null ], + [ "ARM_NAND_BUS_DDR2_DO_WCYC_1", "group__nand__bus__mode__codes.html#ga5839be0b4b2eb930ec039a3403b5e89e", null ], + [ "ARM_NAND_BUS_DDR2_DO_WCYC_2", "group__nand__bus__mode__codes.html#ga10a1ef3be69bfa7e6cc657bee751a077", null ], + [ "ARM_NAND_BUS_DDR2_DO_WCYC_4", "group__nand__bus__mode__codes.html#ga7f9e8416c4a4e20c4a04323e39f2100d", null ], + [ "ARM_NAND_BUS_DDR2_DI_WCYC_0", "group__nand__bus__mode__codes.html#gaeee1853dea5e96cb19d2596cc0e70169", null ], + [ "ARM_NAND_BUS_DDR2_DI_WCYC_1", "group__nand__bus__mode__codes.html#ga42560a1f046e20cc4956276156c4ce25", null ], + [ "ARM_NAND_BUS_DDR2_DI_WCYC_2", "group__nand__bus__mode__codes.html#gaad2e7807292d84a5070143626f5c2756", null ], + [ "ARM_NAND_BUS_DDR2_DI_WCYC_4", "group__nand__bus__mode__codes.html#ga3ebb54a1ae971cd34f3c8fc9ff3ab6d5", null ], + [ "ARM_NAND_BUS_DDR2_VEN", "group__nand__bus__mode__codes.html#ga465ae06a6e097959620346304182e273", null ], + [ "ARM_NAND_BUS_DDR2_CMPD", "group__nand__bus__mode__codes.html#gad38354e4a34adbf881afc7f89ff06e89", null ], + [ "ARM_NAND_BUS_DDR2_CMPR", "group__nand__bus__mode__codes.html#ga8a2d599082b9fe56cee1c6454bb3c6a1", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__control__codes.html b/CMSIS/Documentation/Driver/html/group__nand__control__codes.html new file mode 100644 index 0000000..101c245 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__control__codes.html @@ -0,0 +1,226 @@ + + + + + +NAND Mode Controls +CMSIS-Driver: NAND Mode Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Mode Controls
    +
    +
    + +

    Specify operation modes of the NAND interface. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_NAND_BUS_MODE   (0x01)
     Set Bus Mode as specified with arg.
     
    #define ARM_NAND_BUS_DATA_WIDTH   (0x02)
     Set Bus Data Width as specified with arg.
     
    #define ARM_NAND_DRIVER_STRENGTH   (0x03)
     Set Driver Strength as specified with arg.
     
    #define ARM_NAND_DEVICE_READY_EVENT   (0x04)
     Generate ARM_NAND_EVENT_DEVICE_READY; arg: 0=disabled (default), 1=enabled.
     
    #define ARM_NAND_DRIVER_READY_EVENT   (0x05)
     Generate ARM_NAND_EVENT_DRIVER_READY; arg: 0=disabled (default), 1=enabled.
     
    +

    Description

    +

    Specify operation modes of the NAND interface.

    +

    These controls can be used in the function ARM_NAND_Control for the parameter control.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_BUS_MODE   (0x01)
    +
    + +

    Set Bus Mode as specified with arg.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DATA_WIDTH   (0x02)
    +
    + +

    Set Bus Data Width as specified with arg.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_DRIVER_STRENGTH   (0x03)
    +
    + +

    Set Driver Strength as specified with arg.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_DEVICE_READY_EVENT   (0x04)
    +
    + +

    Generate ARM_NAND_EVENT_DEVICE_READY; arg: 0=disabled (default), 1=enabled.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_DRIVER_READY_EVENT   (0x05)
    +
    + +

    Generate ARM_NAND_EVENT_DRIVER_READY; arg: 0=disabled (default), 1=enabled.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__control__codes.js b/CMSIS/Documentation/Driver/html/group__nand__control__codes.js new file mode 100644 index 0000000..63d6130 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__control__codes.js @@ -0,0 +1,8 @@ +var group__nand__control__codes = +[ + [ "ARM_NAND_BUS_MODE", "group__nand__control__codes.html#ga9b063c3078e86b50d4aa892518b2e2d8", null ], + [ "ARM_NAND_BUS_DATA_WIDTH", "group__nand__control__codes.html#ga2d3356f5b47871c465ae7136a2c533f4", null ], + [ "ARM_NAND_DRIVER_STRENGTH", "group__nand__control__codes.html#ga5d1d46198404fe115b013bdae7af2a2f", null ], + [ "ARM_NAND_DEVICE_READY_EVENT", "group__nand__control__codes.html#ga1bffc9f341e704ee0e845d86a2989921", null ], + [ "ARM_NAND_DRIVER_READY_EVENT", "group__nand__control__codes.html#gaab6dea1b565aeb53e360876a4e50783c", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__control__gr.html b/CMSIS/Documentation/Driver/html/group__nand__control__gr.html new file mode 100644 index 0000000..2ec7cdf --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__control__gr.html @@ -0,0 +1,152 @@ + + + + + +NAND Control Codes +CMSIS-Driver: NAND Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Control Codes
    +
    +
    + +

    Many parameters of the NAND driver are configured using the ARM_NAND_Control function. +More...

    + + + + + + + + + + + + + + +

    +Content

     NAND Mode Controls
     Specify operation modes of the NAND interface.
     
     NAND Bus Modes
     Specify bus mode of the NAND interface.
     
     NAND Data Bus Width
     Specify data bus width of the NAND interface.
     
     NAND Driver Strength
     Specify driver strength of the NAND interface.
     
    +

    Description

    +

    Many parameters of the NAND driver are configured using the ARM_NAND_Control function.

    +

    Refer to the function ARM_NAND_Control for further details.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__control__gr.js b/CMSIS/Documentation/Driver/html/group__nand__control__gr.js new file mode 100644 index 0000000..1788dfd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__control__gr.js @@ -0,0 +1,7 @@ +var group__nand__control__gr = +[ + [ "NAND Mode Controls", "group__nand__control__codes.html", "group__nand__control__codes" ], + [ "NAND Bus Modes", "group__nand__bus__mode__codes.html", "group__nand__bus__mode__codes" ], + [ "NAND Data Bus Width", "group__nand__data__bus__width__codes.html", "group__nand__data__bus__width__codes" ], + [ "NAND Driver Strength", "group__nand__driver__strength__codes.html", "group__nand__driver__strength__codes" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.html b/CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.html new file mode 100644 index 0000000..645991b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.html @@ -0,0 +1,175 @@ + + + + + +NAND Data Bus Width +CMSIS-Driver: NAND Data Bus Width + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Data Bus Width
    +
    +
    + +

    Specify data bus width of the NAND interface. +More...

    + + + + + + + + +

    +Macros

    #define ARM_NAND_BUS_DATA_WIDTH_8   (0x00)
     Bus Data Width: 8 bit (default)
     
    #define ARM_NAND_BUS_DATA_WIDTH_16   (0x01)
     Bus Data Width: 16 bit.
     
    +

    Description

    +

    Specify data bus width of the NAND interface.

    +

    The defines can be used in the function ARM_NAND_Control for the parameter arg and with the ARM_NAND_BUS_DATA_WIDTH as the control code.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DATA_WIDTH_8   (0x00)
    +
    + +

    Bus Data Width: 8 bit (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_BUS_DATA_WIDTH_16   (0x01)
    +
    + +

    Bus Data Width: 16 bit.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.js b/CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.js new file mode 100644 index 0000000..3371e54 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__data__bus__width__codes.js @@ -0,0 +1,5 @@ +var group__nand__data__bus__width__codes = +[ + [ "ARM_NAND_BUS_DATA_WIDTH_8", "group__nand__data__bus__width__codes.html#ga578051cc193ae0b7125aec8007071d21", null ], + [ "ARM_NAND_BUS_DATA_WIDTH_16", "group__nand__data__bus__width__codes.html#ga49e0e3a946a4d9f26dbd5b32ccc3b2f3", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.html b/CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.html new file mode 100644 index 0000000..d84fe79 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.html @@ -0,0 +1,196 @@ + + + + + +NAND ECC Codes +CMSIS-Driver: NAND ECC Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND ECC Codes
    +
    +
    + +

    Specify ECC codes. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_NAND_ECC(n)   ((n) & ARM_NAND_ECC_INDEX_Msk)
     Select ECC.
     
    #define ARM_NAND_ECC0   (1UL << 8)
     Use ECC0 of selected ECC.
     
    #define ARM_NAND_ECC1   (1UL << 9)
     Use ECC1 of selected ECC.
     
    +

    Description

    +

    Specify ECC codes.

    +

    The defines can be used in the function ARM_NAND_ReadData and ARM_NAND_WriteData for the parameter mode and in the function ARM_NAND_ExecuteSequence for the parameter code.

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_NAND_ECC( n)   ((n) & ARM_NAND_ECC_INDEX_Msk)
    +
    + +

    Select ECC.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_ECC0   (1UL << 8)
    +
    + +

    Use ECC0 of selected ECC.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_ECC1   (1UL << 9)
    +
    + +

    Use ECC1 of selected ECC.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.js b/CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.js new file mode 100644 index 0000000..6fb0ddd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__ecc__codes.js @@ -0,0 +1,6 @@ +var group__nand__driver__ecc__codes = +[ + [ "ARM_NAND_ECC", "group__nand__driver__ecc__codes.html#gac2eb4475f12a443209165d29fe200030", null ], + [ "ARM_NAND_ECC0", "group__nand__driver__ecc__codes.html#ga15c79a12200c16f953936635f930df1d", null ], + [ "ARM_NAND_ECC1", "group__nand__driver__ecc__codes.html#gaee653288a88318ee33d1db81baa69bbc", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.html b/CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.html new file mode 100644 index 0000000..9b3e623 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.html @@ -0,0 +1,158 @@ + + + + + +NAND Flags +CMSIS-Driver: NAND Flags + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Flags
    +
    +
    + +

    Specify Flag codes. +More...

    + + + + + +

    +Macros

    #define ARM_NAND_DRIVER_DONE_EVENT   (1UL << 16)
     Generate ARM_NAND_EVENT_DRIVER_DONE.
     
    +

    Description

    +

    Specify Flag codes.

    +

    The defines can be used in the function ARM_NAND_ReadData and ARM_NAND_WriteData for the parameter mode and in the function ARM_NAND_ExecuteSequence for the parameter code.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_DRIVER_DONE_EVENT   (1UL << 16)
    +
    + +

    Generate ARM_NAND_EVENT_DRIVER_DONE.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.js b/CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.js new file mode 100644 index 0000000..e132f2e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__flag__codes.js @@ -0,0 +1,4 @@ +var group__nand__driver__flag__codes = +[ + [ "ARM_NAND_DRIVER_DONE_EVENT", "group__nand__driver__flag__codes.html#gaf40631ba62411e0ac06c3a945d608581", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.html b/CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.html new file mode 100644 index 0000000..0ae7a3e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.html @@ -0,0 +1,362 @@ + + + + + +NAND Sequence Execution Codes +CMSIS-Driver: NAND Sequence Execution Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Sequence Execution Codes
    +
    +
    + +

    Specify execution codes. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_NAND_CODE_SEND_CMD1   (1UL << 17)
     Send Command 1.
     
    #define ARM_NAND_CODE_SEND_ADDR_COL1   (1UL << 18)
     Send Column Address 1.
     
    #define ARM_NAND_CODE_SEND_ADDR_COL2   (1UL << 19)
     Send Column Address 2.
     
    #define ARM_NAND_CODE_SEND_ADDR_ROW1   (1UL << 20)
     Send Row Address 1.
     
    #define ARM_NAND_CODE_SEND_ADDR_ROW2   (1UL << 21)
     Send Row Address 2.
     
    #define ARM_NAND_CODE_SEND_ADDR_ROW3   (1UL << 22)
     Send Row Address 3.
     
    #define ARM_NAND_CODE_INC_ADDR_ROW   (1UL << 23)
     Auto-increment Row Address.
     
    #define ARM_NAND_CODE_WRITE_DATA   (1UL << 24)
     Write Data.
     
    #define ARM_NAND_CODE_SEND_CMD2   (1UL << 25)
     Send Command 2.
     
    #define ARM_NAND_CODE_WAIT_BUSY   (1UL << 26)
     Wait while R/Bn busy.
     
    #define ARM_NAND_CODE_READ_DATA   (1UL << 27)
     Read Data.
     
    #define ARM_NAND_CODE_SEND_CMD3   (1UL << 28)
     Send Command 3.
     
    #define ARM_NAND_CODE_READ_STATUS   (1UL << 29)
     Read Status byte and check FAIL bit (bit 0)
     
    +

    Description

    +

    Specify execution codes.

    +

    The defines can be used in the function ARM_NAND_ExecuteSequence for the parameter code.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_CMD1   (1UL << 17)
    +
    + +

    Send Command 1.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_ADDR_COL1   (1UL << 18)
    +
    + +

    Send Column Address 1.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_ADDR_COL2   (1UL << 19)
    +
    + +

    Send Column Address 2.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_ADDR_ROW1   (1UL << 20)
    +
    + +

    Send Row Address 1.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_ADDR_ROW2   (1UL << 21)
    +
    + +

    Send Row Address 2.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_ADDR_ROW3   (1UL << 22)
    +
    + +

    Send Row Address 3.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_INC_ADDR_ROW   (1UL << 23)
    +
    + +

    Auto-increment Row Address.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_WRITE_DATA   (1UL << 24)
    +
    + +

    Write Data.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_CMD2   (1UL << 25)
    +
    + +

    Send Command 2.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_WAIT_BUSY   (1UL << 26)
    +
    + +

    Wait while R/Bn busy.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_READ_DATA   (1UL << 27)
    +
    + +

    Read Data.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_SEND_CMD3   (1UL << 28)
    +
    + +

    Send Command 3.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_CODE_READ_STATUS   (1UL << 29)
    +
    + +

    Read Status byte and check FAIL bit (bit 0)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.js b/CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.js new file mode 100644 index 0000000..1843f23 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__seq__exec__codes.js @@ -0,0 +1,16 @@ +var group__nand__driver__seq__exec__codes = +[ + [ "ARM_NAND_CODE_SEND_CMD1", "group__nand__driver__seq__exec__codes.html#gaef90c96cd4f2309044d7d438c6b0930a", null ], + [ "ARM_NAND_CODE_SEND_ADDR_COL1", "group__nand__driver__seq__exec__codes.html#ga891bcba60ebb1195ec80c00c9bec748a", null ], + [ "ARM_NAND_CODE_SEND_ADDR_COL2", "group__nand__driver__seq__exec__codes.html#ga62a3f6ddcfb9ee317655bbec9e09bc10", null ], + [ "ARM_NAND_CODE_SEND_ADDR_ROW1", "group__nand__driver__seq__exec__codes.html#gadc001e69d1e81dc28a542237c6fe11ff", null ], + [ "ARM_NAND_CODE_SEND_ADDR_ROW2", "group__nand__driver__seq__exec__codes.html#ga5e55628cb59f5d7d35c529f04ebfcd10", null ], + [ "ARM_NAND_CODE_SEND_ADDR_ROW3", "group__nand__driver__seq__exec__codes.html#gaeb5d1be9c13b7ad2ad246d5db10cd419", null ], + [ "ARM_NAND_CODE_INC_ADDR_ROW", "group__nand__driver__seq__exec__codes.html#ga959522c98183036da32984dd5e07979b", null ], + [ "ARM_NAND_CODE_WRITE_DATA", "group__nand__driver__seq__exec__codes.html#ga1b40fc5fbf22dc4fa8130f5836e30d12", null ], + [ "ARM_NAND_CODE_SEND_CMD2", "group__nand__driver__seq__exec__codes.html#gacffafbbbca74f7ffa4cd3bb6b067c4ef", null ], + [ "ARM_NAND_CODE_WAIT_BUSY", "group__nand__driver__seq__exec__codes.html#ga0f4a8b1e97656e09f1c383852f290a37", null ], + [ "ARM_NAND_CODE_READ_DATA", "group__nand__driver__seq__exec__codes.html#gab524d840ab57c720ce8560144651dc9d", null ], + [ "ARM_NAND_CODE_SEND_CMD3", "group__nand__driver__seq__exec__codes.html#ga20f96743ab77bda14ba391dc0c3cdba5", null ], + [ "ARM_NAND_CODE_READ_STATUS", "group__nand__driver__seq__exec__codes.html#ga2250f6a532d2c0834bfdc618761ddc86", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.html b/CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.html new file mode 100644 index 0000000..552e893 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.html @@ -0,0 +1,209 @@ + + + + + +NAND Driver Strength +CMSIS-Driver: NAND Driver Strength + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Driver Strength
    +
    +
    + +

    Specify driver strength of the NAND interface. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_NAND_DRIVER_STRENGTH_18   (0x00)
     Driver Strength 2.0x = 18 Ohms.
     
    #define ARM_NAND_DRIVER_STRENGTH_25   (0x01)
     Driver Strength 1.4x = 25 Ohms.
     
    #define ARM_NAND_DRIVER_STRENGTH_35   (0x02)
     Driver Strength 1.0x = 35 Ohms (default)
     
    #define ARM_NAND_DRIVER_STRENGTH_50   (0x03)
     Driver Strength 0.7x = 50 Ohms.
     
    +

    Description

    +

    Specify driver strength of the NAND interface.

    +

    The defines can be used in the function ARM_NAND_Control for the parameter arg and with the ARM_NAND_DRIVER_STRENGTH as the control code.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_DRIVER_STRENGTH_18   (0x00)
    +
    + +

    Driver Strength 2.0x = 18 Ohms.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_DRIVER_STRENGTH_25   (0x01)
    +
    + +

    Driver Strength 1.4x = 25 Ohms.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_DRIVER_STRENGTH_35   (0x02)
    +
    + +

    Driver Strength 1.0x = 35 Ohms (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_NAND_DRIVER_STRENGTH_50   (0x03)
    +
    + +

    Driver Strength 0.7x = 50 Ohms.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.js b/CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.js new file mode 100644 index 0000000..137a9e2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__driver__strength__codes.js @@ -0,0 +1,7 @@ +var group__nand__driver__strength__codes = +[ + [ "ARM_NAND_DRIVER_STRENGTH_18", "group__nand__driver__strength__codes.html#ga942e20df12022f3bbd0e9a558ec1c7a0", null ], + [ "ARM_NAND_DRIVER_STRENGTH_25", "group__nand__driver__strength__codes.html#ga17188e039f5f87c581033327399a057d", null ], + [ "ARM_NAND_DRIVER_STRENGTH_35", "group__nand__driver__strength__codes.html#ga33562a66a5bf328eea82b2f1893a7874", null ], + [ "ARM_NAND_DRIVER_STRENGTH_50", "group__nand__driver__strength__codes.html#gaa502e2c995447037d266f939faa43223", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__execution__status.html b/CMSIS/Documentation/Driver/html/group__nand__execution__status.html new file mode 100644 index 0000000..f560444 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__execution__status.html @@ -0,0 +1,159 @@ + + + + + +Status Error Codes +CMSIS-Driver: Status Error Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Status Error Codes
    +
    +
    + +

    Negative values indicate errors (NAND has specific codes in addition to common Status Error Codes). +More...

    + + + + + +

    +Macros

    #define ARM_NAND_ERROR_ECC   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     ECC generation/correction failed.
     
    +

    Description

    +

    Negative values indicate errors (NAND has specific codes in addition to common Status Error Codes).

    +

    The NAND driver has additional status error codes that are listed below. Note that the NAND driver also returns the common Status Error Codes.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_NAND_ERROR_ECC   (ARM_DRIVER_ERROR_SPECIFIC - 1)
    +
    + +

    ECC generation/correction failed.

    +

    ECC generation or correction failed during ARM_NAND_ReadData, ARM_NAND_WriteData or ARM_NAND_ExecuteSequence.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__execution__status.js b/CMSIS/Documentation/Driver/html/group__nand__execution__status.js new file mode 100644 index 0000000..c9cfd5e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__execution__status.js @@ -0,0 +1,4 @@ +var group__nand__execution__status = +[ + [ "ARM_NAND_ERROR_ECC", "group__nand__execution__status.html#gafebec6ac091750a47b1d59bc843c15b0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__nand__interface__gr.html b/CMSIS/Documentation/Driver/html/group__nand__interface__gr.html new file mode 100644 index 0000000..418ca8a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__interface__gr.html @@ -0,0 +1,1868 @@ + + + + + +NAND Interface +CMSIS-Driver: NAND Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    NAND Interface
    +
    +
    + +

    Driver API for NAND Flash Device Interface (Driver_NAND.h). +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Content

     Status Error Codes
     Negative values indicate errors (NAND has specific codes in addition to common Status Error Codes).
     
     NAND Events
     The NAND driver generates call back events that are notified via the function ARM_NAND_SignalEvent.
     
     NAND Flags
     Specify Flag codes.
     
     NAND Control Codes
     Many parameters of the NAND driver are configured using the ARM_NAND_Control function.
     
     NAND ECC Codes
     Specify ECC codes.
     
     NAND Sequence Execution Codes
     Specify execution codes.
     
    + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_NAND_STATUS
     NAND Status. More...
     
    struct  ARM_DRIVER_NAND
     Access structure of the NAND Driver. More...
     
    struct  ARM_NAND_CAPABILITIES
     NAND Driver Capabilities. More...
     
    struct  ARM_NAND_ECC_INFO
     NAND ECC (Error Correction Code) Information. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_NAND_SignalEvent_t )(uint32_t dev_num, uint32_t event)
     Pointer to ARM_NAND_SignalEvent : Signal NAND Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_NAND_GetVersion (void)
     Get driver version.
     
    ARM_NAND_CAPABILITIES ARM_NAND_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_NAND_Initialize (ARM_NAND_SignalEvent_t cb_event)
     Initialize the NAND Interface.
     
    int32_t ARM_NAND_Uninitialize (void)
     De-initialize the NAND Interface.
     
    int32_t ARM_NAND_PowerControl (ARM_POWER_STATE state)
     Control the NAND interface power.
     
    int32_t ARM_NAND_DevicePower (uint32_t voltage)
     Set device power supply voltage.
     
    int32_t ARM_NAND_WriteProtect (uint32_t dev_num, bool enable)
     Control WPn (Write Protect).
     
    int32_t ARM_NAND_ChipEnable (uint32_t dev_num, bool enable)
     Control CEn (Chip Enable).
     
    int32_t ARM_NAND_GetDeviceBusy (uint32_t dev_num)
     Get Device Busy pin state.
     
    int32_t ARM_NAND_SendCommand (uint32_t dev_num, uint8_t cmd)
     Send command to NAND device.
     
    int32_t ARM_NAND_SendAddress (uint32_t dev_num, uint8_t addr)
     Send address to NAND device.
     
    int32_t ARM_NAND_ReadData (uint32_t dev_num, void *data, uint32_t cnt, uint32_t mode)
     Read data from NAND device.
     
    int32_t ARM_NAND_WriteData (uint32_t dev_num, const void *data, uint32_t cnt, uint32_t mode)
     Write data to NAND device.
     
    int32_t ARM_NAND_ExecuteSequence (uint32_t dev_num, uint32_t code, uint32_t cmd, uint32_t addr_col, uint32_t addr_row, void *data, uint32_t data_cnt, uint8_t *status, uint32_t *count)
     Execute sequence of operations.
     
    int32_t ARM_NAND_AbortSequence (uint32_t dev_num)
     Abort sequence execution.
     
    int32_t ARM_NAND_Control (uint32_t dev_num, uint32_t control, uint32_t arg)
     Control NAND Interface.
     
    ARM_NAND_STATUS ARM_NAND_GetStatus (uint32_t dev_num)
     Get NAND status.
     
    int32_t ARM_NAND_InquireECC (int32_t index, ARM_NAND_ECC_INFO *info)
     Inquire about available ECC.
     
    void ARM_NAND_SignalEvent (uint32_t dev_num, uint32_t event)
     Signal NAND event.
     
    +

    Description

    +

    Driver API for NAND Flash Device Interface (Driver_NAND.h).

    +

    NAND devices are a type of non-volatile storage and do not require power to hold data. Wikipedia offers more information about the Flash Memories, including NAND.

    +

    Block Diagram

    +

     

    +
    +NAND_Schematics.png +
    +Simplified NAND Flash Schematic
    +

     

    +

    NAND API

    +

    The following header files define the Application Programming Interface (API) for the NAND interface:

    +
      +
    • Driver_NAND.h : Driver API for NAND Flash Device Interface
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_NAND_STATUS
    +
    +

    NAND Status.

    +

    Structure with information about the status of a NAND. The data fields encode flags for the driver.

    +

    Returned by:

    + +
    + + + + + + + +
    Data Fields
    +uint32_t +busy: 1 +Driver busy flag.
    +uint32_t +ecc_error: 1 +ECC error detected (cleared on next Read/WriteData or ExecuteSequence)
    + +
    +
    + +
    +
    + + + + +
    struct ARM_DRIVER_NAND
    +
    +

    Access structure of the NAND Driver.

    +

    The functions of the NAND driver are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of a NAND interface provides such an access structure. The instance is identified by a postfix number in the symbol name of the access structure, for example:

    +
      +
    • Driver_NAND0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_NAND1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A middleware configuration setting allows connecting the middleware to a specific driver instance Driver_NANDn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_NAND_GetVersion : Get driver version.
     
    ARM_NAND_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_NAND_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_NAND_SignalEvent_t cb_event)
     Pointer to ARM_NAND_Initialize : Initialize NAND Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_NAND_Uninitialize : De-initialize NAND Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_NAND_PowerControl : Control NAND Interface Power.
     
    int32_t(* DevicePower )(uint32_t voltage)
     Pointer to ARM_NAND_DevicePower : Set device power supply voltage.
     
    int32_t(* WriteProtect )(uint32_t dev_num, bool enable)
     Pointer to ARM_NAND_WriteProtect : Control WPn (Write Protect).
     
    int32_t(* ChipEnable )(uint32_t dev_num, bool enable)
     Pointer to ARM_NAND_ChipEnable : Control CEn (Chip Enable).
     
    int32_t(* GetDeviceBusy )(uint32_t dev_num)
     Pointer to ARM_NAND_GetDeviceBusy : Get Device Busy pin state.
     
    int32_t(* SendCommand )(uint32_t dev_num, uint8_t cmd)
     Pointer to ARM_NAND_SendCommand : Send command to NAND device.
     
    int32_t(* SendAddress )(uint32_t dev_num, uint8_t addr)
     Pointer to ARM_NAND_SendAddress : Send address to NAND device.
     
    int32_t(* ReadData )(uint32_t dev_num, void *data, uint32_t cnt, uint32_t mode)
     Pointer to ARM_NAND_ReadData : Read data from NAND device.
     
    int32_t(* WriteData )(uint32_t dev_num, const void *data, uint32_t cnt, uint32_t mode)
     Pointer to ARM_NAND_WriteData : Write data to NAND device.
     
    int32_t(* ExecuteSequence )(uint32_t dev_num, uint32_t code, uint32_t cmd, uint32_t addr_col, uint32_t addr_row, void *data, uint32_t data_cnt, uint8_t *status, uint32_t *count)
     Pointer to ARM_NAND_ExecuteSequence : Execute sequence of operations.
     
    int32_t(* AbortSequence )(uint32_t dev_num)
     Pointer to ARM_NAND_AbortSequence : Abort sequence execution.
     
    int32_t(* Control )(uint32_t dev_num, uint32_t control, uint32_t arg)
     Pointer to ARM_NAND_Control : Control NAND Interface.
     
    ARM_NAND_STATUS(* GetStatus )(uint32_t dev_num)
     Pointer to ARM_NAND_GetStatus : Get NAND status.
     
    int32_t(* InquireECC )(int32_t index, ARM_NAND_ECC_INFO *info)
     Pointer to ARM_NAND_InquireECC : Inquire about available ECC.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_NAND_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_NAND_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_NAND_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_NAND_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_NAND_Initialize : Initialize NAND Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_NAND_Uninitialize : De-initialize NAND Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_NAND_PowerControl : Control NAND Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* DevicePower)(uint32_t voltage)
    +
    + +

    Pointer to ARM_NAND_DevicePower : Set device power supply voltage.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* WriteProtect)(uint32_t dev_num, bool enable)
    +
    + +

    Pointer to ARM_NAND_WriteProtect : Control WPn (Write Protect).

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ChipEnable)(uint32_t dev_num, bool enable)
    +
    + +

    Pointer to ARM_NAND_ChipEnable : Control CEn (Chip Enable).

    + +
    +
    + +
    +
    + + + + +
    int32_t(* GetDeviceBusy)(uint32_t dev_num)
    +
    + +

    Pointer to ARM_NAND_GetDeviceBusy : Get Device Busy pin state.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SendCommand)(uint32_t dev_num, uint8_t cmd)
    +
    + +

    Pointer to ARM_NAND_SendCommand : Send command to NAND device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SendAddress)(uint32_t dev_num, uint8_t addr)
    +
    + +

    Pointer to ARM_NAND_SendAddress : Send address to NAND device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ReadData)(uint32_t dev_num, void *data, uint32_t cnt, uint32_t mode)
    +
    + +

    Pointer to ARM_NAND_ReadData : Read data from NAND device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* WriteData)(uint32_t dev_num, const void *data, uint32_t cnt, uint32_t mode)
    +
    + +

    Pointer to ARM_NAND_WriteData : Write data to NAND device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ExecuteSequence)(uint32_t dev_num, uint32_t code, uint32_t cmd, uint32_t addr_col, uint32_t addr_row, void *data, uint32_t data_cnt, uint8_t *status, uint32_t *count)
    +
    + +

    Pointer to ARM_NAND_ExecuteSequence : Execute sequence of operations.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* AbortSequence)(uint32_t dev_num)
    +
    + +

    Pointer to ARM_NAND_AbortSequence : Abort sequence execution.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t dev_num, uint32_t control, uint32_t arg)
    +
    + +

    Pointer to ARM_NAND_Control : Control NAND Interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_NAND_STATUS(* GetStatus)(uint32_t dev_num)
    +
    + +

    Pointer to ARM_NAND_GetStatus : Get NAND status.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* InquireECC)(int32_t index, ARM_NAND_ECC_INFO *info)
    +
    + +

    Pointer to ARM_NAND_InquireECC : Inquire about available ECC.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_NAND_CAPABILITIES
    +
    +

    NAND Driver Capabilities.

    +

    A NAND driver can be implemented with different capabilities. The data fields of this struct encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +event_device_ready: 1 +Signal Device Ready event (R/Bn rising edge)
    +uint32_t +reentrant_operation: 1 +Supports re-entrant operation (SendCommand/Address, Read/WriteData)
    +uint32_t +sequence_operation: 1 +Supports Sequence operation (ExecuteSequence, AbortSequence)
    +uint32_t +vcc: 1 +Supports VCC Power Supply Control.
    +uint32_t +vcc_1v8: 1 +Supports 1.8 VCC Power Supply.
    +uint32_t +vccq: 1 +Supports VCCQ I/O Power Supply Control.
    +uint32_t +vccq_1v8: 1 +Supports 1.8 VCCQ I/O Power Supply.
    +uint32_t +vpp: 1 +Supports VPP High Voltage Power Supply Control.
    +uint32_t +wp: 1 +Supports WPn (Write Protect) Control.
    +uint32_t +ce_lines: 4 +Number of CEn (Chip Enable) lines: ce_lines + 1.
    +uint32_t +ce_manual: 1 +Supports manual CEn (Chip Enable) Control.
    +uint32_t +rb_monitor: 1 +Supports R/Bn (Ready/Busy) Monitoring.
    +uint32_t +data_width_16: 1 +Supports 16-bit data.
    +uint32_t +ddr: 1 +Supports NV-DDR Data Interface (ONFI)
    +uint32_t +ddr2: 1 +Supports NV-DDR2 Data Interface (ONFI)
    +uint32_t +sdr_timing_mode: 3 +Fastest (highest) SDR Timing Mode supported (ONFI)
    +uint32_t +ddr_timing_mode: 3 +Fastest (highest) NV_DDR Timing Mode supported (ONFI)
    +uint32_t +ddr2_timing_mode: 3 +Fastest (highest) NV_DDR2 Timing Mode supported (ONFI)
    +uint32_t +driver_strength_18: 1 +Supports Driver Strength 2.0x = 18 Ohms.
    +uint32_t +driver_strength_25: 1 +Supports Driver Strength 1.4x = 25 Ohms.
    +uint32_t +driver_strength_50: 1 +Supports Driver Strength 0.7x = 50 Ohms.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_NAND_ECC_INFO
    +
    +

    NAND ECC (Error Correction Code) Information.

    +

    Structure with information about the Error Correction Code for a NAND.

    +

    Parameter for:

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +type: 2 +Type: 1=ECC0 over Data, 2=ECC0 over Data+Spare, 3=ECC0 over Data and ECC1 over Spare.
    +uint32_t +page_layout: 1 +Page layout: 0=|Data0|Spare0|...|DataN-1|SpareN-1|, 1=|Data0|...|DataN-1|Spare0|...|SpareN-1|.
    +uint32_t +page_count: 3 +Number of virtual pages: N = 2 ^ page_count.
    +uint32_t +page_size: 4 +Virtual Page size (Data+Spare): 0=512+16, 1=1k+32, 2=2k+64, 3=4k+128, 4=8k+256, 8=512+28, 9=1k+56, 10=2k+112, 11=4k+224, 12=8k+448.
    +uint32_t +reserved: 14 +Reserved (must be zero)
    +uint32_t +correctable_bits: 8 +Number of correctable bits (based on 512 byte codeword size)
    +uint16_t +codeword_size +Number of bytes over which ECC is calculated.
    +uint16_t +ecc_size +ECC size in bytes (rounded up)
    +uint16_t +ecc_offset +ECC offset in bytes (where ECC starts in Spare area)
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_NAND_SignalEvent_t
    +
    + +

    Pointer to ARM_NAND_SignalEvent : Signal NAND Event.

    +

    Provides the typedef for the callback function ARM_NAND_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_NAND_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_NAND_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_NAND Driver_NAND0;
    +
    ARM_DRIVER_NAND *drv_info;
    +
    +
    void setup_nand (void) {
    + +
    +
    drv_info = &Driver_NAND0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_NAND_CAPABILITIES ARM_NAND_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_NAND_CAPABILITIES
    +

    The function ARM_NAND_GetCapabilities retrieves information about capabilities in this driver implementation. The data fields of the structure ARM_NAND_CAPABILITIES encode various capabilities, for example if a hardware is able to create signal events using the ARM_NAND_SignalEvent callback function.

    +

    Example:

    +
    extern ARM_DRIVER_NAND Driver_NAND0;
    +
    ARM_DRIVER_NAND *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_NAND_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_NAND0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_NAND_Initialize (ARM_NAND_SignalEvent_t cb_event)
    +
    + +

    Initialize the NAND Interface.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_NAND_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_Initialize initializes the NAND interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    +
      +
    • Initializes the resources needed for the NAND interface.
    • +
    • Registers the ARM_NAND_SignalEvent callback function.
    • +
    +

    The parameter cb_event is a pointer to the ARM_NAND_SignalEvent callback function; use a NULL pointer when no callback signals are required.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_NAND_Uninitialize (void )
    +
    + +

    De-initialize the NAND Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_Uninitialize de-initializes the resources of NAND interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_NAND_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control the NAND interface power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_PowerControl controls the power modes of the NAND interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_NAND_DevicePower (uint32_t voltage)
    +
    + +

    Set device power supply voltage.

    +
    Parameters
    + + +
    [in]voltageNAND Device supply voltage
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_DevicePower controls the power supply of the NAND device.

    +

    The parameter voltage sets the device supply voltage as defined in the table.

    +

    AMR_NAND_POWER_xxx_xxx specifies power settings.

    + + + + + + + + + + + + + + + + + + + +
    Device Power Bits Description
    ARM_NAND_POWER_VCC_OFF Set VCC Power off
    ARM_NAND_POWER_VCC_3V3 Set VCC = 3.3V
    ARM_NAND_POWER_VCC_1V8 Set VCC = 1.8V
    ARM_NAND_POWER_VCCQ_OFF Set VCCQ I/O Power off
    ARM_NAND_POWER_VCCQ_3V3 Set VCCQ = 3.3V
    ARM_NAND_POWER_VCCQ_1V8 Set VCCQ = 1.8V
    ARM_NAND_POWER_VPP_OFF Set VPP off
    ARM_NAND_POWER_VPP_ON Set VPP on
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_WriteProtect (uint32_t dev_num,
    bool enable 
    )
    +
    + +

    Control WPn (Write Protect).

    +
    Parameters
    + + + +
    [in]dev_numDevice number
    [in]enable
      +
    • false Write Protect off
    • +
    • true Write Protect on
    • +
    +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_WriteProtect controls the Write Protect (WPn) pin of a NAND device.

    +

    The parameter dev_num is the device number.
    + The parameter enable specifies whether to enable or disable write protection.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_ChipEnable (uint32_t dev_num,
    bool enable 
    )
    +
    + +

    Control CEn (Chip Enable).

    +
    Parameters
    + + + +
    [in]dev_numDevice number
    [in]enable
      +
    • false Chip Enable off
    • +
    • true Chip Enable on
    • +
    +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_ChipEnable control the Chip Enable (CEn) pin of a NAND device.

    +

    The parameter dev_num is the device number.
    + The parameter enable specifies whether to enable or disable the device.

    +

    This function is optional and supported only when the data field ce_manual = 1 in the structure ARM_NAND_CAPABILITIES. Otherwise, the Chip Enable (CEn) signal is controlled automatically by SendCommand/Address, Read/WriteData and ExecuteSequence (for example when the NAND device is connected to a memory bus).

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_NAND_GetDeviceBusy (uint32_t dev_num)
    +
    + +

    Get Device Busy pin state.

    +
    Parameters
    + + +
    [in]dev_numDevice number
    +
    +
    +
    Returns
    1=busy, 0=not busy, or error
    +

    The function ARM_NAND_GetDeviceBusy returns the status of the Device Busy pin: [1=busy; 0=not busy or error].

    +

    The parameter dev_num is the device number.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_SendCommand (uint32_t dev_num,
    uint8_t cmd 
    )
    +
    + +

    Send command to NAND device.

    +
    Parameters
    + + + +
    [in]dev_numDevice number
    [in]cmdCommand
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_SendCommand sends a command to the NAND device.

    +

    The parameter dev_num is the device number.
    + The parameter cmd is the command sent to the NAND device.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_SendAddress (uint32_t dev_num,
    uint8_t addr 
    )
    +
    + +

    Send address to NAND device.

    +
    Parameters
    + + + +
    [in]dev_numDevice number
    [in]addrAddress
    +
    +
    +
    Returns
    Status Error Codes
    +

    Send an address to the NAND device. The parameter dev_num is the device number. The parameter addr is the address.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_ReadData (uint32_t dev_num,
    void * data,
    uint32_t cnt,
    uint32_t mode 
    )
    +
    + +

    Read data from NAND device.

    +
    Parameters
    + + + + + +
    [in]dev_numDevice number
    [out]dataPointer to buffer for data to read from NAND device
    [in]cntNumber of data items to read
    [in]modeOperation mode
    +
    +
    +
    Returns
    number of data items read or Status Error Codes
    +

    The function ARM_NAND_ReadData reads data from a NAND device.

    +

    The parameter dev_num is the device number.
    + The parameter data is a pointer to the buffer that stores the data read from a NAND device.
    + The parameter cnt is the number of data items to read.
    + The parameter mode defines the operation mode as listed in the table below.

    + + + + + + + + + + + +
    Read Data Mode Description
    ARM_NAND_ECC(n) Select ECC
    ARM_NAND_ECC0 Use ECC0 of selected ECC
    ARM_NAND_ECC1 Use ECC1 of selected ECC
    ARM_NAND_DRIVER_DONE_EVENT Generate ARM_NAND_EVENT_DRIVER_DONE
    +

    The data item size is defined by the data type, which depends on the configured data bus width.

    +

    Data type is:

    +
      +
    • uint8_t for 8-bit data bus
    • +
    • uint16_t for 16-bit data bus
    • +
    +

    The function executes in the following ways:

    +
      +
    • When the operation is blocking (typical for devices connected to memory bus when not using DMA), then the function returns after all data is read and returns the number of data items read.
    • +
    • When the operation is non-blocking (typical for NAND controllers), then the function only starts the operation and returns with zero number of data items read. After the operation is completed, the ARM_NAND_EVENT_DRIVER_DONE event is generated (if enabled by ARM_NAND_DRIVER_DONE_EVENT). Progress of the operation can also be monitored by calling the ARM_NAND_GetStatus function and checking the busy data field. Operation is automatically aborted if ECC is used and ECC correction fails, which generates the ARM_NAND_EVENT_ECC_ERROR event (together with ARM_NAND_DRIVER_DONE_EVENT if enabled).
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_WriteData (uint32_t dev_num,
    const void * data,
    uint32_t cnt,
    uint32_t mode 
    )
    +
    + +

    Write data to NAND device.

    +
    Parameters
    + + + + + +
    [in]dev_numDevice number
    [out]dataPointer to buffer with data to write to NAND device
    [in]cntNumber of data items to write
    [in]modeOperation mode
    +
    +
    +
    Returns
    number of data items written or Status Error Codes
    +

    The function ARM_NAND_WriteData writes data to a NAND device.

    +

    The parameter dev_num is the device number.
    + The parameter data is a pointer to the buffer with data to write.
    + The parameter cnt is the number of data items to write.
    + The parameter mode defines the operation mode as listed in the table below.

    + + + + + + + + + + + +
    Write Data Mode Description
    ARM_NAND_ECC(n) Select ECC
    ARM_NAND_ECC0 Use ECC0 of selected ECC
    ARM_NAND_ECC1 Use ECC1 of selected ECC
    ARM_NAND_DRIVER_DONE_EVENT Generate ARM_NAND_EVENT_DRIVER_DONE
    +

    The data item size is defined by the data type, which depends on the configured data bus width.

    +

    Data type is:

    +
      +
    • uint8_t for 8-bit data bus
    • +
    • uint16_t for 16-bit data bus
    • +
    +

    The function executes in the following ways:

    +
      +
    • When the operation is blocking (typical for devices connected to memory bus when not using DMA), then the function returns after all data is written and returns the number of data items written.
    • +
    • When the operation is non-blocking (typical for NAND controllers), then the function only starts the operation and returns with zero number of data items written. After the operation is completed, the ARM_NAND_EVENT_DRIVER_DONE event is generated (if enabled by ARM_NAND_DRIVER_DONE_EVENT). Progress of the operation can also be monitored by calling the ARM_NAND_GetStatus function and checking the busy data field. Operation is automatically aborted if ECC is used and ECC generation fails, which generates the ARM_NAND_EVENT_ECC_ERROR event (together with ARM_NAND_DRIVER_DONE_EVENT if enabled).
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_ExecuteSequence (uint32_t dev_num,
    uint32_t code,
    uint32_t cmd,
    uint32_t addr_col,
    uint32_t addr_row,
    void * data,
    uint32_t data_cnt,
    uint8_t * status,
    uint32_t * count 
    )
    +
    + +

    Execute sequence of operations.

    +
    Parameters
    + + + + + + + + + + +
    [in]dev_numDevice number
    [in]codeSequence code
    [in]cmdCommand(s)
    [in]addr_colColumn address
    [in]addr_rowRow address
    [in,out]dataPointer to data to be written or read
    [in]data_cntNumber of data items in one iteration
    [out]statusPointer to status read
    [in,out]countNumber of iterations
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_ExecuteSequence executes a sequence of operations for a NAND device.

    +

    The parameter dev_num is the device number.
    + The parameter code is the sequence encoding as defined in the table Sequence execution Code.
    + The parameter cmd is the command or a series of commands.
    + The parameter addr_col is the column address.
    + The parameter addr_row is the row address.
    + The parameter data is a pointer to the buffer that stores the data to or loads the data from.
    + The parameter data_cnt is the number of data items to read or write in one iteration.
    + The parameter status is a pointer to the buffer that stores the status read.
    + The parameter count is a pointer to the number of iterations.
    +

    +

    ARM_NAND_CODE_xxx specifies sequence execution codes.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Sequence Execution Code Description
    ARM_NAND_CODE_SEND_CMD1 Send Command 1 (cmd[7..0])
    ARM_NAND_CODE_SEND_ADDR_COL1 Send Column Address 1 (addr_col[7..0])
    ARM_NAND_CODE_SEND_ADDR_COL2 Send Column Address 2 (addr_col[15..8])
    ARM_NAND_CODE_SEND_ADDR_ROW1 Send Row Address 1 (addr_row[7..0])
    ARM_NAND_CODE_SEND_ADDR_ROW2 Send Row Address 2 (addr_row[15..8])
    ARM_NAND_CODE_SEND_ADDR_ROW3 Send Row Address 3 (addr_row[23..16])
    ARM_NAND_CODE_INC_ADDR_ROW Auto-increment Row Address
    ARM_NAND_CODE_WRITE_DATA Write Data
    ARM_NAND_CODE_SEND_CMD2 Send Command 2 (cmd[15..8])
    ARM_NAND_CODE_WAIT_BUSY Wait while R/Bn busy
    ARM_NAND_CODE_READ_DATA Read Data
    ARM_NAND_CODE_SEND_CMD3 Send Command 3 (cmd[23..16])
    ARM_NAND_CODE_READ_STATUS Read Status byte and check FAIL bit (bit 0)
    ARM_NAND_ECC(n) Select ECC
    ARM_NAND_ECC0 Use ECC0 of selected ECC
    ARM_NAND_ECC1 Use ECC1 of selected ECC
    ARM_NAND_DRIVER_DONE_EVENT Generate ARM_NAND_EVENT_DRIVER_DONE
    +

    The data item size is defined by the data type, which depends on the configured data bus width.

    +

    Data type is:

    +
      +
    • uint8_t for 8-bit data bus
    • +
    • uint16_t for 16-bit data bus
    • +
    +

    The function is non-blocking and returns as soon as the driver has started executing the specified sequence. When the operation is completed, the ARM_NAND_EVENT_DRIVER_DONE event is generated (if enabled by ARM_NAND_DRIVER_DONE_EVENT). Progress of the operation can also be monitored by calling the ARM_NAND_GetStatus function and checking the busy data field.

    +

    Driver executes the number of specified iterations where in each iteration items specified by ARM_NAND_CODE_xxx are executed in the order as listed in the table Sequence execution Code. The parameter count is holding the current number of iterations left.

    +

    Execution is automatically aborted and ARM_NAND_EVENT_DRIVER_DONE event is generated (if enabled by ARM_NAND_DRIVER_DONE_EVENT):

    +
      +
    • if Read Status is enabled and the FAIL bit (bit 0) is set
    • +
    • if ECC is used and ECC fails (also sets ARM_NAND_EVENT_ECC_ERROR event)
    • +
    +
    Note
    ARM_NAND_CODE_WAIT_BUSY can only be specified if the Device Ready event can be generated (reported by event_device_ready in ARM_NAND_CAPABILITIES). The event ARM_NAND_EVENT_DEVICE_READY is not generated during sequence execution but rather used internally by the driver.
    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_NAND_AbortSequence (uint32_t dev_num)
    +
    + +

    Abort sequence execution.

    +
    Parameters
    + + +
    [in]dev_numDevice number
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_AbortSequence aborts execution of the current sequence for a NAND device.

    +

    The parameter dev_num is the device number.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_Control (uint32_t dev_num,
    uint32_t control,
    uint32_t arg 
    )
    +
    + +

    Control NAND Interface.

    +
    Parameters
    + + + + +
    [in]dev_numDevice number
    [in]controlOperation
    [in]argArgument of operation
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_NAND_Control controls the NAND interface and executes operations.

    +

    The parameter dev_num is the device number.
    + The parameter control specifies the operation.
    + The parameter arg provides (depending on the control) additional information or sets values.

    +

    The table lists the operations for the parameter control.

    + + + + + + + + + + + + + +
    Parameter control Operation
    ARM_NAND_BUS_MODE Set the bus mode. The parameter arg sets the Bus Mode.
    ARM_NAND_BUS_DATA_WIDTH Set the data bus width. The parameter arg sets the Bus Data Width.
    ARM_NAND_DRIVER_STRENGTH Set the driver strength. The parameter arg sets the Driver Strength.
    ARM_NAND_DRIVER_READY_EVENT Control generation of callback event ARM_NAND_EVENT_DRIVER_READY. Enable: arg = 1. Disable: arg = 0.
    ARM_NAND_DEVICE_READY_EVENT Control generation of callback event ARM_NAND_EVENT_DEVICE_READY; Enable: arg = 1. Disable: arg = 0.
    +

    See Also

    + +

    The table lists values for the parameter arg used with the control operation ARM_NAND_BUS_MODE, ARM_NAND_BUS_DATA_WIDTH, and ARM_NAND_DRIVER_STRENGTH. Values from different categories can be ORed.

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter arg
    + for control = ARM_NAND_BUS_MODE
    Bit Category Description Supported when ARM_NAND_CAPABILITIES
    ARM_NAND_BUS_TIMING_MODE_0 (default) 0..3 Bus Timing Mode 0 The maximum timing mode that can be applied to a specific Bus Data Interface is stored in the data fields:
    +
    + sdr_timing_mode - for SDR
    + ddr_timing_mode - for NV-DDR
    + ddr2_timing_mode - for NV_DDR2
    ARM_NAND_BUS_TIMING_MODE_1 1
    ARM_NAND_BUS_TIMING_MODE_2 2
    ARM_NAND_BUS_TIMING_MODE_3 3
    ARM_NAND_BUS_TIMING_MODE_4 4 (SDR EDO capable)
    ARM_NAND_BUS_TIMING_MODE_5 5 (SDR EDO capable)
    ARM_NAND_BUS_TIMING_MODE_6 6 (NV-DDR2 only)
    ARM_NAND_BUS_TIMING_MODE_7 7 (NV-DDR2 only)
    ARM_NAND_BUS_SDR (default) 4..7 Bus Data Interface SDR (Single Data Rate) - Traditional interface always supported
    ARM_NAND_BUS_DDR NV-DDR (Double Data Rate) data field ddr = 1
    ARM_NAND_BUS_DDR2 NV-DDR2 (Double Data Rate) data field ddr2 = 1
    ARM_NAND_BUS_DDR2_DO_WCYC_0 (default) 8..11 Data Output Warm-up Set the DDR2 Data Output Warm-up to 0 cycles Data Output Warm-up cycles are dummy cycles for interface calibration with no incremental data transfer and apply to NV-DDR2 of the Bus Data Interface.
    ARM_NAND_BUS_DDR2_DO_WCYC_1 Set the DDR2 Data Output Warm-up to 1 cycles
    ARM_NAND_BUS_DDR2_DO_WCYC_2 Set the DDR2 Data Output Warm-up to 2 cycles
    ARM_NAND_BUS_DDR2_DO_WCYC_4 Set the DDR2 Data Output Warm-up to 4 cycles
    ARM_NAND_BUS_DDR2_DI_WCYC_0 (default) 12..15 Data Input Warm-up Set the DDR2 Data Input Warm-up to 0 cycles Data Input Warm-up cycles are dummy cycles for interface calibration with no incremental data transfer and apply to NV-DDR2 of the Bus Data Interface.
    ARM_NAND_BUS_DDR2_DI_WCYC_1 Set the DDR2 Data Input Warm-up to 1 cycles
    ARM_NAND_BUS_DDR2_DI_WCYC_2 Set the DDR2 Data Input Warm-up to 2 cycles
    ARM_NAND_BUS_DDR2_DI_WCYC_4 Set the DDR2 Data Input Warm-up to 4 cycles
    ARM_NAND_BUS_DDR2_VEN 16 Miscellaneous Set the DDR2 Enable external VREFQ as reference  
    ARM_NAND_BUS_DDR2_CMPD 17 Set the DDR2 Enable complementary DQS (DQS_c) signal
    ARM_NAND_BUS_DDR2_CMPR 18 Set the DDR2 Enable complementary RE_n (RE_c) signal
    Parameter arg
    + for control = ARM_NAND_BUS_DATA_WIDTH
    Bit Category Description Supported when ARM_NAND_CAPABILITIES
    ARM_NAND_BUS_DATA_WIDTH_8 (default) 0..1 Bus Data Width Set to 8 bit always supported
    ARM_NAND_BUS_DATA_WIDTH_16 Set to 16 bit data field data_width_16 = 1
    Parameter arg
    + for control = ARM_NAND_DRIVER_STRENGTH
    Bit Category Description Supported when ARM_NAND_CAPABILITIES
    ARM_NAND_DRIVER_STRENGTH_18 0..3 Driver Strength Set the Driver Strength 2.0x = 18 Ohms data field driver_strength_18 = 1
    ARM_NAND_DRIVER_STRENGTH_25 Set the Driver Strength 1.4x = 25 Ohms data field driver_strength_25 = 1
    ARM_NAND_DRIVER_STRENGTH_35 (default) Set the Driver Strength 1.0x = 35 Ohms always supported
    ARM_NAND_DRIVER_STRENGTH_50 Set the Driver Strength 0.7x = 50 Ohms data field driver_strength_50 = 1
    +

    Example

    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_NAND_STATUS ARM_NAND_GetStatus (uint32_t dev_num)
    +
    + +

    Get NAND status.

    +
    Parameters
    + + +
    [in]dev_numDevice number
    +
    +
    +
    Returns
    NAND status ARM_NAND_STATUS
    +

    The function ARM_NAND_GetStatus returns the current NAND device status.

    +

    The parameter dev_num is the device number.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_NAND_InquireECC (int32_t index,
    ARM_NAND_ECC_INFOinfo 
    )
    +
    + +

    Inquire about available ECC.

    +
    Parameters
    + + + +
    [in]indexDevice number
    [out]infoPointer to ECC information ARM_NAND_ECC_INFO retrieved
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function reads error correction code information.

    +

    The parameter index is the device number.
    + The parameter info is a pointer of type ARM_NAND_ECC_INFO. The data fields store the information.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void ARM_NAND_SignalEvent (uint32_t dev_num,
    uint32_t event 
    )
    +
    + +

    Signal NAND event.

    +
    Parameters
    + + + +
    [in]dev_numDevice number
    [in]eventEvent notification mask
    +
    +
    +
    Returns
    none
    +

    The function ARM_NAND_SignalEvent is a callback function registered by the function ARM_NAND_Initialize.

    +

    The parameter dev_num is the device number.
    + The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_NAND_CAPABILITIES, which can be retrieved with the function ARM_NAND_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + + + + + +
    Parameter event Bit Description
    ARM_NAND_EVENT_DEVICE_READY 0 Occurs when rising edge is detected on R/Bn (Ready/Busy) pin indicating that the device is ready.
    ARM_NAND_EVENT_DRIVER_READY 1 Occurs to indicate that commands can be executed (after previously being busy and not able to start the requested operation).
    ARM_NAND_EVENT_DRIVER_DONE 2 Occurs after an operation completes. An operation was successfully started before with ARM_NAND_ReadData, ARM_NAND_WriteData, ARM_NAND_ExecuteSequence.
    ARM_NAND_EVENT_ECC_ERROR 3 Occurs when ECC generation failed or ECC correction failed. An operation was successfully started before with ARM_NAND_ReadData, ARM_NAND_WriteData, ARM_NAND_ExecuteSequence.
    +

    The event ARM_NAND_EVENT_DEVICE_READY occurs after complete execution of commands (initiated with the functions ARM_NAND_SendCommand, ARM_NAND_SendAddress, ARM_NAND_ReadData, ARM_NAND_WriteData, ARM_NAND_ExecuteSequence). It is useful to indicate completion of complex operations (such as erase). The event is only generated when ARM_NAND_GetCapabilities returns data field event_device_ready = 1 and was enabled by calling ARM_NAND_Control (ARM_NAND_DEVICE_READY_EVENT, 1). If the event is not available, poll the busy data field using the function ARM_NAND_GetStatus.

    +

    The event ARM_NAND_EVENT_DRIVER_READY occurs when previously a function (ARM_NAND_SendCommand, ARM_NAND_SendAddress, ARM_NAND_ReadData, ARM_NAND_WriteData, ARM_NAND_ExecuteSequence) returned with ARM_DRIVER_ERROR_BUSY. It is useful when functions are called simultaneously from independent threads (for example to control multiple devices) and the threads have no knowledge about each other (driver rejects reentrant calls with return of ARM_DRIVER_ERROR_BUSY). dev_num indicates the device that returned previously busy.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__nand__interface__gr.js b/CMSIS/Documentation/Driver/html/group__nand__interface__gr.js new file mode 100644 index 0000000..1df0932 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__nand__interface__gr.js @@ -0,0 +1,87 @@ +var group__nand__interface__gr = +[ + [ "Status Error Codes", "group__nand__execution__status.html", "group__nand__execution__status" ], + [ "NAND Events", "group___n_a_n_d__events.html", "group___n_a_n_d__events" ], + [ "NAND Flags", "group__nand__driver__flag__codes.html", "group__nand__driver__flag__codes" ], + [ "NAND Control Codes", "group__nand__control__gr.html", "group__nand__control__gr" ], + [ "NAND ECC Codes", "group__nand__driver__ecc__codes.html", "group__nand__driver__ecc__codes" ], + [ "NAND Sequence Execution Codes", "group__nand__driver__seq__exec__codes.html", "group__nand__driver__seq__exec__codes" ], + [ "ARM_NAND_STATUS", "group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___s_t_a_t_u_s", [ + [ "busy", "group__nand__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a", null ], + [ "ecc_error", "group__nand__interface__gr.html#a7707d2200a3bf8f49b148ffc8ded7636", null ] + ] ], + [ "ARM_DRIVER_NAND", "group__nand__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___n_a_n_d", [ + [ "GetVersion", "group__nand__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__nand__interface__gr.html#adab9d081aee3e5d1f83c6911e45ceaa6", null ], + [ "Initialize", "group__nand__interface__gr.html#a28b29ab7b6114bb97175bd40d18854ac", null ], + [ "Uninitialize", "group__nand__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__nand__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "DevicePower", "group__nand__interface__gr.html#a9ba6f3066cda5c8d781c309a17315a58", null ], + [ "WriteProtect", "group__nand__interface__gr.html#add6fa19a729c42303581214bc9dec819", null ], + [ "ChipEnable", "group__nand__interface__gr.html#ac090c205fe3d1b3dcb7288b06468bbe5", null ], + [ "GetDeviceBusy", "group__nand__interface__gr.html#ac9bc93fb1a089c6ac71428122f3a072e", null ], + [ "SendCommand", "group__nand__interface__gr.html#a3dbd36d86718980665ce2e3a1ba672ca", null ], + [ "SendAddress", "group__nand__interface__gr.html#a5a43001ef1ca6c6d73f03e366bf41cb5", null ], + [ "ReadData", "group__nand__interface__gr.html#aeba263544c0d63ec8c29e919232615cb", null ], + [ "WriteData", "group__nand__interface__gr.html#a78393d355e539c6f845b33417da60a7e", null ], + [ "ExecuteSequence", "group__nand__interface__gr.html#af0dd5e96fbcc5c15bb183363f8541af8", null ], + [ "AbortSequence", "group__nand__interface__gr.html#ad6e1d53e9028baff856899f795c0d0c8", null ], + [ "Control", "group__nand__interface__gr.html#a706fedbc88921808e210d75b7b5da168", null ], + [ "GetStatus", "group__nand__interface__gr.html#aa43ee108ee5bf29e40485ca89b34188b", null ], + [ "InquireECC", "group__nand__interface__gr.html#aecd239806e9f08b77ce0d00f61e78cf8", null ] + ] ], + [ "ARM_NAND_CAPABILITIES", "group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "event_device_ready", "group__nand__interface__gr.html#a5f347e9b63764bbb657f52dc20682128", null ], + [ "reentrant_operation", "group__nand__interface__gr.html#ae0514834750c7452431717a881471e2b", null ], + [ "sequence_operation", "group__nand__interface__gr.html#afa4b798731b1154878c26dda3f090acf", null ], + [ "vcc", "group__nand__interface__gr.html#a35cfa22b2140b109fe24b97c42d5a5ed", null ], + [ "vcc_1v8", "group__nand__interface__gr.html#a0e7d3b9258d468492b22de55d855a06e", null ], + [ "vccq", "group__nand__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa", null ], + [ "vccq_1v8", "group__nand__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d", null ], + [ "vpp", "group__nand__interface__gr.html#a75b97f7c917bba90b2f5c747d6857d23", null ], + [ "wp", "group__nand__interface__gr.html#afe7f5b149b8d92859398315b1ad31ddc", null ], + [ "ce_lines", "group__nand__interface__gr.html#ad5dd0fcdd7f6d5e5cd739f73323a2b11", null ], + [ "ce_manual", "group__nand__interface__gr.html#a2b8044d986995b183b057217643466bf", null ], + [ "rb_monitor", "group__nand__interface__gr.html#a69f5e734ee4a9bb501718cf78a740c3e", null ], + [ "data_width_16", "group__nand__interface__gr.html#a0f22baea13daa9101bf6fc1fdfddc747", null ], + [ "ddr", "group__nand__interface__gr.html#aa9acfde38637fe749aa9271c0a8dae1a", null ], + [ "ddr2", "group__nand__interface__gr.html#ae086693990cbd5d628014c0fcc7c1f2c", null ], + [ "sdr_timing_mode", "group__nand__interface__gr.html#a21036f2047273d90c0af0e97031df5a9", null ], + [ "ddr_timing_mode", "group__nand__interface__gr.html#a00c1f5db7d7c4abe7556733c36da7783", null ], + [ "ddr2_timing_mode", "group__nand__interface__gr.html#a6d9b66da0e56d04d545e0bb6841891b2", null ], + [ "driver_strength_18", "group__nand__interface__gr.html#ae672b2a65dd3d0b93812c088491c4552", null ], + [ "driver_strength_25", "group__nand__interface__gr.html#ae87c19872b838dac7d3136a3fd466f6a", null ], + [ "driver_strength_50", "group__nand__interface__gr.html#aef3d6e1522a6cf7fb87fd113dcd43ad5", null ] + ] ], + [ "ARM_NAND_ECC_INFO", "group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___e_c_c___i_n_f_o", [ + [ "type", "group__nand__interface__gr.html#ad44b615021ed3ccb734fcaf583ef4a03", null ], + [ "page_layout", "group__nand__interface__gr.html#a5952ba4313bda7833fefd358f5aff979", null ], + [ "page_count", "group__nand__interface__gr.html#aa993bc236650aa405b01d00b7ca72904", null ], + [ "page_size", "group__nand__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9", null ], + [ "reserved", "group__nand__interface__gr.html#aa43c4c21b173ada1b6b7568956f0d650", null ], + [ "correctable_bits", "group__nand__interface__gr.html#ae65f920c4ad99fd0c6bdf5fd8c4d161a", null ], + [ "codeword_size", "group__nand__interface__gr.html#ae8cff208d9efb5067d38ced675916c66", null ], + [ "ecc_size", "group__nand__interface__gr.html#a22365f6a2af1171a1c3629c8ae5fe001", null ], + [ "ecc_offset", "group__nand__interface__gr.html#a22d6a1813a47a7044f7acb478f8e9eb8", null ] + ] ], + [ "ARM_NAND_SignalEvent_t", "group__nand__interface__gr.html#ga09f4cf2f2df0bb690bce38b13d77e50f", null ], + [ "ARM_NAND_GetVersion", "group__nand__interface__gr.html#ga01255fd4f15e7fa4751c7ea59648ef5a", null ], + [ "ARM_NAND_GetCapabilities", "group__nand__interface__gr.html#ga9f2609975c2008d21b9ae28f15daf147", null ], + [ "ARM_NAND_Initialize", "group__nand__interface__gr.html#ga74ad34718a595e7a4375b90f33e72750", null ], + [ "ARM_NAND_Uninitialize", "group__nand__interface__gr.html#gaa788b638ab696b166fee2f4a4bc8d97a", null ], + [ "ARM_NAND_PowerControl", "group__nand__interface__gr.html#ga9c9975637980b5d42db7baba0191fda1", null ], + [ "ARM_NAND_DevicePower", "group__nand__interface__gr.html#ga11adcbaaace09746581a36befbd563c9", null ], + [ "ARM_NAND_WriteProtect", "group__nand__interface__gr.html#ga1987e65a4e756d748db86332c9fb1cec", null ], + [ "ARM_NAND_ChipEnable", "group__nand__interface__gr.html#ga1c0cba87cb7b706ad5986dc67c831ad1", null ], + [ "ARM_NAND_GetDeviceBusy", "group__nand__interface__gr.html#ga43011066306bd716b580e6aa9a80cf65", null ], + [ "ARM_NAND_SendCommand", "group__nand__interface__gr.html#ga9f70b89ba478eadfe7f5dee7453a4fb7", null ], + [ "ARM_NAND_SendAddress", "group__nand__interface__gr.html#ga00e195031e03d364db7595858a7e76f3", null ], + [ "ARM_NAND_ReadData", "group__nand__interface__gr.html#gae1899a20ef107400c8bf84fad477a8ce", null ], + [ "ARM_NAND_WriteData", "group__nand__interface__gr.html#ga1fa497dd51a86fc308e946b4419fd006", null ], + [ "ARM_NAND_ExecuteSequence", "group__nand__interface__gr.html#ga8a0108dba757a4610475151144b52825", null ], + [ "ARM_NAND_AbortSequence", "group__nand__interface__gr.html#ga00832861f018db0d8368900b099ecd30", null ], + [ "ARM_NAND_Control", "group__nand__interface__gr.html#ga83061d6d53ffb148853efbc87a864607", null ], + [ "ARM_NAND_GetStatus", "group__nand__interface__gr.html#ga4578642f37a556b58b0bba0ad5d42641", null ], + [ "ARM_NAND_InquireECC", "group__nand__interface__gr.html#gac21425454d586ef48fdfc35e7bd78947", null ], + [ "ARM_NAND_SignalEvent", "group__nand__interface__gr.html#gaf4ce80b0fd6717de7ddfb1cfaf7dd754", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__bit__order__control.html b/CMSIS/Documentation/Driver/html/group__sai__bit__order__control.html new file mode 100644 index 0000000..4b26fd8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__bit__order__control.html @@ -0,0 +1,174 @@ + + + + + +SAI Bit Order +CMSIS-Driver: SAI Bit Order + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Bit Order
    +
    +
    + +

    Defines the bit order. +More...

    + + + + + + + + +

    +Macros

    #define ARM_SAI_MSB_FIRST   (0U << ARM_SAI_BIT_ORDER_Pos)
     Data is transferred with MSB first (default)
     
    #define ARM_SAI_LSB_FIRST   (1U << ARM_SAI_BIT_ORDER_Pos)
     Data is transferred with LSB first; User Protocol only (ignored otherwise)
     
    +

    Description

    +

    Defines the bit order.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_MSB_FIRST   (0U << ARM_SAI_BIT_ORDER_Pos)
    +
    + +

    Data is transferred with MSB first (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_LSB_FIRST   (1U << ARM_SAI_BIT_ORDER_Pos)
    +
    + +

    Data is transferred with LSB first; User Protocol only (ignored otherwise)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__bit__order__control.js b/CMSIS/Documentation/Driver/html/group__sai__bit__order__control.js new file mode 100644 index 0000000..8bf62f6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__bit__order__control.js @@ -0,0 +1,5 @@ +var group__sai__bit__order__control = +[ + [ "ARM_SAI_MSB_FIRST", "group__sai__bit__order__control.html#gaf74bfe9c3005bf3b80d69f112ea9e62b", null ], + [ "ARM_SAI_LSB_FIRST", "group__sai__bit__order__control.html#ga19b51b75537b030b975efcf68f3db78b", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.html b/CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.html new file mode 100644 index 0000000..10d0233 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.html @@ -0,0 +1,174 @@ + + + + + +SAI Clock Polarity +CMSIS-Driver: SAI Clock Polarity + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Clock Polarity
    +
    +
    + +

    Defines clock polarity. +More...

    + + + + + + + + +

    +Macros

    #define ARM_SAI_CLOCK_POLARITY_0   (0U << ARM_SAI_CLOCK_POLARITY_Pos)
     Drive on falling edge, Capture on rising edge (default)
     
    #define ARM_SAI_CLOCK_POLARITY_1   (1U << ARM_SAI_CLOCK_POLARITY_Pos)
     Drive on rising edge, Capture on falling edge.
     
    +

    Description

    +

    Defines clock polarity.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_CLOCK_POLARITY_0   (0U << ARM_SAI_CLOCK_POLARITY_Pos)
    +
    + +

    Drive on falling edge, Capture on rising edge (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_CLOCK_POLARITY_1   (1U << ARM_SAI_CLOCK_POLARITY_Pos)
    +
    + +

    Drive on rising edge, Capture on falling edge.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.js b/CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.js new file mode 100644 index 0000000..8929a61 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__clock__pol__control.js @@ -0,0 +1,5 @@ +var group__sai__clock__pol__control = +[ + [ "ARM_SAI_CLOCK_POLARITY_0", "group__sai__clock__pol__control.html#ga4311b6b6fd937d6ac37aa2d031a5d5ee", null ], + [ "ARM_SAI_CLOCK_POLARITY_1", "group__sai__clock__pol__control.html#gae4c9b9abd3b7390810a5494363875a53", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__companding__control.html b/CMSIS/Documentation/Driver/html/group__sai__companding__control.html new file mode 100644 index 0000000..1a400ee --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__companding__control.html @@ -0,0 +1,191 @@ + + + + + +SAI Companding +CMSIS-Driver: SAI Companding + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Companding
    +
    +
    + +

    Defines companding. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_COMPANDING_NONE   (0U << ARM_SAI_COMPANDING_Pos)
     No compading (default)
     
    #define ARM_SAI_COMPANDING_A_LAW   (2U << ARM_SAI_COMPANDING_Pos)
     A-Law companding.
     
    #define ARM_SAI_COMPANDING_U_LAW   (3U << ARM_SAI_COMPANDING_Pos)
     u-Law companding
     
    +

    Description

    +

    Defines companding.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_COMPANDING_NONE   (0U << ARM_SAI_COMPANDING_Pos)
    +
    + +

    No compading (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_COMPANDING_A_LAW   (2U << ARM_SAI_COMPANDING_Pos)
    +
    + +

    A-Law companding.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_COMPANDING_U_LAW   (3U << ARM_SAI_COMPANDING_Pos)
    +
    + +

    u-Law companding

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__companding__control.js b/CMSIS/Documentation/Driver/html/group__sai__companding__control.js new file mode 100644 index 0000000..078fadc --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__companding__control.js @@ -0,0 +1,6 @@ +var group__sai__companding__control = +[ + [ "ARM_SAI_COMPANDING_NONE", "group__sai__companding__control.html#ga185919d553cf9204e514136eb375ef08", null ], + [ "ARM_SAI_COMPANDING_A_LAW", "group__sai__companding__control.html#gacfd6c74148c0ae90aa6eaaf8e69da3a9", null ], + [ "ARM_SAI_COMPANDING_U_LAW", "group__sai__companding__control.html#ga7b571406bcce383140198e53312faee5", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__configure__control.html b/CMSIS/Documentation/Driver/html/group__sai__configure__control.html new file mode 100644 index 0000000..5e11008 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__configure__control.html @@ -0,0 +1,197 @@ + + + + + +SAI Configuration +CMSIS-Driver: SAI Configuration + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Configuration
    +
    +
    + +

    Specify Transmitter/Receiver configuration. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Content

     SAI Mode
     Defines Transmitter/Receiver mode.
     
     SAI Synchronization
     Defines Transmitter/Receiver synchronization.
     
     SAI Protocol
     Defines Transmitter/Receiver protocol.
     
     SAI Data Size
     Defines data size in bits (per channel/slot).
     
     SAI Bit Order
     Defines the bit order.
     
     SAI Mono Mode
     Defines mono mode.
     
     SAI Companding
     Defines companding.
     
     SAI Clock Polarity
     Defines clock polarity.
     
     SAI Frame
     Defines frame.
     
     SAI Slot
     Defines data slots.
     
     SAI Master Clock Pin
     Defines MCLK pin.
     
     SAI Master Clock Prescaler
     Defines MCLK prescaler.
     
    +

    Description

    +

    Specify Transmitter/Receiver configuration.

    +

    Configuration is specified by ORing ARM_SAI_CONFIGURE_x with the following parameters:

    + +

    Additional configuration specified by arg1:

    + +

    Additional configuration specified by arg2:

    + +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__configure__control.js b/CMSIS/Documentation/Driver/html/group__sai__configure__control.js new file mode 100644 index 0000000..6c4c32c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__configure__control.js @@ -0,0 +1,15 @@ +var group__sai__configure__control = +[ + [ "SAI Mode", "group__sai__mode__control.html", "group__sai__mode__control" ], + [ "SAI Synchronization", "group__sai__sync__control.html", "group__sai__sync__control" ], + [ "SAI Protocol", "group__sai__protocol__control.html", "group__sai__protocol__control" ], + [ "SAI Data Size", "group__sai__data__bits__control.html", "group__sai__data__bits__control" ], + [ "SAI Bit Order", "group__sai__bit__order__control.html", "group__sai__bit__order__control" ], + [ "SAI Mono Mode", "group__sai__mono__control.html", "group__sai__mono__control" ], + [ "SAI Companding", "group__sai__companding__control.html", "group__sai__companding__control" ], + [ "SAI Clock Polarity", "group__sai__clock__pol__control.html", "group__sai__clock__pol__control" ], + [ "SAI Frame", "group__sai__frame__control.html", "group__sai__frame__control" ], + [ "SAI Slot", "group__sai__slot__control.html", "group__sai__slot__control" ], + [ "SAI Master Clock Pin", "group__sai__mclk__pin__control.html", "group__sai__mclk__pin__control" ], + [ "SAI Master Clock Prescaler", "group__sai__mclk__pres__control.html", "group__sai__mclk__pres__control" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__control.html b/CMSIS/Documentation/Driver/html/group__sai__control.html new file mode 100644 index 0000000..d3e5529 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__control.html @@ -0,0 +1,151 @@ + + + + + +SAI Control Codes +CMSIS-Driver: SAI Control Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Control Codes
    +
    +
    + +

    Many parameters of the SAI driver are configured using the ARM_SAI_Control function. +More...

    + + + + + + + + +

    +Content

     SAI Configuration
     Specify Transmitter/Receiver configuration.
     
     SAI Controls
     Specifies controls.
     
    +

    Description

    +

    Many parameters of the SAI driver are configured using the ARM_SAI_Control function.

    +

    The various SAI control codes define:

    + +

    Refer to the ARM_SAI_Control function for further details.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__control.js b/CMSIS/Documentation/Driver/html/group__sai__control.js new file mode 100644 index 0000000..2d79614 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__control.js @@ -0,0 +1,5 @@ +var group__sai__control = +[ + [ "SAI Configuration", "group__sai__configure__control.html", "group__sai__configure__control" ], + [ "SAI Controls", "group__sai__controls.html", "group__sai__controls" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__controls.html b/CMSIS/Documentation/Driver/html/group__sai__controls.html new file mode 100644 index 0000000..16b31cf --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__controls.html @@ -0,0 +1,284 @@ + + + + + +SAI Controls +CMSIS-Driver: SAI Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Controls
    +
    +
    + +

    Specifies controls. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_CONFIGURE_TX   (0x01U)
     Configure Transmitter; arg1 and arg2 provide additional configuration.
     
    #define ARM_SAI_CONFIGURE_RX   (0x02U)
     Configure Receiver; arg1 and arg2 provide additional configuration.
     
    #define ARM_SAI_CONTROL_TX   (0x03U)
     Control Transmitter; arg1.0: 0=disable (default), 1=enable; arg1.1: mute.
     
    #define ARM_SAI_CONTROL_RX   (0x04U)
     Control Receiver; arg1.0: 0=disable (default), 1=enable.
     
    #define ARM_SAI_MASK_SLOTS_TX   (0x05U)
     Mask Transmitter slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.
     
    #define ARM_SAI_MASK_SLOTS_RX   (0x06U)
     Mask Receiver slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.
     
    #define ARM_SAI_ABORT_SEND   (0x07U)
     Abort ARM_SAI_Send.
     
    #define ARM_SAI_ABORT_RECEIVE   (0x08U)
     Abort ARM_SAI_Receive.
     
    +

    Description

    +

    Specifies controls.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_CONFIGURE_TX   (0x01U)
    +
    + +

    Configure Transmitter; arg1 and arg2 provide additional configuration.

    +
    See Also
    ARM_SAI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_CONFIGURE_RX   (0x02U)
    +
    + +

    Configure Receiver; arg1 and arg2 provide additional configuration.

    +
    See Also
    ARM_SAI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_CONTROL_TX   (0x03U)
    +
    + +

    Control Transmitter; arg1.0: 0=disable (default), 1=enable; arg1.1: mute.

    +
    See Also
    ARM_SAI_Control; ARM_SAI_Send
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_CONTROL_RX   (0x04U)
    +
    + +

    Control Receiver; arg1.0: 0=disable (default), 1=enable.

    +
    See Also
    ARM_SAI_Control; ARM_SAI_Receive
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MASK_SLOTS_TX   (0x05U)
    +
    + +

    Mask Transmitter slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.

    +
    See Also
    ARM_SAI_Control; ARM_SAI_Send
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MASK_SLOTS_RX   (0x06U)
    +
    + +

    Mask Receiver slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.

    +
    See Also
    ARM_SAI_Control; ARM_SAI_Receive
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ABORT_SEND   (0x07U)
    +
    + +

    Abort ARM_SAI_Send.

    +
    See Also
    ARM_SAI_Control; ARM_SAI_Send
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ABORT_RECEIVE   (0x08U)
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__controls.js b/CMSIS/Documentation/Driver/html/group__sai__controls.js new file mode 100644 index 0000000..ea327d0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__controls.js @@ -0,0 +1,11 @@ +var group__sai__controls = +[ + [ "ARM_SAI_CONFIGURE_TX", "group__sai__controls.html#ga14ac7775060e731b26bc5b3acd2f317a", null ], + [ "ARM_SAI_CONFIGURE_RX", "group__sai__controls.html#gaba3e824e022fe2a5736de5dcbbd3d291", null ], + [ "ARM_SAI_CONTROL_TX", "group__sai__controls.html#ga74d7850973c095bb8dbffa880b4af1bc", null ], + [ "ARM_SAI_CONTROL_RX", "group__sai__controls.html#gaa40390b6dd0df3b140fdc45bb7b1439d", null ], + [ "ARM_SAI_MASK_SLOTS_TX", "group__sai__controls.html#ga8675b9776189caf4df7d558b3e18fcba", null ], + [ "ARM_SAI_MASK_SLOTS_RX", "group__sai__controls.html#ga84302d372185665852c9ed941c6545e0", null ], + [ "ARM_SAI_ABORT_SEND", "group__sai__controls.html#gab3ec8ef9e5e5a190bd2131ac8c99a240", null ], + [ "ARM_SAI_ABORT_RECEIVE", "group__sai__controls.html#ga2b8d3d85c1e60f137f8c433f319244cb", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__data__bits__control.html b/CMSIS/Documentation/Driver/html/group__sai__data__bits__control.html new file mode 100644 index 0000000..5675785 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__data__bits__control.html @@ -0,0 +1,161 @@ + + + + + +SAI Data Size +CMSIS-Driver: SAI Data Size + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Data Size
    +
    +
    + +

    Defines data size in bits (per channel/slot). +More...

    + + + + + +

    +Macros

    #define ARM_SAI_DATA_SIZE(n)   ((((n)-1)&0x1FU) << ARM_SAI_DATA_SIZE_Pos)
     Data size in bits (8..32)
     
    +

    Description

    +

    Defines data size in bits (per channel/slot).

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_SAI_DATA_SIZE( n)   ((((n)-1)&0x1FU) << ARM_SAI_DATA_SIZE_Pos)
    +
    + +

    Data size in bits (8..32)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__data__bits__control.js b/CMSIS/Documentation/Driver/html/group__sai__data__bits__control.js new file mode 100644 index 0000000..b70fd57 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__data__bits__control.js @@ -0,0 +1,4 @@ +var group__sai__data__bits__control = +[ + [ "ARM_SAI_DATA_SIZE", "group__sai__data__bits__control.html#ga1a7529e4b46d69dbd57ccef84552a3f4", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__execution__status.html b/CMSIS/Documentation/Driver/html/group__sai__execution__status.html new file mode 100644 index 0000000..5308f57 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__execution__status.html @@ -0,0 +1,453 @@ + + + + + +Status Error Codes +CMSIS-Driver: Status Error Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Status Error Codes
    +
    +
    + +

    Negative values indicate errors (SAI has specific codes in addition to common Status Error Codes). +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_ERROR_SYNCHRONIZATION   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     Specified Synchronization not supported.
     
    #define ARM_SAI_ERROR_PROTOCOL   (ARM_DRIVER_ERROR_SPECIFIC - 2)
     Specified Protocol not supported.
     
    #define ARM_SAI_ERROR_DATA_SIZE   (ARM_DRIVER_ERROR_SPECIFIC - 3)
     Specified Data size not supported.
     
    #define ARM_SAI_ERROR_BIT_ORDER   (ARM_DRIVER_ERROR_SPECIFIC - 4)
     Specified Bit order not supported.
     
    #define ARM_SAI_ERROR_MONO_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 5)
     Specified Mono mode not supported.
     
    #define ARM_SAI_ERROR_COMPANDING   (ARM_DRIVER_ERROR_SPECIFIC - 6)
     Specified Companding not supported.
     
    #define ARM_SAI_ERROR_CLOCK_POLARITY   (ARM_DRIVER_ERROR_SPECIFIC - 7)
     Specified Clock polarity not supported.
     
    #define ARM_SAI_ERROR_AUDIO_FREQ   (ARM_DRIVER_ERROR_SPECIFIC - 8)
     Specified Audio frequency not supported.
     
    #define ARM_SAI_ERROR_MCLK_PIN   (ARM_DRIVER_ERROR_SPECIFIC - 9)
     Specified MCLK Pin setting not supported.
     
    #define ARM_SAI_ERROR_MCLK_PRESCALER   (ARM_DRIVER_ERROR_SPECIFIC - 10)
     Specified MCLK Prescaler not supported.
     
    #define ARM_SAI_ERROR_FRAME_LENGHT   (ARM_DRIVER_ERROR_SPECIFIC - 11)
     Specified Frame length not supported.
     
    #define ARM_SAI_ERROR_FRAME_SYNC_WIDTH   (ARM_DRIVER_ERROR_SPECIFIC - 12)
     Specified Frame Sync width not supported.
     
    #define ARM_SAI_ERROR_FRAME_SYNC_POLARITY   (ARM_DRIVER_ERROR_SPECIFIC - 13)
     Specified Frame Sync polarity not supported.
     
    #define ARM_SAI_ERROR_FRAME_SYNC_EARLY   (ARM_DRIVER_ERROR_SPECIFIC - 14)
     Specified Frame Sync early not supported.
     
    #define ARM_SAI_ERROR_SLOT_COUNT   (ARM_DRIVER_ERROR_SPECIFIC - 15)
     Specified Slot count not supported.
     
    #define ARM_SAI_ERROR_SLOT_SIZE   (ARM_DRIVER_ERROR_SPECIFIC - 16)
     Specified Slot size not supported.
     
    #define ARM_SAI_ERROR_SLOT_OFFESET   (ARM_DRIVER_ERROR_SPECIFIC - 17)
     Specified Slot offset not supported.
     
    +

    Description

    +

    Negative values indicate errors (SAI has specific codes in addition to common Status Error Codes).

    +

    The SAI driver has additional status error codes that are listed below.

    +
    Note
      +
    • In case multiple errors exist, only the first encountered error will be reported.
    • +
    • errors ARM_SAI_ERROR_BIT_ORDER, ARM_SAI_ERROR_FRAME_SYNC_xxx, ARM_SAI_ERROR_SLOT_xxx will only be reported in User Defined Protocol mode.
    • +
    • The SAI driver also returns the common Status Error Codes.
    • +
    +
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_SYNCHRONIZATION   (ARM_DRIVER_ERROR_SPECIFIC - 1)
    +
    + +

    Specified Synchronization not supported.

    +

    The synchronization requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_PROTOCOL   (ARM_DRIVER_ERROR_SPECIFIC - 2)
    +
    + +

    Specified Protocol not supported.

    +

    The protocol requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_DATA_SIZE   (ARM_DRIVER_ERROR_SPECIFIC - 3)
    +
    + +

    Specified Data size not supported.

    +

    The data size requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_BIT_ORDER   (ARM_DRIVER_ERROR_SPECIFIC - 4)
    +
    + +

    Specified Bit order not supported.

    +

    The bit order requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_MONO_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 5)
    +
    + +

    Specified Mono mode not supported.

    +

    The mono mode requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_COMPANDING   (ARM_DRIVER_ERROR_SPECIFIC - 6)
    +
    + +

    Specified Companding not supported.

    +

    The companding requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_CLOCK_POLARITY   (ARM_DRIVER_ERROR_SPECIFIC - 7)
    +
    + +

    Specified Clock polarity not supported.

    +

    The clock polarity requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_AUDIO_FREQ   (ARM_DRIVER_ERROR_SPECIFIC - 8)
    +
    + +

    Specified Audio frequency not supported.

    +

    The audio frequency requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_MCLK_PIN   (ARM_DRIVER_ERROR_SPECIFIC - 9)
    +
    + +

    Specified MCLK Pin setting not supported.

    +

    The MCLK pin setting requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_MCLK_PRESCALER   (ARM_DRIVER_ERROR_SPECIFIC - 10)
    +
    + +

    Specified MCLK Prescaler not supported.

    +

    The MCLK prescaler requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_FRAME_LENGHT   (ARM_DRIVER_ERROR_SPECIFIC - 11)
    +
    + +

    Specified Frame length not supported.

    +

    The frame length requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_FRAME_SYNC_WIDTH   (ARM_DRIVER_ERROR_SPECIFIC - 12)
    +
    + +

    Specified Frame Sync width not supported.

    +

    The frame sync width requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_FRAME_SYNC_POLARITY   (ARM_DRIVER_ERROR_SPECIFIC - 13)
    +
    + +

    Specified Frame Sync polarity not supported.

    +

    The frame sync polarity requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_FRAME_SYNC_EARLY   (ARM_DRIVER_ERROR_SPECIFIC - 14)
    +
    + +

    Specified Frame Sync early not supported.

    +

    The frame sync early requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_SLOT_COUNT   (ARM_DRIVER_ERROR_SPECIFIC - 15)
    +
    + +

    Specified Slot count not supported.

    +

    The slot count requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_SLOT_SIZE   (ARM_DRIVER_ERROR_SPECIFIC - 16)
    +
    + +

    Specified Slot size not supported.

    +

    The slot size requested with the function ARM_SAI_Control is not supported.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_ERROR_SLOT_OFFESET   (ARM_DRIVER_ERROR_SPECIFIC - 17)
    +
    + +

    Specified Slot offset not supported.

    +

    The slot offset requested with the function ARM_SAI_Control is not supported.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__execution__status.js b/CMSIS/Documentation/Driver/html/group__sai__execution__status.js new file mode 100644 index 0000000..58c62a2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__execution__status.js @@ -0,0 +1,20 @@ +var group__sai__execution__status = +[ + [ "ARM_SAI_ERROR_SYNCHRONIZATION", "group__sai__execution__status.html#ga711cd889b4209df3f8fb01e4f2413c61", null ], + [ "ARM_SAI_ERROR_PROTOCOL", "group__sai__execution__status.html#gaf4892425930608ad7a41fa5b49603b10", null ], + [ "ARM_SAI_ERROR_DATA_SIZE", "group__sai__execution__status.html#ga5c51cbd8c2d2fe4baae110d390cefdc2", null ], + [ "ARM_SAI_ERROR_BIT_ORDER", "group__sai__execution__status.html#gadcd0d44f0f6b691c4e84b30960c096e4", null ], + [ "ARM_SAI_ERROR_MONO_MODE", "group__sai__execution__status.html#ga912bf004fce3a37709bbf69734802b4a", null ], + [ "ARM_SAI_ERROR_COMPANDING", "group__sai__execution__status.html#ga4683468c258e1a8706afcce1e81356d1", null ], + [ "ARM_SAI_ERROR_CLOCK_POLARITY", "group__sai__execution__status.html#ga7810e77ec599b0f86073a8711c0655df", null ], + [ "ARM_SAI_ERROR_AUDIO_FREQ", "group__sai__execution__status.html#ga5021651816da0aa92561eed634ba7578", null ], + [ "ARM_SAI_ERROR_MCLK_PIN", "group__sai__execution__status.html#ga0d910d4a638433e3b2326fc776da0f53", null ], + [ "ARM_SAI_ERROR_MCLK_PRESCALER", "group__sai__execution__status.html#gabab9495d6c57e56604cb1a2ac7e75431", null ], + [ "ARM_SAI_ERROR_FRAME_LENGHT", "group__sai__execution__status.html#gaf0448bdd6d1ae33511d170b9ecc1e2d6", null ], + [ "ARM_SAI_ERROR_FRAME_SYNC_WIDTH", "group__sai__execution__status.html#ga993da1bc0f6745795b364d84dec24e99", null ], + [ "ARM_SAI_ERROR_FRAME_SYNC_POLARITY", "group__sai__execution__status.html#ga0561b0cc9577d944e0d39b582612e061", null ], + [ "ARM_SAI_ERROR_FRAME_SYNC_EARLY", "group__sai__execution__status.html#ga09fe9b65d2be54ee1441606523291011", null ], + [ "ARM_SAI_ERROR_SLOT_COUNT", "group__sai__execution__status.html#gaf52ee0cd13b6cb9c63acfe767ed5dfde", null ], + [ "ARM_SAI_ERROR_SLOT_SIZE", "group__sai__execution__status.html#ga7bf825043ba857950a89817ff9b853d1", null ], + [ "ARM_SAI_ERROR_SLOT_OFFESET", "group__sai__execution__status.html#ga4658a3143c891d8972446630b6a978cd", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__frame__control.html b/CMSIS/Documentation/Driver/html/group__sai__frame__control.html new file mode 100644 index 0000000..1ac16c2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__frame__control.html @@ -0,0 +1,233 @@ + + + + + +SAI Frame +CMSIS-Driver: SAI Frame + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Frame
    +
    +
    + +

    Defines frame. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_FRAME_LENGTH(n)   ((((n)-1)&0x3FFU) << ARM_SAI_FRAME_LENGTH_Pos)
     Frame length in bits (8..1024); default depends on protocol and data.
     
    #define ARM_SAI_FRAME_SYNC_WIDTH(n)   ((((n)-1)&0xFFU) << ARM_SAI_FRAME_SYNC_WIDTH_Pos)
     Frame Sync width in bits (1..256); default=1; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_FRAME_SYNC_POLARITY_HIGH   (0U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
     Frame Sync is active high (default); User Protocol only (ignored otherwise)
     
    #define ARM_SAI_FRAME_SYNC_POLARITY_LOW   (1U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
     Frame Sync is active low; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_FRAME_SYNC_EARLY   (1U << 19)
     Frame Sync one bit before the first bit of the frame; User Protocol only (ignored otherwise)
     
    +

    Description

    +

    Defines frame.

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_SAI_FRAME_LENGTH( n)   ((((n)-1)&0x3FFU) << ARM_SAI_FRAME_LENGTH_Pos)
    +
    + +

    Frame length in bits (8..1024); default depends on protocol and data.

    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_SAI_FRAME_SYNC_WIDTH( n)   ((((n)-1)&0xFFU) << ARM_SAI_FRAME_SYNC_WIDTH_Pos)
    +
    + +

    Frame Sync width in bits (1..256); default=1; User Protocol only (ignored otherwise)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_SYNC_POLARITY_HIGH   (0U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
    +
    + +

    Frame Sync is active high (default); User Protocol only (ignored otherwise)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_SYNC_POLARITY_LOW   (1U << ARM_SAI_FRAME_SYNC_POLARITY_Pos)
    +
    + +

    Frame Sync is active low; User Protocol only (ignored otherwise)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_FRAME_SYNC_EARLY   (1U << 19)
    +
    + +

    Frame Sync one bit before the first bit of the frame; User Protocol only (ignored otherwise)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__frame__control.js b/CMSIS/Documentation/Driver/html/group__sai__frame__control.js new file mode 100644 index 0000000..695cfc1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__frame__control.js @@ -0,0 +1,8 @@ +var group__sai__frame__control = +[ + [ "ARM_SAI_FRAME_LENGTH", "group__sai__frame__control.html#ga4c557aa02c83b8595be23a6c58d284e9", null ], + [ "ARM_SAI_FRAME_SYNC_WIDTH", "group__sai__frame__control.html#gae165fd96e6a5b06b362954fadeabcb7a", null ], + [ "ARM_SAI_FRAME_SYNC_POLARITY_HIGH", "group__sai__frame__control.html#ga7be0326e15d61d6c67febb22f5b14d58", null ], + [ "ARM_SAI_FRAME_SYNC_POLARITY_LOW", "group__sai__frame__control.html#gaf3d6bdbc05379ac30905cecf1b2d917e", null ], + [ "ARM_SAI_FRAME_SYNC_EARLY", "group__sai__frame__control.html#gabec3992447436a2a8ed99108908ae208", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__interface__gr.html b/CMSIS/Documentation/Driver/html/group__sai__interface__gr.html new file mode 100644 index 0000000..0d6adb7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__interface__gr.html @@ -0,0 +1,1257 @@ + + + + + +SAI Interface +CMSIS-Driver: SAI Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Interface
    +
    +
    + +

    Driver API for Serial Audio Interface (Driver_SAI.h) +More...

    + + + + + + + + + + + +

    +Content

     Status Error Codes
     Negative values indicate errors (SAI has specific codes in addition to common Status Error Codes).
     
     SAI Events
     The SAI driver generates call back events that are notified via the function ARM_SAI_SignalEvent.
     
     SAI Control Codes
     Many parameters of the SAI driver are configured using the ARM_SAI_Control function.
     
    + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_SAI
     Access structure of the SAI Driver. More...
     
    struct  ARM_SAI_CAPABILITIES
     SAI Driver Capabilities. More...
     
    struct  ARM_SAI_STATUS
     SAI Status. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_SAI_SignalEvent_t )(uint32_t event)
     Pointer to ARM_SAI_SignalEvent : Signal SAI Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_SAI_GetVersion (void)
     Get driver version.
     
    ARM_SAI_CAPABILITIES ARM_SAI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_SAI_Initialize (ARM_SAI_SignalEvent_t cb_event)
     Initialize SAI Interface.
     
    int32_t ARM_SAI_Uninitialize (void)
     De-initialize SAI Interface.
     
    int32_t ARM_SAI_PowerControl (ARM_POWER_STATE state)
     Control SAI Interface Power.
     
    int32_t ARM_SAI_Send (const void *data, uint32_t num)
     Start sending data to SAI transmitter.
     
    int32_t ARM_SAI_Receive (void *data, uint32_t num)
     Start receiving data from SAI receiver.
     
    uint32_t ARM_SAI_GetTxCount (void)
     Get transmitted data count.
     
    uint32_t ARM_SAI_GetRxCount (void)
     Get received data count.
     
    int32_t ARM_SAI_Control (uint32_t control, uint32_t arg1, uint32_t arg2)
     Control SAI Interface.
     
    ARM_SAI_STATUS ARM_SAI_GetStatus (void)
     Get SAI status.
     
    void ARM_SAI_SignalEvent (uint32_t event)
     Signal SAI Events.
     
    +

    Description

    +

    Driver API for Serial Audio Interface (Driver_SAI.h)

    +

    The Serial Audio Interface (SAI) implements a synchronous serial bus interface for connecting digital audio devices. It is by far the most common mechanism used to transfer two channels of audio data between devices within a system. SAI can transfer digital audio using various protocols:

    + +

    Block Diagram

    +

     

    +
    +SAI_Schematics.png +
    +Simplified SAI Schematic
    +

     

    +

    SAI API

    +

    The following header files define the Application Programming Interface (API) for the SAI interface:

    +
      +
    • Driver_SAI.h : Driver API for Serial Audio Interface
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    +I2S

    +

    Integrated Interchip Sound (I2S) is a serial bus interface that connects digital audio devices together. It was introduced by Philips (now NXP) in the late 80's and last revised 1996. It uses pulse code modulation to exchange the audio data between the devices. The following timing diagram explains the operation:

    +
    +driver_sai_i2s.png +
    +

    I2S separates the clock (SCK) from the serial data (SD), resulting in a lower jitter. A complete audio data frame consists of two slots, one for the left channel and one for the right. The slot size equals the data size. The word select (WS) line lets the device know whether the left channel (WS is low) or the right channel (WS is high) is currently being transmitted. WS has a 50% duty-cycle signal that has the same frequency as the sample frequency. It is an early signal, meaning that the WS line changes one clock cycle before the actual data (SD) is transmitted (left or right). The data on SD is always transmitted MSB first and can have a data size of 8 up to 32 bits.

    +

    In terms of the CMSIS-Driver for SAI, the I2S protocol can be described as follows:

    +
      +
    • Data Size: 8..32 (MSB first)
    • +
    • Clock Polarity: Drive on falling edge, Capture on rising edge
    • +
    • Frame Length: 2 * Data Size = 2 * Slot Size
    • +
    • Frame Sync Width: Frame Length / 2
    • +
    • Frame Sync Polarity: Active Low
    • +
    • Frame Sync Early
    • +
    • Slot Count: 2 (L R)
    • +
    • Slot Size: Data Size
    • +
    • Slot Offset: 0
    • +
    +

    +MSB Justified

    +

    MSB Justified is much like I2S, with a few differences:

    +
    +driver_sai_msb.png +
    +

    Unlike I2S, in MSB Justified the word select (WS) signals the left channel when it is active high and the right channel, when it is active low. The signal changes when the first actual SD data is available. It might happen that a frame (left or right) is not fully filled with data. In this case, all data after the LSB is forced to zero.

    +

    In terms of the CMSIS-Driver for SAI, the MSB Justified protocol can be described as follows:

    +
      +
    • Data Size: 8..32 (MSB first)
    • +
    • Clock Polarity: Drive on falling edge, Capture on rising edge
    • +
    • Frame Length: 2 * Slot Size
    • +
    • Frame Sync Width: Frame Length / 2
    • +
    • Frame Sync Polarity: Active High
    • +
    • Slot Count: 2 (L R)
    • +
    • Slot Size: Data Size or higher (16/32)
    • +
    • Slot Offset: 0 (Zero padding after Data: Slot Size - Data Size)
    • +
    +

    +LSB Justified

    +

    LSB Justified is much like MSB Justified, with the single difference that the padding 0's are sent before the first actual data (MSB on SD):

    +
    +driver_sai_lsb.png +
    +

    In terms of the CMSIS-Driver for SAI, the LSB Justified protocol can be described as follows:

    +
      +
    • Data Size: 8..32 (MSB first)
    • +
    • Clock Polarity: Drive on falling edge, Capture on rising edge
    • +
    • Frame Length: 2*Slot Size
    • +
    • Frame Sync Width: Frame Length / 2
    • +
    • Frame Sync Polarity: Active High
    • +
    • Slot Count: 2
    • +
    • Slot Size: Data Size or higher (16/32)
    • +
    • Slot Offset: Slot Size - Data Size (Zero padding before Data: Slot Size - Data Size)
    • +
    +

    +PCM

    +

    Pulse Code Modulation (PCM) differs to the previous protocols in a few ways:

    +
    +driver_sai_pcm.png +
    +
      +
    • Only one channel is transferred.
    • +
    +
      +
    • There are two types of synchronization modes available:
        +
      • In short frame sync mode, the falling edge of Frame Sync indicates the start of the serial data SD. Frame Sync is always one clock cycle long.
      • +
      • In long frame sync mode, the rising edge of Frame Sync indicates the start of the serial data SD. Frame Sync stays active high for 13 clock cycles.
      • +
      +
    • +
    +

    In terms of the CMSIS-Driver for SAI, the PCM protocol can be described as follows:
    + PCM Short Frame

    +
      +
    • Data Size: 8..32 (MSB first)
    • +
    • Clock Polarity: Drive on falling edge, Capture on rising edge
    • +
    • Frame Length: Slot Size
    • +
    • Frame Sync Width: 1
    • +
    • Frame Sync Polarity: Active High
    • +
    • Frame Sync Early
    • +
    • Slot Count: 1
    • +
    • Slot Size: Data Size or higher (16/32)
    • +
    • Slot Offset: 0
    • +
    +

    PCM Long Frame

    +
      +
    • Data Size: 16..32 (MSB first)
    • +
    • Clock Polarity: Drive on falling edge, Capture on rising edge
    • +
    • Frame Length: Slot Size
    • +
    • Frame Sync Width: 13
    • +
    • Frame Sync Polarity: Active High
    • +
    • Slot Count: 1
    • +
    • Slot Size: Data Size or higher (32)
    • +
    • Slot Offset: 0
    • +
    +

    +AC'97

    +

    Audio Codec '97 was developed by Intel. It is composed of five wires: the clock (12.288 MHz), a sync signal, a reset signal, and two data wires: sdata_out (contains the AC97 output) and sdata_in (contains the CODEC output). For more information, consult the standard documentation.

    +

    +User Defined Protocol

    +

    Using the control structs of the CMSIS-Driver SAI, it is possible to create support for nearly all serial audio protocols that are available today.

    +
    +driver_sai_user.png +
    +

    The following properties can be configured for a user protocol:

    +
      +
    • Data Size in bits (8..32)
    • +
    • Data Bit Order: MSB first (default) or LSB first
    • +
    • Clock Polarity:
        +
      • Driver on falling edge, Capture on rising edge (default)
      • +
      • Driver on rising edge, Capture on falling edge
      • +
      +
    • +
    • Frame Length in bits
    • +
    • Frame Sync Width in bits (default=1)
    • +
    • Frame Sync Polarity: active high (default) or low
    • +
    • Frame Sync Early: Sync signal one bit before the first bit of frame
    • +
    • Slot Count: number of slots in frame (default=1)
    • +
    • Slot Size: equal to data size (default) or 16 or 32-bit
    • +
    • Slot Offset: offset of first data bit in slot (default=0)
    • +
    +

    For more information, refer to ARM_SAI_Control that explains the different configuration options in more detail.

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_SAI
    +
    +

    Access structure of the SAI Driver.

    +

    The functions of the SAI driver are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of an SAI interface provides such an access structure. The instance is identified by a postfix number in the symbol name of the access structure, for example:

    +
      +
    • Driver_SAI0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_SAI1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A middleware configuration setting allows connecting the middleware to a specific driver instance Driver_SAIn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_SAI_GetVersion : Get driver version.
     
    ARM_SAI_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_SAI_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_SAI_SignalEvent_t cb_event)
     Pointer to ARM_SAI_Initialize : Initialize SAI Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_SAI_Uninitialize : De-initialize SAI Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_SAI_PowerControl : Control SAI Interface Power.
     
    int32_t(* Send )(const void *data, uint32_t num)
     Pointer to ARM_SAI_Send : Start sending data to SAI Interface.
     
    int32_t(* Receive )(void *data, uint32_t num)
     Pointer to ARM_SAI_Receive : Start receiving data from SAI Interface.
     
    uint32_t(* GetTxCount )(void)
     Pointer to ARM_SAI_GetTxCount : Get transmitted data count.
     
    uint32_t(* GetRxCount )(void)
     Pointer to ARM_SAI_GetRxCount : Get received data count.
     
    int32_t(* Control )(uint32_t control, uint32_t arg1, uint32_t arg2)
     Pointer to ARM_SAI_Control : Control SAI Interface.
     
    ARM_SAI_STATUS(* GetStatus )(void)
     Pointer to ARM_SAI_GetStatus : Get SAI status.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_SAI_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_SAI_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_SAI_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_SAI_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_SAI_Initialize : Initialize SAI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_SAI_Uninitialize : De-initialize SAI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_SAI_PowerControl : Control SAI Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Send)(const void *data, uint32_t num)
    +
    + +

    Pointer to ARM_SAI_Send : Start sending data to SAI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Receive)(void *data, uint32_t num)
    +
    + +

    Pointer to ARM_SAI_Receive : Start receiving data from SAI Interface.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* GetTxCount)(void)
    +
    + +

    Pointer to ARM_SAI_GetTxCount : Get transmitted data count.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* GetRxCount)(void)
    +
    + +

    Pointer to ARM_SAI_GetRxCount : Get received data count.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t control, uint32_t arg1, uint32_t arg2)
    +
    + +

    Pointer to ARM_SAI_Control : Control SAI Interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_SAI_STATUS(* GetStatus)(void)
    +
    + +

    Pointer to ARM_SAI_GetStatus : Get SAI status.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_SAI_CAPABILITIES
    +
    +

    SAI Driver Capabilities.

    +

    An SAI driver can be implemented with different capabilities (for example protocol support). The data fields of this structure encode the capabilities implemented by this driver. If a certain hardware peripheral is not able to handle one of the protocols directly (not advertised using ARM_SAI_CAPABILITIES), then it might be possible to implement it using the User Defined Protocol (if supported).

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +asynchronous: 1 +supports asynchronous Transmit/Receive
    +uint32_t +synchronous: 1 +supports synchronous Transmit/Receive
    +uint32_t +protocol_user: 1 +supports user defined Protocol
    +uint32_t +protocol_i2s: 1 +supports I2S Protocol
    +uint32_t +protocol_justified: 1 +supports MSB/LSB justified Protocol
    +uint32_t +protocol_pcm: 1 +supports PCM short/long frame Protocol
    +uint32_t +protocol_ac97: 1 +supports AC'97 Protocol
    +uint32_t +mono_mode: 1 +supports Mono mode
    +uint32_t +companding: 1 +supports Companding
    +uint32_t +mclk_pin: 1 +supports MCLK (Master Clock) pin
    +uint32_t +event_frame_error: 1 +supports Frame error event: ARM_SAI_EVENT_FRAME_ERROR
    + +
    +
    + +
    +
    + + + + +
    struct ARM_SAI_STATUS
    +
    +

    SAI Status.

    +

    Structure with information about the status of the SAI. The data fields encode busy flags and error flags.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +tx_busy: 1 +Transmitter busy flag.
    +uint32_t +rx_busy: 1 +Receiver busy flag.
    +uint32_t +tx_underflow: 1 +Transmit data underflow detected (cleared on start of next send operation)
    +uint32_t +rx_overflow: 1 +Receive data overflow detected (cleared on start of next receive operation)
    +uint32_t +frame_error: 1 +Sync Frame error detected (cleared on start of next send/receive operation)
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_SAI_SignalEvent_t
    +
    + +

    Pointer to ARM_SAI_SignalEvent : Signal SAI Event.

    +

    Provides the typedef for the callback function ARM_SAI_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_SAI_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_SAI_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_SAI Driver_SAI0;
    +
    ARM_DRIVER_SAI *drv_info;
    +
    +
    void setup_sai (void) {
    + +
    +
    drv_info = &Driver_SAI0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_SAI_CAPABILITIES ARM_SAI_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_SAI_CAPABILITIES
    +

    The function ARM_SAI_GetCapabilities retrieves information about the capabilities in this driver implementation. The data fields of the struct ARM_SAI_CAPABILITIES encode various capabilities, for example supported protocols, or if a hardware is capable to create signal events using the ARM_SAI_SignalEvent callback function.

    +

    Example:

    +
    extern ARM_DRIVER_SAI Driver_SAI0;
    +
    ARM_DRIVER_SAI *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_SAI_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_SAI0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_SAI_Initialize (ARM_SAI_SignalEvent_t cb_event)
    +
    + +

    Initialize SAI Interface.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_SAI_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SAI_Initialize initializes the SAI interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    +
      +
    • Initializes the required resources of the SAI interface.
    • +
    • Registers the ARM_SAI_SignalEvent callback function.
    • +
    +

    The parameter cb_event is a pointer to the ARM_SAI_SignalEvent callback function; use a NULL pointer when no callback signals are required.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_SAI_Uninitialize (void )
    +
    + +

    De-initialize SAI Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_SAI_Uninitialize de-initializes the resources of SAI interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_SAI_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control SAI Interface Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SAI_PowerControl allows you to control the power modes of the SAI interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_SAI_Send (const void * data,
    uint32_t num 
    )
    +
    + +

    Start sending data to SAI transmitter.

    +
    Parameters
    + + + +
    [in]dataPointer to buffer with data to send to SAI transmitter
    [in]numNumber of data items to send
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SAI_Send sends data to the SAI transmitter.

    +

    The function parameters specify the buffer with data and the number num of items to send. The item size is defined by the data type which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 8 data bits
    • +
    • uint16_t when configured for 9..16 data bits
    • +
    • uint32_t when configured for 17..32 data bits
    • +
    +

    Transmitter is enabled by calling ARM_SAI_Control with ARM_SAI_CONTROL_TX as the control parameter and 1 as an argument. This starts the transmit engine which, generates a clock and frame sync signal in master mode and transmits the data. In slave mode, clock and frame sync are generated by the external master. When mute is active, data is discarded and zero values are transmitted.

    +

    Calling the function ARM_SAI_Send only starts the send operation. The function is non-blocking and returns as soon as the driver has started the operation (the driver typically configures DMA or the interrupt system for continuous transfer). During the operation it is not allowed to call this function again. Also, the data buffer must stay allocated and the contents of unsent data must not be modified. When the send operation is completed (requested number of items have been sent), the event ARM_SAI_EVENT_SEND_COMPLETE is generated. Progress of the send operation can be monitored by reading the number of already sent items by calling the function ARM_SAI_GetTxCount.

    +

    The status of the transmitter can also be monitored by calling the function ARM_SAI_GetStatus and checking the tx_busy flag, which indicates if a transmission is still in progress.

    +

    If the transmitter is enabled and data is to be sent but the send operation has not been started yet, then the event ARM_SAI_EVENT_TX_UNDERFLOW is generated.

    +

    If an invalid synchronization frame is detected in slave mode, then the event ARM_SAI_EVENT_FRAME_ERROR is generated (if supported and reported by event_frame_error in ARM_SAI_CAPABILITIES).

    +

    The send operation can be aborted by calling the function ARM_SAI_Control with the control parameter ARM_SAI_ABORT_SEND.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_SAI_Receive (void * data,
    uint32_t num 
    )
    +
    + +

    Start receiving data from SAI receiver.

    +
    Parameters
    + + + +
    [out]dataPointer to buffer for data to receive from SAI receiver
    [in]numNumber of data items to receive
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SAI_Receive is used to receive data from the SAI receiver. The function parameters specify the buffer for data and the number num of items to receive. The item size is defined by the data type, which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 8 data bits
    • +
    • uint16_t when configured for 9..16 data bits
    • +
    • uint32_t when configured for 17..32 data bits
    • +
    +

    The receiver is enabled by calling the function ARM_SAI_Control with the control parameter ARM_SAI_CONTROL_RX and the value 1 for the parameter arg1. This starts the receive engine, which generates a clock and frame sync signal in master mode and receives data. In slave mode, clock and frame sync are generated by the external master.

    +

    Calling the function ARM_SAI_Receive only starts the receive operation. The function is non-blocking and returns as soon as the driver has started the operation (the driver typically configures DMA or the interrupt system for continuous transfer). During the operation, it is not allowed to call this function again. The data buffer must also stay allocated. When receive operation is completed (the requested number of items have been received), the ARM_SAI_EVENT_RECEIVE_COMPLETE event is generated. Progress of the receive operation can also be monitored by reading the number of items already received by calling the function ARM_SAI_GetRxCount.

    +

    The status of the receiver can also be monitored by calling the function ARM_SAI_GetStatus and checking the rx_busy flag, which indicates whether a reception is still in progress.

    +

    When the receiver is enabled and data is received but the receive operation has not been started yet, then the event ARM_SAI_EVENT_RX_OVERFLOW is generated.

    +

    If an invalid synchronization frame is detected in slave mode, then the event ARM_SAI_EVENT_FRAME_ERROR is generated (if supported and reported by event_frame_error in ARM_SAI_CAPABILITIES).

    +

    The receive operation can be aborted by calling the function ARM_SAI_Control with the control parameter ARM_SAI_ABORT_RECEIVE.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_SAI_GetTxCount (void )
    +
    + +

    Get transmitted data count.

    +
    Returns
    number of data items transmitted
    +

    The function ARM_SAI_GetTxCount returns the number of the currently transmitted data items during an ARM_SAI_Send operation.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_SAI_GetRxCount (void )
    +
    + +

    Get received data count.

    +
    Returns
    number of data items received
    +

    The function ARM_SAI_GetRxCount returns the number of the currently received data items during an ARM_SAI_Receive operation.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_SAI_Control (uint32_t control,
    uint32_t arg1,
    uint32_t arg2 
    )
    +
    + +

    Control SAI Interface.

    +
    Parameters
    + + + + +
    [in]controlOperation
    [in]arg1Argument 1 of operation (optional)
    [in]arg2Argument 2 of operation (optional)
    +
    +
    +
    Returns
    common Status Error Codes and driver specific Status Error Codes
    +

    The function ARM_SAI_Control controls the SAI interface and executes various operations.

    +

    The parameter control specifies the operation. Values are listed in the table Parameter control.
    + The parameter arg1 provides, depending on the operation, additional information or sets values. Refer to table Parameter arg1.
    + The parameter arg2 provides, depending on the operation and/or arg1, additional information or sets values.

    +

    The driver provides a receiver/transmitter pair of signals. In asynchronous operation mode, they operate completely independent from each other. In synchronous operation mode, the synchronous channel uses the Clock (SCK) and Frame Sync (WS) signal from the asynchronous one (control category Synchronization).

    +

    The clock polarity can be set for every protocol, regardless whether it is already predefined for I2S, MSB/LSB Jusitified (control category Clock Polarity).

    +

    A master clock provides a faster clock from which the frame can be derived (usually 256 x faster than the normal frame clock). You can use a master clock only in master mode. A slave will always have only one clock (control category Master Clock pin (MCLK)).

    +

    The table lists the operation values for control. Values from different categories can be ORed.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter control Bit Category Description
    ARM_SAI_CONFIGURE_TX 0..7 Operation Configure transmitter. arg1 (see Parameter arg1) and arg2 provide additional configuration.
    ARM_SAI_CONFIGURE_TX Configure transmitter. arg1 (see Parameter arg1) and arg2 provide additional configuration.
    ARM_SAI_CONFIGURE_RX Configure transmitter. arg1 and arg2 provide additional configuration.
    ARM_SAI_CONTROL_TX Enable or disable transmitter and control mute; arg1.0 : 0=disable (default); 1=enable; arg1.1 : mute (see ARM_SAI_Send)
    ARM_SAI_CONTROL_RX Enable or disable receiver; arg1.0 : 0=disable (default); 1=enable (see ARM_SAI_Receive)
    ARM_SAI_MASK_SLOTS_TX Mask transmitter slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.
    ARM_SAI_MASK_SLOTS_RX Mask receiver slots; arg1 = mask (bit: 0=active, 1=inactive); all configured slots are active by default.
    ARM_SAI_ABORT_SEND Abort send operation (see ARM_SAI_Send).
    ARM_SAI_ABORT_RECEIVE Abort receive operation (see ARM_SAI_Receive).
    ARM_SAI_MODE_MASTER 8 Mode Master mode. arg2 specifies the audio frequency in [Hz]. You can also set the Master Clock pin.
    ARM_SAI_MODE_SLAVE (default) Slave mode.
    ARM_SAI_ASYNCHRONOUS (default) 9 Synchronization Asynchronous operation using own clock and sync signal.
    ARM_SAI_SYNCHRONOUS Synchronous operation using clock and sync signal from other transmitter/receiver.
    ARM_SAI_PROTOCOL_USER (default) 10..12 Protocol User defined
    ARM_SAI_PROTOCOL_I2S I2C
    ARM_SAI_PROTOCOL_MSB_JUSTIFIED MSB (left) justified
    ARM_SAI_PROTOCOL_LSB_JUSTIFIED LSB (right) justified
    ARM_SAI_PROTOCOL_PCM_SHORT PCM with short frame
    ARM_SAI_PROTOCOL_PCM_LONG PCM with long frame
    ARM_SAI_PROTOCOL_AC97 AC'97
    ARM_SAI_DATA_SIZE(n) 13..17 Data Size Data size in bits; the range for n is 8..32. See also: Frame Slot Size.
    ARM_SAI_MSB_FIRST 18 Bit Order Data is transferred with MSB first.
    ARM_SAI_LSB_FIRST Data is transferred with LSB first (User protocol only, ignored otherwise).
    ARM_SAI_MONO_MODE 19 Mono Mode Only for I2S, MSB/LSB justified. When using I2S in mono mode, only data for a single channel is sent to and received from the driver. Hardware will duplicate the data for the second channel on transmit and ignore the second channel on receive.
    ARM_SAI_COMPANDING_NONE (default) 20..22 Companding No companding
    ARM_SAI_COMPANDING_A_LAW A-Law companding (8-bit data)
    ARM_SAI_COMPANDING_U_LAW u-Law companding (8-bit data)
    ARM_SAI_CLOCK_POLARITY_0 (default) > 23 Clock Polarity Drive on falling edge, capture on rising edge.
    ARM_SAI_CLOCK_POLARITY_1 Drive on rising edge, capture on falling edge.
    ARM_SAI_MCLK_PIN_INACTIVE (default) 24..26 Master Clock pin (MCLK) MCLK not used.
    ARM_SAI_MCLK_PIN_OUTPUT MCLK is output (Master mode only).
    ARM_SAI_MCLK_PIN_INPUT MCLK is input (Master mode only).
    +

    The parameter arg1 provides frame-specific values depending on the control operation. Values from different categories can be ORed.

    + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter arg1 Bit Category Description
    ARM_SAI_FRAME_LENGTH(n) 0..9 Frame Length Frame length in bits; the possible range for n is 8..1024; default depends on protocol and data.
    ARM_SAI_FRAME_SYNC_WIDTH(n) 10..17 Frame Sync Width Frame Sync width in bits; the possible range for n is 1..256; default=1; User protocol only, ignored otherwise.
    ARM_SAI_FRAME_SYNC_POLARITY_HIGH 18 Frame Sync Polarity Frame Sync is active high (default).
    ARM_SAI_FRAME_SYNC_POLARITY_LOW Frame Sync is active low (User protocol only, ignored otherwise).
    ARM_SAI_FRAME_SYNC_EARLY 19 Frame Sync Early Frame Sync one bit before the first bit of the frame (User protocol only, ignored otherwise).
    ARM_SAI_SLOT_COUNT(n) 20..24 Frame Sync Count Number of slots in frame; the possible range for n is 1..32; default=1; User protocol only, ignored otherwise.
    ARM_SAI_SLOT_SIZE_DEFAULT 25..26 Frame Slot Size Slot size is equal to data size (default).
    ARM_SAI_SLOT_SIZE_16 Slot size is 16 bits (User protocol only, ignored otherwise).
    ARM_SAI_SLOT_SIZE_32 Slot size is 32 bits (User protocol only, ignored otherwise).
    ARM_SAI_SLOT_OFFSET(n) 27..31 Frame Slot Offset Offset of first data bit in slot; The range for n is 0..31; default=0; User protocol only, ignored otherwise.
    +

    Depending on the control operation, the parameter arg2 specifies the Master Clock (MCLK) prescaler and calculates the audio frequency automatically.

    + + + + + +
    Parameter arg2 MCLK Prescaler
    ARM_SAI_MCLK_PRESCALER(n) MCLK prescaler; Audio frequency = MCLK/n; the range for n is 1..4096; default=1.
    +

    Example

    +
    extern ARM_DRIVER_SAI Driver_SAI0;
    +
    +
    // configure Transmitter to Asynchronous Master: I2S Protocol, 16-bit data, 16kHz Audio frequency
    +
    status = Driver_SAI0.Control(ARM_SAI_CONFIGURE_TX |
    + + + +
    ARM_SAI_DATA_SIZE(16), 0, 16000);
    +
    +
    // configure Receiver to Asynchronous Master: I2S Protocol, 16-bit data, 16kHz Audio frequency
    +
    status = Driver_SAI0.Control(ARM_SAI_CONFIGURE_RX |
    + + + +
    ARM_SAI_DATA_SIZE(16), 0, 16000);
    +
    +
    // enable Transmitter
    +
    status = Driver_SAI0.Control(ARM_SAI_CONTROL_TX, 1, 0);
    +
    +
    // enable Receiver
    +
    status = Driver_SAI0.Control(ARM_SAI_CONTROL_RX, 1, 0);
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_SAI_STATUS ARM_SAI_GetStatus (void )
    +
    + +

    Get SAI status.

    +
    Returns
    SAI status ARM_SAI_STATUS
    +

    The function ARM_SAI_GetStatus retrieves the current SAI interface status.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_SAI_SignalEvent (uint32_t event)
    +
    + +

    Signal SAI Events.

    +
    Parameters
    + + +
    [in]eventSAI Events notification mask
    +
    +
    +
    Returns
    none
    +

    The function ARM_SAI_SignalEvent is a callback function registered by the function ARM_SAI_Initialize.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    The following events can be generated:

    + + + + + + + + + + + + + +
    Parameter event Bit Description
    ARM_SAI_EVENT_SEND_COMPLETE 0 Occurs after call to ARM_SAI_Send to indicate that all the data has been sent (or queued in transmit buffers). The driver is ready for the next call to ARM_SAI_Send.
    ARM_SAI_EVENT_RECEIVE_COMPLETE 1 Occurs after call to ARM_SAI_Receive to indicate that all the data has been received. The driver is ready for the next call to ARM_SAI_Receive.
    ARM_SAI_EVENT_TX_UNDERFLOW 2 Occurs when data is to be sent but send operation has not been started. Data field tx_underflow = 1 of ARM_SAI_STATUS.
    ARM_SAI_EVENT_RX_OVERFLOW 3 Occurs when data is received but receive operation has not been started. Data field rx_underflow = 1 of ARM_SAI_STATUS.
    ARM_SAI_EVENT_FRAME_ERROR 4 Occurs in slave mode when invalid synchronization frame is detected. Data field event_frame_error = 1 of ARM_SAI_STATUS.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__interface__gr.js b/CMSIS/Documentation/Driver/html/group__sai__interface__gr.js new file mode 100644 index 0000000..fef1e1d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__interface__gr.js @@ -0,0 +1,52 @@ +var group__sai__interface__gr = +[ + [ "Status Error Codes", "group__sai__execution__status.html", "group__sai__execution__status" ], + [ "SAI Events", "group___s_a_i__events.html", "group___s_a_i__events" ], + [ "SAI Control Codes", "group__sai__control.html", "group__sai__control" ], + [ "ARM_DRIVER_SAI", "group__sai__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_a_i", [ + [ "GetVersion", "group__sai__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__sai__interface__gr.html#a7e230744b9898cabf80ee6f2595569f6", null ], + [ "Initialize", "group__sai__interface__gr.html#a54a38e78d5fd7ca0d37174c81ec01731", null ], + [ "Uninitialize", "group__sai__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__sai__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "Send", "group__sai__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922", null ], + [ "Receive", "group__sai__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3", null ], + [ "GetTxCount", "group__sai__interface__gr.html#a0b28b2c21016702f50c28655653099df", null ], + [ "GetRxCount", "group__sai__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71", null ], + [ "Control", "group__sai__interface__gr.html#a80455fc2c7355b1850098710fd66a244", null ], + [ "GetStatus", "group__sai__interface__gr.html#a310d55d55bd7c6b0393d43bb994db708", null ] + ] ], + [ "ARM_SAI_CAPABILITIES", "group__sai__interface__gr.html#struct_a_r_m___s_a_i___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "asynchronous", "group__sai__interface__gr.html#a75ba2507ea29601a309393e794f4413d", null ], + [ "synchronous", "group__sai__interface__gr.html#a9fa4f850b8ce2be2c7ffa2e3ec70ae20", null ], + [ "protocol_user", "group__sai__interface__gr.html#a808b1f9e0abc3fa67945899cfc9fccc1", null ], + [ "protocol_i2s", "group__sai__interface__gr.html#a6fcb9d68c4999860ce162c0ef44c4c97", null ], + [ "protocol_justified", "group__sai__interface__gr.html#a5363ec1fc0042620cb8aeeee4f98691b", null ], + [ "protocol_pcm", "group__sai__interface__gr.html#a0b2c79bd96ecb47d801fc5389819314a", null ], + [ "protocol_ac97", "group__sai__interface__gr.html#a5255f8d78a18ace0a959f604f9c065dd", null ], + [ "mono_mode", "group__sai__interface__gr.html#a8d92817d8662211abda2d747c52ff4a9", null ], + [ "companding", "group__sai__interface__gr.html#a77e4d8466d2bde30e6583b9ad8ba8c82", null ], + [ "mclk_pin", "group__sai__interface__gr.html#a12554e2522a0c611e8a26c9e536554eb", null ], + [ "event_frame_error", "group__sai__interface__gr.html#acc06ba75f18af9862d171426abc3273e", null ] + ] ], + [ "ARM_SAI_STATUS", "group__sai__interface__gr.html#struct_a_r_m___s_a_i___s_t_a_t_u_s", [ + [ "tx_busy", "group__sai__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b", null ], + [ "rx_busy", "group__sai__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4", null ], + [ "tx_underflow", "group__sai__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72", null ], + [ "rx_overflow", "group__sai__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa", null ], + [ "frame_error", "group__sai__interface__gr.html#a1b4f69a2caf19ef9fd75cf27ae3932f9", null ] + ] ], + [ "ARM_SAI_SignalEvent_t", "group__sai__interface__gr.html#gad8ca8e2459e540928f6315b3df6da0ee", null ], + [ "ARM_SAI_GetVersion", "group__sai__interface__gr.html#ga786b1970a788a4dfc6156b42364e52f8", null ], + [ "ARM_SAI_GetCapabilities", "group__sai__interface__gr.html#gac6c636757944eaf25aebf312a67665aa", null ], + [ "ARM_SAI_Initialize", "group__sai__interface__gr.html#ga89622a02ca1e7affb1a01eefacb6f54c", null ], + [ "ARM_SAI_Uninitialize", "group__sai__interface__gr.html#gabdefafaba6f072cfd7ed6f8f132422b6", null ], + [ "ARM_SAI_PowerControl", "group__sai__interface__gr.html#gacdec50a3dd5902de601caa7397c1dabc", null ], + [ "ARM_SAI_Send", "group__sai__interface__gr.html#ga8bb6866c535adeb930bc4a847d476fcd", null ], + [ "ARM_SAI_Receive", "group__sai__interface__gr.html#ga2d55f506cef9d2849cbe418146086d98", null ], + [ "ARM_SAI_GetTxCount", "group__sai__interface__gr.html#gaa9805f9d32aee205f787e625a58e8898", null ], + [ "ARM_SAI_GetRxCount", "group__sai__interface__gr.html#ga2c571fcc8b9632c25a64043bc2b2baec", null ], + [ "ARM_SAI_Control", "group__sai__interface__gr.html#ga405a0769c33da6801055db0fb9b6c869", null ], + [ "ARM_SAI_GetStatus", "group__sai__interface__gr.html#ga6a202b57697f0f7a9742e76b33d5eeec", null ], + [ "ARM_SAI_SignalEvent", "group__sai__interface__gr.html#gaedf3347cb25d6bf2faad1bbb35ad79f4", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.html b/CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.html new file mode 100644 index 0000000..a34bb65 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.html @@ -0,0 +1,191 @@ + + + + + +SAI Master Clock Pin +CMSIS-Driver: SAI Master Clock Pin + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Master Clock Pin
    +
    +
    + +

    Defines MCLK pin. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_MCLK_PIN_INACTIVE   (0U << ARM_SAI_MCLK_PIN_Pos)
     MCLK not used (default)
     
    #define ARM_SAI_MCLK_PIN_OUTPUT   (1U << ARM_SAI_MCLK_PIN_Pos)
     MCLK is output (Master only)
     
    #define ARM_SAI_MCLK_PIN_INPUT   (2U << ARM_SAI_MCLK_PIN_Pos)
     MCLK is input (Master only)
     
    +

    Description

    +

    Defines MCLK pin.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_MCLK_PIN_INACTIVE   (0U << ARM_SAI_MCLK_PIN_Pos)
    +
    + +

    MCLK not used (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MCLK_PIN_OUTPUT   (1U << ARM_SAI_MCLK_PIN_Pos)
    +
    + +

    MCLK is output (Master only)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MCLK_PIN_INPUT   (2U << ARM_SAI_MCLK_PIN_Pos)
    +
    + +

    MCLK is input (Master only)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.js b/CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.js new file mode 100644 index 0000000..de9029e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mclk__pin__control.js @@ -0,0 +1,6 @@ +var group__sai__mclk__pin__control = +[ + [ "ARM_SAI_MCLK_PIN_INACTIVE", "group__sai__mclk__pin__control.html#ga7654bffb42e96d48df57c598323337d6", null ], + [ "ARM_SAI_MCLK_PIN_OUTPUT", "group__sai__mclk__pin__control.html#ga24d99edf05699eff32da02742fb04ced", null ], + [ "ARM_SAI_MCLK_PIN_INPUT", "group__sai__mclk__pin__control.html#ga2cd610be9ba9532b2926376deaacf5ad", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.html b/CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.html new file mode 100644 index 0000000..41d89fa --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.html @@ -0,0 +1,161 @@ + + + + + +SAI Master Clock Prescaler +CMSIS-Driver: SAI Master Clock Prescaler + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Master Clock Prescaler
    +
    +
    + +

    Defines MCLK prescaler. +More...

    + + + + + +

    +Macros

    #define ARM_SAI_MCLK_PRESCALER(n)   ((((n)-1)&0xFFFU) << ARM_SAI_MCLK_PRESCALER_Pos)
     MCLK prescaler; Audio_frequency = MCLK/n; n = 1..4096 (default=1)
     
    +

    Description

    +

    Defines MCLK prescaler.

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_SAI_MCLK_PRESCALER( n)   ((((n)-1)&0xFFFU) << ARM_SAI_MCLK_PRESCALER_Pos)
    +
    + +

    MCLK prescaler; Audio_frequency = MCLK/n; n = 1..4096 (default=1)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.js b/CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.js new file mode 100644 index 0000000..f2a4b45 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mclk__pres__control.js @@ -0,0 +1,4 @@ +var group__sai__mclk__pres__control = +[ + [ "ARM_SAI_MCLK_PRESCALER", "group__sai__mclk__pres__control.html#ga2afa85cd335e75d8b9b06c9f47f3f4b0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__mode__control.html b/CMSIS/Documentation/Driver/html/group__sai__mode__control.html new file mode 100644 index 0000000..94fcc20 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mode__control.html @@ -0,0 +1,174 @@ + + + + + +SAI Mode +CMSIS-Driver: SAI Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Mode
    +
    +
    + +

    Defines Transmitter/Receiver mode. +More...

    + + + + + + + + +

    +Macros

    #define ARM_SAI_MODE_MASTER   (1U << ARM_SAI_MODE_Pos)
     Master Mode.
     
    #define ARM_SAI_MODE_SLAVE   (0U << ARM_SAI_MODE_Pos)
     Slave Mode (default)
     
    +

    Description

    +

    Defines Transmitter/Receiver mode.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_MODE_MASTER   (1U << ARM_SAI_MODE_Pos)
    +
    + +

    Master Mode.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_MODE_SLAVE   (0U << ARM_SAI_MODE_Pos)
    +
    + +

    Slave Mode (default)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__mode__control.js b/CMSIS/Documentation/Driver/html/group__sai__mode__control.js new file mode 100644 index 0000000..5af2bd5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mode__control.js @@ -0,0 +1,5 @@ +var group__sai__mode__control = +[ + [ "ARM_SAI_MODE_MASTER", "group__sai__mode__control.html#ga5bedff714ea0f90139665b72d44daddc", null ], + [ "ARM_SAI_MODE_SLAVE", "group__sai__mode__control.html#ga5956c12a24a506754ecc7999f0660bb5", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__mono__control.html b/CMSIS/Documentation/Driver/html/group__sai__mono__control.html new file mode 100644 index 0000000..68935e5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mono__control.html @@ -0,0 +1,157 @@ + + + + + +SAI Mono Mode +CMSIS-Driver: SAI Mono Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Mono Mode
    +
    +
    + +

    Defines mono mode. +More...

    + + + + + +

    +Macros

    #define ARM_SAI_MONO_MODE   (1U << 19)
     Mono Mode (only for I2S, MSB/LSB justified)
     
    +

    Description

    +

    Defines mono mode.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_MONO_MODE   (1U << 19)
    +
    + +

    Mono Mode (only for I2S, MSB/LSB justified)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__mono__control.js b/CMSIS/Documentation/Driver/html/group__sai__mono__control.js new file mode 100644 index 0000000..f3733e3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__mono__control.js @@ -0,0 +1,4 @@ +var group__sai__mono__control = +[ + [ "ARM_SAI_MONO_MODE", "group__sai__mono__control.html#ga0adcd27875d92add813b9664e9cb0b4b", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__protocol__control.html b/CMSIS/Documentation/Driver/html/group__sai__protocol__control.html new file mode 100644 index 0000000..cf022a2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__protocol__control.html @@ -0,0 +1,259 @@ + + + + + +SAI Protocol +CMSIS-Driver: SAI Protocol + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Protocol
    +
    +
    + +

    Defines Transmitter/Receiver protocol. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_PROTOCOL_USER   (0U << ARM_SAI_PROTOCOL_Pos)
     User defined (default)
     
    #define ARM_SAI_PROTOCOL_I2S   (1U << ARM_SAI_PROTOCOL_Pos)
     I2S.
     
    #define ARM_SAI_PROTOCOL_MSB_JUSTIFIED   (2U << ARM_SAI_PROTOCOL_Pos)
     MSB (left) justified.
     
    #define ARM_SAI_PROTOCOL_LSB_JUSTIFIED   (3U << ARM_SAI_PROTOCOL_Pos)
     LSB (right) justified.
     
    #define ARM_SAI_PROTOCOL_PCM_SHORT   (4U << ARM_SAI_PROTOCOL_Pos)
     PCM with short frame.
     
    #define ARM_SAI_PROTOCOL_PCM_LONG   (5U << ARM_SAI_PROTOCOL_Pos)
     PCM with long frame.
     
    #define ARM_SAI_PROTOCOL_AC97   (6U << ARM_SAI_PROTOCOL_Pos)
     AC'97.
     
    +

    Description

    +

    Defines Transmitter/Receiver protocol.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_USER   (0U << ARM_SAI_PROTOCOL_Pos)
    +
    + +

    User defined (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_I2S   (1U << ARM_SAI_PROTOCOL_Pos)
    +
    + +

    I2S.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_MSB_JUSTIFIED   (2U << ARM_SAI_PROTOCOL_Pos)
    +
    + +

    MSB (left) justified.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_LSB_JUSTIFIED   (3U << ARM_SAI_PROTOCOL_Pos)
    +
    + +

    LSB (right) justified.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_PCM_SHORT   (4U << ARM_SAI_PROTOCOL_Pos)
    +
    + +

    PCM with short frame.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_PCM_LONG   (5U << ARM_SAI_PROTOCOL_Pos)
    +
    + +

    PCM with long frame.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_PROTOCOL_AC97   (6U << ARM_SAI_PROTOCOL_Pos)
    +
    + +

    AC'97.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__protocol__control.js b/CMSIS/Documentation/Driver/html/group__sai__protocol__control.js new file mode 100644 index 0000000..ba00237 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__protocol__control.js @@ -0,0 +1,10 @@ +var group__sai__protocol__control = +[ + [ "ARM_SAI_PROTOCOL_USER", "group__sai__protocol__control.html#gacef87941052c21ebacd3dde6ce9d6925", null ], + [ "ARM_SAI_PROTOCOL_I2S", "group__sai__protocol__control.html#gaaaf423bbe59920b3c7813e22ce083ddc", null ], + [ "ARM_SAI_PROTOCOL_MSB_JUSTIFIED", "group__sai__protocol__control.html#gad931f9e8aedff4e6040d726d707862f0", null ], + [ "ARM_SAI_PROTOCOL_LSB_JUSTIFIED", "group__sai__protocol__control.html#gab88b6f9b61a20927ac8f8d39e46c6349", null ], + [ "ARM_SAI_PROTOCOL_PCM_SHORT", "group__sai__protocol__control.html#ga3762437e0b1402b5d4fd293ae745f103", null ], + [ "ARM_SAI_PROTOCOL_PCM_LONG", "group__sai__protocol__control.html#gad43530c5b6ae1e89db587b20d71440b4", null ], + [ "ARM_SAI_PROTOCOL_AC97", "group__sai__protocol__control.html#ga8b1669910f4db4bb3584543e7eb04d7a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__slot__control.html b/CMSIS/Documentation/Driver/html/group__sai__slot__control.html new file mode 100644 index 0000000..d460365 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__slot__control.html @@ -0,0 +1,233 @@ + + + + + +SAI Slot +CMSIS-Driver: SAI Slot + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Slot
    +
    +
    + +

    Defines data slots. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SAI_SLOT_COUNT(n)   ((((n)-1)&0x1FU) << ARM_SAI_SLOT_COUNT_Pos)
     Number of slots in frame (1..32); default=1; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_SLOT_SIZE_DEFAULT   (0U << ARM_SAI_SLOT_SIZE_Pos)
     Slot size is equal to data size (default)
     
    #define ARM_SAI_SLOT_SIZE_16   (1U << ARM_SAI_SLOT_SIZE_Pos)
     Slot size = 16 bits; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_SLOT_SIZE_32   (3U << ARM_SAI_SLOT_SIZE_Pos)
     Slot size = 32 bits; User Protocol only (ignored otherwise)
     
    #define ARM_SAI_SLOT_OFFSET(n)   (((n)&0x1FU) << ARM_SAI_SLOT_OFFSET_Pos)
     Offset of first data bit in slot (0..31); default=0; User Protocol only (ignored otherwise)
     
    +

    Description

    +

    Defines data slots.

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_SAI_SLOT_COUNT( n)   ((((n)-1)&0x1FU) << ARM_SAI_SLOT_COUNT_Pos)
    +
    + +

    Number of slots in frame (1..32); default=1; User Protocol only (ignored otherwise)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_SIZE_DEFAULT   (0U << ARM_SAI_SLOT_SIZE_Pos)
    +
    + +

    Slot size is equal to data size (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_SIZE_16   (1U << ARM_SAI_SLOT_SIZE_Pos)
    +
    + +

    Slot size = 16 bits; User Protocol only (ignored otherwise)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SLOT_SIZE_32   (3U << ARM_SAI_SLOT_SIZE_Pos)
    +
    + +

    Slot size = 32 bits; User Protocol only (ignored otherwise)

    + +
    +
    + +
    +
    + + + + + + + + +
    #define ARM_SAI_SLOT_OFFSET( n)   (((n)&0x1FU) << ARM_SAI_SLOT_OFFSET_Pos)
    +
    + +

    Offset of first data bit in slot (0..31); default=0; User Protocol only (ignored otherwise)

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__slot__control.js b/CMSIS/Documentation/Driver/html/group__sai__slot__control.js new file mode 100644 index 0000000..28600b4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__slot__control.js @@ -0,0 +1,8 @@ +var group__sai__slot__control = +[ + [ "ARM_SAI_SLOT_COUNT", "group__sai__slot__control.html#ga8f2cf3a212ca7fe389e00b082efb5d0b", null ], + [ "ARM_SAI_SLOT_SIZE_DEFAULT", "group__sai__slot__control.html#gad77c6c0de2a4e7223a0c42e1594f0a2c", null ], + [ "ARM_SAI_SLOT_SIZE_16", "group__sai__slot__control.html#ga2bb9cf53b07cac81fb0fe71de6c97c83", null ], + [ "ARM_SAI_SLOT_SIZE_32", "group__sai__slot__control.html#gaaa5c4cc18a0f5668bc9f117874cd83dd", null ], + [ "ARM_SAI_SLOT_OFFSET", "group__sai__slot__control.html#ga48d4a142f3a1bb0fa4e88c9e427932a0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__sai__sync__control.html b/CMSIS/Documentation/Driver/html/group__sai__sync__control.html new file mode 100644 index 0000000..4910c28 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__sync__control.html @@ -0,0 +1,174 @@ + + + + + +SAI Synchronization +CMSIS-Driver: SAI Synchronization + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SAI Synchronization
    +
    +
    + +

    Defines Transmitter/Receiver synchronization. +More...

    + + + + + + + + +

    +Macros

    #define ARM_SAI_ASYNCHRONOUS   (0U << ARM_SAI_SYNCHRONIZATION_Pos)
     Asynchronous (default)
     
    #define ARM_SAI_SYNCHRONOUS   (1U << ARM_SAI_SYNCHRONIZATION_Pos)
     Synchronous.
     
    +

    Description

    +

    Defines Transmitter/Receiver synchronization.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SAI_ASYNCHRONOUS   (0U << ARM_SAI_SYNCHRONIZATION_Pos)
    +
    + +

    Asynchronous (default)

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SAI_SYNCHRONOUS   (1U << ARM_SAI_SYNCHRONIZATION_Pos)
    +
    + +

    Synchronous.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__sai__sync__control.js b/CMSIS/Documentation/Driver/html/group__sai__sync__control.js new file mode 100644 index 0000000..f786241 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__sai__sync__control.js @@ -0,0 +1,5 @@ +var group__sai__sync__control = +[ + [ "ARM_SAI_ASYNCHRONOUS", "group__sai__sync__control.html#gad123537cb6ab9eefd6feab193ed74655", null ], + [ "ARM_SAI_SYNCHRONOUS", "group__sai__sync__control.html#gad2ad5406c30c353e80f54b40b3de5db8", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.html b/CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.html new file mode 100644 index 0000000..2490226 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.html @@ -0,0 +1,176 @@ + + + + + +SPI Bit Order +CMSIS-Driver: SPI Bit Order + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Bit Order
    +
    +
    + +

    Defines the bit order. +More...

    + + + + + + + + +

    +Macros

    #define ARM_SPI_MSB_LSB   (0UL << ARM_SPI_BIT_ORDER_Pos)
     SPI Bit order from MSB to LSB (default)
     
    #define ARM_SPI_LSB_MSB   (1UL << ARM_SPI_BIT_ORDER_Pos)
     SPI Bit order from LSB to MSB.
     
    +

    Description

    +

    Defines the bit order.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_MSB_LSB   (0UL << ARM_SPI_BIT_ORDER_Pos)
    +
    + +

    SPI Bit order from MSB to LSB (default)

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_LSB_MSB   (1UL << ARM_SPI_BIT_ORDER_Pos)
    +
    + +

    SPI Bit order from LSB to MSB.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.js b/CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.js new file mode 100644 index 0000000..a58b5c8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__bit__order__ctrls.js @@ -0,0 +1,5 @@ +var group__spi__bit__order__ctrls = +[ + [ "ARM_SPI_MSB_LSB", "group__spi__bit__order__ctrls.html#ga98228a708cbab6e214c7ac696f77dab6", null ], + [ "ARM_SPI_LSB_MSB", "group__spi__bit__order__ctrls.html#ga41c53c3b396a89ce78018467e561aaaf", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.html b/CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.html new file mode 100644 index 0000000..974289b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.html @@ -0,0 +1,162 @@ + + + + + +SPI Data Bits +CMSIS-Driver: SPI Data Bits + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Data Bits
    +
    +
    + +

    Defines the number of data bits. +More...

    + + + + + +

    +Macros

    #define ARM_SPI_DATA_BITS(n)   (((n) & 0x3F) << ARM_SPI_DATA_BITS_Pos)
     Number of Data bits.
     
    +

    Description

    +

    Defines the number of data bits.

    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define ARM_SPI_DATA_BITS( n)   (((n) & 0x3F) << ARM_SPI_DATA_BITS_Pos)
    +
    + +

    Number of Data bits.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.js b/CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.js new file mode 100644 index 0000000..02471f7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__data__bits__ctrls.js @@ -0,0 +1,4 @@ +var group__spi__data__bits__ctrls = +[ + [ "ARM_SPI_DATA_BITS", "group__spi__data__bits__ctrls.html#gaf6c099a1d67256a32010120c66c55250", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__execution__status.html b/CMSIS/Documentation/Driver/html/group__spi__execution__status.html new file mode 100644 index 0000000..1072b1f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__execution__status.html @@ -0,0 +1,231 @@ + + + + + +Status Error Codes +CMSIS-Driver: Status Error Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Status Error Codes
    +
    +
    + +

    Negative values indicate errors (SPI has specific codes in addition to common Status Error Codes). +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SPI_ERROR_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     Specified Mode not supported.
     
    #define ARM_SPI_ERROR_FRAME_FORMAT   (ARM_DRIVER_ERROR_SPECIFIC - 2)
     Specified Frame Format not supported.
     
    #define ARM_SPI_ERROR_DATA_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 3)
     Specified number of Data bits not supported.
     
    #define ARM_SPI_ERROR_BIT_ORDER   (ARM_DRIVER_ERROR_SPECIFIC - 4)
     Specified Bit order not supported.
     
    #define ARM_SPI_ERROR_SS_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 5)
     Specified Slave Select Mode not supported.
     
    +

    Description

    +

    Negative values indicate errors (SPI has specific codes in addition to common Status Error Codes).

    +

    The SPI driver has additional status error codes that are listed below. Note that the SPI driver also returns the comon Status Error Codes.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_ERROR_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 1)
    +
    + +

    Specified Mode not supported.

    +

    The mode requested with the function ARM_SPI_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_ERROR_FRAME_FORMAT   (ARM_DRIVER_ERROR_SPECIFIC - 2)
    +
    + +

    Specified Frame Format not supported.

    +

    The frame format requested with the function ARM_SPI_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_ERROR_DATA_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 3)
    +
    + +

    Specified number of Data bits not supported.

    +

    The number of data bits requested with the function ARM_SPI_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_ERROR_BIT_ORDER   (ARM_DRIVER_ERROR_SPECIFIC - 4)
    +
    + +

    Specified Bit order not supported.

    +

    The bit order requested with the function ARM_SPI_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_ERROR_SS_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 5)
    +
    + +

    Specified Slave Select Mode not supported.

    +

    The slave select mode requested with the function ARM_SPI_Control is not supported by this driver.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__execution__status.js b/CMSIS/Documentation/Driver/html/group__spi__execution__status.js new file mode 100644 index 0000000..9987bcc --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__execution__status.js @@ -0,0 +1,8 @@ +var group__spi__execution__status = +[ + [ "ARM_SPI_ERROR_MODE", "group__spi__execution__status.html#ga273a55c5d19491c565e5f05d03d66f3f", null ], + [ "ARM_SPI_ERROR_FRAME_FORMAT", "group__spi__execution__status.html#gac47584fe5691889c056611bc589b25aa", null ], + [ "ARM_SPI_ERROR_DATA_BITS", "group__spi__execution__status.html#ga76f895d3380ca474124f83acbebc5651", null ], + [ "ARM_SPI_ERROR_BIT_ORDER", "group__spi__execution__status.html#ga6b8ac31930ea6ca3a9635f2ac935466d", null ], + [ "ARM_SPI_ERROR_SS_MODE", "group__spi__execution__status.html#gaae7b1a1feb46faa1830c92b73bd775ad", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.html b/CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.html new file mode 100644 index 0000000..3c4421a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.html @@ -0,0 +1,248 @@ + + + + + +SPI Frame Format +CMSIS-Driver: SPI Frame Format + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Frame Format
    +
    +
    + +

    Defines the frame format. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SPI_CPOL0_CPHA0   (0UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 0, Clock Phase 0 (default)
     
    #define ARM_SPI_CPOL0_CPHA1   (1UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 0, Clock Phase 1.
     
    #define ARM_SPI_CPOL1_CPHA0   (2UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 1, Clock Phase 0.
     
    #define ARM_SPI_CPOL1_CPHA1   (3UL << ARM_SPI_FRAME_FORMAT_Pos)
     Clock Polarity 1, Clock Phase 1.
     
    #define ARM_SPI_TI_SSI   (4UL << ARM_SPI_FRAME_FORMAT_Pos)
     Texas Instruments Frame Format.
     
    #define ARM_SPI_MICROWIRE   (5UL << ARM_SPI_FRAME_FORMAT_Pos)
     National Microwire Frame Format.
     
    +

    Description

    +

    Defines the frame format.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_CPOL0_CPHA0   (0UL << ARM_SPI_FRAME_FORMAT_Pos)
    +
    + +

    Clock Polarity 0, Clock Phase 0 (default)

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_CPOL0_CPHA1   (1UL << ARM_SPI_FRAME_FORMAT_Pos)
    +
    + +

    Clock Polarity 0, Clock Phase 1.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_CPOL1_CPHA0   (2UL << ARM_SPI_FRAME_FORMAT_Pos)
    +
    + +

    Clock Polarity 1, Clock Phase 0.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_CPOL1_CPHA1   (3UL << ARM_SPI_FRAME_FORMAT_Pos)
    +
    + +

    Clock Polarity 1, Clock Phase 1.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_TI_SSI   (4UL << ARM_SPI_FRAME_FORMAT_Pos)
    +
    + +

    Texas Instruments Frame Format.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_MICROWIRE   (5UL << ARM_SPI_FRAME_FORMAT_Pos)
    +
    + +

    National Microwire Frame Format.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.js b/CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.js new file mode 100644 index 0000000..e70b89c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__frame__format__ctrls.js @@ -0,0 +1,9 @@ +var group__spi__frame__format__ctrls = +[ + [ "ARM_SPI_CPOL0_CPHA0", "group__spi__frame__format__ctrls.html#gab4ac9a609c078d1e8332cf95da34e50e", null ], + [ "ARM_SPI_CPOL0_CPHA1", "group__spi__frame__format__ctrls.html#ga5498eb08c2ba8de2e1c2801428e79d71", null ], + [ "ARM_SPI_CPOL1_CPHA0", "group__spi__frame__format__ctrls.html#ga67193d9b5af1ec312a66d007c33b597f", null ], + [ "ARM_SPI_CPOL1_CPHA1", "group__spi__frame__format__ctrls.html#ga7fab572b2fec303e979e47eb2d13ca74", null ], + [ "ARM_SPI_TI_SSI", "group__spi__frame__format__ctrls.html#ga225185710ba38848a489013ba4475915", null ], + [ "ARM_SPI_MICROWIRE", "group__spi__frame__format__ctrls.html#ga44f481d32b9a9ea93673f05af82ccf86", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__interface__gr.html b/CMSIS/Documentation/Driver/html/group__spi__interface__gr.html new file mode 100644 index 0000000..5451ad8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__interface__gr.html @@ -0,0 +1,1171 @@ + + + + + +SPI Interface +CMSIS-Driver: SPI Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Interface
    +
    +
    + +

    Driver API for SPI Bus Peripheral (Driver_SPI.h) +More...

    + + + + + + + + + + + +

    +Content

     Status Error Codes
     Negative values indicate errors (SPI has specific codes in addition to common Status Error Codes).
     
     SPI Events
     The SPI driver generates call back events that are notified via the function ARM_SPI_SignalEvent.
     
     SPI Control Codes
     Many parameters of the SPI driver are configured using the ARM_SPI_Control function.
     
    + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_SPI
     Access structure of the SPI Driver. More...
     
    struct  ARM_SPI_CAPABILITIES
     SPI Driver Capabilities. More...
     
    struct  ARM_SPI_STATUS
     SPI Status. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_SPI_SignalEvent_t )(uint32_t event)
     Pointer to ARM_SPI_SignalEvent : Signal SPI Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_SPI_GetVersion (void)
     Get driver version.
     
    ARM_SPI_CAPABILITIES ARM_SPI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_SPI_Initialize (ARM_SPI_SignalEvent_t cb_event)
     Initialize SPI Interface.
     
    int32_t ARM_SPI_Uninitialize (void)
     De-initialize SPI Interface.
     
    int32_t ARM_SPI_PowerControl (ARM_POWER_STATE state)
     Control SPI Interface Power.
     
    int32_t ARM_SPI_Send (const void *data, uint32_t num)
     Start sending data to SPI transmitter.
     
    int32_t ARM_SPI_Receive (void *data, uint32_t num)
     Start receiving data from SPI receiver.
     
    int32_t ARM_SPI_Transfer (const void *data_out, void *data_in, uint32_t num)
     Start sending/receiving data to/from SPI transmitter/receiver.
     
    uint32_t ARM_SPI_GetDataCount (void)
     Get transferred data count.
     
    int32_t ARM_SPI_Control (uint32_t control, uint32_t arg)
     Control SPI Interface.
     
    ARM_SPI_STATUS ARM_SPI_GetStatus (void)
     Get SPI status.
     
    void ARM_SPI_SignalEvent (uint32_t event)
     Signal SPI Events.
     
    +

    Description

    +

    Driver API for SPI Bus Peripheral (Driver_SPI.h)

    +

    The Serial Peripheral Interface Bus (SPI) implements a synchronous serial bus for data exchange. In microcontroller (MCU) applications, the interface is often used to connect peripheral components at board (PCB) level. SPI devices can operate as Master (SCLK and SS are outputs) or Slave (SCLK and SS are inputs). Wikipedia offers more information about the Serial Peripheral Interface Bus.

    +

    Block Diagram

    +

    The SPI Driver API defines a SPI interface for middleware components. The SPI Driver supports multiple slaves, but if only one slave is connected, then the Slave Select signal can be omitted.

    +
    +SPI_Master1Slaves.png +
    +SPI Master connected to a single slave
    +

     

    +
    +SPI_Master3Slaves.png +
    +SPI Master connected to 3 slaves
    +

    The SPI Driver functions control the following SPI signal lines.

    + + + + + + + + + + + +
    Signal Name Description
    SS Slave Select (active low) Selects the slave. This signal can be part of the SPI peripheral or implemented using a GPIO pin.
    MOSI Master Out, Slave In MOSI output of the Master connects to MOSI input of the Slave.
    SCLK Serial Clock Serial clock output from Master. Controls the transfer speed and when data are sent and read.
    MISO Master In, Slave Out MISO input of the Master connects to MISO output of the Slave.
    +

    SPI API

    +

    The following header files define the Application Programming Interface (API) for the SPI interface:

    +
      +
    • Driver_SPI.h : Driver API for SPI Bus Peripheral
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Example Code

    +

    The following example code shows the usage of the SPI interface.

    +
    #include "Driver_SPI.h"
    +
    #include "cmsis_os.h" // ARM::CMSIS:RTOS:Keil RTX
    +
    +
    +
    void mySPI_Thread(void const *argument);
    +
    osThreadId tid_mySPI_Thread;
    +
    +
    +
    /* SPI Driver */
    +
    extern ARM_DRIVER_SPI Driver_SPI0;
    +
    +
    +
    void mySPI_callback(uint32_t event)
    +
    {
    +
    switch (event)
    +
    {
    + +
    /* Success: Wakeup Thread */
    +
    osSignalSet(tid_mySPI_Thread, 0x01);
    +
    break;
    + +
    /* Occurs in slave mode when data is requested/sent by master
    +
    but send/receive/transfer operation has not been started
    +
    and indicates that data is lost. Occurs also in master mode
    +
    when driver cannot transfer data fast enough. */
    +
    __breakpoint(0); /* Error: Call debugger or replace with custom error handling */
    +
    break;
    + +
    /* Occurs in master mode when Slave Select is deactivated and
    +
    indicates Master Mode Fault. */
    +
    __breakpoint(0); /* Error: Call debugger or replace with custom error handling */
    +
    break;
    +
    }
    +
    }
    +
    +
    /* Test data buffers */
    +
    const uint8_t testdata_out[8] = { 0, 1, 2, 3, 4, 5, 6, 7 };
    +
    uint8_t testdata_in [8];
    +
    +
    void mySPI_Thread(void const* arg)
    +
    {
    +
    ARM_DRIVER_SPI* SPIdrv = &Driver_SPI0;
    +
    osEvent evt;
    +
    +
    #ifdef DEBUG
    + +
    ARM_SPI_CAPABILITIES drv_capabilities;
    +
    +
    version = SPIdrv->GetVersion();
    +
    if (version.api < 0x200) /* requires at minimum API version 2.00 or higher */
    +
    { /* error handling */
    +
    return;
    +
    }
    +
    +
    drv_capabilities = SPIdrv->GetCapabilities();
    +
    if (drv_capabilities.event_mode_fault == 0)
    +
    { /* error handling */
    +
    return;
    +
    }
    +
    #endif
    +
    +
    /* Initialize the SPI driver */
    +
    SPIdrv->Initialize(mySPI_callback);
    +
    /* Power up the SPI peripheral */
    + +
    /* Configure the SPI to Master, 8-bit mode @10000 kBits/sec */
    + +
    +
    /* SS line = INACTIVE = HIGH */
    + +
    +
    /* thread loop */
    +
    while (1)
    +
    {
    +
    /* SS line = ACTIVE = LOW */
    + +
    /* Transmit some data */
    +
    SPIdrv->Send(testdata_out, sizeof(testdata_out));
    +
    /* Wait for completion */
    +
    evt = osSignalWait(0x01, 100);
    +
    if (evt.status == osEventTimeout) {
    +
    __breakpoint(0); /* Timeout error: Call debugger */
    +
    }
    +
    /* SS line = INACTIVE = HIGH */
    + +
    +
    /* SS line = ACTIVE = LOW */
    + +
    /* Receive 8 bytes of reply */
    +
    SPIdrv->Receive(testdata_in, 8);
    +
    evt = osSignalWait(0x01, 100);
    +
    if (evt.status == osEventTimeout) {
    +
    __breakpoint(0); /* Timeout error: Call debugger */
    +
    }
    +
    /* SS line = INACTIVE = HIGH */
    + +
    }
    +
    }
    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_SPI
    +
    +

    Access structure of the SPI Driver.

    +

    The functions of the SPI driver are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of a SPI interface provides such an access structure. The instance is identified by a postfix number in the symbol name of the access structure, for example:

    +
      +
    • Driver_SPI0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_SPI1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A middleware configuration setting allows connecting the middleware to a specific driver instance Driver_SPIn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_SPI_GetVersion : Get driver version.
     
    ARM_SPI_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_SPI_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_SPI_SignalEvent_t cb_event)
     Pointer to ARM_SPI_Initialize : Initialize SPI Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_SPI_Uninitialize : De-initialize SPI Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_SPI_PowerControl : Control SPI Interface Power.
     
    int32_t(* Send )(const void *data, uint32_t num)
     Pointer to ARM_SPI_Send : Start sending data to SPI Interface.
     
    int32_t(* Receive )(void *data, uint32_t num)
     Pointer to ARM_SPI_Receive : Start receiving data from SPI Interface.
     
    int32_t(* Transfer )(const void *data_out, void *data_in, uint32_t num)
     Pointer to ARM_SPI_Transfer : Start sending/receiving data to/from SPI.
     
    uint32_t(* GetDataCount )(void)
     Pointer to ARM_SPI_GetDataCount : Get transferred data count.
     
    int32_t(* Control )(uint32_t control, uint32_t arg)
     Pointer to ARM_SPI_Control : Control SPI Interface.
     
    ARM_SPI_STATUS(* GetStatus )(void)
     Pointer to ARM_SPI_GetStatus : Get SPI status.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_SPI_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_SPI_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_SPI_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_SPI_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_SPI_Initialize : Initialize SPI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_SPI_Uninitialize : De-initialize SPI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_SPI_PowerControl : Control SPI Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Send)(const void *data, uint32_t num)
    +
    + +

    Pointer to ARM_SPI_Send : Start sending data to SPI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Receive)(void *data, uint32_t num)
    +
    + +

    Pointer to ARM_SPI_Receive : Start receiving data from SPI Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Transfer)(const void *data_out, void *data_in, uint32_t num)
    +
    + +

    Pointer to ARM_SPI_Transfer : Start sending/receiving data to/from SPI.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* GetDataCount)(void)
    +
    + +

    Pointer to ARM_SPI_GetDataCount : Get transferred data count.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t control, uint32_t arg)
    +
    + +

    Pointer to ARM_SPI_Control : Control SPI Interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_SPI_STATUS(* GetStatus)(void)
    +
    + +

    Pointer to ARM_SPI_GetStatus : Get SPI status.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_SPI_CAPABILITIES
    +
    +

    SPI Driver Capabilities.

    +

    A SPI driver can be implemented with different capabilities. The data fields of this structure encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +simplex: 1 +supports Simplex Mode (Master and Slave)
    +uint32_t +ti_ssi: 1 +supports TI Synchronous Serial Interface
    +uint32_t +microwire: 1 +supports Microwire Interface
    +uint32_t +event_mode_fault: 1 +Signal Mode Fault event: ARM_SPI_EVENT_MODE_FAULT.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_SPI_STATUS
    +
    +

    SPI Status.

    +

    Structure with information about the status of the SPI. The data fields encode busy flag and error flags.

    +

    Returned by:

    + +
    + + + + + + + + + + +
    Data Fields
    +uint32_t +busy: 1 +Transmitter/Receiver busy flag.
    +uint32_t +data_lost: 1 +Data lost: Receive overflow / Transmit underflow (cleared on start of transfer operation)
    +uint32_t +mode_fault: 1 +Mode fault detected; optional (cleared on start of transfer operation)
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_SPI_SignalEvent_t
    +
    + +

    Pointer to ARM_SPI_SignalEvent : Signal SPI Event.

    +

    Provides the typedef for the callback function ARM_SPI_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_SPI_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_SPI_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_SPI Driver_SPI0;
    +
    ARM_DRIVER_SPI *drv_info;
    +
    +
    void setup_spi (void) {
    + +
    +
    drv_info = &Driver_SPI0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_SPI_CAPABILITIES ARM_SPI_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_SPI_CAPABILITIES
    +

    The function ARM_SPI_GetCapabilities returns information about the capabilities in this driver implementation. The data fields of the structure ARM_SPI_CAPABILITIES encode various capabilities, for example supported modes.

    +

    Example:

    +
    extern ARM_DRIVER_SPI Driver_SPI0;
    +
    ARM_DRIVER_SPI *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_SPI_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_SPI0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_SPI_Initialize (ARM_SPI_SignalEvent_t cb_event)
    +
    + +

    Initialize SPI Interface.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_SPI_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SPI_Initialize initializes the SPI interface.

    +

    The parameter cb_event is a pointer to the ARM_SPI_SignalEvent callback function; use a NULL pointer when no callback signals are required.

    +

    The function is called when the middleware component starts operation and performs the following:

    +
      +
    • Initializes the resources needed for the SPI interface.
    • +
    • Registers the ARM_SPI_SignalEvent callback function.
    • +
    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_SPI_Uninitialize (void )
    +
    + +

    De-initialize SPI Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_SPI_Uninitialize de-initializes the resources of SPI interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_SPI_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control SPI Interface Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SPI_PowerControl controls the power modes of the SPI interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_SPI_Send (const void * data,
    uint32_t num 
    )
    +
    + +

    Start sending data to SPI transmitter.

    +
    Parameters
    + + + +
    [in]dataPointer to buffer with data to send to SPI transmitter
    [in]numNumber of data items to send
    +
    +
    +
    Returns
    Status Error Codes
    +

    This function ARM_SPI_Send is used to send data to the SPI transmitter (received data is ignored).

    +

    The parameter data specifies the data buffer.
    + The parameter num specifies the number of items to send.
    + The item size is defined by the data type, which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 1..8 data bits
    • +
    • uint16_t when configured for 9..16 data bits
    • +
    • uint32_t when configured for 17..32 data bits
    • +
    +

    Calling the function ARM_SPI_Send only starts the send operation. When in slave mode, the operation is only registered and started when the master starts the transfer. The function is non-blocking and returns as soon as the driver has started the operation (driver typically configures DMA or the interrupt system for continuous transfer). During the operation it is not allowed to call this function or any other data transfer function again. Also the data buffer must stay allocated and the contents of unsent data must not be modified. When send operation is completed (requested number of items sent), the ARM_SPI_EVENT_TRANSFER_COMPLETE event is generated. Progress of send operation can also be monitored by reading the number of items already sent by calling ARM_SPI_GetDataCount.

    +

    Status of the transmitter can also be monitored by calling the ARM_SPI_GetStatus and checking the busy data field, which indicates if transmission is still in progress or pending.

    +

    When in master mode and configured to monitor slave select and the slave select gets deactivated during transfer, then the SPI mode changes to inactive and the ARM_SPI_EVENT_MODE_FAULT event is generated (instead of ARM_SPI_EVENT_TRANSFER_COMPLETE).

    +

    When in slave mode but send/receive/transfer operation is not started and data is sent/requested by the master, then the ARM_SPI_EVENT_DATA_LOST event is generated.

    +

    Send operation can be aborted by calling ARM_SPI_Control with ARM_SPI_ABORT_TRANSFER as the control parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_SPI_Receive (void * data,
    uint32_t num 
    )
    +
    + +

    Start receiving data from SPI receiver.

    +
    Parameters
    + + + +
    [out]dataPointer to buffer for data to receive from SPI receiver
    [in]numNumber of data items to receive
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SPI_Receive is used to receive data (transmits the default value as specified by ARM_SPI_Control with ARM_SPI_SET_DEFAULT_TX_VALUE as control parameter).

    +

    The parameter data specifies the data buffer.
    + The parameter num specifies the number of items to receive.
    + The item size is defined by the data type, which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 1..8 data bits
    • +
    • uint16_t when configured for 9..16 data bits
    • +
    • uint32_t when configured for 17..32 data bits
    • +
    +

    Calling the function ARM_SPI_Receive only starts the receive operation. The function is non-blocking and returns as soon as the driver has started the operation (driver typically configures DMA or the interrupt system for continuous transfer). When in slave mode, the operation is only registered and started when the master starts the transfer. During the operation it is not allowed to call this function or any other data transfer function again. Also the data buffer must stay allocated. When receive operation is completed (requested number of items received), the ARM_SPI_EVENT_TRANSFER_COMPLETE event is generated. Progress of receive operation can also be monitored by reading the number of items already received by calling ARM_SPI_GetDataCount.

    +

    Status of the receiver can also be monitored by calling the ARM_SPI_GetStatus and checking the busy data field, which indicates if reception is still in progress or pending.

    +

    When in master mode and configured to monitor slave select and the slave select gets deactivated during transfer, then the SPI mode changes to inactive and the ARM_SPI_EVENT_MODE_FAULT event is generated (instead of ARM_SPI_EVENT_TRANSFER_COMPLETE).

    +

    When in slave mode but send/receive/transfer operation is not started and data is sent/requested by the master, then the ARM_SPI_EVENT_DATA_LOST event is generated.

    +

    Receive operation can be aborted by calling ARM_SPI_Control with ARM_SPI_ABORT_TRANSFER as the control parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_SPI_Transfer (const void * data_out,
    void * data_in,
    uint32_t num 
    )
    +
    + +

    Start sending/receiving data to/from SPI transmitter/receiver.

    +
    Parameters
    + + + + +
    [in]data_outPointer to buffer with data to send to SPI transmitter
    [out]data_inPointer to buffer for data to receive from SPI receiver
    [in]numNumber of data items to transfer
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_SPI_Transfer transfers data via SPI. It synchronously sends data to the SPI transmitter and receives data from the SPI receiver.

    +

    The parameter data_out is a pointer to the buffer with data to send.
    + The parameter data_in is a pointer to the buffer which receives data.
    + The parameter num specifies the number of items to transfer.
    + The item size is defined by the data type which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 1..8 data bits
    • +
    • uint16_t when configured for 9..16 data bits
    • +
    • uint32_t when configured for 17..32 data bits
    • +
    +

    Calling the function ARM_SPI_Transfer only starts the transfer operation. The function is non-blocking and returns as soon as the driver has started the operation (driver typically configures DMA or the interrupt system for continuous transfer). When in slave mode, the operation is only registered and started when the master starts the transfer. During the operation it is not allowed to call this function or any other data transfer function again. Also the data buffers must stay allocated and the contents of unsent data must not be modified. When transfer operation is completed (requested number of items transferred), the ARM_SPI_EVENT_TRANSFER_COMPLETE event is generated. Progress of transfer operation can also be monitored by reading the number of items already transferred by calling ARM_SPI_GetDataCount.

    +

    Status of the transmitter and receiver can also be monitored by calling the ARM_SPI_GetStatus and checking the busy flag.

    +

    When in master mode and configured to monitor slave select and the slave select gets deactivated during transfer, then the SPI mode changes to inactive and the ARM_SPI_EVENT_MODE_FAULT event is generated (instead of ARM_SPI_EVENT_TRANSFER_COMPLETE).

    +

    When in slave mode but send/receive/transfer operation is not started and data is sent/requested by the master, then the ARM_SPI_EVENT_DATA_LOST event is generated.

    +

    Transfer operation can also be aborted by calling ARM_SPI_Control with ARM_SPI_ABORT_TRANSFER as the control parameter.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_SPI_GetDataCount (void )
    +
    + +

    Get transferred data count.

    +
    Returns
    number of data items transferred
    +

    The function ARM_SPI_GetDataCount returns the number of currently transferred data items during ARM_SPI_Send, ARM_SPI_Receive and ARM_SPI_Transfer operation.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_SPI_Control (uint32_t control,
    uint32_t arg 
    )
    +
    + +

    Control SPI Interface.

    +
    Parameters
    + + + +
    [in]controlOperation
    [in]argArgument of operation (optional)
    +
    +
    +
    Returns
    common Status Error Codes and driver specific Status Error Codes
    +

    The function ARM_SPI_Control controls the SPI interface settings and executes various operations.

    +

    The parameter control is a bit mask that specifies various operations.

    +
      +
    • Controls form different categories can be ORed.
    • +
    • If one control is omitted, then the default value of that category is used.
    • +
    • Miscellaneous controls cannot be combined.
    • +
    +

    The parameter arg provides (depending on the parameter control) additional information, for example the Bus Speed.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter control Bit Category Description
    ARM_SPI_MODE_INACTIVE 0..7 Mode Controls Set SPI to inactive.
    ARM_SPI_MODE_MASTER Set the SPI Master (Output on MOSI, and the Input on MISO); arg = Bus Speed in bps
    ARM_SPI_MODE_MASTER_SIMPLEX Set the SPI Master (Output and Input on MOSI); arg = Bus Speed in bps
    ARM_SPI_MODE_SLAVE Set the SPI Slave (Output on MISO, and the Input on MOSI)
    ARM_SPI_MODE_SLAVE_SIMPLEX Set the SPI Slave (Output and Input on MISO)
    ARM_SPI_CPOL0_CPHA0 (default) 8..11 Clock Polarity
    + (Frame Format)
    CPOL=0 and CPHA=0: Clock Polarity 0, Clock Phase 0
    ARM_SPI_CPOL0_CPHA1 CPOL=0 and CPHA=1: Clock Polarity 0, Clock Phase 1
    ARM_SPI_CPOL1_CPHA0 CPOL=1 and CPHA=0: Clock Polarity 1, Clock Phase 0
    ARM_SPI_CPOL1_CPHA1 CPOL=1 and CPHA=1: Clock Polarity 1, Clock Phase 1
    ARM_SPI_TI_SSI Specifies that the frame format corresponds to the Texas Instruments Frame Format
    ARM_SPI_MICROWIRE Specifies that the frame format corresponds to the National Microwire Frame Format
    ARM_SPI_DATA_BITS(n) 12..17 Data Bits Set the number of bits per SPI frame; range for n = 1..32. This is the minimum required parameter.
    ARM_SPI_MSB_LSB (default) 18 Bit Order Set the bit order from MSB to LSB
    ARM_SPI_LSB_MSB Set the bit order from LSB to MSB
    ARM_SPI_SS_MASTER_UNUSED (default) 19..21 Slave Select
    +when Master
     
    Must be used with the corresponding master or slave controls from category Mode Controls.
     
    Slave Select
    +when Slave
    Set the Slave Select mode for the master to Not used. Used with Mode Control ARM_SPI_MODE_MASTER. Master does not drive or monitor the SS line. For example, when connecting to a single slave, which has the SS line connected to a fixed low level.
    ARM_SPI_SS_MASTER_SW Set the Slave Select mode for the master to Software controlled. Used with Mode Control ARM_SPI_MODE_MASTER. The Slave Select line is configured as output and controlled via the Miscellaneous Control ARM_SPI_CONTROL_SS. By default, the line it is not active (high), and is not affected by transfer-, send-, or receive functions.
    ARM_SPI_SS_MASTER_HW_OUTPUT Set the Slave Select mode for the master to Hardware controlled Output. Used with Mode Control ARM_SPI_MODE_MASTER. The Slave Select line is configured as output and controlled by hardware. The line gets activated or deactivated automatically by the hardware for transfers and is not controlled by the Miscellaneous Control ARM_SPI_CONTROL_SS. When exactly the line is activated or deactivated is hardware dependent. Typically, the hardware will activate the line before starting the transfer and deactivate it after the transfer completes. Some hardware will leave the line activated until the SPI stays master.
    Note
    Some devices require that the SS signal is strictly defined regarding transfers. Refer to the documentaiton of your device.
    +
    ARM_SPI_SS_MASTER_HW_INPUT Set the Slave Select mode for the master to Hardware monitored Input. Used with Mode Control ARM_SPI_MODE_MASTER. Used in multi-master configuration where a master does not drive the Slave Select when driving the bus, but rather monitors it. When another master activates this line, the active master backs off. This is called Mode Fault. Slave Select is configured as input and hardware only monitors the line. When the line is deactivated externally while we are master, it presents a Mode Fault (ARM_SPI_EVENT_MODE_FAULT) and the SPI switches to inactive mode.
    ARM_SPI_SS_SLAVE_HW (default) Set the Slave Select mode for the slave to Hardware monitored. Used with Mode Control ARM_SPI_MODE_SLAVE. Hardware monitors the Slave Select line and accepts transfers only when the line is active. Transfers are ignored while the Slave Select line is inactive.
    ARM_SPI_SS_SLAVE_SW Set the Slave Select mode for the slave to Software controlled. Used with Mode Control ARM_SPI_MODE_SLAVE. Used only when the Slave Select line is not used. For example, when a single master and slave are connected in the system then the Slave Select line is not needed. Software controls if the slave is responding or not (by default it is not responding). Software enables or disables transfers by using the Miscellaneous Control ARM_SPI_CONTROL_SS.
    ARM_SPI_SET_BUS_SPEED 0..21 Miscellaneous Controls
    +(cannot be ORed)
    Set the bus speed; arg= Bus Speed in bps
    ARM_SPI_GET_BUS_SPEED Get the bus speed; Retrun values >= 0 reperesent the bus speed in bps. Negative values are Status Error Codes.
    ARM_SPI_SET_DEFAULT_TX_VALUE Set the default transmission value; the parameter arg sets the value
    ARM_SPI_CONTROL_SS Control the Slave Select signal (SS); the values for the parameter arg are: ARM_SPI_SS_INACTIVE; ARM_SPI_SS_ACTIVE
    ARM_SPI_ABORT_TRANSFER Abort the current data transfer
    +

    Example

    +
    extern ARM_DRIVER_SPI Driver_SPI0;
    +
    +
    // configure: SPI master | clock polarity=1, clock phase=1 | bits per frame=16 | bus speed : 1000000
    +
    status = Driver_SPI0.Control(ARM_SPI_MODE_MASTER |
    + +
    ARM_SPI_DATA_BITS(16), 1000000);
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_SPI_STATUS ARM_SPI_GetStatus (void )
    +
    + +

    Get SPI status.

    +
    Returns
    SPI status ARM_SPI_STATUS
    +

    The function ARM_SPI_GetStatus returns the current SPI interface status.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_SPI_SignalEvent (uint32_t event)
    +
    + +

    Signal SPI Events.

    +
    Parameters
    + + +
    [in]eventSPI Events notification mask
    +
    +
    +
    Returns
    none
    +

    The function ARM_SPI_SignalEvent is a callback function registered by the function ARM_SPI_Initialize.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_SPI_CAPABILITIES, which can be retrieved with the function ARM_SPI_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + + + +
    Parameter event Bit Description supported when ARM_SPI_CAPABILITIES
    ARM_SPI_EVENT_TRANSFER_COMPLETE 0 Occurs after call to ARM_SPI_Send, ARM_SPI_Receive, or ARM_SPI_Transfer to indicate that all the data has been transferred. The driver is ready for the next transfer operation. allways supported
    ARM_SPI_EVENT_DATA_LOST 1 Occurs in slave mode when data is requested/sent by master but send/receive/transfer operation has not been started and indicates that data is lost. Occurs also in master mode when driver cannot transfer data fast enough. allways supported
    ARM_SPI_EVENT_MODE_FAULT 2 Occurs in master mode when Slave Select is deactivated and indicates Master Mode Fault. The driver is ready for the next transfer operation. data field event_mode_fault = 1
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__interface__gr.js b/CMSIS/Documentation/Driver/html/group__spi__interface__gr.js new file mode 100644 index 0000000..c0eff30 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__interface__gr.js @@ -0,0 +1,43 @@ +var group__spi__interface__gr = +[ + [ "Status Error Codes", "group__spi__execution__status.html", "group__spi__execution__status" ], + [ "SPI Events", "group___s_p_i__events.html", "group___s_p_i__events" ], + [ "SPI Control Codes", "group___s_p_i__control.html", "group___s_p_i__control" ], + [ "ARM_DRIVER_SPI", "group__spi__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_p_i", [ + [ "GetVersion", "group__spi__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__spi__interface__gr.html#a065b5fc24d0204692f0f95a44351ac1e", null ], + [ "Initialize", "group__spi__interface__gr.html#afac50d0b28860f7b569293e6b713f8a4", null ], + [ "Uninitialize", "group__spi__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__spi__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "Send", "group__spi__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922", null ], + [ "Receive", "group__spi__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3", null ], + [ "Transfer", "group__spi__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7", null ], + [ "GetDataCount", "group__spi__interface__gr.html#ad1d892ab3932f65cd7cdf2d0a91ae5da", null ], + [ "Control", "group__spi__interface__gr.html#a6e0f47a92f626a971c5197fca6545505", null ], + [ "GetStatus", "group__spi__interface__gr.html#a7305e7248420cdb4b02ceba87672178d", null ] + ] ], + [ "ARM_SPI_CAPABILITIES", "group__spi__interface__gr.html#struct_a_r_m___s_p_i___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "simplex", "group__spi__interface__gr.html#af244e2c2facf6414e3886495ee6b40bc", null ], + [ "ti_ssi", "group__spi__interface__gr.html#a8053c540e5d531b692224bdc2463f36a", null ], + [ "microwire", "group__spi__interface__gr.html#a9b4e858eb1d414128994742bf121f94c", null ], + [ "event_mode_fault", "group__spi__interface__gr.html#a309619714f0c4febaa497ebdb9b7e3ca", null ] + ] ], + [ "ARM_SPI_STATUS", "group__spi__interface__gr.html#struct_a_r_m___s_p_i___s_t_a_t_u_s", [ + [ "busy", "group__spi__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a", null ], + [ "data_lost", "group__spi__interface__gr.html#a9675630df67587ecd171c7ef12b9d22a", null ], + [ "mode_fault", "group__spi__interface__gr.html#aeaf54ec655b7a64b9e88578c5f39d4e3", null ] + ] ], + [ "ARM_SPI_SignalEvent_t", "group__spi__interface__gr.html#gafde9205364241ee81290adc0481c6640", null ], + [ "ARM_SPI_GetVersion", "group__spi__interface__gr.html#gad5db9209ef1d64a7915a7278d6a402c8", null ], + [ "ARM_SPI_GetCapabilities", "group__spi__interface__gr.html#gaf4823a11ab5efcd47c79b13801513ddc", null ], + [ "ARM_SPI_Initialize", "group__spi__interface__gr.html#ga1a3c11ed523a4355cd91069527945906", null ], + [ "ARM_SPI_Uninitialize", "group__spi__interface__gr.html#ga0c480ee3eabb82fc746e89741ed2e03e", null ], + [ "ARM_SPI_PowerControl", "group__spi__interface__gr.html#ga1a1e7e80ea32ae381b75213c32aa8067", null ], + [ "ARM_SPI_Send", "group__spi__interface__gr.html#gab2a303d1071e926280d50682f4808479", null ], + [ "ARM_SPI_Receive", "group__spi__interface__gr.html#ga726aff54e782ed9b47f7ba1280a3d8f6", null ], + [ "ARM_SPI_Transfer", "group__spi__interface__gr.html#gaa24026b3822c10272e301f1505136ec2", null ], + [ "ARM_SPI_GetDataCount", "group__spi__interface__gr.html#gaaaecaaf4ec1922f22e7f9de63af5ccdb", null ], + [ "ARM_SPI_Control", "group__spi__interface__gr.html#gad18d229992598d6677bec250015e5d1a", null ], + [ "ARM_SPI_GetStatus", "group__spi__interface__gr.html#ga60d33d8788a76c388cc36e066240b817", null ], + [ "ARM_SPI_SignalEvent", "group__spi__interface__gr.html#ga505b2d787348d51351d38fee98ccba7e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.html b/CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.html new file mode 100644 index 0000000..ed79a1b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.html @@ -0,0 +1,230 @@ + + + + + +SPI Miscellaneous Controls +CMSIS-Driver: SPI Miscellaneous Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Miscellaneous Controls
    +
    +
    + +

    Specifies additional miscellaneous controls. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SPI_SET_BUS_SPEED   (0x10UL << ARM_SPI_CONTROL_Pos)
     Set Bus Speed in bps; arg = value.
     
    #define ARM_SPI_GET_BUS_SPEED   (0x11UL << ARM_SPI_CONTROL_Pos)
     Get Bus Speed in bps.
     
    #define ARM_SPI_SET_DEFAULT_TX_VALUE   (0x12UL << ARM_SPI_CONTROL_Pos)
     Set default Transmit value; arg = value.
     
    #define ARM_SPI_CONTROL_SS   (0x13UL << ARM_SPI_CONTROL_Pos)
     Control Slave Select; arg: 0=inactive, 1=active.
     
    #define ARM_SPI_ABORT_TRANSFER   (0x14UL << ARM_SPI_CONTROL_Pos)
     Abort current data transfer.
     
    +

    Description

    +

    Specifies additional miscellaneous controls.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_SET_BUS_SPEED   (0x10UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    Set Bus Speed in bps; arg = value.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_GET_BUS_SPEED   (0x11UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    Get Bus Speed in bps.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SET_DEFAULT_TX_VALUE   (0x12UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    Set default Transmit value; arg = value.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_CONTROL_SS   (0x13UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    Control Slave Select; arg: 0=inactive, 1=active.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_ABORT_TRANSFER   (0x14UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    Abort current data transfer.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.js b/CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.js new file mode 100644 index 0000000..5f221bb --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__misc__ctrls.js @@ -0,0 +1,8 @@ +var group__spi__misc__ctrls = +[ + [ "ARM_SPI_SET_BUS_SPEED", "group__spi__misc__ctrls.html#ga5ef3d114979f3fd6010d0df16c2bf5c1", null ], + [ "ARM_SPI_GET_BUS_SPEED", "group__spi__misc__ctrls.html#gafc00fe35bb4c89b076d014b43168b2b3", null ], + [ "ARM_SPI_SET_DEFAULT_TX_VALUE", "group__spi__misc__ctrls.html#gae9861221dee78d52bd1522b7846535ce", null ], + [ "ARM_SPI_CONTROL_SS", "group__spi__misc__ctrls.html#ga5776272b82decff92da003568540c92f", null ], + [ "ARM_SPI_ABORT_TRANSFER", "group__spi__misc__ctrls.html#ga44708b80e48984be099cd6eb11780dc3", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.html b/CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.html new file mode 100644 index 0000000..ac7a2a5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.html @@ -0,0 +1,230 @@ + + + + + +SPI Mode Controls +CMSIS-Driver: SPI Mode Controls + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Mode Controls
    +
    +
    + +

    Specifies SPI mode. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SPI_MODE_INACTIVE   (0x00UL << ARM_SPI_CONTROL_Pos)
     SPI Inactive.
     
    #define ARM_SPI_MODE_MASTER   (0x01UL << ARM_SPI_CONTROL_Pos)
     SPI Master (Output on MOSI, Input on MISO); arg = Bus Speed in bps.
     
    #define ARM_SPI_MODE_SLAVE   (0x02UL << ARM_SPI_CONTROL_Pos)
     SPI Slave (Output on MISO, Input on MOSI)
     
    #define ARM_SPI_MODE_MASTER_SIMPLEX   (0x03UL << ARM_SPI_CONTROL_Pos)
     SPI Master (Output/Input on MOSI); arg = Bus Speed in bps.
     
    #define ARM_SPI_MODE_SLAVE_SIMPLEX   (0x04UL << ARM_SPI_CONTROL_Pos)
     SPI Slave (Output/Input on MISO)
     
    +

    Description

    +

    Specifies SPI mode.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_MODE_INACTIVE   (0x00UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    SPI Inactive.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_MODE_MASTER   (0x01UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    SPI Master (Output on MOSI, Input on MISO); arg = Bus Speed in bps.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_MODE_SLAVE   (0x02UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    SPI Slave (Output on MISO, Input on MOSI)

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_MODE_MASTER_SIMPLEX   (0x03UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    SPI Master (Output/Input on MOSI); arg = Bus Speed in bps.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_MODE_SLAVE_SIMPLEX   (0x04UL << ARM_SPI_CONTROL_Pos)
    +
    + +

    SPI Slave (Output/Input on MISO)

    +
    See Also
    ARM_SPI_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.js b/CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.js new file mode 100644 index 0000000..11ed874 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__mode__ctrls.js @@ -0,0 +1,8 @@ +var group__spi__mode__ctrls = +[ + [ "ARM_SPI_MODE_INACTIVE", "group__spi__mode__ctrls.html#ga974e3d7c178b76b0540d7644b977bff3", null ], + [ "ARM_SPI_MODE_MASTER", "group__spi__mode__ctrls.html#ga3143ef07c1607b9bc57e29df35cf2fa8", null ], + [ "ARM_SPI_MODE_SLAVE", "group__spi__mode__ctrls.html#ga382b394c5e68f7d1206b837843732a3e", null ], + [ "ARM_SPI_MODE_MASTER_SIMPLEX", "group__spi__mode__ctrls.html#gaf34d849c7cde1151a768887f154e19bd", null ], + [ "ARM_SPI_MODE_SLAVE_SIMPLEX", "group__spi__mode__ctrls.html#ga9b113d8b336047e1c22f73ad44851fdf", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.html b/CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.html new file mode 100644 index 0000000..61b1b59 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.html @@ -0,0 +1,255 @@ + + + + + +SPI Slave Select Mode +CMSIS-Driver: SPI Slave Select Mode + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    SPI Slave Select Mode
    +
    +
    + +

    Specifies SPI slave select mode. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_SPI_SS_MASTER_UNUSED   (0UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Not used (default)
     
    #define ARM_SPI_SS_MASTER_SW   (1UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Software controlled.
     
    #define ARM_SPI_SS_MASTER_HW_OUTPUT   (2UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Hardware controlled Output.
     
    #define ARM_SPI_SS_MASTER_HW_INPUT   (3UL << ARM_SPI_SS_MASTER_MODE_Pos)
     SPI Slave Select when Master: Hardware monitored Input.
     
    #define ARM_SPI_SS_SLAVE_HW   (0UL << ARM_SPI_SS_SLAVE_MODE_Pos)
     SPI Slave Select when Slave: Hardware monitored (default)
     
    #define ARM_SPI_SS_SLAVE_SW   (1UL << ARM_SPI_SS_SLAVE_MODE_Pos)
     SPI Slave Select when Slave: Software controlled.
     
    +

    Description

    +

    Specifies SPI slave select mode.

    +

    SPI Slave Select Mode configures the behavior of the Slave Select (SS) signal. The configuration is separate for Master (ARM_SPI_SS_MASTER_*) and for Slave (ARM_SPI_SS_SLAVE_HW, ARM_SPI_SS_SLAVE_SW). The active configuration depends on the current state (Master/Slave).

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_SPI_SS_MASTER_UNUSED   (0UL << ARM_SPI_SS_MASTER_MODE_Pos)
    +
    + +

    SPI Slave Select when Master: Not used (default)

    +

    An SPI master does not drive or monitor the SS line. For example, when connecting to a single slave, the SS line can be connected to a fixed low level.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_MASTER_SW   (1UL << ARM_SPI_SS_MASTER_MODE_Pos)
    +
    + +

    SPI Slave Select when Master: Software controlled.

    +

    SS is configured as an output and controlled via ARM_SPI_Control (ARM_SPI_CONTROL_SS). By default, it is not active (high). It is activated (low) by ARM_SPI_Control (ARM_SPI_CONTROL_SS, ARM_SPI_SS_ACTIVE) and deactivated by ARM_SPI_Control (ARM_SPI_CONTROL_SS, ARM_SPI_SS_INACTIVE). It is not affected by transfer/send/receive functions.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_MASTER_HW_OUTPUT   (2UL << ARM_SPI_SS_MASTER_MODE_Pos)
    +
    + +

    SPI Slave Select when Master: Hardware controlled Output.

    +

    Here, SS is configured as an output. It will be automatically activated/deactivated for the transfers by hardware (not controlled by ARM_SPI_Control (ARM_SPI_CONTROL_SS)). The activation/deactivation of the line is completely hardware dependent. Typically, the hardware will activate it before starting a transfer and deactivate it after a transfer completes. Some hardware will leave it activated as long as the SPI stays master. Due to different hardware behavior, this mode is typically not useful because certain devices require that the SS signal is strictly defined with regards to transfers.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_MASTER_HW_INPUT   (3UL << ARM_SPI_SS_MASTER_MODE_Pos)
    +
    + +

    SPI Slave Select when Master: Hardware monitored Input.

    +

    This is normally used in a multi-master configuration, where a master does not drive the SS line when driving the bus but only monitors it. When another master activates this line, the active master backs off. This is called mode fault. SS is configured as input and the hardware only monitors it. When it is externally deactivated while being the master, it presents a mode fault and the SPI switches to inactive mode.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_SLAVE_HW   (0UL << ARM_SPI_SS_SLAVE_MODE_Pos)
    +
    + +

    SPI Slave Select when Slave: Hardware monitored (default)

    +

    Hardware monitors the SS line and accepts transfers only when SS line is activate. Transfers while SS is not active are ignored.

    +
    See Also
    ARM_SPI_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_SPI_SS_SLAVE_SW   (1UL << ARM_SPI_SS_SLAVE_MODE_Pos)
    +
    + +

    SPI Slave Select when Slave: Software controlled.

    +

    Used only when SS line is not used. For example, when a single master and slave are connected in a system, the SS line is not needed (reduces the number of lines and pins used). Slave responses are controlled by software (by default, it is not responding). Software enables/disables transfers by calling ARM_SPI_Control (ARM_SPI_CONTROL_SS, ARM_SPI_SS_ACTIVE / ARM_SPI_SS_INACTIVE).

    +
    See Also
    ARM_SPI_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.js b/CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.js new file mode 100644 index 0000000..0dd045c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__spi__slave__select__mode__ctrls.js @@ -0,0 +1,9 @@ +var group__spi__slave__select__mode__ctrls = +[ + [ "ARM_SPI_SS_MASTER_UNUSED", "group__spi__slave__select__mode__ctrls.html#gae19343adc7bd71408b51733171f99dc7", null ], + [ "ARM_SPI_SS_MASTER_SW", "group__spi__slave__select__mode__ctrls.html#gab5e319aa3f9d4d8c9ed92f0fe865f624", null ], + [ "ARM_SPI_SS_MASTER_HW_OUTPUT", "group__spi__slave__select__mode__ctrls.html#ga07762709a40dc90aca85553f500c8761", null ], + [ "ARM_SPI_SS_MASTER_HW_INPUT", "group__spi__slave__select__mode__ctrls.html#ga8561bd0cc25ab2bb02b138c1c6a586cd", null ], + [ "ARM_SPI_SS_SLAVE_HW", "group__spi__slave__select__mode__ctrls.html#ga2bd0d1f3ade2dc0cc48cc0593336ad70", null ], + [ "ARM_SPI_SS_SLAVE_SW", "group__spi__slave__select__mode__ctrls.html#gad371f6ba0d12a57bdcc3217c351abfb0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__clock__phase.html b/CMSIS/Documentation/Driver/html/group__usart__clock__phase.html new file mode 100644 index 0000000..d7272b5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__clock__phase.html @@ -0,0 +1,176 @@ + + + + + +USART Clock Phase +CMSIS-Driver: USART Clock Phase + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Clock Phase
    +
    +
    + +

    Defines the clock phase for the synchronous mode. +More...

    + + + + + + + + +

    +Macros

    #define ARM_USART_CPHA0   (0UL << ARM_USART_CPHA_Pos)
     CPHA = 0 (default)
     
    #define ARM_USART_CPHA1   (1UL << ARM_USART_CPHA_Pos)
     CPHA = 1.
     
    +

    Description

    +

    Defines the clock phase for the synchronous mode.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_CPHA0   (0UL << ARM_USART_CPHA_Pos)
    +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CPHA1   (1UL << ARM_USART_CPHA_Pos)
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__clock__phase.js b/CMSIS/Documentation/Driver/html/group__usart__clock__phase.js new file mode 100644 index 0000000..7c3a3c8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__clock__phase.js @@ -0,0 +1,5 @@ +var group__usart__clock__phase = +[ + [ "ARM_USART_CPHA0", "group__usart__clock__phase.html#ga5eb27c2294b7d14a20d0c7e2ef0a47b4", null ], + [ "ARM_USART_CPHA1", "group__usart__clock__phase.html#ga4b9f16371870476739a198c52dba6862", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__clock__polarity.html b/CMSIS/Documentation/Driver/html/group__usart__clock__polarity.html new file mode 100644 index 0000000..4459afb --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__clock__polarity.html @@ -0,0 +1,176 @@ + + + + + +USART Clock Polarity +CMSIS-Driver: USART Clock Polarity + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Clock Polarity
    +
    +
    + +

    Defines the clock polarity for the synchronous mode. +More...

    + + + + + + + + +

    +Macros

    #define ARM_USART_CPOL0   (0UL << ARM_USART_CPOL_Pos)
     CPOL = 0 (default)
     
    #define ARM_USART_CPOL1   (1UL << ARM_USART_CPOL_Pos)
     CPOL = 1.
     
    +

    Description

    +

    Defines the clock polarity for the synchronous mode.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_CPOL0   (0UL << ARM_USART_CPOL_Pos)
    +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CPOL1   (1UL << ARM_USART_CPOL_Pos)
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__clock__polarity.js b/CMSIS/Documentation/Driver/html/group__usart__clock__polarity.js new file mode 100644 index 0000000..22e6d32 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__clock__polarity.js @@ -0,0 +1,5 @@ +var group__usart__clock__polarity = +[ + [ "ARM_USART_CPOL0", "group__usart__clock__polarity.html#ga472d459abb99f1caaff94fa0cdd2ad27", null ], + [ "ARM_USART_CPOL1", "group__usart__clock__polarity.html#ga9e5541d8937a9d92e42aeb273138592a", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__data__bits.html b/CMSIS/Documentation/Driver/html/group__usart__data__bits.html new file mode 100644 index 0000000..d01a2fb --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__data__bits.html @@ -0,0 +1,230 @@ + + + + + +USART Data Bits +CMSIS-Driver: USART Data Bits + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Data Bits
    +
    +
    + +

    Defines the number of data bits. +More...

    + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_DATA_BITS_5   (5UL << ARM_USART_DATA_BITS_Pos)
     5 Data bits
     
    #define ARM_USART_DATA_BITS_6   (6UL << ARM_USART_DATA_BITS_Pos)
     6 Data bit
     
    #define ARM_USART_DATA_BITS_7   (7UL << ARM_USART_DATA_BITS_Pos)
     7 Data bits
     
    #define ARM_USART_DATA_BITS_8   (0UL << ARM_USART_DATA_BITS_Pos)
     8 Data bits (default)
     
    #define ARM_USART_DATA_BITS_9   (1UL << ARM_USART_DATA_BITS_Pos)
     9 Data bits
     
    +

    Description

    +

    Defines the number of data bits.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_DATA_BITS_5   (5UL << ARM_USART_DATA_BITS_Pos)
    +
    + +

    5 Data bits

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_DATA_BITS_6   (6UL << ARM_USART_DATA_BITS_Pos)
    +
    + +

    6 Data bit

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_DATA_BITS_7   (7UL << ARM_USART_DATA_BITS_Pos)
    +
    + +

    7 Data bits

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_DATA_BITS_8   (0UL << ARM_USART_DATA_BITS_Pos)
    +
    + +

    8 Data bits (default)

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_DATA_BITS_9   (1UL << ARM_USART_DATA_BITS_Pos)
    +
    + +

    9 Data bits

    +
    See Also
    ARM_USART_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__data__bits.js b/CMSIS/Documentation/Driver/html/group__usart__data__bits.js new file mode 100644 index 0000000..1ad129d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__data__bits.js @@ -0,0 +1,8 @@ +var group__usart__data__bits = +[ + [ "ARM_USART_DATA_BITS_5", "group__usart__data__bits.html#ga981ff25b4ff806f743d1af4575b87339", null ], + [ "ARM_USART_DATA_BITS_6", "group__usart__data__bits.html#ga92ba3d6cea5cd5c0b661667539a9e43c", null ], + [ "ARM_USART_DATA_BITS_7", "group__usart__data__bits.html#gad86a2d971ce521c6f6eda28d4f8786a4", null ], + [ "ARM_USART_DATA_BITS_8", "group__usart__data__bits.html#gadc5e8d17b5c69cd7f9135b849c2a4586", null ], + [ "ARM_USART_DATA_BITS_9", "group__usart__data__bits.html#gae238a08198dc7ac6178ae0a2a95a2764", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__execution__status.html b/CMSIS/Documentation/Driver/html/group__usart__execution__status.html new file mode 100644 index 0000000..2bcdd83 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__execution__status.html @@ -0,0 +1,285 @@ + + + + + +Status Error Codes +CMSIS-Driver: Status Error Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Status Error Codes
    +
    +
    + +

    Negative values indicate errors (USART has specific codes in addition to common Status Error Codes). +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_ERROR_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 1)
     Specified Mode not supported.
     
    #define ARM_USART_ERROR_BAUDRATE   (ARM_DRIVER_ERROR_SPECIFIC - 2)
     Specified baudrate not supported.
     
    #define ARM_USART_ERROR_DATA_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 3)
     Specified number of Data bits not supported.
     
    #define ARM_USART_ERROR_PARITY   (ARM_DRIVER_ERROR_SPECIFIC - 4)
     Specified Parity not supported.
     
    #define ARM_USART_ERROR_STOP_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 5)
     Specified number of Stop bits not supported.
     
    #define ARM_USART_ERROR_FLOW_CONTROL   (ARM_DRIVER_ERROR_SPECIFIC - 6)
     Specified Flow Control not supported.
     
    #define ARM_USART_ERROR_CPOL   (ARM_DRIVER_ERROR_SPECIFIC - 7)
     Specified Clock Polarity not supported.
     
    #define ARM_USART_ERROR_CPHA   (ARM_DRIVER_ERROR_SPECIFIC - 8)
     Specified Clock Phase not supported.
     
    +

    Description

    +

    Negative values indicate errors (USART has specific codes in addition to common Status Error Codes).

    +

    The USART driver has additional status error codes that are listed below. Note that the USART driver also returns the common Status Error Codes.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_ERROR_MODE   (ARM_DRIVER_ERROR_SPECIFIC - 1)
    +
    + +

    Specified Mode not supported.

    +

    The mode requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ERROR_BAUDRATE   (ARM_DRIVER_ERROR_SPECIFIC - 2)
    +
    + +

    Specified baudrate not supported.

    +

    The baude rate requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ERROR_DATA_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 3)
    +
    + +

    Specified number of Data bits not supported.

    +

    The number of data bits requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ERROR_PARITY   (ARM_DRIVER_ERROR_SPECIFIC - 4)
    +
    + +

    Specified Parity not supported.

    +

    The parity bit requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ERROR_STOP_BITS   (ARM_DRIVER_ERROR_SPECIFIC - 5)
    +
    + +

    Specified number of Stop bits not supported.

    +

    The stop bit requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ERROR_FLOW_CONTROL   (ARM_DRIVER_ERROR_SPECIFIC - 6)
    +
    + +

    Specified Flow Control not supported.

    +

    The flow control requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ERROR_CPOL   (ARM_DRIVER_ERROR_SPECIFIC - 7)
    +
    + +

    Specified Clock Polarity not supported.

    +

    The clock polarity requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ERROR_CPHA   (ARM_DRIVER_ERROR_SPECIFIC - 8)
    +
    + +

    Specified Clock Phase not supported.

    +

    The clock phase requested with the function ARM_USART_Control is not supported by this driver.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__execution__status.js b/CMSIS/Documentation/Driver/html/group__usart__execution__status.js new file mode 100644 index 0000000..25d8419 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__execution__status.js @@ -0,0 +1,11 @@ +var group__usart__execution__status = +[ + [ "ARM_USART_ERROR_MODE", "group__usart__execution__status.html#gaa98f35611ec5bd7034f21cb47199322b", null ], + [ "ARM_USART_ERROR_BAUDRATE", "group__usart__execution__status.html#gab57c4e8d4cb3a4b73751a002f5ec4586", null ], + [ "ARM_USART_ERROR_DATA_BITS", "group__usart__execution__status.html#gaade95ddec6882e96c086dfe8e0ba9a4c", null ], + [ "ARM_USART_ERROR_PARITY", "group__usart__execution__status.html#gaefabd886c586a45f4f7346c1f04392d0", null ], + [ "ARM_USART_ERROR_STOP_BITS", "group__usart__execution__status.html#ga1d699654fbbed3ca41c5ea10aac8f859", null ], + [ "ARM_USART_ERROR_FLOW_CONTROL", "group__usart__execution__status.html#gaf8fea8d43ff72c76434d8b5e9eebd890", null ], + [ "ARM_USART_ERROR_CPOL", "group__usart__execution__status.html#ga2a1cd0a1e1bce9b545b0d7854a6fd6d6", null ], + [ "ARM_USART_ERROR_CPHA", "group__usart__execution__status.html#gade1af23c4ed5409dacd99ab76dc2ff8b", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__flow__control.html b/CMSIS/Documentation/Driver/html/group__usart__flow__control.html new file mode 100644 index 0000000..2eeec29 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__flow__control.html @@ -0,0 +1,212 @@ + + + + + +USART Flow Control +CMSIS-Driver: USART Flow Control + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Flow Control
    +
    +
    + +

    Specifies RTS/CTS flow control. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_FLOW_CONTROL_NONE   (0UL << ARM_USART_FLOW_CONTROL_Pos)
     No Flow Control (default)
     
    #define ARM_USART_FLOW_CONTROL_RTS   (1UL << ARM_USART_FLOW_CONTROL_Pos)
     RTS Flow Control.
     
    #define ARM_USART_FLOW_CONTROL_CTS   (2UL << ARM_USART_FLOW_CONTROL_Pos)
     CTS Flow Control.
     
    #define ARM_USART_FLOW_CONTROL_RTS_CTS   (3UL << ARM_USART_FLOW_CONTROL_Pos)
     RTS/CTS Flow Control.
     
    +

    Description

    +

    Specifies RTS/CTS flow control.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_FLOW_CONTROL_NONE   (0UL << ARM_USART_FLOW_CONTROL_Pos)
    +
    + +

    No Flow Control (default)

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_FLOW_CONTROL_RTS   (1UL << ARM_USART_FLOW_CONTROL_Pos)
    +
    + +

    RTS Flow Control.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_FLOW_CONTROL_CTS   (2UL << ARM_USART_FLOW_CONTROL_Pos)
    +
    + +

    CTS Flow Control.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_FLOW_CONTROL_RTS_CTS   (3UL << ARM_USART_FLOW_CONTROL_Pos)
    +
    + +

    RTS/CTS Flow Control.

    +
    See Also
    ARM_USART_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__flow__control.js b/CMSIS/Documentation/Driver/html/group__usart__flow__control.js new file mode 100644 index 0000000..8012bba --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__flow__control.js @@ -0,0 +1,7 @@ +var group__usart__flow__control = +[ + [ "ARM_USART_FLOW_CONTROL_NONE", "group__usart__flow__control.html#gad04aa3fe4ea4b7363aee4bdca2ed3764", null ], + [ "ARM_USART_FLOW_CONTROL_RTS", "group__usart__flow__control.html#ga80c8a78e8868165cfcc543105bfd9621", null ], + [ "ARM_USART_FLOW_CONTROL_CTS", "group__usart__flow__control.html#gaa7b38ebff1ce0f5c3e4479d22e66715f", null ], + [ "ARM_USART_FLOW_CONTROL_RTS_CTS", "group__usart__flow__control.html#gab16151b5c376b41586faf033f4a42d02", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__interface__gr.html b/CMSIS/Documentation/Driver/html/group__usart__interface__gr.html new file mode 100644 index 0000000..98a14a0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__interface__gr.html @@ -0,0 +1,1546 @@ + + + + + +USART Interface +CMSIS-Driver: USART Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Interface
    +
    +
    + +

    Driver API for Universal Synchronous Asynchronous Receiver/Transmitter (Driver_USART.h) +More...

    + + + + + + + + + + + +

    +Content

     Status Error Codes
     Negative values indicate errors (USART has specific codes in addition to common Status Error Codes).
     
     USART Events
     The USART driver generates call back events that are notified via the function ARM_USART_SignalEvent.
     
     USART Control Codes
     Many parameters of the USART driver are configured using the ARM_USART_Control function.
     
    + + + + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_USART
     Access structure of the USART Driver. More...
     
    struct  ARM_USART_CAPABILITIES
     USART Device Driver Capabilities. More...
     
    struct  ARM_USART_STATUS
     USART Status. More...
     
    struct  ARM_USART_MODEM_STATUS
     USART Modem Status. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_USART_SignalEvent_t )(uint32_t event)
     Pointer to ARM_USART_SignalEvent : Signal USART Event.
     
    + + + + +

    +Enumerations

    enum  ARM_USART_MODEM_CONTROL {
    +  ARM_USART_RTS_CLEAR, +
    +  ARM_USART_RTS_SET, +
    +  ARM_USART_DTR_CLEAR, +
    +  ARM_USART_DTR_SET +
    + }
     USART Modem Control. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_USART_GetVersion (void)
     Get driver version.
     
    ARM_USART_CAPABILITIES ARM_USART_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USART_Initialize (ARM_USART_SignalEvent_t cb_event)
     Initialize USART Interface.
     
    int32_t ARM_USART_Uninitialize (void)
     De-initialize USART Interface.
     
    int32_t ARM_USART_PowerControl (ARM_POWER_STATE state)
     Control USART Interface Power.
     
    int32_t ARM_USART_Send (const void *data, uint32_t num)
     Start sending data to USART transmitter.
     
    int32_t ARM_USART_Receive (void *data, uint32_t num)
     Start receiving data from USART receiver.
     
    int32_t ARM_USART_Transfer (const void *data_out, void *data_in, uint32_t num)
     Start sending/receiving data to/from USART transmitter/receiver.
     
    uint32_t ARM_USART_GetTxCount (void)
     Get transmitted data count.
     
    uint32_t ARM_USART_GetRxCount (void)
     Get received data count.
     
    int32_t ARM_USART_Control (uint32_t control, uint32_t arg)
     Control USART Interface.
     
    ARM_USART_STATUS ARM_USART_GetStatus (void)
     Get USART status.
     
    int32_t ARM_USART_SetModemControl (ARM_USART_MODEM_CONTROL control)
     Set USART Modem Control line state.
     
    ARM_USART_MODEM_STATUS ARM_USART_GetModemStatus (void)
     Get USART Modem Status lines state.
     
    void ARM_USART_SignalEvent (uint32_t event)
     Signal USART Events.
     
    +

    Description

    +

    Driver API for Universal Synchronous Asynchronous Receiver/Transmitter (Driver_USART.h)

    +

    The Universal Synchronous Asynchronous Receiver/Transmitter (USART) implements a synchronous and asynchronous serial bus for exchanging data. When only asynchronous mode is supported it is called Universal Asynchronous Receiver/Transmitter (UART). Almost all microcontrollers have a serial interface (UART/USART peripheral). A UART is a simple device to send data to a PC via a terminal emulation program (Hyperterm, TeraTerm) or to another microcontroller. A UART takes bytes of data and transmits the individual bits in a sequential mode. At the destination, a second UART reassembles the bits into complete bytes. Each UART contains a shift register for converting between serial and parallel transmission forms. Wikipedia offers more information about the Universal asynchronous receiver/transmitter.

    +

    USART API

    +

    The following header files define the Application Programming Interface (API) for the USART interface:

    +
      +
    • Driver_USART.h : Driver API for Universal Synchronous Asynchronous Receiver/Transmitter
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +

    Example Code

    +

    The following example code shows the usage of the USART interface for asynchronous communication.

    +
    #include "Driver_USART.h"
    +
    #include "cmsis_os.h" /* ARM::CMSIS:RTOS:Keil RTX */
    +
    #include <stdio.h>
    +
    #include <string.h>
    +
    +
    void myUART_Thread(void const *argument);
    +
    osThreadId tid_myUART_Thread;
    +
    +
    /* USART Driver */
    +
    extern ARM_DRIVER_USART Driver_USART3;
    +
    +
    +
    void myUSART_callback(uint32_t event)
    +
    {
    +
    switch (event)
    +
    {
    + + + + +
    /* Success: Wakeup Thread */
    +
    osSignalSet(tid_myUART_Thread, 0x01);
    +
    break;
    +
    + +
    __breakpoint(0); /* Error: Call debugger or replace with custom error handling */
    +
    break;
    +
    + + +
    __breakpoint(0); /* Error: Call debugger or replace with custom error handling */
    +
    break;
    +
    }
    +
    }
    +
    +
    /* CMSIS-RTOS Thread - UART command thread */
    +
    void myUART_Thread(const void* args)
    +
    {
    +
    static ARM_DRIVER_USART * USARTdrv = &Driver_USART3;
    + +
    ARM_USART_CAPABILITIES drv_capabilities;
    +
    char cmd;
    +
    +
    #ifdef DEBUG
    +
    version = USARTdrv->GetVersion();
    +
    if (version.api < 0x200) /* requires at minimum API version 2.00 or higher */
    +
    { /* error handling */
    +
    return;
    +
    }
    +
    drv_capabilities = USARTdrv->GetCapabilities();
    +
    if (drv_capabilities.event_tx_complete == 0)
    +
    { /* error handling */
    +
    return;
    +
    }
    +
    #endif
    +
    +
    /*Initialize the USART driver */
    +
    USARTdrv->Initialize(myUSART_callback);
    +
    /*Power up the USART peripheral */
    + +
    /*Configure the USART to 4800 Bits/sec */
    + + + + + +
    +
    /* Enable Receiver and Transmitter lines */
    +
    USARTdrv->Control (ARM_USART_CONTROL_TX, 1);
    +
    USARTdrv->Control (ARM_USART_CONTROL_RX, 1);
    +
    +
    USARTdrv->Send("\nPress Enter to receive a message", 34);
    +
    osSignalWait(0x01, osWaitForever);
    +
    +
    while (1)
    +
    {
    +
    USARTdrv->Receive(&cmd, 1); /* Get byte from UART */
    +
    osSignalWait(0x01, osWaitForever);
    +
    if (cmd == 13) /* CR, send greeting */
    +
    {
    +
    USARTdrv->Send("\nHello World!", 12);
    +
    osSignalWait(0x01, osWaitForever);
    +
    }
    +
    +
    }
    +
    }
    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_USART
    +
    +

    Access structure of the USART Driver.

    +

    The functions of the USART driver are accessed by function pointers exposed by this structure. Refer to Common Driver Functions for overview information.

    +

    Each instance of an USART interface provides such an access structure. The instance is identified by a postfix number in the symbol name of the access structure, for example:

    +
      +
    • Driver_USART0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_USART1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A middleware configuration setting allows connecting the middleware to a specific driver instance Driver_USARTn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_USART_GetVersion : Get driver version.
     
    ARM_USART_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_USART_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_USART_SignalEvent_t cb_event)
     Pointer to ARM_USART_Initialize : Initialize USART Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_USART_Uninitialize : De-initialize USART Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_USART_PowerControl : Control USART Interface Power.
     
    int32_t(* Send )(const void *data, uint32_t num)
     Pointer to ARM_USART_Send : Start sending data to USART transmitter.
     
    int32_t(* Receive )(void *data, uint32_t num)
     Pointer to ARM_USART_Receive : Start receiving data from USART receiver.
     
    int32_t(* Transfer )(const void *data_out, void *data_in, uint32_t num)
     Pointer to ARM_USART_Transfer : Start sending/receiving data to/from USART.
     
    uint32_t(* GetTxCount )(void)
     Pointer to ARM_USART_GetTxCount : Get transmitted data count.
     
    uint32_t(* GetRxCount )(void)
     Pointer to ARM_USART_GetRxCount : Get received data count.
     
    int32_t(* Control )(uint32_t control, uint32_t arg)
     Pointer to ARM_USART_Control : Control USART Interface.
     
    ARM_USART_STATUS(* GetStatus )(void)
     Pointer to ARM_USART_GetStatus : Get USART status.
     
    int32_t(* SetModemControl )(ARM_USART_MODEM_CONTROL control)
     Pointer to ARM_USART_SetModemControl : Set USART Modem Control line state.
     
    ARM_USART_MODEM_STATUS(* GetModemStatus )(void)
     Pointer to ARM_USART_GetModemStatus : Get USART Modem Status lines state.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_USART_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_USART_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_USART_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_USART_SignalEvent_t cb_event)
    +
    + +

    Pointer to ARM_USART_Initialize : Initialize USART Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_USART_Uninitialize : De-initialize USART Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_USART_PowerControl : Control USART Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Send)(const void *data, uint32_t num)
    +
    + +

    Pointer to ARM_USART_Send : Start sending data to USART transmitter.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Receive)(void *data, uint32_t num)
    +
    + +

    Pointer to ARM_USART_Receive : Start receiving data from USART receiver.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Transfer)(const void *data_out, void *data_in, uint32_t num)
    +
    + +

    Pointer to ARM_USART_Transfer : Start sending/receiving data to/from USART.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* GetTxCount)(void)
    +
    + +

    Pointer to ARM_USART_GetTxCount : Get transmitted data count.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* GetRxCount)(void)
    +
    + +

    Pointer to ARM_USART_GetRxCount : Get received data count.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Control)(uint32_t control, uint32_t arg)
    +
    + +

    Pointer to ARM_USART_Control : Control USART Interface.

    + +
    +
    + +
    +
    + + + + +
    ARM_USART_STATUS(* GetStatus)(void)
    +
    + +

    Pointer to ARM_USART_GetStatus : Get USART status.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* SetModemControl)(ARM_USART_MODEM_CONTROL control)
    +
    + +

    Pointer to ARM_USART_SetModemControl : Set USART Modem Control line state.

    + +
    +
    + +
    +
    + + + + +
    ARM_USART_MODEM_STATUS(* GetModemStatus)(void)
    +
    + +

    Pointer to ARM_USART_GetModemStatus : Get USART Modem Status lines state.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USART_CAPABILITIES
    +
    +

    USART Device Driver Capabilities.

    +

    An USART driver can be implemented with different capabilities. The data fields of this structure encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +asynchronous: 1 +supports UART (Asynchronous) mode
    +uint32_t +synchronous_master: 1 +supports Synchronous Master mode
    +uint32_t +synchronous_slave: 1 +supports Synchronous Slave mode
    +uint32_t +single_wire: 1 +supports UART Single-wire mode
    +uint32_t +irda: 1 +supports UART IrDA mode
    +uint32_t +smart_card: 1 +supports UART Smart Card mode
    +uint32_t +smart_card_clock: 1 +Smart Card Clock generator available.
    +uint32_t +flow_control_rts: 1 +RTS Flow Control available.
    +uint32_t +flow_control_cts: 1 +CTS Flow Control available.
    +uint32_t +event_tx_complete: 1 +Transmit completed event: ARM_USART_EVENT_TX_COMPLETE.
    +uint32_t +event_rx_timeout: 1 +Signal receive character timeout event: ARM_USART_EVENT_RX_TIMEOUT.
    +uint32_t +rts: 1 +RTS Line: 0=not available, 1=available.
    +uint32_t +cts: 1 +CTS Line: 0=not available, 1=available.
    +uint32_t +dtr: 1 +DTR Line: 0=not available, 1=available.
    +uint32_t +dsr: 1 +DSR Line: 0=not available, 1=available.
    +uint32_t +dcd: 1 +DCD Line: 0=not available, 1=available.
    +uint32_t +ri: 1 +RI Line: 0=not available, 1=available.
    +uint32_t +event_cts: 1 +Signal CTS change event: ARM_USART_EVENT_CTS.
    +uint32_t +event_dsr: 1 +Signal DSR change event: ARM_USART_EVENT_DSR.
    +uint32_t +event_dcd: 1 +Signal DCD change event: ARM_USART_EVENT_DCD.
    +uint32_t +event_ri: 1 +Signal RI change event: ARM_USART_EVENT_RI.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USART_STATUS
    +
    +

    USART Status.

    +

    Structure with information about the status of the USART. The data fields encode busy flags and error flags.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +tx_busy: 1 +Transmitter busy flag.
    +uint32_t +rx_busy: 1 +Receiver busy flag.
    +uint32_t +tx_underflow: 1 +Transmit data underflow detected (cleared on start of next send operation)
    +uint32_t +rx_overflow: 1 +Receive data overflow detected (cleared on start of next receive operation)
    +uint32_t +rx_break: 1 +Break detected on receive (cleared on start of next receive operation)
    +uint32_t +rx_framing_error: 1 +Framing error detected on receive (cleared on start of next receive operation)
    +uint32_t +rx_parity_error: 1 +Parity error detected on receive (cleared on start of next receive operation)
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USART_MODEM_STATUS
    +
    +

    USART Modem Status.

    +

    Structure with information about the status of modem lines. The data fields encode states of modem status lines.

    +

    Returned by:

    + +
    + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +cts: 1 +CTS state: 1=Active, 0=Inactive.
    +uint32_t +dsr: 1 +DSR state: 1=Active, 0=Inactive.
    +uint32_t +dcd: 1 +DCD state: 1=Active, 0=Inactive.
    +uint32_t +ri: 1 +RI state: 1=Active, 0=Inactive.
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_USART_SignalEvent_t
    +
    + +

    Pointer to ARM_USART_SignalEvent : Signal USART Event.

    +

    Provides the typedef for the callback function ARM_USART_SignalEvent.

    +

    Parameter for:

    + + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum ARM_USART_MODEM_CONTROL
    +
    + +

    USART Modem Control.

    +

    Specifies values for controlling the modem control lines.

    +

    Parameter for:

    + +
    Enumerator:
    + + + + +
    ARM_USART_RTS_CLEAR  +

    Deactivate RTS.

    +
    ARM_USART_RTS_SET  +

    Activate RTS.

    +
    ARM_USART_DTR_CLEAR  +

    Deactivate DTR.

    +
    ARM_USART_DTR_SET  +

    Activate DTR.

    +
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_USART_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_USART_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_USART Driver_USART0;
    +
    ARM_DRIVER_USART *drv_info;
    +
    +
    void setup_usart (void) {
    + +
    +
    drv_info = &Driver_USART0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_USART_CAPABILITIES ARM_USART_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_USART_CAPABILITIES
    +

    The function ARM_USART_GetCapabilities returns information about capabilities in this driver implementation. The data fields of the structure ARM_USART_CAPABILITIES encode various capabilities, for example supported modes, if a hardware is capable to create signal events using the ARM_USART_SignalEvent callback function ...

    +

    Example:

    +
    extern ARM_DRIVER_USART Driver_USART0;
    +
    ARM_DRIVER_USART *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_USART_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_USART0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USART_Initialize (ARM_USART_SignalEvent_t cb_event)
    +
    + +

    Initialize USART Interface.

    +
    Parameters
    + + +
    [in]cb_eventPointer to ARM_USART_SignalEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USART_Initialize initializes the USART interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    +
      +
    • Initializes the resources needed for the USART interface.
    • +
    • Registers the ARM_USART_SignalEvent callback function.
    • +
    +

    The parameter cb_event is a pointer to the ARM_USART_SignalEvent callback function; use a NULL pointer when no callback signals are required.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USART_Uninitialize (void )
    +
    + +

    De-initialize USART Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_USART_Uninitialize de-initializes the resources of USART interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USART_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control USART Interface Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USART_PowerControl operates the power modes of the USART interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USART_Send (const void * data,
    uint32_t num 
    )
    +
    + +

    Start sending data to USART transmitter.

    +
    Parameters
    + + + +
    [in]dataPointer to buffer with data to send to USART transmitter
    [in]numNumber of data items to send
    +
    +
    +
    Returns
    Status Error Codes
    +

    This functions ARM_USART_Send is used in asynchronous mode to send data to the USART transmitter. It can also be used in synchronous mode when sending data only (received data is ignored).

    +

    Transmitter needs to be enabled by calling ARM_USART_Control with ARM_USART_CONTROL_TX as the control parameter and 1 as argument.

    +

    The function parameters specify the buffer with data and the number of items to send. The item size is defined by the data type which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 5..8 data bits
    • +
    • uint16_t when configured for 9 data bits
    • +
    +

    Calling the function ARM_USART_Send only starts the send operation. The function is non-blocking and returns as soon as the driver has started the operation (driver typically configures DMA or the interrupt system for continuous transfer). When in synchronous slave mode the operation is only registered and started when the master starts the transfer. During the operation it is not allowed to call this function again or any other data transfer function when in synchronous mode. Also the data buffer must stay allocated and the contents of unsent data must not be modified. When send operation is completed (requested number of items sent) the ARM_USART_EVENT_SEND_COMPLETE event is generated. Progress of send operation can also be monitored by reading the number of items already sent by calling ARM_USART_GetTxCount.

    +

    After send operation has completed there might still be some data left in the driver's hardware buffer which is still being transmitted. When all data has been physically transmitted the ARM_USART_EVENT_TX_COMPLETE event is generated (if supported and reported by event_tx_complete in ARM_USART_CAPABILITIES). At that point also the tx_busy data field in ARM_USART_STATUS is cleared.

    +

    Status of the transmitter can be monitored by calling the ARM_USART_GetStatus and checking the tx_busy flag which indicates if transmission is still in progress.

    +

    When in synchronous slave mode and transmitter is enabled but send/receive/transfer operation is not started and data is requested by the master then the ARM_USART_EVENT_TX_UNDERFLOW event is generated.

    +

    Send operation can be aborted by calling ARM_USART_Control with ARM_USART_ABORT_SEND as the control parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USART_Receive (void * data,
    uint32_t num 
    )
    +
    + +

    Start receiving data from USART receiver.

    +
    Parameters
    + + + +
    [out]dataPointer to buffer for data to receive from USART receiver
    [in]numNumber of data items to receive
    +
    +
    +
    Returns
    Status Error Codes
    +

    This functions ARM_USART_Receive is used in asynchronous mode to receive data from the USART receiver. It can also be used in synchronous mode when receiving data only (transmits the default value as specified by ARM_USART_Control with ARM_USART_SET_DEFAULT_TX_VALUE as control parameter).

    +

    Receiver needs to be enabled by calling ARM_USART_Control with ARM_USART_CONTROL_RX as the control parameter and 1 as argument.

    +

    The function parameters specify the buffer for data and the number of items to receive. The item size is defined by the data type which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 5..8 data bits
    • +
    • uint16_t when configured for 9 data bits
    • +
    +

    Calling the function ARM_USART_Receive only starts the receive operation. The function is non-blocking and returns as soon as the driver has started the operation (driver typically configures DMA or the interrupt system for continuous transfer). When in synchronous slave mode the operation is only registered and started when the master starts the transfer. During the operation it is not allowed to call this function again or any other data transfer function when in synchronous mode. Also the data buffer must stay allocated. When receive operation is completed (requested number of items received) the ARM_USART_EVENT_RECEIVE_COMPLETE event is generated. Progress of receive operation can also be monitored by reading the number of items already received by calling ARM_USART_GetRxCount.

    +

    Status of the receiver can be monitored by calling the ARM_USART_GetStatus and checking the rx_busy flag which indicates if reception is still in progress.

    +

    During reception the following events can be generated (in asynchronous mode):

    + +

    ARM_USART_EVENT_RX_OVERFLOW event is also generated when receiver is enabled but data is lost because receive operation in asynchronous mode or receive/send/transfer operation in synchronous slave mode has not been started.

    +

    Receive operation can be aborted by calling ARM_USART_Control with ARM_USART_ABORT_RECEIVE as the control parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USART_Transfer (const void * data_out,
    void * data_in,
    uint32_t num 
    )
    +
    + +

    Start sending/receiving data to/from USART transmitter/receiver.

    +
    Parameters
    + + + + +
    [in]data_outPointer to buffer with data to send to USART transmitter
    [out]data_inPointer to buffer for data to receive from USART receiver
    [in]numNumber of data items to transfer
    +
    +
    +
    Returns
    Status Error Codes
    +

    This functions ARM_USART_Transfer is used in synchronous mode to transfer data via USART. It synchronously sends data to the USART transmitter and receives data from the USART receiver.

    +

    Transmitter needs to be enabled by calling ARM_USART_Control with ARM_USART_CONTROL_TX as the control parameter and 1 as argument. Receiver needs to be enabled by calling ARM_USART_Control with ARM_USART_CONTROL_RX as the control parameter and 1 as argument.

    +

    The function parameters specify the buffer with data to send, the buffer for data to receive and the number of items to transfer. The item size is defined by the data type which depends on the configured number of data bits.

    +

    Data type is:

    +
      +
    • uint8_t when configured for 5..8 data bits
    • +
    • uint16_t when configured for 9 data bits
    • +
    +

    Calling the function ARM_USART_Transfer only starts the transfer operation. The function is non-blocking and returns as soon as the driver has started the operation (driver typically configures DMA or the interrupt system for continuous transfer). When in synchronous slave mode the operation is only registered and started when the master starts the transfer. During the operation it is not allowed to call this function or any other data transfer function again. Also the data buffers must stay allocated and the contents of unsent data must not be modified. When transfer operation is completed (requested number of items transferred) the ARM_USART_EVENT_TRANSFER_COMPLETE event is generated. Progress of transfer operation can also be monitored by reading the number of items already transferred by calling ARM_USART_GetTxCount or ARM_USART_GetRxCount.

    +

    Status of the transmitter or receiver can be monitored by calling the ARM_USART_GetStatus and checking the tx_busy or rx_busy flag.

    +

    When in synchronous slave mode also the following events can be generated:

    + +

    Transfer operation can also be aborted by calling ARM_USART_Control with ARM_USART_ABORT_TRANSFER as the control parameter.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_USART_GetTxCount (void )
    +
    + +

    Get transmitted data count.

    +
    Returns
    number of data items transmitted
    +

    The function ARM_USART_GetTxCount returns the number of the currently transmitted data items during ARM_USART_Send and ARM_USART_Transfer operation.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_USART_GetRxCount (void )
    +
    + +

    Get received data count.

    +
    Returns
    number of data items received
    +

    The function ARM_USART_GetRxCount returns the number of the currently received data items during ARM_USART_Receive and ARM_USART_Transfer operation.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USART_Control (uint32_t control,
    uint32_t arg 
    )
    +
    + +

    Control USART Interface.

    +
    Parameters
    + + + +
    [in]controlOperation
    [in]argArgument of operation (optional)
    +
    +
    +
    Returns
    common Status Error Codes and driver specific Status Error Codes
    +

    The function ARM_USART_Control control the USART interface settings and execute various operations.

    +

    The parameter control sets the operation and is explained in the table below. Values from different categories can be ORed with the exception of <b>Miscellaneous Operations</b>.
    + The parameter arg provides, depending on the operation, additional information, for example the baudrate.

    +

    The table list the control operations.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter control Bit Category Description
    ARM_USART_MODE_ASYNCHRONOUS 0..7 Operation Mode Set to asynchronous UART mode. arg specifies baudrate.
    ARM_USART_MODE_SYNCHRONOUS_MASTER Set to synchronous master mode with clock signal generation. arg specifies baudrate.
    ARM_USART_MODE_SYNCHRONOUS_SLAVE Set to synchronous slave mode with external clock signal.
    ARM_USART_MODE_SINGLE_WIRE Set to single-wire (half-duplex) mode. arg specifies baudrate.
    ARM_USART_MODE_IRDA Set to Infra-red data mode. arg specifies baudrate.
    ARM_USART_MODE_SMART_CARD Set to Smart Card mode. arg specifies baudrate.
    ARM_USART_DATA_BITS_5 8..11 Data Bits Set to 5 data bits
    ARM_USART_DATA_BITS_6 Set to 6 data bits
    ARM_USART_DATA_BITS_7 Set to 7 data bits
    ARM_USART_DATA_BITS_8 Set to 8 data bits (default)
    ARM_USART_DATA_BITS_9 Set to 9 data bits
    ARM_USART_PARITY_EVEN 12..13 Parity Bit Set to Even Parity
    ARM_USART_PARITY_NONE Set to No Parity (default)
    ARM_USART_PARITY_ODD Set to Odd Parity
    ARM_USART_STOP_BITS_1 14..15 Stop Bit Set to 1 Stop bit (default)
    ARM_USART_STOP_BITS_2 Set to 2 Stop bits
    ARM_USART_STOP_BITS_1_5 Set to 1.5 Stop bits
    ARM_USART_STOP_BITS_0_5 Set to 0.5 Stop bits
    ARM_USART_FLOW_CONTROL_NONE 16..17 Flow Control No flow control signal (default)
    ARM_USART_FLOW_CONTROL_CTS Set to use the CTS flow control signal
    ARM_USART_FLOW_CONTROL_RTS Set to use the RTS flow control signal
    ARM_USART_FLOW_CONTROL_RTS_CTS Set to use the RTS and CTS flow control signal
    ARM_USART_CPOL0 18 Clock Polarity CPOL=0 (default) : data are captured on rising edge (low->high transition)
    ARM_USART_CPOL1 CPOL=1 : data are captured on falling edge (high->lowh transition)
    ARM_USART_CPHA0 19 Clock Phase CPHA=0 (default) : sample on first (leading) edge
    ARM_USART_CPHA1 CPHA=1 : sample on second (trailing) edge
    ARM_USART_ABORT_RECEIVE 0..19 Miscellaneous Operations
    +(cannot be ORed)
    Abort receive operation (see also: ARM_USART_Receive)
    ARM_USART_ABORT_SEND Abort send operation (see also: ARM_USART_Send)
    ARM_USART_ABORT_TRANSFER Abort transfer operation (see also: ARM_USART_Transfer)
    ARM_USART_CONTROL_BREAK Enable or disable continuous Break transmission; arg : 0=disabled; 1=enabled
    ARM_USART_CONTROL_RX Enable or disable receiver; arg : 0=disabled; 1=enabled (see also: ARM_USART_Receive; ARM_USART_Transfer)
    ARM_USART_CONTROL_SMART_CARD_NACK Enable or disable Smart Card NACK generation; arg : 0=disabled; 1=enabled
    ARM_USART_CONTROL_TX Enable or disable transmitter; arg : 0=disabled; 1=enabled (see also: ARM_USART_Send; ARM_USART_Transfer)
    ARM_USART_SET_DEFAULT_TX_VALUE Set the default transmit value (synchronous receive only); arg specifies the value. (see also: ARM_USART_Receive)
    ARM_USART_SET_IRDA_PULSE Set the IrDA pulse value in ns; arg : 0=3/16 of bit period
    ARM_USART_SET_SMART_CARD_CLOCK Set the Smart Card Clock in Hz; arg : 0=Clock not set
    ARM_USART_SET_SMART_CARD_GUARD_TIME Set the Smart Card guard time; arg = number of bit periods
    +

    Example

    +
    extern ARM_DRIVER_USART Driver_USART0;
    +
    +
    // configure to UART mode: 8 bits, no parity, 1 stop bit, no flow control, 9600 bps
    +
    status = Driver_USART0.Control(ARM_USART_MODE_ASYNCHRONOUS |
    + + + + +
    +
    // identical with above settings (default settings removed)
    +
    // configure to UART mode: 8 bits, no parity, 1 stop bit, flow control, 9600 bps
    +
    status = Driver_USART0.Control(ARM_USART_MODE_ASYNCHRONOUS, 9600);
    +
    +
    // enable TX output
    +
    status = Driver_USART0.Control(ARM_USART_CONTROL_TX, 1);
    +
    +
    // disable RX output
    +
    status = Driver_USART0.Control(ARM_USART_CONTROL_RX, 0);
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_USART_STATUS ARM_USART_GetStatus (void )
    +
    + +

    Get USART status.

    +
    Returns
    USART status ARM_USART_STATUS
    +

    The function ARM_USART_GetStatus retrieves the current USART interface status.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USART_SetModemControl (ARM_USART_MODEM_CONTROL control)
    +
    + +

    Set USART Modem Control line state.

    +
    Parameters
    + + +
    [in]controlARM_USART_MODEM_CONTROL
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USART_SetModemControl activates or deactivates the selected USART modem control line.

    +

    The function ARM_USART_GetModemStatus returns information about status of the modem lines.

    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_USART_MODEM_STATUS ARM_USART_GetModemStatus (void )
    +
    + +

    Get USART Modem Status lines state.

    +
    Returns
    modem status ARM_USART_MODEM_STATUS
    +

    The function ARM_USART_GetModemStatus returns the current USART Modem Status lines state.

    +

    The function ARM_USART_SetModemControl sets the modem control lines of the USART.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_USART_SignalEvent (uint32_t event)
    +
    + +

    Signal USART Events.

    +
    Parameters
    + + +
    [in]eventUSART Events notification mask
    +
    +
    +
    Returns
    none
    +

    The function ARM_USART_SignalEvent is a callback function registered by the function ARM_USART_Initialize.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_USART_CAPABILITIES, which can be retrieved with the function ARM_USART_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parameter event Bit Description supported when ARM_USART_CAPABILITIES
    ARM_USART_EVENT_SEND_COMPLETE 0 Occurs after call to ARM_USART_Send to indicate that all the data to be sent was processed by the driver. All the data might have been already transmitted or parts of it are still queued in transmit buffers. The driver is ready for the next call to ARM_USART_Send; however USART may still transmit data. allways supported
    ARM_USART_EVENT_RECEIVE_COMPLETE 1 Occurs after call to ARM_USART_Receive to indicate that all the data has been received. The driver is ready for the next call to ARM_USART_Receive. allways supported
    ARM_USART_EVENT_TRANSFER_COMPLETE 2 Occurs after call to ARM_USART_Transfer to indicate that all the data has been transferred. The driver is ready for the next call to ARM_USART_Transfer. allways supported
    ARM_USART_EVENT_TX_COMPLETE 3 Occurs after call to ARM_USART_Transfer to indicate that all the data has been transferred. The driver is ready for the next call to ARM_USART_Transfer. data field event_tx_complete = 1
    ARM_USART_EVENT_TX_UNDERFLOW 4 Occurs in synchronous slave mode when data is requested by the master but send/receive/transfer operation has not been started. Data field rx_underflow = 1 of ARM_USART_STATUS. allways supported
    ARM_USART_EVENT_RX_OVERFLOW 5 Occurs when data is lost during receive/transfer operation or when data is lost because receive operation in asynchronous mode or receive/send/transfer operation in synchronous slave mode has not been started. Data field rx_overflow = 1 of ARM_USART_STATUS. allways supported
    ARM_USART_EVENT_RX_TIMEOUT 6 Occurs during receive when idle time is detected between consecutive characters (idle time is hardware dependent). data field event_rx_timeout = 1
    ARM_USART_EVENT_RX_BREAK 7 Occurs when break is detected during receive. Data field rx_break = 1 of ARM_USART_STATUS. allways supported
    ARM_USART_EVENT_RX_FRAMING_ERROR 8 Occurs when framing error is detected during receive. Data field rx_framing_error = 1 of ARM_USART_STATUS. allways supported
    ARM_USART_EVENT_RX_PARITY_ERROR 9 Occurs when parity error is detected during receive. Data field rx_parity_error = 1 of ARM_USART_STATUS. allways supported
    ARM_USART_EVENT_CTS 10 Indicates that CTS modem line state has changed. Data field cts = 1 of ARM_USART_MODEM_STATUS. data field event_cts = 1 and
    + data field cts = 1
    ARM_USART_EVENT_CTS 11 Indicates that DSR modem line state has changed. Data field dsr = 1 of ARM_USART_MODEM_STATUS. data field event_dsr = 1 and
    + data field dsr = 1
    ARM_USART_EVENT_DCD 12 Indicates that DCD modem line state has changed. Data field dcd = 1 of ARM_USART_MODEM_STATUS. data field event_dcd = 1 and
    + data field dcd = 1
    ARM_USART_EVENT_RI 13 Indicates that RI modem line state has changed. Data field ri = 1 of ARM_USART_MODEM_STATUS. data field event_ri = 1 and
    + data field ri = 1
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__interface__gr.js b/CMSIS/Documentation/Driver/html/group__usart__interface__gr.js new file mode 100644 index 0000000..edc552f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__interface__gr.js @@ -0,0 +1,82 @@ +var group__usart__interface__gr = +[ + [ "Status Error Codes", "group__usart__execution__status.html", "group__usart__execution__status" ], + [ "USART Events", "group___u_s_a_r_t__events.html", "group___u_s_a_r_t__events" ], + [ "USART Control Codes", "group___u_s_a_r_t__control.html", "group___u_s_a_r_t__control" ], + [ "ARM_DRIVER_USART", "group__usart__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_a_r_t", [ + [ "GetVersion", "group__usart__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__usart__interface__gr.html#a9cec078ea816ece7b2d989f35caadb12", null ], + [ "Initialize", "group__usart__interface__gr.html#a1a68601c09df8d37f3500ad373333962", null ], + [ "Uninitialize", "group__usart__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__usart__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "Send", "group__usart__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922", null ], + [ "Receive", "group__usart__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3", null ], + [ "Transfer", "group__usart__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7", null ], + [ "GetTxCount", "group__usart__interface__gr.html#a0b28b2c21016702f50c28655653099df", null ], + [ "GetRxCount", "group__usart__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71", null ], + [ "Control", "group__usart__interface__gr.html#a6e0f47a92f626a971c5197fca6545505", null ], + [ "GetStatus", "group__usart__interface__gr.html#a055ad4095356a022886828009a980316", null ], + [ "SetModemControl", "group__usart__interface__gr.html#af6703d4078818df27ab9f8a7a8ad7b7b", null ], + [ "GetModemStatus", "group__usart__interface__gr.html#a517a7a98a444126734782beb4951a9db", null ] + ] ], + [ "ARM_USART_CAPABILITIES", "group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "asynchronous", "group__usart__interface__gr.html#a75ba2507ea29601a309393e794f4413d", null ], + [ "synchronous_master", "group__usart__interface__gr.html#afb385bfd9fb2d714bb58aa7d8d9d7d51", null ], + [ "synchronous_slave", "group__usart__interface__gr.html#a37dcd87df8762e2bc9af9fea368b1537", null ], + [ "single_wire", "group__usart__interface__gr.html#ad1928b61021dd9ff689a3ccf9b8966a8", null ], + [ "irda", "group__usart__interface__gr.html#a9a72c5f0209a9ccf840fc196e9a9dffa", null ], + [ "smart_card", "group__usart__interface__gr.html#aa78e1ee1726d1db2cfa83fd7b5acc8bd", null ], + [ "smart_card_clock", "group__usart__interface__gr.html#a7b3c14ea1b5e9ba0a37ebc05fcfd51a6", null ], + [ "flow_control_rts", "group__usart__interface__gr.html#a1d55dd339a08293018608775fc8b4859", null ], + [ "flow_control_cts", "group__usart__interface__gr.html#a287da15773bb24a301cbfd806975e1e9", null ], + [ "event_tx_complete", "group__usart__interface__gr.html#a0190aabe8d8f59176be8d693f8874fb3", null ], + [ "event_rx_timeout", "group__usart__interface__gr.html#afe469796cfca4ea61bd6181afb4916be", null ], + [ "rts", "group__usart__interface__gr.html#afad044722f459552e9f0f602983659e9", null ], + [ "cts", "group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262", null ], + [ "dtr", "group__usart__interface__gr.html#aa3cc092c82fdc3e5e6646460be6ae9fd", null ], + [ "dsr", "group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2", null ], + [ "dcd", "group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c", null ], + [ "ri", "group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb", null ], + [ "event_cts", "group__usart__interface__gr.html#a4ebe5ddec8d99a63843f2a3c70ac85f9", null ], + [ "event_dsr", "group__usart__interface__gr.html#aefdb61f16498d650b5a7f5f9b62779df", null ], + [ "event_dcd", "group__usart__interface__gr.html#a7c1dd043d0db9738d6b5fa8d89211446", null ], + [ "event_ri", "group__usart__interface__gr.html#ab55f90aec5f909ff3a75bf36e61312ea", null ] + ] ], + [ "ARM_USART_STATUS", "group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___s_t_a_t_u_s", [ + [ "tx_busy", "group__usart__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b", null ], + [ "rx_busy", "group__usart__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4", null ], + [ "tx_underflow", "group__usart__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72", null ], + [ "rx_overflow", "group__usart__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa", null ], + [ "rx_break", "group__usart__interface__gr.html#aa5e3fa74f444688f9e727ffc1e988e5d", null ], + [ "rx_framing_error", "group__usart__interface__gr.html#af1d1cfd8b231843d5cc23e6a2b1ca8d0", null ], + [ "rx_parity_error", "group__usart__interface__gr.html#affb21b610e2d0d71727702441c238f4f", null ] + ] ], + [ "ARM_USART_MODEM_STATUS", "group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___m_o_d_e_m___s_t_a_t_u_s", [ + [ "cts", "group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262", null ], + [ "dsr", "group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2", null ], + [ "dcd", "group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c", null ], + [ "ri", "group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb", null ] + ] ], + [ "ARM_USART_SignalEvent_t", "group__usart__interface__gr.html#gaa578c3829eea207e9e48df6cb6f038a1", null ], + [ "ARM_USART_MODEM_CONTROL", "group__usart__interface__gr.html#ga7b89d709f048b6a956aa211f63e75f6f", [ + [ "ARM_USART_RTS_CLEAR", "_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab4d04e682d04f70c6aeba130656d3ec6", null ], + [ "ARM_USART_RTS_SET", "_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa7f9d445e6e56642c4c4251a00bfa7434", null ], + [ "ARM_USART_DTR_CLEAR", "_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa3ad44ce9f16c136ccad45c09ec65cb4c", null ], + [ "ARM_USART_DTR_SET", "_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab938a21e1b59a2b92424e2521b9469d4", null ] + ] ], + [ "ARM_USART_GetVersion", "group__usart__interface__gr.html#gabca6151cef47565832decaf484781b61", null ], + [ "ARM_USART_GetCapabilities", "group__usart__interface__gr.html#gad2d3ace1fe7627bb72945efefaeddf0a", null ], + [ "ARM_USART_Initialize", "group__usart__interface__gr.html#ga51f06805e9a6197c553fa9513ac7b9d6", null ], + [ "ARM_USART_Uninitialize", "group__usart__interface__gr.html#ga96f31f07a6721cf75de2a7a0ab723d26", null ], + [ "ARM_USART_PowerControl", "group__usart__interface__gr.html#ga9bad012b28d544f3eeeea9c2f71a4086", null ], + [ "ARM_USART_Send", "group__usart__interface__gr.html#ga5cf758b0b9d03dca68846962f73c0b08", null ], + [ "ARM_USART_Receive", "group__usart__interface__gr.html#gae9efabdabb5aaa17bce83339f8a58803", null ], + [ "ARM_USART_Transfer", "group__usart__interface__gr.html#ga878899928d34a818edd3e97d67b65c2a", null ], + [ "ARM_USART_GetTxCount", "group__usart__interface__gr.html#gacb355584bcdf4ebd36f11d945800fa03", null ], + [ "ARM_USART_GetRxCount", "group__usart__interface__gr.html#ga1a8799aeeba1363a9e5d22bada715a29", null ], + [ "ARM_USART_Control", "group__usart__interface__gr.html#gad8ffdde2123b5412de3005c456da677d", null ], + [ "ARM_USART_GetStatus", "group__usart__interface__gr.html#ga1e8fdd54294b587438b2b72f4dbde004", null ], + [ "ARM_USART_SetModemControl", "group__usart__interface__gr.html#gad8eb0eb1d1c24fc725584ab93214cfc7", null ], + [ "ARM_USART_GetModemStatus", "group__usart__interface__gr.html#ga198af0d6a7c85b7c0b96f3d9db8c34e0", null ], + [ "ARM_USART_SignalEvent", "group__usart__interface__gr.html#gad796cd023f8f6300a6caadcc39d43cbf", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__misc__control.html b/CMSIS/Documentation/Driver/html/group__usart__misc__control.html new file mode 100644 index 0000000..cab19ab --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__misc__control.html @@ -0,0 +1,338 @@ + + + + + +USART Miscellaneous Control +CMSIS-Driver: USART Miscellaneous Control + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Miscellaneous Control
    +
    +
    + +

    Specifies additional miscellaneous controls. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_SET_DEFAULT_TX_VALUE   (0x10UL << ARM_USART_CONTROL_Pos)
     Set default Transmit value (Synchronous Receive only); arg = value.
     
    #define ARM_USART_SET_IRDA_PULSE   (0x11UL << ARM_USART_CONTROL_Pos)
     Set IrDA Pulse in ns; arg: 0=3/16 of bit period.
     
    #define ARM_USART_SET_SMART_CARD_GUARD_TIME   (0x12UL << ARM_USART_CONTROL_Pos)
     Set Smart Card Guard Time; arg = number of bit periods.
     
    #define ARM_USART_SET_SMART_CARD_CLOCK   (0x13UL << ARM_USART_CONTROL_Pos)
     Set Smart Card Clock in Hz; arg: 0=Clock not generated.
     
    #define ARM_USART_CONTROL_SMART_CARD_NACK   (0x14UL << ARM_USART_CONTROL_Pos)
     Smart Card NACK generation; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_CONTROL_TX   (0x15UL << ARM_USART_CONTROL_Pos)
     Transmitter; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_CONTROL_RX   (0x16UL << ARM_USART_CONTROL_Pos)
     Receiver; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_CONTROL_BREAK   (0x17UL << ARM_USART_CONTROL_Pos)
     Continuous Break transmission; arg: 0=disabled, 1=enabled.
     
    #define ARM_USART_ABORT_SEND   (0x18UL << ARM_USART_CONTROL_Pos)
     Abort ARM_USART_Send.
     
    #define ARM_USART_ABORT_RECEIVE   (0x19UL << ARM_USART_CONTROL_Pos)
     Abort ARM_USART_Receive.
     
    #define ARM_USART_ABORT_TRANSFER   (0x1AUL << ARM_USART_CONTROL_Pos)
     Abort ARM_USART_Transfer.
     
    +

    Description

    +

    Specifies additional miscellaneous controls.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_SET_DEFAULT_TX_VALUE   (0x10UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Set default Transmit value (Synchronous Receive only); arg = value.

    +
    See Also
    ARM_USART_Control; ARM_USART_Receive;
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_SET_IRDA_PULSE   (0x11UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Set IrDA Pulse in ns; arg: 0=3/16 of bit period.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_SET_SMART_CARD_GUARD_TIME   (0x12UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Set Smart Card Guard Time; arg = number of bit periods.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_SET_SMART_CARD_CLOCK   (0x13UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Set Smart Card Clock in Hz; arg: 0=Clock not generated.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CONTROL_SMART_CARD_NACK   (0x14UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Smart Card NACK generation; arg: 0=disabled, 1=enabled.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CONTROL_TX   (0x15UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Transmitter; arg: 0=disabled, 1=enabled.

    +
    See Also
    ARM_USART_Control; ARM_USART_Send; ARM_USART_Transfer
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CONTROL_RX   (0x16UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Receiver; arg: 0=disabled, 1=enabled.

    +
    See Also
    ARM_USART_Control; ARM_USART_Receive; ARM_USART_Transfer;
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_CONTROL_BREAK   (0x17UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Continuous Break transmission; arg: 0=disabled, 1=enabled.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ABORT_SEND   (0x18UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Abort ARM_USART_Send.

    +
    See Also
    ARM_USART_Control;
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ABORT_RECEIVE   (0x19UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Abort ARM_USART_Receive.

    +
    See Also
    ARM_USART_Control;
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_ABORT_TRANSFER   (0x1AUL << ARM_USART_CONTROL_Pos)
    +
    + +

    Abort ARM_USART_Transfer.

    +
    See Also
    ARM_USART_Control;
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__misc__control.js b/CMSIS/Documentation/Driver/html/group__usart__misc__control.js new file mode 100644 index 0000000..cd82eb2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__misc__control.js @@ -0,0 +1,14 @@ +var group__usart__misc__control = +[ + [ "ARM_USART_SET_DEFAULT_TX_VALUE", "group__usart__misc__control.html#gacd6f060afd55ffa1422567c31ebad950", null ], + [ "ARM_USART_SET_IRDA_PULSE", "group__usart__misc__control.html#gab8565d1f26382e832327e4553d18eb02", null ], + [ "ARM_USART_SET_SMART_CARD_GUARD_TIME", "group__usart__misc__control.html#ga169be809adc186c131bb8b1618005b28", null ], + [ "ARM_USART_SET_SMART_CARD_CLOCK", "group__usart__misc__control.html#ga79698a2bd564c1f5bb1829ea422e9d3d", null ], + [ "ARM_USART_CONTROL_SMART_CARD_NACK", "group__usart__misc__control.html#ga4bb5374e7db308b6ff48aa13aa9c4b8a", null ], + [ "ARM_USART_CONTROL_TX", "group__usart__misc__control.html#gad96ea1a80c97f968fbc0ae4c20e7fa6a", null ], + [ "ARM_USART_CONTROL_RX", "group__usart__misc__control.html#gad52c08553ae203d4f7741404589b8169", null ], + [ "ARM_USART_CONTROL_BREAK", "group__usart__misc__control.html#gab194a6f916e5b25e0262534c0cce54dc", null ], + [ "ARM_USART_ABORT_SEND", "group__usart__misc__control.html#ga54e88b32bc7368ff9c44613eae735c44", null ], + [ "ARM_USART_ABORT_RECEIVE", "group__usart__misc__control.html#ga3f57bcedf610dc844e6cc3a230dba5f7", null ], + [ "ARM_USART_ABORT_TRANSFER", "group__usart__misc__control.html#ga83d0ef402feb342f9939f0e4ffe26182", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__mode__control.html b/CMSIS/Documentation/Driver/html/group__usart__mode__control.html new file mode 100644 index 0000000..e01a684 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__mode__control.html @@ -0,0 +1,248 @@ + + + + + +USART Mode Control +CMSIS-Driver: USART Mode Control + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Mode Control
    +
    +
    + +

    Specify USART mode. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_MODE_ASYNCHRONOUS   (0x01UL << ARM_USART_CONTROL_Pos)
     UART (Asynchronous); arg = Baudrate.
     
    #define ARM_USART_MODE_SYNCHRONOUS_MASTER   (0x02UL << ARM_USART_CONTROL_Pos)
     Synchronous Master (generates clock signal); arg = Baudrate.
     
    #define ARM_USART_MODE_SYNCHRONOUS_SLAVE   (0x03UL << ARM_USART_CONTROL_Pos)
     Synchronous Slave (external clock signal)
     
    #define ARM_USART_MODE_SINGLE_WIRE   (0x04UL << ARM_USART_CONTROL_Pos)
     UART Single-wire (half-duplex); arg = Baudrate.
     
    #define ARM_USART_MODE_IRDA   (0x05UL << ARM_USART_CONTROL_Pos)
     UART IrDA; arg = Baudrate.
     
    #define ARM_USART_MODE_SMART_CARD   (0x06UL << ARM_USART_CONTROL_Pos)
     UART Smart Card; arg = Baudrate.
     
    +

    Description

    +

    Specify USART mode.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_MODE_ASYNCHRONOUS   (0x01UL << ARM_USART_CONTROL_Pos)
    +
    + +

    UART (Asynchronous); arg = Baudrate.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_MODE_SYNCHRONOUS_MASTER   (0x02UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Synchronous Master (generates clock signal); arg = Baudrate.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_MODE_SYNCHRONOUS_SLAVE   (0x03UL << ARM_USART_CONTROL_Pos)
    +
    + +

    Synchronous Slave (external clock signal)

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_MODE_SINGLE_WIRE   (0x04UL << ARM_USART_CONTROL_Pos)
    +
    + +

    UART Single-wire (half-duplex); arg = Baudrate.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_MODE_IRDA   (0x05UL << ARM_USART_CONTROL_Pos)
    +
    + +

    UART IrDA; arg = Baudrate.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_MODE_SMART_CARD   (0x06UL << ARM_USART_CONTROL_Pos)
    +
    + +

    UART Smart Card; arg = Baudrate.

    +
    See Also
    ARM_USART_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__mode__control.js b/CMSIS/Documentation/Driver/html/group__usart__mode__control.js new file mode 100644 index 0000000..2783a4d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__mode__control.js @@ -0,0 +1,9 @@ +var group__usart__mode__control = +[ + [ "ARM_USART_MODE_ASYNCHRONOUS", "group__usart__mode__control.html#gad85039731478c924d3b418ec00768388", null ], + [ "ARM_USART_MODE_SYNCHRONOUS_MASTER", "group__usart__mode__control.html#ga7d3e9e0e838a3f15f8661983b9ac4573", null ], + [ "ARM_USART_MODE_SYNCHRONOUS_SLAVE", "group__usart__mode__control.html#gae78778475f3fab09a080c2279afc69fa", null ], + [ "ARM_USART_MODE_SINGLE_WIRE", "group__usart__mode__control.html#ga4132136971d4f93f2e6a87c6775a9bb0", null ], + [ "ARM_USART_MODE_IRDA", "group__usart__mode__control.html#ga458f4f60d1d772cfd7567ae424d9aad9", null ], + [ "ARM_USART_MODE_SMART_CARD", "group__usart__mode__control.html#gade65a1c27d9097d9ef0e86c02b55cecd", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__parity__bit.html b/CMSIS/Documentation/Driver/html/group__usart__parity__bit.html new file mode 100644 index 0000000..55d44b0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__parity__bit.html @@ -0,0 +1,194 @@ + + + + + +USART Parity Bit +CMSIS-Driver: USART Parity Bit + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Parity Bit
    +
    +
    + +

    Defines the parity bit. +More...

    + + + + + + + + + + + +

    +Macros

    #define ARM_USART_PARITY_NONE   (0UL << ARM_USART_PARITY_Pos)
     No Parity (default)
     
    #define ARM_USART_PARITY_EVEN   (1UL << ARM_USART_PARITY_Pos)
     Even Parity.
     
    #define ARM_USART_PARITY_ODD   (2UL << ARM_USART_PARITY_Pos)
     Odd Parity.
     
    +

    Description

    +

    Defines the parity bit.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_PARITY_NONE   (0UL << ARM_USART_PARITY_Pos)
    +
    + +

    No Parity (default)

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_PARITY_EVEN   (1UL << ARM_USART_PARITY_Pos)
    +
    + +

    Even Parity.

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_PARITY_ODD   (2UL << ARM_USART_PARITY_Pos)
    +
    + +

    Odd Parity.

    +
    See Also
    ARM_USART_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__parity__bit.js b/CMSIS/Documentation/Driver/html/group__usart__parity__bit.js new file mode 100644 index 0000000..053c787 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__parity__bit.js @@ -0,0 +1,6 @@ +var group__usart__parity__bit = +[ + [ "ARM_USART_PARITY_NONE", "group__usart__parity__bit.html#ga141a64650f99a1f642c3b3b6ced0eb8d", null ], + [ "ARM_USART_PARITY_EVEN", "group__usart__parity__bit.html#gabc35e8dd2cbebb730abf36959e87a207", null ], + [ "ARM_USART_PARITY_ODD", "group__usart__parity__bit.html#ga02f30181eedd3b04d650dd507bf40d6d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usart__stop__bits.html b/CMSIS/Documentation/Driver/html/group__usart__stop__bits.html new file mode 100644 index 0000000..6633f51 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__stop__bits.html @@ -0,0 +1,213 @@ + + + + + +USART Stop Bits +CMSIS-Driver: USART Stop Bits + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USART Stop Bits
    +
    +
    + +

    Defines the number of stop bits. +More...

    + + + + + + + + + + + + + + +

    +Macros

    #define ARM_USART_STOP_BITS_1   (0UL << ARM_USART_STOP_BITS_Pos)
     1 Stop bit (default)
     
    #define ARM_USART_STOP_BITS_2   (1UL << ARM_USART_STOP_BITS_Pos)
     2 Stop bits
     
    #define ARM_USART_STOP_BITS_1_5   (2UL << ARM_USART_STOP_BITS_Pos)
     1.5 Stop bits
     
    #define ARM_USART_STOP_BITS_0_5   (3UL << ARM_USART_STOP_BITS_Pos)
     0.5 Stop bits
     
    +

    Description

    +

    Defines the number of stop bits.

    +
    See Also
    ARM_USART_Control
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define ARM_USART_STOP_BITS_1   (0UL << ARM_USART_STOP_BITS_Pos)
    +
    + +

    1 Stop bit (default)

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_STOP_BITS_2   (1UL << ARM_USART_STOP_BITS_Pos)
    +
    + +

    2 Stop bits

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_STOP_BITS_1_5   (2UL << ARM_USART_STOP_BITS_Pos)
    +
    + +

    1.5 Stop bits

    +
    See Also
    ARM_USART_Control
    + +
    +
    + +
    +
    + + + + +
    #define ARM_USART_STOP_BITS_0_5   (3UL << ARM_USART_STOP_BITS_Pos)
    +
    + +

    0.5 Stop bits

    +
    See Also
    ARM_USART_Control
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usart__stop__bits.js b/CMSIS/Documentation/Driver/html/group__usart__stop__bits.js new file mode 100644 index 0000000..60af0b0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usart__stop__bits.js @@ -0,0 +1,7 @@ +var group__usart__stop__bits = +[ + [ "ARM_USART_STOP_BITS_1", "group__usart__stop__bits.html#ga45f51a51e654b4753a538ed33f0d7d78", null ], + [ "ARM_USART_STOP_BITS_2", "group__usart__stop__bits.html#ga17f034b5f0d0328dc636b403d1954795", null ], + [ "ARM_USART_STOP_BITS_1_5", "group__usart__stop__bits.html#gafc1d0f2c95a76ef4c5152792a619f136", null ], + [ "ARM_USART_STOP_BITS_0_5", "group__usart__stop__bits.html#ga47f43cb83d9955a4c90d918acaaa44ba", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usb__interface__gr.html b/CMSIS/Documentation/Driver/html/group__usb__interface__gr.html new file mode 100644 index 0000000..cff407f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usb__interface__gr.html @@ -0,0 +1,176 @@ + + + + + +USB Interface +CMSIS-Driver: USB Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USB Interface
    +
    +
    + +

    USB common definitions (Driver_USB.h) +More...

    + + + + + + + + + + + + + + +

    +Content

     USB Device Interface
     Driver API for USB Device Peripheral (Driver_USBD.h)
     
     USB Host Interface
     Driver API for USB Host Peripheral (Driver_USBH.h)
     
     USB Speed
     USB Speed definitions.
     
     USB Endpoint Type
     USB Endpoint Type definitions.
     
    +

    Description

    +

    USB common definitions (Driver_USB.h)

    +

    The Universal Serial Bus (USB) implements a serial bus for data exchange. It is a host controlled, plug-and-play interface between a USB host and USB devices using a tiered star topology. In microcontroller (MCU) applications, the interface is often used to connect a device to a host for data exchange or control purposes.

    + +

    Block Diagram

    +

    Typically only one USB Device is connected to a USB Host. If several USB devices must be connected to the same USB host, then the connection must be done via a USB hub.

    +
    +USB_Schematics.png +
    +Simplified USB Schema
    +

    USB API

    +

    The following header files define the Application Programming Interface (API) for the USB interface:

    +
      +
    • Driver_USB.h : Common definitions of the USBD and USBH interface
    • +
    • Driver_USBD.h : Driver API for USB Device Peripheral
    • +
    • Driver_USBH.h : Driver API for USB Host Peripheral
    • +
    +

    The driver implementation is a typical part of the Device Family Pack (DFP) that supports the peripherals of the microcontroller family.

    +

    Driver Functions

    +

    The driver functions are published in the access struct as explained in Common Driver Functions

    + +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usb__interface__gr.js b/CMSIS/Documentation/Driver/html/group__usb__interface__gr.js new file mode 100644 index 0000000..cd0f1b1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usb__interface__gr.js @@ -0,0 +1,7 @@ +var group__usb__interface__gr = +[ + [ "USB Device Interface", "group__usbd__interface__gr.html", "group__usbd__interface__gr" ], + [ "USB Host Interface", "group__usbh__interface__gr.html", "group__usbh__interface__gr" ], + [ "USB Speed", "group___u_s_b__speed.html", "group___u_s_b__speed" ], + [ "USB Endpoint Type", "group___u_s_b__endpoint__type.html", "group___u_s_b__endpoint__type" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usbd__interface__gr.html b/CMSIS/Documentation/Driver/html/group__usbd__interface__gr.html new file mode 100644 index 0000000..ddbfd14 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbd__interface__gr.html @@ -0,0 +1,1381 @@ + + + + + +USB Device Interface +CMSIS-Driver: USB Device Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USB Device Interface
    +
    +
    + +

    Driver API for USB Device Peripheral (Driver_USBD.h) +More...

    + + + + + + + + +

    +Content

     USBD Device Events
     The USB Device driver generates Device call back events that are notified via the function ARM_USBD_SignalDeviceEvent.
     
     USBD Endpoint Events
     The USB Device driver generates Endpoint call back events that are notified via the function ARM_USBD_SignalEndpointEvent.
     
    + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_USBD
     Access structure of the USB Device Driver. More...
     
    struct  ARM_USBD_CAPABILITIES
     USB Device Driver Capabilities. More...
     
    struct  ARM_USBD_STATE
     USB Device State. More...
     
    + + + + + + + +

    +Typedefs

    typedef void(* ARM_USBD_SignalDeviceEvent_t )(uint32_t event)
     Pointer to ARM_USBD_SignalDeviceEvent : Signal USB Device Event.
     
    typedef void(* ARM_USBD_SignalEndpointEvent_t )(uint8_t ep_addr, uint32_t event)
     Pointer to ARM_USBD_SignalEndpointEvent : Signal USB Endpoint Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_USBD_GetVersion (void)
     Get driver version.
     
    ARM_USBD_CAPABILITIES ARM_USBD_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USBD_Initialize (ARM_USBD_SignalDeviceEvent_t cb_device_event, ARM_USBD_SignalEndpointEvent_t cb_endpoint_event)
     Initialize USB Device Interface.
     
    int32_t ARM_USBD_Uninitialize (void)
     De-initialize USB Device Interface.
     
    int32_t ARM_USBD_PowerControl (ARM_POWER_STATE state)
     Control USB Device Interface Power.
     
    int32_t ARM_USBD_DeviceConnect (void)
     Connect USB Device.
     
    int32_t ARM_USBD_DeviceDisconnect (void)
     Disconnect USB Device.
     
    ARM_USBD_STATE ARM_USBD_DeviceGetState (void)
     Get current USB Device State.
     
    int32_t ARM_USBD_DeviceRemoteWakeup (void)
     Trigger USB Remote Wakeup.
     
    int32_t ARM_USBD_DeviceSetAddress (uint8_t dev_addr)
     Set USB Device Address.
     
    int32_t ARM_USBD_ReadSetupPacket (uint8_t *setup)
     Read setup packet received over Control Endpoint.
     
    int32_t ARM_USBD_EndpointConfigure (uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size)
     Configure USB Endpoint.
     
    int32_t ARM_USBD_EndpointUnconfigure (uint8_t ep_addr)
     Unconfigure USB Endpoint.
     
    int32_t ARM_USBD_EndpointStall (uint8_t ep_addr, bool stall)
     Set/Clear Stall for USB Endpoint.
     
    int32_t ARM_USBD_EndpointTransfer (uint8_t ep_addr, uint8_t *data, uint32_t num)
     Read data from or Write data to USB Endpoint.
     
    uint32_t ARM_USBD_EndpointTransferGetResult (uint8_t ep_addr)
     Get result of USB Endpoint transfer.
     
    int32_t ARM_USBD_EndpointTransferAbort (uint8_t ep_addr)
     Abort current USB Endpoint transfer.
     
    uint16_t ARM_USBD_GetFrameNumber (void)
     Get current USB Frame Number.
     
    void ARM_USBD_SignalDeviceEvent (uint32_t event)
     Signal USB Device Event.
     
    void ARM_USBD_SignalEndpointEvent (uint8_t ep_addr, uint32_t ep_event)
     Signal USB Endpoint Event.
     
    +

    Description

    +

    Driver API for USB Device Peripheral (Driver_USBD.h)

    +
    +

    USB Device API

    +

    The header file Driver_USBD.h defines the API for the USB Device Driver interface used by middleware components. The driver implementation itself is a typical part of the Device Family Pack, which provides entry points to the interface as function pointers in the struct ARM_DRIVER_USBD. This structure can be available several times in each interface to control multiple USBD interfaces.

    +

    Header file Driver_USBD.h also defines callback routines that can be categorized as device event callbacks and endpoint event callbacks. Callbacks are called by the driver, in interrupt context when an appropriate event occurs, to signal device related events (USBD Device Events) and endpoint related events (USBD Endpoint Events).

    +

    USB Device Function Call Sequence

    +

    To use the USBD driver invoke the API functions in the following order:

    +
    +msc_inline_mscgraph_2 + + + + + + + + + + + + + +
    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_USBD
    +
    +

    Access structure of the USB Device Driver.

    +

    The functions of the USB Device driver are accessed by function pointers. Refer to Common Driver Functions for overview information.

    +

    Each instance of an USBD provides such an access struct. The instance is indicated by a postfix in the symbol name of the access struct, for example:

    +
      +
    • Driver_USBD0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_USBD1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows connecting the middleware to a specific driver instance Driver_USBDn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    Note
    The struct must remain unchanged.
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_USBD_GetVersion : Get driver version.
     
    ARM_USBD_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_USBD_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_USBD_SignalDeviceEvent_t cb_device_event, ARM_USBD_SignalEndpointEvent_t cb_endpoint_event)
     Pointer to ARM_USBD_Initialize : Initialize USB Device Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_USBD_Uninitialize : De-initialize USB Device Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_USBD_PowerControl : Control USB Device Interface Power.
     
    int32_t(* DeviceConnect )(void)
     Pointer to ARM_USBD_DeviceConnect : Connect USB Device.
     
    int32_t(* DeviceDisconnect )(void)
     Pointer to ARM_USBD_DeviceDisconnect : Disconnect USB Device.
     
    ARM_USBD_STATE(* DeviceGetState )(void)
     Pointer to ARM_USBD_DeviceGetState : Get current USB Device State.
     
    int32_t(* DeviceRemoteWakeup )(void)
     Pointer to ARM_USBD_DeviceRemoteWakeup : Trigger USB Remote Wakeup.
     
    int32_t(* DeviceSetAddress )(uint8_t dev_addr)
     Pointer to ARM_USBD_DeviceSetAddress : Set USB Device Address.
     
    int32_t(* ReadSetupPacket )(uint8_t *setup)
     Pointer to ARM_USBD_ReadSetupPacket : Read setup packet received over Control Endpoint.
     
    int32_t(* EndpointConfigure )(uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size)
     Pointer to ARM_USBD_EndpointConfigure : Configure USB Endpoint.
     
    int32_t(* EndpointUnconfigure )(uint8_t ep_addr)
     Pointer to ARM_USBD_EndpointUnconfigure : Unconfigure USB Endpoint.
     
    int32_t(* EndpointStall )(uint8_t ep_addr, bool stall)
     Pointer to ARM_USBD_EndpointStall : Set/Clear Stall for USB Endpoint.
     
    int32_t(* EndpointTransfer )(uint8_t ep_addr, uint8_t *data, uint32_t num)
     Pointer to ARM_USBD_EndpointTransfer : Read data from or Write data to USB Endpoint.
     
    uint32_t(* EndpointTransferGetResult )(uint8_t ep_addr)
     Pointer to ARM_USBD_EndpointTransferGetResult : Get result of USB Endpoint transfer.
     
    int32_t(* EndpointTransferAbort )(uint8_t ep_addr)
     Pointer to ARM_USBD_EndpointTransferAbort : Abort current USB Endpoint transfer.
     
    uint16_t(* GetFrameNumber )(void)
     Pointer to ARM_USBD_GetFrameNumber : Get current USB Frame Number.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_USBD_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_USBD_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_USBD_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_USBD_SignalDeviceEvent_t cb_device_event, ARM_USBD_SignalEndpointEvent_t cb_endpoint_event)
    +
    + +

    Pointer to ARM_USBD_Initialize : Initialize USB Device Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_USBD_Uninitialize : De-initialize USB Device Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_USBD_PowerControl : Control USB Device Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* DeviceConnect)(void)
    +
    + +

    Pointer to ARM_USBD_DeviceConnect : Connect USB Device.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* DeviceDisconnect)(void)
    +
    + +

    Pointer to ARM_USBD_DeviceDisconnect : Disconnect USB Device.

    + +
    +
    + +
    +
    + + + + +
    ARM_USBD_STATE(* DeviceGetState)(void)
    +
    + +

    Pointer to ARM_USBD_DeviceGetState : Get current USB Device State.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* DeviceRemoteWakeup)(void)
    +
    + +

    Pointer to ARM_USBD_DeviceRemoteWakeup : Trigger USB Remote Wakeup.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* DeviceSetAddress)(uint8_t dev_addr)
    +
    + +

    Pointer to ARM_USBD_DeviceSetAddress : Set USB Device Address.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* ReadSetupPacket)(uint8_t *setup)
    +
    + +

    Pointer to ARM_USBD_ReadSetupPacket : Read setup packet received over Control Endpoint.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* EndpointConfigure)(uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size)
    +
    + +

    Pointer to ARM_USBD_EndpointConfigure : Configure USB Endpoint.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* EndpointUnconfigure)(uint8_t ep_addr)
    +
    + +

    Pointer to ARM_USBD_EndpointUnconfigure : Unconfigure USB Endpoint.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* EndpointStall)(uint8_t ep_addr, bool stall)
    +
    + +

    Pointer to ARM_USBD_EndpointStall : Set/Clear Stall for USB Endpoint.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* EndpointTransfer)(uint8_t ep_addr, uint8_t *data, uint32_t num)
    +
    + +

    Pointer to ARM_USBD_EndpointTransfer : Read data from or Write data to USB Endpoint.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* EndpointTransferGetResult)(uint8_t ep_addr)
    +
    + +

    Pointer to ARM_USBD_EndpointTransferGetResult : Get result of USB Endpoint transfer.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* EndpointTransferAbort)(uint8_t ep_addr)
    +
    + +

    Pointer to ARM_USBD_EndpointTransferAbort : Abort current USB Endpoint transfer.

    + +
    +
    + +
    +
    + + + + +
    uint16_t(* GetFrameNumber)(void)
    +
    + +

    Pointer to ARM_USBD_GetFrameNumber : Get current USB Frame Number.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USBD_CAPABILITIES
    +
    +

    USB Device Driver Capabilities.

    +

    A USB Device driver can be implemented with different capabilities. The data fields of this structure encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    Note
    The struct must remain unchanged.
    +
    + + + + + + + + + + +
    Data Fields
    +uint32_t +vbus_detection: 1 +VBUS detection.
    +uint32_t +event_vbus_on: 1 +Signal VBUS On event.
    +uint32_t +event_vbus_off: 1 +Signal VBUS Off event.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USBD_STATE
    +
    +

    USB Device State.

    +

    This structure stores information about the state of the USB Device. The data fields encode the established speed, whether the device is powered and active.

    +

    Returned by:

    + +
    + + + + + + + + + + +
    Data Fields
    +uint32_t +vbus: 1 +USB Device VBUS flag.
    +uint32_t +speed: 2 +USB Device speed setting (ARM_USB_SPEED_xxx)
    +uint32_t +active: 1 +USB Device active flag.
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_USBD_SignalDeviceEvent_t
    +
    + +

    Pointer to ARM_USBD_SignalDeviceEvent : Signal USB Device Event.

    +

    Provides the typedef for the callback function ARM_USBD_SignalDeviceEvent.

    +

    Parameter for:

    + + +
    +
    + +
    +
    + + + + +
    ARM_USBD_SignalEndpointEvent_t
    +
    + +

    Pointer to ARM_USBD_SignalEndpointEvent : Signal USB Endpoint Event.

    +

    Provides the typedef for the callback function ARM_USBD_SignalEndpointEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_USBD_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_USBD_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_USBD Driver_USBD0;
    +
    ARM_DRIVER_USBD *drv_info;
    +
    +
    void setup_usbd (void) {
    + +
    +
    drv_info = &Driver_USBD0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_USBD_CAPABILITIES ARM_USBD_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_USBD_CAPABILITIES
    +

    The function ARM_USBD_GetCapabilities returns information about capabilities in this driver implementation. The data fields of the structure ARM_USBD_CAPABILITIES encode various capabilities, for example if the hardware can create signal events using the ARM_USBD_SignalDeviceEvent callback function.

    +

    Example:

    +
    extern ARM_DRIVER_USBD Driver_USBD0;
    +
    ARM_DRIVER_USBD *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_USBD_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_USBD0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBD_Initialize (ARM_USBD_SignalDeviceEvent_t cb_device_event,
    ARM_USBD_SignalEndpointEvent_t cb_endpoint_event 
    )
    +
    + +

    Initialize USB Device Interface.

    +
    Parameters
    + + + +
    [in]cb_device_eventPointer to ARM_USBD_SignalDeviceEvent
    [in]cb_endpoint_eventPointer to ARM_USBD_SignalEndpointEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_Initialize initializes the USB Device interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    + +

    The parameter cb_device_event is a pointer to the ARM_USBD_SignalDeviceEvent callback function; use a NULL pointer when no device callback signals are required.
    + The parameter cb_endpoint_event is a pointer to the ARM_USBD_SignalEndpointEvent callback function.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_Uninitialize (void )
    +
    + +

    De-initialize USB Device Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_Uninitialize de-initializes the resources of USBD interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control USB Device Interface Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_PowerControl operates the power modes of the USB Device interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_DeviceConnect (void )
    +
    + +

    Connect USB Device.

    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_DeviceConnect signals to the host that the device is connected.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_DeviceDisconnect (void )
    +
    + +

    Disconnect USB Device.

    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_DeviceDisconnect signals to the host that the device is disconnected.

    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_USBD_STATE ARM_USBD_DeviceGetState (void )
    +
    + +

    Get current USB Device State.

    +
    Returns
    Device State ARM_USBD_STATE
    +

    Retrieves the current USB device state.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_DeviceRemoteWakeup (void )
    +
    + +

    Trigger USB Remote Wakeup.

    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_DeviceRemoteWakeup signals remote wakeup to the host.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_DeviceSetAddress (uint8_t dev_addr)
    +
    + +

    Set USB Device Address.

    +
    Parameters
    + + +
    [in]dev_addrDevice Address
    +
    +
    +
    Returns
    Status Error Codes
    +

    Assigns an address to the device.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_ReadSetupPacket (uint8_t * setup)
    +
    + +

    Read setup packet received over Control Endpoint.

    +
    Parameters
    + + +
    [out]setupPointer to buffer for setup packet
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_ReadSetupPacket reads the last SETUP packet (8 bytes) that was received over Control Endpoint (Endpoint 0) which is indicated by ARM_USBD_EVENT_SETUP event.

    +

    See also:

    + + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBD_EndpointConfigure (uint8_t ep_addr,
    uint8_t ep_type,
    uint16_t ep_max_packet_size 
    )
    +
    + +

    Configure USB Endpoint.

    +
    Parameters
    + + + + +
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    [in]ep_typeEndpoint Type (ARM_USB_ENDPOINT_xxx)
    [in]ep_max_packet_sizeEndpoint Maximum Packet Size
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_EndpointConfigure configures an endpoint for transfers.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_EndpointUnconfigure (uint8_t ep_addr)
    +
    + +

    Unconfigure USB Endpoint.

    +
    Parameters
    + + +
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_EndpointUnconfigure de-configures the specified endpoint.

    +

    The parameter ep_addr specifies the endpoint address.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBD_EndpointStall (uint8_t ep_addr,
    bool stall 
    )
    +
    + +

    Set/Clear Stall for USB Endpoint.

    +
    Parameters
    + + + +
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    [in]stallOperation
      +
    • false Clear
    • +
    • true Set
    • +
    +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_EndpointStall sets or clears stall condition for the specified endpoint.

    +

    The parameter ep_addr specifies the endpoint address.
    + The parameter stall is a boolean parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBD_EndpointTransfer (uint8_t ep_addr,
    uint8_t * data,
    uint32_t num 
    )
    +
    + +

    Read data from or Write data to USB Endpoint.

    +
    Parameters
    + + + + +
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    [out]dataPointer to buffer for data to read or with data to write
    [in]numNumber of data bytes to transfer
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_EndpointTransfer reads from or writes data to an USB Endpoint.

    +

    The parameter ep_addr specifies the endpoint address.
    + The parameter data is a buffer for data to read or data to write.
    + The parameter num is the number of bytes to transfer.

    +

    The function is non-blocking and returns as soon as the driver starts the operation on the specified endpoint. During the operation it is not allowed to call this function again on the same endpoint. Also the data buffer must stay allocated and the contents of data must not be modified.

    +

    Direction in the endpoint address specifies the type of transfer:

    +
      +
    • Endpoint Read for OUT endpoint (direction = 0)
    • +
    • Endpoint Write for IN endpoint (direction = 1)
    • +
    +

    Endpoint Read is finished when the requested number of data bytes have been received or when a short packet or ZLP (Zero-Length Packet) has been received. Completion of operation is indicated by ARM_USBD_EVENT_OUT event. Number of successfully received data bytes can be retrieved by calling ARM_USBD_EndpointTransferGetResult.

    +

    Endpoint Write is finished when the requested number of data bytes have been sent. Completion of operation is indicated by ARM_USBD_EVENT_IN event. Number of successfully sent data bytes can be retrieved by calling ARM_USBD_EndpointTransferGetResult.

    +

    Transfer operation can be aborted by calling ARM_USBD_EndpointTransferAbort.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_USBD_EndpointTransferGetResult (uint8_t ep_addr)
    +
    + +

    Get result of USB Endpoint transfer.

    +
    Parameters
    + + +
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    +
    +
    +
    Returns
    number of successfully transferred data bytes
    +

    The function ARM_USBD_EndpointTransferGetResult returns the number of successfully transferred data bytes started by ARM_USBD_EndpointTransfer.

    +

    The parameter ep_addr specifies the endpoint address.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBD_EndpointTransferAbort (uint8_t ep_addr)
    +
    + +

    Abort current USB Endpoint transfer.

    +
    Parameters
    + + +
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBD_EndpointTransferAbort aborts the transfer to an endpoint started by ARM_USBD_EndpointTransfer.

    +

    The parameter ep_addr specifies the endpoint address.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint16_t ARM_USBD_GetFrameNumber (void )
    +
    + +

    Get current USB Frame Number.

    +
    Returns
    Frame Number
    +

    Retrieves the sequential 11-bit frame number of the last Start of Frame (SOF) packet.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_USBD_SignalDeviceEvent (uint32_t event)
    +
    + +

    Signal USB Device Event.

    +
    Parameters
    + + +
    [in]eventUSBD Device Events
    +
    +
    +
    Returns
    none
    +

    The function ARM_USBD_SignalDeviceEvent is a callback function registered by the function ARM_USBD_Initialize.

    +

    The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_USBD_CAPABILITIES, which can be retrieved with the function ARM_USBD_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + + + + + + + + + +
    Event BitDescription supported when ARM_USBD_CAPABILITIES
    ARM_USBD_EVENT_VBUS_ON 0 Occurs when valid VBUS voltage is detected. data field event_vbus_on = 1
    ARM_USBD_EVENT_VBUS_OFF 1 Occurs when VBUS voltage is turned off. data field event_vbus_off = 1
    ARM_USBD_EVENT_RESET 2 Occurs when USB Reset is detected. always supported
    ARM_USBD_EVENT_HIGH_SPEED 3 Occurs when USB Device is switched to High-speed. always supported
    ARM_USBD_EVENT_SUSPEND 4 Occurs when USB Suspend is detected. always supported
    ARM_USBD_EVENT_RESUME 5 Occurs when USB Resume is detected. always supported
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void ARM_USBD_SignalEndpointEvent (uint8_t ep_addr,
    uint32_t event 
    )
    +
    + +

    Signal USB Endpoint Event.

    +
    Parameters
    + + + +
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    [in]eventUSBD Endpoint Events
    +
    +
    +
    Returns
    none
    +

    The function ARM_USBD_SignalEndpointEvent is a callback function registered by the function ARM_USBD_Initialize.

    +

    The argument ep_addr specifies the endpoint.
    + The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    The following events can be generated:

    + + + + + + + + + +
    Event Bit Description
    ARM_USBD_EVENT_SETUP 0 Occurs when SETUP packet is received over Control Endpoint.
    ARM_USBD_EVENT_OUT 1 Occurs when data is received over OUT Endpoint.
    ARM_USBD_EVENT_IN 2 Occurs when data is sent over IN Endpoint.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usbd__interface__gr.js b/CMSIS/Documentation/Driver/html/group__usbd__interface__gr.js new file mode 100644 index 0000000..0b28164 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbd__interface__gr.js @@ -0,0 +1,57 @@ +var group__usbd__interface__gr = +[ + [ "USBD Device Events", "group___u_s_b_d__dev__events.html", "group___u_s_b_d__dev__events" ], + [ "USBD Endpoint Events", "group___u_s_b_d__ep__events.html", "group___u_s_b_d__ep__events" ], + [ "ARM_DRIVER_USBD", "group__usbd__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_d", [ + [ "GetVersion", "group__usbd__interface__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__usbd__interface__gr.html#a52045edf0f555a0f0ecdf37a5e169f7a", null ], + [ "Initialize", "group__usbd__interface__gr.html#a84439aa5677d330d257a4b43e48d6426", null ], + [ "Uninitialize", "group__usbd__interface__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__usbd__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "DeviceConnect", "group__usbd__interface__gr.html#a71d312ce5c5335c6a035da55c25848e4", null ], + [ "DeviceDisconnect", "group__usbd__interface__gr.html#adff9dd8a0dc764e78b0271113ae3b0af", null ], + [ "DeviceGetState", "group__usbd__interface__gr.html#ab906727173cbe8372bdc26ef20581baa", null ], + [ "DeviceRemoteWakeup", "group__usbd__interface__gr.html#a649343be3fcfc44431d19f51d13e03b3", null ], + [ "DeviceSetAddress", "group__usbd__interface__gr.html#a4e927b5593f416a8641e12016208b5d5", null ], + [ "ReadSetupPacket", "group__usbd__interface__gr.html#ab5593bf9bb516cc7b36c6072fc55260f", null ], + [ "EndpointConfigure", "group__usbd__interface__gr.html#a9fcafd15149d35022b05cf3c396e714e", null ], + [ "EndpointUnconfigure", "group__usbd__interface__gr.html#ad45578fffbd046231f69aa058d29bba5", null ], + [ "EndpointStall", "group__usbd__interface__gr.html#a6fbcf63ac9f962787cddc8f11a44dccb", null ], + [ "EndpointTransfer", "group__usbd__interface__gr.html#a0cc21434bc57e696fabf0207925fe5ff", null ], + [ "EndpointTransferGetResult", "group__usbd__interface__gr.html#a217e38c26bbcdecbad8c984753b2597a", null ], + [ "EndpointTransferAbort", "group__usbd__interface__gr.html#a4e36fd46291f71e4a748264e2f6ae431", null ], + [ "GetFrameNumber", "group__usbd__interface__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919", null ] + ] ], + [ "ARM_USBD_CAPABILITIES", "group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "vbus_detection", "group__usbd__interface__gr.html#a6673fc1aa13f62122ecf51e52a605c6e", null ], + [ "event_vbus_on", "group__usbd__interface__gr.html#a53f95b9ecb7c84197947e7542501c7d3", null ], + [ "event_vbus_off", "group__usbd__interface__gr.html#a72d905bc20735bafda40d73c91829709", null ] + ] ], + [ "ARM_USBD_STATE", "group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___s_t_a_t_e", [ + [ "vbus", "group__usbd__interface__gr.html#aa961d5fb2bd3d2960578f1ac3b903070", null ], + [ "speed", "group__usbd__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5", null ], + [ "active", "group__usbd__interface__gr.html#ab22b96a3efad48f5a542f46c1b224800", null ] + ] ], + [ "ARM_USBD_SignalDeviceEvent_t", "group__usbd__interface__gr.html#ga7c1878799699ddd34cec696da499f7bd", null ], + [ "ARM_USBD_SignalEndpointEvent_t", "group__usbd__interface__gr.html#gaae754763700fc5059a6bde57ea2d4e2c", null ], + [ "ARM_USBD_GetVersion", "group__usbd__interface__gr.html#ga1dcb8b7790f0e3613ee3da77e5fd18fc", null ], + [ "ARM_USBD_GetCapabilities", "group__usbd__interface__gr.html#ga178d01ab7896e1c675b90bbccfe8ea7d", null ], + [ "ARM_USBD_Initialize", "group__usbd__interface__gr.html#ga60b95c9c0c6767ff5938464cfd748f81", null ], + [ "ARM_USBD_Uninitialize", "group__usbd__interface__gr.html#gafaead6713f141be1734de0110eda966b", null ], + [ "ARM_USBD_PowerControl", "group__usbd__interface__gr.html#gaa5bdaac19f6df30c6e569abef17cdb42", null ], + [ "ARM_USBD_DeviceConnect", "group__usbd__interface__gr.html#ga99207f7ff5e97a7f65754eab7f775fca", null ], + [ "ARM_USBD_DeviceDisconnect", "group__usbd__interface__gr.html#ga37234abecbb63e4e739f9676e489d2d1", null ], + [ "ARM_USBD_DeviceGetState", "group__usbd__interface__gr.html#ga7624d6b2cbe5e6ab5016206ce641eee2", null ], + [ "ARM_USBD_DeviceRemoteWakeup", "group__usbd__interface__gr.html#ga7e149a4c6a0196da24a44f4fada75fb1", null ], + [ "ARM_USBD_DeviceSetAddress", "group__usbd__interface__gr.html#gae66f696584e25fb2ddabe9070fa38670", null ], + [ "ARM_USBD_ReadSetupPacket", "group__usbd__interface__gr.html#ga6bc0ebf699a0f28330f21cab83f85e9e", null ], + [ "ARM_USBD_EndpointConfigure", "group__usbd__interface__gr.html#ga62d7d5bdcf9ca7bf7e6d8434368abad8", null ], + [ "ARM_USBD_EndpointUnconfigure", "group__usbd__interface__gr.html#gaca913df5188dc0f0c4f707b57c2a88fc", null ], + [ "ARM_USBD_EndpointStall", "group__usbd__interface__gr.html#ga9502cd7b8e4c583920fccadc4ccf7975", null ], + [ "ARM_USBD_EndpointTransfer", "group__usbd__interface__gr.html#ga6e69ad097553125bb01a22dc719e0d30", null ], + [ "ARM_USBD_EndpointTransferGetResult", "group__usbd__interface__gr.html#gab81fac01522a4d504edcb7b7d3abba6c", null ], + [ "ARM_USBD_EndpointTransferAbort", "group__usbd__interface__gr.html#ga7cf3bcc105dbb8cbdc915e8caca8529e", null ], + [ "ARM_USBD_GetFrameNumber", "group__usbd__interface__gr.html#ga4cd050b8343407fe465a27ad1cb7c264", null ], + [ "ARM_USBD_SignalDeviceEvent", "group__usbd__interface__gr.html#gafe58a4db1d26b21ca5d418ee49e103a5", null ], + [ "ARM_USBD_SignalEndpointEvent", "group__usbd__interface__gr.html#ga9aa5bc5cb45084194a77fae1457f6575", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usbh__hci__gr.html b/CMSIS/Documentation/Driver/html/group__usbh__hci__gr.html new file mode 100644 index 0000000..7075822 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbh__hci__gr.html @@ -0,0 +1,577 @@ + + + + + +USB OHCI/EHCI +CMSIS-Driver: USB OHCI/EHCI + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + +

    Driver API for USB OHCI/EHCI. +More...

    + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_USBH_HCI
     Access structure of USB Host HCI (OHCI/EHCI) Driver. More...
     
    struct  ARM_USBH_HCI_CAPABILITIES
     USB Host HCI (OHCI/EHCI) Driver Capabilities. More...
     
    + + + + +

    +Typedefs

    typedef void(* ARM_USBH_HCI_Interrupt_t )(void)
     Pointer to Interrupt Handler Routine.
     
    + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_USBH_HCI_GetVersion (void)
     Get USB Host HCI (OHCI/EHCI) driver version.
     
    ARM_USBH_HCI_CAPABILITIES ARM_USBH_HCI_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USBH_HCI_Initialize (ARM_USBH_HCI_Interrupt_t *cb_interrupt)
     Initialize USB Host HCI (OHCI/EHCI) Interface.
     
    int32_t ARM_USBH_HCI_Uninitialize (void)
     De-initialize USB Host HCI (OHCI/EHCI) Interface.
     
    int32_t ARM_USBH_HCI_PowerControl (ARM_POWER_STATE state)
     Control USB Host HCI (OHCI/EHCI) Interface Power.
     
    int32_t ARM_USBH_HCI_PortVbusOnOff (uint8_t port, bool vbus)
     USB Host HCI (OHCI/EHCI) Root HUB Port VBUS on/off.
     
    void ARM_USBH_HCI_Interrupt (void)
     USB Host HCI Interrupt Handler.
     
    +

    Description

    +

    Driver API for USB OHCI/EHCI.

    +

    OHCI and EHCI compliant interfaces have memory mapped registers that are used to control the USB host.

    +

    Only certain functionalities (interrupts, VBUS control, power control) require device specific interface which is provided through functions of the struct ARM_DRIVER_USBH_HCI (functionality accessed with the struct ARM_DRIVER_USBH is not needed).

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_USBH_HCI
    +
    +

    Access structure of USB Host HCI (OHCI/EHCI) Driver.

    +

    The functions of the USB Host HCI (OHCI/EHCI) driver are accessed by function pointers. Refer to Common Driver Functions for overview information.

    +

    Each instance of an USBH provides such an access struct. The instance is indicated by a postfix in the symbol name of the access struct, for example:

    +
      +
    • Driver_USBH0_HCI is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_USBH1_HCI is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows connecting the middleware to a specific driver instance Driver_USBHn_HCI. The default is 0, which connects a middleware to the first instance of a driver.

    +
    Note
    The struct must remain unchanged.
    +
    + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_USBH_HCI_GetVersion : Get USB Host HCI (OHCI/EHCI) driver version.
     
    ARM_USBH_HCI_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_USBH_HCI_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_USBH_HCI_Interrupt_t cb_interrupt)
     Pointer to ARM_USBH_HCI_Initialize : Initialize USB Host HCI (OHCI/EHCI) Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_USBH_HCI_Uninitialize : De-initialize USB Host HCI (OHCI/EHCI) Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_USBH_HCI_PowerControl : Control USB Host HCI (OHCI/EHCI) Interface Power.
     
    int32_t(* PortVbusOnOff )(uint8_t port, bool vbus)
     Pointer to ARM_USBH_HCI_PortVbusOnOff : USB Host HCI (OHCI/EHCI) Root HUB Port VBUS on/off.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_USBH_HCI_GetVersion : Get USB Host HCI (OHCI/EHCI) driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_USBH_HCI_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_USBH_HCI_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_USBH_HCI_Interrupt_t cb_interrupt)
    +
    + +

    Pointer to ARM_USBH_HCI_Initialize : Initialize USB Host HCI (OHCI/EHCI) Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_USBH_HCI_Uninitialize : De-initialize USB Host HCI (OHCI/EHCI) Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_USBH_HCI_PowerControl : Control USB Host HCI (OHCI/EHCI) Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PortVbusOnOff)(uint8_t port, bool vbus)
    +
    + +

    Pointer to ARM_USBH_HCI_PortVbusOnOff : USB Host HCI (OHCI/EHCI) Root HUB Port VBUS on/off.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USBH_HCI_CAPABILITIES
    +
    +

    USB Host HCI (OHCI/EHCI) Driver Capabilities.

    +

    A USB Host HCI (OHCI/EHCI) driver can be implemented with different capabilities. The data fields of this structure encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    Note
    The struct must remain unchanged.
    +
    + + + + +
    Data Fields
    +uint32_t +port_mask: 15 +Root HUB available Ports Mask.
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    ARM_USBH_HCI_Interrupt_t
    +
    + +

    Pointer to Interrupt Handler Routine.

    +

    Provides the typedef for the interrupt handler ARM_USBH_HCI_Interrupt.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_USBH_HCI_GetVersion (void )
    +
    + +

    Get USB Host HCI (OHCI/EHCI) driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_USBH_HCI_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_USBH Driver_USBH0_HCI;
    +
    ARM_DRIVER_USBH *drv_info;
    +
    +
    void setup_usbh (void) {
    + +
    +
    drv_info = &Driver_USBH0_HCI;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_USBH_HCI_CAPABILITIES ARM_USBH_HCI_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_USBH_HCI_CAPABILITIES
    +

    The function ARM_USBH_HCI_GetCapabilities returns information about capabilities in this driver implementation. The data fields of the structure ARM_USBH_HCI_CAPABILITIES encode various capabilities, for example available HUB ports.

    +

    Example:

    +
    extern ARM_DRIVER_USBH_HCI Driver_USBH0_HCI;
    + +
    +
    void read_capabilities (void) {
    +
    ARM_USBH_HCI_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_USBH0_HCI;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_HCI_Initialize (ARM_USBH_HCI_Interrupt_tcb_interrupt)
    +
    + +

    Initialize USB Host HCI (OHCI/EHCI) Interface.

    +
    Parameters
    + + +
    [in]cb_interruptPointer to Interrupt Handler Routine
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_HCI_Initialize initializes the USB Host HCI (OHCI/EHCI) interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    +
      +
    • Initializes the resources needed for the USBH interface.
    • +
    • Registers the ARM_USBH_HCI_Interrupt interrupt handler.
    • +
    +

    The parameter cb_interrupt is a pointer to the interrupt routine of the OHCI/EHCI peripheral that needs to be registered. This function is called as ECHI Interrupt Service Handler.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_HCI_Uninitialize (void )
    +
    + +

    De-initialize USB Host HCI (OHCI/EHCI) Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_HCI_Uninitialize de-initializes the resources of USB Host HCI (OHCI/EHCI) interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_HCI_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control USB Host HCI (OHCI/EHCI) Interface Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_HCI_PowerControl operates the power modes of the USB Host HCI (OHCI/EHCI) interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBH_HCI_PortVbusOnOff (uint8_t port,
    bool vbus 
    )
    +
    + +

    USB Host HCI (OHCI/EHCI) Root HUB Port VBUS on/off.

    +
    Parameters
    + + + +
    [in]portRoot HUB Port Number
    [in]vbus
      +
    • false VBUS off
    • +
    • true VBUS on
    • +
    +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_HCI_PortVbusOnOff controls the VBUS signal of the specified port. Most HCI complained USB Host controllers do not require this optional function. It is only required when a external VBUS interface (for example via I/O pin) is required.

    + +
    +
    + +
    +
    + + + + + + + + +
    void ARM_USBH_HCI_Interrupt (void )
    +
    + +

    USB Host HCI Interrupt Handler.

    +
    Returns
    none
    +

    The function ARM_USBH_HCI_Interrupt is called from the USBH HCI Interrupt Handler.

    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usbh__hci__gr.js b/CMSIS/Documentation/Driver/html/group__usbh__hci__gr.js new file mode 100644 index 0000000..9bddf29 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbh__hci__gr.js @@ -0,0 +1,22 @@ +var group__usbh__hci__gr = +[ + [ "ARM_DRIVER_USBH_HCI", "group__usbh__hci__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h___h_c_i", [ + [ "GetVersion", "group__usbh__hci__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__usbh__hci__gr.html#a7a41769405bb3bb4cc9eaba26cf220d4", null ], + [ "Initialize", "group__usbh__hci__gr.html#a40cbaad9fd2458b1008d31e1469903bb", null ], + [ "Uninitialize", "group__usbh__hci__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__usbh__hci__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "PortVbusOnOff", "group__usbh__hci__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f", null ] + ] ], + [ "ARM_USBH_HCI_CAPABILITIES", "group__usbh__hci__gr.html#struct_a_r_m___u_s_b_h___h_c_i___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "port_mask", "group__usbh__hci__gr.html#ac37c09b54483c2a1e41fa8a976721fc4", null ] + ] ], + [ "ARM_USBH_HCI_Interrupt_t", "group__usbh__hci__gr.html#gac60df9d1f2b3a769f2c30141800a9806", null ], + [ "ARM_USBH_HCI_GetVersion", "group__usbh__hci__gr.html#ga10109d0c2a9a128225b5e893d3f72d08", null ], + [ "ARM_USBH_HCI_GetCapabilities", "group__usbh__hci__gr.html#gae607c49ca97202500631473a901e8c2b", null ], + [ "ARM_USBH_HCI_Initialize", "group__usbh__hci__gr.html#gabc1392a544cb64491b5ea5ce6590d832", null ], + [ "ARM_USBH_HCI_Uninitialize", "group__usbh__hci__gr.html#gaacb68fdf201cdb1846b31642a760f041", null ], + [ "ARM_USBH_HCI_PowerControl", "group__usbh__hci__gr.html#ga27fa5ec8854cd9877bbef4abffe9a12b", null ], + [ "ARM_USBH_HCI_PortVbusOnOff", "group__usbh__hci__gr.html#gade1e83403c6ea965fe3e6c4c21fbbded", null ], + [ "ARM_USBH_HCI_Interrupt", "group__usbh__hci__gr.html#ga79d3c2509ed869c8d7d1485acad7b6c6", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usbh__host__gr.html b/CMSIS/Documentation/Driver/html/group__usbh__host__gr.html new file mode 100644 index 0000000..f1d7493 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbh__host__gr.html @@ -0,0 +1,1497 @@ + + + + + +USB Host +CMSIS-Driver: USB Host + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + + +
    + +

    Driver API for USB Host. +More...

    + + + + + + + + + + + +

    +Content

     USBH Port Events
     The USB Host driver generates Port call back events that are notified via the function ARM_USBH_SignalPortEvent.
     
     USBH Pipe Events
     The USB Host driver generates Pipe call back events that are notified via the function ARM_USBH_SignalPipeEvent.
     
     USBH Packet Information
     Specify USB packet information used by the function ARM_USBH_PipeTransfer.
     
    + + + + + + + + + + +

    +Data Structures

    struct  ARM_DRIVER_USBH
     Access structure of USB Host Driver. More...
     
    struct  ARM_USBH_CAPABILITIES
     USB Host Driver Capabilities. More...
     
    struct  ARM_USBH_PORT_STATE
     USB Host Port State. More...
     
    + + + + + + + + + + +

    +Typedefs

    typedef uint32_t ARM_USBH_PIPE_HANDLE
     USB Host Pipe Handle.
     
    typedef void(* ARM_USBH_SignalPortEvent_t )(uint8_t port, uint32_t event)
     Pointer to ARM_USBH_SignalPortEvent : Signal Root HUB Port Event.
     
    typedef void(* ARM_USBH_SignalPipeEvent_t )(ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t event)
     Pointer to ARM_USBH_SignalPipeEvent : Signal Pipe Event.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    ARM_DRIVER_VERSION ARM_USBH_GetVersion (void)
     Get driver version.
     
    ARM_USBH_CAPABILITIES ARM_USBH_GetCapabilities (void)
     Get driver capabilities.
     
    int32_t ARM_USBH_Initialize (ARM_USBH_SignalPortEvent_t cb_port_event, ARM_USBH_SignalPipeEvent_t cb_pipe_event)
     Initialize USB Host Interface.
     
    int32_t ARM_USBH_Uninitialize (void)
     De-initialize USB Host Interface.
     
    int32_t ARM_USBH_PowerControl (ARM_POWER_STATE state)
     Control USB Host Interface Power.
     
    int32_t ARM_USBH_PortVbusOnOff (uint8_t port, bool vbus)
     Root HUB Port VBUS on/off.
     
    int32_t ARM_USBH_PortReset (uint8_t port)
     Do Root HUB Port Reset.
     
    int32_t ARM_USBH_PortSuspend (uint8_t port)
     Suspend Root HUB Port (stop generating SOFs).
     
    int32_t ARM_USBH_PortResume (uint8_t port)
     Resume Root HUB Port (start generating SOFs).
     
    ARM_USBH_PORT_STATE ARM_USBH_PortGetState (uint8_t port)
     Get current Root HUB Port State.
     
    ARM_USBH_PIPE_HANDLE ARM_USBH_PipeCreate (uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size, uint8_t ep_interval)
     Create Pipe in System.
     
    int32_t ARM_USBH_PipeModify (ARM_USBH_PIPE_HANDLE pipe_hndl, uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint16_t ep_max_packet_size)
     Modify Pipe in System.
     
    int32_t ARM_USBH_PipeDelete (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Delete Pipe from System.
     
    int32_t ARM_USBH_PipeReset (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Reset Pipe.
     
    int32_t ARM_USBH_PipeTransfer (ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t packet, uint8_t *data, uint32_t num)
     Transfer packets through USB Pipe.
     
    uint32_t ARM_USBH_PipeTransferGetResult (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Get result of USB Pipe transfer.
     
    int32_t ARM_USBH_PipeTransferAbort (ARM_USBH_PIPE_HANDLE pipe_hndl)
     Abort current USB Pipe transfer.
     
    uint16_t ARM_USBH_GetFrameNumber (void)
     Get current USB Frame Number.
     
    void ARM_USBH_SignalPortEvent (uint8_t port, uint32_t event)
     Signal Root HUB Port Event.
     
    void ARM_USBH_SignalPipeEvent (ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t event)
     Signal Pipe Event.
     
    +

    Description

    +

    Driver API for USB Host.

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct ARM_DRIVER_USBH
    +
    +

    Access structure of USB Host Driver.

    +

    The functions of the USB Host driver are accessed by function pointers. Refer to Common Driver Functions for overview information.

    +

    Each instance of an USBH provides such an access struct. The instance is indicated by a postfix in the symbol name of the access struct, for example:

    +
      +
    • Driver_USBH0 is the name of the access struct of the first instance (no. 0).
    • +
    • Driver_USBH1 is the name of the access struct of the second instance (no. 1).
    • +
    +

    A configuration setting in the middleware allows connecting the middleware to a specific driver instance Driver_USBHn. The default is 0, which connects a middleware to the first instance of a driver.

    +
    Note
    The struct must remain unchanged.
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    ARM_DRIVER_VERSION(* GetVersion )(void)
     Pointer to ARM_USBH_GetVersion : Get driver version.
     
    ARM_USBH_CAPABILITIES(* GetCapabilities )(void)
     Pointer to ARM_USBH_GetCapabilities : Get driver capabilities.
     
    int32_t(* Initialize )(ARM_USBH_SignalPortEvent_t cb_port_event, ARM_USBH_SignalPipeEvent_t cb_pipe_event)
     Pointer to ARM_USBH_Initialize : Initialize USB Host Interface.
     
    int32_t(* Uninitialize )(void)
     Pointer to ARM_USBH_Uninitialize : De-initialize USB Host Interface.
     
    int32_t(* PowerControl )(ARM_POWER_STATE state)
     Pointer to ARM_USBH_PowerControl : Control USB Host Interface Power.
     
    int32_t(* PortVbusOnOff )(uint8_t port, bool vbus)
     Pointer to ARM_USBH_PortVbusOnOff : Root HUB Port VBUS on/off.
     
    int32_t(* PortReset )(uint8_t port)
     Pointer to ARM_USBH_PortReset : Do Root HUB Port Reset.
     
    int32_t(* PortSuspend )(uint8_t port)
     Pointer to ARM_USBH_PortSuspend : Suspend Root HUB Port (stop generating SOFs).
     
    int32_t(* PortResume )(uint8_t port)
     Pointer to ARM_USBH_PortResume : Resume Root HUB Port (start generating SOFs).
     
    ARM_USBH_PORT_STATE(* PortGetState )(uint8_t port)
     Pointer to ARM_USBH_PortGetState : Get current Root HUB Port State.
     
    ARM_USBH_PIPE_HANDLE(* PipeCreate )(uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size, uint8_t ep_interval)
     Pointer to ARM_USBH_PipeCreate : Create Pipe in System.
     
    int32_t(* PipeModify )(ARM_USBH_PIPE_HANDLE pipe_hndl, uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint16_t ep_max_packet_size)
     Pointer to ARM_USBH_PipeModify : Modify Pipe in System.
     
    int32_t(* PipeDelete )(ARM_USBH_PIPE_HANDLE pipe_hndl)
     Pointer to ARM_USBH_PipeDelete : Delete Pipe from System.
     
    int32_t(* PipeReset )(ARM_USBH_PIPE_HANDLE pipe_hndl)
     Pointer to ARM_USBH_PipeReset : Reset Pipe.
     
    int32_t(* PipeTransfer )(ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t packet, uint8_t *data, uint32_t num)
     Pointer to ARM_USBH_PipeTransfer : Transfer packets through USB Pipe.
     
    uint32_t(* PipeTransferGetResult )(ARM_USBH_PIPE_HANDLE pipe_hndl)
     Pointer to ARM_USBH_PipeTransferGetResult : Get result of USB Pipe transfer.
     
    int32_t(* PipeTransferAbort )(ARM_USBH_PIPE_HANDLE pipe_hndl)
     Pointer to ARM_USBH_PipeTransferAbort : Abort current USB Pipe transfer.
     
    uint16_t(* GetFrameNumber )(void)
     Pointer to ARM_USBH_GetFrameNumber : Get current USB Frame Number.
     
    +

    Field Documentation

    + +
    +
    + + + + +
    ARM_DRIVER_VERSION(* GetVersion)(void)
    +
    + +

    Pointer to ARM_USBH_GetVersion : Get driver version.

    + +
    +
    + +
    +
    + + + + +
    ARM_USBH_CAPABILITIES(* GetCapabilities)(void)
    +
    + +

    Pointer to ARM_USBH_GetCapabilities : Get driver capabilities.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Initialize)(ARM_USBH_SignalPortEvent_t cb_port_event, ARM_USBH_SignalPipeEvent_t cb_pipe_event)
    +
    + +

    Pointer to ARM_USBH_Initialize : Initialize USB Host Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* Uninitialize)(void)
    +
    + +

    Pointer to ARM_USBH_Uninitialize : De-initialize USB Host Interface.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PowerControl)(ARM_POWER_STATE state)
    +
    + +

    Pointer to ARM_USBH_PowerControl : Control USB Host Interface Power.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PortVbusOnOff)(uint8_t port, bool vbus)
    +
    + +

    Pointer to ARM_USBH_PortVbusOnOff : Root HUB Port VBUS on/off.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PortReset)(uint8_t port)
    +
    + +

    Pointer to ARM_USBH_PortReset : Do Root HUB Port Reset.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PortSuspend)(uint8_t port)
    +
    + +

    Pointer to ARM_USBH_PortSuspend : Suspend Root HUB Port (stop generating SOFs).

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PortResume)(uint8_t port)
    +
    + +

    Pointer to ARM_USBH_PortResume : Resume Root HUB Port (start generating SOFs).

    + +
    +
    + +
    +
    + + + + +
    ARM_USBH_PORT_STATE(* PortGetState)(uint8_t port)
    +
    + +

    Pointer to ARM_USBH_PortGetState : Get current Root HUB Port State.

    + +
    +
    + +
    +
    + + + + +
    ARM_USBH_PIPE_HANDLE(* PipeCreate)(uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint8_t ep_addr, uint8_t ep_type, uint16_t ep_max_packet_size, uint8_t ep_interval)
    +
    + +

    Pointer to ARM_USBH_PipeCreate : Create Pipe in System.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PipeModify)(ARM_USBH_PIPE_HANDLE pipe_hndl, uint8_t dev_addr, uint8_t dev_speed, uint8_t hub_addr, uint8_t hub_port, uint16_t ep_max_packet_size)
    +
    + +

    Pointer to ARM_USBH_PipeModify : Modify Pipe in System.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PipeDelete)(ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Pointer to ARM_USBH_PipeDelete : Delete Pipe from System.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PipeReset)(ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Pointer to ARM_USBH_PipeReset : Reset Pipe.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PipeTransfer)(ARM_USBH_PIPE_HANDLE pipe_hndl, uint32_t packet, uint8_t *data, uint32_t num)
    +
    + +

    Pointer to ARM_USBH_PipeTransfer : Transfer packets through USB Pipe.

    + +
    +
    + +
    +
    + + + + +
    uint32_t(* PipeTransferGetResult)(ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Pointer to ARM_USBH_PipeTransferGetResult : Get result of USB Pipe transfer.

    + +
    +
    + +
    +
    + + + + +
    int32_t(* PipeTransferAbort)(ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Pointer to ARM_USBH_PipeTransferAbort : Abort current USB Pipe transfer.

    + +
    +
    + +
    +
    + + + + +
    uint16_t(* GetFrameNumber)(void)
    +
    + +

    Pointer to ARM_USBH_GetFrameNumber : Get current USB Frame Number.

    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USBH_CAPABILITIES
    +
    +

    USB Host Driver Capabilities.

    +

    A USB Host driver can be implemented with different capabilities. The data fields of this structure encode the capabilities implemented by this driver.

    +

    Returned by:

    + +
    Note
    The struct must remain unchanged.
    +
    + + + + + + + + + + + + + + + + +
    Data Fields
    +uint32_t +port_mask: 15 +Root HUB available Ports Mask.
    +uint32_t +auto_split: 1 +Automatic SPLIT packet handling.
    +uint32_t +event_connect: 1 +Signal Connect event.
    +uint32_t +event_disconnect: 1 +Signal Disconnect event.
    +uint32_t +event_overcurrent: 1 +Signal Overcurrent event.
    + +
    +
    + +
    +
    + + + + +
    struct ARM_USBH_PORT_STATE
    +
    +

    USB Host Port State.

    +

    This structure stores information about the state of the USB Host Port. The data fields encode whether a device is connected to the port, if port overcurrent is detected, and the port speed.

    +

    Returned by:

    + +
    + + + + + + + + + + +
    Data Fields
    +uint32_t +connected: 1 +USB Host Port connected flag.
    +uint32_t +overcurrent: 1 +USB Host Port overcurrent flag.
    +uint32_t +speed: 2 +USB Host Port speed setting (ARM_USB_SPEED_xxx)
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    uint32_t ARM_USBH_PIPE_HANDLE
    +
    + +

    USB Host Pipe Handle.

    +

    Each pipe is identified through a unique number, which is created by the function ARM_USBH_PipeCreate.

    +

    Parameter for:

    + +

    Retruned by:

    + + +
    +
    + +
    +
    + + + + +
    ARM_USBH_SignalPortEvent_t
    +
    + +

    Pointer to ARM_USBH_SignalPortEvent : Signal Root HUB Port Event.

    +

    Provides the typedef for the callback function ARM_USBH_SignalPortEvent.

    +

    Parameter for:

    + + +
    +
    + +
    +
    + + + + +
    ARM_USBH_SignalPipeEvent_t
    +
    + +

    Pointer to ARM_USBH_SignalPipeEvent : Signal Pipe Event.

    +

    Provides the typedef for the callback function ARM_USBH_SignalPipeEvent.

    +

    Parameter for:

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    ARM_DRIVER_VERSION ARM_USBH_GetVersion (void )
    +
    + +

    Get driver version.

    +
    Returns
    ARM_DRIVER_VERSION
    +

    The function ARM_USBH_GetVersion returns version information of the driver implementation in ARM_DRIVER_VERSION

    +
      +
    • API version is the version of the CMSIS-Driver specification used to implement this driver.
    • +
    • Driver version is source code version of the actual driver implementation.
    • +
    +

    Example:

    +
    extern ARM_DRIVER_USBH Driver_USBH0;
    +
    ARM_DRIVER_USBH *drv_info;
    +
    +
    void setup_usbh (void) {
    + +
    +
    drv_info = &Driver_USBH0;
    +
    version = drv_info->GetVersion ();
    +
    if (version.api < 0x10A) { // requires at minimum API version 1.10 or higher
    +
    // error handling
    +
    return;
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    ARM_USBH_CAPABILITIES ARM_USBH_GetCapabilities (void )
    +
    + +

    Get driver capabilities.

    +
    Returns
    ARM_USBH_CAPABILITIES
    +

    The function ARM_USBH_GetCapabilities returns information about capabilities in this driver implementation. The data fields of the structure ARM_USBH_CAPABILITIES encode various capabilities, for example available HUB ports or if the hardware can generate signal events using the ARM_USBH_SignalPortEvent callback function.

    +

    Example:

    +
    extern ARM_DRIVER_USBH Driver_USBH0;
    +
    ARM_DRIVER_USBH *drv_info;
    +
    +
    void read_capabilities (void) {
    +
    ARM_USBH_CAPABILITIES drv_capabilities;
    +
    +
    drv_info = &Driver_USBH0;
    +
    drv_capabilities = drv_info->GetCapabilities ();
    +
    // interrogate capabilities
    +
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBH_Initialize (ARM_USBH_SignalPortEvent_t cb_port_event,
    ARM_USBH_SignalPipeEvent_t cb_pipe_event 
    )
    +
    + +

    Initialize USB Host Interface.

    +
    Parameters
    + + + +
    [in]cb_port_eventPointer to ARM_USBH_SignalPortEvent
    [in]cb_pipe_eventPointer to ARM_USBH_SignalPipeEvent
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_Initialize initializes the USB Host interface. It is called when the middleware component starts operation.

    +

    The function performs the following operations:

    + +

    The parameter cb_port_event is a pointer to the ARM_USBH_SignalPortEvent callback function; use a NULL pointer when no port callback signals are required.

    +

    The parameter cb_pipe_event is a pointer to the ARM_USBH_SignalPipeEvent callback function.

    +

    Example:

    + + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_Uninitialize (void )
    +
    + +

    De-initialize USB Host Interface.

    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_Uninitialize de-initializes the resources of USB Host interface.

    +

    It is called when the middleware component stops operation and releases the software resources used by the interface.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_PowerControl (ARM_POWER_STATE state)
    +
    + +

    Control USB Host Interface Power.

    +
    Parameters
    + + +
    [in]statePower state
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PowerControl operates the power modes of the USB Host interface.

    +

    The parameter state sets the operation and can have the following values:

    +
      +
    • ARM_POWER_FULL : set-up peripheral for data transfers, enable interrupts (NVIC) and optionally DMA. Can be called multiple times. If the peripheral is already in this mode the function performs no operation and returns with ARM_DRIVER_OK.
    • +
    • ARM_POWER_LOW : may use power saving. Returns ARM_DRIVER_ERROR_UNSUPPORTED when not implemented.
    • +
    • ARM_POWER_OFF : terminates any pending data transfers, disables peripheral, disables related interrupts and DMA.
    • +
    +

    Refer to Function Call Sequence for more information.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBH_PortVbusOnOff (uint8_t port,
    bool vbus 
    )
    +
    + +

    Root HUB Port VBUS on/off.

    +
    Parameters
    + + + +
    [in]portRoot HUB Port Number
    [in]vbus
      +
    • false VBUS off
    • +
    • true VBUS on
    • +
    +
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PortVbusOnOff controls the VBUS signal of the specified port.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_PortReset (uint8_t port)
    +
    + +

    Do Root HUB Port Reset.

    +
    Parameters
    + + +
    [in]portRoot HUB Port Number
    +
    +
    +
    Returns
    Status Error Codes
    +

    Executes reset signalling on the specified port.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_PortSuspend (uint8_t port)
    +
    + +

    Suspend Root HUB Port (stop generating SOFs).

    +
    Parameters
    + + +
    [in]portRoot HUB Port Number
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PortSuspend auspends USB signaling on the specified port.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_PortResume (uint8_t port)
    +
    + +

    Resume Root HUB Port (start generating SOFs).

    +
    Parameters
    + + +
    [in]portRoot HUB Port Number
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PortResume resumes USB signaling on the specified port.

    + +
    +
    + +
    +
    + + + + + + + + +
    ARM_USBH_PORT_STATE ARM_USBH_PortGetState (uint8_t port)
    +
    + +

    Get current Root HUB Port State.

    +
    Parameters
    + + +
    [in]portRoot HUB Port Number
    +
    +
    +
    Returns
    Port State ARM_USBH_PORT_STATE
    +

    The function ARM_USBH_PortGetState returns the current state of the specified port.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ARM_USBH_PIPE_HANDLE ARM_USBH_PipeCreate (uint8_t dev_addr,
    uint8_t dev_speed,
    uint8_t hub_addr,
    uint8_t hub_port,
    uint8_t ep_addr,
    uint8_t ep_type,
    uint16_t ep_max_packet_size,
    uint8_t ep_interval 
    )
    +
    + +

    Create Pipe in System.

    +
    Parameters
    + + + + + + + + + +
    [in]dev_addrDevice Address
    [in]dev_speedDevice Speed
    [in]hub_addrHub Address
    [in]hub_portHub Port
    [in]ep_addrEndpoint Address
      +
    • ep_addr.0..3: Address
    • +
    • ep_addr.7: Direction
    • +
    +
    [in]ep_typeEndpoint Type (ARM_USB_ENDPOINT_xxx)
    [in]ep_max_packet_sizeEndpoint Maximum Packet Size
    [in]ep_intervalEndpoint Polling Interval
    +
    +
    +
    Returns
    Pipe Handle ARM_USBH_PIPE_HANDLE
    +

    The function ARM_USBH_PipeCreate creates a pipe for transfers (allocates required resources and configures the pipe).

    +

    The parameters specify pipe information (connection between host and device endpoint):

    +
      +
    • device: address and speed
    • +
    • hub (optional): hub address and number of the hub port to which the device is connected
    • +
    • endpoint: address, type, maximum packet size and polling interval
    • +
    +

    The function returns an pipe handle that is used for all subsequent operations on that pipe. In case of errors an invalid handle (NULL) is returned.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBH_PipeModify (ARM_USBH_PIPE_HANDLE pipe_hndl,
    uint8_t dev_addr,
    uint8_t dev_speed,
    uint8_t hub_addr,
    uint8_t hub_port,
    uint16_t ep_max_packet_size 
    )
    +
    + +

    Modify Pipe in System.

    +
    Parameters
    + + + + + + + +
    [in]pipe_hndlPipe Handle
    [in]dev_addrDevice Address
    [in]dev_speedDevice Speed
    [in]hub_addrHub Address
    [in]hub_portHub Port
    [in]ep_max_packet_sizeEndpoint Maximum Packet Size
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PipeModify modifies a pipe configuration that was created with ARM_USBH_PipeCreate.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_PipeDelete (ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Delete Pipe from System.

    +
    Parameters
    + + +
    [in]pipe_hndlPipe Handle
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PipeDelete deletes a pipe that was created with ARM_USBH_PipeCreate (deactivates the pipe and releases used resources).

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_PipeReset (ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Reset Pipe.

    +
    Parameters
    + + +
    [in]pipe_hndlPipe Handle
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PipeReset clears Halt condition and resets data toggle on the specified pipe.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    int32_t ARM_USBH_PipeTransfer (ARM_USBH_PIPE_HANDLE pipe_hndl,
    uint32_t packet,
    uint8_t * data,
    uint32_t num 
    )
    +
    + +

    Transfer packets through USB Pipe.

    +
    Parameters
    + + + + + +
    [in]pipe_hndlPipe Handle
    [in]packetPacket information
    [in]dataPointer to buffer with data to send or for data to receive
    [in]numNumber of data bytes to transfer
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PipeTransfer generates packets for sending or receiving data from an USB Endpoint.

    +

    The function specifies the buffer for data to read or with data to write and the number of bytes to transfer. It also specifies USBH Packet Information with parameter packet.

    +

    The function is non-blocking and returns as soon as the driver starts the operation on the specified pipe. During the operation it is not allowed to call this function again on the same pipe. Also the data buffer must stay allocated and the contents of data must not be modified.

    +

    Operation is completed when the the requested number of data bytes have been transferred and is indicated with ARM_USBH_EVENT_TRANSFER_COMPLETE event. It can also finish earlier on reception of different handshake tokens which are also indicated through USBH Pipe Events.

    +

    Transfer operation can be aborted by calling ARM_USBH_PipeTransferAbort.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t ARM_USBH_PipeTransferGetResult (ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Get result of USB Pipe transfer.

    +
    Parameters
    + + +
    [in]pipe_hndlPipe Handle
    +
    +
    +
    Returns
    number of successfully transferred data bytes
    +

    The function ARM_USBH_PipeTransferGetResult returns the number of successfully transferred data bytes started by ARM_USBH_PipeTransfer operation.

    + +
    +
    + +
    +
    + + + + + + + + +
    int32_t ARM_USBH_PipeTransferAbort (ARM_USBH_PIPE_HANDLE pipe_hndl)
    +
    + +

    Abort current USB Pipe transfer.

    +
    Parameters
    + + +
    [in]pipe_hndlPipe Handle
    +
    +
    +
    Returns
    Status Error Codes
    +

    The function ARM_USBH_PipeTransferAbort aborts an active pipe transfer started by ARM_USBH_PipeTransfer.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint16_t ARM_USBH_GetFrameNumber (void )
    +
    + +

    Get current USB Frame Number.

    +
    Returns
    Frame Number
    +

    The function ARM_USBH_GetFrameNumber returns the sequential 11-bit frame number of the last Start of Frame (SOF) packet.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void ARM_USBH_SignalPortEvent (uint8_t port,
    uint32_t event 
    )
    +
    + +

    Signal Root HUB Port Event.

    +
    Parameters
    + + + +
    [in]portRoot HUB Port Number
    [in]eventUSBH Port Events
    +
    +
    +
    Returns
    none
    +

    The function ARM_USBH_SignalPortEvent is a callback function registered by the function ARM_USBH_Initialize.

    +

    The parameter port specifies the root hub port number.
    + The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    Not every event is necessarily generated by the driver. This depends on the implemented capabilities stored in the data fields of the structure ARM_USBH_CAPABILITIES, which can be retrieved with the function ARM_USBH_GetCapabilities.

    +

    The following events can be generated:

    + + + + + + + + + + + + + + + + + +
    Parameter event Bit Description supported when ARM_USBH_CAPABILITIES
    ARM_USBH_EVENT_CONNECT 0 Occurs when USB Device connects to the Host. data field event_connect= 1
    ARM_USBH_EVENT_DISCONNECT 1 Occurs when USB Device disconnects from the Host. data field event_disconnect= 1
    ARM_USBH_EVENT_OVERCURRENT 2 Occurs when USB Overcurrent it detected. data field event_overcurrent= 1
    ARM_USBH_EVENT_RESET 3 Occurs when USB Reset is completed after calling ARM_USBH_PortReset. always supported
    ARM_USBH_EVENT_SUSPEND 4 Occurs when USB Suspend is detected. always supported
    ARM_USBH_EVENT_RESUME 5 Occurs when USB Resume is detected. always supported
    ARM_USBH_EVENT_REMOTE_WAKEUP 6 Occurs when USB Remote wakeup is detected. always supported
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void ARM_USBH_SignalPipeEvent (ARM_USBH_PIPE_HANDLE pipe_hndl,
    uint32_t event 
    )
    +
    + +

    Signal Pipe Event.

    +
    Parameters
    + + + +
    [in]pipe_hndlPipe Handle
    [in]eventUSBH Pipe Events
    +
    +
    +
    Returns
    none
    +

    The function ARM_USBH_SignalPipeEvent is a callback function registered by the function ARM_USBH_Initialize.

    +

    The parameter pipe_hndl specifies the pipe handle.
    + The parameter event indicates one or more events that occurred during driver operation. Each event is encoded in a separate bit and therefore it is possible to signal multiple events within the same call.

    +

    The following events can be generated:

    + + + + + + + + + + + + + + + + + +
    Parameter event BitDescription
    ARM_USBH_EVENT_TRANSFER_COMPLETE 0 Occurs after all the data has been transferred without errors.
    ARM_USBH_EVENT_HANDSHAKE_NAK 1 Occurs when NAK Handshake is received before all the data is transferred.
    ARM_USBH_EVENT_HANDSHAKE_NYET 2 Occurs when NYET Handshake is received before all the data is transferred.
    ARM_USBH_EVENT_HANDSHAKE_MDATA 3 Occurs when MDATA Handshake is received before all the data is transferred.
    ARM_USBH_EVENT_HANDSHAKE_STALL 4 Occurs when STALL Handshake is received before all the data is transferred.
    ARM_USBH_EVENT_HANDSHAKE_ERR 5 Occurs when ERR Handshake is received before all the data is transferred.
    ARM_USBH_EVENT_BUS_ERROR 6 Occurs when bus error is detected before all the data is transferred.
    +

    See also:

    +
      +
    • ARM_USBH_PipeCreate
    • +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usbh__host__gr.js b/CMSIS/Documentation/Driver/html/group__usbh__host__gr.js new file mode 100644 index 0000000..fa64198 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbh__host__gr.js @@ -0,0 +1,61 @@ +var group__usbh__host__gr = +[ + [ "USBH Port Events", "group___u_s_b_h__port__events.html", "group___u_s_b_h__port__events" ], + [ "USBH Pipe Events", "group___u_s_b_h__pipe__events.html", "group___u_s_b_h__pipe__events" ], + [ "USBH Packet Information", "group___u_s_b_h__packets.html", "group___u_s_b_h__packets" ], + [ "ARM_DRIVER_USBH", "group__usbh__host__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h", [ + [ "GetVersion", "group__usbh__host__gr.html#a8834b281da48583845c044a81566c1b3", null ], + [ "GetCapabilities", "group__usbh__host__gr.html#aaba1d9458e32389c21c3d899f9cb9313", null ], + [ "Initialize", "group__usbh__host__gr.html#a5bf141e46b7ced3abe3466cae4d811fb", null ], + [ "Uninitialize", "group__usbh__host__gr.html#adcf20681a1402869ecb5c6447fada17b", null ], + [ "PowerControl", "group__usbh__host__gr.html#aba8f1c8019af95ffe19c32403e3240ef", null ], + [ "PortVbusOnOff", "group__usbh__host__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f", null ], + [ "PortReset", "group__usbh__host__gr.html#a95125e80b07640860a7e16f510eca506", null ], + [ "PortSuspend", "group__usbh__host__gr.html#ab8be30d2d44a6447c8c085439ef117fb", null ], + [ "PortResume", "group__usbh__host__gr.html#a79126109256c1ccef901f22bc36ddc1d", null ], + [ "PortGetState", "group__usbh__host__gr.html#a84c391c0db065fa27b672eef6002905b", null ], + [ "PipeCreate", "group__usbh__host__gr.html#a7ce5ca579a8c535434187ad05f596fbd", null ], + [ "PipeModify", "group__usbh__host__gr.html#a3efae6fe31a53f7ecd765ba6db99992e", null ], + [ "PipeDelete", "group__usbh__host__gr.html#ab2f8047e89786bb7a459fb9c6c3f03d5", null ], + [ "PipeReset", "group__usbh__host__gr.html#afe91e3e22bc401546d033cb9554550b7", null ], + [ "PipeTransfer", "group__usbh__host__gr.html#a495b069fadf5ba5b069bfdec6cda8b88", null ], + [ "PipeTransferGetResult", "group__usbh__host__gr.html#a18369bada042ff5557ff919056636a62", null ], + [ "PipeTransferAbort", "group__usbh__host__gr.html#ab82fb8b02ff81156098b8210c0344f5e", null ], + [ "GetFrameNumber", "group__usbh__host__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919", null ] + ] ], + [ "ARM_USBH_CAPABILITIES", "group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___c_a_p_a_b_i_l_i_t_i_e_s", [ + [ "port_mask", "group__usbh__host__gr.html#ac37c09b54483c2a1e41fa8a976721fc4", null ], + [ "auto_split", "group__usbh__host__gr.html#a37eab684b9a8aa496bfec9fede42fe27", null ], + [ "event_connect", "group__usbh__host__gr.html#ae76b779cb9fdf447b20c8b6beed2d534", null ], + [ "event_disconnect", "group__usbh__host__gr.html#ab83941051cac8e19807b887354dc42fc", null ], + [ "event_overcurrent", "group__usbh__host__gr.html#acd3087b3a4a7691595dd75568c12d696", null ] + ] ], + [ "ARM_USBH_PORT_STATE", "group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___p_o_r_t___s_t_a_t_e", [ + [ "connected", "group__usbh__host__gr.html#abf1a0792d6af28877b0abd141d5524ac", null ], + [ "overcurrent", "group__usbh__host__gr.html#ae4b5761b8d095bee008a94856ceca46b", null ], + [ "speed", "group__usbh__host__gr.html#a220859a8b5da0232739a11cbe7f79fc5", null ] + ] ], + [ "ARM_USBH_PIPE_HANDLE", "group__usbh__host__gr.html#ga2e4d0ebd0851ba7bf364ae1d8948672c", null ], + [ "ARM_USBH_SignalPortEvent_t", "group__usbh__host__gr.html#ga61edcbb6ee863fe87abee488d78e1051", null ], + [ "ARM_USBH_SignalPipeEvent_t", "group__usbh__host__gr.html#ga1a32ebfe0db4a002aae2b0c0f8ece30c", null ], + [ "ARM_USBH_GetVersion", "group__usbh__host__gr.html#gab11e67e11e7a0edbc8a1afa86b971784", null ], + [ "ARM_USBH_GetCapabilities", "group__usbh__host__gr.html#gadb509db50fdccfc7198dfd7ac54530d7", null ], + [ "ARM_USBH_Initialize", "group__usbh__host__gr.html#gad1e73f778c95dd46d4396e7741a97f0b", null ], + [ "ARM_USBH_Uninitialize", "group__usbh__host__gr.html#gafc2f18bc12bb0019f9cd1836dcca408d", null ], + [ "ARM_USBH_PowerControl", "group__usbh__host__gr.html#ga290a5e2e491da784e63be94699974d4a", null ], + [ "ARM_USBH_PortVbusOnOff", "group__usbh__host__gr.html#gaccca5ddd4a9d04388e7678a3aed3f6e4", null ], + [ "ARM_USBH_PortReset", "group__usbh__host__gr.html#gab99882e11ee03018da9ebe33797cc5ff", null ], + [ "ARM_USBH_PortSuspend", "group__usbh__host__gr.html#ga620f8852a70a47a581001ed3050436d6", null ], + [ "ARM_USBH_PortResume", "group__usbh__host__gr.html#gab438b55ada37e2987e77e105f061f2de", null ], + [ "ARM_USBH_PortGetState", "group__usbh__host__gr.html#gaea4ec5453c1d5fe37a2507d3cb4713bc", null ], + [ "ARM_USBH_PipeCreate", "group__usbh__host__gr.html#ga30dcc05151a98c5a8f6fe17e83777fe0", null ], + [ "ARM_USBH_PipeModify", "group__usbh__host__gr.html#ga2076a7ae55f603859c726e57b061ac73", null ], + [ "ARM_USBH_PipeDelete", "group__usbh__host__gr.html#gab2135041e6d481f186015f36fa0d0521", null ], + [ "ARM_USBH_PipeReset", "group__usbh__host__gr.html#ga7f5a605dbe98e450e6965d515fde65a7", null ], + [ "ARM_USBH_PipeTransfer", "group__usbh__host__gr.html#ga817d503a24ad8927fa362c8f6394920d", null ], + [ "ARM_USBH_PipeTransferGetResult", "group__usbh__host__gr.html#ga85baa421345a5b92881ad190d72ca47f", null ], + [ "ARM_USBH_PipeTransferAbort", "group__usbh__host__gr.html#ga1d4048a076aed71e585cea96a21f0afb", null ], + [ "ARM_USBH_GetFrameNumber", "group__usbh__host__gr.html#ga9dc305fc234c9987b9efd679b5042cc9", null ], + [ "ARM_USBH_SignalPortEvent", "group__usbh__host__gr.html#ga53619da2a3d56934629084b0d5c4700c", null ], + [ "ARM_USBH_SignalPipeEvent", "group__usbh__host__gr.html#gae58d36afd83a0e32b07e89fb7145c9de", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/group__usbh__interface__gr.html b/CMSIS/Documentation/Driver/html/group__usbh__interface__gr.html new file mode 100644 index 0000000..7711879 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbh__interface__gr.html @@ -0,0 +1,148 @@ + + + + + +USB Host Interface +CMSIS-Driver: USB Host Interface + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    USB Host Interface
    +
    +
    + +

    Driver API for USB Host Peripheral (Driver_USBH.h) +More...

    + + + + + + + + +

    +Content

     USB Host
     Driver API for USB Host.
     
     USB OHCI/EHCI
     Driver API for USB OHCI/EHCI.
     
    +

    Description

    +

    Driver API for USB Host Peripheral (Driver_USBH.h)

    +

    USB Host API

    +

    The header file Driver_USBH.h defines the API for the USB Host Driver interface used by middleware components. The driver implementation itself is a typical part of the Device Family Pack, which provides entry points to the interface as function pointers in the struct ARM_DRIVER_USBH. This structure can be available several times in each interface to control multiple USBH interfaces.

    +

    Driver_USBH.h also defines callback routines, which are categorized in port event callbacks and pipe event callbacks. Callbacks are called by the driver, in interrupt context when an appropriate event occurs, to signal port related events (ARM_USBH_SignalPortEvent) and pipe related events (ARM_USBH_SignalPipeEvent).

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/group__usbh__interface__gr.js b/CMSIS/Documentation/Driver/html/group__usbh__interface__gr.js new file mode 100644 index 0000000..90e7464 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/group__usbh__interface__gr.js @@ -0,0 +1,5 @@ +var group__usbh__interface__gr = +[ + [ "USB Host", "group__usbh__host__gr.html", "group__usbh__host__gr" ], + [ "USB OHCI/EHCI", "group__usbh__hci__gr.html", "group__usbh__hci__gr" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/image006.png b/CMSIS/Documentation/Driver/html/image006.png new file mode 100644 index 0000000..857f040 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/image006.png differ diff --git a/CMSIS/Documentation/Driver/html/index.html b/CMSIS/Documentation/Driver/html/index.html new file mode 100644 index 0000000..f890f18 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/index.html @@ -0,0 +1,160 @@ + + + + + +Overview +CMSIS-Driver: Overview + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Overview
    +
    +
    +

    The CMSIS-Driver specification is a software API that describes peripheral driver interfaces for middleware stacks and user applications. The CMSIS-Driver API is designed to be generic and independent of a specific RTOS making it reusable across a wide range of supported microcontroller devices. The CMSIS-Driver API covers a wide range of use cases for the supported peripheral types, but can not take every potential use-case into account. Over time, it is indented to extend the CMSIS-Driver API with further groups to cover new use-cases.

    +

    The CMSIS Software Pack publishes the API Interface under the Component Class CMSIS Driver with header files and a documentation. These header files are the reference for the implementation of the standardized peripheral driver interfaces. These implementations are published typically in the Device Family Pack of a related microcontroller family under the Component Class CMSIS Driver. A Device Family Pack may contain additional interfaces in the Component Class Device to extend the standard Peripheral Drivers covered by this CMSIS-Driver specification with additional device specific interfaces for example for Memory BUS, GPIO, or DMA.

    +

    The standard peripheral driver interfaces connect microcontroller peripherals for example with middleware that implements communication stacks, file systems, or graphic user interfaces. Each peripheral driver interface may provide multiple instances reflecting the multiple physical interfaces of the same type in a device. For example the two physical SPI interfaces are reflected with a separate Access Struct for SPI1 and SPI2. The Access Struct is the interface of a driver to the middleware component or the user application.

    +
    +Driver.png +
    +Peripheral Driver Interfaces and Middleware
    +

    The following CMSIS-Driver API groups are defined:

    +
      +
    • CAN: Interface to CAN bus peripheral.
    • +
    • Ethernet: Interface to Ethernet MAC and PHY peripheral.
    • +
    • I2C: Multi-master Serial Single-Ended Bus interface driver.
    • +
    • MCI: Memory Card Interface for SD/MMC memory.
    • +
    • NAND: NAND Flash Memory interface driver.
    • +
    • Flash: Flash Memory interface driver.
    • +
    • SAI: Serial audio interface driver (I2s, PCM, AC'97, TDM, MSB/LSB Justified).
    • +
    • SPI: Serial Peripheral Interface Bus driver.
    • +
    • USART: Universal Synchronous and Asynchronous Receiver/Transmitter interface driver.
    • +
    • USB: Interface driver for USB Host and USB Device communication.
    • +
    +
    +

    CMSIS-Driver in ARM::CMSIS Pack

    +

    The following files relevant to CMSIS-Driver are present in the ARM::CMSIS Pack directories:

    + + + + + + + +
    Directory Content
    CMSIS\Documentation\Driver This documentation
    CMSIS\Driver\Include Driver header files (Driver_interface.h, Driver_Common.h)
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Driver/html/jquery.js b/CMSIS/Documentation/Driver/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
    +
    +
    Reference
    +
    +
    +
    Here is a list of all modules:
    +
    [detail level 1234]
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    oCommon Driver DefinitionsDefinitions common in all driver interfaces (Driver_Common.h)
    |\Status Error CodesNegative return values of functions indicate errors occurred during execution
    oCAN InterfaceDriver API for CAN Bus Peripheral (Driver_CAN.h)
    |oStatus Error CodesStatus codes of the CAN driver
    |oCAN Unit EventsCallback unit events notified via ARM_CAN_SignalUnitEvent
    |oCAN Object EventsCallback objects events notified via ARM_CAN_SignalObjectEvent
    |\CAN Control CodesCodes to configure the CAN driver
    | oCAN IdentifierSet object to standard or extended
    | oCAN Operation CodesSet CAN operation modes
    | oCAN Bus Communication ModeSet or initialize the CAN bus
    | oCAN Bit Timing CodesSet bit timing
    | oCAN Filter Operation CodesSet CAN filter manipulation codes
    | \CAN Object Configuration CodesCAN Object Configuration codes
    oEthernet InterfaceEthernet common definitions (Driver_ETH.h)
    |oMedia Interface TypesEthernet Media Interface type
    |oEthernet MAC InterfaceDriver API for Ethernet MAC Peripheral (Driver_ETH_MAC.h)
    ||oEthernet MAC EventsThe Ethernet MAC driver generates call back events that are notified via the function ARM_ETH_MAC_SignalEvent
    ||oEthernet MAC Control CodesConfigure and control the Ethernet MAC using the ARM_ETH_MAC_Control
    ||oEthernet MAC Timer Control CodesControl codes for ARM_ETH_MAC_ControlTimer function
    ||\Ethernet MAC Frame Transmit FlagsSpecify frame transmit flags
    |\Ethernet PHY InterfaceDriver API for Ethernet PHY Peripheral (Driver_ETH_PHY.h)
    | \Ethernet PHY ModeSpecify operation modes of the Ethernet PHY interface
    oI2C InterfaceDriver API for I2C Bus Peripheral (Driver_I2C.h)
    |oI2C EventsThe I2C driver generates call back events that are notified via the function ARM_I2C_SignalEvent
    |oI2C Control CodesMany parameters of the I2C driver are configured using the ARM_I2C_Control function
    ||oI2C Control CodesSpecify operation parameters and various controls
    ||\I2C Bus SpeedSpecify the I2C bus speed
    |\I2C Address FlagsSpecify address flags
    oMCI InterfaceDriver API for Memory Card Interface using SD/MMC interface (Driver_MCI.h)
    |oMCI EventsThe MCI driver generates call back events that are notified via the function ARM_MCI_SignalEvent
    |oMCI Control CodesConfigure and control the MCI using the ARM_MCI_Control
    ||oMCI ControlsConfigure and control the MCI interface
    ||oMCI Bus Speed ModeSpecify the bus speed mode
    ||oMCI Bus Data WidthSpecify the data bus width
    ||oMCI CMD Line ModeSpecify the CMD line mode (Push-Pull or Open Drain)
    ||\MCI Driver StrengthSpecify the driver strength
    |oMCI Send Command FlagsSpecify various options for sending commands to the card and the expected response
    |oMCI Transfer ControlsSpecify data transfer mode
    |\MCI Card Power ControlsSpecify Memory Card Power supply voltage
    oNAND InterfaceDriver API for NAND Flash Device Interface (Driver_NAND.h)
    |oStatus Error CodesNegative values indicate errors (NAND has specific codes in addition to common Status Error Codes)
    |oNAND EventsThe NAND driver generates call back events that are notified via the function ARM_NAND_SignalEvent
    |oNAND FlagsSpecify Flag codes
    |oNAND Control CodesMany parameters of the NAND driver are configured using the ARM_NAND_Control function
    ||oNAND Mode ControlsSpecify operation modes of the NAND interface
    ||oNAND Bus ModesSpecify bus mode of the NAND interface
    ||oNAND Data Bus WidthSpecify data bus width of the NAND interface
    ||\NAND Driver StrengthSpecify driver strength of the NAND interface
    |oNAND ECC CodesSpecify ECC codes
    |\NAND Sequence Execution CodesSpecify execution codes
    oFlash InterfaceDriver API for Flash Device Interface (Driver_Flash.h)
    |\Flash EventsThe Flash driver generates call back events that are notified via the function ARM_Flash_SignalEvent
    oSAI InterfaceDriver API for Serial Audio Interface (Driver_SAI.h)
    |oStatus Error CodesNegative values indicate errors (SAI has specific codes in addition to common Status Error Codes)
    |oSAI EventsThe SAI driver generates call back events that are notified via the function ARM_SAI_SignalEvent
    |\SAI Control CodesMany parameters of the SAI driver are configured using the ARM_SAI_Control function
    | oSAI ConfigurationSpecify Transmitter/Receiver configuration
    | \SAI ControlsSpecifies controls
    oSPI InterfaceDriver API for SPI Bus Peripheral (Driver_SPI.h)
    |oStatus Error CodesNegative values indicate errors (SPI has specific codes in addition to common Status Error Codes)
    |oSPI EventsThe SPI driver generates call back events that are notified via the function ARM_SPI_SignalEvent
    |\SPI Control CodesMany parameters of the SPI driver are configured using the ARM_SPI_Control function
    | oSPI Mode ControlsSpecifies SPI mode
    | oSPI Frame FormatDefines the frame format
    | oSPI Data BitsDefines the number of data bits
    | oSPI Bit OrderDefines the bit order
    | oSPI Slave Select ModeSpecifies SPI slave select mode
    | \SPI Miscellaneous ControlsSpecifies additional miscellaneous controls
    oUSART InterfaceDriver API for Universal Synchronous Asynchronous Receiver/Transmitter (Driver_USART.h)
    |oStatus Error CodesNegative values indicate errors (USART has specific codes in addition to common Status Error Codes)
    |oUSART EventsThe USART driver generates call back events that are notified via the function ARM_USART_SignalEvent
    |\USART Control CodesMany parameters of the USART driver are configured using the ARM_USART_Control function
    | oUSART Mode ControlSpecify USART mode
    | oUSART Miscellaneous ControlSpecifies additional miscellaneous controls
    | oUSART Data BitsDefines the number of data bits
    | oUSART Parity BitDefines the parity bit
    | oUSART Stop BitsDefines the number of stop bits
    | oUSART Flow ControlSpecifies RTS/CTS flow control
    | oUSART Clock PolarityDefines the clock polarity for the synchronous mode
    | \USART Clock PhaseDefines the clock phase for the synchronous mode
    \USB InterfaceUSB common definitions (Driver_USB.h)
     oUSB Device InterfaceDriver API for USB Device Peripheral (Driver_USBD.h)
     |oUSBD Device EventsThe USB Device driver generates Device call back events that are notified via the function ARM_USBD_SignalDeviceEvent
     |\USBD Endpoint EventsThe USB Device driver generates Endpoint call back events that are notified via the function ARM_USBD_SignalEndpointEvent
     oUSB Host InterfaceDriver API for USB Host Peripheral (Driver_USBH.h)
     |oUSB HostDriver API for USB Host
     |\USB OHCI/EHCIDriver API for USB OHCI/EHCI
     oUSB SpeedUSB Speed definitions
     \USB Endpoint TypeUSB Endpoint Type definitions
    + + + + + + + diff --git a/CMSIS/Documentation/Driver/html/modules.js b/CMSIS/Documentation/Driver/html/modules.js new file mode 100644 index 0000000..1ee007d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/modules.js @@ -0,0 +1,14 @@ +var modules = +[ + [ "Common Driver Definitions", "group__common__drv__gr.html", "group__common__drv__gr" ], + [ "CAN Interface", "group__can__interface__gr.html", "group__can__interface__gr" ], + [ "Ethernet Interface", "group__eth__interface__gr.html", "group__eth__interface__gr" ], + [ "I2C Interface", "group__i2c__interface__gr.html", "group__i2c__interface__gr" ], + [ "MCI Interface", "group__mci__interface__gr.html", "group__mci__interface__gr" ], + [ "NAND Interface", "group__nand__interface__gr.html", "group__nand__interface__gr" ], + [ "Flash Interface", "group__flash__interface__gr.html", "group__flash__interface__gr" ], + [ "SAI Interface", "group__sai__interface__gr.html", "group__sai__interface__gr" ], + [ "SPI Interface", "group__spi__interface__gr.html", "group__spi__interface__gr" ], + [ "USART Interface", "group__usart__interface__gr.html", "group__usart__interface__gr" ], + [ "USB Interface", "group__usb__interface__gr.html", "group__usb__interface__gr" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Driver/html/msc_inline_mscgraph_1.png b/CMSIS/Documentation/Driver/html/msc_inline_mscgraph_1.png new file mode 100644 index 0000000..c4e9862 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/msc_inline_mscgraph_1.png differ diff --git a/CMSIS/Documentation/Driver/html/msc_inline_mscgraph_2.png b/CMSIS/Documentation/Driver/html/msc_inline_mscgraph_2.png new file mode 100644 index 0000000..6faed07 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/msc_inline_mscgraph_2.png differ diff --git a/CMSIS/Documentation/Driver/html/nav_f.png b/CMSIS/Documentation/Driver/html/nav_f.png new file mode 100644 index 0000000..72a58a5 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/nav_f.png differ diff --git a/CMSIS/Documentation/Driver/html/nav_g.png b/CMSIS/Documentation/Driver/html/nav_g.png new file mode 100644 index 0000000..2093a23 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/nav_g.png differ diff --git a/CMSIS/Documentation/Driver/html/nav_h.png b/CMSIS/Documentation/Driver/html/nav_h.png new file mode 100644 index 0000000..33389b1 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/nav_h.png differ diff --git a/CMSIS/Documentation/Driver/html/navtree.css b/CMSIS/Documentation/Driver/html/navtree.css new file mode 100644 index 0000000..8001f82 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 300px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/CMSIS/Documentation/Driver/html/navtree.js b/CMSIS/Documentation/Driver/html/navtree.js new file mode 100644 index 0000000..7d850b7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtree.js @@ -0,0 +1,548 @@ +var NAVTREE = +[ + [ "CMSIS-Driver", "index.html", [ + [ "Overview", "index.html", null ], + [ "Revision History of CMSIS-Driver", "driver_revision_history.html", null ], + [ "Theory of Operation", "_theory_operation.html", [ + [ "Common Driver Functions", "_theory_operation.html#DriverFunctions", [ + [ "Cortex-M Processor Mode", "_theory_operation.html#ProcessorMode", null ] + ] ], + [ "Function Call Sequence", "_theory_operation.html#CallSequence", [ + [ "Start Sequence", "_theory_operation.html#CS_start", null ], + [ "Stop Sequence", "_theory_operation.html#CS_stop", null ] + ] ], + [ "Shared I/O Pins", "_theory_operation.html#Share_IO", null ], + [ "Data Transfer Functions", "_theory_operation.html#Data_Xfer_Functions", null ], + [ "Access Struct", "_theory_operation.html#AccessStruct", [ + [ "Driver Instances", "_theory_operation.html#DriverInstances", null ] + ] ], + [ "Driver Configuration", "_theory_operation.html#DriverConfiguration", null ], + [ "Code Example", "_theory_operation.html#CodeExample", null ] + ] ], + [ "Reference Implementation", "_reference_implementation.html", [ + [ "Driver Header Files", "_reference_implementation.html#DriverHeaderFiles", null ], + [ "Driver Template Files", "_reference_implementation.html#DriverTemplates", null ], + [ "Driver Examples", "_reference_implementation.html#DriverExamples", null ] + ] ], + [ "Driver Validation", "_driver_validation.html", [ + [ "Sample Test Output", "_driver_validation.html#test_output", null ], + [ "Setup for Loop Back Communication", "_driver_validation.html#loop_back_setup", null ] + ] ], + [ "Reference", "modules.html", "modules" ], + [ "Data Structures", "annotated.html", null ], + [ "Data Structure Index", "classes.html", null ], + [ "Data Fields", "functions.html", [ + [ "All", "functions.html", "functions_dup" ], + [ "Variables", "functions_vars.html", "functions_vars" ] + ] ] + ] ] +]; + +var NAVTREEINDEX = +[ +"_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaa3b6d191c99f1eba4f01bcc5fbfaf67f3", +"group__can__interface__gr.html#ga00ec0715f6755a49dae5b60dca182630", +"group__i2c__control__gr.html", +"group__nand__interface__gr.html#a0e7d3b9258d468492b22de55d855a06e", +"group__spi__misc__ctrls.html#gafc00fe35bb4c89b076d014b43168b2b3", +"group__usbh__host__gr.html#gad1e73f778c95dd46d4396e7741a97f0b" +]; + +var SYNCONMSG = 'click to disable panel synchronisation'; +var SYNCOFFMSG = 'click to enable panel synchronisation'; +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + if (node.parentNode && node.parentNode.parentNode) { + createIndent(o,domNode,node.parentNode,level+1); + } + var imgNode = document.createElement("img"); + imgNode.width = 16; + imgNode.height = 22; + if (level==0 && node.childrenData) { + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2plastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2pnode.png"; + } + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + domNode.appendChild(imgNode); + } + if (level==0) { + if (node.isLast) { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2plastnode.png"; + } else { + imgNode.src = node.relpath+"ftv2lastnode.png"; + domNode.appendChild(imgNode); + } + } else { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2pnode.png"; + } else { + imgNode.src = node.relpath+"ftv2node.png"; + domNode.appendChild(imgNode); + } + } + } else { + if (node.isLast) { + imgNode.src = node.relpath+"ftv2blank.png"; + } else { + imgNode.src = node.relpath+"ftv2vertline.png"; + } + } + imgNode.border = "0"; +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath($(location).attr('pathname')); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : '#'; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var pos, anchor = $(aname), docContent = $('#doc-content'); + if (anchor.parent().attr('class')=='memItemLeft') { + pos = anchor.parent().position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + window.location.replace(aname); + }); + } + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var anchor = $($(location).attr('hash')); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+ + window.location.hash.substring(1)+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parents().slice(2).prop('tagName')=='TR') { + glowEffect(anchor.parents('div.memitem'),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).show(); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1]; + else hash=''; + } + if (root==NAVTREE[0][1]) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + //root=root.replace(/_source\./,'.'); // source link to doc link + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash')); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + navTo(o,toroot,window.location.hash,relpath); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath($(location).attr('pathname'))+':'+ + $(location).attr('hash').substring(1); + a=$('.item a[class$="'+clslink+'"]'); + } + if (a==null || !$(a).parent().parent().hasClass('selected')){ + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + } + var link=stripPath2($(location).attr('pathname')); + navTo(o,link,$(location).attr('hash'),relpath); + } + }) + + $(window).load(showRoot); +} + diff --git a/CMSIS/Documentation/Driver/html/navtreeindex0.js b/CMSIS/Documentation/Driver/html/navtreeindex0.js new file mode 100644 index 0000000..5969313 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtreeindex0.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX0 = +{ +"_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaa3b6d191c99f1eba4f01bcc5fbfaf67f3":[5,1,3,3,4,0], +"_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaaa6c9996de0cdf42da5c02086cd8f16dc":[5,1,3,3,4,1], +"_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a14780ac7274831ee94f427cbbf67c003":[5,1,3,5,0,2], +"_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a396d7a6cd2353e1a2936405ace6417f5":[5,1,3,5,0,4], +"_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a3e20952f92855298cd0a39a7f47b3f3c":[5,1,3,5,0,1], +"_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0ac5d28d180ea9e4328974ffcb8b928a0c":[5,1,3,5,0,3], +"_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0aebbd0da59658805af30203be66d80249":[5,1,3,5,0,0], +"_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda22a9bb26e68c2a04f641d466040d755d":[5,1,3,2,0,2], +"_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda5ee1ba60abcf39d575e7cb309e641b9b":[5,1,3,2,0,5], +"_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda8579315576baa43860a398a30fd527d8":[5,1,3,2,0,4], +"_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda904f68f08c84c4b85c763f5d98c574ab":[5,1,3,2,0,3], +"_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda9967a5ebaa045afe54d75e5629676ddc":[5,1,3,2,0,0], +"_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcdaa3190344bdf3452462e5c0518ac3cdc4":[5,1,3,2,0,1], +"_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a17fea7d388dc702bb3318ecae911f50d":[5,1,3,4,0,3], +"_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a22123bef8e773844fce604c553bf2ed5":[5,1,3,4,0,2], +"_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a6fdaecf3fa244ef1e4d1069d9c6c95f8":[5,1,3,4,0,1], +"_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75aa734058b50573de3b0cc49311997806b":[5,1,3,4,0,0], +"_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ac4ad302fa9b762c1d14964141e234ba9":[5,1,3,4,0,4], +"_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ad9573d5d0e112aece7abc0bc24aa92fb":[5,1,3,4,0,5], +"_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5a9ef9e57cbcc948d0e22314e73dc8c434":[5,0,2,1], +"_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5ab6f5becc85ebd51c3dd2524a95d2ca35":[5,0,2,0], +"_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5abed52b77a9ce4775570e44a842b1295e":[5,0,2,2], +"_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291a5f635c9352db6cb6fa9ad95660850487":[5,2,5,0], +"_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291ab5e5b02c3c8a5a0fefcf69f3be7e31c1":[5,2,5,1], +"_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa3ad44ce9f16c136ccad45c09ec65cb4c":[5,9,8,2], +"_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa7f9d445e6e56642c4c4251a00bfa7434":[5,9,8,1], +"_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab4d04e682d04f70c6aeba130656d3ec6":[5,9,8,0], +"_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab938a21e1b59a2b92424e2521b9469d4":[5,9,8,3], +"_driver_validation.html":[4], +"_driver_validation.html#loop_back_setup":[4,1], +"_driver_validation.html#test_output":[4,0], +"_reference_implementation.html":[3], +"_reference_implementation.html#DriverExamples":[3,2], +"_reference_implementation.html#DriverHeaderFiles":[3,0], +"_reference_implementation.html#DriverTemplates":[3,1], +"_theory_operation.html":[2], +"_theory_operation.html#AccessStruct":[2,4], +"_theory_operation.html#CS_start":[2,1,0], +"_theory_operation.html#CS_stop":[2,1,1], +"_theory_operation.html#CallSequence":[2,1], +"_theory_operation.html#CodeExample":[2,6], +"_theory_operation.html#Data_Xfer_Functions":[2,3], +"_theory_operation.html#DriverConfiguration":[2,5], +"_theory_operation.html#DriverFunctions":[2,0], +"_theory_operation.html#DriverInstances":[2,4,0], +"_theory_operation.html#ProcessorMode":[2,0,0], +"_theory_operation.html#Share_IO":[2,2], +"annotated.html":[6], +"classes.html":[7], +"driver_revision_history.html":[1], +"functions.html":[8,0], +"functions.html":[8,0,0], +"functions_0x62.html":[8,0,1], +"functions_0x63.html":[8,0,2], +"functions_0x64.html":[8,0,3], +"functions_0x65.html":[8,0,4], +"functions_0x66.html":[8,0,5], +"functions_0x67.html":[8,0,6], +"functions_0x68.html":[8,0,7], +"functions_0x69.html":[8,0,8], +"functions_0x6c.html":[8,0,9], +"functions_0x6d.html":[8,0,10], +"functions_0x6e.html":[8,0,11], +"functions_0x6f.html":[8,0,12], +"functions_0x70.html":[8,0,13], +"functions_0x72.html":[8,0,14], +"functions_0x73.html":[8,0,15], +"functions_0x74.html":[8,0,16], +"functions_0x75.html":[8,0,17], +"functions_0x76.html":[8,0,18], +"functions_0x77.html":[8,0,19], +"functions_vars.html":[8,1], +"functions_vars.html":[8,1,0], +"functions_vars_0x62.html":[8,1,1], +"functions_vars_0x63.html":[8,1,2], +"functions_vars_0x64.html":[8,1,3], +"functions_vars_0x65.html":[8,1,4], +"functions_vars_0x66.html":[8,1,5], +"functions_vars_0x67.html":[8,1,6], +"functions_vars_0x68.html":[8,1,7], +"functions_vars_0x69.html":[8,1,8], +"functions_vars_0x6c.html":[8,1,9], +"functions_vars_0x6d.html":[8,1,10], +"functions_vars_0x6e.html":[8,1,11], +"functions_vars_0x6f.html":[8,1,12], +"functions_vars_0x70.html":[8,1,13], +"functions_vars_0x72.html":[8,1,14], +"functions_vars_0x73.html":[8,1,15], +"functions_vars_0x74.html":[8,1,16], +"functions_vars_0x75.html":[8,1,17], +"functions_vars_0x76.html":[8,1,18], +"functions_vars_0x77.html":[8,1,19], +"group___c_a_n__events.html":[5,1,2], +"group___c_a_n__events.html#ga2c1082561eeae3b2b8132e81fc241e47":[5,1,2,1], +"group___c_a_n__events.html#ga486f0f35ebc7e3b5931ee68b56703503":[5,1,2,0], +"group___c_a_n__events.html#ga6c2d29b5c49d5cd18e97f5931157a94c":[5,1,2,2], +"group___c_a_n__unit__events.html":[5,1,1], +"group___c_a_n__unit__events.html#ga0e65231ccb20684d7c8eac80385f8c18":[5,1,1,0], +"group___c_a_n__unit__events.html#ga3690f864edd2e124f4f9875fdde9a2eb":[5,1,1,1], +"group___c_a_n__unit__events.html#ga9c529d6697fe21e69639224322f8c4b4":[5,1,1,2], +"group___c_a_n__unit__events.html#gafa4f992a97b4ca0f079aec2990a69bed":[5,1,1,3], +"group___e_t_h___m_a_c__events.html":[5,2,1,0], +"group___e_t_h___m_a_c__events.html#ga0c0328ff7cf886d5fdb53bb84ec03c1b":[5,2,1,0,1], +"group___e_t_h___m_a_c__events.html#ga1f3bdb219afa8f2a121b58cc84f5761c":[5,2,1,0,2], +"group___e_t_h___m_a_c__events.html#ga4afc71ecac964f195e27be4acdbe7c61":[5,2,1,0,3], +"group___e_t_h___m_a_c__events.html#ga76943471a4a3e9e8c1ff9fe83e43bd47":[5,2,1,0,0], +"group___flash__events.html":[5,6,0], +"group___flash__events.html#ga0dfea52761c0eed83e5d73e7a7f69962":[5,6,0,1], +"group___flash__events.html#gaf7a9c4ad125ee90df35907d861151e23":[5,6,0,0], +"group___i2_c__events.html":[5,3,0], +"group___i2_c__events.html#ga3ab54410b6410ed3a58762ff0c0d68b9":[5,3,0,5], +"group___i2_c__events.html#ga5992dc0f6e839c4d066cfa83d535f30d":[5,3,0,0], +"group___i2_c__events.html#ga81ca21fad73dac1ffaff58921f848ea9":[5,3,0,8], +"group___i2_c__events.html#ga98b815769634d9578526b43589caa017":[5,3,0,4], +"group___i2_c__events.html#gabd875b57ce39dadd849c53b885ad6661":[5,3,0,3], +"group___i2_c__events.html#gac9000f44a578e2117d64dbc2093cec6d":[5,3,0,6], +"group___i2_c__events.html#gacfbbec9af083d35e8ea87ad16e9c6ec2":[5,3,0,2], +"group___i2_c__events.html#gaeef542840355131c18b53fd9ed1904a8":[5,3,0,7], +"group___i2_c__events.html#gafac3989c7b57727e1bed4ee9f2496ac9":[5,3,0,1], +"group___n_a_n_d__events.html":[5,5,1], +"group___n_a_n_d__events.html#ga7b390a906db42c5ea4db38e0e85bb9e9":[5,5,1,1], +"group___n_a_n_d__events.html#ga7bee0c32528ab991c0c064f895f80664":[5,5,1,3], +"group___n_a_n_d__events.html#gac774a334871789d24107b843d1ebd00c":[5,5,1,2], +"group___n_a_n_d__events.html#gae0be7e1b41188def905de0a1568d442d":[5,5,1,0], +"group___s_a_i__events.html":[5,7,1], +"group___s_a_i__events.html#ga3dfa64375859f40d157c224187d2885e":[5,7,1,0], +"group___s_a_i__events.html#ga5a9bde0b096aafe53279529a0adbef55":[5,7,1,1], +"group___s_a_i__events.html#ga6a0be7aaf9d700e5259f741641bc37ca":[5,7,1,2], +"group___s_a_i__events.html#ga6ffcf96fe404b48421a57fbd122b26bc":[5,7,1,4], +"group___s_a_i__events.html#gac83e9df0238803ef2c88f16605f73bf5":[5,7,1,3], +"group___s_p_i__control.html":[5,8,2], +"group___s_p_i__events.html":[5,8,1], +"group___s_p_i__events.html#ga7eaa229003689aa18598273490b3e630":[5,8,1,2], +"group___s_p_i__events.html#ga8e63d99c80ea56de596a8d0a51fd8244":[5,8,1,1], +"group___s_p_i__events.html#gaabdfc9e17641144cd50d36d15511a1b8":[5,8,1,0], +"group___u_s_a_r_t__control.html":[5,9,2], +"group___u_s_a_r_t__events.html":[5,9,1], +"group___u_s_a_r_t__events.html#ga0599793e6aa531d56ff9f81ff12605d7":[5,9,1,2], +"group___u_s_a_r_t__events.html#ga08b165fd8525e44e3ce42ed6183cd30a":[5,9,1,1], +"group___u_s_a_r_t__events.html#ga12872a3b04343f97d9535b5b0d37286d":[5,9,1,3], +"group___u_s_a_r_t__events.html#ga1628b951feba1c851f424ce89da409a4":[5,9,1,12], +"group___u_s_a_r_t__events.html#ga2d97495c650220fbfe9d6977d0953127":[5,9,1,8], +"group___u_s_a_r_t__events.html#ga43a0869daf83abb3fea96926a97047ad":[5,9,1,5], +"group___u_s_a_r_t__events.html#ga4cd807ca131bdcb1a7eb4f223fa70476":[5,9,1,10], +"group___u_s_a_r_t__events.html#ga5afef591c2e8dd9bc4332b7bc8d96309":[5,9,1,11], +"group___u_s_a_r_t__events.html#ga66ee2256571450a3fc3c530344ea9bd7":[5,9,1,6], +"group___u_s_a_r_t__events.html#gaa1d19e48faf2bdc2a976de448928288e":[5,9,1,7], +"group___u_s_a_r_t__events.html#gaae1c626192b16ccace93f3546e7884bf":[5,9,1,0], +"group___u_s_a_r_t__events.html#gac17fe5723d4c5923656dadd9d1302154":[5,9,1,13], +"group___u_s_a_r_t__events.html#gadb4fec2530fc5ae3ad2b056741883451":[5,9,1,9], +"group___u_s_a_r_t__events.html#gae57b9977bd338bf8bef86978843fa443":[5,9,1,4], +"group___u_s_b__endpoint__type.html":[5,10,3], +"group___u_s_b__endpoint__type.html#ga9375cd3a2735e7d5c8c359a1cdbc7d95":[5,10,3,3], +"group___u_s_b__endpoint__type.html#gabb5913e9d1434240588ec43722d3eb16":[5,10,3,1], +"group___u_s_b__endpoint__type.html#gac80fcc73aada5562e35e4bf2c21b7b2d":[5,10,3,2], +"group___u_s_b__endpoint__type.html#gaf8df4a353e829cf41a9f712e1b3c93a1":[5,10,3,0], +"group___u_s_b__speed.html":[5,10,2], +"group___u_s_b__speed.html#ga0d1b465db654b651dcf588c8b59899d5":[5,10,2,1], +"group___u_s_b__speed.html#ga13fa1e1934021f744dba837776205c89":[5,10,2,2], +"group___u_s_b__speed.html#gae44fe8958474cd90f2288ea27752df27":[5,10,2,0], +"group___u_s_b_d__dev__events.html":[5,10,0,0], +"group___u_s_b_d__dev__events.html#ga32546413cfe55154351f74fb56de1045":[5,10,0,0,0], +"group___u_s_b_d__dev__events.html#ga489e1b88f7b0361494ca3a8dc73c227a":[5,10,0,0,2], +"group___u_s_b_d__dev__events.html#ga5b1c9884b237ba7778f79761e5db9f45":[5,10,0,0,5], +"group___u_s_b_d__dev__events.html#ga6810c08a6e6a46ba443899e5ba9c3aec":[5,10,0,0,1], +"group___u_s_b_d__dev__events.html#ga689d1e031013d0e66aeef4243490d843":[5,10,0,0,3], +"group___u_s_b_d__dev__events.html#ga74dc7c0ba71baf285400d5a555224653":[5,10,0,0,4], +"group___u_s_b_d__ep__events.html":[5,10,0,1], +"group___u_s_b_d__ep__events.html#ga35f7340508acb5fe7a5f43bbcac1887a":[5,10,0,1,1], +"group___u_s_b_d__ep__events.html#ga375d3d8f363a056ff607c5ab3b92a864":[5,10,0,1,2], +"group___u_s_b_d__ep__events.html#gaa0814f6880f4c0ac302ac9ebc8170739":[5,10,0,1,0], +"group___u_s_b_h__packets.html":[5,10,1,0,2], +"group___u_s_b_h__packets.html#ga08d60ec20c091b5e7e252d137268cb76":[5,10,1,0,2,2], +"group___u_s_b_h__packets.html#ga2eeab58cebb4556214c021ff02c36b16":[5,10,1,0,2,3], +"group___u_s_b_h__packets.html#ga34014ff212b26e3ee8c8670a180846e2":[5,10,1,0,2,5], +"group___u_s_b_h__packets.html#ga3b8fa0d3aa083718b4f5d60e92394b47":[5,10,1,0,2,7], +"group___u_s_b_h__packets.html#ga40075aa1d3eff6d4b94dfe28d7745873":[5,10,1,0,2,4], +"group___u_s_b_h__packets.html#ga409b2ae6503e738eb86e35652f9ebf8d":[5,10,1,0,2,1], +"group___u_s_b_h__packets.html#ga6dd82c7b96bc1339d725a6133a32a62f":[5,10,1,0,2,11], +"group___u_s_b_h__packets.html#ga8d2b46fbc04d871abe0661f8acd18a94":[5,10,1,0,2,9], +"group___u_s_b_h__packets.html#gadbfbbf7b4709f3ee4c3610da8402cfec":[5,10,1,0,2,10], +"group___u_s_b_h__packets.html#gaf47930d994c53fc1772caed129aee921":[5,10,1,0,2,6], +"group___u_s_b_h__packets.html#gaf99ee84befc6522fef56b21df870df72":[5,10,1,0,2,8], +"group___u_s_b_h__packets.html#gafb0bcfee8abd4ada7f789aec2993048a":[5,10,1,0,2,0], +"group___u_s_b_h__pipe__events.html":[5,10,1,0,1], +"group___u_s_b_h__pipe__events.html#ga3895b82193855d9a6f0b7e8a9b65e2c0":[5,10,1,0,1,1], +"group___u_s_b_h__pipe__events.html#ga4fdc44fc78f342576dd11ad7cb84b4b8":[5,10,1,0,1,4], +"group___u_s_b_h__pipe__events.html#ga62ae214576c923ce737a16098e9836e5":[5,10,1,0,1,2], +"group___u_s_b_h__pipe__events.html#ga681ce0983f8c77c41f3cc5df1af8d010":[5,10,1,0,1,3], +"group___u_s_b_h__pipe__events.html#ga7bd871b1e5c059bee398c32429370724":[5,10,1,0,1,6], +"group___u_s_b_h__pipe__events.html#gab161955b1ab0b7928befe446ef78634b":[5,10,1,0,1,0], +"group___u_s_b_h__pipe__events.html#gac7cc573f879fbab678dc7d1347c68614":[5,10,1,0,1,5], +"group___u_s_b_h__port__events.html":[5,10,1,0,0], +"group___u_s_b_h__port__events.html#ga0955fdc2aedd2c5aa2be6cd782b3f2a8":[5,10,1,0,0,2], +"group___u_s_b_h__port__events.html#ga2b61e9df3c63fd78fc08f79280a7066e":[5,10,1,0,0,6], +"group___u_s_b_h__port__events.html#ga42f62bdf6dd639f9f3dffc6c127456e3":[5,10,1,0,0,5], +"group___u_s_b_h__port__events.html#ga70ae1e0a7872556d302a7f7840843c4a":[5,10,1,0,0,3], +"group___u_s_b_h__port__events.html#ga71bfd8b8cd41b8aa6303d5d3a91597e6":[5,10,1,0,0,0], +"group___u_s_b_h__port__events.html#gaba67919f64e9a08ba1264363b2710d20":[5,10,1,0,0,1], +"group___u_s_b_h__port__events.html#gae1f91db7d31bcebbf60a23fb04cf7eb5":[5,10,1,0,0,4], +"group__can__bus__mode__ctrls.html":[5,1,3,2], +"group__can__bus__mode__ctrls.html#gabbca99c46d478bcf822eee71cdf75dcd":[5,1,3,2,0], +"group__can__control.html":[5,1,3], +"group__can__filter__operation__ctrls.html":[5,1,3,4], +"group__can__filter__operation__ctrls.html#gacb04d0f8b3969ee69362ff2b62941d75":[5,1,3,4,0], +"group__can__identifer__ctrls.html":[5,1,3,0], +"group__can__identifer__ctrls.html#ga561635b816ddaf5fb87377155fc692c7":[5,1,3,0,0], +"group__can__identifer__ctrls.html#gae7d4efb6fb49e1ec47c2b12e22f37cae":[5,1,3,0,1], +"group__can__interface__gr.html":[5,1], +"group__can__interface__gr.html#a0fa2edbde052011604addec816782b4e":[5,1,4,7], +"group__can__interface__gr.html#a15d22d5906d419ed1a7ca0968be00a04":[5,1,5,2], +"group__can__interface__gr.html#a176f42e68d9cba86b3594c40044b86c6":[5,1,5,4], +"group__can__interface__gr.html#a1debac19545140bdfe3c5fa8d53f1863":[5,1,8,3], +"group__can__interface__gr.html#a1f32fc9e5d3b33babf5905140e7a53af":[5,1,7,1], +"group__can__interface__gr.html#a21063f38e762cf29dfd3f5991ee936e2":[5,1,4,5], +"group__can__interface__gr.html#a2171ea8dff5e4b54e84728aa134854b6":[5,1,6,1], +"group__can__interface__gr.html#a24cfe29d7f6a29dfbac3c7011fc5b652":[5,1,4,10], +"group__can__interface__gr.html#a2aa0e772d6cb8c30bb76ce1324423464":[5,1,8,7], +"group__can__interface__gr.html#a2b76df7e4bfbdd9866cc906415e626c9":[5,1,5,6], +"group__can__interface__gr.html#a2bfa264f66c84606ebf9f9e8dc45b907":[5,1,4,9], +"group__can__interface__gr.html#a322b44b8e757887616b75035a8fd7027":[5,1,4,2], +"group__can__interface__gr.html#a3539c043c5868c59f76c736fe2bcadf4":[5,1,7,3], +"group__can__interface__gr.html#a360a314665607fc2d866c24e1608fd06":[5,1,4,6], +"group__can__interface__gr.html#a3662fb9a8fb81212043cadd90da704af":[5,1,8,4], +"group__can__interface__gr.html#a3e6eb8bae2b7f8af99a3ca3cbbacce22":[5,1,4,11], +"group__can__interface__gr.html#a5a782fc223b0ea5034c6676eaec6f2d4":[5,1,8,8], +"group__can__interface__gr.html#a62c0c62c2bf482c000b1b2a2c817a96f":[5,1,4,1], +"group__can__interface__gr.html#a69bd1a164443cf6f501489f4d31f4681":[5,1,5,0], +"group__can__interface__gr.html#a6e0f47a92f626a971c5197fca6545505":[5,1,4,13], +"group__can__interface__gr.html#a7239c03265659edcaf69dc9ea5e29ce3":[5,1,4,8], +"group__can__interface__gr.html#a811fbb0cb2c2263b1a7440a7e9d78239":[5,1,7,5], +"group__can__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,1,4,0], +"group__can__interface__gr.html#a886337af58da4f995529eba228fb9b7a":[5,1,8,5], +"group__can__interface__gr.html#a8941505f6f3ebd69825c4382184c580f":[5,1,6,2], +"group__can__interface__gr.html#a895532773c3204e1538191f155c7bac8":[5,1,8,1], +"group__can__interface__gr.html#a8a41139926d7c032247458d055071fda":[5,1,8,2], +"group__can__interface__gr.html#a93008ac105806db484e78e0582ca118c":[5,1,5,3], +"group__can__interface__gr.html#a96dcf869f4adc9cec686630082c7c60a":[5,1,8,6], +"group__can__interface__gr.html#a96ec94acab56690b3801e3c5fbd09fa2":[5,1,6,0], +"group__can__interface__gr.html#a9706173b2ed538efeb5ee4a952e2272f":[5,1,8,0], +"group__can__interface__gr.html#ab6883964c9d4bdf60616684e8d2459df":[5,1,7,2], +"group__can__interface__gr.html#ab7e8b863b379b786ad1af935aa3ef2e8":[5,1,6,3], +"group__can__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,1,4,4], +"group__can__interface__gr.html#abaabdc509cdaba7df9f56c6c76f3ae19":[5,1,7,0], +"group__can__interface__gr.html#ace17a0046cf2c6cdbcb0fd3202e460a0":[5,1,4,12], +"group__can__interface__gr.html#ad60ff24982cdb3ce38b8c17e0b4f0acc":[5,1,4,14], +"group__can__interface__gr.html#ada78e3124de6adf5a5d212f9ebc4bbe0":[5,1,7,4], +"group__can__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,1,4,3], +"group__can__interface__gr.html#ae0514834750c7452431717a881471e2b":[5,1,5,1], +"group__can__interface__gr.html#af19cdbb26d3496ed7dd63a59a7c7711f":[5,1,5,5] +}; diff --git a/CMSIS/Documentation/Driver/html/navtreeindex1.js b/CMSIS/Documentation/Driver/html/navtreeindex1.js new file mode 100644 index 0000000..bd1079e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtreeindex1.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX1 = +{ +"group__can__interface__gr.html#ga00ec0715f6755a49dae5b60dca182630":[5,1,21], +"group__can__interface__gr.html#ga0dcffd362b4093043442a030eaebbcfe":[5,1,22], +"group__can__interface__gr.html#ga1e3e364b64f2ab277399e3279cce5ef8":[5,1,14], +"group__can__interface__gr.html#ga1fe6cc207415de604975ae251e269361":[5,1,16], +"group__can__interface__gr.html#ga28226a6e223f9b95b4dafb7c2f48a855":[5,1,18], +"group__can__interface__gr.html#ga35f21cabe1637b1be964024a8f77721c":[5,1,12], +"group__can__interface__gr.html#ga38795d1ed135ce3bd87f31ef1596bccf":[5,1,26], +"group__can__interface__gr.html#ga4256d5b23ffcb27759a05f8e6b854f13":[5,1,11], +"group__can__interface__gr.html#ga45ab314f5121cf5a1b32d9adc600e0f7":[5,1,19], +"group__can__interface__gr.html#ga4f9bc7088704483388e14872c9d5385d":[5,1,20], +"group__can__interface__gr.html#ga676d6b567fc4ab3d44f5d7a50ec9419c":[5,1,25], +"group__can__interface__gr.html#ga6f634f126ac97daef2f3115aa7bfed7c":[5,1,15], +"group__can__interface__gr.html#ga7ceceac3e9aa0981c5cacfab88efb4eb":[5,1,10], +"group__can__interface__gr.html#ga88bb27a8525503a250cca7a2c4a5d07a":[5,1,17], +"group__can__interface__gr.html#ga8d9f0c5f03a8a81ab062b5aa57e5dea4":[5,1,24], +"group__can__interface__gr.html#gaa72ceb25ba67e279d7432404632deb44":[5,1,13], +"group__can__interface__gr.html#gaac07b9fdf614bf439414f5417aaa376e":[5,1,9], +"group__can__interface__gr.html#gabfcaeac9e2ca25936ba5a29f2d594e7e":[5,1,27], +"group__can__interface__gr.html#gafc37084df5eab32f593c2744d35cf647":[5,1,23], +"group__can__interface__gr.html#struct_a_r_m___c_a_n___c_a_p_a_b_i_l_i_t_i_e_s":[5,1,5], +"group__can__interface__gr.html#struct_a_r_m___c_a_n___m_s_g___i_n_f_o":[5,1,7], +"group__can__interface__gr.html#struct_a_r_m___c_a_n___o_b_j___c_a_p_a_b_i_l_i_t_i_e_s":[5,1,8], +"group__can__interface__gr.html#struct_a_r_m___c_a_n___s_t_a_t_u_s":[5,1,6], +"group__can__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___c_a_n":[5,1,4], +"group__can__mode__ctrls.html":[5,1,3,1], +"group__can__mode__ctrls.html#ga0453b8900ca3a0d5210ffd6a918a78e6":[5,1,3,1,2], +"group__can__mode__ctrls.html#ga398dd25256e644cd8d6506495a06bde8":[5,1,3,1,3], +"group__can__mode__ctrls.html#ga978ab3e8860f644dea780e87b3478ff4":[5,1,3,1,0], +"group__can__mode__ctrls.html#gae051a548bf785104a934908360529438":[5,1,3,1,1], +"group__can__obj__config__ctrls.html":[5,1,3,5], +"group__can__obj__config__ctrls.html#gaa9488554de0575bc821c9f65213c4cd0":[5,1,3,5,0], +"group__can__status__code__ctrls.html":[5,1,0], +"group__can__status__code__ctrls.html#ga0571c3c3e341ac0579aa713fdfdae77e":[5,1,0,4], +"group__can__status__code__ctrls.html#ga1380f80b709ca921634aecdaf34a24e5":[5,1,0,6], +"group__can__status__code__ctrls.html#ga33cbda311f4c2f2464e4070dee78b2f2":[5,1,0,5], +"group__can__status__code__ctrls.html#ga5332a311f44caec256d59087c705e1e9":[5,1,0,3], +"group__can__status__code__ctrls.html#ga5f72c295ee2b829a8ae33b96466cc0e8":[5,1,0,1], +"group__can__status__code__ctrls.html#ga911a65cc31304d57d283a21476d9ade7":[5,1,0,0], +"group__can__status__code__ctrls.html#ga9f753ba50045b28653fb3215ec2e4b8a":[5,1,0,7], +"group__can__status__code__ctrls.html#gaae6e827242137bc4d8976cd4ba73015f":[5,1,0,8], +"group__can__status__code__ctrls.html#gace2db0f930f935054c21242f735e1922":[5,1,0,2], +"group__can__timeseg__ctrls.html":[5,1,3,3], +"group__can__timeseg__ctrls.html#ga01183319a5a899eafea9ffe7af73d5ea":[5,1,3,3,0], +"group__can__timeseg__ctrls.html#ga03f1921ee97a7ebf5d767b6cacf40792":[5,1,3,3,1], +"group__can__timeseg__ctrls.html#ga11c12020b81a63a73a8b53e96a7e3dea":[5,1,3,3,4], +"group__can__timeseg__ctrls.html#ga76de056d56803cb7a0d01978ee981e80":[5,1,3,3,2], +"group__can__timeseg__ctrls.html#gab32e97fa4edf497c111dd3f0d8779269":[5,1,3,3,3], +"group__common__drv__gr.html":[5,0], +"group__common__drv__gr.html#ad180da20fbde1d3dafc074af87c19540":[5,0,1,0], +"group__common__drv__gr.html#adcd153bc4507926c792e86ebe74e6455":[5,0,1,1], +"group__common__drv__gr.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5":[5,0,2], +"group__common__drv__gr.html#struct_a_r_m___d_r_i_v_e_r___v_e_r_s_i_o_n":[5,0,1], +"group__eth__interface__gr.html":[5,2], +"group__eth__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5":[5,2,3,0], +"group__eth__interface__gr.html#a44b6cae894d7311dcdae7e93969c3c09":[5,2,3,1], +"group__eth__interface__gr.html#ab590318ac859d0e57e15c3dd6c62a605":[5,2,4,0], +"group__eth__interface__gr.html#gacf7db5320eb841b462a4af3c56cc9291":[5,2,5], +"group__eth__interface__gr.html#struct_a_r_m___e_t_h___l_i_n_k___i_n_f_o":[5,2,3], +"group__eth__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___a_d_d_r":[5,2,4], +"group__eth__interface__types1.html":[5,2,0], +"group__eth__interface__types1.html#ga24047d142be48bbc241e8d6eacb5cf7a":[5,2,0,2], +"group__eth__interface__types1.html#ga468c848ddf75d7925130171af1ec2ac7":[5,2,0,0], +"group__eth__interface__types1.html#gac0361b34fbec9c19840ad0349e4c388b":[5,2,0,1], +"group__eth__mac__configuration__ctrls.html":[5,2,1,1,1], +"group__eth__mac__configuration__ctrls.html#ga1d3ff8c63362b385548fe91730f20588":[5,2,1,1,1,9], +"group__eth__mac__configuration__ctrls.html#ga281dfed993b5666ed999709b9f28578f":[5,2,1,1,1,6], +"group__eth__mac__configuration__ctrls.html#ga29160c83a7b0952c64053d86789c6490":[5,2,1,1,1,1], +"group__eth__mac__configuration__ctrls.html#ga43792feab641c3c87eafb943351ab0f4":[5,2,1,1,1,8], +"group__eth__mac__configuration__ctrls.html#ga7272d2c55aeeeadbb95c591cbf6c1a2e":[5,2,1,1,1,7], +"group__eth__mac__configuration__ctrls.html#ga8acefed744d8397a1777b9fd0e6230d2":[5,2,1,1,1,2], +"group__eth__mac__configuration__ctrls.html#ga8c5b40d018ecfad05fe2546ba717c1d4":[5,2,1,1,1,0], +"group__eth__mac__configuration__ctrls.html#gab29ab9e295807f4c59ddd1c4642086d1":[5,2,1,1,1,10], +"group__eth__mac__configuration__ctrls.html#gab32765f35c35b672ee476278fe24a24e":[5,2,1,1,1,5], +"group__eth__mac__configuration__ctrls.html#gad5a7d4b5b8a31825eff1504e3828d8f6":[5,2,1,1,1,4], +"group__eth__mac__configuration__ctrls.html#gadb0fe2c5a1e21b0656d39c788ae22f36":[5,2,1,1,1,3], +"group__eth__mac__control.html":[5,2,1,1], +"group__eth__mac__ctrls.html":[5,2,1,1,0], +"group__eth__mac__ctrls.html#ga3a98c8a7ee5ed4b1ffd250eecaeefe5c":[5,2,1,1,0,1], +"group__eth__mac__ctrls.html#ga4afe66589216f566f529af52f9075fdf":[5,2,1,1,0,4], +"group__eth__mac__ctrls.html#ga530812ef349a2e297f23de72e660fe27":[5,2,1,1,0,3], +"group__eth__mac__ctrls.html#ga7819c7a1aa7bbc13dc42d0fd7e75a23c":[5,2,1,1,0,0], +"group__eth__mac__ctrls.html#gab332b58ba320e73864830dc42ad74181":[5,2,1,1,0,5], +"group__eth__mac__ctrls.html#gae0964364b81b38b6e1fbf7196f3be869":[5,2,1,1,0,2], +"group__eth__mac__flush__flag__ctrls.html":[5,2,1,1,2], +"group__eth__mac__flush__flag__ctrls.html#ga2d10ff33f4f4927820c6a17a2262b120":[5,2,1,1,2,1], +"group__eth__mac__flush__flag__ctrls.html#gac18950811038319960756f063e1ef6d4":[5,2,1,1,2,0], +"group__eth__mac__frame__transmit__ctrls.html":[5,2,1,3], +"group__eth__mac__frame__transmit__ctrls.html#ga91a923680ea0dad758b8950a3fbd237e":[5,2,1,3,1], +"group__eth__mac__frame__transmit__ctrls.html#gab7bd6dea5bb57240291db71e95c99d9c":[5,2,1,3,0], +"group__eth__mac__frame__transmit__ctrls.html#gade137f65dd345ae40e93c77d495f9b54":[5,2,1,3,2], +"group__eth__mac__interface__gr.html":[5,2,1], +"group__eth__mac__interface__gr.html#a0051111be2e389c3161da1c444746216":[5,2,1,4,0], +"group__eth__mac__interface__gr.html#a02837059933cd04b04bf795a7138f218":[5,2,1,5,5], +"group__eth__mac__interface__gr.html#a048317f84621fb38ed0bf8c8255e26f0":[5,2,1,6,0], +"group__eth__mac__interface__gr.html#a0f2ddb734e4242077275761400b26e35":[5,2,1,5,15], +"group__eth__mac__interface__gr.html#a142179445bfdbaaaf0d451f277fb0e96":[5,2,1,4,4], +"group__eth__mac__interface__gr.html#a1b4af3590d59ea4f8e845b4239a4e445":[5,2,1,4,13], +"group__eth__mac__interface__gr.html#a3286cc9c7624168b162aa3ce3cbe135e":[5,2,1,5,10], +"group__eth__mac__interface__gr.html#a3c5cb74e086417a01d0079f847a3fc8d":[5,2,1,4,10], +"group__eth__mac__interface__gr.html#a45b879a6df608f582d1866daff715798":[5,2,1,5,7], +"group__eth__mac__interface__gr.html#a466b724be2167ea7d9a14569062a8fa8":[5,2,1,5,9], +"group__eth__mac__interface__gr.html#a5a447f05a5fbfd35896aad9cd769511c":[5,2,1,4,2], +"group__eth__mac__interface__gr.html#a674b2306c64901e924b3cb7bb882f32f":[5,2,1,4,1], +"group__eth__mac__interface__gr.html#a6c2b80bbfe520f3e7808cf3d4aaedb45":[5,2,1,4,8], +"group__eth__mac__interface__gr.html#a6e0f47a92f626a971c5197fca6545505":[5,2,1,5,14], +"group__eth__mac__interface__gr.html#a730d6be6a7b868e0690d9548e77b7aae":[5,2,1,4,3], +"group__eth__mac__interface__gr.html#a7536d9b9818b20b6974a712e0449439b":[5,2,1,4,14], +"group__eth__mac__interface__gr.html#a7b701bac9d66886b5c6964b20c6ca55a":[5,2,1,4,9], +"group__eth__mac__interface__gr.html#a7fdea04bacd9c0e12792751055ef6238":[5,2,1,4,11], +"group__eth__mac__interface__gr.html#a881a863974d32f95d7829f768ac47aa2":[5,2,1,4,15], +"group__eth__mac__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,2,1,5,0], +"group__eth__mac__interface__gr.html#a8ae5a588bf4055bba3de73cfba78f7e8":[5,2,1,5,11], +"group__eth__mac__interface__gr.html#a8c8f1ac2bf053a9bac98c476646a6018":[5,2,1,4,12], +"group__eth__mac__interface__gr.html#a8f7a154565e652d976b9e65bf3516504":[5,2,1,4,6], +"group__eth__mac__interface__gr.html#a9fd725bb058c584a9ced9c579561cdf1":[5,2,1,5,1], +"group__eth__mac__interface__gr.html#aa34417c70cb8b43567c59aa530866cc7":[5,2,1,5,2], +"group__eth__mac__interface__gr.html#aaf5f5a3fa5d596a9136b4331f2b54bfc":[5,2,1,6,1], +"group__eth__mac__interface__gr.html#ab3f9560668a087606c40cd81b935396b":[5,2,1,4,7], +"group__eth__mac__interface__gr.html#ab6bdbdc7fdfcc52e027201738b88b431":[5,2,1,5,13], +"group__eth__mac__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,2,1,5,4], +"group__eth__mac__interface__gr.html#ac095aea379f23e30a0e51b1f3518ad37":[5,2,1,5,8], +"group__eth__mac__interface__gr.html#ac3efe9bdc31c3b1d7fd8eb82bbfb4c13":[5,2,1,5,16], +"group__eth__mac__interface__gr.html#ac640f929dc4d5bde3e4282c75b25c00d":[5,2,1,5,6], +"group__eth__mac__interface__gr.html#ac787d70407ce70e28724932fb32ef0ba":[5,2,1,4,5], +"group__eth__mac__interface__gr.html#acf081f5020f4ef1435bcff7333a70b93":[5,2,1,5,12], +"group__eth__mac__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,2,1,5,3], +"group__eth__mac__interface__gr.html#ga115b5c7e149aec2b181de760f5d83f60":[5,2,1,20], +"group__eth__mac__interface__gr.html#ga150fe30290275a4b32756f94208124e8":[5,2,1,15], +"group__eth__mac__interface__gr.html#ga2b13b230502736d8c7679b359dff20d0":[5,2,1,9], +"group__eth__mac__interface__gr.html#ga346fef040a0e9bac5762a04a306b1be7":[5,2,1,12], +"group__eth__mac__interface__gr.html#ga4b79f57d8624bb4410ee12c73a483993":[5,2,1,17], +"group__eth__mac__interface__gr.html#ga5bf58defdb239ed7dc948f1da147a1c3":[5,2,1,16], +"group__eth__mac__interface__gr.html#ga5ee86d6b0efab5329b9bc191c23a466d":[5,2,1,18], +"group__eth__mac__interface__gr.html#ga66308c1e791952047e974bd653037fae":[5,2,1,13], +"group__eth__mac__interface__gr.html#ga79dd38672749aeebd28f39d9b4f813ce":[5,2,1,24], +"group__eth__mac__interface__gr.html#ga7cc3d17c7312c5032202dfd9a915f24a":[5,2,1,14], +"group__eth__mac__interface__gr.html#ga85d9dc865af3702b71a514b18a588643":[5,2,1,22], +"group__eth__mac__interface__gr.html#ga86b15062c297384ad5842dd57b9d6b1d":[5,2,1,8], +"group__eth__mac__interface__gr.html#gaa7c6865fb09754be869778142466c5e4":[5,2,1,19], +"group__eth__mac__interface__gr.html#gac3e90c66058d20077f04ac8e8b8d0536":[5,2,1,21], +"group__eth__mac__interface__gr.html#gacb2c2ae06f32328775bffbdeaaabfb5d":[5,2,1,11], +"group__eth__mac__interface__gr.html#gacf42d11b171cd032f0ec1de6db2b6832":[5,2,1,10], +"group__eth__mac__interface__gr.html#gaded29ad58366e9222487db9944373c29":[5,2,1,23], +"group__eth__mac__interface__gr.html#gadfc95cb09c541a29a72da86963668726":[5,2,1,7], +"group__eth__mac__interface__gr.html#gae0697be4c4229601f3bfc17e2978ada6":[5,2,1,25], +"group__eth__mac__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___m_a_c":[5,2,1,5], +"group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___c_a_p_a_b_i_l_i_t_i_e_s":[5,2,1,4], +"group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___t_i_m_e":[5,2,1,6], +"group__eth__mac__time__control.html":[5,2,1,2], +"group__eth__mac__time__control.html#ga04c2469ba027b020bc6b5baf3b51cf74":[5,2,1,2,4], +"group__eth__mac__time__control.html#ga3c57b3150717fb1a8cbbbac6a9b7ff69":[5,2,1,2,2], +"group__eth__mac__time__control.html#ga5e867a003c06046d7944bcb5723e6049":[5,2,1,2,1], +"group__eth__mac__time__control.html#ga85cb862eba0934e958a8552022588db7":[5,2,1,2,5], +"group__eth__mac__time__control.html#gaca9f1c4259d0342e9717a362de1ccf41":[5,2,1,2,3], +"group__eth__mac__time__control.html#gad9a439b9727c032a7d851df2a7a622c2":[5,2,1,2,0], +"group__eth__mac__vlan__filter__ctrls.html":[5,2,1,1,3], +"group__eth__mac__vlan__filter__ctrls.html#ga2511c9e4c22a2b351ce2e454be1c9427":[5,2,1,1,3,0], +"group__eth__phy__interface__gr.html":[5,2,2], +"group__eth__phy__interface__gr.html#a0e25b2f267edc874f1bd785175fcf08a":[5,2,2,1,6], +"group__eth__phy__interface__gr.html#a7dfc7cf346c80e7fdb2fe4cea2c61161":[5,2,2,1,4], +"group__eth__phy__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,2,2,1,0], +"group__eth__phy__interface__gr.html#a9f9e7173bf8fed4d774fa48da53739ba":[5,2,2,1,1], +"group__eth__phy__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,2,2,1,3], +"group__eth__phy__interface__gr.html#ac162bfaf93512fa0966bfbb923c45463":[5,2,2,1,7], +"group__eth__phy__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,2,2,1,2], +"group__eth__phy__interface__gr.html#ae6686344f4d6afa0881d1e545c898a3d":[5,2,2,1,5], +"group__eth__phy__interface__gr.html#ga26ea7e1e9825b959284241ebff6eea3f":[5,2,2,6], +"group__eth__phy__interface__gr.html#ga4085cd24ebe33b78d51a3c003da4a5ba":[5,2,2,10], +"group__eth__phy__interface__gr.html#ga6850d33d699d9deee4e983a2c99e9734":[5,2,2,4], +"group__eth__phy__interface__gr.html#ga8c79dcd7a12656403f3befab3c8605a2":[5,2,2,11], +"group__eth__phy__interface__gr.html#ga987d5dd36f179192721c03df37d93e87":[5,2,2,2], +"group__eth__phy__interface__gr.html#ga9aa688c951f01ed9ca7c88cf51be8a09":[5,2,2,9], +"group__eth__phy__interface__gr.html#gaba0f92561754dad8f8f03feb1cf2855e":[5,2,2,7], +"group__eth__phy__interface__gr.html#gacf2332a7fa2d84694b8e5f0838135589":[5,2,2,5], +"group__eth__phy__interface__gr.html#gaedd8b5650a1259d572a1f303d3e2c01c":[5,2,2,8], +"group__eth__phy__interface__gr.html#gaf690fde16281b25f2ffa07f9c4e8e240":[5,2,2,3], +"group__eth__phy__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___p_h_y":[5,2,2,1], +"group__eth__phy__mode__ctrls.html":[5,2,2,0], +"group__eth__phy__mode__ctrls.html#ga046605398ceae99a176e6f82432ae710":[5,2,2,0,2], +"group__eth__phy__mode__ctrls.html#ga5d06a94867c89cd311b6e279669321e3":[5,2,2,0,4], +"group__eth__phy__mode__ctrls.html#ga5f7e46cda8ab3c774fe7ce0a8a1ba3ec":[5,2,2,0,6], +"group__eth__phy__mode__ctrls.html#ga6a8c54f8fed3e5f68bd04eb715d10ab9":[5,2,2,0,5], +"group__eth__phy__mode__ctrls.html#ga8d68719e07c7af449b57c5df802376c8":[5,2,2,0,7], +"group__eth__phy__mode__ctrls.html#gabc7acc4ebe828c3d0825400e14ad20f0":[5,2,2,0,0], +"group__eth__phy__mode__ctrls.html#gace797b3cd143be22f47c3ef61b20e14d":[5,2,2,0,3], +"group__eth__phy__mode__ctrls.html#gad1e8b2c8c210fa36949db9a34a993657":[5,2,2,0,1], +"group__execution__status.html":[5,0,0], +"group__execution__status.html#ga0bac892205bb2d586b822e8b178ab310":[5,0,0,3], +"group__execution__status.html#ga13c1123319c7b9a4735d63447f35116b":[5,0,0,2], +"group__execution__status.html#ga2efa59e480d82697795439220e6884e4":[5,0,0,4], +"group__execution__status.html#ga2f627075447749bb368d3b768be107cb":[5,0,0,1], +"group__execution__status.html#ga5a2b5d68f6649598d099b88c0eaee3e5":[5,0,0,6], +"group__execution__status.html#ga85752c5de59e8adeb001e35ff5be6be7":[5,0,0,0], +"group__execution__status.html#gac781d4b70ce17c4c2efe2db045be751c":[5,0,0,5], +"group__flash__interface__gr.html":[5,6], +"group__flash__interface__gr.html#a04c173610dd0a545ecae308e342aafb0":[5,6,4,1], +"group__flash__interface__gr.html#a204a3f4fa39b9c007f9784d3e4af4667":[5,6,1,1], +"group__flash__interface__gr.html#a25076bd7274af5d3b0af6380ed1f0331":[5,6,3,1], +"group__flash__interface__gr.html#a2d1eb2b5c3ee21ba5c92c37e89412567":[5,6,3,2], +"group__flash__interface__gr.html#a429fc193f1ec62858219ab8749c563ae":[5,6,3,6], +"group__flash__interface__gr.html#a483c41066757e2865bf3a27a2a627a54":[5,6,2,4], +"group__flash__interface__gr.html#a50947f9a42bbaa2d68d6e5079150d7bf":[5,6,2,1], +"group__flash__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a":[5,6,5,0], +"group__flash__interface__gr.html#a61eb63d26b2fa6c2971603ceccffb14b":[5,6,1,0], +"group__flash__interface__gr.html#a7d37def484362c6e97a2d75144080b1d":[5,6,2,2], +"group__flash__interface__gr.html#a85c3826bf20669d38e466dfd376994db":[5,6,2,5], +"group__flash__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,6,3,0], +"group__flash__interface__gr.html#a8dfb9d5160358e45293bba527762238d":[5,6,2,0], +"group__flash__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9":[5,6,2,3], +"group__flash__interface__gr.html#aa8d183302fdfa4a6892f1d80300cdb32":[5,6,5,1], +"group__flash__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,6,3,4], +"group__flash__interface__gr.html#ad9d78f9fe07aabf12b23b95239818b55":[5,6,3,7], +"group__flash__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,6,3,3], +"group__flash__interface__gr.html#add296ba516c8fc17ba51e30f2a00f0a9":[5,6,4,0], +"group__flash__interface__gr.html#adec45569a2f6f0d915a206f8f19107bd":[5,6,3,5], +"group__flash__interface__gr.html#ae64d4ee61b7a7ee0b38a0ef2b61f1db2":[5,6,3,10], +"group__flash__interface__gr.html#ae873705c743d94572fb6500421e15760":[5,6,3,8], +"group__flash__interface__gr.html#af5ec2b569c193fc5024c2739f46b328a":[5,6,4,2], +"group__flash__interface__gr.html#afc1db6f33f777784f3c95efc816d4856":[5,6,3,9], +"group__flash__interface__gr.html#ga06885c0d4587d5a23f97614a8b849ef1":[5,6,16], +"group__flash__interface__gr.html#ga0b2b4fe5a7be579cf3644995a765ea20":[5,6,14], +"group__flash__interface__gr.html#ga1cfe24b2ffa571ee50ae544bd922b604":[5,6,7], +"group__flash__interface__gr.html#ga223138342383219896ed7e255faeb99a":[5,6,12], +"group__flash__interface__gr.html#ga27c23c998032cd47cb47293c0185ee5d":[5,6,8], +"group__flash__interface__gr.html#ga6cbaebe069d31d56c70b1f8f847e2d55":[5,6,15], +"group__flash__interface__gr.html#ga947f24ea4042093fdb5605a68ae74f9d":[5,6,13], +"group__flash__interface__gr.html#ga97b75555b5433b268add81f2e60f095a":[5,6,18], +"group__flash__interface__gr.html#gaa5b4bbe529d620d4ad4825588a4c4cf0":[5,6,9], +"group__flash__interface__gr.html#gaa8baa4618ea33568f8b3752afb2ab5a2":[5,6,11], +"group__flash__interface__gr.html#gabeb4ad43b1e6fa4ed956cd5c9371d327":[5,6,6], +"group__flash__interface__gr.html#gac047b7509356e888502e0424a9d189ae":[5,6,17], +"group__flash__interface__gr.html#gae23af293e9f8a67cdb19c7d0d562d415":[5,6,10], +"group__flash__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___f_l_a_s_h":[5,6,3], +"group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___c_a_p_a_b_i_l_i_t_i_e_s":[5,6,4], +"group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___i_n_f_o":[5,6,2], +"group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_e_c_t_o_r":[5,6,1], +"group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_t_a_t_u_s":[5,6,5], +"group__i2c__address__flags.html":[5,3,2], +"group__i2c__address__flags.html#ga16be1861b90774bf062feab2dbb829a4":[5,3,2,0], +"group__i2c__address__flags.html#ga337f4f1aa082e9b593b2dcd43c50134e":[5,3,2,1], +"group__i2c__bus__speed__ctrls.html":[5,3,1,1], +"group__i2c__bus__speed__ctrls.html#ga0aaa6398280fdd7ad651d7d6d44c863f":[5,3,1,1,0], +"group__i2c__bus__speed__ctrls.html#ga10aae5a8c7fcc90e514c5fb7393056ec":[5,3,1,1,3], +"group__i2c__bus__speed__ctrls.html#ga2615262062e0327ab478ec85675ca649":[5,3,1,1,2], +"group__i2c__bus__speed__ctrls.html#ga39f49ef4cd1100a8d9dc9003329e5ecd":[5,3,1,1,1], +"group__i2c__control__codes.html":[5,3,1,0], +"group__i2c__control__codes.html#ga35733133237d65146abd9449f5353a7f":[5,3,1,0,1], +"group__i2c__control__codes.html#ga661e91aaa642d10ba80e3cc72f263040":[5,3,1,0,3], +"group__i2c__control__codes.html#ga69d130b9f8aa34d6df5334ab67c74307":[5,3,1,0,0], +"group__i2c__control__codes.html#gadacf04578770faca4b3eaae34b2c5f03":[5,3,1,0,2] +}; diff --git a/CMSIS/Documentation/Driver/html/navtreeindex2.js b/CMSIS/Documentation/Driver/html/navtreeindex2.js new file mode 100644 index 0000000..e2cde5c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtreeindex2.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX2 = +{ +"group__i2c__control__gr.html":[5,3,1], +"group__i2c__interface__gr.html":[5,3], +"group__i2c__interface__gr.html#a12d2689d6e93985e64b9561a8e4e917b":[5,3,3,8], +"group__i2c__interface__gr.html#a2148ffb99828aeaced6a5655502434ac":[5,3,5,2], +"group__i2c__interface__gr.html#a43b1d210c48f4361c5054ba69bcae702":[5,3,5,5], +"group__i2c__interface__gr.html#a4ffaaf168a9f43e98d710abff5861ed5":[5,3,4,0], +"group__i2c__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a":[5,3,5,0], +"group__i2c__interface__gr.html#a5dfa74ca82e0af995d43da61e08c3103":[5,3,3,1], +"group__i2c__interface__gr.html#a6b29e4f37f4482274af785ad5ffe96a7":[5,3,5,1], +"group__i2c__interface__gr.html#a6e0f47a92f626a971c5197fca6545505":[5,3,3,10], +"group__i2c__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,3,3,0], +"group__i2c__interface__gr.html#a9e58f7ea5fd9476e06b45c70b6696b95":[5,3,3,5], +"group__i2c__interface__gr.html#aa135ff2f4832d35ceb5d7e248159b981":[5,3,3,6], +"group__i2c__interface__gr.html#ab0480980f67e0ebe0461ccea7873a65b":[5,3,3,2], +"group__i2c__interface__gr.html#ab3e3c8eeeae7fbe3c51dcb3d4104af24":[5,3,5,4], +"group__i2c__interface__gr.html#ab65804439f6f5beda8da30381b0ad22d":[5,3,5,3], +"group__i2c__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,3,3,4], +"group__i2c__interface__gr.html#ad421a9b9b07fd6d3e6537396c2b98788":[5,3,3,9], +"group__i2c__interface__gr.html#ad4b47653bc47cdb02965dd311e88b96a":[5,3,3,11], +"group__i2c__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,3,3,3], +"group__i2c__interface__gr.html#ae9e3b81b352d4564fd2337fdf0e5488c":[5,3,3,7], +"group__i2c__interface__gr.html#ga19db20ad8d7fde84d07f6db4d75f4b7c":[5,3,16], +"group__i2c__interface__gr.html#ga24277c48248a09b0dd7f12bbe22ce13c":[5,3,6], +"group__i2c__interface__gr.html#ga30d8bf600b6b3182a1f867407b3d6e75":[5,3,10], +"group__i2c__interface__gr.html#ga734a69200e063fdbfb5110062afe9329":[5,3,11], +"group__i2c__interface__gr.html#ga79d2f7d01b3a681d1cf0d70ac6692696":[5,3,9], +"group__i2c__interface__gr.html#ga828f5fa289d065675ef78a9a73d129dc":[5,3,17], +"group__i2c__interface__gr.html#ga8bf4214580149d5a5d2360f71f0feb94":[5,3,12], +"group__i2c__interface__gr.html#ga956bd87590c7fb6e23609a0abfb5412c":[5,3,7], +"group__i2c__interface__gr.html#gaba4e0f3eb4018e7dafd51b675c465f3e":[5,3,18], +"group__i2c__interface__gr.html#gad20e6731f627aa7b9d6e99a50806122e":[5,3,8], +"group__i2c__interface__gr.html#gad4f93d2895794b416dc8d8e9de91c05e":[5,3,19], +"group__i2c__interface__gr.html#gae3c9abccd1d377385d3d4cfe29035164":[5,3,15], +"group__i2c__interface__gr.html#gafa22504bcf88a85584dfe6e0dd270ad5":[5,3,13], +"group__i2c__interface__gr.html#gafe164f30eba78f066272373b98a62cd4":[5,3,14], +"group__i2c__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___i2_c":[5,3,3], +"group__i2c__interface__gr.html#struct_a_r_m___i2_c___c_a_p_a_b_i_l_i_t_i_e_s":[5,3,4], +"group__i2c__interface__gr.html#struct_a_r_m___i2_c___s_t_a_t_u_s":[5,3,5], +"group__mci__bus__data__width__ctrls.html":[5,4,1,2], +"group__mci__bus__data__width__ctrls.html#ga3bb99a2d98ba9fb8c5bc97fa2b8ef469":[5,4,1,2,2], +"group__mci__bus__data__width__ctrls.html#ga7b31f81ae703229095fe9efcfbe80b47":[5,4,1,2,4], +"group__mci__bus__data__width__ctrls.html#gaa09a00d810a4dfd1d1824311ee290585":[5,4,1,2,0], +"group__mci__bus__data__width__ctrls.html#gaa28150d8c3789e8cf1bcda318f74a28c":[5,4,1,2,1], +"group__mci__bus__data__width__ctrls.html#gaccb174bd131f8fd8cd9a56439a8ebb60":[5,4,1,2,3], +"group__mci__bus__speed__ctrls.html":[5,4,1,1], +"group__mci__bus__speed__ctrls.html#ga0473c44a7b65044b3c6a8e7012009a4a":[5,4,1,1,2], +"group__mci__bus__speed__ctrls.html#ga04da920a5cac99eab9784527057f1b9c":[5,4,1,1,6], +"group__mci__bus__speed__ctrls.html#ga601fa8b27ab2e5f6d90c93d54c8f412d":[5,4,1,1,0], +"group__mci__bus__speed__ctrls.html#ga9f326c02391d965918ae619b912b81e7":[5,4,1,1,4], +"group__mci__bus__speed__ctrls.html#gaabda746ac7d6b4497358ff655a8ea6be":[5,4,1,1,1], +"group__mci__bus__speed__ctrls.html#gad2bab563e7bbb4bcf6bdabe6a13dadf4":[5,4,1,1,5], +"group__mci__bus__speed__ctrls.html#gae32422631052307b3c4d269b25415907":[5,4,1,1,3], +"group__mci__card__power__ctrls.html":[5,4,4], +"group__mci__card__power__ctrls.html#ga288fbd80b384739a80e8f3ec31205cf5":[5,4,4,0], +"group__mci__card__power__ctrls.html#ga2ce8e379c3691da3b51c9c97d61770ef":[5,4,4,2], +"group__mci__card__power__ctrls.html#ga5304b3b6cadc5113f841c3d526ab5db6":[5,4,4,6], +"group__mci__card__power__ctrls.html#ga565ecd36c8d0379fb4172da577cc540d":[5,4,4,1], +"group__mci__card__power__ctrls.html#ga6929c98a6bc8d898939a95111509220b":[5,4,4,3], +"group__mci__card__power__ctrls.html#ga91a7201173cc092eaf7f0bcee028871e":[5,4,4,4], +"group__mci__card__power__ctrls.html#gaaf389e0a139d5808dff8ebb6897d4c7b":[5,4,4,5], +"group__mci__cmd__line__ctrls.html":[5,4,1,3], +"group__mci__cmd__line__ctrls.html#gaadf8667985731964d57d1ed672e90fd3":[5,4,1,3,1], +"group__mci__cmd__line__ctrls.html#gaaed404312d9bc073e3489779a911c7dc":[5,4,1,3,0], +"group__mci__control__gr.html":[5,4,1], +"group__mci__driver__strength__ctrls.html":[5,4,1,4], +"group__mci__driver__strength__ctrls.html#ga078d3c3bc7c9335b92e6445a0abafc46":[5,4,1,4,1], +"group__mci__driver__strength__ctrls.html#ga3da11696d1fcd3930eb7e70fe097d747":[5,4,1,4,2], +"group__mci__driver__strength__ctrls.html#ga64eb1c4847711a262f084c361b60a912":[5,4,1,4,0], +"group__mci__driver__strength__ctrls.html#ga8185f82b1d8857a3f0eb461d664f2b3d":[5,4,1,4,3], +"group__mci__event__gr.html":[5,4,0], +"group__mci__event__gr.html#ga373aeb3eca0e4c6d159312488a130442":[5,4,0,4], +"group__mci__event__gr.html#ga5d2cee5ba6d0e40ad505983155706c29":[5,4,0,7], +"group__mci__event__gr.html#ga614e7c7226adbaa8ec4165bf8b87ef27":[5,4,0,6], +"group__mci__event__gr.html#ga75a050fdfe04e6816e96c938d6a6c197":[5,4,0,8], +"group__mci__event__gr.html#ga8161f3960ddf2a3cdc3c4c83148c6099":[5,4,0,9], +"group__mci__event__gr.html#ga92ba748f9324ec13898f10456f17c8cc":[5,4,0,1], +"group__mci__event__gr.html#gab79b3ab4dcd03c38df1e173fa903d822":[5,4,0,3], +"group__mci__event__gr.html#gabc3c468dedaed890683360f2c5c65bea":[5,4,0,5], +"group__mci__event__gr.html#gae2cf8ef238c092e94e96a01602f3a23c":[5,4,0,0], +"group__mci__event__gr.html#gae69356c75d55103d93ef91ac1bc02b49":[5,4,0,2], +"group__mci__event__gr.html#gafa8cbcd597a05c64901eeb777cc0b74f":[5,4,0,10], +"group__mci__interface__gr.html":[5,4], +"group__mci__interface__gr.html#a02df0162d3a653c36158a7b6a76f6175":[5,4,6,2], +"group__mci__interface__gr.html#a072a194948489d4dbd2409b94fdca56b":[5,4,6,25], +"group__mci__interface__gr.html#a084188480d589cdc8d3e164b9f41bea9":[5,4,6,13], +"group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe":[5,4,6,27], +"group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe":[5,4,7,7], +"group__mci__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d":[5,4,6,6], +"group__mci__interface__gr.html#a1ee73c19020d5f1bedf7c013d0e5f730":[5,4,6,17], +"group__mci__interface__gr.html#a21d4bc1a03e161bd33693619039a6afa":[5,4,7,5], +"group__mci__interface__gr.html#a2655d3422b720097b091a28e8bbcea8f":[5,4,7,3], +"group__mci__interface__gr.html#a2dc63353d6869c0ea2d3d29155c88b49":[5,4,5,12], +"group__mci__interface__gr.html#a2e8bd27f2c5c3093c4fec557890b97d4":[5,4,6,26], +"group__mci__interface__gr.html#a3303194ea68bd1094841d4f958f6dbbf":[5,4,6,24], +"group__mci__interface__gr.html#a3c3df9641e7216dd20d3bc395dc4948f":[5,4,6,19], +"group__mci__interface__gr.html#a414baec222a72be862e262f02b821dce":[5,4,6,3], +"group__mci__interface__gr.html#a5648b4224e0346ba5e20fefc7e83aee8":[5,4,5,1], +"group__mci__interface__gr.html#a56e426979c3872254c156e9ae7eead5b":[5,4,7,1], +"group__mci__interface__gr.html#a598ae4a196316d6dcb97d07fd337ecdd":[5,4,7,4], +"group__mci__interface__gr.html#a5c3dcb2f8aa6f65408d9a6741abb7b3e":[5,4,6,15], +"group__mci__interface__gr.html#a5e38e4ee9cebcc99904e287adc8e6217":[5,4,6,22], +"group__mci__interface__gr.html#a617bf7fb73b49a20398b90098ecc3ec0":[5,4,6,14], +"group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825":[5,4,6,21], +"group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825":[5,4,7,6], +"group__mci__interface__gr.html#a639bebbcb9a3a743f4f232fec82e2bfc":[5,4,6,20], +"group__mci__interface__gr.html#a6e0f47a92f626a971c5197fca6545505":[5,4,5,11], +"group__mci__interface__gr.html#a73334c737658b227ef3097343d5c78bb":[5,4,5,5], +"group__mci__interface__gr.html#a808703d6c70a501464e156e55f5cabd2":[5,4,6,9], +"group__mci__interface__gr.html#a83ecf7d4472c55362750ef72d8f8f47d":[5,4,6,12], +"group__mci__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,4,5,0], +"group__mci__interface__gr.html#a950669a8c88b49c8da4c56163b45a79d":[5,4,6,8], +"group__mci__interface__gr.html#a9739c230a13b46482feb5475d257e482":[5,4,6,28], +"group__mci__interface__gr.html#aa22ef7c7597e90835bd67d5795ba757e":[5,4,7,0], +"group__mci__interface__gr.html#aa4285dd6b0f9b8ca41b6710a478ad641":[5,4,5,6], +"group__mci__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa":[5,4,6,5], +"group__mci__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,4,5,4], +"group__mci__interface__gr.html#abb03f0187e4658f417b5a24cac33eed9":[5,4,6,23], +"group__mci__interface__gr.html#abb1a604b0ee4f7e3510409747890e41e":[5,4,6,10], +"group__mci__interface__gr.html#abcabfa504d3226c723d9bf5debe2f164":[5,4,6,1], +"group__mci__interface__gr.html#abeb0330f882ebed8cabde782652233dd":[5,4,6,4], +"group__mci__interface__gr.html#acd5f6dce3a548d12c292e8cd17e4e9e2":[5,4,6,11], +"group__mci__interface__gr.html#adc63bab660e8304d78faa1ac429e792b":[5,4,5,9], +"group__mci__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,4,5,3], +"group__mci__interface__gr.html#ae07ceef1800252495a79f225142740e7":[5,4,6,16], +"group__mci__interface__gr.html#ae51ec82c310aff0edda6220f9ebfd822":[5,4,5,2], +"group__mci__interface__gr.html#aee6f8b38f83a51ac05cc4841524b708d":[5,4,5,7], +"group__mci__interface__gr.html#af47e73979b028c86c7c1fbe39b095140":[5,4,6,0], +"group__mci__interface__gr.html#af4f95215005e38700ef527714932b361":[5,4,6,7], +"group__mci__interface__gr.html#afa8103cc20ba96420b7471455bbb87e4":[5,4,5,10], +"group__mci__interface__gr.html#afca11cd2ce661c67455a6d75328848cc":[5,4,7,2], +"group__mci__interface__gr.html#afe5de4fdc6657aa19fa87577a8d460e5":[5,4,6,18], +"group__mci__interface__gr.html#affefb5c1d352082933c2fb0620b37212":[5,4,5,8], +"group__mci__interface__gr.html#ga012fca8f1ce5366fce14b708c771c635":[5,4,15], +"group__mci__interface__gr.html#ga0d14651f6788c1ffd81544602565faf1":[5,4,8], +"group__mci__interface__gr.html#ga19752749d04ed22dc91c4294645e0244":[5,4,13], +"group__mci__interface__gr.html#ga3418183015dbf3025b94eebaedb00ab1":[5,4,9], +"group__mci__interface__gr.html#ga3d70286918405ac81fa795c7d09dc6fd":[5,4,16], +"group__mci__interface__gr.html#ga3dfcf7b7186b711f9b63a096be816fe5":[5,4,19], +"group__mci__interface__gr.html#ga5a431da89feabc2b4bc0c27943dff6f2":[5,4,17], +"group__mci__interface__gr.html#ga6f34d4ab362e596ddaf23aac093268cf":[5,4,11], +"group__mci__interface__gr.html#ga7e5a78b6e6409189833a0b72a0a3c48a":[5,4,10], +"group__mci__interface__gr.html#ga8d61aa42ce78d1864fa928c1f273cbd9":[5,4,21], +"group__mci__interface__gr.html#gaac2dbd1c1a98436938c5d0d6248cb700":[5,4,22], +"group__mci__interface__gr.html#gaaec681bcd8e6811c5743e33ee0f35ed1":[5,4,18], +"group__mci__interface__gr.html#gab161f80e0eda2815f3e0ebbba1314ff0":[5,4,14], +"group__mci__interface__gr.html#gaec0506a2aa4ae75cf6bc02528f36fe30":[5,4,20], +"group__mci__interface__gr.html#gaef8183e77797e74997551d03646d42c2":[5,4,12], +"group__mci__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___m_c_i":[5,4,5], +"group__mci__interface__gr.html#struct_a_r_m___m_c_i___c_a_p_a_b_i_l_i_t_i_e_s":[5,4,6], +"group__mci__interface__gr.html#struct_a_r_m___m_c_i___s_t_a_t_u_s":[5,4,7], +"group__mci__mode__ctrls.html":[5,4,1,0], +"group__mci__mode__ctrls.html#ga04cf174b0ef13240f26225bf8e45a4a0":[5,4,1,0,13], +"group__mci__mode__ctrls.html#ga09a58821e42595f0c2e55f8cc2d32ceb":[5,4,1,0,9], +"group__mci__mode__ctrls.html#ga19fd7d3b74ac48ca74a2e138b3ee9963":[5,4,1,0,11], +"group__mci__mode__ctrls.html#ga21e403e8c3fa8cc75431a513813f0a16":[5,4,1,0,5], +"group__mci__mode__ctrls.html#ga78068f519139f2ae7b09e0608070aaf6":[5,4,1,0,4], +"group__mci__mode__ctrls.html#ga7f982d2e5aec768307d35a83c65fb3ef":[5,4,1,0,0], +"group__mci__mode__ctrls.html#ga876d964d0eeacdb16e93f7558a544587":[5,4,1,0,3], +"group__mci__mode__ctrls.html#ga889473fbfbdcb89aab4d53cc8a13f615":[5,4,1,0,6], +"group__mci__mode__ctrls.html#ga8b7571e37520c07d8ef4f697f3886715":[5,4,1,0,2], +"group__mci__mode__ctrls.html#ga98853f60bdc085aeeccd66f7bdf22d3d":[5,4,1,0,7], +"group__mci__mode__ctrls.html#gaaa10c5aa7a8108aa59c3734b3eec2e3a":[5,4,1,0,12], +"group__mci__mode__ctrls.html#gabd3af448e26da5657c1c5a03330476b7":[5,4,1,0,8], +"group__mci__mode__ctrls.html#gac4907319499072fddf61f2f83b0dd966":[5,4,1,0,14], +"group__mci__mode__ctrls.html#gae97b1a819a5d326b1f1009b0d6d48b5a":[5,4,1,0,10], +"group__mci__mode__ctrls.html#gaf7ede525eabc618fbbb9f7a294c8ed96":[5,4,1,0,1], +"group__mci__send__command__flags__ctrls.html":[5,4,2], +"group__mci__send__command__flags__ctrls.html#ga30bd304652d4f870ee7ce61c266a9348":[5,4,2,12], +"group__mci__send__command__flags__ctrls.html#ga497abf878c6e12f54cc7ddb92da76c4a":[5,4,2,4], +"group__mci__send__command__flags__ctrls.html#ga68e879799bb27a1b13baf57ed19d719d":[5,4,2,6], +"group__mci__send__command__flags__ctrls.html#ga6ab3f4c1a2bf0fdb81fbcf7a5698f2de":[5,4,2,5], +"group__mci__send__command__flags__ctrls.html#ga70934cef80884e8c75fb4eebf8452118":[5,4,2,0], +"group__mci__send__command__flags__ctrls.html#ga81606bd94ce782e2c3764b913f929f60":[5,4,2,8], +"group__mci__send__command__flags__ctrls.html#ga8aa566f69aa74ed416213df6ca3267bd":[5,4,2,7], +"group__mci__send__command__flags__ctrls.html#ga8c55bc0a310630d49810802ccd1bb10d":[5,4,2,13], +"group__mci__send__command__flags__ctrls.html#gaa1d541b0edf32ec05e68d623c727ef9c":[5,4,2,2], +"group__mci__send__command__flags__ctrls.html#gaa5ddf1cf772b234e3c247039effd0e7b":[5,4,2,1], +"group__mci__send__command__flags__ctrls.html#gab2bfeedf1dc2df1872ebbcc559a7385a":[5,4,2,9], +"group__mci__send__command__flags__ctrls.html#gab82c472e4ca3fca12ae3291e25997f00":[5,4,2,15], +"group__mci__send__command__flags__ctrls.html#gab9df5169b37621764f8bb0f93db5281a":[5,4,2,14], +"group__mci__send__command__flags__ctrls.html#gabc31b6b26988998c84c92a9a698fd5dc":[5,4,2,10], +"group__mci__send__command__flags__ctrls.html#gac49c7b39a7c51bd2193e048835bec2fb":[5,4,2,3], +"group__mci__send__command__flags__ctrls.html#gae04254f51dfd9838583206cae0a5f8f7":[5,4,2,11], +"group__mci__transfer__ctrls.html":[5,4,3], +"group__mci__transfer__ctrls.html#ga4ced782e7c0c70d5f0edbddd1e48323b":[5,4,3,2], +"group__mci__transfer__ctrls.html#gaa6f3be235a9dce5c66be8fe64f399846":[5,4,3,0], +"group__mci__transfer__ctrls.html#gac7db0cffd571e60758627d889ba7a432":[5,4,3,3], +"group__mci__transfer__ctrls.html#gaddc60aab15f75993a99f98f71ddbd50c":[5,4,3,1], +"group__nand__bus__mode__codes.html":[5,5,3,1], +"group__nand__bus__mode__codes.html#ga10a1ef3be69bfa7e6cc657bee751a077":[5,5,3,1,13], +"group__nand__bus__mode__codes.html#ga13c102201d6021db184a2f068656c518":[5,5,3,1,2], +"group__nand__bus__mode__codes.html#ga3ebb54a1ae971cd34f3c8fc9ff3ab6d5":[5,5,3,1,18], +"group__nand__bus__mode__codes.html#ga42560a1f046e20cc4956276156c4ce25":[5,5,3,1,16], +"group__nand__bus__mode__codes.html#ga465ae06a6e097959620346304182e273":[5,5,3,1,19], +"group__nand__bus__mode__codes.html#ga475a339e929eca46e11bc8a7b330aa45":[5,5,3,1,4], +"group__nand__bus__mode__codes.html#ga4a3524e0eba994b3a66e06cde877f0f6":[5,5,3,1,9], +"group__nand__bus__mode__codes.html#ga5839be0b4b2eb930ec039a3403b5e89e":[5,5,3,1,12], +"group__nand__bus__mode__codes.html#ga709d51a5215cd23ce2d85aec57141456":[5,5,3,1,7], +"group__nand__bus__mode__codes.html#ga77348df5f5c2c96bcaeec60b6da02c1b":[5,5,3,1,11], +"group__nand__bus__mode__codes.html#ga7f9e8416c4a4e20c4a04323e39f2100d":[5,5,3,1,14], +"group__nand__bus__mode__codes.html#ga82b8261b3d0d85881535adada318a7df":[5,5,3,1,1], +"group__nand__bus__mode__codes.html#ga8a2d599082b9fe56cee1c6454bb3c6a1":[5,5,3,1,21], +"group__nand__bus__mode__codes.html#ga971e574ac412bbba445055e9afc384ba":[5,5,3,1,3], +"group__nand__bus__mode__codes.html#gaa63d75f5f2b48a7345a066d58de1bd23":[5,5,3,1,10], +"group__nand__bus__mode__codes.html#gaad2e7807292d84a5070143626f5c2756":[5,5,3,1,17], +"group__nand__bus__mode__codes.html#gac7743aeb6411b97f9fc6a24b556f4963":[5,5,3,1,0], +"group__nand__bus__mode__codes.html#gacbc4e07e1af6ef0e4c656428e81464a9":[5,5,3,1,6], +"group__nand__bus__mode__codes.html#gad38354e4a34adbf881afc7f89ff06e89":[5,5,3,1,20], +"group__nand__bus__mode__codes.html#gaed6154fb03b5516faf0bfd11d7a46309":[5,5,3,1,5], +"group__nand__bus__mode__codes.html#gaee3cad14ce2b8b9af69149bf74597791":[5,5,3,1,8], +"group__nand__bus__mode__codes.html#gaeee1853dea5e96cb19d2596cc0e70169":[5,5,3,1,15], +"group__nand__control__codes.html":[5,5,3,0], +"group__nand__control__codes.html#ga1bffc9f341e704ee0e845d86a2989921":[5,5,3,0,3], +"group__nand__control__codes.html#ga2d3356f5b47871c465ae7136a2c533f4":[5,5,3,0,1], +"group__nand__control__codes.html#ga5d1d46198404fe115b013bdae7af2a2f":[5,5,3,0,2], +"group__nand__control__codes.html#ga9b063c3078e86b50d4aa892518b2e2d8":[5,5,3,0,0], +"group__nand__control__codes.html#gaab6dea1b565aeb53e360876a4e50783c":[5,5,3,0,4], +"group__nand__control__gr.html":[5,5,3], +"group__nand__data__bus__width__codes.html":[5,5,3,2], +"group__nand__data__bus__width__codes.html#ga49e0e3a946a4d9f26dbd5b32ccc3b2f3":[5,5,3,2,1], +"group__nand__data__bus__width__codes.html#ga578051cc193ae0b7125aec8007071d21":[5,5,3,2,0], +"group__nand__driver__ecc__codes.html":[5,5,4], +"group__nand__driver__ecc__codes.html#ga15c79a12200c16f953936635f930df1d":[5,5,4,1], +"group__nand__driver__ecc__codes.html#gac2eb4475f12a443209165d29fe200030":[5,5,4,0], +"group__nand__driver__ecc__codes.html#gaee653288a88318ee33d1db81baa69bbc":[5,5,4,2], +"group__nand__driver__flag__codes.html":[5,5,2], +"group__nand__driver__flag__codes.html#gaf40631ba62411e0ac06c3a945d608581":[5,5,2,0], +"group__nand__driver__seq__exec__codes.html":[5,5,5], +"group__nand__driver__seq__exec__codes.html#ga0f4a8b1e97656e09f1c383852f290a37":[5,5,5,9], +"group__nand__driver__seq__exec__codes.html#ga1b40fc5fbf22dc4fa8130f5836e30d12":[5,5,5,7], +"group__nand__driver__seq__exec__codes.html#ga20f96743ab77bda14ba391dc0c3cdba5":[5,5,5,11], +"group__nand__driver__seq__exec__codes.html#ga2250f6a532d2c0834bfdc618761ddc86":[5,5,5,12], +"group__nand__driver__seq__exec__codes.html#ga5e55628cb59f5d7d35c529f04ebfcd10":[5,5,5,4], +"group__nand__driver__seq__exec__codes.html#ga62a3f6ddcfb9ee317655bbec9e09bc10":[5,5,5,2], +"group__nand__driver__seq__exec__codes.html#ga891bcba60ebb1195ec80c00c9bec748a":[5,5,5,1], +"group__nand__driver__seq__exec__codes.html#ga959522c98183036da32984dd5e07979b":[5,5,5,6], +"group__nand__driver__seq__exec__codes.html#gab524d840ab57c720ce8560144651dc9d":[5,5,5,10], +"group__nand__driver__seq__exec__codes.html#gacffafbbbca74f7ffa4cd3bb6b067c4ef":[5,5,5,8], +"group__nand__driver__seq__exec__codes.html#gadc001e69d1e81dc28a542237c6fe11ff":[5,5,5,3], +"group__nand__driver__seq__exec__codes.html#gaeb5d1be9c13b7ad2ad246d5db10cd419":[5,5,5,5], +"group__nand__driver__seq__exec__codes.html#gaef90c96cd4f2309044d7d438c6b0930a":[5,5,5,0], +"group__nand__driver__strength__codes.html":[5,5,3,3], +"group__nand__driver__strength__codes.html#ga17188e039f5f87c581033327399a057d":[5,5,3,3,1], +"group__nand__driver__strength__codes.html#ga33562a66a5bf328eea82b2f1893a7874":[5,5,3,3,2], +"group__nand__driver__strength__codes.html#ga942e20df12022f3bbd0e9a558ec1c7a0":[5,5,3,3,0], +"group__nand__driver__strength__codes.html#gaa502e2c995447037d266f939faa43223":[5,5,3,3,3], +"group__nand__execution__status.html":[5,5,0], +"group__nand__execution__status.html#gafebec6ac091750a47b1d59bc843c15b0":[5,5,0,0], +"group__nand__interface__gr.html":[5,5], +"group__nand__interface__gr.html#a00c1f5db7d7c4abe7556733c36da7783":[5,5,8,16] +}; diff --git a/CMSIS/Documentation/Driver/html/navtreeindex3.js b/CMSIS/Documentation/Driver/html/navtreeindex3.js new file mode 100644 index 0000000..891570d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtreeindex3.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX3 = +{ +"group__nand__interface__gr.html#a0e7d3b9258d468492b22de55d855a06e":[5,5,8,4], +"group__nand__interface__gr.html#a0f22baea13daa9101bf6fc1fdfddc747":[5,5,8,12], +"group__nand__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d":[5,5,8,6], +"group__nand__interface__gr.html#a21036f2047273d90c0af0e97031df5a9":[5,5,8,15], +"group__nand__interface__gr.html#a22365f6a2af1171a1c3629c8ae5fe001":[5,5,9,7], +"group__nand__interface__gr.html#a22d6a1813a47a7044f7acb478f8e9eb8":[5,5,9,8], +"group__nand__interface__gr.html#a28b29ab7b6114bb97175bd40d18854ac":[5,5,7,2], +"group__nand__interface__gr.html#a2b8044d986995b183b057217643466bf":[5,5,8,10], +"group__nand__interface__gr.html#a35cfa22b2140b109fe24b97c42d5a5ed":[5,5,8,3], +"group__nand__interface__gr.html#a3dbd36d86718980665ce2e3a1ba672ca":[5,5,7,9], +"group__nand__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a":[5,5,6,0], +"group__nand__interface__gr.html#a5952ba4313bda7833fefd358f5aff979":[5,5,9,1], +"group__nand__interface__gr.html#a5a43001ef1ca6c6d73f03e366bf41cb5":[5,5,7,10], +"group__nand__interface__gr.html#a5f347e9b63764bbb657f52dc20682128":[5,5,8,0], +"group__nand__interface__gr.html#a69f5e734ee4a9bb501718cf78a740c3e":[5,5,8,11], +"group__nand__interface__gr.html#a6d9b66da0e56d04d545e0bb6841891b2":[5,5,8,17], +"group__nand__interface__gr.html#a706fedbc88921808e210d75b7b5da168":[5,5,7,15], +"group__nand__interface__gr.html#a75b97f7c917bba90b2f5c747d6857d23":[5,5,8,7], +"group__nand__interface__gr.html#a7707d2200a3bf8f49b148ffc8ded7636":[5,5,6,1], +"group__nand__interface__gr.html#a78393d355e539c6f845b33417da60a7e":[5,5,7,12], +"group__nand__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,5,7,0], +"group__nand__interface__gr.html#a9ba6f3066cda5c8d781c309a17315a58":[5,5,7,5], +"group__nand__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9":[5,5,9,3], +"group__nand__interface__gr.html#aa43c4c21b173ada1b6b7568956f0d650":[5,5,9,4], +"group__nand__interface__gr.html#aa43ee108ee5bf29e40485ca89b34188b":[5,5,7,16], +"group__nand__interface__gr.html#aa993bc236650aa405b01d00b7ca72904":[5,5,9,2], +"group__nand__interface__gr.html#aa9acfde38637fe749aa9271c0a8dae1a":[5,5,8,13], +"group__nand__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa":[5,5,8,5], +"group__nand__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,5,7,4], +"group__nand__interface__gr.html#ac090c205fe3d1b3dcb7288b06468bbe5":[5,5,7,7], +"group__nand__interface__gr.html#ac9bc93fb1a089c6ac71428122f3a072e":[5,5,7,8], +"group__nand__interface__gr.html#ad44b615021ed3ccb734fcaf583ef4a03":[5,5,9,0], +"group__nand__interface__gr.html#ad5dd0fcdd7f6d5e5cd739f73323a2b11":[5,5,8,9], +"group__nand__interface__gr.html#ad6e1d53e9028baff856899f795c0d0c8":[5,5,7,14], +"group__nand__interface__gr.html#adab9d081aee3e5d1f83c6911e45ceaa6":[5,5,7,1], +"group__nand__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,5,7,3], +"group__nand__interface__gr.html#add6fa19a729c42303581214bc9dec819":[5,5,7,6], +"group__nand__interface__gr.html#ae0514834750c7452431717a881471e2b":[5,5,8,1], +"group__nand__interface__gr.html#ae086693990cbd5d628014c0fcc7c1f2c":[5,5,8,14], +"group__nand__interface__gr.html#ae65f920c4ad99fd0c6bdf5fd8c4d161a":[5,5,9,5], +"group__nand__interface__gr.html#ae672b2a65dd3d0b93812c088491c4552":[5,5,8,18], +"group__nand__interface__gr.html#ae87c19872b838dac7d3136a3fd466f6a":[5,5,8,19], +"group__nand__interface__gr.html#ae8cff208d9efb5067d38ced675916c66":[5,5,9,6], +"group__nand__interface__gr.html#aeba263544c0d63ec8c29e919232615cb":[5,5,7,11], +"group__nand__interface__gr.html#aecd239806e9f08b77ce0d00f61e78cf8":[5,5,7,17], +"group__nand__interface__gr.html#aef3d6e1522a6cf7fb87fd113dcd43ad5":[5,5,8,20], +"group__nand__interface__gr.html#af0dd5e96fbcc5c15bb183363f8541af8":[5,5,7,13], +"group__nand__interface__gr.html#afa4b798731b1154878c26dda3f090acf":[5,5,8,2], +"group__nand__interface__gr.html#afe7f5b149b8d92859398315b1ad31ddc":[5,5,8,8], +"group__nand__interface__gr.html#ga00832861f018db0d8368900b099ecd30":[5,5,25], +"group__nand__interface__gr.html#ga00e195031e03d364db7595858a7e76f3":[5,5,21], +"group__nand__interface__gr.html#ga01255fd4f15e7fa4751c7ea59648ef5a":[5,5,11], +"group__nand__interface__gr.html#ga09f4cf2f2df0bb690bce38b13d77e50f":[5,5,10], +"group__nand__interface__gr.html#ga11adcbaaace09746581a36befbd563c9":[5,5,16], +"group__nand__interface__gr.html#ga1987e65a4e756d748db86332c9fb1cec":[5,5,17], +"group__nand__interface__gr.html#ga1c0cba87cb7b706ad5986dc67c831ad1":[5,5,18], +"group__nand__interface__gr.html#ga1fa497dd51a86fc308e946b4419fd006":[5,5,23], +"group__nand__interface__gr.html#ga43011066306bd716b580e6aa9a80cf65":[5,5,19], +"group__nand__interface__gr.html#ga4578642f37a556b58b0bba0ad5d42641":[5,5,27], +"group__nand__interface__gr.html#ga74ad34718a595e7a4375b90f33e72750":[5,5,13], +"group__nand__interface__gr.html#ga83061d6d53ffb148853efbc87a864607":[5,5,26], +"group__nand__interface__gr.html#ga8a0108dba757a4610475151144b52825":[5,5,24], +"group__nand__interface__gr.html#ga9c9975637980b5d42db7baba0191fda1":[5,5,15], +"group__nand__interface__gr.html#ga9f2609975c2008d21b9ae28f15daf147":[5,5,12], +"group__nand__interface__gr.html#ga9f70b89ba478eadfe7f5dee7453a4fb7":[5,5,20], +"group__nand__interface__gr.html#gaa788b638ab696b166fee2f4a4bc8d97a":[5,5,14], +"group__nand__interface__gr.html#gac21425454d586ef48fdfc35e7bd78947":[5,5,28], +"group__nand__interface__gr.html#gae1899a20ef107400c8bf84fad477a8ce":[5,5,22], +"group__nand__interface__gr.html#gaf4ce80b0fd6717de7ddfb1cfaf7dd754":[5,5,29], +"group__nand__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___n_a_n_d":[5,5,7], +"group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___c_a_p_a_b_i_l_i_t_i_e_s":[5,5,8], +"group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___e_c_c___i_n_f_o":[5,5,9], +"group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___s_t_a_t_u_s":[5,5,6], +"group__sai__bit__order__control.html":[5,7,2,0,4], +"group__sai__bit__order__control.html#ga19b51b75537b030b975efcf68f3db78b":[5,7,2,0,4,1], +"group__sai__bit__order__control.html#gaf74bfe9c3005bf3b80d69f112ea9e62b":[5,7,2,0,4,0], +"group__sai__clock__pol__control.html":[5,7,2,0,7], +"group__sai__clock__pol__control.html#ga4311b6b6fd937d6ac37aa2d031a5d5ee":[5,7,2,0,7,0], +"group__sai__clock__pol__control.html#gae4c9b9abd3b7390810a5494363875a53":[5,7,2,0,7,1], +"group__sai__companding__control.html":[5,7,2,0,6], +"group__sai__companding__control.html#ga185919d553cf9204e514136eb375ef08":[5,7,2,0,6,0], +"group__sai__companding__control.html#ga7b571406bcce383140198e53312faee5":[5,7,2,0,6,2], +"group__sai__companding__control.html#gacfd6c74148c0ae90aa6eaaf8e69da3a9":[5,7,2,0,6,1], +"group__sai__configure__control.html":[5,7,2,0], +"group__sai__control.html":[5,7,2], +"group__sai__controls.html":[5,7,2,1], +"group__sai__controls.html#ga14ac7775060e731b26bc5b3acd2f317a":[5,7,2,1,0], +"group__sai__controls.html#ga2b8d3d85c1e60f137f8c433f319244cb":[5,7,2,1,7], +"group__sai__controls.html#ga74d7850973c095bb8dbffa880b4af1bc":[5,7,2,1,2], +"group__sai__controls.html#ga84302d372185665852c9ed941c6545e0":[5,7,2,1,5], +"group__sai__controls.html#ga8675b9776189caf4df7d558b3e18fcba":[5,7,2,1,4], +"group__sai__controls.html#gaa40390b6dd0df3b140fdc45bb7b1439d":[5,7,2,1,3], +"group__sai__controls.html#gab3ec8ef9e5e5a190bd2131ac8c99a240":[5,7,2,1,6], +"group__sai__controls.html#gaba3e824e022fe2a5736de5dcbbd3d291":[5,7,2,1,1], +"group__sai__data__bits__control.html":[5,7,2,0,3], +"group__sai__data__bits__control.html#ga1a7529e4b46d69dbd57ccef84552a3f4":[5,7,2,0,3,0], +"group__sai__execution__status.html":[5,7,0], +"group__sai__execution__status.html#ga0561b0cc9577d944e0d39b582612e061":[5,7,0,12], +"group__sai__execution__status.html#ga09fe9b65d2be54ee1441606523291011":[5,7,0,13], +"group__sai__execution__status.html#ga0d910d4a638433e3b2326fc776da0f53":[5,7,0,8], +"group__sai__execution__status.html#ga4658a3143c891d8972446630b6a978cd":[5,7,0,16], +"group__sai__execution__status.html#ga4683468c258e1a8706afcce1e81356d1":[5,7,0,5], +"group__sai__execution__status.html#ga5021651816da0aa92561eed634ba7578":[5,7,0,7], +"group__sai__execution__status.html#ga5c51cbd8c2d2fe4baae110d390cefdc2":[5,7,0,2], +"group__sai__execution__status.html#ga711cd889b4209df3f8fb01e4f2413c61":[5,7,0,0], +"group__sai__execution__status.html#ga7810e77ec599b0f86073a8711c0655df":[5,7,0,6], +"group__sai__execution__status.html#ga7bf825043ba857950a89817ff9b853d1":[5,7,0,15], +"group__sai__execution__status.html#ga912bf004fce3a37709bbf69734802b4a":[5,7,0,4], +"group__sai__execution__status.html#ga993da1bc0f6745795b364d84dec24e99":[5,7,0,11], +"group__sai__execution__status.html#gabab9495d6c57e56604cb1a2ac7e75431":[5,7,0,9], +"group__sai__execution__status.html#gadcd0d44f0f6b691c4e84b30960c096e4":[5,7,0,3], +"group__sai__execution__status.html#gaf0448bdd6d1ae33511d170b9ecc1e2d6":[5,7,0,10], +"group__sai__execution__status.html#gaf4892425930608ad7a41fa5b49603b10":[5,7,0,1], +"group__sai__execution__status.html#gaf52ee0cd13b6cb9c63acfe767ed5dfde":[5,7,0,14], +"group__sai__frame__control.html":[5,7,2,0,8], +"group__sai__frame__control.html#ga4c557aa02c83b8595be23a6c58d284e9":[5,7,2,0,8,0], +"group__sai__frame__control.html#ga7be0326e15d61d6c67febb22f5b14d58":[5,7,2,0,8,2], +"group__sai__frame__control.html#gabec3992447436a2a8ed99108908ae208":[5,7,2,0,8,4], +"group__sai__frame__control.html#gae165fd96e6a5b06b362954fadeabcb7a":[5,7,2,0,8,1], +"group__sai__frame__control.html#gaf3d6bdbc05379ac30905cecf1b2d917e":[5,7,2,0,8,3], +"group__sai__interface__gr.html":[5,7], +"group__sai__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72":[5,7,5,2], +"group__sai__interface__gr.html#a0b28b2c21016702f50c28655653099df":[5,7,3,7], +"group__sai__interface__gr.html#a0b2c79bd96ecb47d801fc5389819314a":[5,7,4,5], +"group__sai__interface__gr.html#a12554e2522a0c611e8a26c9e536554eb":[5,7,4,9], +"group__sai__interface__gr.html#a1b4f69a2caf19ef9fd75cf27ae3932f9":[5,7,5,4], +"group__sai__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b":[5,7,5,0], +"group__sai__interface__gr.html#a310d55d55bd7c6b0393d43bb994db708":[5,7,3,10], +"group__sai__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922":[5,7,3,5], +"group__sai__interface__gr.html#a5255f8d78a18ace0a959f604f9c065dd":[5,7,4,6], +"group__sai__interface__gr.html#a5363ec1fc0042620cb8aeeee4f98691b":[5,7,4,4], +"group__sai__interface__gr.html#a54a38e78d5fd7ca0d37174c81ec01731":[5,7,3,2], +"group__sai__interface__gr.html#a6fcb9d68c4999860ce162c0ef44c4c97":[5,7,4,3], +"group__sai__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71":[5,7,3,8], +"group__sai__interface__gr.html#a75ba2507ea29601a309393e794f4413d":[5,7,4,0], +"group__sai__interface__gr.html#a77e4d8466d2bde30e6583b9ad8ba8c82":[5,7,4,8], +"group__sai__interface__gr.html#a7e230744b9898cabf80ee6f2595569f6":[5,7,3,1], +"group__sai__interface__gr.html#a80455fc2c7355b1850098710fd66a244":[5,7,3,9], +"group__sai__interface__gr.html#a808b1f9e0abc3fa67945899cfc9fccc1":[5,7,4,2], +"group__sai__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,7,3,0], +"group__sai__interface__gr.html#a8d92817d8662211abda2d747c52ff4a9":[5,7,4,7], +"group__sai__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4":[5,7,5,1], +"group__sai__interface__gr.html#a9fa4f850b8ce2be2c7ffa2e3ec70ae20":[5,7,4,1], +"group__sai__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,7,3,4], +"group__sai__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa":[5,7,5,3], +"group__sai__interface__gr.html#acc06ba75f18af9862d171426abc3273e":[5,7,4,10], +"group__sai__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3":[5,7,3,6], +"group__sai__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,7,3,3], +"group__sai__interface__gr.html#ga2c571fcc8b9632c25a64043bc2b2baec":[5,7,15], +"group__sai__interface__gr.html#ga2d55f506cef9d2849cbe418146086d98":[5,7,13], +"group__sai__interface__gr.html#ga405a0769c33da6801055db0fb9b6c869":[5,7,16], +"group__sai__interface__gr.html#ga6a202b57697f0f7a9742e76b33d5eeec":[5,7,17], +"group__sai__interface__gr.html#ga786b1970a788a4dfc6156b42364e52f8":[5,7,7], +"group__sai__interface__gr.html#ga89622a02ca1e7affb1a01eefacb6f54c":[5,7,9], +"group__sai__interface__gr.html#ga8bb6866c535adeb930bc4a847d476fcd":[5,7,12], +"group__sai__interface__gr.html#gaa9805f9d32aee205f787e625a58e8898":[5,7,14], +"group__sai__interface__gr.html#gabdefafaba6f072cfd7ed6f8f132422b6":[5,7,10], +"group__sai__interface__gr.html#gac6c636757944eaf25aebf312a67665aa":[5,7,8], +"group__sai__interface__gr.html#gacdec50a3dd5902de601caa7397c1dabc":[5,7,11], +"group__sai__interface__gr.html#gad8ca8e2459e540928f6315b3df6da0ee":[5,7,6], +"group__sai__interface__gr.html#gaedf3347cb25d6bf2faad1bbb35ad79f4":[5,7,18], +"group__sai__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_a_i":[5,7,3], +"group__sai__interface__gr.html#struct_a_r_m___s_a_i___c_a_p_a_b_i_l_i_t_i_e_s":[5,7,4], +"group__sai__interface__gr.html#struct_a_r_m___s_a_i___s_t_a_t_u_s":[5,7,5], +"group__sai__mclk__pin__control.html":[5,7,2,0,10], +"group__sai__mclk__pin__control.html#ga24d99edf05699eff32da02742fb04ced":[5,7,2,0,10,1], +"group__sai__mclk__pin__control.html#ga2cd610be9ba9532b2926376deaacf5ad":[5,7,2,0,10,2], +"group__sai__mclk__pin__control.html#ga7654bffb42e96d48df57c598323337d6":[5,7,2,0,10,0], +"group__sai__mclk__pres__control.html":[5,7,2,0,11], +"group__sai__mclk__pres__control.html#ga2afa85cd335e75d8b9b06c9f47f3f4b0":[5,7,2,0,11,0], +"group__sai__mode__control.html":[5,7,2,0,0], +"group__sai__mode__control.html#ga5956c12a24a506754ecc7999f0660bb5":[5,7,2,0,0,1], +"group__sai__mode__control.html#ga5bedff714ea0f90139665b72d44daddc":[5,7,2,0,0,0], +"group__sai__mono__control.html":[5,7,2,0,5], +"group__sai__mono__control.html#ga0adcd27875d92add813b9664e9cb0b4b":[5,7,2,0,5,0], +"group__sai__protocol__control.html":[5,7,2,0,2], +"group__sai__protocol__control.html#ga3762437e0b1402b5d4fd293ae745f103":[5,7,2,0,2,4], +"group__sai__protocol__control.html#ga8b1669910f4db4bb3584543e7eb04d7a":[5,7,2,0,2,6], +"group__sai__protocol__control.html#gaaaf423bbe59920b3c7813e22ce083ddc":[5,7,2,0,2,1], +"group__sai__protocol__control.html#gab88b6f9b61a20927ac8f8d39e46c6349":[5,7,2,0,2,3], +"group__sai__protocol__control.html#gacef87941052c21ebacd3dde6ce9d6925":[5,7,2,0,2,0], +"group__sai__protocol__control.html#gad43530c5b6ae1e89db587b20d71440b4":[5,7,2,0,2,5], +"group__sai__protocol__control.html#gad931f9e8aedff4e6040d726d707862f0":[5,7,2,0,2,2], +"group__sai__slot__control.html":[5,7,2,0,9], +"group__sai__slot__control.html#ga2bb9cf53b07cac81fb0fe71de6c97c83":[5,7,2,0,9,2], +"group__sai__slot__control.html#ga48d4a142f3a1bb0fa4e88c9e427932a0":[5,7,2,0,9,4], +"group__sai__slot__control.html#ga8f2cf3a212ca7fe389e00b082efb5d0b":[5,7,2,0,9,0], +"group__sai__slot__control.html#gaaa5c4cc18a0f5668bc9f117874cd83dd":[5,7,2,0,9,3], +"group__sai__slot__control.html#gad77c6c0de2a4e7223a0c42e1594f0a2c":[5,7,2,0,9,1], +"group__sai__sync__control.html":[5,7,2,0,1], +"group__sai__sync__control.html#gad123537cb6ab9eefd6feab193ed74655":[5,7,2,0,1,0], +"group__sai__sync__control.html#gad2ad5406c30c353e80f54b40b3de5db8":[5,7,2,0,1,1], +"group__spi__bit__order__ctrls.html":[5,8,2,3], +"group__spi__bit__order__ctrls.html#ga41c53c3b396a89ce78018467e561aaaf":[5,8,2,3,1], +"group__spi__bit__order__ctrls.html#ga98228a708cbab6e214c7ac696f77dab6":[5,8,2,3,0], +"group__spi__data__bits__ctrls.html":[5,8,2,2], +"group__spi__data__bits__ctrls.html#gaf6c099a1d67256a32010120c66c55250":[5,8,2,2,0], +"group__spi__execution__status.html":[5,8,0], +"group__spi__execution__status.html#ga273a55c5d19491c565e5f05d03d66f3f":[5,8,0,0], +"group__spi__execution__status.html#ga6b8ac31930ea6ca3a9635f2ac935466d":[5,8,0,3], +"group__spi__execution__status.html#ga76f895d3380ca474124f83acbebc5651":[5,8,0,2], +"group__spi__execution__status.html#gaae7b1a1feb46faa1830c92b73bd775ad":[5,8,0,4], +"group__spi__execution__status.html#gac47584fe5691889c056611bc589b25aa":[5,8,0,1], +"group__spi__frame__format__ctrls.html":[5,8,2,1], +"group__spi__frame__format__ctrls.html#ga225185710ba38848a489013ba4475915":[5,8,2,1,4], +"group__spi__frame__format__ctrls.html#ga44f481d32b9a9ea93673f05af82ccf86":[5,8,2,1,5], +"group__spi__frame__format__ctrls.html#ga5498eb08c2ba8de2e1c2801428e79d71":[5,8,2,1,1], +"group__spi__frame__format__ctrls.html#ga67193d9b5af1ec312a66d007c33b597f":[5,8,2,1,2], +"group__spi__frame__format__ctrls.html#ga7fab572b2fec303e979e47eb2d13ca74":[5,8,2,1,3], +"group__spi__frame__format__ctrls.html#gab4ac9a609c078d1e8332cf95da34e50e":[5,8,2,1,0], +"group__spi__interface__gr.html":[5,8], +"group__spi__interface__gr.html#a065b5fc24d0204692f0f95a44351ac1e":[5,8,3,1], +"group__spi__interface__gr.html#a309619714f0c4febaa497ebdb9b7e3ca":[5,8,4,3], +"group__spi__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922":[5,8,3,5], +"group__spi__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a":[5,8,5,0], +"group__spi__interface__gr.html#a6e0f47a92f626a971c5197fca6545505":[5,8,3,9], +"group__spi__interface__gr.html#a7305e7248420cdb4b02ceba87672178d":[5,8,3,10], +"group__spi__interface__gr.html#a8053c540e5d531b692224bdc2463f36a":[5,8,4,1], +"group__spi__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,8,3,0], +"group__spi__interface__gr.html#a9675630df67587ecd171c7ef12b9d22a":[5,8,5,1], +"group__spi__interface__gr.html#a9b4e858eb1d414128994742bf121f94c":[5,8,4,2], +"group__spi__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,8,3,4], +"group__spi__interface__gr.html#ad1d892ab3932f65cd7cdf2d0a91ae5da":[5,8,3,8], +"group__spi__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7":[5,8,3,7], +"group__spi__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3":[5,8,3,6], +"group__spi__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,8,3,3], +"group__spi__interface__gr.html#aeaf54ec655b7a64b9e88578c5f39d4e3":[5,8,5,2], +"group__spi__interface__gr.html#af244e2c2facf6414e3886495ee6b40bc":[5,8,4,0], +"group__spi__interface__gr.html#afac50d0b28860f7b569293e6b713f8a4":[5,8,3,2], +"group__spi__interface__gr.html#ga0c480ee3eabb82fc746e89741ed2e03e":[5,8,10], +"group__spi__interface__gr.html#ga1a1e7e80ea32ae381b75213c32aa8067":[5,8,11], +"group__spi__interface__gr.html#ga1a3c11ed523a4355cd91069527945906":[5,8,9], +"group__spi__interface__gr.html#ga505b2d787348d51351d38fee98ccba7e":[5,8,18], +"group__spi__interface__gr.html#ga60d33d8788a76c388cc36e066240b817":[5,8,17], +"group__spi__interface__gr.html#ga726aff54e782ed9b47f7ba1280a3d8f6":[5,8,13], +"group__spi__interface__gr.html#gaa24026b3822c10272e301f1505136ec2":[5,8,14], +"group__spi__interface__gr.html#gaaaecaaf4ec1922f22e7f9de63af5ccdb":[5,8,15], +"group__spi__interface__gr.html#gab2a303d1071e926280d50682f4808479":[5,8,12], +"group__spi__interface__gr.html#gad18d229992598d6677bec250015e5d1a":[5,8,16], +"group__spi__interface__gr.html#gad5db9209ef1d64a7915a7278d6a402c8":[5,8,7], +"group__spi__interface__gr.html#gaf4823a11ab5efcd47c79b13801513ddc":[5,8,8], +"group__spi__interface__gr.html#gafde9205364241ee81290adc0481c6640":[5,8,6], +"group__spi__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_p_i":[5,8,3], +"group__spi__interface__gr.html#struct_a_r_m___s_p_i___c_a_p_a_b_i_l_i_t_i_e_s":[5,8,4], +"group__spi__interface__gr.html#struct_a_r_m___s_p_i___s_t_a_t_u_s":[5,8,5], +"group__spi__misc__ctrls.html":[5,8,2,5], +"group__spi__misc__ctrls.html#ga44708b80e48984be099cd6eb11780dc3":[5,8,2,5,4], +"group__spi__misc__ctrls.html#ga5776272b82decff92da003568540c92f":[5,8,2,5,3], +"group__spi__misc__ctrls.html#ga5ef3d114979f3fd6010d0df16c2bf5c1":[5,8,2,5,0], +"group__spi__misc__ctrls.html#gae9861221dee78d52bd1522b7846535ce":[5,8,2,5,2] +}; diff --git a/CMSIS/Documentation/Driver/html/navtreeindex4.js b/CMSIS/Documentation/Driver/html/navtreeindex4.js new file mode 100644 index 0000000..274e2f6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtreeindex4.js @@ -0,0 +1,253 @@ +var NAVTREEINDEX4 = +{ +"group__spi__misc__ctrls.html#gafc00fe35bb4c89b076d014b43168b2b3":[5,8,2,5,1], +"group__spi__mode__ctrls.html":[5,8,2,0], +"group__spi__mode__ctrls.html#ga3143ef07c1607b9bc57e29df35cf2fa8":[5,8,2,0,1], +"group__spi__mode__ctrls.html#ga382b394c5e68f7d1206b837843732a3e":[5,8,2,0,2], +"group__spi__mode__ctrls.html#ga974e3d7c178b76b0540d7644b977bff3":[5,8,2,0,0], +"group__spi__mode__ctrls.html#ga9b113d8b336047e1c22f73ad44851fdf":[5,8,2,0,4], +"group__spi__mode__ctrls.html#gaf34d849c7cde1151a768887f154e19bd":[5,8,2,0,3], +"group__spi__slave__select__mode__ctrls.html":[5,8,2,4], +"group__spi__slave__select__mode__ctrls.html#ga07762709a40dc90aca85553f500c8761":[5,8,2,4,2], +"group__spi__slave__select__mode__ctrls.html#ga2bd0d1f3ade2dc0cc48cc0593336ad70":[5,8,2,4,4], +"group__spi__slave__select__mode__ctrls.html#ga8561bd0cc25ab2bb02b138c1c6a586cd":[5,8,2,4,3], +"group__spi__slave__select__mode__ctrls.html#gab5e319aa3f9d4d8c9ed92f0fe865f624":[5,8,2,4,1], +"group__spi__slave__select__mode__ctrls.html#gad371f6ba0d12a57bdcc3217c351abfb0":[5,8,2,4,5], +"group__spi__slave__select__mode__ctrls.html#gae19343adc7bd71408b51733171f99dc7":[5,8,2,4,0], +"group__usart__clock__phase.html":[5,9,2,7], +"group__usart__clock__phase.html#ga4b9f16371870476739a198c52dba6862":[5,9,2,7,1], +"group__usart__clock__phase.html#ga5eb27c2294b7d14a20d0c7e2ef0a47b4":[5,9,2,7,0], +"group__usart__clock__polarity.html":[5,9,2,6], +"group__usart__clock__polarity.html#ga472d459abb99f1caaff94fa0cdd2ad27":[5,9,2,6,0], +"group__usart__clock__polarity.html#ga9e5541d8937a9d92e42aeb273138592a":[5,9,2,6,1], +"group__usart__data__bits.html":[5,9,2,2], +"group__usart__data__bits.html#ga92ba3d6cea5cd5c0b661667539a9e43c":[5,9,2,2,1], +"group__usart__data__bits.html#ga981ff25b4ff806f743d1af4575b87339":[5,9,2,2,0], +"group__usart__data__bits.html#gad86a2d971ce521c6f6eda28d4f8786a4":[5,9,2,2,2], +"group__usart__data__bits.html#gadc5e8d17b5c69cd7f9135b849c2a4586":[5,9,2,2,3], +"group__usart__data__bits.html#gae238a08198dc7ac6178ae0a2a95a2764":[5,9,2,2,4], +"group__usart__execution__status.html":[5,9,0], +"group__usart__execution__status.html#ga1d699654fbbed3ca41c5ea10aac8f859":[5,9,0,4], +"group__usart__execution__status.html#ga2a1cd0a1e1bce9b545b0d7854a6fd6d6":[5,9,0,6], +"group__usart__execution__status.html#gaa98f35611ec5bd7034f21cb47199322b":[5,9,0,0], +"group__usart__execution__status.html#gaade95ddec6882e96c086dfe8e0ba9a4c":[5,9,0,2], +"group__usart__execution__status.html#gab57c4e8d4cb3a4b73751a002f5ec4586":[5,9,0,1], +"group__usart__execution__status.html#gade1af23c4ed5409dacd99ab76dc2ff8b":[5,9,0,7], +"group__usart__execution__status.html#gaefabd886c586a45f4f7346c1f04392d0":[5,9,0,3], +"group__usart__execution__status.html#gaf8fea8d43ff72c76434d8b5e9eebd890":[5,9,0,5], +"group__usart__flow__control.html":[5,9,2,5], +"group__usart__flow__control.html#ga80c8a78e8868165cfcc543105bfd9621":[5,9,2,5,1], +"group__usart__flow__control.html#gaa7b38ebff1ce0f5c3e4479d22e66715f":[5,9,2,5,2], +"group__usart__flow__control.html#gab16151b5c376b41586faf033f4a42d02":[5,9,2,5,3], +"group__usart__flow__control.html#gad04aa3fe4ea4b7363aee4bdca2ed3764":[5,9,2,5,0], +"group__usart__interface__gr.html":[5,9], +"group__usart__interface__gr.html#a0190aabe8d8f59176be8d693f8874fb3":[5,9,4,9], +"group__usart__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72":[5,9,5,2], +"group__usart__interface__gr.html#a055ad4095356a022886828009a980316":[5,9,3,11], +"group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262":[5,9,6,0], +"group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262":[5,9,4,12], +"group__usart__interface__gr.html#a0b28b2c21016702f50c28655653099df":[5,9,3,8], +"group__usart__interface__gr.html#a1a68601c09df8d37f3500ad373333962":[5,9,3,2], +"group__usart__interface__gr.html#a1d55dd339a08293018608775fc8b4859":[5,9,4,7], +"group__usart__interface__gr.html#a287da15773bb24a301cbfd806975e1e9":[5,9,4,8], +"group__usart__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b":[5,9,5,0], +"group__usart__interface__gr.html#a37dcd87df8762e2bc9af9fea368b1537":[5,9,4,2], +"group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2":[5,9,4,14], +"group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2":[5,9,6,1], +"group__usart__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922":[5,9,3,5], +"group__usart__interface__gr.html#a4ebe5ddec8d99a63843f2a3c70ac85f9":[5,9,4,17], +"group__usart__interface__gr.html#a517a7a98a444126734782beb4951a9db":[5,9,3,13], +"group__usart__interface__gr.html#a6e0f47a92f626a971c5197fca6545505":[5,9,3,10], +"group__usart__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71":[5,9,3,9], +"group__usart__interface__gr.html#a75ba2507ea29601a309393e794f4413d":[5,9,4,0], +"group__usart__interface__gr.html#a7b3c14ea1b5e9ba0a37ebc05fcfd51a6":[5,9,4,6], +"group__usart__interface__gr.html#a7c1dd043d0db9738d6b5fa8d89211446":[5,9,4,19], +"group__usart__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,9,3,0], +"group__usart__interface__gr.html#a9a72c5f0209a9ccf840fc196e9a9dffa":[5,9,4,4], +"group__usart__interface__gr.html#a9cec078ea816ece7b2d989f35caadb12":[5,9,3,1], +"group__usart__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4":[5,9,5,1], +"group__usart__interface__gr.html#aa3cc092c82fdc3e5e6646460be6ae9fd":[5,9,4,13], +"group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c":[5,9,6,2], +"group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c":[5,9,4,15], +"group__usart__interface__gr.html#aa5e3fa74f444688f9e727ffc1e988e5d":[5,9,5,4], +"group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb":[5,9,6,3], +"group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb":[5,9,4,16], +"group__usart__interface__gr.html#aa78e1ee1726d1db2cfa83fd7b5acc8bd":[5,9,4,5], +"group__usart__interface__gr.html#ab55f90aec5f909ff3a75bf36e61312ea":[5,9,4,20], +"group__usart__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,9,3,4], +"group__usart__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa":[5,9,5,3], +"group__usart__interface__gr.html#ad1928b61021dd9ff689a3ccf9b8966a8":[5,9,4,3], +"group__usart__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7":[5,9,3,7], +"group__usart__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3":[5,9,3,6], +"group__usart__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,9,3,3], +"group__usart__interface__gr.html#aefdb61f16498d650b5a7f5f9b62779df":[5,9,4,18], +"group__usart__interface__gr.html#af1d1cfd8b231843d5cc23e6a2b1ca8d0":[5,9,5,5], +"group__usart__interface__gr.html#af6703d4078818df27ab9f8a7a8ad7b7b":[5,9,3,12], +"group__usart__interface__gr.html#afad044722f459552e9f0f602983659e9":[5,9,4,11], +"group__usart__interface__gr.html#afb385bfd9fb2d714bb58aa7d8d9d7d51":[5,9,4,1], +"group__usart__interface__gr.html#afe469796cfca4ea61bd6181afb4916be":[5,9,4,10], +"group__usart__interface__gr.html#affb21b610e2d0d71727702441c238f4f":[5,9,5,6], +"group__usart__interface__gr.html#ga198af0d6a7c85b7c0b96f3d9db8c34e0":[5,9,22], +"group__usart__interface__gr.html#ga1a8799aeeba1363a9e5d22bada715a29":[5,9,18], +"group__usart__interface__gr.html#ga1e8fdd54294b587438b2b72f4dbde004":[5,9,20], +"group__usart__interface__gr.html#ga51f06805e9a6197c553fa9513ac7b9d6":[5,9,11], +"group__usart__interface__gr.html#ga5cf758b0b9d03dca68846962f73c0b08":[5,9,14], +"group__usart__interface__gr.html#ga7b89d709f048b6a956aa211f63e75f6f":[5,9,8], +"group__usart__interface__gr.html#ga878899928d34a818edd3e97d67b65c2a":[5,9,16], +"group__usart__interface__gr.html#ga96f31f07a6721cf75de2a7a0ab723d26":[5,9,12], +"group__usart__interface__gr.html#ga9bad012b28d544f3eeeea9c2f71a4086":[5,9,13], +"group__usart__interface__gr.html#gaa578c3829eea207e9e48df6cb6f038a1":[5,9,7], +"group__usart__interface__gr.html#gabca6151cef47565832decaf484781b61":[5,9,9], +"group__usart__interface__gr.html#gacb355584bcdf4ebd36f11d945800fa03":[5,9,17], +"group__usart__interface__gr.html#gad2d3ace1fe7627bb72945efefaeddf0a":[5,9,10], +"group__usart__interface__gr.html#gad796cd023f8f6300a6caadcc39d43cbf":[5,9,23], +"group__usart__interface__gr.html#gad8eb0eb1d1c24fc725584ab93214cfc7":[5,9,21], +"group__usart__interface__gr.html#gad8ffdde2123b5412de3005c456da677d":[5,9,19], +"group__usart__interface__gr.html#gae9efabdabb5aaa17bce83339f8a58803":[5,9,15], +"group__usart__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_a_r_t":[5,9,3], +"group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___c_a_p_a_b_i_l_i_t_i_e_s":[5,9,4], +"group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___m_o_d_e_m___s_t_a_t_u_s":[5,9,6], +"group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___s_t_a_t_u_s":[5,9,5], +"group__usart__misc__control.html":[5,9,2,1], +"group__usart__misc__control.html#ga169be809adc186c131bb8b1618005b28":[5,9,2,1,2], +"group__usart__misc__control.html#ga3f57bcedf610dc844e6cc3a230dba5f7":[5,9,2,1,9], +"group__usart__misc__control.html#ga4bb5374e7db308b6ff48aa13aa9c4b8a":[5,9,2,1,4], +"group__usart__misc__control.html#ga54e88b32bc7368ff9c44613eae735c44":[5,9,2,1,8], +"group__usart__misc__control.html#ga79698a2bd564c1f5bb1829ea422e9d3d":[5,9,2,1,3], +"group__usart__misc__control.html#ga83d0ef402feb342f9939f0e4ffe26182":[5,9,2,1,10], +"group__usart__misc__control.html#gab194a6f916e5b25e0262534c0cce54dc":[5,9,2,1,7], +"group__usart__misc__control.html#gab8565d1f26382e832327e4553d18eb02":[5,9,2,1,1], +"group__usart__misc__control.html#gacd6f060afd55ffa1422567c31ebad950":[5,9,2,1,0], +"group__usart__misc__control.html#gad52c08553ae203d4f7741404589b8169":[5,9,2,1,6], +"group__usart__misc__control.html#gad96ea1a80c97f968fbc0ae4c20e7fa6a":[5,9,2,1,5], +"group__usart__mode__control.html":[5,9,2,0], +"group__usart__mode__control.html#ga4132136971d4f93f2e6a87c6775a9bb0":[5,9,2,0,3], +"group__usart__mode__control.html#ga458f4f60d1d772cfd7567ae424d9aad9":[5,9,2,0,4], +"group__usart__mode__control.html#ga7d3e9e0e838a3f15f8661983b9ac4573":[5,9,2,0,1], +"group__usart__mode__control.html#gad85039731478c924d3b418ec00768388":[5,9,2,0,0], +"group__usart__mode__control.html#gade65a1c27d9097d9ef0e86c02b55cecd":[5,9,2,0,5], +"group__usart__mode__control.html#gae78778475f3fab09a080c2279afc69fa":[5,9,2,0,2], +"group__usart__parity__bit.html":[5,9,2,3], +"group__usart__parity__bit.html#ga02f30181eedd3b04d650dd507bf40d6d":[5,9,2,3,2], +"group__usart__parity__bit.html#ga141a64650f99a1f642c3b3b6ced0eb8d":[5,9,2,3,0], +"group__usart__parity__bit.html#gabc35e8dd2cbebb730abf36959e87a207":[5,9,2,3,1], +"group__usart__stop__bits.html":[5,9,2,4], +"group__usart__stop__bits.html#ga17f034b5f0d0328dc636b403d1954795":[5,9,2,4,1], +"group__usart__stop__bits.html#ga45f51a51e654b4753a538ed33f0d7d78":[5,9,2,4,0], +"group__usart__stop__bits.html#ga47f43cb83d9955a4c90d918acaaa44ba":[5,9,2,4,3], +"group__usart__stop__bits.html#gafc1d0f2c95a76ef4c5152792a619f136":[5,9,2,4,2], +"group__usb__interface__gr.html":[5,10], +"group__usbd__interface__gr.html":[5,10,0], +"group__usbd__interface__gr.html#a0cc21434bc57e696fabf0207925fe5ff":[5,10,0,2,14], +"group__usbd__interface__gr.html#a217e38c26bbcdecbad8c984753b2597a":[5,10,0,2,15], +"group__usbd__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5":[5,10,0,4,1], +"group__usbd__interface__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919":[5,10,0,2,17], +"group__usbd__interface__gr.html#a4e36fd46291f71e4a748264e2f6ae431":[5,10,0,2,16], +"group__usbd__interface__gr.html#a4e927b5593f416a8641e12016208b5d5":[5,10,0,2,9], +"group__usbd__interface__gr.html#a52045edf0f555a0f0ecdf37a5e169f7a":[5,10,0,2,1], +"group__usbd__interface__gr.html#a53f95b9ecb7c84197947e7542501c7d3":[5,10,0,3,1], +"group__usbd__interface__gr.html#a649343be3fcfc44431d19f51d13e03b3":[5,10,0,2,8], +"group__usbd__interface__gr.html#a6673fc1aa13f62122ecf51e52a605c6e":[5,10,0,3,0], +"group__usbd__interface__gr.html#a6fbcf63ac9f962787cddc8f11a44dccb":[5,10,0,2,13], +"group__usbd__interface__gr.html#a71d312ce5c5335c6a035da55c25848e4":[5,10,0,2,5], +"group__usbd__interface__gr.html#a72d905bc20735bafda40d73c91829709":[5,10,0,3,2], +"group__usbd__interface__gr.html#a84439aa5677d330d257a4b43e48d6426":[5,10,0,2,2], +"group__usbd__interface__gr.html#a8834b281da48583845c044a81566c1b3":[5,10,0,2,0], +"group__usbd__interface__gr.html#a9fcafd15149d35022b05cf3c396e714e":[5,10,0,2,11], +"group__usbd__interface__gr.html#aa961d5fb2bd3d2960578f1ac3b903070":[5,10,0,4,0], +"group__usbd__interface__gr.html#ab22b96a3efad48f5a542f46c1b224800":[5,10,0,4,2], +"group__usbd__interface__gr.html#ab5593bf9bb516cc7b36c6072fc55260f":[5,10,0,2,10], +"group__usbd__interface__gr.html#ab906727173cbe8372bdc26ef20581baa":[5,10,0,2,7], +"group__usbd__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,10,0,2,4], +"group__usbd__interface__gr.html#ad45578fffbd046231f69aa058d29bba5":[5,10,0,2,12], +"group__usbd__interface__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,10,0,2,3], +"group__usbd__interface__gr.html#adff9dd8a0dc764e78b0271113ae3b0af":[5,10,0,2,6], +"group__usbd__interface__gr.html#ga178d01ab7896e1c675b90bbccfe8ea7d":[5,10,0,8], +"group__usbd__interface__gr.html#ga1dcb8b7790f0e3613ee3da77e5fd18fc":[5,10,0,7], +"group__usbd__interface__gr.html#ga37234abecbb63e4e739f9676e489d2d1":[5,10,0,13], +"group__usbd__interface__gr.html#ga4cd050b8343407fe465a27ad1cb7c264":[5,10,0,24], +"group__usbd__interface__gr.html#ga60b95c9c0c6767ff5938464cfd748f81":[5,10,0,9], +"group__usbd__interface__gr.html#ga62d7d5bdcf9ca7bf7e6d8434368abad8":[5,10,0,18], +"group__usbd__interface__gr.html#ga6bc0ebf699a0f28330f21cab83f85e9e":[5,10,0,17], +"group__usbd__interface__gr.html#ga6e69ad097553125bb01a22dc719e0d30":[5,10,0,21], +"group__usbd__interface__gr.html#ga7624d6b2cbe5e6ab5016206ce641eee2":[5,10,0,14], +"group__usbd__interface__gr.html#ga7c1878799699ddd34cec696da499f7bd":[5,10,0,5], +"group__usbd__interface__gr.html#ga7cf3bcc105dbb8cbdc915e8caca8529e":[5,10,0,23], +"group__usbd__interface__gr.html#ga7e149a4c6a0196da24a44f4fada75fb1":[5,10,0,15], +"group__usbd__interface__gr.html#ga9502cd7b8e4c583920fccadc4ccf7975":[5,10,0,20], +"group__usbd__interface__gr.html#ga99207f7ff5e97a7f65754eab7f775fca":[5,10,0,12], +"group__usbd__interface__gr.html#ga9aa5bc5cb45084194a77fae1457f6575":[5,10,0,26], +"group__usbd__interface__gr.html#gaa5bdaac19f6df30c6e569abef17cdb42":[5,10,0,11], +"group__usbd__interface__gr.html#gaae754763700fc5059a6bde57ea2d4e2c":[5,10,0,6], +"group__usbd__interface__gr.html#gab81fac01522a4d504edcb7b7d3abba6c":[5,10,0,22], +"group__usbd__interface__gr.html#gaca913df5188dc0f0c4f707b57c2a88fc":[5,10,0,19], +"group__usbd__interface__gr.html#gae66f696584e25fb2ddabe9070fa38670":[5,10,0,16], +"group__usbd__interface__gr.html#gafaead6713f141be1734de0110eda966b":[5,10,0,10], +"group__usbd__interface__gr.html#gafe58a4db1d26b21ca5d418ee49e103a5":[5,10,0,25], +"group__usbd__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_d":[5,10,0,2], +"group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___c_a_p_a_b_i_l_i_t_i_e_s":[5,10,0,3], +"group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___s_t_a_t_e":[5,10,0,4], +"group__usbh__hci__gr.html":[5,10,1,1], +"group__usbh__hci__gr.html#a40cbaad9fd2458b1008d31e1469903bb":[5,10,1,1,0,2], +"group__usbh__hci__gr.html#a7a41769405bb3bb4cc9eaba26cf220d4":[5,10,1,1,0,1], +"group__usbh__hci__gr.html#a8834b281da48583845c044a81566c1b3":[5,10,1,1,0,0], +"group__usbh__hci__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f":[5,10,1,1,0,5], +"group__usbh__hci__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,10,1,1,0,4], +"group__usbh__hci__gr.html#ac37c09b54483c2a1e41fa8a976721fc4":[5,10,1,1,1,0], +"group__usbh__hci__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,10,1,1,0,3], +"group__usbh__hci__gr.html#ga10109d0c2a9a128225b5e893d3f72d08":[5,10,1,1,3], +"group__usbh__hci__gr.html#ga27fa5ec8854cd9877bbef4abffe9a12b":[5,10,1,1,7], +"group__usbh__hci__gr.html#ga79d3c2509ed869c8d7d1485acad7b6c6":[5,10,1,1,9], +"group__usbh__hci__gr.html#gaacb68fdf201cdb1846b31642a760f041":[5,10,1,1,6], +"group__usbh__hci__gr.html#gabc1392a544cb64491b5ea5ce6590d832":[5,10,1,1,5], +"group__usbh__hci__gr.html#gac60df9d1f2b3a769f2c30141800a9806":[5,10,1,1,2], +"group__usbh__hci__gr.html#gade1e83403c6ea965fe3e6c4c21fbbded":[5,10,1,1,8], +"group__usbh__hci__gr.html#gae607c49ca97202500631473a901e8c2b":[5,10,1,1,4], +"group__usbh__hci__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h___h_c_i":[5,10,1,1,0], +"group__usbh__hci__gr.html#struct_a_r_m___u_s_b_h___h_c_i___c_a_p_a_b_i_l_i_t_i_e_s":[5,10,1,1,1], +"group__usbh__host__gr.html":[5,10,1,0], +"group__usbh__host__gr.html#a18369bada042ff5557ff919056636a62":[5,10,1,0,3,15], +"group__usbh__host__gr.html#a220859a8b5da0232739a11cbe7f79fc5":[5,10,1,0,5,2], +"group__usbh__host__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919":[5,10,1,0,3,17], +"group__usbh__host__gr.html#a37eab684b9a8aa496bfec9fede42fe27":[5,10,1,0,4,1], +"group__usbh__host__gr.html#a3efae6fe31a53f7ecd765ba6db99992e":[5,10,1,0,3,11], +"group__usbh__host__gr.html#a495b069fadf5ba5b069bfdec6cda8b88":[5,10,1,0,3,14], +"group__usbh__host__gr.html#a5bf141e46b7ced3abe3466cae4d811fb":[5,10,1,0,3,2], +"group__usbh__host__gr.html#a79126109256c1ccef901f22bc36ddc1d":[5,10,1,0,3,8], +"group__usbh__host__gr.html#a7ce5ca579a8c535434187ad05f596fbd":[5,10,1,0,3,10], +"group__usbh__host__gr.html#a84c391c0db065fa27b672eef6002905b":[5,10,1,0,3,9], +"group__usbh__host__gr.html#a8834b281da48583845c044a81566c1b3":[5,10,1,0,3,0], +"group__usbh__host__gr.html#a95125e80b07640860a7e16f510eca506":[5,10,1,0,3,6], +"group__usbh__host__gr.html#aaba1d9458e32389c21c3d899f9cb9313":[5,10,1,0,3,1], +"group__usbh__host__gr.html#ab2f8047e89786bb7a459fb9c6c3f03d5":[5,10,1,0,3,12], +"group__usbh__host__gr.html#ab82fb8b02ff81156098b8210c0344f5e":[5,10,1,0,3,16], +"group__usbh__host__gr.html#ab83941051cac8e19807b887354dc42fc":[5,10,1,0,4,3], +"group__usbh__host__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f":[5,10,1,0,3,5], +"group__usbh__host__gr.html#ab8be30d2d44a6447c8c085439ef117fb":[5,10,1,0,3,7], +"group__usbh__host__gr.html#aba8f1c8019af95ffe19c32403e3240ef":[5,10,1,0,3,4], +"group__usbh__host__gr.html#abf1a0792d6af28877b0abd141d5524ac":[5,10,1,0,5,0], +"group__usbh__host__gr.html#ac37c09b54483c2a1e41fa8a976721fc4":[5,10,1,0,4,0], +"group__usbh__host__gr.html#acd3087b3a4a7691595dd75568c12d696":[5,10,1,0,4,4], +"group__usbh__host__gr.html#adcf20681a1402869ecb5c6447fada17b":[5,10,1,0,3,3], +"group__usbh__host__gr.html#ae4b5761b8d095bee008a94856ceca46b":[5,10,1,0,5,1], +"group__usbh__host__gr.html#ae76b779cb9fdf447b20c8b6beed2d534":[5,10,1,0,4,2], +"group__usbh__host__gr.html#afe91e3e22bc401546d033cb9554550b7":[5,10,1,0,3,13], +"group__usbh__host__gr.html#ga1a32ebfe0db4a002aae2b0c0f8ece30c":[5,10,1,0,8], +"group__usbh__host__gr.html#ga1d4048a076aed71e585cea96a21f0afb":[5,10,1,0,25], +"group__usbh__host__gr.html#ga2076a7ae55f603859c726e57b061ac73":[5,10,1,0,20], +"group__usbh__host__gr.html#ga290a5e2e491da784e63be94699974d4a":[5,10,1,0,13], +"group__usbh__host__gr.html#ga2e4d0ebd0851ba7bf364ae1d8948672c":[5,10,1,0,6], +"group__usbh__host__gr.html#ga30dcc05151a98c5a8f6fe17e83777fe0":[5,10,1,0,19], +"group__usbh__host__gr.html#ga53619da2a3d56934629084b0d5c4700c":[5,10,1,0,27], +"group__usbh__host__gr.html#ga61edcbb6ee863fe87abee488d78e1051":[5,10,1,0,7], +"group__usbh__host__gr.html#ga620f8852a70a47a581001ed3050436d6":[5,10,1,0,16], +"group__usbh__host__gr.html#ga7f5a605dbe98e450e6965d515fde65a7":[5,10,1,0,22], +"group__usbh__host__gr.html#ga817d503a24ad8927fa362c8f6394920d":[5,10,1,0,23], +"group__usbh__host__gr.html#ga85baa421345a5b92881ad190d72ca47f":[5,10,1,0,24], +"group__usbh__host__gr.html#ga9dc305fc234c9987b9efd679b5042cc9":[5,10,1,0,26], +"group__usbh__host__gr.html#gab11e67e11e7a0edbc8a1afa86b971784":[5,10,1,0,9], +"group__usbh__host__gr.html#gab2135041e6d481f186015f36fa0d0521":[5,10,1,0,21], +"group__usbh__host__gr.html#gab438b55ada37e2987e77e105f061f2de":[5,10,1,0,17], +"group__usbh__host__gr.html#gab99882e11ee03018da9ebe33797cc5ff":[5,10,1,0,15], +"group__usbh__host__gr.html#gaccca5ddd4a9d04388e7678a3aed3f6e4":[5,10,1,0,14] +}; diff --git a/CMSIS/Documentation/Driver/html/navtreeindex5.js b/CMSIS/Documentation/Driver/html/navtreeindex5.js new file mode 100644 index 0000000..efef1d3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/navtreeindex5.js @@ -0,0 +1,16 @@ +var NAVTREEINDEX5 = +{ +"group__usbh__host__gr.html#gad1e73f778c95dd46d4396e7741a97f0b":[5,10,1,0,11], +"group__usbh__host__gr.html#gadb509db50fdccfc7198dfd7ac54530d7":[5,10,1,0,10], +"group__usbh__host__gr.html#gae58d36afd83a0e32b07e89fb7145c9de":[5,10,1,0,28], +"group__usbh__host__gr.html#gaea4ec5453c1d5fe37a2507d3cb4713bc":[5,10,1,0,18], +"group__usbh__host__gr.html#gafc2f18bc12bb0019f9cd1836dcca408d":[5,10,1,0,12], +"group__usbh__host__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h":[5,10,1,0,3], +"group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___c_a_p_a_b_i_l_i_t_i_e_s":[5,10,1,0,4], +"group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___p_o_r_t___s_t_a_t_e":[5,10,1,0,5], +"group__usbh__interface__gr.html":[5,10,1], +"index.html":[0], +"index.html":[], +"modules.html":[5], +"pages.html":[] +}; diff --git a/CMSIS/Documentation/Driver/html/open.png b/CMSIS/Documentation/Driver/html/open.png new file mode 100644 index 0000000..30f75c7 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/open.png differ diff --git a/CMSIS/Documentation/Driver/html/pages.html b/CMSIS/Documentation/Driver/html/pages.html new file mode 100644 index 0000000..1ddc95f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/pages.html @@ -0,0 +1,136 @@ + + + + + +Usage and Description +CMSIS-Driver: Usage and Description + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Driver +  Version 2.04 +
    +
    Peripheral Interface for Middleware and Application Code
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Driver/html/printComponentTabs.js b/CMSIS/Documentation/Driver/html/printComponentTabs.js new file mode 100644 index 0000000..64d846b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/printComponentTabs.js @@ -0,0 +1,36 @@ +var strgURL = location.pathname; // path of current component + +// constuctor for the array of objects +function tabElement(id, folderName, tabTxt ) { + this.id = id; // elementID as needed in html; + this.folderName = folderName; // folder name of the component + this.tabTxt = tabTxt; // Text displayed as menu on the web + this.currentListItem = '
  • ' + this.tabTxt + '
  • '; + this.listItem = '
  • ' + this.tabTxt + '
  • '; +}; + +// array of objects +var arr = []; + +// fill array + arr.push( new tabElement( "GEN", "/General/html/", "General") ); + arr.push( new tabElement( "CORE", "/Core/html/", "Core") ); + arr.push( new tabElement( "DRV", "/Driver/html/", "Driver") ); + arr.push( new tabElement( "DSP", "/DSP/html/", "DSP") ); + arr.push( new tabElement( "RTOS", "/RTOS/html/", "RTOS API") ); + arr.push( new tabElement( "RTX", "/RTX/html/", "RTX") ); + arr.push( new tabElement( "PACK", "/Pack/html/", "Pack") ); + arr.push( new tabElement( "SVD", "/SVD/html/", "SVD") ); + arr.push( new tabElement( "DAP", "/DAP/html/", "DAP") ); + +// write tabs +// called from the header file. +function writeComponentTabs() { + for ( var i=0; i < arr.length; i++ ) { + if (strgURL.search(arr[i].folderName) > 0) { // if this is the current folder + document.write(arr[i].currentListItem); // then print and hightlight the tab + } else { + document.write(arr[i].listItem); // else, print the tab + } + } +}; diff --git a/CMSIS/Documentation/Driver/html/resize.js b/CMSIS/Documentation/Driver/html/resize.js new file mode 100644 index 0000000..9fe82ba --- /dev/null +++ b/CMSIS/Documentation/Driver/html/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).width(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.height(); + var footerHeight = footer.height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/CMSIS/Documentation/Driver/html/search.css b/CMSIS/Documentation/Driver/html/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/Driver/html/search/all_5f.html b/CMSIS/Documentation/Driver/html/search/all_5f.html new file mode 100644 index 0000000..1f27755 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_5f.js b/CMSIS/Documentation/Driver/html/search/all_5f.js new file mode 100644 index 0000000..ff3fa22 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_5f.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['_5farm_5fdriver_5feth_5fmac_5f',['_ARM_Driver_ETH_MAC_',['../_driver___e_t_h___m_a_c_8h.html#ade64adbfd1c8076b7acf0b3994fb4df2',1,'Driver_ETH_MAC.h']]], + ['_5farm_5fdriver_5feth_5fphy_5f',['_ARM_Driver_ETH_PHY_',['../_driver___e_t_h___p_h_y_8h.html#a261d0c3527c5880cbce44c92c5779a95',1,'Driver_ETH_PHY.h']]], + ['_5farm_5fdriver_5fflash_5f',['_ARM_Driver_Flash_',['../_driver___flash_8h.html#a0955bb54d18c78992e20395e32c537e6',1,'Driver_Flash.h']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_61.html b/CMSIS/Documentation/Driver/html/search/all_61.html new file mode 100644 index 0000000..a3164d5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_61.js b/CMSIS/Documentation/Driver/html/search/all_61.js new file mode 100644 index 0000000..35ce44a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_61.js @@ -0,0 +1,911 @@ +var searchData= +[ + ['abortsequence',['AbortSequence',['../group__nand__interface__gr.html#ad6e1d53e9028baff856899f795c0d0c8',1,'ARM_DRIVER_NAND']]], + ['aborttransfer',['AbortTransfer',['../group__mci__interface__gr.html#afa8103cc20ba96420b7471455bbb87e4',1,'ARM_DRIVER_MCI']]], + ['active',['active',['../group__usbd__interface__gr.html#ab22b96a3efad48f5a542f46c1b224800',1,'ARM_USBD_STATE']]], + ['address_5f10_5fbit',['address_10_bit',['../group__i2c__interface__gr.html#a4ffaaf168a9f43e98d710abff5861ed5',1,'ARM_I2C_CAPABILITIES']]], + ['api',['api',['../group__common__drv__gr.html#ad180da20fbde1d3dafc074af87c19540',1,'ARM_DRIVER_VERSION']]], + ['arbitration_5flost',['arbitration_lost',['../group__i2c__interface__gr.html#ab3e3c8eeeae7fbe3c51dcb3d4104af24',1,'ARM_I2C_STATUS']]], + ['arm_5fcan_5fabort_5fmessage_5fsend',['ARM_CAN_ABORT_MESSAGE_SEND',['../group__can__mode__ctrls.html#gae051a548bf785104a934908360529438',1,'Driver_CAN.c']]], + ['arm_5fcan_5fapi_5fversion',['ARM_CAN_API_VERSION',['../_driver___c_a_n_8h.html#a88cba309175477a369375827c6e67d16',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg1',['ARM_CAN_BIT_PHASE_SEG1',['../group__can__timeseg__ctrls.html#ga03f1921ee97a7ebf5d767b6cacf40792',1,'Driver_CAN.c']]], + ['arm_5fcan_5fbit_5fphase_5fseg1_5fmsk',['ARM_CAN_BIT_PHASE_SEG1_Msk',['../_driver___c_a_n_8h.html#a4a661aa69c2825d9118a97695ba39546',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg1_5fpos',['ARM_CAN_BIT_PHASE_SEG1_Pos',['../_driver___c_a_n_8h.html#a23658b0cb98b00c900857aef64926922',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg2',['ARM_CAN_BIT_PHASE_SEG2',['../group__can__timeseg__ctrls.html#ga76de056d56803cb7a0d01978ee981e80',1,'Driver_CAN.c']]], + ['arm_5fcan_5fbit_5fphase_5fseg2_5fmsk',['ARM_CAN_BIT_PHASE_SEG2_Msk',['../_driver___c_a_n_8h.html#ae4df531026a911d53df401a4b9eec89c',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg2_5fpos',['ARM_CAN_BIT_PHASE_SEG2_Pos',['../_driver___c_a_n_8h.html#acd52b5921a5ab0ad0b251957a93a5993',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fprop_5fseg',['ARM_CAN_BIT_PROP_SEG',['../group__can__timeseg__ctrls.html#ga01183319a5a899eafea9ffe7af73d5ea',1,'Driver_CAN.c']]], + ['arm_5fcan_5fbit_5fprop_5fseg_5fmsk',['ARM_CAN_BIT_PROP_SEG_Msk',['../_driver___c_a_n_8h.html#a018bef85dc771e75a5d0f017393af01a',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fprop_5fseg_5fpos',['ARM_CAN_BIT_PROP_SEG_Pos',['../_driver___c_a_n_8h.html#a71e16a70efe5e4b21e5622d2b0cb7889',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fsjw',['ARM_CAN_BIT_SJW',['../group__can__timeseg__ctrls.html#gab32e97fa4edf497c111dd3f0d8779269',1,'Driver_CAN.c']]], + ['arm_5fcan_5fbit_5fsjw_5fmsk',['ARM_CAN_BIT_SJW_Msk',['../_driver___c_a_n_8h.html#ac3af13704609a6b14655f00b3d7ac419',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fsjw_5fpos',['ARM_CAN_BIT_SJW_Pos',['../_driver___c_a_n_8h.html#ac233859cfb244895fa47c02d8df02ee8',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbitrate_5ffd_5fdata',['ARM_CAN_BITRATE_FD_DATA',['../_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaaa6c9996de0cdf42da5c02086cd8f16dc',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbitrate_5fnominal',['ARM_CAN_BITRATE_NOMINAL',['../_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaa3b6d191c99f1eba4f01bcc5fbfaf67f3',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbitrate_5fselect',['ARM_CAN_BITRATE_SELECT',['../group__can__timeseg__ctrls.html#ga11c12020b81a63a73a8b53e96a7e3dea',1,'Driver_CAN.h']]], + ['arm_5fcan_5fcapabilities',['ARM_CAN_CAPABILITIES',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fcan_5fcontrol',['ARM_CAN_Control',['../group__can__interface__gr.html#ga8d9f0c5f03a8a81ab062b5aa57e5dea4',1,'Driver_CAN.c']]], + ['arm_5fcan_5fcontrol_5fmsk',['ARM_CAN_CONTROL_Msk',['../_driver___c_a_n_8h.html#a0b9ca7f824e6931dd0945673c4d29d14',1,'Driver_CAN.h']]], + ['arm_5fcan_5fcontrol_5fpos',['ARM_CAN_CONTROL_Pos',['../_driver___c_a_n_8h.html#aba948867397ee2081d82f5c6db5edd4b',1,'Driver_CAN.h']]], + ['arm_5fcan_5fcontrol_5fretransmission',['ARM_CAN_CONTROL_RETRANSMISSION',['../group__can__mode__ctrls.html#ga0453b8900ca3a0d5210ffd6a918a78e6',1,'Driver_CAN.c']]], + ['arm_5fcan_5fevent_5freceive',['ARM_CAN_EVENT_RECEIVE',['../group___c_a_n__events.html#ga2c1082561eeae3b2b8132e81fc241e47',1,'Driver_CAN.c']]], + ['arm_5fcan_5fevent_5freceive_5foverrun',['ARM_CAN_EVENT_RECEIVE_OVERRUN',['../group___c_a_n__events.html#ga6c2d29b5c49d5cd18e97f5931157a94c',1,'Driver_CAN.c']]], + ['arm_5fcan_5fevent_5fsend_5fcomplete',['ARM_CAN_EVENT_SEND_COMPLETE',['../group___c_a_n__events.html#ga486f0f35ebc7e3b5931ee68b56703503',1,'Driver_CAN.c']]], + ['arm_5fcan_5fevent_5funit_5factive',['ARM_CAN_EVENT_UNIT_ACTIVE',['../group___c_a_n__unit__events.html#ga0e65231ccb20684d7c8eac80385f8c18',1,'Driver_CAN.c']]], + ['arm_5fcan_5fevent_5funit_5fbus_5foff',['ARM_CAN_EVENT_UNIT_BUS_OFF',['../group___c_a_n__unit__events.html#gafa4f992a97b4ca0f079aec2990a69bed',1,'Driver_CAN.c']]], + ['arm_5fcan_5fevent_5funit_5fpassive',['ARM_CAN_EVENT_UNIT_PASSIVE',['../group___c_a_n__unit__events.html#ga9c529d6697fe21e69639224322f8c4b4',1,'Driver_CAN.c']]], + ['arm_5fcan_5fevent_5funit_5fwarning',['ARM_CAN_EVENT_UNIT_WARNING',['../group___c_a_n__unit__events.html#ga3690f864edd2e124f4f9875fdde9a2eb',1,'Driver_CAN.c']]], + ['arm_5fcan_5fextended_5fid',['ARM_CAN_EXTENDED_ID',['../group__can__identifer__ctrls.html#gae7d4efb6fb49e1ec47c2b12e22f37cae',1,'Driver_CAN.c']]], + ['arm_5fcan_5ffilter_5fid_5fexact_5fadd',['ARM_CAN_FILTER_ID_EXACT_ADD',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75aa734058b50573de3b0cc49311997806b',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5fexact_5fremove',['ARM_CAN_FILTER_ID_EXACT_REMOVE',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a6fdaecf3fa244ef1e4d1069d9c6c95f8',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5fmaskable_5fadd',['ARM_CAN_FILTER_ID_MASKABLE_ADD',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ac4ad302fa9b762c1d14964141e234ba9',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5fmaskable_5fremove',['ARM_CAN_FILTER_ID_MASKABLE_REMOVE',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ad9573d5d0e112aece7abc0bc24aa92fb',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5frange_5fadd',['ARM_CAN_FILTER_ID_RANGE_ADD',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a22123bef8e773844fce604c553bf2ed5',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5frange_5fremove',['ARM_CAN_FILTER_ID_RANGE_REMOVE',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a17fea7d388dc702bb3318ecae911f50d',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5foperation',['ARM_CAN_FILTER_OPERATION',['../group__can__filter__operation__ctrls.html#gacb04d0f8b3969ee69362ff2b62941d75',1,'Driver_CAN.h']]], + ['arm_5fcan_5fgetcapabilities',['ARM_CAN_GetCapabilities',['../group__can__interface__gr.html#ga35f21cabe1637b1be964024a8f77721c',1,'Driver_CAN.c']]], + ['arm_5fcan_5fgetclock',['ARM_CAN_GetClock',['../group__can__interface__gr.html#ga1fe6cc207415de604975ae251e269361',1,'Driver_CAN.c']]], + ['arm_5fcan_5fgetstatus',['ARM_CAN_GetStatus',['../group__can__interface__gr.html#ga676d6b567fc4ab3d44f5d7a50ec9419c',1,'Driver_CAN.c']]], + ['arm_5fcan_5fgetversion',['ARM_CAN_GetVersion',['../group__can__interface__gr.html#ga4256d5b23ffcb27759a05f8e6b854f13',1,'Driver_CAN.c']]], + ['arm_5fcan_5fid_5fide_5fmsk',['ARM_CAN_ID_IDE_Msk',['../_driver___c_a_n_8h.html#abd2dde58dd280c29aaba971dcc11ce66',1,'Driver_CAN.h']]], + ['arm_5fcan_5fid_5fide_5fpos',['ARM_CAN_ID_IDE_Pos',['../_driver___c_a_n_8h.html#a874d634951197372eaa0c54b0b5c726f',1,'Driver_CAN.h']]], + ['arm_5fcan_5finitialize',['ARM_CAN_Initialize',['../group__can__interface__gr.html#gaa72ceb25ba67e279d7432404632deb44',1,'Driver_CAN.c']]], + ['arm_5fcan_5finvalid_5fbit_5fphase_5fseg1',['ARM_CAN_INVALID_BIT_PHASE_SEG1',['../_driver___c_a_n_8h.html#aabdfe8d6ad5be07ad471dc00193afb48',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbit_5fphase_5fseg2',['ARM_CAN_INVALID_BIT_PHASE_SEG2',['../_driver___c_a_n_8h.html#a71cfbc4a4f8a37aafaeb6cf826d32c27',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbit_5fprop_5fseg',['ARM_CAN_INVALID_BIT_PROP_SEG',['../_driver___c_a_n_8h.html#a2911dd8c4017147690f274fc4ef88f44',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbit_5fsjw',['ARM_CAN_INVALID_BIT_SJW',['../_driver___c_a_n_8h.html#ad1c5957b266c8dcaf687288a2465d1b9',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbitrate',['ARM_CAN_INVALID_BITRATE',['../_driver___c_a_n_8h.html#a90b9d9323a6049fb4fcd1efe7c892294',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbitrate_5fselect',['ARM_CAN_INVALID_BITRATE_SELECT',['../_driver___c_a_n_8h.html#a09e23c4f9b9b8c68bd8687b43757110d',1,'Driver_CAN.h']]], + ['arm_5fcan_5flec_5fack_5ferror',['ARM_CAN_LEC_ACK_ERROR',['../group__can__status__code__ctrls.html#gaae6e827242137bc4d8976cd4ba73015f',1,'Driver_CAN.c']]], + ['arm_5fcan_5flec_5fbit_5ferror',['ARM_CAN_LEC_BIT_ERROR',['../group__can__status__code__ctrls.html#ga0571c3c3e341ac0579aa713fdfdae77e',1,'Driver_CAN.c']]], + ['arm_5fcan_5flec_5fcrc_5ferror',['ARM_CAN_LEC_CRC_ERROR',['../group__can__status__code__ctrls.html#ga1380f80b709ca921634aecdaf34a24e5',1,'Driver_CAN.c']]], + ['arm_5fcan_5flec_5fform_5ferror',['ARM_CAN_LEC_FORM_ERROR',['../group__can__status__code__ctrls.html#ga9f753ba50045b28653fb3215ec2e4b8a',1,'Driver_CAN.c']]], + ['arm_5fcan_5flec_5fno_5ferror',['ARM_CAN_LEC_NO_ERROR',['../group__can__status__code__ctrls.html#ga5332a311f44caec256d59087c705e1e9',1,'Driver_CAN.c']]], + ['arm_5fcan_5flec_5fstuff_5ferror',['ARM_CAN_LEC_STUFF_ERROR',['../group__can__status__code__ctrls.html#ga33cbda311f4c2f2464e4070dee78b2f2',1,'Driver_CAN.c']]], + ['arm_5fcan_5fmessageread',['ARM_CAN_MessageRead',['../group__can__interface__gr.html#gafc37084df5eab32f593c2744d35cf647',1,'Driver_CAN.c']]], + ['arm_5fcan_5fmessagesend',['ARM_CAN_MessageSend',['../group__can__interface__gr.html#ga0dcffd362b4093043442a030eaebbcfe',1,'Driver_CAN.c']]], + ['arm_5fcan_5fmode',['ARM_CAN_MODE',['../group__can__bus__mode__ctrls.html#gabbca99c46d478bcf822eee71cdf75dcd',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5finitialization',['ARM_CAN_MODE_INITIALIZATION',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda9967a5ebaa045afe54d75e5629676ddc',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5floopback_5fexternal',['ARM_CAN_MODE_LOOPBACK_EXTERNAL',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda5ee1ba60abcf39d575e7cb309e641b9b',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5floopback_5finternal',['ARM_CAN_MODE_LOOPBACK_INTERNAL',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda8579315576baa43860a398a30fd527d8',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5fmonitor',['ARM_CAN_MODE_MONITOR',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda904f68f08c84c4b85c763f5d98c574ab',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5fnormal',['ARM_CAN_MODE_NORMAL',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcdaa3190344bdf3452462e5c0518ac3cdc4',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5frestricted',['ARM_CAN_MODE_RESTRICTED',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda22a9bb26e68c2a04f641d466040d755d',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmsg_5finfo',['ARM_CAN_MSG_INFO',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___m_s_g___i_n_f_o',1,'']]], + ['arm_5fcan_5fno_5fmessage_5favailable',['ARM_CAN_NO_MESSAGE_AVAILABLE',['../_driver___c_a_n_8h.html#aab7a77388b250367f7e38844485bc513',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5fcapabilities',['ARM_CAN_OBJ_CAPABILITIES',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___o_b_j___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fcan_5fobj_5fconfig',['ARM_CAN_OBJ_CONFIG',['../group__can__obj__config__ctrls.html#gaa9488554de0575bc821c9f65213c4cd0',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5finactive',['ARM_CAN_OBJ_INACTIVE',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0aebbd0da59658805af30203be66d80249',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5frx',['ARM_CAN_OBJ_RX',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a14780ac7274831ee94f427cbbf67c003',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5frx_5frtr_5ftx_5fdata',['ARM_CAN_OBJ_RX_RTR_TX_DATA',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0ac5d28d180ea9e4328974ffcb8b928a0c',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5ftx',['ARM_CAN_OBJ_TX',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a3e20952f92855298cd0a39a7f47b3f3c',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5ftx_5frtr_5frx_5fdata',['ARM_CAN_OBJ_TX_RTR_RX_DATA',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a396d7a6cd2353e1a2936405ace6417f5',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobjectconfigure',['ARM_CAN_ObjectConfigure',['../group__can__interface__gr.html#ga00ec0715f6755a49dae5b60dca182630',1,'Driver_CAN.c']]], + ['arm_5fcan_5fobjectgetcapabilities',['ARM_CAN_ObjectGetCapabilities',['../group__can__interface__gr.html#ga45ab314f5121cf5a1b32d9adc600e0f7',1,'Driver_CAN.c']]], + ['arm_5fcan_5fobjectsetfilter',['ARM_CAN_ObjectSetFilter',['../group__can__interface__gr.html#ga4f9bc7088704483388e14872c9d5385d',1,'Driver_CAN.c']]], + ['arm_5fcan_5fpowercontrol',['ARM_CAN_PowerControl',['../group__can__interface__gr.html#ga6f634f126ac97daef2f3115aa7bfed7c',1,'Driver_CAN.c']]], + ['arm_5fcan_5fset_5ffd_5fmode',['ARM_CAN_SET_FD_MODE',['../group__can__mode__ctrls.html#ga978ab3e8860f644dea780e87b3478ff4',1,'Driver_CAN.c']]], + ['arm_5fcan_5fset_5ftransceiver_5fdelay',['ARM_CAN_SET_TRANSCEIVER_DELAY',['../group__can__mode__ctrls.html#ga398dd25256e644cd8d6506495a06bde8',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsetbitrate',['ARM_CAN_SetBitrate',['../group__can__interface__gr.html#ga88bb27a8525503a250cca7a2c4a5d07a',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsetmode',['ARM_CAN_SetMode',['../group__can__interface__gr.html#ga28226a6e223f9b95b4dafb7c2f48a855',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsignalobjectevent',['ARM_CAN_SignalObjectEvent',['../group__can__interface__gr.html#gabfcaeac9e2ca25936ba5a29f2d594e7e',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsignalobjectevent_5ft',['ARM_CAN_SignalObjectEvent_t',['../group__can__interface__gr.html#ga7ceceac3e9aa0981c5cacfab88efb4eb',1,'Driver_CAN.h']]], + ['arm_5fcan_5fsignalunitevent',['ARM_CAN_SignalUnitEvent',['../group__can__interface__gr.html#ga38795d1ed135ce3bd87f31ef1596bccf',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsignalunitevent_5ft',['ARM_CAN_SignalUnitEvent_t',['../group__can__interface__gr.html#gaac07b9fdf614bf439414f5417aaa376e',1,'Driver_CAN.h']]], + ['arm_5fcan_5fstandard_5fid',['ARM_CAN_STANDARD_ID',['../group__can__identifer__ctrls.html#ga561635b816ddaf5fb87377155fc692c7',1,'Driver_CAN.c']]], + ['arm_5fcan_5fstatus',['ARM_CAN_STATUS',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___s_t_a_t_u_s',1,'']]], + ['arm_5fcan_5funinitialize',['ARM_CAN_Uninitialize',['../group__can__interface__gr.html#ga1e3e364b64f2ab277399e3279cce5ef8',1,'Driver_CAN.c']]], + ['arm_5fcan_5funit_5fstate_5factive',['ARM_CAN_UNIT_STATE_ACTIVE',['../group__can__status__code__ctrls.html#ga5f72c295ee2b829a8ae33b96466cc0e8',1,'Driver_CAN.c']]], + ['arm_5fcan_5funit_5fstate_5finactive',['ARM_CAN_UNIT_STATE_INACTIVE',['../group__can__status__code__ctrls.html#ga911a65cc31304d57d283a21476d9ade7',1,'Driver_CAN.c']]], + ['arm_5fcan_5funit_5fstate_5fpassive',['ARM_CAN_UNIT_STATE_PASSIVE',['../group__can__status__code__ctrls.html#gace2db0f930f935054c21242f735e1922',1,'Driver_CAN.c']]], + ['arm_5fdriver_5fcan',['ARM_DRIVER_CAN',['../group__can__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___c_a_n',1,'']]], + ['arm_5fdriver_5ferror',['ARM_DRIVER_ERROR',['../group__execution__status.html#ga2f627075447749bb368d3b768be107cb',1,'Driver_Common.c']]], + ['arm_5fdriver_5ferror_5fbusy',['ARM_DRIVER_ERROR_BUSY',['../group__execution__status.html#ga13c1123319c7b9a4735d63447f35116b',1,'Driver_Common.c']]], + ['arm_5fdriver_5ferror_5fparameter',['ARM_DRIVER_ERROR_PARAMETER',['../group__execution__status.html#gac781d4b70ce17c4c2efe2db045be751c',1,'Driver_Common.c']]], + ['arm_5fdriver_5ferror_5fspecific',['ARM_DRIVER_ERROR_SPECIFIC',['../group__execution__status.html#ga5a2b5d68f6649598d099b88c0eaee3e5',1,'Driver_Common.c']]], + ['arm_5fdriver_5ferror_5ftimeout',['ARM_DRIVER_ERROR_TIMEOUT',['../group__execution__status.html#ga0bac892205bb2d586b822e8b178ab310',1,'Driver_Common.c']]], + ['arm_5fdriver_5ferror_5funsupported',['ARM_DRIVER_ERROR_UNSUPPORTED',['../group__execution__status.html#ga2efa59e480d82697795439220e6884e4',1,'Driver_Common.c']]], + ['arm_5fdriver_5feth_5fmac',['ARM_DRIVER_ETH_MAC',['../group__eth__mac__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___m_a_c',1,'']]], + ['arm_5fdriver_5feth_5fmac_5f',['ARM_Driver_ETH_MAC_',['../_driver___e_t_h___m_a_c_8h.html#abc6ea74fb57580e41b7321fb255da6d0',1,'Driver_ETH_MAC.h']]], + ['arm_5fdriver_5feth_5fphy',['ARM_DRIVER_ETH_PHY',['../group__eth__phy__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___p_h_y',1,'']]], + ['arm_5fdriver_5feth_5fphy_5f',['ARM_Driver_ETH_PHY_',['../_driver___e_t_h___p_h_y_8h.html#a4d6d9b4a50776a881488782b9576af59',1,'Driver_ETH_PHY.h']]], + ['arm_5fdriver_5fflash',['ARM_DRIVER_FLASH',['../group__flash__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___f_l_a_s_h',1,'']]], + ['arm_5fdriver_5fflash_5f',['ARM_Driver_Flash_',['../_driver___flash_8h.html#afda179843b93526222e15d61f226ac8f',1,'Driver_Flash.h']]], + ['arm_5fdriver_5fi2c',['ARM_DRIVER_I2C',['../group__i2c__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___i2_c',1,'']]], + ['arm_5fdriver_5fmci',['ARM_DRIVER_MCI',['../group__mci__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___m_c_i',1,'']]], + ['arm_5fdriver_5fnand',['ARM_DRIVER_NAND',['../group__nand__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___n_a_n_d',1,'']]], + ['arm_5fdriver_5fok',['ARM_DRIVER_OK',['../group__execution__status.html#ga85752c5de59e8adeb001e35ff5be6be7',1,'Driver_Common.c']]], + ['arm_5fdriver_5fsai',['ARM_DRIVER_SAI',['../group__sai__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_a_i',1,'']]], + ['arm_5fdriver_5fspi',['ARM_DRIVER_SPI',['../group__spi__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_p_i',1,'']]], + ['arm_5fdriver_5fusart',['ARM_DRIVER_USART',['../group__usart__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_a_r_t',1,'']]], + ['arm_5fdriver_5fusbd',['ARM_DRIVER_USBD',['../group__usbd__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_d',1,'']]], + ['arm_5fdriver_5fusbh',['ARM_DRIVER_USBH',['../group__usbh__host__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h',1,'']]], + ['arm_5fdriver_5fusbh_5fhci',['ARM_DRIVER_USBH_HCI',['../group__usbh__hci__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h___h_c_i',1,'']]], + ['arm_5fdriver_5fversion',['ARM_DRIVER_VERSION',['../group__common__drv__gr.html#struct_a_r_m___d_r_i_v_e_r___v_e_r_s_i_o_n',1,'']]], + ['arm_5fdriver_5fversion_5fmajor_5fminor',['ARM_DRIVER_VERSION_MAJOR_MINOR',['../_driver___common_8h.html#a43c7ca1eb0786d818624246c09932a74',1,'Driver_Common.h']]], + ['arm_5feth_5fduplex_5ffull',['ARM_ETH_DUPLEX_FULL',['../_driver___e_t_h_8h.html#a7848c83cd1fd6b2645c17919c2990354',1,'Driver_ETH.h']]], + ['arm_5feth_5fduplex_5fhalf',['ARM_ETH_DUPLEX_HALF',['../_driver___e_t_h_8h.html#acb15afc2bfe61c56049b7279d6eae8fe',1,'Driver_ETH.h']]], + ['arm_5feth_5finterface_5fmii',['ARM_ETH_INTERFACE_MII',['../group__eth__interface__types1.html#ga468c848ddf75d7925130171af1ec2ac7',1,'Driver_ETH.c']]], + ['arm_5feth_5finterface_5frmii',['ARM_ETH_INTERFACE_RMII',['../group__eth__interface__types1.html#gac0361b34fbec9c19840ad0349e4c388b',1,'Driver_ETH.c']]], + ['arm_5feth_5finterface_5fsmii',['ARM_ETH_INTERFACE_SMII',['../group__eth__interface__types1.html#ga24047d142be48bbc241e8d6eacb5cf7a',1,'Driver_ETH.c']]], + ['arm_5feth_5flink_5fdown',['ARM_ETH_LINK_DOWN',['../_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291a5f635c9352db6cb6fa9ad95660850487',1,'Driver_ETH.h']]], + ['arm_5feth_5flink_5finfo',['ARM_ETH_LINK_INFO',['../group__eth__interface__gr.html#struct_a_r_m___e_t_h___l_i_n_k___i_n_f_o',1,'']]], + ['arm_5feth_5flink_5fstate',['ARM_ETH_LINK_STATE',['../group__eth__interface__gr.html#gacf7db5320eb841b462a4af3c56cc9291',1,'Driver_ETH.h']]], + ['arm_5feth_5flink_5fup',['ARM_ETH_LINK_UP',['../_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291ab5e5b02c3c8a5a0fefcf69f3be7e31c1',1,'Driver_ETH.h']]], + ['arm_5feth_5fmac_5faddr',['ARM_ETH_MAC_ADDR',['../group__eth__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___a_d_d_r',1,'']]], + ['arm_5feth_5fmac_5faddress_5fall',['ARM_ETH_MAC_ADDRESS_ALL',['../group__eth__mac__configuration__ctrls.html#gab29ab9e295807f4c59ddd1c4642086d1',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5faddress_5fbroadcast',['ARM_ETH_MAC_ADDRESS_BROADCAST',['../group__eth__mac__configuration__ctrls.html#ga43792feab641c3c87eafb943351ab0f4',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5faddress_5fmulticast',['ARM_ETH_MAC_ADDRESS_MULTICAST',['../group__eth__mac__configuration__ctrls.html#ga1d3ff8c63362b385548fe91730f20588',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fapi_5fversion',['ARM_ETH_MAC_API_VERSION',['../_driver___e_t_h___m_a_c_8h.html#a89ade7fd7f91b1b6e21883a8f823a8cc',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fcapabilities',['ARM_ETH_MAC_CAPABILITIES',['../group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5feth_5fmac_5fchecksum_5foffload_5frx',['ARM_ETH_MAC_CHECKSUM_OFFLOAD_RX',['../group__eth__mac__configuration__ctrls.html#ga281dfed993b5666ed999709b9f28578f',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fchecksum_5foffload_5ftx',['ARM_ETH_MAC_CHECKSUM_OFFLOAD_TX',['../group__eth__mac__configuration__ctrls.html#ga7272d2c55aeeeadbb95c591cbf6c1a2e',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fconfigure',['ARM_ETH_MAC_CONFIGURE',['../group__eth__mac__ctrls.html#ga7819c7a1aa7bbc13dc42d0fd7e75a23c',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fcontrol',['ARM_ETH_MAC_Control',['../group__eth__mac__interface__gr.html#gac3e90c66058d20077f04ac8e8b8d0536',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fcontrol_5frx',['ARM_ETH_MAC_CONTROL_RX',['../group__eth__mac__ctrls.html#gae0964364b81b38b6e1fbf7196f3be869',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fcontrol_5ftx',['ARM_ETH_MAC_CONTROL_TX',['../group__eth__mac__ctrls.html#ga3a98c8a7ee5ed4b1ffd250eecaeefe5c',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fcontroltimer',['ARM_ETH_MAC_ControlTimer',['../group__eth__mac__interface__gr.html#ga85d9dc865af3702b71a514b18a588643',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fduplex_5ffull',['ARM_ETH_MAC_DUPLEX_FULL',['../group__eth__mac__configuration__ctrls.html#gad5a7d4b5b8a31825eff1504e3828d8f6',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fduplex_5fhalf',['ARM_ETH_MAC_DUPLEX_HALF',['../group__eth__mac__configuration__ctrls.html#gadb0fe2c5a1e21b0656d39c788ae22f36',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fduplex_5fmsk',['ARM_ETH_MAC_DUPLEX_Msk',['../_driver___e_t_h___m_a_c_8h.html#a9249afa842bb7e1088a7729542f91e22',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fduplex_5fpos',['ARM_ETH_MAC_DUPLEX_Pos',['../_driver___e_t_h___m_a_c_8h.html#a245688f6265e8d017435dc6d2c233b87',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fevent_5frx_5fframe',['ARM_ETH_MAC_EVENT_RX_FRAME',['../group___e_t_h___m_a_c__events.html#ga76943471a4a3e9e8c1ff9fe83e43bd47',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fevent_5ftimer_5falarm',['ARM_ETH_MAC_EVENT_TIMER_ALARM',['../group___e_t_h___m_a_c__events.html#ga4afc71ecac964f195e27be4acdbe7c61',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fevent_5ftx_5fframe',['ARM_ETH_MAC_EVENT_TX_FRAME',['../group___e_t_h___m_a_c__events.html#ga0c0328ff7cf886d5fdb53bb84ec03c1b',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fevent_5fwakeup',['ARM_ETH_MAC_EVENT_WAKEUP',['../group___e_t_h___m_a_c__events.html#ga1f3bdb219afa8f2a121b58cc84f5761c',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fflush',['ARM_ETH_MAC_FLUSH',['../group__eth__mac__ctrls.html#ga530812ef349a2e297f23de72e660fe27',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fflush_5frx',['ARM_ETH_MAC_FLUSH_RX',['../group__eth__mac__flush__flag__ctrls.html#gac18950811038319960756f063e1ef6d4',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fflush_5ftx',['ARM_ETH_MAC_FLUSH_TX',['../group__eth__mac__flush__flag__ctrls.html#ga2d10ff33f4f4927820c6a17a2262b120',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetcapabilities',['ARM_ETH_MAC_GetCapabilities',['../group__eth__mac__interface__gr.html#ga2b13b230502736d8c7679b359dff20d0',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetmacaddress',['ARM_ETH_MAC_GetMacAddress',['../group__eth__mac__interface__gr.html#ga66308c1e791952047e974bd653037fae',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetrxframesize',['ARM_ETH_MAC_GetRxFrameSize',['../group__eth__mac__interface__gr.html#ga5ee86d6b0efab5329b9bc191c23a466d',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetrxframetime',['ARM_ETH_MAC_GetRxFrameTime',['../group__eth__mac__interface__gr.html#gaa7c6865fb09754be869778142466c5e4',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgettxframetime',['ARM_ETH_MAC_GetTxFrameTime',['../group__eth__mac__interface__gr.html#ga115b5c7e149aec2b181de760f5d83f60',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetversion',['ARM_ETH_MAC_GetVersion',['../group__eth__mac__interface__gr.html#ga86b15062c297384ad5842dd57b9d6b1d',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5finitialize',['ARM_ETH_MAC_Initialize',['../group__eth__mac__interface__gr.html#gacf42d11b171cd032f0ec1de6db2b6832',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5floopback',['ARM_ETH_MAC_LOOPBACK',['../group__eth__mac__configuration__ctrls.html#gab32765f35c35b672ee476278fe24a24e',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fphy_5fread',['ARM_ETH_MAC_PHY_Read',['../group__eth__mac__interface__gr.html#gaded29ad58366e9222487db9944373c29',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fphy_5fwrite',['ARM_ETH_MAC_PHY_Write',['../group__eth__mac__interface__gr.html#ga79dd38672749aeebd28f39d9b4f813ce',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fpowercontrol',['ARM_ETH_MAC_PowerControl',['../group__eth__mac__interface__gr.html#ga346fef040a0e9bac5762a04a306b1be7',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5freadframe',['ARM_ETH_MAC_ReadFrame',['../group__eth__mac__interface__gr.html#ga4b79f57d8624bb4410ee12c73a483993',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsendframe',['ARM_ETH_MAC_SendFrame',['../group__eth__mac__interface__gr.html#ga5bf58defdb239ed7dc948f1da147a1c3',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsetaddressfilter',['ARM_ETH_MAC_SetAddressFilter',['../group__eth__mac__interface__gr.html#ga150fe30290275a4b32756f94208124e8',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsetmacaddress',['ARM_ETH_MAC_SetMacAddress',['../group__eth__mac__interface__gr.html#ga7cc3d17c7312c5032202dfd9a915f24a',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsignalevent',['ARM_ETH_MAC_SignalEvent',['../group__eth__mac__interface__gr.html#gae0697be4c4229601f3bfc17e2978ada6',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsignalevent_5ft',['ARM_ETH_MAC_SignalEvent_t',['../group__eth__mac__interface__gr.html#gadfc95cb09c541a29a72da86963668726',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fsleep',['ARM_ETH_MAC_SLEEP',['../group__eth__mac__ctrls.html#ga4afe66589216f566f529af52f9075fdf',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fspeed_5f100m',['ARM_ETH_MAC_SPEED_100M',['../group__eth__mac__configuration__ctrls.html#ga29160c83a7b0952c64053d86789c6490',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fspeed_5f10m',['ARM_ETH_MAC_SPEED_10M',['../group__eth__mac__configuration__ctrls.html#ga8c5b40d018ecfad05fe2546ba717c1d4',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fspeed_5f1g',['ARM_ETH_MAC_SPEED_1G',['../group__eth__mac__configuration__ctrls.html#ga8acefed744d8397a1777b9fd0e6230d2',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fspeed_5fmsk',['ARM_ETH_MAC_SPEED_Msk',['../_driver___e_t_h___m_a_c_8h.html#a7f3cf200085c3387a5572102af2ee2da',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fspeed_5fpos',['ARM_ETH_MAC_SPEED_Pos',['../_driver___e_t_h___m_a_c_8h.html#ad7fd5c5f4d4f39a56466c2d34cb699ef',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5ftime',['ARM_ETH_MAC_TIME',['../group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___t_i_m_e',1,'']]], + ['arm_5feth_5fmac_5ftimer_5fadjust_5fclock',['ARM_ETH_MAC_TIMER_ADJUST_CLOCK',['../group__eth__mac__time__control.html#ga85cb862eba0934e958a8552022588db7',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftimer_5fdec_5ftime',['ARM_ETH_MAC_TIMER_DEC_TIME',['../group__eth__mac__time__control.html#gaca9f1c4259d0342e9717a362de1ccf41',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftimer_5fget_5ftime',['ARM_ETH_MAC_TIMER_GET_TIME',['../group__eth__mac__time__control.html#gad9a439b9727c032a7d851df2a7a622c2',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftimer_5finc_5ftime',['ARM_ETH_MAC_TIMER_INC_TIME',['../group__eth__mac__time__control.html#ga3c57b3150717fb1a8cbbbac6a9b7ff69',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftimer_5fset_5falarm',['ARM_ETH_MAC_TIMER_SET_ALARM',['../group__eth__mac__time__control.html#ga04c2469ba027b020bc6b5baf3b51cf74',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftimer_5fset_5ftime',['ARM_ETH_MAC_TIMER_SET_TIME',['../group__eth__mac__time__control.html#ga5e867a003c06046d7944bcb5723e6049',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftx_5fframe_5fevent',['ARM_ETH_MAC_TX_FRAME_EVENT',['../group__eth__mac__frame__transmit__ctrls.html#ga91a923680ea0dad758b8950a3fbd237e',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftx_5fframe_5ffragment',['ARM_ETH_MAC_TX_FRAME_FRAGMENT',['../group__eth__mac__frame__transmit__ctrls.html#gab7bd6dea5bb57240291db71e95c99d9c',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5ftx_5fframe_5ftimestamp',['ARM_ETH_MAC_TX_FRAME_TIMESTAMP',['../group__eth__mac__frame__transmit__ctrls.html#gade137f65dd345ae40e93c77d495f9b54',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5funinitialize',['ARM_ETH_MAC_Uninitialize',['../group__eth__mac__interface__gr.html#gacb2c2ae06f32328775bffbdeaaabfb5d',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fvlan_5ffilter',['ARM_ETH_MAC_VLAN_FILTER',['../group__eth__mac__ctrls.html#gab332b58ba320e73864830dc42ad74181',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fvlan_5ffilter_5fid_5fonly',['ARM_ETH_MAC_VLAN_FILTER_ID_ONLY',['../group__eth__mac__vlan__filter__ctrls.html#ga2511c9e4c22a2b351ce2e454be1c9427',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fphy_5fapi_5fversion',['ARM_ETH_PHY_API_VERSION',['../_driver___e_t_h___p_h_y_8h.html#abb996b4afe22e0600aff5623076d0505',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fauto_5fnegotiate',['ARM_ETH_PHY_AUTO_NEGOTIATE',['../group__eth__phy__mode__ctrls.html#ga6a8c54f8fed3e5f68bd04eb715d10ab9',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fduplex_5ffull',['ARM_ETH_PHY_DUPLEX_FULL',['../group__eth__phy__mode__ctrls.html#ga5d06a94867c89cd311b6e279669321e3',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fduplex_5fhalf',['ARM_ETH_PHY_DUPLEX_HALF',['../group__eth__phy__mode__ctrls.html#gace797b3cd143be22f47c3ef61b20e14d',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fduplex_5fmsk',['ARM_ETH_PHY_DUPLEX_Msk',['../_driver___e_t_h___p_h_y_8h.html#a832fd4424dc9aaafac8034457396c259',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fduplex_5fpos',['ARM_ETH_PHY_DUPLEX_Pos',['../_driver___e_t_h___p_h_y_8h.html#aebafadc356d8e58407db156a5dac743f',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fgetlinkinfo',['ARM_ETH_PHY_GetLinkInfo',['../group__eth__phy__interface__gr.html#ga8c79dcd7a12656403f3befab3c8605a2',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fgetlinkstate',['ARM_ETH_PHY_GetLinkState',['../group__eth__phy__interface__gr.html#ga4085cd24ebe33b78d51a3c003da4a5ba',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fgetversion',['ARM_ETH_PHY_GetVersion',['../group__eth__phy__interface__gr.html#ga6850d33d699d9deee4e983a2c99e9734',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5finitialize',['ARM_ETH_PHY_Initialize',['../group__eth__phy__interface__gr.html#gacf2332a7fa2d84694b8e5f0838135589',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fisolate',['ARM_ETH_PHY_ISOLATE',['../group__eth__phy__mode__ctrls.html#ga8d68719e07c7af449b57c5df802376c8',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5floopback',['ARM_ETH_PHY_LOOPBACK',['../group__eth__phy__mode__ctrls.html#ga5f7e46cda8ab3c774fe7ce0a8a1ba3ec',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fpowercontrol',['ARM_ETH_PHY_PowerControl',['../group__eth__phy__interface__gr.html#gaba0f92561754dad8f8f03feb1cf2855e',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fread_5ft',['ARM_ETH_PHY_Read_t',['../group__eth__phy__interface__gr.html#ga987d5dd36f179192721c03df37d93e87',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fsetinterface',['ARM_ETH_PHY_SetInterface',['../group__eth__phy__interface__gr.html#gaedd8b5650a1259d572a1f303d3e2c01c',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fsetmode',['ARM_ETH_PHY_SetMode',['../group__eth__phy__interface__gr.html#ga9aa688c951f01ed9ca7c88cf51be8a09',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fspeed_5f100m',['ARM_ETH_PHY_SPEED_100M',['../group__eth__phy__mode__ctrls.html#gad1e8b2c8c210fa36949db9a34a993657',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fspeed_5f10m',['ARM_ETH_PHY_SPEED_10M',['../group__eth__phy__mode__ctrls.html#gabc7acc4ebe828c3d0825400e14ad20f0',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fspeed_5f1g',['ARM_ETH_PHY_SPEED_1G',['../group__eth__phy__mode__ctrls.html#ga046605398ceae99a176e6f82432ae710',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fspeed_5fmsk',['ARM_ETH_PHY_SPEED_Msk',['../_driver___e_t_h___p_h_y_8h.html#a8802cb0c4caed22c70d92f656e0811f5',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fspeed_5fpos',['ARM_ETH_PHY_SPEED_Pos',['../_driver___e_t_h___p_h_y_8h.html#a13700fab82aa60a3357614faa0619e97',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5funinitialize',['ARM_ETH_PHY_Uninitialize',['../group__eth__phy__interface__gr.html#ga26ea7e1e9825b959284241ebff6eea3f',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fwrite_5ft',['ARM_ETH_PHY_Write_t',['../group__eth__phy__interface__gr.html#gaf690fde16281b25f2ffa07f9c4e8e240',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fspeed_5f100m',['ARM_ETH_SPEED_100M',['../_driver___e_t_h_8h.html#a3bddfc4cf5645f8568d9cb6621fd606a',1,'Driver_ETH.h']]], + ['arm_5feth_5fspeed_5f10m',['ARM_ETH_SPEED_10M',['../_driver___e_t_h_8h.html#a1f834c4c785d7f69b1eaca011ee298ec',1,'Driver_ETH.h']]], + ['arm_5feth_5fspeed_5f1g',['ARM_ETH_SPEED_1G',['../_driver___e_t_h_8h.html#a218f470079b7c04de6776d467a53772a',1,'Driver_ETH.h']]], + ['arm_5fflash_5fapi_5fversion',['ARM_FLASH_API_VERSION',['../_driver___flash_8h.html#a16e58dce04f3f65d5183c973c9189fa4',1,'Driver_Flash.h']]], + ['arm_5fflash_5fcapabilities',['ARM_FLASH_CAPABILITIES',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fflash_5ferasechip',['ARM_Flash_EraseChip',['../group__flash__interface__gr.html#ga6cbaebe069d31d56c70b1f8f847e2d55',1,'Driver_Flash.c']]], + ['arm_5fflash_5ferasesector',['ARM_Flash_EraseSector',['../group__flash__interface__gr.html#ga0b2b4fe5a7be579cf3644995a765ea20',1,'Driver_Flash.c']]], + ['arm_5fflash_5fevent_5ferror',['ARM_FLASH_EVENT_ERROR',['../group___flash__events.html#ga0dfea52761c0eed83e5d73e7a7f69962',1,'Driver_Flash.c']]], + ['arm_5fflash_5fevent_5fready',['ARM_FLASH_EVENT_READY',['../group___flash__events.html#gaf7a9c4ad125ee90df35907d861151e23',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetcapabilities',['ARM_Flash_GetCapabilities',['../group__flash__interface__gr.html#ga27c23c998032cd47cb47293c0185ee5d',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetinfo',['ARM_Flash_GetInfo',['../group__flash__interface__gr.html#gac047b7509356e888502e0424a9d189ae',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetstatus',['ARM_Flash_GetStatus',['../group__flash__interface__gr.html#ga06885c0d4587d5a23f97614a8b849ef1',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetversion',['ARM_Flash_GetVersion',['../group__flash__interface__gr.html#ga1cfe24b2ffa571ee50ae544bd922b604',1,'Driver_Flash.c']]], + ['arm_5fflash_5finfo',['ARM_FLASH_INFO',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___i_n_f_o',1,'']]], + ['arm_5fflash_5finitialize',['ARM_Flash_Initialize',['../group__flash__interface__gr.html#gaa5b4bbe529d620d4ad4825588a4c4cf0',1,'Driver_Flash.c']]], + ['arm_5fflash_5fpowercontrol',['ARM_Flash_PowerControl',['../group__flash__interface__gr.html#gaa8baa4618ea33568f8b3752afb2ab5a2',1,'Driver_Flash.c']]], + ['arm_5fflash_5fprogramdata',['ARM_Flash_ProgramData',['../group__flash__interface__gr.html#ga947f24ea4042093fdb5605a68ae74f9d',1,'Driver_Flash.c']]], + ['arm_5fflash_5freaddata',['ARM_Flash_ReadData',['../group__flash__interface__gr.html#ga223138342383219896ed7e255faeb99a',1,'Driver_Flash.c']]], + ['arm_5fflash_5fsector',['ARM_FLASH_SECTOR',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_e_c_t_o_r',1,'']]], + ['arm_5fflash_5fsector_5finfo',['ARM_FLASH_SECTOR_INFO',['../_driver___flash_8h.html#aaeb2830d80f8aca0eaf72e3718537a60',1,'Driver_Flash.h']]], + ['arm_5fflash_5fsignalevent',['ARM_Flash_SignalEvent',['../group__flash__interface__gr.html#ga97b75555b5433b268add81f2e60f095a',1,'Driver_Flash.c']]], + ['arm_5fflash_5fsignalevent_5ft',['ARM_Flash_SignalEvent_t',['../group__flash__interface__gr.html#gabeb4ad43b1e6fa4ed956cd5c9371d327',1,'Driver_Flash.h']]], + ['arm_5fflash_5fstatus',['ARM_FLASH_STATUS',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_t_a_t_u_s',1,'']]], + ['arm_5fflash_5funinitialize',['ARM_Flash_Uninitialize',['../group__flash__interface__gr.html#gae23af293e9f8a67cdb19c7d0d562d415',1,'Driver_Flash.c']]], + ['arm_5fi2c_5fabort_5ftransfer',['ARM_I2C_ABORT_TRANSFER',['../group__i2c__control__codes.html#ga661e91aaa642d10ba80e3cc72f263040',1,'Driver_I2C.c']]], + ['arm_5fi2c_5faddress_5f10bit',['ARM_I2C_ADDRESS_10BIT',['../group__i2c__address__flags.html#ga16be1861b90774bf062feab2dbb829a4',1,'Driver_I2C.c']]], + ['arm_5fi2c_5faddress_5fgc',['ARM_I2C_ADDRESS_GC',['../group__i2c__address__flags.html#ga337f4f1aa082e9b593b2dcd43c50134e',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fapi_5fversion',['ARM_I2C_API_VERSION',['../_driver___i2_c_8h.html#a1d02c71e603ea569af1755251b1d179f',1,'Driver_I2C.h']]], + ['arm_5fi2c_5fbus_5fclear',['ARM_I2C_BUS_CLEAR',['../group__i2c__control__codes.html#gadacf04578770faca4b3eaae34b2c5f03',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fbus_5fspeed',['ARM_I2C_BUS_SPEED',['../group__i2c__control__codes.html#ga35733133237d65146abd9449f5353a7f',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fbus_5fspeed_5ffast',['ARM_I2C_BUS_SPEED_FAST',['../group__i2c__bus__speed__ctrls.html#ga39f49ef4cd1100a8d9dc9003329e5ecd',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fbus_5fspeed_5ffast_5fplus',['ARM_I2C_BUS_SPEED_FAST_PLUS',['../group__i2c__bus__speed__ctrls.html#ga2615262062e0327ab478ec85675ca649',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fbus_5fspeed_5fhigh',['ARM_I2C_BUS_SPEED_HIGH',['../group__i2c__bus__speed__ctrls.html#ga10aae5a8c7fcc90e514c5fb7393056ec',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fbus_5fspeed_5fstandard',['ARM_I2C_BUS_SPEED_STANDARD',['../group__i2c__bus__speed__ctrls.html#ga0aaa6398280fdd7ad651d7d6d44c863f',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fcapabilities',['ARM_I2C_CAPABILITIES',['../group__i2c__interface__gr.html#struct_a_r_m___i2_c___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fi2c_5fcontrol',['ARM_I2C_Control',['../group__i2c__interface__gr.html#ga828f5fa289d065675ef78a9a73d129dc',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5faddress_5fnack',['ARM_I2C_EVENT_ADDRESS_NACK',['../group___i2_c__events.html#ga98b815769634d9578526b43589caa017',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5farbitration_5flost',['ARM_I2C_EVENT_ARBITRATION_LOST',['../group___i2_c__events.html#gac9000f44a578e2117d64dbc2093cec6d',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5fbus_5fclear',['ARM_I2C_EVENT_BUS_CLEAR',['../group___i2_c__events.html#ga81ca21fad73dac1ffaff58921f848ea9',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5fbus_5ferror',['ARM_I2C_EVENT_BUS_ERROR',['../group___i2_c__events.html#gaeef542840355131c18b53fd9ed1904a8',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5fgeneral_5fcall',['ARM_I2C_EVENT_GENERAL_CALL',['../group___i2_c__events.html#ga3ab54410b6410ed3a58762ff0c0d68b9',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5fslave_5freceive',['ARM_I2C_EVENT_SLAVE_RECEIVE',['../group___i2_c__events.html#gabd875b57ce39dadd849c53b885ad6661',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5fslave_5ftransmit',['ARM_I2C_EVENT_SLAVE_TRANSMIT',['../group___i2_c__events.html#gacfbbec9af083d35e8ea87ad16e9c6ec2',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5ftransfer_5fdone',['ARM_I2C_EVENT_TRANSFER_DONE',['../group___i2_c__events.html#ga5992dc0f6e839c4d066cfa83d535f30d',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fevent_5ftransfer_5fincomplete',['ARM_I2C_EVENT_TRANSFER_INCOMPLETE',['../group___i2_c__events.html#gafac3989c7b57727e1bed4ee9f2496ac9',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetcapabilities',['ARM_I2C_GetCapabilities',['../group__i2c__interface__gr.html#gad20e6731f627aa7b9d6e99a50806122e',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetdatacount',['ARM_I2C_GetDataCount',['../group__i2c__interface__gr.html#ga19db20ad8d7fde84d07f6db4d75f4b7c',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetstatus',['ARM_I2C_GetStatus',['../group__i2c__interface__gr.html#gaba4e0f3eb4018e7dafd51b675c465f3e',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetversion',['ARM_I2C_GetVersion',['../group__i2c__interface__gr.html#ga956bd87590c7fb6e23609a0abfb5412c',1,'Driver_I2C.c']]], + ['arm_5fi2c_5finitialize',['ARM_I2C_Initialize',['../group__i2c__interface__gr.html#ga79d2f7d01b3a681d1cf0d70ac6692696',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fmasterreceive',['ARM_I2C_MasterReceive',['../group__i2c__interface__gr.html#gafa22504bcf88a85584dfe6e0dd270ad5',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fmastertransmit',['ARM_I2C_MasterTransmit',['../group__i2c__interface__gr.html#ga8bf4214580149d5a5d2360f71f0feb94',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fown_5faddress',['ARM_I2C_OWN_ADDRESS',['../group__i2c__control__codes.html#ga69d130b9f8aa34d6df5334ab67c74307',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fpowercontrol',['ARM_I2C_PowerControl',['../group__i2c__interface__gr.html#ga734a69200e063fdbfb5110062afe9329',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fsignalevent',['ARM_I2C_SignalEvent',['../group__i2c__interface__gr.html#gad4f93d2895794b416dc8d8e9de91c05e',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fsignalevent_5ft',['ARM_I2C_SignalEvent_t',['../group__i2c__interface__gr.html#ga24277c48248a09b0dd7f12bbe22ce13c',1,'Driver_I2C.h']]], + ['arm_5fi2c_5fslavereceive',['ARM_I2C_SlaveReceive',['../group__i2c__interface__gr.html#gae3c9abccd1d377385d3d4cfe29035164',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fslavetransmit',['ARM_I2C_SlaveTransmit',['../group__i2c__interface__gr.html#gafe164f30eba78f066272373b98a62cd4',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fstatus',['ARM_I2C_STATUS',['../group__i2c__interface__gr.html#struct_a_r_m___i2_c___s_t_a_t_u_s',1,'']]], + ['arm_5fi2c_5funinitialize',['ARM_I2C_Uninitialize',['../group__i2c__interface__gr.html#ga30d8bf600b6b3182a1f867407b3d6e75',1,'Driver_I2C.c']]], + ['arm_5fmci_5faborttransfer',['ARM_MCI_AbortTransfer',['../group__mci__interface__gr.html#ga3dfcf7b7186b711f9b63a096be816fe5',1,'Driver_MCI.c']]], + ['arm_5fmci_5fapi_5fversion',['ARM_MCI_API_VERSION',['../_driver___m_c_i_8h.html#ac1863acc4889811dc5f45ec0e059d892',1,'Driver_MCI.h']]], + ['arm_5fmci_5fboot_5fack',['ARM_MCI_BOOT_ACK',['../group__mci__send__command__flags__ctrls.html#ga8c55bc0a310630d49810802ccd1bb10d',1,'Driver_MCI.c']]], + ['arm_5fmci_5fboot_5falternative',['ARM_MCI_BOOT_ALTERNATIVE',['../group__mci__send__command__flags__ctrls.html#ga30bd304652d4f870ee7ce61c266a9348',1,'Driver_MCI.c']]], + ['arm_5fmci_5fboot_5foperation',['ARM_MCI_BOOT_OPERATION',['../group__mci__send__command__flags__ctrls.html#gae04254f51dfd9838583206cae0a5f8f7',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fcmd_5fmode',['ARM_MCI_BUS_CMD_MODE',['../group__mci__mode__ctrls.html#ga8b7571e37520c07d8ef4f697f3886715',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fcmd_5fopen_5fdrain',['ARM_MCI_BUS_CMD_OPEN_DRAIN',['../group__mci__cmd__line__ctrls.html#gaadf8667985731964d57d1ed672e90fd3',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fcmd_5fpush_5fpull',['ARM_MCI_BUS_CMD_PUSH_PULL',['../group__mci__cmd__line__ctrls.html#gaaed404312d9bc073e3489779a911c7dc',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fdata_5fwidth',['ARM_MCI_BUS_DATA_WIDTH',['../group__mci__mode__ctrls.html#ga876d964d0eeacdb16e93f7558a544587',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fdata_5fwidth_5f1',['ARM_MCI_BUS_DATA_WIDTH_1',['../group__mci__bus__data__width__ctrls.html#gaa09a00d810a4dfd1d1824311ee290585',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fdata_5fwidth_5f4',['ARM_MCI_BUS_DATA_WIDTH_4',['../group__mci__bus__data__width__ctrls.html#gaa28150d8c3789e8cf1bcda318f74a28c',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fdata_5fwidth_5f4_5fddr',['ARM_MCI_BUS_DATA_WIDTH_4_DDR',['../group__mci__bus__data__width__ctrls.html#gaccb174bd131f8fd8cd9a56439a8ebb60',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fdata_5fwidth_5f8',['ARM_MCI_BUS_DATA_WIDTH_8',['../group__mci__bus__data__width__ctrls.html#ga3bb99a2d98ba9fb8c5bc97fa2b8ef469',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fdata_5fwidth_5f8_5fddr',['ARM_MCI_BUS_DATA_WIDTH_8_DDR',['../group__mci__bus__data__width__ctrls.html#ga7b31f81ae703229095fe9efcfbe80b47',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fdefault_5fspeed',['ARM_MCI_BUS_DEFAULT_SPEED',['../group__mci__bus__speed__ctrls.html#ga601fa8b27ab2e5f6d90c93d54c8f412d',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fhigh_5fspeed',['ARM_MCI_BUS_HIGH_SPEED',['../group__mci__bus__speed__ctrls.html#gaabda746ac7d6b4497358ff655a8ea6be',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fspeed',['ARM_MCI_BUS_SPEED',['../group__mci__mode__ctrls.html#ga7f982d2e5aec768307d35a83c65fb3ef',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fspeed_5fmode',['ARM_MCI_BUS_SPEED_MODE',['../group__mci__mode__ctrls.html#gaf7ede525eabc618fbbb9f7a294c8ed96',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fuhs_5fddr50',['ARM_MCI_BUS_UHS_DDR50',['../group__mci__bus__speed__ctrls.html#ga04da920a5cac99eab9784527057f1b9c',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fuhs_5fsdr104',['ARM_MCI_BUS_UHS_SDR104',['../group__mci__bus__speed__ctrls.html#gad2bab563e7bbb4bcf6bdabe6a13dadf4',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fuhs_5fsdr12',['ARM_MCI_BUS_UHS_SDR12',['../group__mci__bus__speed__ctrls.html#ga0473c44a7b65044b3c6a8e7012009a4a',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fuhs_5fsdr25',['ARM_MCI_BUS_UHS_SDR25',['../group__mci__bus__speed__ctrls.html#gae32422631052307b3c4d269b25415907',1,'Driver_MCI.c']]], + ['arm_5fmci_5fbus_5fuhs_5fsdr50',['ARM_MCI_BUS_UHS_SDR50',['../group__mci__bus__speed__ctrls.html#ga9f326c02391d965918ae619b912b81e7',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcapabilities',['ARM_MCI_CAPABILITIES',['../group__mci__interface__gr.html#struct_a_r_m___m_c_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fmci_5fcard_5finitialize',['ARM_MCI_CARD_INITIALIZE',['../group__mci__send__command__flags__ctrls.html#ga81606bd94ce782e2c3764b913f929f60',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcardpower',['ARM_MCI_CardPower',['../group__mci__interface__gr.html#gab161f80e0eda2815f3e0ebbba1314ff0',1,'Driver_MCI.c']]], + ['arm_5fmci_5fccs',['ARM_MCI_CCS',['../group__mci__send__command__flags__ctrls.html#gab82c472e4ca3fca12ae3291e25997f00',1,'Driver_MCI.c']]], + ['arm_5fmci_5fccsd',['ARM_MCI_CCSD',['../group__mci__send__command__flags__ctrls.html#gab9df5169b37621764f8bb0f93db5281a',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcontrol',['ARM_MCI_Control',['../group__mci__interface__gr.html#gaec0506a2aa4ae75cf6bc02528f36fe30',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcontrol_5fclock_5fidle',['ARM_MCI_CONTROL_CLOCK_IDLE',['../group__mci__mode__ctrls.html#ga889473fbfbdcb89aab4d53cc8a13f615',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcontrol_5fread_5fwait',['ARM_MCI_CONTROL_READ_WAIT',['../group__mci__mode__ctrls.html#gaaa10c5aa7a8108aa59c3734b3eec2e3a',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcontrol_5freset',['ARM_MCI_CONTROL_RESET',['../group__mci__mode__ctrls.html#ga21e403e8c3fa8cc75431a513813f0a16',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcss_5ftimeout',['ARM_MCI_CSS_TIMEOUT',['../group__mci__mode__ctrls.html#gae97b1a819a5d326b1f1009b0d6d48b5a',1,'Driver_MCI.c']]], + ['arm_5fmci_5fdata_5ftimeout',['ARM_MCI_DATA_TIMEOUT',['../group__mci__mode__ctrls.html#ga09a58821e42595f0c2e55f8cc2d32ceb',1,'Driver_MCI.c']]], + ['arm_5fmci_5fdriver_5fstrength',['ARM_MCI_DRIVER_STRENGTH',['../group__mci__mode__ctrls.html#ga78068f519139f2ae7b09e0608070aaf6',1,'Driver_MCI.c']]], + ['arm_5fmci_5fdriver_5ftype_5fa',['ARM_MCI_DRIVER_TYPE_A',['../group__mci__driver__strength__ctrls.html#ga64eb1c4847711a262f084c361b60a912',1,'Driver_MCI.c']]], + ['arm_5fmci_5fdriver_5ftype_5fb',['ARM_MCI_DRIVER_TYPE_B',['../group__mci__driver__strength__ctrls.html#ga078d3c3bc7c9335b92e6445a0abafc46',1,'Driver_MCI.c']]], + ['arm_5fmci_5fdriver_5ftype_5fc',['ARM_MCI_DRIVER_TYPE_C',['../group__mci__driver__strength__ctrls.html#ga3da11696d1fcd3930eb7e70fe097d747',1,'Driver_MCI.c']]], + ['arm_5fmci_5fdriver_5ftype_5fd',['ARM_MCI_DRIVER_TYPE_D',['../group__mci__driver__strength__ctrls.html#ga8185f82b1d8857a3f0eb461d664f2b3d',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fcard_5finserted',['ARM_MCI_EVENT_CARD_INSERTED',['../group__mci__event__gr.html#gae2cf8ef238c092e94e96a01602f3a23c',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fcard_5fremoved',['ARM_MCI_EVENT_CARD_REMOVED',['../group__mci__event__gr.html#ga92ba748f9324ec13898f10456f17c8cc',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fccs',['ARM_MCI_EVENT_CCS',['../group__mci__event__gr.html#ga8161f3960ddf2a3cdc3c4c83148c6099',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fccs_5ftimeout',['ARM_MCI_EVENT_CCS_TIMEOUT',['../group__mci__event__gr.html#gafa8cbcd597a05c64901eeb777cc0b74f',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fcommand_5fcomplete',['ARM_MCI_EVENT_COMMAND_COMPLETE',['../group__mci__event__gr.html#gae69356c75d55103d93ef91ac1bc02b49',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fcommand_5ferror',['ARM_MCI_EVENT_COMMAND_ERROR',['../group__mci__event__gr.html#ga373aeb3eca0e4c6d159312488a130442',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fcommand_5ftimeout',['ARM_MCI_EVENT_COMMAND_TIMEOUT',['../group__mci__event__gr.html#gab79b3ab4dcd03c38df1e173fa903d822',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5fsdio_5finterrupt',['ARM_MCI_EVENT_SDIO_INTERRUPT',['../group__mci__event__gr.html#ga75a050fdfe04e6816e96c938d6a6c197',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5ftransfer_5fcomplete',['ARM_MCI_EVENT_TRANSFER_COMPLETE',['../group__mci__event__gr.html#gabc3c468dedaed890683360f2c5c65bea',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5ftransfer_5ferror',['ARM_MCI_EVENT_TRANSFER_ERROR',['../group__mci__event__gr.html#ga5d2cee5ba6d0e40ad505983155706c29',1,'Driver_MCI.c']]], + ['arm_5fmci_5fevent_5ftransfer_5ftimeout',['ARM_MCI_EVENT_TRANSFER_TIMEOUT',['../group__mci__event__gr.html#ga614e7c7226adbaa8ec4165bf8b87ef27',1,'Driver_MCI.c']]], + ['arm_5fmci_5fgetcapabilities',['ARM_MCI_GetCapabilities',['../group__mci__interface__gr.html#ga7e5a78b6e6409189833a0b72a0a3c48a',1,'Driver_MCI.c']]], + ['arm_5fmci_5fgetstatus',['ARM_MCI_GetStatus',['../group__mci__interface__gr.html#ga8d61aa42ce78d1864fa928c1f273cbd9',1,'Driver_MCI.c']]], + ['arm_5fmci_5fgetversion',['ARM_MCI_GetVersion',['../group__mci__interface__gr.html#ga3418183015dbf3025b94eebaedb00ab1',1,'Driver_MCI.c']]], + ['arm_5fmci_5finitialize',['ARM_MCI_Initialize',['../group__mci__interface__gr.html#ga6f34d4ab362e596ddaf23aac093268cf',1,'Driver_MCI.c']]], + ['arm_5fmci_5finterrupt_5fcommand',['ARM_MCI_INTERRUPT_COMMAND',['../group__mci__send__command__flags__ctrls.html#gab2bfeedf1dc2df1872ebbcc559a7385a',1,'Driver_MCI.c']]], + ['arm_5fmci_5finterrupt_5fresponse',['ARM_MCI_INTERRUPT_RESPONSE',['../group__mci__send__command__flags__ctrls.html#gabc31b6b26988998c84c92a9a698fd5dc',1,'Driver_MCI.c']]], + ['arm_5fmci_5fmonitor_5fsdio_5finterrupt',['ARM_MCI_MONITOR_SDIO_INTERRUPT',['../group__mci__mode__ctrls.html#ga19fd7d3b74ac48ca74a2e138b3ee9963',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvccq_5f1v2',['ARM_MCI_POWER_VCCQ_1V2',['../group__mci__card__power__ctrls.html#ga5304b3b6cadc5113f841c3d526ab5db6',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvccq_5f1v8',['ARM_MCI_POWER_VCCQ_1V8',['../group__mci__card__power__ctrls.html#gaaf389e0a139d5808dff8ebb6897d4c7b',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvccq_5f3v3',['ARM_MCI_POWER_VCCQ_3V3',['../group__mci__card__power__ctrls.html#ga91a7201173cc092eaf7f0bcee028871e',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvccq_5fmsk',['ARM_MCI_POWER_VCCQ_Msk',['../_driver___m_c_i_8h.html#aef11db3d5da54f0e0cf2e346f08622e2',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpower_5fvccq_5foff',['ARM_MCI_POWER_VCCQ_OFF',['../group__mci__card__power__ctrls.html#ga6929c98a6bc8d898939a95111509220b',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvccq_5fpos',['ARM_MCI_POWER_VCCQ_Pos',['../_driver___m_c_i_8h.html#ae2de0ecc2d5d73b134c18b80bedb23a7',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpower_5fvdd_5f1v8',['ARM_MCI_POWER_VDD_1V8',['../group__mci__card__power__ctrls.html#ga2ce8e379c3691da3b51c9c97d61770ef',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvdd_5f3v3',['ARM_MCI_POWER_VDD_3V3',['../group__mci__card__power__ctrls.html#ga565ecd36c8d0379fb4172da577cc540d',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvdd_5fmsk',['ARM_MCI_POWER_VDD_Msk',['../_driver___m_c_i_8h.html#a58913d82ea4abd60dee50cec024de4a0',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpower_5fvdd_5foff',['ARM_MCI_POWER_VDD_OFF',['../group__mci__card__power__ctrls.html#ga288fbd80b384739a80e8f3ec31205cf5',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpower_5fvdd_5fpos',['ARM_MCI_POWER_VDD_Pos',['../_driver___m_c_i_8h.html#a8de1e84f879b741ed1e13a0aac93a246',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpowercontrol',['ARM_MCI_PowerControl',['../group__mci__interface__gr.html#ga19752749d04ed22dc91c4294645e0244',1,'Driver_MCI.c']]], + ['arm_5fmci_5freadcd',['ARM_MCI_ReadCD',['../group__mci__interface__gr.html#ga012fca8f1ce5366fce14b708c771c635',1,'Driver_MCI.c']]], + ['arm_5fmci_5freadwp',['ARM_MCI_ReadWP',['../group__mci__interface__gr.html#ga3d70286918405ac81fa795c7d09dc6fd',1,'Driver_MCI.c']]], + ['arm_5fmci_5fresponse_5fcrc',['ARM_MCI_RESPONSE_CRC',['../group__mci__send__command__flags__ctrls.html#ga6ab3f4c1a2bf0fdb81fbcf7a5698f2de',1,'Driver_MCI.c']]], + ['arm_5fmci_5fresponse_5findex',['ARM_MCI_RESPONSE_INDEX',['../group__mci__send__command__flags__ctrls.html#ga497abf878c6e12f54cc7ddb92da76c4a',1,'Driver_MCI.c']]], + ['arm_5fmci_5fresponse_5flong',['ARM_MCI_RESPONSE_LONG',['../group__mci__send__command__flags__ctrls.html#gac49c7b39a7c51bd2193e048835bec2fb',1,'Driver_MCI.c']]], + ['arm_5fmci_5fresponse_5fmsk',['ARM_MCI_RESPONSE_Msk',['../_driver___m_c_i_8h.html#af12ae94785114eb31b1e077d52eda3fd',1,'Driver_MCI.h']]], + ['arm_5fmci_5fresponse_5fnone',['ARM_MCI_RESPONSE_NONE',['../group__mci__send__command__flags__ctrls.html#ga70934cef80884e8c75fb4eebf8452118',1,'Driver_MCI.c']]], + ['arm_5fmci_5fresponse_5fpos',['ARM_MCI_RESPONSE_Pos',['../_driver___m_c_i_8h.html#a125bb871e85f4646ff0fa8be1ab7c8c9',1,'Driver_MCI.h']]], + ['arm_5fmci_5fresponse_5fshort',['ARM_MCI_RESPONSE_SHORT',['../group__mci__send__command__flags__ctrls.html#gaa5ddf1cf772b234e3c247039effd0e7b',1,'Driver_MCI.c']]], + ['arm_5fmci_5fresponse_5fshort_5fbusy',['ARM_MCI_RESPONSE_SHORT_BUSY',['../group__mci__send__command__flags__ctrls.html#gaa1d541b0edf32ec05e68d623c727ef9c',1,'Driver_MCI.c']]], + ['arm_5fmci_5fresume_5ftransfer',['ARM_MCI_RESUME_TRANSFER',['../group__mci__mode__ctrls.html#gac4907319499072fddf61f2f83b0dd966',1,'Driver_MCI.c']]], + ['arm_5fmci_5fsendcommand',['ARM_MCI_SendCommand',['../group__mci__interface__gr.html#ga5a431da89feabc2b4bc0c27943dff6f2',1,'Driver_MCI.c']]], + ['arm_5fmci_5fsetuptransfer',['ARM_MCI_SetupTransfer',['../group__mci__interface__gr.html#gaaec681bcd8e6811c5743e33ee0f35ed1',1,'Driver_MCI.c']]], + ['arm_5fmci_5fsignalevent',['ARM_MCI_SignalEvent',['../group__mci__interface__gr.html#gaac2dbd1c1a98436938c5d0d6248cb700',1,'Driver_MCI.c']]], + ['arm_5fmci_5fsignalevent_5ft',['ARM_MCI_SignalEvent_t',['../group__mci__interface__gr.html#ga0d14651f6788c1ffd81544602565faf1',1,'Driver_MCI.h']]], + ['arm_5fmci_5fstatus',['ARM_MCI_STATUS',['../group__mci__interface__gr.html#struct_a_r_m___m_c_i___s_t_a_t_u_s',1,'']]], + ['arm_5fmci_5fsuspend_5ftransfer',['ARM_MCI_SUSPEND_TRANSFER',['../group__mci__mode__ctrls.html#ga04cf174b0ef13240f26225bf8e45a4a0',1,'Driver_MCI.c']]], + ['arm_5fmci_5ftransfer_5fblock',['ARM_MCI_TRANSFER_BLOCK',['../group__mci__transfer__ctrls.html#ga4ced782e7c0c70d5f0edbddd1e48323b',1,'Driver_MCI.c']]], + ['arm_5fmci_5ftransfer_5fdata',['ARM_MCI_TRANSFER_DATA',['../group__mci__send__command__flags__ctrls.html#ga8aa566f69aa74ed416213df6ca3267bd',1,'Driver_MCI.c']]], + ['arm_5fmci_5ftransfer_5fread',['ARM_MCI_TRANSFER_READ',['../group__mci__transfer__ctrls.html#gaa6f3be235a9dce5c66be8fe64f399846',1,'Driver_MCI.c']]], + ['arm_5fmci_5ftransfer_5fstream',['ARM_MCI_TRANSFER_STREAM',['../group__mci__transfer__ctrls.html#gac7db0cffd571e60758627d889ba7a432',1,'Driver_MCI.c']]], + ['arm_5fmci_5ftransfer_5fwrite',['ARM_MCI_TRANSFER_WRITE',['../group__mci__transfer__ctrls.html#gaddc60aab15f75993a99f98f71ddbd50c',1,'Driver_MCI.c']]], + ['arm_5fmci_5fuhs_5ftuning_5foperation',['ARM_MCI_UHS_TUNING_OPERATION',['../group__mci__mode__ctrls.html#ga98853f60bdc085aeeccd66f7bdf22d3d',1,'Driver_MCI.c']]], + ['arm_5fmci_5fuhs_5ftuning_5fresult',['ARM_MCI_UHS_TUNING_RESULT',['../group__mci__mode__ctrls.html#gabd3af448e26da5657c1c5a03330476b7',1,'Driver_MCI.c']]], + ['arm_5fmci_5funinitialize',['ARM_MCI_Uninitialize',['../group__mci__interface__gr.html#gaef8183e77797e74997551d03646d42c2',1,'Driver_MCI.c']]], + ['arm_5fmci_5fwait_5fbusy',['ARM_MCI_WAIT_BUSY',['../group__mci__send__command__flags__ctrls.html#ga68e879799bb27a1b13baf57ed19d719d',1,'Driver_MCI.c']]], + ['arm_5fnand_5fabortsequence',['ARM_NAND_AbortSequence',['../group__nand__interface__gr.html#ga00832861f018db0d8368900b099ecd30',1,'Driver_NAND.c']]], + ['arm_5fnand_5fapi_5fversion',['ARM_NAND_API_VERSION',['../_driver___n_a_n_d_8h.html#a121ff96c31275cef4bb7e86007665e1c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fdata_5fwidth',['ARM_NAND_BUS_DATA_WIDTH',['../group__nand__control__codes.html#ga2d3356f5b47871c465ae7136a2c533f4',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fdata_5fwidth_5f16',['ARM_NAND_BUS_DATA_WIDTH_16',['../group__nand__data__bus__width__codes.html#ga49e0e3a946a4d9f26dbd5b32ccc3b2f3',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fdata_5fwidth_5f8',['ARM_NAND_BUS_DATA_WIDTH_8',['../group__nand__data__bus__width__codes.html#ga578051cc193ae0b7125aec8007071d21',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr',['ARM_NAND_BUS_DDR',['../group__nand__bus__mode__codes.html#ga82b8261b3d0d85881535adada318a7df',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2',['ARM_NAND_BUS_DDR2',['../group__nand__bus__mode__codes.html#ga13c102201d6021db184a2f068656c518',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fcmpd',['ARM_NAND_BUS_DDR2_CMPD',['../group__nand__bus__mode__codes.html#gad38354e4a34adbf881afc7f89ff06e89',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fcmpr',['ARM_NAND_BUS_DDR2_CMPR',['../group__nand__bus__mode__codes.html#ga8a2d599082b9fe56cee1c6454bb3c6a1',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5f0',['ARM_NAND_BUS_DDR2_DI_WCYC_0',['../group__nand__bus__mode__codes.html#gaeee1853dea5e96cb19d2596cc0e70169',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5f1',['ARM_NAND_BUS_DDR2_DI_WCYC_1',['../group__nand__bus__mode__codes.html#ga42560a1f046e20cc4956276156c4ce25',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5f2',['ARM_NAND_BUS_DDR2_DI_WCYC_2',['../group__nand__bus__mode__codes.html#gaad2e7807292d84a5070143626f5c2756',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5f4',['ARM_NAND_BUS_DDR2_DI_WCYC_4',['../group__nand__bus__mode__codes.html#ga3ebb54a1ae971cd34f3c8fc9ff3ab6d5',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5fmsk',['ARM_NAND_BUS_DDR2_DI_WCYC_Msk',['../_driver___n_a_n_d_8h.html#ad9ab38101de68a1bc186f5687f63f7c3',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5fpos',['ARM_NAND_BUS_DDR2_DI_WCYC_Pos',['../_driver___n_a_n_d_8h.html#aa80b898cdf665aa14ff0e181e4ff31f1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5f0',['ARM_NAND_BUS_DDR2_DO_WCYC_0',['../group__nand__bus__mode__codes.html#ga77348df5f5c2c96bcaeec60b6da02c1b',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5f1',['ARM_NAND_BUS_DDR2_DO_WCYC_1',['../group__nand__bus__mode__codes.html#ga5839be0b4b2eb930ec039a3403b5e89e',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5f2',['ARM_NAND_BUS_DDR2_DO_WCYC_2',['../group__nand__bus__mode__codes.html#ga10a1ef3be69bfa7e6cc657bee751a077',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5f4',['ARM_NAND_BUS_DDR2_DO_WCYC_4',['../group__nand__bus__mode__codes.html#ga7f9e8416c4a4e20c4a04323e39f2100d',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5fmsk',['ARM_NAND_BUS_DDR2_DO_WCYC_Msk',['../_driver___n_a_n_d_8h.html#ad30dfdbdc50a7ff72a5bb173c5f549dc',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5fpos',['ARM_NAND_BUS_DDR2_DO_WCYC_Pos',['../_driver___n_a_n_d_8h.html#a57b282c0818c87b79ea4f11d03cc4f3c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fven',['ARM_NAND_BUS_DDR2_VEN',['../group__nand__bus__mode__codes.html#ga465ae06a6e097959620346304182e273',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5finterface_5fmsk',['ARM_NAND_BUS_INTERFACE_Msk',['../_driver___n_a_n_d_8h.html#aea213eb1ba9c67beb6216a630d81b91f',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5finterface_5fpos',['ARM_NAND_BUS_INTERFACE_Pos',['../_driver___n_a_n_d_8h.html#a372fc9b9cc1315046ceaffd6fd99e12c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fmode',['ARM_NAND_BUS_MODE',['../group__nand__control__codes.html#ga9b063c3078e86b50d4aa892518b2e2d8',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5fsdr',['ARM_NAND_BUS_SDR',['../group__nand__bus__mode__codes.html#gac7743aeb6411b97f9fc6a24b556f4963',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f0',['ARM_NAND_BUS_TIMING_MODE_0',['../group__nand__bus__mode__codes.html#ga971e574ac412bbba445055e9afc384ba',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f1',['ARM_NAND_BUS_TIMING_MODE_1',['../group__nand__bus__mode__codes.html#ga475a339e929eca46e11bc8a7b330aa45',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f2',['ARM_NAND_BUS_TIMING_MODE_2',['../group__nand__bus__mode__codes.html#gaed6154fb03b5516faf0bfd11d7a46309',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f3',['ARM_NAND_BUS_TIMING_MODE_3',['../group__nand__bus__mode__codes.html#gacbc4e07e1af6ef0e4c656428e81464a9',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f4',['ARM_NAND_BUS_TIMING_MODE_4',['../group__nand__bus__mode__codes.html#ga709d51a5215cd23ce2d85aec57141456',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f5',['ARM_NAND_BUS_TIMING_MODE_5',['../group__nand__bus__mode__codes.html#gaee3cad14ce2b8b9af69149bf74597791',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f6',['ARM_NAND_BUS_TIMING_MODE_6',['../group__nand__bus__mode__codes.html#ga4a3524e0eba994b3a66e06cde877f0f6',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5f7',['ARM_NAND_BUS_TIMING_MODE_7',['../group__nand__bus__mode__codes.html#gaa63d75f5f2b48a7345a066d58de1bd23',1,'Driver_NAND.c']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5fmsk',['ARM_NAND_BUS_TIMING_MODE_Msk',['../_driver___n_a_n_d_8h.html#a57f6c319265b00878661656103abe660',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5fpos',['ARM_NAND_BUS_TIMING_MODE_Pos',['../_driver___n_a_n_d_8h.html#acc98e42d23656734c7f9a8a5421842d6',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcapabilities',['ARM_NAND_CAPABILITIES',['../group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fnand_5fchipenable',['ARM_NAND_ChipEnable',['../group__nand__interface__gr.html#ga1c0cba87cb7b706ad5986dc67c831ad1',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5faddr_5fcol1_5fmsk',['ARM_NAND_CODE_ADDR_COL1_Msk',['../_driver___n_a_n_d_8h.html#a0951de69f3836c1ab229ec60b3996fcc',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5fcol1_5fpos',['ARM_NAND_CODE_ADDR_COL1_Pos',['../_driver___n_a_n_d_8h.html#ab8b06772e2b6c5930319b17bbb806133',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5fcol2_5fmsk',['ARM_NAND_CODE_ADDR_COL2_Msk',['../_driver___n_a_n_d_8h.html#a6126261e7c53713cee04aeae839d330e',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5fcol2_5fpos',['ARM_NAND_CODE_ADDR_COL2_Pos',['../_driver___n_a_n_d_8h.html#a1c4b9e7f44f77ebf665af8860a3c7528',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow1_5fmsk',['ARM_NAND_CODE_ADDR_ROW1_Msk',['../_driver___n_a_n_d_8h.html#ac24600be47e725ab1ad4193fd84daf80',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow1_5fpos',['ARM_NAND_CODE_ADDR_ROW1_Pos',['../_driver___n_a_n_d_8h.html#a8b75efa00810fcf23fb0f12e7f62d338',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow2_5fmsk',['ARM_NAND_CODE_ADDR_ROW2_Msk',['../_driver___n_a_n_d_8h.html#ae17a3f9b9fd70a88f9f9f38dd2c17951',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow2_5fpos',['ARM_NAND_CODE_ADDR_ROW2_Pos',['../_driver___n_a_n_d_8h.html#a326e135c57b38c78ae88cea121722a30',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow3_5fmsk',['ARM_NAND_CODE_ADDR_ROW3_Msk',['../_driver___n_a_n_d_8h.html#acf1ecacc2b225877c9cfe4f15dafc03c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow3_5fpos',['ARM_NAND_CODE_ADDR_ROW3_Pos',['../_driver___n_a_n_d_8h.html#a6873f7aedfe81efa8ca21dc85cbb384c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd1_5fmsk',['ARM_NAND_CODE_CMD1_Msk',['../_driver___n_a_n_d_8h.html#ac65db62329bb943592afdb523e4aadca',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd1_5fpos',['ARM_NAND_CODE_CMD1_Pos',['../_driver___n_a_n_d_8h.html#ae34722cf52938f50bf117780a742b6f1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd2_5fmsk',['ARM_NAND_CODE_CMD2_Msk',['../_driver___n_a_n_d_8h.html#a0f963016c81be2ddf7a09d983de226a9',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd2_5fpos',['ARM_NAND_CODE_CMD2_Pos',['../_driver___n_a_n_d_8h.html#aeebe274650e7d0c02b478318759972e5',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd3_5fmsk',['ARM_NAND_CODE_CMD3_Msk',['../_driver___n_a_n_d_8h.html#a16d474e55d0f6ea6efc3cc5436493b22',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd3_5fpos',['ARM_NAND_CODE_CMD3_Pos',['../_driver___n_a_n_d_8h.html#aa0b87b819cf3c94f32e3ef18dcfd1c6c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5finc_5faddr_5frow',['ARM_NAND_CODE_INC_ADDR_ROW',['../group__nand__driver__seq__exec__codes.html#ga959522c98183036da32984dd5e07979b',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fread_5fdata',['ARM_NAND_CODE_READ_DATA',['../group__nand__driver__seq__exec__codes.html#gab524d840ab57c720ce8560144651dc9d',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fread_5fstatus',['ARM_NAND_CODE_READ_STATUS',['../group__nand__driver__seq__exec__codes.html#ga2250f6a532d2c0834bfdc618761ddc86',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5faddr_5fcol1',['ARM_NAND_CODE_SEND_ADDR_COL1',['../group__nand__driver__seq__exec__codes.html#ga891bcba60ebb1195ec80c00c9bec748a',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5faddr_5fcol2',['ARM_NAND_CODE_SEND_ADDR_COL2',['../group__nand__driver__seq__exec__codes.html#ga62a3f6ddcfb9ee317655bbec9e09bc10',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5faddr_5frow1',['ARM_NAND_CODE_SEND_ADDR_ROW1',['../group__nand__driver__seq__exec__codes.html#gadc001e69d1e81dc28a542237c6fe11ff',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5faddr_5frow2',['ARM_NAND_CODE_SEND_ADDR_ROW2',['../group__nand__driver__seq__exec__codes.html#ga5e55628cb59f5d7d35c529f04ebfcd10',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5faddr_5frow3',['ARM_NAND_CODE_SEND_ADDR_ROW3',['../group__nand__driver__seq__exec__codes.html#gaeb5d1be9c13b7ad2ad246d5db10cd419',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5fcmd1',['ARM_NAND_CODE_SEND_CMD1',['../group__nand__driver__seq__exec__codes.html#gaef90c96cd4f2309044d7d438c6b0930a',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5fcmd2',['ARM_NAND_CODE_SEND_CMD2',['../group__nand__driver__seq__exec__codes.html#gacffafbbbca74f7ffa4cd3bb6b067c4ef',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fsend_5fcmd3',['ARM_NAND_CODE_SEND_CMD3',['../group__nand__driver__seq__exec__codes.html#ga20f96743ab77bda14ba391dc0c3cdba5',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fwait_5fbusy',['ARM_NAND_CODE_WAIT_BUSY',['../group__nand__driver__seq__exec__codes.html#ga0f4a8b1e97656e09f1c383852f290a37',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcode_5fwrite_5fdata',['ARM_NAND_CODE_WRITE_DATA',['../group__nand__driver__seq__exec__codes.html#ga1b40fc5fbf22dc4fa8130f5836e30d12',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcontrol',['ARM_NAND_Control',['../group__nand__interface__gr.html#ga83061d6d53ffb148853efbc87a864607',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdevice_5fready_5fevent',['ARM_NAND_DEVICE_READY_EVENT',['../group__nand__control__codes.html#ga1bffc9f341e704ee0e845d86a2989921',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdevicepower',['ARM_NAND_DevicePower',['../group__nand__interface__gr.html#ga11adcbaaace09746581a36befbd563c9',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdriver_5fdone_5fevent',['ARM_NAND_DRIVER_DONE_EVENT',['../group__nand__driver__flag__codes.html#gaf40631ba62411e0ac06c3a945d608581',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdriver_5fready_5fevent',['ARM_NAND_DRIVER_READY_EVENT',['../group__nand__control__codes.html#gaab6dea1b565aeb53e360876a4e50783c',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdriver_5fstrength',['ARM_NAND_DRIVER_STRENGTH',['../group__nand__control__codes.html#ga5d1d46198404fe115b013bdae7af2a2f',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdriver_5fstrength_5f18',['ARM_NAND_DRIVER_STRENGTH_18',['../group__nand__driver__strength__codes.html#ga942e20df12022f3bbd0e9a558ec1c7a0',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdriver_5fstrength_5f25',['ARM_NAND_DRIVER_STRENGTH_25',['../group__nand__driver__strength__codes.html#ga17188e039f5f87c581033327399a057d',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdriver_5fstrength_5f35',['ARM_NAND_DRIVER_STRENGTH_35',['../group__nand__driver__strength__codes.html#ga33562a66a5bf328eea82b2f1893a7874',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdriver_5fstrength_5f50',['ARM_NAND_DRIVER_STRENGTH_50',['../group__nand__driver__strength__codes.html#gaa502e2c995447037d266f939faa43223',1,'Driver_NAND.c']]], + ['arm_5fnand_5fecc',['ARM_NAND_ECC',['../group__nand__driver__ecc__codes.html#gac2eb4475f12a443209165d29fe200030',1,'Driver_NAND.c']]], + ['arm_5fnand_5fecc0',['ARM_NAND_ECC0',['../group__nand__driver__ecc__codes.html#ga15c79a12200c16f953936635f930df1d',1,'Driver_NAND.c']]], + ['arm_5fnand_5fecc1',['ARM_NAND_ECC1',['../group__nand__driver__ecc__codes.html#gaee653288a88318ee33d1db81baa69bbc',1,'Driver_NAND.c']]], + ['arm_5fnand_5fecc_5findex_5fmsk',['ARM_NAND_ECC_INDEX_Msk',['../_driver___n_a_n_d_8h.html#a656537439264ab495c86e4c36051a3c1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fecc_5findex_5fpos',['ARM_NAND_ECC_INDEX_Pos',['../_driver___n_a_n_d_8h.html#a7944be4f63c439d5d64053ad9476407b',1,'Driver_NAND.h']]], + ['arm_5fnand_5fecc_5finfo',['ARM_NAND_ECC_INFO',['../group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___e_c_c___i_n_f_o',1,'']]], + ['arm_5fnand_5ferror_5fecc',['ARM_NAND_ERROR_ECC',['../group__nand__execution__status.html#gafebec6ac091750a47b1d59bc843c15b0',1,'Driver_NAND.c']]], + ['arm_5fnand_5fevent_5fdevice_5fready',['ARM_NAND_EVENT_DEVICE_READY',['../group___n_a_n_d__events.html#gae0be7e1b41188def905de0a1568d442d',1,'Driver_NAND.c']]], + ['arm_5fnand_5fevent_5fdriver_5fdone',['ARM_NAND_EVENT_DRIVER_DONE',['../group___n_a_n_d__events.html#gac774a334871789d24107b843d1ebd00c',1,'Driver_NAND.c']]], + ['arm_5fnand_5fevent_5fdriver_5fready',['ARM_NAND_EVENT_DRIVER_READY',['../group___n_a_n_d__events.html#ga7b390a906db42c5ea4db38e0e85bb9e9',1,'Driver_NAND.c']]], + ['arm_5fnand_5fevent_5fecc_5ferror',['ARM_NAND_EVENT_ECC_ERROR',['../group___n_a_n_d__events.html#ga7bee0c32528ab991c0c064f895f80664',1,'Driver_NAND.c']]], + ['arm_5fnand_5fexecutesequence',['ARM_NAND_ExecuteSequence',['../group__nand__interface__gr.html#ga8a0108dba757a4610475151144b52825',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetcapabilities',['ARM_NAND_GetCapabilities',['../group__nand__interface__gr.html#ga9f2609975c2008d21b9ae28f15daf147',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetdevicebusy',['ARM_NAND_GetDeviceBusy',['../group__nand__interface__gr.html#ga43011066306bd716b580e6aa9a80cf65',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetstatus',['ARM_NAND_GetStatus',['../group__nand__interface__gr.html#ga4578642f37a556b58b0bba0ad5d42641',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetversion',['ARM_NAND_GetVersion',['../group__nand__interface__gr.html#ga01255fd4f15e7fa4751c7ea59648ef5a',1,'Driver_NAND.c']]], + ['arm_5fnand_5finitialize',['ARM_NAND_Initialize',['../group__nand__interface__gr.html#ga74ad34718a595e7a4375b90f33e72750',1,'Driver_NAND.c']]], + ['arm_5fnand_5finquireecc',['ARM_NAND_InquireECC',['../group__nand__interface__gr.html#gac21425454d586ef48fdfc35e7bd78947',1,'Driver_NAND.c']]], + ['arm_5fnand_5fpower_5fvcc_5f1v8',['ARM_NAND_POWER_VCC_1V8',['../_driver___n_a_n_d_8h.html#aa7b9d5a71125b745caba5c1d7aff6385',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5f3v3',['ARM_NAND_POWER_VCC_3V3',['../_driver___n_a_n_d_8h.html#ad15355d67bc239ff49cceac69c2024b3',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5fmsk',['ARM_NAND_POWER_VCC_Msk',['../_driver___n_a_n_d_8h.html#ad898ef5cd4ffe3b6b09d69e224aa0912',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5foff',['ARM_NAND_POWER_VCC_OFF',['../_driver___n_a_n_d_8h.html#a323c320a6195b78c2c79f5c6e85f02e1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5fpos',['ARM_NAND_POWER_VCC_Pos',['../_driver___n_a_n_d_8h.html#a848a27ec9ebf0a13a82a1d9760f39d90',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5f1v8',['ARM_NAND_POWER_VCCQ_1V8',['../_driver___n_a_n_d_8h.html#a653d9b4d7bee173beb49d8fec0469476',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5f3v3',['ARM_NAND_POWER_VCCQ_3V3',['../_driver___n_a_n_d_8h.html#a6d5a8a33a0fdaaff2e57e1ac53c984c2',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5fmsk',['ARM_NAND_POWER_VCCQ_Msk',['../_driver___n_a_n_d_8h.html#a7a453227301d7c08d09b22dc8afafbe7',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5foff',['ARM_NAND_POWER_VCCQ_OFF',['../_driver___n_a_n_d_8h.html#aca7679e8269ee986559f4218816937c3',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5fpos',['ARM_NAND_POWER_VCCQ_Pos',['../_driver___n_a_n_d_8h.html#ac38023b94cd8a68295d48a1019a386e0',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvpp_5foff',['ARM_NAND_POWER_VPP_OFF',['../_driver___n_a_n_d_8h.html#ae2d278901881ffc73d3e0b48717b22f0',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvpp_5fon',['ARM_NAND_POWER_VPP_ON',['../_driver___n_a_n_d_8h.html#aeb0d50e30bbcd8ab59c3b78db634aad5',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpowercontrol',['ARM_NAND_PowerControl',['../group__nand__interface__gr.html#ga9c9975637980b5d42db7baba0191fda1',1,'Driver_NAND.c']]], + ['arm_5fnand_5freaddata',['ARM_NAND_ReadData',['../group__nand__interface__gr.html#gae1899a20ef107400c8bf84fad477a8ce',1,'Driver_NAND.c']]], + ['arm_5fnand_5fsendaddress',['ARM_NAND_SendAddress',['../group__nand__interface__gr.html#ga00e195031e03d364db7595858a7e76f3',1,'Driver_NAND.c']]], + ['arm_5fnand_5fsendcommand',['ARM_NAND_SendCommand',['../group__nand__interface__gr.html#ga9f70b89ba478eadfe7f5dee7453a4fb7',1,'Driver_NAND.c']]], + ['arm_5fnand_5fsignalevent',['ARM_NAND_SignalEvent',['../group__nand__interface__gr.html#gaf4ce80b0fd6717de7ddfb1cfaf7dd754',1,'Driver_NAND.c']]], + ['arm_5fnand_5fsignalevent_5ft',['ARM_NAND_SignalEvent_t',['../group__nand__interface__gr.html#ga09f4cf2f2df0bb690bce38b13d77e50f',1,'Driver_NAND.h']]], + ['arm_5fnand_5fstatus',['ARM_NAND_STATUS',['../group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___s_t_a_t_u_s',1,'']]], + ['arm_5fnand_5funinitialize',['ARM_NAND_Uninitialize',['../group__nand__interface__gr.html#gaa788b638ab696b166fee2f4a4bc8d97a',1,'Driver_NAND.c']]], + ['arm_5fnand_5fwritedata',['ARM_NAND_WriteData',['../group__nand__interface__gr.html#ga1fa497dd51a86fc308e946b4419fd006',1,'Driver_NAND.c']]], + ['arm_5fnand_5fwriteprotect',['ARM_NAND_WriteProtect',['../group__nand__interface__gr.html#ga1987e65a4e756d748db86332c9fb1cec',1,'Driver_NAND.c']]], + ['arm_5fpower_5ffull',['ARM_POWER_FULL',['../_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5abed52b77a9ce4775570e44a842b1295e',1,'Driver_Common.h']]], + ['arm_5fpower_5flow',['ARM_POWER_LOW',['../_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5a9ef9e57cbcc948d0e22314e73dc8c434',1,'Driver_Common.h']]], + ['arm_5fpower_5foff',['ARM_POWER_OFF',['../_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5ab6f5becc85ebd51c3dd2524a95d2ca35',1,'Driver_Common.h']]], + ['arm_5fpower_5fstate',['ARM_POWER_STATE',['../group__common__drv__gr.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5',1,'Driver_Common.h']]], + ['arm_5fsai_5fabort_5freceive',['ARM_SAI_ABORT_RECEIVE',['../group__sai__controls.html#ga2b8d3d85c1e60f137f8c433f319244cb',1,'Driver_SAI.c']]], + ['arm_5fsai_5fabort_5fsend',['ARM_SAI_ABORT_SEND',['../group__sai__controls.html#gab3ec8ef9e5e5a190bd2131ac8c99a240',1,'Driver_SAI.c']]], + ['arm_5fsai_5fapi_5fversion',['ARM_SAI_API_VERSION',['../_driver___s_a_i_8h.html#a228007626e6f533b7a86a85e73e74d1e',1,'Driver_SAI.h']]], + ['arm_5fsai_5fasynchronous',['ARM_SAI_ASYNCHRONOUS',['../group__sai__sync__control.html#gad123537cb6ab9eefd6feab193ed74655',1,'Driver_SAI.c']]], + ['arm_5fsai_5faudio_5ffreq_5fmsk',['ARM_SAI_AUDIO_FREQ_Msk',['../_driver___s_a_i_8h.html#ac923ba4673588d3839a48c8a873b1248',1,'Driver_SAI.h']]], + ['arm_5fsai_5fbit_5forder_5fmsk',['ARM_SAI_BIT_ORDER_Msk',['../_driver___s_a_i_8h.html#a91d4cec3990025090d2fb31437bc57d2',1,'Driver_SAI.h']]], + ['arm_5fsai_5fbit_5forder_5fpos',['ARM_SAI_BIT_ORDER_Pos',['../_driver___s_a_i_8h.html#a662f3dbd09ce9c8c4df8490ba6fd430d',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcapabilities',['ARM_SAI_CAPABILITIES',['../group__sai__interface__gr.html#struct_a_r_m___s_a_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fsai_5fclock_5fpolarity_5f0',['ARM_SAI_CLOCK_POLARITY_0',['../group__sai__clock__pol__control.html#ga4311b6b6fd937d6ac37aa2d031a5d5ee',1,'Driver_SAI.c']]], + ['arm_5fsai_5fclock_5fpolarity_5f1',['ARM_SAI_CLOCK_POLARITY_1',['../group__sai__clock__pol__control.html#gae4c9b9abd3b7390810a5494363875a53',1,'Driver_SAI.c']]], + ['arm_5fsai_5fclock_5fpolarity_5fmsk',['ARM_SAI_CLOCK_POLARITY_Msk',['../_driver___s_a_i_8h.html#a593bd6efd49b976a12243c2b429bd94f',1,'Driver_SAI.h']]], + ['arm_5fsai_5fclock_5fpolarity_5fpos',['ARM_SAI_CLOCK_POLARITY_Pos',['../_driver___s_a_i_8h.html#a7652e9ea76805425bd1380d386fa956d',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcompanding_5fa_5flaw',['ARM_SAI_COMPANDING_A_LAW',['../group__sai__companding__control.html#gacfd6c74148c0ae90aa6eaaf8e69da3a9',1,'Driver_SAI.c']]], + ['arm_5fsai_5fcompanding_5fmsk',['ARM_SAI_COMPANDING_Msk',['../_driver___s_a_i_8h.html#a14371d4016e5863aa2033f47c213e271',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcompanding_5fnone',['ARM_SAI_COMPANDING_NONE',['../group__sai__companding__control.html#ga185919d553cf9204e514136eb375ef08',1,'Driver_SAI.c']]], + ['arm_5fsai_5fcompanding_5fpos',['ARM_SAI_COMPANDING_Pos',['../_driver___s_a_i_8h.html#a81a330ce8d7c6fe4ebae73b55af6adb9',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcompanding_5fu_5flaw',['ARM_SAI_COMPANDING_U_LAW',['../group__sai__companding__control.html#ga7b571406bcce383140198e53312faee5',1,'Driver_SAI.c']]], + ['arm_5fsai_5fconfigure_5frx',['ARM_SAI_CONFIGURE_RX',['../group__sai__controls.html#gaba3e824e022fe2a5736de5dcbbd3d291',1,'Driver_SAI.c']]], + ['arm_5fsai_5fconfigure_5ftx',['ARM_SAI_CONFIGURE_TX',['../group__sai__controls.html#ga14ac7775060e731b26bc5b3acd2f317a',1,'Driver_SAI.c']]], + ['arm_5fsai_5fcontrol',['ARM_SAI_Control',['../group__sai__interface__gr.html#ga405a0769c33da6801055db0fb9b6c869',1,'Driver_SAI.c']]], + ['arm_5fsai_5fcontrol_5fmsk',['ARM_SAI_CONTROL_Msk',['../_driver___s_a_i_8h.html#abe35f330af97ad488b28f580f7105b27',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcontrol_5frx',['ARM_SAI_CONTROL_RX',['../group__sai__controls.html#gaa40390b6dd0df3b140fdc45bb7b1439d',1,'Driver_SAI.c']]], + ['arm_5fsai_5fcontrol_5ftx',['ARM_SAI_CONTROL_TX',['../group__sai__controls.html#ga74d7850973c095bb8dbffa880b4af1bc',1,'Driver_SAI.c']]], + ['arm_5fsai_5fdata_5fsize',['ARM_SAI_DATA_SIZE',['../group__sai__data__bits__control.html#ga1a7529e4b46d69dbd57ccef84552a3f4',1,'Driver_SAI.c']]], + ['arm_5fsai_5fdata_5fsize_5fmsk',['ARM_SAI_DATA_SIZE_Msk',['../_driver___s_a_i_8h.html#a1e2b0edcbfbdcb5c452d18830af7c010',1,'Driver_SAI.h']]], + ['arm_5fsai_5fdata_5fsize_5fpos',['ARM_SAI_DATA_SIZE_Pos',['../_driver___s_a_i_8h.html#a78090bb0f32ce2b2d1214164d875f1f5',1,'Driver_SAI.h']]], + ['arm_5fsai_5ferror_5faudio_5ffreq',['ARM_SAI_ERROR_AUDIO_FREQ',['../group__sai__execution__status.html#ga5021651816da0aa92561eed634ba7578',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fbit_5forder',['ARM_SAI_ERROR_BIT_ORDER',['../group__sai__execution__status.html#gadcd0d44f0f6b691c4e84b30960c096e4',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fclock_5fpolarity',['ARM_SAI_ERROR_CLOCK_POLARITY',['../group__sai__execution__status.html#ga7810e77ec599b0f86073a8711c0655df',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fcompanding',['ARM_SAI_ERROR_COMPANDING',['../group__sai__execution__status.html#ga4683468c258e1a8706afcce1e81356d1',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fdata_5fsize',['ARM_SAI_ERROR_DATA_SIZE',['../group__sai__execution__status.html#ga5c51cbd8c2d2fe4baae110d390cefdc2',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fframe_5flenght',['ARM_SAI_ERROR_FRAME_LENGHT',['../group__sai__execution__status.html#gaf0448bdd6d1ae33511d170b9ecc1e2d6',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fframe_5fsync_5fearly',['ARM_SAI_ERROR_FRAME_SYNC_EARLY',['../group__sai__execution__status.html#ga09fe9b65d2be54ee1441606523291011',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fframe_5fsync_5fpolarity',['ARM_SAI_ERROR_FRAME_SYNC_POLARITY',['../group__sai__execution__status.html#ga0561b0cc9577d944e0d39b582612e061',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fframe_5fsync_5fwidth',['ARM_SAI_ERROR_FRAME_SYNC_WIDTH',['../group__sai__execution__status.html#ga993da1bc0f6745795b364d84dec24e99',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fmclk_5fpin',['ARM_SAI_ERROR_MCLK_PIN',['../group__sai__execution__status.html#ga0d910d4a638433e3b2326fc776da0f53',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fmclk_5fprescaler',['ARM_SAI_ERROR_MCLK_PRESCALER',['../group__sai__execution__status.html#gabab9495d6c57e56604cb1a2ac7e75431',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fmono_5fmode',['ARM_SAI_ERROR_MONO_MODE',['../group__sai__execution__status.html#ga912bf004fce3a37709bbf69734802b4a',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fprotocol',['ARM_SAI_ERROR_PROTOCOL',['../group__sai__execution__status.html#gaf4892425930608ad7a41fa5b49603b10',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fslot_5fcount',['ARM_SAI_ERROR_SLOT_COUNT',['../group__sai__execution__status.html#gaf52ee0cd13b6cb9c63acfe767ed5dfde',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fslot_5foffeset',['ARM_SAI_ERROR_SLOT_OFFESET',['../group__sai__execution__status.html#ga4658a3143c891d8972446630b6a978cd',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fslot_5fsize',['ARM_SAI_ERROR_SLOT_SIZE',['../group__sai__execution__status.html#ga7bf825043ba857950a89817ff9b853d1',1,'Driver_SAI.c']]], + ['arm_5fsai_5ferror_5fsynchronization',['ARM_SAI_ERROR_SYNCHRONIZATION',['../group__sai__execution__status.html#ga711cd889b4209df3f8fb01e4f2413c61',1,'Driver_SAI.c']]], + ['arm_5fsai_5fevent_5fframe_5ferror',['ARM_SAI_EVENT_FRAME_ERROR',['../group___s_a_i__events.html#ga6ffcf96fe404b48421a57fbd122b26bc',1,'Driver_SAI.c']]], + ['arm_5fsai_5fevent_5freceive_5fcomplete',['ARM_SAI_EVENT_RECEIVE_COMPLETE',['../group___s_a_i__events.html#ga5a9bde0b096aafe53279529a0adbef55',1,'Driver_SAI.c']]], + ['arm_5fsai_5fevent_5frx_5foverflow',['ARM_SAI_EVENT_RX_OVERFLOW',['../group___s_a_i__events.html#gac83e9df0238803ef2c88f16605f73bf5',1,'Driver_SAI.c']]], + ['arm_5fsai_5fevent_5fsend_5fcomplete',['ARM_SAI_EVENT_SEND_COMPLETE',['../group___s_a_i__events.html#ga3dfa64375859f40d157c224187d2885e',1,'Driver_SAI.c']]], + ['arm_5fsai_5fevent_5ftx_5funderflow',['ARM_SAI_EVENT_TX_UNDERFLOW',['../group___s_a_i__events.html#ga6a0be7aaf9d700e5259f741641bc37ca',1,'Driver_SAI.c']]], + ['arm_5fsai_5fframe_5flength',['ARM_SAI_FRAME_LENGTH',['../group__sai__frame__control.html#ga4c557aa02c83b8595be23a6c58d284e9',1,'Driver_SAI.c']]], + ['arm_5fsai_5fframe_5flength_5fmsk',['ARM_SAI_FRAME_LENGTH_Msk',['../_driver___s_a_i_8h.html#a23789f916975a203d0f17831452540cd',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5flength_5fpos',['ARM_SAI_FRAME_LENGTH_Pos',['../_driver___s_a_i_8h.html#a330fef2eea5b47e38951600c36ee2a1b',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fearly',['ARM_SAI_FRAME_SYNC_EARLY',['../group__sai__frame__control.html#gabec3992447436a2a8ed99108908ae208',1,'Driver_SAI.c']]], + ['arm_5fsai_5fframe_5fsync_5fpolarity_5fhigh',['ARM_SAI_FRAME_SYNC_POLARITY_HIGH',['../group__sai__frame__control.html#ga7be0326e15d61d6c67febb22f5b14d58',1,'Driver_SAI.c']]], + ['arm_5fsai_5fframe_5fsync_5fpolarity_5flow',['ARM_SAI_FRAME_SYNC_POLARITY_LOW',['../group__sai__frame__control.html#gaf3d6bdbc05379ac30905cecf1b2d917e',1,'Driver_SAI.c']]], + ['arm_5fsai_5fframe_5fsync_5fpolarity_5fmsk',['ARM_SAI_FRAME_SYNC_POLARITY_Msk',['../_driver___s_a_i_8h.html#a887b40a5223f2febd4a8b6cc7b7386f1',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fpolarity_5fpos',['ARM_SAI_FRAME_SYNC_POLARITY_Pos',['../_driver___s_a_i_8h.html#abc50a101bbf53b0fb438ad6682b2745d',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fwidth',['ARM_SAI_FRAME_SYNC_WIDTH',['../group__sai__frame__control.html#gae165fd96e6a5b06b362954fadeabcb7a',1,'Driver_SAI.c']]], + ['arm_5fsai_5fframe_5fsync_5fwidth_5fmsk',['ARM_SAI_FRAME_SYNC_WIDTH_Msk',['../_driver___s_a_i_8h.html#a319e93ff4c5ac4f067c47118a3334776',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fwidth_5fpos',['ARM_SAI_FRAME_SYNC_WIDTH_Pos',['../_driver___s_a_i_8h.html#a1012f372276699c44b38b5e093802864',1,'Driver_SAI.h']]], + ['arm_5fsai_5fgetcapabilities',['ARM_SAI_GetCapabilities',['../group__sai__interface__gr.html#gac6c636757944eaf25aebf312a67665aa',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgetrxcount',['ARM_SAI_GetRxCount',['../group__sai__interface__gr.html#ga2c571fcc8b9632c25a64043bc2b2baec',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgetstatus',['ARM_SAI_GetStatus',['../group__sai__interface__gr.html#ga6a202b57697f0f7a9742e76b33d5eeec',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgettxcount',['ARM_SAI_GetTxCount',['../group__sai__interface__gr.html#gaa9805f9d32aee205f787e625a58e8898',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgetversion',['ARM_SAI_GetVersion',['../group__sai__interface__gr.html#ga786b1970a788a4dfc6156b42364e52f8',1,'Driver_SAI.c']]], + ['arm_5fsai_5finitialize',['ARM_SAI_Initialize',['../group__sai__interface__gr.html#ga89622a02ca1e7affb1a01eefacb6f54c',1,'Driver_SAI.c']]], + ['arm_5fsai_5flsb_5ffirst',['ARM_SAI_LSB_FIRST',['../group__sai__bit__order__control.html#ga19b51b75537b030b975efcf68f3db78b',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmask_5fslots_5frx',['ARM_SAI_MASK_SLOTS_RX',['../group__sai__controls.html#ga84302d372185665852c9ed941c6545e0',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmask_5fslots_5ftx',['ARM_SAI_MASK_SLOTS_TX',['../group__sai__controls.html#ga8675b9776189caf4df7d558b3e18fcba',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmclk_5fpin_5finactive',['ARM_SAI_MCLK_PIN_INACTIVE',['../group__sai__mclk__pin__control.html#ga7654bffb42e96d48df57c598323337d6',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmclk_5fpin_5finput',['ARM_SAI_MCLK_PIN_INPUT',['../group__sai__mclk__pin__control.html#ga2cd610be9ba9532b2926376deaacf5ad',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmclk_5fpin_5fmsk',['ARM_SAI_MCLK_PIN_Msk',['../_driver___s_a_i_8h.html#a1fcfc4708ec7324563be3d0d840a72bf',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmclk_5fpin_5foutput',['ARM_SAI_MCLK_PIN_OUTPUT',['../group__sai__mclk__pin__control.html#ga24d99edf05699eff32da02742fb04ced',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmclk_5fpin_5fpos',['ARM_SAI_MCLK_PIN_Pos',['../_driver___s_a_i_8h.html#a62e1f07e62ec45d44a4b35a975323233',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmclk_5fprescaler',['ARM_SAI_MCLK_PRESCALER',['../group__sai__mclk__pres__control.html#ga2afa85cd335e75d8b9b06c9f47f3f4b0',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmclk_5fprescaler_5fmsk',['ARM_SAI_MCLK_PRESCALER_Msk',['../_driver___s_a_i_8h.html#adaa62519270d171df9b087ea004a3bb9',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmclk_5fprescaler_5fpos',['ARM_SAI_MCLK_PRESCALER_Pos',['../_driver___s_a_i_8h.html#a2d4fa5bf0272869fe80f7a35844c296b',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmode_5fmaster',['ARM_SAI_MODE_MASTER',['../group__sai__mode__control.html#ga5bedff714ea0f90139665b72d44daddc',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmode_5fmsk',['ARM_SAI_MODE_Msk',['../_driver___s_a_i_8h.html#ae949aad131ef68cde3190e3ab772f5bc',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmode_5fpos',['ARM_SAI_MODE_Pos',['../_driver___s_a_i_8h.html#a8779654f638207bcee1b86a508b3a486',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmode_5fslave',['ARM_SAI_MODE_SLAVE',['../group__sai__mode__control.html#ga5956c12a24a506754ecc7999f0660bb5',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmono_5fmode',['ARM_SAI_MONO_MODE',['../group__sai__mono__control.html#ga0adcd27875d92add813b9664e9cb0b4b',1,'Driver_SAI.c']]], + ['arm_5fsai_5fmsb_5ffirst',['ARM_SAI_MSB_FIRST',['../group__sai__bit__order__control.html#gaf74bfe9c3005bf3b80d69f112ea9e62b',1,'Driver_SAI.c']]], + ['arm_5fsai_5fpowercontrol',['ARM_SAI_PowerControl',['../group__sai__interface__gr.html#gacdec50a3dd5902de601caa7397c1dabc',1,'Driver_SAI.c']]], + ['arm_5fsai_5fprotocol_5fac97',['ARM_SAI_PROTOCOL_AC97',['../group__sai__protocol__control.html#ga8b1669910f4db4bb3584543e7eb04d7a',1,'Driver_SAI.c']]], + ['arm_5fsai_5fprotocol_5fi2s',['ARM_SAI_PROTOCOL_I2S',['../group__sai__protocol__control.html#gaaaf423bbe59920b3c7813e22ce083ddc',1,'Driver_SAI.c']]], + ['arm_5fsai_5fprotocol_5flsb_5fjustified',['ARM_SAI_PROTOCOL_LSB_JUSTIFIED',['../group__sai__protocol__control.html#gab88b6f9b61a20927ac8f8d39e46c6349',1,'Driver_SAI.c']]], + ['arm_5fsai_5fprotocol_5fmsb_5fjustified',['ARM_SAI_PROTOCOL_MSB_JUSTIFIED',['../group__sai__protocol__control.html#gad931f9e8aedff4e6040d726d707862f0',1,'Driver_SAI.c']]], + ['arm_5fsai_5fprotocol_5fmsk',['ARM_SAI_PROTOCOL_Msk',['../_driver___s_a_i_8h.html#aff67558883dcbaaed0feb28ddb5104a9',1,'Driver_SAI.h']]], + ['arm_5fsai_5fprotocol_5fpcm_5flong',['ARM_SAI_PROTOCOL_PCM_LONG',['../group__sai__protocol__control.html#gad43530c5b6ae1e89db587b20d71440b4',1,'Driver_SAI.c']]], + ['arm_5fsai_5fprotocol_5fpcm_5fshort',['ARM_SAI_PROTOCOL_PCM_SHORT',['../group__sai__protocol__control.html#ga3762437e0b1402b5d4fd293ae745f103',1,'Driver_SAI.c']]], + ['arm_5fsai_5fprotocol_5fpos',['ARM_SAI_PROTOCOL_Pos',['../_driver___s_a_i_8h.html#a9d46c20d74fc28cd23c61efec5d7e264',1,'Driver_SAI.h']]], + ['arm_5fsai_5fprotocol_5fuser',['ARM_SAI_PROTOCOL_USER',['../group__sai__protocol__control.html#gacef87941052c21ebacd3dde6ce9d6925',1,'Driver_SAI.c']]], + ['arm_5fsai_5freceive',['ARM_SAI_Receive',['../group__sai__interface__gr.html#ga2d55f506cef9d2849cbe418146086d98',1,'Driver_SAI.c']]], + ['arm_5fsai_5fsend',['ARM_SAI_Send',['../group__sai__interface__gr.html#ga8bb6866c535adeb930bc4a847d476fcd',1,'Driver_SAI.c']]], + ['arm_5fsai_5fsignalevent',['ARM_SAI_SignalEvent',['../group__sai__interface__gr.html#gaedf3347cb25d6bf2faad1bbb35ad79f4',1,'Driver_SAI.c']]], + ['arm_5fsai_5fsignalevent_5ft',['ARM_SAI_SignalEvent_t',['../group__sai__interface__gr.html#gad8ca8e2459e540928f6315b3df6da0ee',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fcount',['ARM_SAI_SLOT_COUNT',['../group__sai__slot__control.html#ga8f2cf3a212ca7fe389e00b082efb5d0b',1,'Driver_SAI.c']]], + ['arm_5fsai_5fslot_5fcount_5fmsk',['ARM_SAI_SLOT_COUNT_Msk',['../_driver___s_a_i_8h.html#a4c650eb9f59911ea332bbc090e0176ec',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fcount_5fpos',['ARM_SAI_SLOT_COUNT_Pos',['../_driver___s_a_i_8h.html#ac2b8807f6651d6f72e0ec35ccfaea467',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5foffset',['ARM_SAI_SLOT_OFFSET',['../group__sai__slot__control.html#ga48d4a142f3a1bb0fa4e88c9e427932a0',1,'Driver_SAI.c']]], + ['arm_5fsai_5fslot_5foffset_5fmsk',['ARM_SAI_SLOT_OFFSET_Msk',['../_driver___s_a_i_8h.html#ae45ed9a4e8a4bb6861ddc0752b716ea3',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5foffset_5fpos',['ARM_SAI_SLOT_OFFSET_Pos',['../_driver___s_a_i_8h.html#a502fb0ed58535dfc41f47db570105af4',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fsize_5f16',['ARM_SAI_SLOT_SIZE_16',['../group__sai__slot__control.html#ga2bb9cf53b07cac81fb0fe71de6c97c83',1,'Driver_SAI.c']]], + ['arm_5fsai_5fslot_5fsize_5f32',['ARM_SAI_SLOT_SIZE_32',['../group__sai__slot__control.html#gaaa5c4cc18a0f5668bc9f117874cd83dd',1,'Driver_SAI.c']]], + ['arm_5fsai_5fslot_5fsize_5fdefault',['ARM_SAI_SLOT_SIZE_DEFAULT',['../group__sai__slot__control.html#gad77c6c0de2a4e7223a0c42e1594f0a2c',1,'Driver_SAI.c']]], + ['arm_5fsai_5fslot_5fsize_5fmsk',['ARM_SAI_SLOT_SIZE_Msk',['../_driver___s_a_i_8h.html#a91b6372d62b46f5608f3de2c66186137',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fsize_5fpos',['ARM_SAI_SLOT_SIZE_Pos',['../_driver___s_a_i_8h.html#a6c17885d8e10e8befe7d04bca108ffda',1,'Driver_SAI.h']]], + ['arm_5fsai_5fstatus',['ARM_SAI_STATUS',['../group__sai__interface__gr.html#struct_a_r_m___s_a_i___s_t_a_t_u_s',1,'']]], + ['arm_5fsai_5fsynchronization_5fmsk',['ARM_SAI_SYNCHRONIZATION_Msk',['../_driver___s_a_i_8h.html#a42244bcaa347e43405cc356c00458c2e',1,'Driver_SAI.h']]], + ['arm_5fsai_5fsynchronization_5fpos',['ARM_SAI_SYNCHRONIZATION_Pos',['../_driver___s_a_i_8h.html#a07e9aff784158ff76feab30b9c1b39ec',1,'Driver_SAI.h']]], + ['arm_5fsai_5fsynchronous',['ARM_SAI_SYNCHRONOUS',['../group__sai__sync__control.html#gad2ad5406c30c353e80f54b40b3de5db8',1,'Driver_SAI.c']]], + ['arm_5fsai_5funinitialize',['ARM_SAI_Uninitialize',['../group__sai__interface__gr.html#gabdefafaba6f072cfd7ed6f8f132422b6',1,'Driver_SAI.c']]], + ['arm_5fspi_5fabort_5ftransfer',['ARM_SPI_ABORT_TRANSFER',['../group__spi__misc__ctrls.html#ga44708b80e48984be099cd6eb11780dc3',1,'Driver_SPI.c']]], + ['arm_5fspi_5fapi_5fversion',['ARM_SPI_API_VERSION',['../_driver___s_p_i_8h.html#acf1275c15e53a573d7db89da66839d97',1,'Driver_SPI.h']]], + ['arm_5fspi_5fbit_5forder_5fmsk',['ARM_SPI_BIT_ORDER_Msk',['../_driver___s_p_i_8h.html#a7d407682d2cb5a7fea5e38ae62fa42f8',1,'Driver_SPI.h']]], + ['arm_5fspi_5fbit_5forder_5fpos',['ARM_SPI_BIT_ORDER_Pos',['../_driver___s_p_i_8h.html#a84a8f90504df32ec77832a0285a47081',1,'Driver_SPI.h']]], + ['arm_5fspi_5fcapabilities',['ARM_SPI_CAPABILITIES',['../group__spi__interface__gr.html#struct_a_r_m___s_p_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fspi_5fcontrol',['ARM_SPI_Control',['../group__spi__interface__gr.html#gad18d229992598d6677bec250015e5d1a',1,'Driver_SPI.c']]], + ['arm_5fspi_5fcontrol_5fmsk',['ARM_SPI_CONTROL_Msk',['../_driver___s_p_i_8h.html#a646c834efef12377b372ea546459315b',1,'Driver_SPI.h']]], + ['arm_5fspi_5fcontrol_5fpos',['ARM_SPI_CONTROL_Pos',['../_driver___s_p_i_8h.html#a129dc5d38b4ba2c776c0b90aecf12a63',1,'Driver_SPI.h']]], + ['arm_5fspi_5fcontrol_5fss',['ARM_SPI_CONTROL_SS',['../group__spi__misc__ctrls.html#ga5776272b82decff92da003568540c92f',1,'Driver_SPI.c']]], + ['arm_5fspi_5fcpol0_5fcpha0',['ARM_SPI_CPOL0_CPHA0',['../group__spi__frame__format__ctrls.html#gab4ac9a609c078d1e8332cf95da34e50e',1,'Driver_SPI.c']]], + ['arm_5fspi_5fcpol0_5fcpha1',['ARM_SPI_CPOL0_CPHA1',['../group__spi__frame__format__ctrls.html#ga5498eb08c2ba8de2e1c2801428e79d71',1,'Driver_SPI.c']]], + ['arm_5fspi_5fcpol1_5fcpha0',['ARM_SPI_CPOL1_CPHA0',['../group__spi__frame__format__ctrls.html#ga67193d9b5af1ec312a66d007c33b597f',1,'Driver_SPI.c']]], + ['arm_5fspi_5fcpol1_5fcpha1',['ARM_SPI_CPOL1_CPHA1',['../group__spi__frame__format__ctrls.html#ga7fab572b2fec303e979e47eb2d13ca74',1,'Driver_SPI.c']]], + ['arm_5fspi_5fdata_5fbits',['ARM_SPI_DATA_BITS',['../group__spi__data__bits__ctrls.html#gaf6c099a1d67256a32010120c66c55250',1,'Driver_SPI.c']]], + ['arm_5fspi_5fdata_5fbits_5fmsk',['ARM_SPI_DATA_BITS_Msk',['../_driver___s_p_i_8h.html#a0b6e14fe55f4d92ddab6ca230da77f46',1,'Driver_SPI.h']]], + ['arm_5fspi_5fdata_5fbits_5fpos',['ARM_SPI_DATA_BITS_Pos',['../_driver___s_p_i_8h.html#a89e1140c07c9805112b6de4541c3b59a',1,'Driver_SPI.h']]], + ['arm_5fspi_5ferror_5fbit_5forder',['ARM_SPI_ERROR_BIT_ORDER',['../group__spi__execution__status.html#ga6b8ac31930ea6ca3a9635f2ac935466d',1,'Driver_SPI.c']]], + ['arm_5fspi_5ferror_5fdata_5fbits',['ARM_SPI_ERROR_DATA_BITS',['../group__spi__execution__status.html#ga76f895d3380ca474124f83acbebc5651',1,'Driver_SPI.c']]], + ['arm_5fspi_5ferror_5fframe_5fformat',['ARM_SPI_ERROR_FRAME_FORMAT',['../group__spi__execution__status.html#gac47584fe5691889c056611bc589b25aa',1,'Driver_SPI.c']]], + ['arm_5fspi_5ferror_5fmode',['ARM_SPI_ERROR_MODE',['../group__spi__execution__status.html#ga273a55c5d19491c565e5f05d03d66f3f',1,'Driver_SPI.c']]], + ['arm_5fspi_5ferror_5fss_5fmode',['ARM_SPI_ERROR_SS_MODE',['../group__spi__execution__status.html#gaae7b1a1feb46faa1830c92b73bd775ad',1,'Driver_SPI.c']]], + ['arm_5fspi_5fevent_5fdata_5flost',['ARM_SPI_EVENT_DATA_LOST',['../group___s_p_i__events.html#ga8e63d99c80ea56de596a8d0a51fd8244',1,'Driver_SPI.c']]], + ['arm_5fspi_5fevent_5fmode_5ffault',['ARM_SPI_EVENT_MODE_FAULT',['../group___s_p_i__events.html#ga7eaa229003689aa18598273490b3e630',1,'Driver_SPI.c']]], + ['arm_5fspi_5fevent_5ftransfer_5fcomplete',['ARM_SPI_EVENT_TRANSFER_COMPLETE',['../group___s_p_i__events.html#gaabdfc9e17641144cd50d36d15511a1b8',1,'Driver_SPI.c']]], + ['arm_5fspi_5fframe_5fformat_5fmsk',['ARM_SPI_FRAME_FORMAT_Msk',['../_driver___s_p_i_8h.html#af459192fe14b4b725816fa0029149298',1,'Driver_SPI.h']]], + ['arm_5fspi_5fframe_5fformat_5fpos',['ARM_SPI_FRAME_FORMAT_Pos',['../_driver___s_p_i_8h.html#ac47e4ed093d8c054021121f89c64023e',1,'Driver_SPI.h']]], + ['arm_5fspi_5fget_5fbus_5fspeed',['ARM_SPI_GET_BUS_SPEED',['../group__spi__misc__ctrls.html#gafc00fe35bb4c89b076d014b43168b2b3',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetcapabilities',['ARM_SPI_GetCapabilities',['../group__spi__interface__gr.html#gaf4823a11ab5efcd47c79b13801513ddc',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetdatacount',['ARM_SPI_GetDataCount',['../group__spi__interface__gr.html#gaaaecaaf4ec1922f22e7f9de63af5ccdb',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetstatus',['ARM_SPI_GetStatus',['../group__spi__interface__gr.html#ga60d33d8788a76c388cc36e066240b817',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetversion',['ARM_SPI_GetVersion',['../group__spi__interface__gr.html#gad5db9209ef1d64a7915a7278d6a402c8',1,'Driver_SPI.c']]], + ['arm_5fspi_5finitialize',['ARM_SPI_Initialize',['../group__spi__interface__gr.html#ga1a3c11ed523a4355cd91069527945906',1,'Driver_SPI.c']]], + ['arm_5fspi_5flsb_5fmsb',['ARM_SPI_LSB_MSB',['../group__spi__bit__order__ctrls.html#ga41c53c3b396a89ce78018467e561aaaf',1,'Driver_SPI.c']]], + ['arm_5fspi_5fmicrowire',['ARM_SPI_MICROWIRE',['../group__spi__frame__format__ctrls.html#ga44f481d32b9a9ea93673f05af82ccf86',1,'Driver_SPI.c']]], + ['arm_5fspi_5fmode_5finactive',['ARM_SPI_MODE_INACTIVE',['../group__spi__mode__ctrls.html#ga974e3d7c178b76b0540d7644b977bff3',1,'Driver_SPI.c']]], + ['arm_5fspi_5fmode_5fmaster',['ARM_SPI_MODE_MASTER',['../group__spi__mode__ctrls.html#ga3143ef07c1607b9bc57e29df35cf2fa8',1,'Driver_SPI.c']]], + ['arm_5fspi_5fmode_5fmaster_5fsimplex',['ARM_SPI_MODE_MASTER_SIMPLEX',['../group__spi__mode__ctrls.html#gaf34d849c7cde1151a768887f154e19bd',1,'Driver_SPI.c']]], + ['arm_5fspi_5fmode_5fslave',['ARM_SPI_MODE_SLAVE',['../group__spi__mode__ctrls.html#ga382b394c5e68f7d1206b837843732a3e',1,'Driver_SPI.c']]], + ['arm_5fspi_5fmode_5fslave_5fsimplex',['ARM_SPI_MODE_SLAVE_SIMPLEX',['../group__spi__mode__ctrls.html#ga9b113d8b336047e1c22f73ad44851fdf',1,'Driver_SPI.c']]], + ['arm_5fspi_5fmsb_5flsb',['ARM_SPI_MSB_LSB',['../group__spi__bit__order__ctrls.html#ga98228a708cbab6e214c7ac696f77dab6',1,'Driver_SPI.c']]], + ['arm_5fspi_5fpowercontrol',['ARM_SPI_PowerControl',['../group__spi__interface__gr.html#ga1a1e7e80ea32ae381b75213c32aa8067',1,'Driver_SPI.c']]], + ['arm_5fspi_5freceive',['ARM_SPI_Receive',['../group__spi__interface__gr.html#ga726aff54e782ed9b47f7ba1280a3d8f6',1,'Driver_SPI.c']]], + ['arm_5fspi_5fsend',['ARM_SPI_Send',['../group__spi__interface__gr.html#gab2a303d1071e926280d50682f4808479',1,'Driver_SPI.c']]], + ['arm_5fspi_5fset_5fbus_5fspeed',['ARM_SPI_SET_BUS_SPEED',['../group__spi__misc__ctrls.html#ga5ef3d114979f3fd6010d0df16c2bf5c1',1,'Driver_SPI.c']]], + ['arm_5fspi_5fset_5fdefault_5ftx_5fvalue',['ARM_SPI_SET_DEFAULT_TX_VALUE',['../group__spi__misc__ctrls.html#gae9861221dee78d52bd1522b7846535ce',1,'Driver_SPI.c']]], + ['arm_5fspi_5fsignalevent',['ARM_SPI_SignalEvent',['../group__spi__interface__gr.html#ga505b2d787348d51351d38fee98ccba7e',1,'Driver_SPI.c']]], + ['arm_5fspi_5fsignalevent_5ft',['ARM_SPI_SignalEvent_t',['../group__spi__interface__gr.html#gafde9205364241ee81290adc0481c6640',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5factive',['ARM_SPI_SS_ACTIVE',['../_driver___s_p_i_8h.html#a3f465cdbd1238ddd74f78e14457076c4',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5finactive',['ARM_SPI_SS_INACTIVE',['../_driver___s_p_i_8h.html#a335b448e07422e9c25616a693ec581cc',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fmaster_5fhw_5finput',['ARM_SPI_SS_MASTER_HW_INPUT',['../group__spi__slave__select__mode__ctrls.html#ga8561bd0cc25ab2bb02b138c1c6a586cd',1,'Driver_SPI.c']]], + ['arm_5fspi_5fss_5fmaster_5fhw_5foutput',['ARM_SPI_SS_MASTER_HW_OUTPUT',['../group__spi__slave__select__mode__ctrls.html#ga07762709a40dc90aca85553f500c8761',1,'Driver_SPI.c']]], + ['arm_5fspi_5fss_5fmaster_5fmode_5fmsk',['ARM_SPI_SS_MASTER_MODE_Msk',['../_driver___s_p_i_8h.html#aaefa5b36525296a43071968cac43a4af',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fmaster_5fmode_5fpos',['ARM_SPI_SS_MASTER_MODE_Pos',['../_driver___s_p_i_8h.html#ac467bd067b72370b23546767e63ce693',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fmaster_5fsw',['ARM_SPI_SS_MASTER_SW',['../group__spi__slave__select__mode__ctrls.html#gab5e319aa3f9d4d8c9ed92f0fe865f624',1,'Driver_SPI.c']]], + ['arm_5fspi_5fss_5fmaster_5funused',['ARM_SPI_SS_MASTER_UNUSED',['../group__spi__slave__select__mode__ctrls.html#gae19343adc7bd71408b51733171f99dc7',1,'Driver_SPI.c']]], + ['arm_5fspi_5fss_5fslave_5fhw',['ARM_SPI_SS_SLAVE_HW',['../group__spi__slave__select__mode__ctrls.html#ga2bd0d1f3ade2dc0cc48cc0593336ad70',1,'Driver_SPI.c']]], + ['arm_5fspi_5fss_5fslave_5fmode_5fmsk',['ARM_SPI_SS_SLAVE_MODE_Msk',['../_driver___s_p_i_8h.html#a2e9a0ac10df1b90b785c5d23079873e0',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fslave_5fmode_5fpos',['ARM_SPI_SS_SLAVE_MODE_Pos',['../_driver___s_p_i_8h.html#a4aed772149cc33c6ee70663adef90956',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fslave_5fsw',['ARM_SPI_SS_SLAVE_SW',['../group__spi__slave__select__mode__ctrls.html#gad371f6ba0d12a57bdcc3217c351abfb0',1,'Driver_SPI.c']]], + ['arm_5fspi_5fstatus',['ARM_SPI_STATUS',['../group__spi__interface__gr.html#struct_a_r_m___s_p_i___s_t_a_t_u_s',1,'']]], + ['arm_5fspi_5fti_5fssi',['ARM_SPI_TI_SSI',['../group__spi__frame__format__ctrls.html#ga225185710ba38848a489013ba4475915',1,'Driver_SPI.c']]], + ['arm_5fspi_5ftransfer',['ARM_SPI_Transfer',['../group__spi__interface__gr.html#gaa24026b3822c10272e301f1505136ec2',1,'Driver_SPI.c']]], + ['arm_5fspi_5funinitialize',['ARM_SPI_Uninitialize',['../group__spi__interface__gr.html#ga0c480ee3eabb82fc746e89741ed2e03e',1,'Driver_SPI.c']]], + ['arm_5fusart_5fabort_5freceive',['ARM_USART_ABORT_RECEIVE',['../group__usart__misc__control.html#ga3f57bcedf610dc844e6cc3a230dba5f7',1,'Driver_USART.c']]], + ['arm_5fusart_5fabort_5fsend',['ARM_USART_ABORT_SEND',['../group__usart__misc__control.html#ga54e88b32bc7368ff9c44613eae735c44',1,'Driver_USART.c']]], + ['arm_5fusart_5fabort_5ftransfer',['ARM_USART_ABORT_TRANSFER',['../group__usart__misc__control.html#ga83d0ef402feb342f9939f0e4ffe26182',1,'Driver_USART.c']]], + ['arm_5fusart_5fapi_5fversion',['ARM_USART_API_VERSION',['../_driver___u_s_a_r_t_8h.html#ab37a12fd0981e09c42ea42684a5dfbab',1,'Driver_USART.h']]], + ['arm_5fusart_5fcapabilities',['ARM_USART_CAPABILITIES',['../group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusart_5fcontrol',['ARM_USART_Control',['../group__usart__interface__gr.html#gad8ffdde2123b5412de3005c456da677d',1,'Driver_USART.c']]], + ['arm_5fusart_5fcontrol_5fbreak',['ARM_USART_CONTROL_BREAK',['../group__usart__misc__control.html#gab194a6f916e5b25e0262534c0cce54dc',1,'Driver_USART.c']]], + ['arm_5fusart_5fcontrol_5fmsk',['ARM_USART_CONTROL_Msk',['../_driver___u_s_a_r_t_8h.html#a253d29333d1a40d0401a02f9675a90fd',1,'Driver_USART.h']]], + ['arm_5fusart_5fcontrol_5fpos',['ARM_USART_CONTROL_Pos',['../_driver___u_s_a_r_t_8h.html#ab654e36e71012c28b91273e96827e1b8',1,'Driver_USART.h']]], + ['arm_5fusart_5fcontrol_5frx',['ARM_USART_CONTROL_RX',['../group__usart__misc__control.html#gad52c08553ae203d4f7741404589b8169',1,'Driver_USART.c']]], + ['arm_5fusart_5fcontrol_5fsmart_5fcard_5fnack',['ARM_USART_CONTROL_SMART_CARD_NACK',['../group__usart__misc__control.html#ga4bb5374e7db308b6ff48aa13aa9c4b8a',1,'Driver_USART.c']]], + ['arm_5fusart_5fcontrol_5ftx',['ARM_USART_CONTROL_TX',['../group__usart__misc__control.html#gad96ea1a80c97f968fbc0ae4c20e7fa6a',1,'Driver_USART.c']]], + ['arm_5fusart_5fcpha0',['ARM_USART_CPHA0',['../group__usart__clock__phase.html#ga5eb27c2294b7d14a20d0c7e2ef0a47b4',1,'Driver_USART.c']]], + ['arm_5fusart_5fcpha1',['ARM_USART_CPHA1',['../group__usart__clock__phase.html#ga4b9f16371870476739a198c52dba6862',1,'Driver_USART.c']]], + ['arm_5fusart_5fcpha_5fmsk',['ARM_USART_CPHA_Msk',['../_driver___u_s_a_r_t_8h.html#afba3e5931503b5a820472c4610252d72',1,'Driver_USART.h']]], + ['arm_5fusart_5fcpha_5fpos',['ARM_USART_CPHA_Pos',['../_driver___u_s_a_r_t_8h.html#a01ec7322a6a62197e82e948b1a8a41fa',1,'Driver_USART.h']]], + ['arm_5fusart_5fcpol0',['ARM_USART_CPOL0',['../group__usart__clock__polarity.html#ga472d459abb99f1caaff94fa0cdd2ad27',1,'Driver_USART.c']]], + ['arm_5fusart_5fcpol1',['ARM_USART_CPOL1',['../group__usart__clock__polarity.html#ga9e5541d8937a9d92e42aeb273138592a',1,'Driver_USART.c']]], + ['arm_5fusart_5fcpol_5fmsk',['ARM_USART_CPOL_Msk',['../_driver___u_s_a_r_t_8h.html#a2424397076d0479ab6b83e557be35db2',1,'Driver_USART.h']]], + ['arm_5fusart_5fcpol_5fpos',['ARM_USART_CPOL_Pos',['../_driver___u_s_a_r_t_8h.html#a76148e4ea9d9e8a798e904e1d65d5dfc',1,'Driver_USART.h']]], + ['arm_5fusart_5fdata_5fbits_5f5',['ARM_USART_DATA_BITS_5',['../group__usart__data__bits.html#ga981ff25b4ff806f743d1af4575b87339',1,'Driver_USART.c']]], + ['arm_5fusart_5fdata_5fbits_5f6',['ARM_USART_DATA_BITS_6',['../group__usart__data__bits.html#ga92ba3d6cea5cd5c0b661667539a9e43c',1,'Driver_USART.c']]], + ['arm_5fusart_5fdata_5fbits_5f7',['ARM_USART_DATA_BITS_7',['../group__usart__data__bits.html#gad86a2d971ce521c6f6eda28d4f8786a4',1,'Driver_USART.c']]], + ['arm_5fusart_5fdata_5fbits_5f8',['ARM_USART_DATA_BITS_8',['../group__usart__data__bits.html#gadc5e8d17b5c69cd7f9135b849c2a4586',1,'Driver_USART.c']]], + ['arm_5fusart_5fdata_5fbits_5f9',['ARM_USART_DATA_BITS_9',['../group__usart__data__bits.html#gae238a08198dc7ac6178ae0a2a95a2764',1,'Driver_USART.c']]], + ['arm_5fusart_5fdata_5fbits_5fmsk',['ARM_USART_DATA_BITS_Msk',['../_driver___u_s_a_r_t_8h.html#a84581b0925c149db3ca28d2656107656',1,'Driver_USART.h']]], + ['arm_5fusart_5fdata_5fbits_5fpos',['ARM_USART_DATA_BITS_Pos',['../_driver___u_s_a_r_t_8h.html#a08696262ebd491edf1e7865ebe93a81f',1,'Driver_USART.h']]], + ['arm_5fusart_5fdtr_5fclear',['ARM_USART_DTR_CLEAR',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa3ad44ce9f16c136ccad45c09ec65cb4c',1,'Driver_USART.h']]], + ['arm_5fusart_5fdtr_5fset',['ARM_USART_DTR_SET',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab938a21e1b59a2b92424e2521b9469d4',1,'Driver_USART.h']]], + ['arm_5fusart_5ferror_5fbaudrate',['ARM_USART_ERROR_BAUDRATE',['../group__usart__execution__status.html#gab57c4e8d4cb3a4b73751a002f5ec4586',1,'Driver_USART.c']]], + ['arm_5fusart_5ferror_5fcpha',['ARM_USART_ERROR_CPHA',['../group__usart__execution__status.html#gade1af23c4ed5409dacd99ab76dc2ff8b',1,'Driver_USART.c']]], + ['arm_5fusart_5ferror_5fcpol',['ARM_USART_ERROR_CPOL',['../group__usart__execution__status.html#ga2a1cd0a1e1bce9b545b0d7854a6fd6d6',1,'Driver_USART.c']]], + ['arm_5fusart_5ferror_5fdata_5fbits',['ARM_USART_ERROR_DATA_BITS',['../group__usart__execution__status.html#gaade95ddec6882e96c086dfe8e0ba9a4c',1,'Driver_USART.c']]], + ['arm_5fusart_5ferror_5fflow_5fcontrol',['ARM_USART_ERROR_FLOW_CONTROL',['../group__usart__execution__status.html#gaf8fea8d43ff72c76434d8b5e9eebd890',1,'Driver_USART.c']]], + ['arm_5fusart_5ferror_5fmode',['ARM_USART_ERROR_MODE',['../group__usart__execution__status.html#gaa98f35611ec5bd7034f21cb47199322b',1,'Driver_USART.c']]], + ['arm_5fusart_5ferror_5fparity',['ARM_USART_ERROR_PARITY',['../group__usart__execution__status.html#gaefabd886c586a45f4f7346c1f04392d0',1,'Driver_USART.c']]], + ['arm_5fusart_5ferror_5fstop_5fbits',['ARM_USART_ERROR_STOP_BITS',['../group__usart__execution__status.html#ga1d699654fbbed3ca41c5ea10aac8f859',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5fcts',['ARM_USART_EVENT_CTS',['../group___u_s_a_r_t__events.html#ga4cd807ca131bdcb1a7eb4f223fa70476',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5fdcd',['ARM_USART_EVENT_DCD',['../group___u_s_a_r_t__events.html#ga1628b951feba1c851f424ce89da409a4',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5fdsr',['ARM_USART_EVENT_DSR',['../group___u_s_a_r_t__events.html#ga5afef591c2e8dd9bc4332b7bc8d96309',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5freceive_5fcomplete',['ARM_USART_EVENT_RECEIVE_COMPLETE',['../group___u_s_a_r_t__events.html#ga08b165fd8525e44e3ce42ed6183cd30a',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5fri',['ARM_USART_EVENT_RI',['../group___u_s_a_r_t__events.html#gac17fe5723d4c5923656dadd9d1302154',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5frx_5fbreak',['ARM_USART_EVENT_RX_BREAK',['../group___u_s_a_r_t__events.html#gaa1d19e48faf2bdc2a976de448928288e',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5frx_5fframing_5ferror',['ARM_USART_EVENT_RX_FRAMING_ERROR',['../group___u_s_a_r_t__events.html#ga2d97495c650220fbfe9d6977d0953127',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5frx_5foverflow',['ARM_USART_EVENT_RX_OVERFLOW',['../group___u_s_a_r_t__events.html#ga43a0869daf83abb3fea96926a97047ad',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5frx_5fparity_5ferror',['ARM_USART_EVENT_RX_PARITY_ERROR',['../group___u_s_a_r_t__events.html#gadb4fec2530fc5ae3ad2b056741883451',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5frx_5ftimeout',['ARM_USART_EVENT_RX_TIMEOUT',['../group___u_s_a_r_t__events.html#ga66ee2256571450a3fc3c530344ea9bd7',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5fsend_5fcomplete',['ARM_USART_EVENT_SEND_COMPLETE',['../group___u_s_a_r_t__events.html#gaae1c626192b16ccace93f3546e7884bf',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5ftransfer_5fcomplete',['ARM_USART_EVENT_TRANSFER_COMPLETE',['../group___u_s_a_r_t__events.html#ga0599793e6aa531d56ff9f81ff12605d7',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5ftx_5fcomplete',['ARM_USART_EVENT_TX_COMPLETE',['../group___u_s_a_r_t__events.html#ga12872a3b04343f97d9535b5b0d37286d',1,'Driver_USART.c']]], + ['arm_5fusart_5fevent_5ftx_5funderflow',['ARM_USART_EVENT_TX_UNDERFLOW',['../group___u_s_a_r_t__events.html#gae57b9977bd338bf8bef86978843fa443',1,'Driver_USART.c']]], + ['arm_5fusart_5fflow_5fcontrol_5fcts',['ARM_USART_FLOW_CONTROL_CTS',['../group__usart__flow__control.html#gaa7b38ebff1ce0f5c3e4479d22e66715f',1,'Driver_USART.c']]], + ['arm_5fusart_5fflow_5fcontrol_5fmsk',['ARM_USART_FLOW_CONTROL_Msk',['../_driver___u_s_a_r_t_8h.html#a0e80cb6a6f47c164fb1fe5fe8eab43f4',1,'Driver_USART.h']]], + ['arm_5fusart_5fflow_5fcontrol_5fnone',['ARM_USART_FLOW_CONTROL_NONE',['../group__usart__flow__control.html#gad04aa3fe4ea4b7363aee4bdca2ed3764',1,'Driver_USART.c']]], + ['arm_5fusart_5fflow_5fcontrol_5fpos',['ARM_USART_FLOW_CONTROL_Pos',['../_driver___u_s_a_r_t_8h.html#a2e09a6b54db30327511241fdf422c4c9',1,'Driver_USART.h']]], + ['arm_5fusart_5fflow_5fcontrol_5frts',['ARM_USART_FLOW_CONTROL_RTS',['../group__usart__flow__control.html#ga80c8a78e8868165cfcc543105bfd9621',1,'Driver_USART.c']]], + ['arm_5fusart_5fflow_5fcontrol_5frts_5fcts',['ARM_USART_FLOW_CONTROL_RTS_CTS',['../group__usart__flow__control.html#gab16151b5c376b41586faf033f4a42d02',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetcapabilities',['ARM_USART_GetCapabilities',['../group__usart__interface__gr.html#gad2d3ace1fe7627bb72945efefaeddf0a',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetmodemstatus',['ARM_USART_GetModemStatus',['../group__usart__interface__gr.html#ga198af0d6a7c85b7c0b96f3d9db8c34e0',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetrxcount',['ARM_USART_GetRxCount',['../group__usart__interface__gr.html#ga1a8799aeeba1363a9e5d22bada715a29',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetstatus',['ARM_USART_GetStatus',['../group__usart__interface__gr.html#ga1e8fdd54294b587438b2b72f4dbde004',1,'Driver_USART.c']]], + ['arm_5fusart_5fgettxcount',['ARM_USART_GetTxCount',['../group__usart__interface__gr.html#gacb355584bcdf4ebd36f11d945800fa03',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetversion',['ARM_USART_GetVersion',['../group__usart__interface__gr.html#gabca6151cef47565832decaf484781b61',1,'Driver_USART.c']]], + ['arm_5fusart_5finitialize',['ARM_USART_Initialize',['../group__usart__interface__gr.html#ga51f06805e9a6197c553fa9513ac7b9d6',1,'Driver_USART.c']]], + ['arm_5fusart_5fmode_5fasynchronous',['ARM_USART_MODE_ASYNCHRONOUS',['../group__usart__mode__control.html#gad85039731478c924d3b418ec00768388',1,'Driver_USART.c']]], + ['arm_5fusart_5fmode_5firda',['ARM_USART_MODE_IRDA',['../group__usart__mode__control.html#ga458f4f60d1d772cfd7567ae424d9aad9',1,'Driver_USART.c']]], + ['arm_5fusart_5fmode_5fsingle_5fwire',['ARM_USART_MODE_SINGLE_WIRE',['../group__usart__mode__control.html#ga4132136971d4f93f2e6a87c6775a9bb0',1,'Driver_USART.c']]], + ['arm_5fusart_5fmode_5fsmart_5fcard',['ARM_USART_MODE_SMART_CARD',['../group__usart__mode__control.html#gade65a1c27d9097d9ef0e86c02b55cecd',1,'Driver_USART.c']]], + ['arm_5fusart_5fmode_5fsynchronous_5fmaster',['ARM_USART_MODE_SYNCHRONOUS_MASTER',['../group__usart__mode__control.html#ga7d3e9e0e838a3f15f8661983b9ac4573',1,'Driver_USART.c']]], + ['arm_5fusart_5fmode_5fsynchronous_5fslave',['ARM_USART_MODE_SYNCHRONOUS_SLAVE',['../group__usart__mode__control.html#gae78778475f3fab09a080c2279afc69fa',1,'Driver_USART.c']]], + ['arm_5fusart_5fmodem_5fcontrol',['ARM_USART_MODEM_CONTROL',['../group__usart__interface__gr.html#ga7b89d709f048b6a956aa211f63e75f6f',1,'Driver_USART.h']]], + ['arm_5fusart_5fmodem_5fstatus',['ARM_USART_MODEM_STATUS',['../group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___m_o_d_e_m___s_t_a_t_u_s',1,'']]], + ['arm_5fusart_5fparity_5feven',['ARM_USART_PARITY_EVEN',['../group__usart__parity__bit.html#gabc35e8dd2cbebb730abf36959e87a207',1,'Driver_USART.c']]], + ['arm_5fusart_5fparity_5fmsk',['ARM_USART_PARITY_Msk',['../_driver___u_s_a_r_t_8h.html#a434c48980c65129c01aa5bc1c8e22898',1,'Driver_USART.h']]], + ['arm_5fusart_5fparity_5fnone',['ARM_USART_PARITY_NONE',['../group__usart__parity__bit.html#ga141a64650f99a1f642c3b3b6ced0eb8d',1,'Driver_USART.c']]], + ['arm_5fusart_5fparity_5fodd',['ARM_USART_PARITY_ODD',['../group__usart__parity__bit.html#ga02f30181eedd3b04d650dd507bf40d6d',1,'Driver_USART.c']]], + ['arm_5fusart_5fparity_5fpos',['ARM_USART_PARITY_Pos',['../_driver___u_s_a_r_t_8h.html#a2ce50af2e58db12c25a5791080aca258',1,'Driver_USART.h']]], + ['arm_5fusart_5fpowercontrol',['ARM_USART_PowerControl',['../group__usart__interface__gr.html#ga9bad012b28d544f3eeeea9c2f71a4086',1,'Driver_USART.c']]], + ['arm_5fusart_5freceive',['ARM_USART_Receive',['../group__usart__interface__gr.html#gae9efabdabb5aaa17bce83339f8a58803',1,'Driver_USART.c']]], + ['arm_5fusart_5frts_5fclear',['ARM_USART_RTS_CLEAR',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab4d04e682d04f70c6aeba130656d3ec6',1,'Driver_USART.h']]], + ['arm_5fusart_5frts_5fset',['ARM_USART_RTS_SET',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa7f9d445e6e56642c4c4251a00bfa7434',1,'Driver_USART.h']]], + ['arm_5fusart_5fsend',['ARM_USART_Send',['../group__usart__interface__gr.html#ga5cf758b0b9d03dca68846962f73c0b08',1,'Driver_USART.c']]], + ['arm_5fusart_5fset_5fdefault_5ftx_5fvalue',['ARM_USART_SET_DEFAULT_TX_VALUE',['../group__usart__misc__control.html#gacd6f060afd55ffa1422567c31ebad950',1,'Driver_USART.c']]], + ['arm_5fusart_5fset_5firda_5fpulse',['ARM_USART_SET_IRDA_PULSE',['../group__usart__misc__control.html#gab8565d1f26382e832327e4553d18eb02',1,'Driver_USART.c']]], + ['arm_5fusart_5fset_5fsmart_5fcard_5fclock',['ARM_USART_SET_SMART_CARD_CLOCK',['../group__usart__misc__control.html#ga79698a2bd564c1f5bb1829ea422e9d3d',1,'Driver_USART.c']]], + ['arm_5fusart_5fset_5fsmart_5fcard_5fguard_5ftime',['ARM_USART_SET_SMART_CARD_GUARD_TIME',['../group__usart__misc__control.html#ga169be809adc186c131bb8b1618005b28',1,'Driver_USART.c']]], + ['arm_5fusart_5fsetmodemcontrol',['ARM_USART_SetModemControl',['../group__usart__interface__gr.html#gad8eb0eb1d1c24fc725584ab93214cfc7',1,'Driver_USART.c']]], + ['arm_5fusart_5fsignalevent',['ARM_USART_SignalEvent',['../group__usart__interface__gr.html#gad796cd023f8f6300a6caadcc39d43cbf',1,'Driver_USART.c']]], + ['arm_5fusart_5fsignalevent_5ft',['ARM_USART_SignalEvent_t',['../group__usart__interface__gr.html#gaa578c3829eea207e9e48df6cb6f038a1',1,'Driver_USART.h']]], + ['arm_5fusart_5fstatus',['ARM_USART_STATUS',['../group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___s_t_a_t_u_s',1,'']]], + ['arm_5fusart_5fstop_5fbits_5f0_5f5',['ARM_USART_STOP_BITS_0_5',['../group__usart__stop__bits.html#ga47f43cb83d9955a4c90d918acaaa44ba',1,'Driver_USART.c']]], + ['arm_5fusart_5fstop_5fbits_5f1',['ARM_USART_STOP_BITS_1',['../group__usart__stop__bits.html#ga45f51a51e654b4753a538ed33f0d7d78',1,'Driver_USART.c']]], + ['arm_5fusart_5fstop_5fbits_5f1_5f5',['ARM_USART_STOP_BITS_1_5',['../group__usart__stop__bits.html#gafc1d0f2c95a76ef4c5152792a619f136',1,'Driver_USART.c']]], + ['arm_5fusart_5fstop_5fbits_5f2',['ARM_USART_STOP_BITS_2',['../group__usart__stop__bits.html#ga17f034b5f0d0328dc636b403d1954795',1,'Driver_USART.c']]], + ['arm_5fusart_5fstop_5fbits_5fmsk',['ARM_USART_STOP_BITS_Msk',['../_driver___u_s_a_r_t_8h.html#aff72dd7b794cf2be5b5edca180be7a40',1,'Driver_USART.h']]], + ['arm_5fusart_5fstop_5fbits_5fpos',['ARM_USART_STOP_BITS_Pos',['../_driver___u_s_a_r_t_8h.html#ac73d045a0058006dbdc64a6d43772217',1,'Driver_USART.h']]], + ['arm_5fusart_5ftransfer',['ARM_USART_Transfer',['../group__usart__interface__gr.html#ga878899928d34a818edd3e97d67b65c2a',1,'Driver_USART.c']]], + ['arm_5fusart_5funinitialize',['ARM_USART_Uninitialize',['../group__usart__interface__gr.html#ga96f31f07a6721cf75de2a7a0ab723d26',1,'Driver_USART.c']]], + ['arm_5fusb_5fendpoint_5fbulk',['ARM_USB_ENDPOINT_BULK',['../group___u_s_b__endpoint__type.html#gac80fcc73aada5562e35e4bf2c21b7b2d',1,'Driver_USB.c']]], + ['arm_5fusb_5fendpoint_5fcontrol',['ARM_USB_ENDPOINT_CONTROL',['../group___u_s_b__endpoint__type.html#gaf8df4a353e829cf41a9f712e1b3c93a1',1,'Driver_USB.c']]], + ['arm_5fusb_5fendpoint_5fdirection_5fmask',['ARM_USB_ENDPOINT_DIRECTION_MASK',['../_driver___u_s_b_8h.html#afc3be8e98be7a242c81cd677996f21d8',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5finterrupt',['ARM_USB_ENDPOINT_INTERRUPT',['../group___u_s_b__endpoint__type.html#ga9375cd3a2735e7d5c8c359a1cdbc7d95',1,'Driver_USB.c']]], + ['arm_5fusb_5fendpoint_5fisochronous',['ARM_USB_ENDPOINT_ISOCHRONOUS',['../group___u_s_b__endpoint__type.html#gabb5913e9d1434240588ec43722d3eb16',1,'Driver_USB.c']]], + ['arm_5fusb_5fendpoint_5fmax_5fpacket_5fsize_5fmask',['ARM_USB_ENDPOINT_MAX_PACKET_SIZE_MASK',['../_driver___u_s_b_8h.html#acdacc3b2d7854566a90f0fe265a96f9d',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5f1',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_1',['../_driver___u_s_b_8h.html#aff3c2adf06d5dc8ccb3622b5860b380c',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5f2',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_2',['../_driver___u_s_b_8h.html#afd061484f2de3a75e89b126f6ed21226',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5f3',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_3',['../_driver___u_s_b_8h.html#a7c23bf8680f3feaf444d289df3603c38',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5fmask',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_MASK',['../_driver___u_s_b_8h.html#a72544ba674dc6d32c9caffcf9083fdfd',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fnumber_5fmask',['ARM_USB_ENDPOINT_NUMBER_MASK',['../_driver___u_s_b_8h.html#a6ef3e2cf16ee3b1356947a17e5d42a6c',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fack',['ARM_USB_PID_ACK',['../_driver___u_s_b_8h.html#a27505b779f79c82f3d7e63f7841b9c98',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fdata0',['ARM_USB_PID_DATA0',['../_driver___u_s_b_8h.html#a047d50d8c7ffa89fb75608cce2756ac6',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fdata1',['ARM_USB_PID_DATA1',['../_driver___u_s_b_8h.html#ab46f4fe90edf21e8e88f21a07876d88d',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fdata2',['ARM_USB_PID_DATA2',['../_driver___u_s_b_8h.html#af3462fb5987bcda04963c7fd02461ced',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5ferr',['ARM_USB_PID_ERR',['../_driver___u_s_b_8h.html#a56e57da4c1665866bf48a4bff4fa36b7',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fin',['ARM_USB_PID_IN',['../_driver___u_s_b_8h.html#adb2459ddd000755c1ea52183bb8c55bb',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fmdata',['ARM_USB_PID_MDATA',['../_driver___u_s_b_8h.html#ad78b3806a0963b041135a76eaf2fcd73',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fnak',['ARM_USB_PID_NAK',['../_driver___u_s_b_8h.html#a3a0de1078536cc459dd21d9b87b952f5',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fnyet',['ARM_USB_PID_NYET',['../_driver___u_s_b_8h.html#ab4f0fb1af1b2257eef132a684a58b62b',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fout',['ARM_USB_PID_OUT',['../_driver___u_s_b_8h.html#a828674d5225de2aadf7fb764a22e74f3',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fping',['ARM_USB_PID_PING',['../_driver___u_s_b_8h.html#a2249b4907c4e9fa63a9d5685a6525ae6',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fpre',['ARM_USB_PID_PRE',['../_driver___u_s_b_8h.html#aa044bae2705c08f38d6cc40bc32d0323',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5freserved',['ARM_USB_PID_RESERVED',['../_driver___u_s_b_8h.html#a8a8e917e48e97820b08e36b3da87f678',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fsetup',['ARM_USB_PID_SETUP',['../_driver___u_s_b_8h.html#a08d69b2a1e3d5ef4ef1a36f591ea0df6',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fsof',['ARM_USB_PID_SOF',['../_driver___u_s_b_8h.html#ab8945ae385d3e7d0da9ba9ff461e09c1',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fsplit',['ARM_USB_PID_SPLIT',['../_driver___u_s_b_8h.html#a136c540358ff3ec0007a7fee6ddcf308',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fstall',['ARM_USB_PID_STALL',['../_driver___u_s_b_8h.html#ab7f3d6c2acab8b6b607ff7c063c11444',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fdm',['ARM_USB_PIN_DM',['../_driver___u_s_b_8h.html#a5a5348d08c911233e4e9d81d1c42a367',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fdp',['ARM_USB_PIN_DP',['../_driver___u_s_b_8h.html#a7f42a0ff2d6e9187428a0126cc140c5b',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fid',['ARM_USB_PIN_ID',['../_driver___u_s_b_8h.html#a03a103d754d9751485b748cd144cbfd7',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5foc',['ARM_USB_PIN_OC',['../_driver___u_s_b_8h.html#a03ae07428733660d5e187fec1aede075',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fvbus',['ARM_USB_PIN_VBUS',['../_driver___u_s_b_8h.html#a390491e93356426de470ae41302dd547',1,'Driver_USB.h']]], + ['arm_5fusb_5frole_5fdevice',['ARM_USB_ROLE_DEVICE',['../_driver___u_s_b_8h.html#ab67eb404d64392b8910d7fdaef01aa0d',1,'Driver_USB.h']]], + ['arm_5fusb_5frole_5fhost',['ARM_USB_ROLE_HOST',['../_driver___u_s_b_8h.html#ab21de5df4cadf9bc4381c8c1066205d8',1,'Driver_USB.h']]], + ['arm_5fusb_5frole_5fnone',['ARM_USB_ROLE_NONE',['../_driver___u_s_b_8h.html#a2cb4a6a3dc939c3b13021be266f23e76',1,'Driver_USB.h']]], + ['arm_5fusb_5fspeed_5ffull',['ARM_USB_SPEED_FULL',['../group___u_s_b__speed.html#ga0d1b465db654b651dcf588c8b59899d5',1,'Driver_USB.c']]], + ['arm_5fusb_5fspeed_5fhigh',['ARM_USB_SPEED_HIGH',['../group___u_s_b__speed.html#ga13fa1e1934021f744dba837776205c89',1,'Driver_USB.c']]], + ['arm_5fusb_5fspeed_5flow',['ARM_USB_SPEED_LOW',['../group___u_s_b__speed.html#gae44fe8958474cd90f2288ea27752df27',1,'Driver_USB.c']]], + ['arm_5fusbd_5fapi_5fversion',['ARM_USBD_API_VERSION',['../_driver___u_s_b_d_8h.html#a71df406694e557f19cae5e43ff1960ba',1,'Driver_USBD.h']]], + ['arm_5fusbd_5fcapabilities',['ARM_USBD_CAPABILITIES',['../group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusbd_5fdeviceconnect',['ARM_USBD_DeviceConnect',['../group__usbd__interface__gr.html#ga99207f7ff5e97a7f65754eab7f775fca',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdevicedisconnect',['ARM_USBD_DeviceDisconnect',['../group__usbd__interface__gr.html#ga37234abecbb63e4e739f9676e489d2d1',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdevicegetstate',['ARM_USBD_DeviceGetState',['../group__usbd__interface__gr.html#ga7624d6b2cbe5e6ab5016206ce641eee2',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdeviceremotewakeup',['ARM_USBD_DeviceRemoteWakeup',['../group__usbd__interface__gr.html#ga7e149a4c6a0196da24a44f4fada75fb1',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdevicesetaddress',['ARM_USBD_DeviceSetAddress',['../group__usbd__interface__gr.html#gae66f696584e25fb2ddabe9070fa38670',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointconfigure',['ARM_USBD_EndpointConfigure',['../group__usbd__interface__gr.html#ga62d7d5bdcf9ca7bf7e6d8434368abad8',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointstall',['ARM_USBD_EndpointStall',['../group__usbd__interface__gr.html#ga9502cd7b8e4c583920fccadc4ccf7975',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointtransfer',['ARM_USBD_EndpointTransfer',['../group__usbd__interface__gr.html#ga6e69ad097553125bb01a22dc719e0d30',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointtransferabort',['ARM_USBD_EndpointTransferAbort',['../group__usbd__interface__gr.html#ga7cf3bcc105dbb8cbdc915e8caca8529e',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointtransfergetresult',['ARM_USBD_EndpointTransferGetResult',['../group__usbd__interface__gr.html#gab81fac01522a4d504edcb7b7d3abba6c',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointunconfigure',['ARM_USBD_EndpointUnconfigure',['../group__usbd__interface__gr.html#gaca913df5188dc0f0c4f707b57c2a88fc',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fhigh_5fspeed',['ARM_USBD_EVENT_HIGH_SPEED',['../group___u_s_b_d__dev__events.html#ga689d1e031013d0e66aeef4243490d843',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fin',['ARM_USBD_EVENT_IN',['../group___u_s_b_d__ep__events.html#ga375d3d8f363a056ff607c5ab3b92a864',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fout',['ARM_USBD_EVENT_OUT',['../group___u_s_b_d__ep__events.html#ga35f7340508acb5fe7a5f43bbcac1887a',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5freset',['ARM_USBD_EVENT_RESET',['../group___u_s_b_d__dev__events.html#ga489e1b88f7b0361494ca3a8dc73c227a',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fresume',['ARM_USBD_EVENT_RESUME',['../group___u_s_b_d__dev__events.html#ga5b1c9884b237ba7778f79761e5db9f45',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fsetup',['ARM_USBD_EVENT_SETUP',['../group___u_s_b_d__ep__events.html#gaa0814f6880f4c0ac302ac9ebc8170739',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fsuspend',['ARM_USBD_EVENT_SUSPEND',['../group___u_s_b_d__dev__events.html#ga74dc7c0ba71baf285400d5a555224653',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fvbus_5foff',['ARM_USBD_EVENT_VBUS_OFF',['../group___u_s_b_d__dev__events.html#ga6810c08a6e6a46ba443899e5ba9c3aec',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fevent_5fvbus_5fon',['ARM_USBD_EVENT_VBUS_ON',['../group___u_s_b_d__dev__events.html#ga32546413cfe55154351f74fb56de1045',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fgetcapabilities',['ARM_USBD_GetCapabilities',['../group__usbd__interface__gr.html#ga178d01ab7896e1c675b90bbccfe8ea7d',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fgetframenumber',['ARM_USBD_GetFrameNumber',['../group__usbd__interface__gr.html#ga4cd050b8343407fe465a27ad1cb7c264',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fgetversion',['ARM_USBD_GetVersion',['../group__usbd__interface__gr.html#ga1dcb8b7790f0e3613ee3da77e5fd18fc',1,'Driver_USBD.c']]], + ['arm_5fusbd_5finitialize',['ARM_USBD_Initialize',['../group__usbd__interface__gr.html#ga60b95c9c0c6767ff5938464cfd748f81',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fpowercontrol',['ARM_USBD_PowerControl',['../group__usbd__interface__gr.html#gaa5bdaac19f6df30c6e569abef17cdb42',1,'Driver_USBD.c']]], + ['arm_5fusbd_5freadsetuppacket',['ARM_USBD_ReadSetupPacket',['../group__usbd__interface__gr.html#ga6bc0ebf699a0f28330f21cab83f85e9e',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fsignaldeviceevent',['ARM_USBD_SignalDeviceEvent',['../group__usbd__interface__gr.html#gafe58a4db1d26b21ca5d418ee49e103a5',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fsignaldeviceevent_5ft',['ARM_USBD_SignalDeviceEvent_t',['../group__usbd__interface__gr.html#ga7c1878799699ddd34cec696da499f7bd',1,'Driver_USBD.h']]], + ['arm_5fusbd_5fsignalendpointevent',['ARM_USBD_SignalEndpointEvent',['../group__usbd__interface__gr.html#ga9aa5bc5cb45084194a77fae1457f6575',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fsignalendpointevent_5ft',['ARM_USBD_SignalEndpointEvent_t',['../group__usbd__interface__gr.html#gaae754763700fc5059a6bde57ea2d4e2c',1,'Driver_USBD.h']]], + ['arm_5fusbd_5fstate',['ARM_USBD_STATE',['../group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___s_t_a_t_e',1,'']]], + ['arm_5fusbd_5funinitialize',['ARM_USBD_Uninitialize',['../group__usbd__interface__gr.html#gafaead6713f141be1734de0110eda966b',1,'Driver_USBD.c']]], + ['arm_5fusbh_5fapi_5fversion',['ARM_USBH_API_VERSION',['../_driver___u_s_b_h_8h.html#a032e1e5caca3235109e2d2d6bf2e34bb',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fcapabilities',['ARM_USBH_CAPABILITIES',['../group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusbh_5fep_5fhandle',['ARM_USBH_EP_HANDLE',['../_driver___u_s_b_h_8h.html#ab2c57d8ea726b331b891167aa4a201c9',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fevent_5fbus_5ferror',['ARM_USBH_EVENT_BUS_ERROR',['../group___u_s_b_h__pipe__events.html#ga7bd871b1e5c059bee398c32429370724',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fconnect',['ARM_USBH_EVENT_CONNECT',['../group___u_s_b_h__port__events.html#ga71bfd8b8cd41b8aa6303d5d3a91597e6',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fdisconnect',['ARM_USBH_EVENT_DISCONNECT',['../group___u_s_b_h__port__events.html#gaba67919f64e9a08ba1264363b2710d20',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fhandshake_5ferr',['ARM_USBH_EVENT_HANDSHAKE_ERR',['../group___u_s_b_h__pipe__events.html#gac7cc573f879fbab678dc7d1347c68614',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fhandshake_5fmdata',['ARM_USBH_EVENT_HANDSHAKE_MDATA',['../group___u_s_b_h__pipe__events.html#ga681ce0983f8c77c41f3cc5df1af8d010',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fhandshake_5fnak',['ARM_USBH_EVENT_HANDSHAKE_NAK',['../group___u_s_b_h__pipe__events.html#ga3895b82193855d9a6f0b7e8a9b65e2c0',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fhandshake_5fnyet',['ARM_USBH_EVENT_HANDSHAKE_NYET',['../group___u_s_b_h__pipe__events.html#ga62ae214576c923ce737a16098e9836e5',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fhandshake_5fstall',['ARM_USBH_EVENT_HANDSHAKE_STALL',['../group___u_s_b_h__pipe__events.html#ga4fdc44fc78f342576dd11ad7cb84b4b8',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fovercurrent',['ARM_USBH_EVENT_OVERCURRENT',['../group___u_s_b_h__port__events.html#ga0955fdc2aedd2c5aa2be6cd782b3f2a8',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fremote_5fwakeup',['ARM_USBH_EVENT_REMOTE_WAKEUP',['../group___u_s_b_h__port__events.html#ga2b61e9df3c63fd78fc08f79280a7066e',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5freset',['ARM_USBH_EVENT_RESET',['../group___u_s_b_h__port__events.html#ga70ae1e0a7872556d302a7f7840843c4a',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fresume',['ARM_USBH_EVENT_RESUME',['../group___u_s_b_h__port__events.html#ga42f62bdf6dd639f9f3dffc6c127456e3',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5fsuspend',['ARM_USBH_EVENT_SUSPEND',['../group___u_s_b_h__port__events.html#gae1f91db7d31bcebbf60a23fb04cf7eb5',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fevent_5ftransfer_5fcomplete',['ARM_USBH_EVENT_TRANSFER_COMPLETE',['../group___u_s_b_h__pipe__events.html#gab161955b1ab0b7928befe446ef78634b',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fgetcapabilities',['ARM_USBH_GetCapabilities',['../group__usbh__host__gr.html#gadb509db50fdccfc7198dfd7ac54530d7',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fgetframenumber',['ARM_USBH_GetFrameNumber',['../group__usbh__host__gr.html#ga9dc305fc234c9987b9efd679b5042cc9',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fgetversion',['ARM_USBH_GetVersion',['../group__usbh__host__gr.html#gab11e67e11e7a0edbc8a1afa86b971784',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5fcapabilities',['ARM_USBH_HCI_CAPABILITIES',['../group__usbh__hci__gr.html#struct_a_r_m___u_s_b_h___h_c_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusbh_5fhci_5fgetcapabilities',['ARM_USBH_HCI_GetCapabilities',['../group__usbh__hci__gr.html#gae607c49ca97202500631473a901e8c2b',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5fgetversion',['ARM_USBH_HCI_GetVersion',['../group__usbh__hci__gr.html#ga10109d0c2a9a128225b5e893d3f72d08',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5finitialize',['ARM_USBH_HCI_Initialize',['../group__usbh__hci__gr.html#gabc1392a544cb64491b5ea5ce6590d832',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5finterrupt',['ARM_USBH_HCI_Interrupt',['../group__usbh__hci__gr.html#ga79d3c2509ed869c8d7d1485acad7b6c6',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5finterrupt_5ft',['ARM_USBH_HCI_Interrupt_t',['../group__usbh__hci__gr.html#gac60df9d1f2b3a769f2c30141800a9806',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fhci_5fportvbusonoff',['ARM_USBH_HCI_PortVbusOnOff',['../group__usbh__hci__gr.html#gade1e83403c6ea965fe3e6c4c21fbbded',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5fpowercontrol',['ARM_USBH_HCI_PowerControl',['../group__usbh__hci__gr.html#ga27fa5ec8854cd9877bbef4abffe9a12b',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5funinitialize',['ARM_USBH_HCI_Uninitialize',['../group__usbh__hci__gr.html#gaacb68fdf201cdb1846b31642a760f041',1,'Driver_USBH.c']]], + ['arm_5fusbh_5finitialize',['ARM_USBH_Initialize',['../group__usbh__host__gr.html#gad1e73f778c95dd46d4396e7741a97f0b',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fcsplit',['ARM_USBH_PACKET_CSPLIT',['../group___u_s_b_h__packets.html#gadbfbbf7b4709f3ee4c3610da8402cfec',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fdata0',['ARM_USBH_PACKET_DATA0',['../group___u_s_b_h__packets.html#ga40075aa1d3eff6d4b94dfe28d7745873',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fdata1',['ARM_USBH_PACKET_DATA1',['../group___u_s_b_h__packets.html#ga34014ff212b26e3ee8c8670a180846e2',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fdata_5fmsk',['ARM_USBH_PACKET_DATA_Msk',['../_driver___u_s_b_h_8h.html#a979e5c7ad6bae9b5eb42eb9ee1b6a843',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fdata_5fpos',['ARM_USBH_PACKET_DATA_Pos',['../_driver___u_s_b_h_8h.html#a2b28435952abaeea6fd29480f10e56eb',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fin',['ARM_USBH_PACKET_IN',['../group___u_s_b_h__packets.html#ga08d60ec20c091b5e7e252d137268cb76',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fout',['ARM_USBH_PACKET_OUT',['../group___u_s_b_h__packets.html#ga409b2ae6503e738eb86e35652f9ebf8d',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fping',['ARM_USBH_PACKET_PING',['../group___u_s_b_h__packets.html#ga2eeab58cebb4556214c021ff02c36b16',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fpre',['ARM_USBH_PACKET_PRE',['../group___u_s_b_h__packets.html#ga6dd82c7b96bc1339d725a6133a32a62f',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fsetup',['ARM_USBH_PACKET_SETUP',['../group___u_s_b_h__packets.html#gafb0bcfee8abd4ada7f789aec2993048a',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fsplit_5fmsk',['ARM_USBH_PACKET_SPLIT_Msk',['../_driver___u_s_b_h_8h.html#ad0c886d7d97a8ad2c343eab0552a09db',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fsplit_5fpos',['ARM_USBH_PACKET_SPLIT_Pos',['../_driver___u_s_b_h_8h.html#a41e5706fcf6e028c5c86751b37a27dd6',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fssplit',['ARM_USBH_PACKET_SSPLIT',['../group___u_s_b_h__packets.html#gaf47930d994c53fc1772caed129aee921',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fssplit_5fe',['ARM_USBH_PACKET_SSPLIT_E',['../group___u_s_b_h__packets.html#gaf99ee84befc6522fef56b21df870df72',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fssplit_5fs',['ARM_USBH_PACKET_SSPLIT_S',['../group___u_s_b_h__packets.html#ga3b8fa0d3aa083718b4f5d60e92394b47',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5fssplit_5fs_5fe',['ARM_USBH_PACKET_SSPLIT_S_E',['../group___u_s_b_h__packets.html#ga8d2b46fbc04d871abe0661f8acd18a94',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpacket_5ftoken_5fmsk',['ARM_USBH_PACKET_TOKEN_Msk',['../_driver___u_s_b_h_8h.html#a366b3541934b74772eba60e6332923ad',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5ftoken_5fpos',['ARM_USBH_PACKET_TOKEN_Pos',['../_driver___u_s_b_h_8h.html#a8139a9c76ea4a062795130196d3b6ed9',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpipe_5fhandle',['ARM_USBH_PIPE_HANDLE',['../group__usbh__host__gr.html#ga2e4d0ebd0851ba7bf364ae1d8948672c',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpipecreate',['ARM_USBH_PipeCreate',['../group__usbh__host__gr.html#ga30dcc05151a98c5a8f6fe17e83777fe0',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipedelete',['ARM_USBH_PipeDelete',['../group__usbh__host__gr.html#gab2135041e6d481f186015f36fa0d0521',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipemodify',['ARM_USBH_PipeModify',['../group__usbh__host__gr.html#ga2076a7ae55f603859c726e57b061ac73',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipereset',['ARM_USBH_PipeReset',['../group__usbh__host__gr.html#ga7f5a605dbe98e450e6965d515fde65a7',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipetransfer',['ARM_USBH_PipeTransfer',['../group__usbh__host__gr.html#ga817d503a24ad8927fa362c8f6394920d',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipetransferabort',['ARM_USBH_PipeTransferAbort',['../group__usbh__host__gr.html#ga1d4048a076aed71e585cea96a21f0afb',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipetransfergetresult',['ARM_USBH_PipeTransferGetResult',['../group__usbh__host__gr.html#ga85baa421345a5b92881ad190d72ca47f',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fport_5fstate',['ARM_USBH_PORT_STATE',['../group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___p_o_r_t___s_t_a_t_e',1,'']]], + ['arm_5fusbh_5fportgetstate',['ARM_USBH_PortGetState',['../group__usbh__host__gr.html#gaea4ec5453c1d5fe37a2507d3cb4713bc',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportreset',['ARM_USBH_PortReset',['../group__usbh__host__gr.html#gab99882e11ee03018da9ebe33797cc5ff',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportresume',['ARM_USBH_PortResume',['../group__usbh__host__gr.html#gab438b55ada37e2987e77e105f061f2de',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportsuspend',['ARM_USBH_PortSuspend',['../group__usbh__host__gr.html#ga620f8852a70a47a581001ed3050436d6',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportvbusonoff',['ARM_USBH_PortVbusOnOff',['../group__usbh__host__gr.html#gaccca5ddd4a9d04388e7678a3aed3f6e4',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpowercontrol',['ARM_USBH_PowerControl',['../group__usbh__host__gr.html#ga290a5e2e491da784e63be94699974d4a',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fsignalendpointevent_5ft',['ARM_USBH_SignalEndpointEvent_t',['../_driver___u_s_b_h_8h.html#ab66601b4c31f638479d7ab6efa515dcc',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fsignalpipeevent',['ARM_USBH_SignalPipeEvent',['../group__usbh__host__gr.html#gae58d36afd83a0e32b07e89fb7145c9de',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fsignalpipeevent_5ft',['ARM_USBH_SignalPipeEvent_t',['../group__usbh__host__gr.html#ga1a32ebfe0db4a002aae2b0c0f8ece30c',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fsignalportevent',['ARM_USBH_SignalPortEvent',['../group__usbh__host__gr.html#ga53619da2a3d56934629084b0d5c4700c',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fsignalportevent_5ft',['ARM_USBH_SignalPortEvent_t',['../group__usbh__host__gr.html#ga61edcbb6ee863fe87abee488d78e1051',1,'Driver_USBH.h']]], + ['arm_5fusbh_5funinitialize',['ARM_USBH_Uninitialize',['../group__usbh__host__gr.html#gafc2f18bc12bb0019f9cd1836dcca408d',1,'Driver_USBH.c']]], + ['asynchronous',['asynchronous',['../group__sai__interface__gr.html#a75ba2507ea29601a309393e794f4413d',1,'ARM_SAI_CAPABILITIES::asynchronous()'],['../group__usart__interface__gr.html#a75ba2507ea29601a309393e794f4413d',1,'ARM_USART_CAPABILITIES::asynchronous()']]], + ['auto_5fsplit',['auto_split',['../group__usbh__host__gr.html#a37eab684b9a8aa496bfec9fede42fe27',1,'ARM_USBH_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_62.html b/CMSIS/Documentation/Driver/html/search/all_62.html new file mode 100644 index 0000000..ee8871c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_62.js b/CMSIS/Documentation/Driver/html/search/all_62.js new file mode 100644 index 0000000..4d35765 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_62.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['b',['b',['../group__eth__interface__gr.html#ab590318ac859d0e57e15c3dd6c62a605',1,'ARM_ETH_MAC_ADDR']]], + ['brs',['brs',['../group__can__interface__gr.html#a3539c043c5868c59f76c736fe2bcadf4',1,'ARM_CAN_MSG_INFO']]], + ['bus_5ferror',['bus_error',['../group__i2c__interface__gr.html#a43b1d210c48f4361c5054ba69bcae702',1,'ARM_I2C_STATUS']]], + ['busy',['busy',['../group__i2c__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_I2C_STATUS::busy()'],['../group__nand__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_NAND_STATUS::busy()'],['../group__flash__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_FLASH_STATUS::busy()'],['../group__spi__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_SPI_STATUS::busy()']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_63.html b/CMSIS/Documentation/Driver/html/search/all_63.html new file mode 100644 index 0000000..56b5ad1 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_63.js b/CMSIS/Documentation/Driver/html/search/all_63.js new file mode 100644 index 0000000..9f97811 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_63.js @@ -0,0 +1,42 @@ +var searchData= +[ + ['can_20bus_20communication_20mode',['CAN Bus Communication Mode',['../group__can__bus__mode__ctrls.html',1,'']]], + ['can_20control_20codes',['CAN Control Codes',['../group__can__control.html',1,'']]], + ['can_20object_20events',['CAN Object Events',['../group___c_a_n__events.html',1,'']]], + ['can_20filter_20operation_20codes',['CAN Filter Operation Codes',['../group__can__filter__operation__ctrls.html',1,'']]], + ['can_20identifier',['CAN Identifier',['../group__can__identifer__ctrls.html',1,'']]], + ['can_20interface',['CAN Interface',['../group__can__interface__gr.html',1,'']]], + ['can_20operation_20codes',['CAN Operation Codes',['../group__can__mode__ctrls.html',1,'']]], + ['can_20object_20configuration_20codes',['CAN Object Configuration Codes',['../group__can__obj__config__ctrls.html',1,'']]], + ['can_20bit_20timing_20codes',['CAN Bit Timing Codes',['../group__can__timeseg__ctrls.html',1,'']]], + ['can_20unit_20events',['CAN Unit Events',['../group___c_a_n__unit__events.html',1,'']]], + ['cardpower',['CardPower',['../group__mci__interface__gr.html#a73334c737658b227ef3097343d5c78bb',1,'ARM_DRIVER_MCI']]], + ['ccs',['ccs',['../group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe',1,'ARM_MCI_STATUS::ccs()'],['../group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe',1,'ARM_MCI_CAPABILITIES::ccs()']]], + ['ccs_5ftimeout',['ccs_timeout',['../group__mci__interface__gr.html#a9739c230a13b46482feb5475d257e482',1,'ARM_MCI_CAPABILITIES']]], + ['cd_5fevent',['cd_event',['../group__mci__interface__gr.html#abcabfa504d3226c723d9bf5debe2f164',1,'ARM_MCI_CAPABILITIES']]], + ['cd_5fstate',['cd_state',['../group__mci__interface__gr.html#af47e73979b028c86c7c1fbe39b095140',1,'ARM_MCI_CAPABILITIES']]], + ['ce_5flines',['ce_lines',['../group__nand__interface__gr.html#ad5dd0fcdd7f6d5e5cd739f73323a2b11',1,'ARM_NAND_CAPABILITIES']]], + ['ce_5fmanual',['ce_manual',['../group__nand__interface__gr.html#a2b8044d986995b183b057217643466bf',1,'ARM_NAND_CAPABILITIES']]], + ['checksum_5foffload_5frx_5ficmp',['checksum_offload_rx_icmp',['../group__eth__mac__interface__gr.html#a142179445bfdbaaaf0d451f277fb0e96',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5fip4',['checksum_offload_rx_ip4',['../group__eth__mac__interface__gr.html#a0051111be2e389c3161da1c444746216',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5fip6',['checksum_offload_rx_ip6',['../group__eth__mac__interface__gr.html#a674b2306c64901e924b3cb7bb882f32f',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5ftcp',['checksum_offload_rx_tcp',['../group__eth__mac__interface__gr.html#a730d6be6a7b868e0690d9548e77b7aae',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5fudp',['checksum_offload_rx_udp',['../group__eth__mac__interface__gr.html#a5a447f05a5fbfd35896aad9cd769511c',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5ficmp',['checksum_offload_tx_icmp',['../group__eth__mac__interface__gr.html#a7b701bac9d66886b5c6964b20c6ca55a',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5fip4',['checksum_offload_tx_ip4',['../group__eth__mac__interface__gr.html#ac787d70407ce70e28724932fb32ef0ba',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5fip6',['checksum_offload_tx_ip6',['../group__eth__mac__interface__gr.html#a8f7a154565e652d976b9e65bf3516504',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5ftcp',['checksum_offload_tx_tcp',['../group__eth__mac__interface__gr.html#a6c2b80bbfe520f3e7808cf3d4aaedb45',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5fudp',['checksum_offload_tx_udp',['../group__eth__mac__interface__gr.html#ab3f9560668a087606c40cd81b935396b',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['chipenable',['ChipEnable',['../group__nand__interface__gr.html#ac090c205fe3d1b3dcb7288b06468bbe5',1,'ARM_DRIVER_NAND']]], + ['codeword_5fsize',['codeword_size',['../group__nand__interface__gr.html#ae8cff208d9efb5067d38ced675916c66',1,'ARM_NAND_ECC_INFO']]], + ['command_5factive',['command_active',['../group__mci__interface__gr.html#aa22ef7c7597e90835bd67d5795ba757e',1,'ARM_MCI_STATUS']]], + ['command_5ferror',['command_error',['../group__mci__interface__gr.html#afca11cd2ce661c67455a6d75328848cc',1,'ARM_MCI_STATUS']]], + ['command_5ftimeout',['command_timeout',['../group__mci__interface__gr.html#a56e426979c3872254c156e9ae7eead5b',1,'ARM_MCI_STATUS']]], + ['common_20driver_20definitions',['Common Driver Definitions',['../group__common__drv__gr.html',1,'']]], + ['companding',['companding',['../group__sai__interface__gr.html#a77e4d8466d2bde30e6583b9ad8ba8c82',1,'ARM_SAI_CAPABILITIES']]], + ['connected',['connected',['../group__usbh__host__gr.html#abf1a0792d6af28877b0abd141d5524ac',1,'ARM_USBH_PORT_STATE']]], + ['control',['Control',['../group__can__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_CAN::Control()'],['../group__eth__mac__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_ETH_MAC::Control()'],['../group__i2c__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_I2C::Control()'],['../group__mci__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_MCI::Control()'],['../group__nand__interface__gr.html#a706fedbc88921808e210d75b7b5da168',1,'ARM_DRIVER_NAND::Control()'],['../group__sai__interface__gr.html#a80455fc2c7355b1850098710fd66a244',1,'ARM_DRIVER_SAI::Control()'],['../group__spi__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_SPI::Control()'],['../group__usart__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_USART::Control()']]], + ['controltimer',['ControlTimer',['../group__eth__mac__interface__gr.html#ab6bdbdc7fdfcc52e027201738b88b431',1,'ARM_DRIVER_ETH_MAC']]], + ['correctable_5fbits',['correctable_bits',['../group__nand__interface__gr.html#ae65f920c4ad99fd0c6bdf5fd8c4d161a',1,'ARM_NAND_ECC_INFO']]], + ['cts',['cts',['../group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262',1,'ARM_USART_MODEM_STATUS::cts()'],['../group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262',1,'ARM_USART_CAPABILITIES::cts()']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_64.html b/CMSIS/Documentation/Driver/html/search/all_64.html new file mode 100644 index 0000000..b53ff08 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_64.js b/CMSIS/Documentation/Driver/html/search/all_64.js new file mode 100644 index 0000000..e0c69aa --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_64.js @@ -0,0 +1,61 @@ +var searchData= +[ + ['data_5flost',['data_lost',['../group__spi__interface__gr.html#a9675630df67587ecd171c7ef12b9d22a',1,'ARM_SPI_STATUS']]], + ['data_5fwidth',['data_width',['../group__flash__interface__gr.html#a04c173610dd0a545ecae308e342aafb0',1,'ARM_FLASH_CAPABILITIES']]], + ['data_5fwidth_5f16',['data_width_16',['../group__nand__interface__gr.html#a0f22baea13daa9101bf6fc1fdfddc747',1,'ARM_NAND_CAPABILITIES']]], + ['data_5fwidth_5f4',['data_width_4',['../group__mci__interface__gr.html#a950669a8c88b49c8da4c56163b45a79d',1,'ARM_MCI_CAPABILITIES']]], + ['data_5fwidth_5f4_5fddr',['data_width_4_ddr',['../group__mci__interface__gr.html#abb1a604b0ee4f7e3510409747890e41e',1,'ARM_MCI_CAPABILITIES']]], + ['data_5fwidth_5f8',['data_width_8',['../group__mci__interface__gr.html#a808703d6c70a501464e156e55f5cabd2',1,'ARM_MCI_CAPABILITIES']]], + ['data_5fwidth_5f8_5fddr',['data_width_8_ddr',['../group__mci__interface__gr.html#acd5f6dce3a548d12c292e8cd17e4e9e2',1,'ARM_MCI_CAPABILITIES']]], + ['dcd',['dcd',['../group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c',1,'ARM_USART_MODEM_STATUS::dcd()'],['../group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c',1,'ARM_USART_CAPABILITIES::dcd()']]], + ['ddr',['ddr',['../group__nand__interface__gr.html#aa9acfde38637fe749aa9271c0a8dae1a',1,'ARM_NAND_CAPABILITIES']]], + ['ddr2',['ddr2',['../group__nand__interface__gr.html#ae086693990cbd5d628014c0fcc7c1f2c',1,'ARM_NAND_CAPABILITIES']]], + ['ddr2_5ftiming_5fmode',['ddr2_timing_mode',['../group__nand__interface__gr.html#a6d9b66da0e56d04d545e0bb6841891b2',1,'ARM_NAND_CAPABILITIES']]], + ['ddr_5ftiming_5fmode',['ddr_timing_mode',['../group__nand__interface__gr.html#a00c1f5db7d7c4abe7556733c36da7783',1,'ARM_NAND_CAPABILITIES']]], + ['deviceconnect',['DeviceConnect',['../group__usbd__interface__gr.html#a71d312ce5c5335c6a035da55c25848e4',1,'ARM_DRIVER_USBD']]], + ['devicedisconnect',['DeviceDisconnect',['../group__usbd__interface__gr.html#adff9dd8a0dc764e78b0271113ae3b0af',1,'ARM_DRIVER_USBD']]], + ['devicegetstate',['DeviceGetState',['../group__usbd__interface__gr.html#ab906727173cbe8372bdc26ef20581baa',1,'ARM_DRIVER_USBD']]], + ['devicepower',['DevicePower',['../group__nand__interface__gr.html#a9ba6f3066cda5c8d781c309a17315a58',1,'ARM_DRIVER_NAND']]], + ['deviceremotewakeup',['DeviceRemoteWakeup',['../group__usbd__interface__gr.html#a649343be3fcfc44431d19f51d13e03b3',1,'ARM_DRIVER_USBD']]], + ['devicesetaddress',['DeviceSetAddress',['../group__usbd__interface__gr.html#a4e927b5593f416a8641e12016208b5d5',1,'ARM_DRIVER_USBD']]], + ['direction',['direction',['../group__i2c__interface__gr.html#a2148ffb99828aeaced6a5655502434ac',1,'ARM_I2C_STATUS']]], + ['dlc',['dlc',['../group__can__interface__gr.html#a811fbb0cb2c2263b1a7440a7e9d78239',1,'ARM_CAN_MSG_INFO']]], + ['driver_5fcan_2ec',['Driver_CAN.c',['../_driver___c_a_n_8c.html',1,'']]], + ['driver_5fcan_2eh',['Driver_CAN.h',['../_driver___c_a_n_8h.html',1,'']]], + ['driver_5fcommon_2ec',['Driver_Common.c',['../_driver___common_8c.html',1,'']]], + ['driver_5fcommon_2eh',['Driver_Common.h',['../_driver___common_8h.html',1,'']]], + ['driver_5feth_2ec',['Driver_ETH.c',['../_driver___e_t_h_8c.html',1,'']]], + ['driver_5feth_2eh',['Driver_ETH.h',['../_driver___e_t_h_8h.html',1,'']]], + ['driver_5feth_5fmac_2ec',['Driver_ETH_MAC.c',['../_driver___e_t_h___m_a_c_8c.html',1,'']]], + ['driver_5feth_5fmac_2eh',['Driver_ETH_MAC.h',['../_driver___e_t_h___m_a_c_8h.html',1,'']]], + ['driver_5feth_5fphy_2ec',['Driver_ETH_PHY.c',['../_driver___e_t_h___p_h_y_8c.html',1,'']]], + ['driver_5feth_5fphy_2eh',['Driver_ETH_PHY.h',['../_driver___e_t_h___p_h_y_8h.html',1,'']]], + ['driver_5fflash_2ec',['Driver_Flash.c',['../_driver___flash_8c.html',1,'']]], + ['driver_5fflash_2eh',['Driver_Flash.h',['../_driver___flash_8h.html',1,'']]], + ['driver_5fi2c_2ec',['Driver_I2C.c',['../_driver___i2_c_8c.html',1,'']]], + ['driver_5fi2c_2eh',['Driver_I2C.h',['../_driver___i2_c_8h.html',1,'']]], + ['driver_5fmci_2ec',['Driver_MCI.c',['../_driver___m_c_i_8c.html',1,'']]], + ['driver_5fmci_2eh',['Driver_MCI.h',['../_driver___m_c_i_8h.html',1,'']]], + ['driver_5fnand_2ec',['Driver_NAND.c',['../_driver___n_a_n_d_8c.html',1,'']]], + ['driver_5fnand_2eh',['Driver_NAND.h',['../_driver___n_a_n_d_8h.html',1,'']]], + ['driver_5fsai_2ec',['Driver_SAI.c',['../_driver___s_a_i_8c.html',1,'']]], + ['driver_5fsai_2eh',['Driver_SAI.h',['../_driver___s_a_i_8h.html',1,'']]], + ['driver_5fspi_2ec',['Driver_SPI.c',['../_driver___s_p_i_8c.html',1,'']]], + ['driver_5fspi_2eh',['Driver_SPI.h',['../_driver___s_p_i_8h.html',1,'']]], + ['driver_5fstrength_5f18',['driver_strength_18',['../group__nand__interface__gr.html#ae672b2a65dd3d0b93812c088491c4552',1,'ARM_NAND_CAPABILITIES']]], + ['driver_5fstrength_5f25',['driver_strength_25',['../group__nand__interface__gr.html#ae87c19872b838dac7d3136a3fd466f6a',1,'ARM_NAND_CAPABILITIES']]], + ['driver_5fstrength_5f50',['driver_strength_50',['../group__nand__interface__gr.html#aef3d6e1522a6cf7fb87fd113dcd43ad5',1,'ARM_NAND_CAPABILITIES']]], + ['driver_5fusart_2ec',['Driver_USART.c',['../_driver___u_s_a_r_t_8c.html',1,'']]], + ['driver_5fusart_2eh',['Driver_USART.h',['../_driver___u_s_a_r_t_8h.html',1,'']]], + ['driver_5fusb_2ec',['Driver_USB.c',['../_driver___u_s_b_8c.html',1,'']]], + ['driver_5fusb_2eh',['Driver_USB.h',['../_driver___u_s_b_8h.html',1,'']]], + ['driver_5fusbd_2ec',['Driver_USBD.c',['../_driver___u_s_b_d_8c.html',1,'']]], + ['driver_5fusbd_2eh',['Driver_USBD.h',['../_driver___u_s_b_d_8h.html',1,'']]], + ['driver_5fusbh_2ec',['Driver_USBH.c',['../_driver___u_s_b_h_8c.html',1,'']]], + ['driver_5fusbh_2eh',['Driver_USBH.h',['../_driver___u_s_b_h_8h.html',1,'']]], + ['driver_20validation',['Driver Validation',['../_driver_validation.html',1,'']]], + ['drv',['drv',['../group__common__drv__gr.html#adcd153bc4507926c792e86ebe74e6455',1,'ARM_DRIVER_VERSION']]], + ['dsr',['dsr',['../group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2',1,'ARM_USART_MODEM_STATUS::dsr()'],['../group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2',1,'ARM_USART_CAPABILITIES::dsr()']]], + ['dtr',['dtr',['../group__usart__interface__gr.html#aa3cc092c82fdc3e5e6646460be6ae9fd',1,'ARM_USART_CAPABILITIES']]], + ['duplex',['duplex',['../group__eth__interface__gr.html#a44b6cae894d7311dcdae7e93969c3c09',1,'ARM_ETH_LINK_INFO']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_65.html b/CMSIS/Documentation/Driver/html/search/all_65.html new file mode 100644 index 0000000..66cc834 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_65.js b/CMSIS/Documentation/Driver/html/search/all_65.js new file mode 100644 index 0000000..84171fd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_65.js @@ -0,0 +1,53 @@ +var searchData= +[ + ['ecc_5ferror',['ecc_error',['../group__nand__interface__gr.html#a7707d2200a3bf8f49b148ffc8ded7636',1,'ARM_NAND_STATUS']]], + ['ecc_5foffset',['ecc_offset',['../group__nand__interface__gr.html#a22d6a1813a47a7044f7acb478f8e9eb8',1,'ARM_NAND_ECC_INFO']]], + ['ecc_5fsize',['ecc_size',['../group__nand__interface__gr.html#a22365f6a2af1171a1c3629c8ae5fe001',1,'ARM_NAND_ECC_INFO']]], + ['edl',['edl',['../group__can__interface__gr.html#ab6883964c9d4bdf60616684e8d2459df',1,'ARM_CAN_MSG_INFO']]], + ['end',['end',['../group__flash__interface__gr.html#a204a3f4fa39b9c007f9784d3e4af4667',1,'ARM_FLASH_SECTOR']]], + ['endpointconfigure',['EndpointConfigure',['../group__usbd__interface__gr.html#a9fcafd15149d35022b05cf3c396e714e',1,'ARM_DRIVER_USBD']]], + ['endpointstall',['EndpointStall',['../group__usbd__interface__gr.html#a6fbcf63ac9f962787cddc8f11a44dccb',1,'ARM_DRIVER_USBD']]], + ['endpointtransfer',['EndpointTransfer',['../group__usbd__interface__gr.html#a0cc21434bc57e696fabf0207925fe5ff',1,'ARM_DRIVER_USBD']]], + ['endpointtransferabort',['EndpointTransferAbort',['../group__usbd__interface__gr.html#a4e36fd46291f71e4a748264e2f6ae431',1,'ARM_DRIVER_USBD']]], + ['endpointtransfergetresult',['EndpointTransferGetResult',['../group__usbd__interface__gr.html#a217e38c26bbcdecbad8c984753b2597a',1,'ARM_DRIVER_USBD']]], + ['endpointunconfigure',['EndpointUnconfigure',['../group__usbd__interface__gr.html#ad45578fffbd046231f69aa058d29bba5',1,'ARM_DRIVER_USBD']]], + ['erase_5fchip',['erase_chip',['../group__flash__interface__gr.html#af5ec2b569c193fc5024c2739f46b328a',1,'ARM_FLASH_CAPABILITIES']]], + ['erasechip',['EraseChip',['../group__flash__interface__gr.html#ae873705c743d94572fb6500421e15760',1,'ARM_DRIVER_FLASH']]], + ['erased_5fvalue',['erased_value',['../group__flash__interface__gr.html#a85c3826bf20669d38e466dfd376994db',1,'ARM_FLASH_INFO']]], + ['erasesector',['EraseSector',['../group__flash__interface__gr.html#ad9d78f9fe07aabf12b23b95239818b55',1,'ARM_DRIVER_FLASH']]], + ['error',['error',['../group__flash__interface__gr.html#aa8d183302fdfa4a6892f1d80300cdb32',1,'ARM_FLASH_STATUS']]], + ['esi',['esi',['../group__can__interface__gr.html#ada78e3124de6adf5a5d212f9ebc4bbe0',1,'ARM_CAN_MSG_INFO']]], + ['ethernet_20interface',['Ethernet Interface',['../group__eth__interface__gr.html',1,'']]], + ['ethernet_20mac_20configuration',['Ethernet MAC Configuration',['../group__eth__mac__configuration__ctrls.html',1,'']]], + ['ethernet_20mac_20control_20codes',['Ethernet MAC Control Codes',['../group__eth__mac__control.html',1,'']]], + ['ethernet_20mac_20controls',['Ethernet MAC Controls',['../group__eth__mac__ctrls.html',1,'']]], + ['ethernet_20mac_20events',['Ethernet MAC Events',['../group___e_t_h___m_a_c__events.html',1,'']]], + ['ethernet_20mac_20flush_20flags',['Ethernet MAC Flush Flags',['../group__eth__mac__flush__flag__ctrls.html',1,'']]], + ['ethernet_20mac_20frame_20transmit_20flags',['Ethernet MAC Frame Transmit Flags',['../group__eth__mac__frame__transmit__ctrls.html',1,'']]], + ['ethernet_20mac_20interface',['Ethernet MAC Interface',['../group__eth__mac__interface__gr.html',1,'']]], + ['ethernet_20mac_20timer_20control_20codes',['Ethernet MAC Timer Control Codes',['../group__eth__mac__time__control.html',1,'']]], + ['ethernet_20mac_20vlan_20filter_20flag',['Ethernet MAC VLAN Filter Flag',['../group__eth__mac__vlan__filter__ctrls.html',1,'']]], + ['ethernet_20phy_20interface',['Ethernet PHY Interface',['../group__eth__phy__interface__gr.html',1,'']]], + ['ethernet_20phy_20mode',['Ethernet PHY Mode',['../group__eth__phy__mode__ctrls.html',1,'']]], + ['event_5fconnect',['event_connect',['../group__usbh__host__gr.html#ae76b779cb9fdf447b20c8b6beed2d534',1,'ARM_USBH_CAPABILITIES']]], + ['event_5fcts',['event_cts',['../group__usart__interface__gr.html#a4ebe5ddec8d99a63843f2a3c70ac85f9',1,'ARM_USART_CAPABILITIES']]], + ['event_5fdcd',['event_dcd',['../group__usart__interface__gr.html#a7c1dd043d0db9738d6b5fa8d89211446',1,'ARM_USART_CAPABILITIES']]], + ['event_5fdevice_5fready',['event_device_ready',['../group__nand__interface__gr.html#a5f347e9b63764bbb657f52dc20682128',1,'ARM_NAND_CAPABILITIES']]], + ['event_5fdisconnect',['event_disconnect',['../group__usbh__host__gr.html#ab83941051cac8e19807b887354dc42fc',1,'ARM_USBH_CAPABILITIES']]], + ['event_5fdsr',['event_dsr',['../group__usart__interface__gr.html#aefdb61f16498d650b5a7f5f9b62779df',1,'ARM_USART_CAPABILITIES']]], + ['event_5fframe_5ferror',['event_frame_error',['../group__sai__interface__gr.html#acc06ba75f18af9862d171426abc3273e',1,'ARM_SAI_CAPABILITIES']]], + ['event_5fmode_5ffault',['event_mode_fault',['../group__spi__interface__gr.html#a309619714f0c4febaa497ebdb9b7e3ca',1,'ARM_SPI_CAPABILITIES']]], + ['event_5fovercurrent',['event_overcurrent',['../group__usbh__host__gr.html#acd3087b3a4a7691595dd75568c12d696',1,'ARM_USBH_CAPABILITIES']]], + ['event_5fready',['event_ready',['../group__flash__interface__gr.html#add296ba516c8fc17ba51e30f2a00f0a9',1,'ARM_FLASH_CAPABILITIES']]], + ['event_5fri',['event_ri',['../group__usart__interface__gr.html#ab55f90aec5f909ff3a75bf36e61312ea',1,'ARM_USART_CAPABILITIES']]], + ['event_5frx_5fframe',['event_rx_frame',['../group__eth__mac__interface__gr.html#a8c8f1ac2bf053a9bac98c476646a6018',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['event_5frx_5ftimeout',['event_rx_timeout',['../group__usart__interface__gr.html#afe469796cfca4ea61bd6181afb4916be',1,'ARM_USART_CAPABILITIES']]], + ['event_5ftx_5fcomplete',['event_tx_complete',['../group__usart__interface__gr.html#a0190aabe8d8f59176be8d693f8874fb3',1,'ARM_USART_CAPABILITIES']]], + ['event_5ftx_5fframe',['event_tx_frame',['../group__eth__mac__interface__gr.html#a1b4af3590d59ea4f8e845b4239a4e445',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['event_5fvbus_5foff',['event_vbus_off',['../group__usbd__interface__gr.html#a72d905bc20735bafda40d73c91829709',1,'ARM_USBD_CAPABILITIES']]], + ['event_5fvbus_5fon',['event_vbus_on',['../group__usbd__interface__gr.html#a53f95b9ecb7c84197947e7542501c7d3',1,'ARM_USBD_CAPABILITIES']]], + ['event_5fwakeup',['event_wakeup',['../group__eth__mac__interface__gr.html#a7536d9b9818b20b6974a712e0449439b',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['exact_5ffiltering',['exact_filtering',['../group__can__interface__gr.html#a886337af58da4f995529eba228fb9b7a',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['executesequence',['ExecuteSequence',['../group__nand__interface__gr.html#af0dd5e96fbcc5c15bb183363f8541af8',1,'ARM_DRIVER_NAND']]], + ['external_5floopback',['external_loopback',['../group__can__interface__gr.html#a2b76df7e4bfbdd9866cc906415e626c9',1,'ARM_CAN_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_66.html b/CMSIS/Documentation/Driver/html/search/all_66.html new file mode 100644 index 0000000..3d1f8b3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_66.js b/CMSIS/Documentation/Driver/html/search/all_66.js new file mode 100644 index 0000000..36f4978 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_66.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['fd_5fmode',['fd_mode',['../group__can__interface__gr.html#a15d22d5906d419ed1a7ca0968be00a04',1,'ARM_CAN_CAPABILITIES']]], + ['flash_20events',['Flash Events',['../group___flash__events.html',1,'']]], + ['flash_20interface',['Flash Interface',['../group__flash__interface__gr.html',1,'']]], + ['flow_5fcontrol_5fcts',['flow_control_cts',['../group__usart__interface__gr.html#a287da15773bb24a301cbfd806975e1e9',1,'ARM_USART_CAPABILITIES']]], + ['flow_5fcontrol_5frts',['flow_control_rts',['../group__usart__interface__gr.html#a1d55dd339a08293018608775fc8b4859',1,'ARM_USART_CAPABILITIES']]], + ['frame_5ferror',['frame_error',['../group__sai__interface__gr.html#a1b4f69a2caf19ef9fd75cf27ae3932f9',1,'ARM_SAI_STATUS']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_67.html b/CMSIS/Documentation/Driver/html/search/all_67.html new file mode 100644 index 0000000..41a459a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_67.js b/CMSIS/Documentation/Driver/html/search/all_67.js new file mode 100644 index 0000000..0ed50f4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_67.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['general_2etxt',['General.txt',['../_general_8txt.html',1,'']]], + ['general_5fcall',['general_call',['../group__i2c__interface__gr.html#ab65804439f6f5beda8da30381b0ad22d',1,'ARM_I2C_STATUS']]], + ['getcapabilities',['GetCapabilities',['../group__can__interface__gr.html#a62c0c62c2bf482c000b1b2a2c817a96f',1,'ARM_DRIVER_CAN::GetCapabilities()'],['../group__eth__mac__interface__gr.html#a9fd725bb058c584a9ced9c579561cdf1',1,'ARM_DRIVER_ETH_MAC::GetCapabilities()'],['../group__i2c__interface__gr.html#a5dfa74ca82e0af995d43da61e08c3103',1,'ARM_DRIVER_I2C::GetCapabilities()'],['../group__mci__interface__gr.html#a5648b4224e0346ba5e20fefc7e83aee8',1,'ARM_DRIVER_MCI::GetCapabilities()'],['../group__nand__interface__gr.html#adab9d081aee3e5d1f83c6911e45ceaa6',1,'ARM_DRIVER_NAND::GetCapabilities()'],['../group__flash__interface__gr.html#a25076bd7274af5d3b0af6380ed1f0331',1,'ARM_DRIVER_FLASH::GetCapabilities()'],['../group__sai__interface__gr.html#a7e230744b9898cabf80ee6f2595569f6',1,'ARM_DRIVER_SAI::GetCapabilities()'],['../group__spi__interface__gr.html#a065b5fc24d0204692f0f95a44351ac1e',1,'ARM_DRIVER_SPI::GetCapabilities()'],['../group__usart__interface__gr.html#a9cec078ea816ece7b2d989f35caadb12',1,'ARM_DRIVER_USART::GetCapabilities()'],['../group__usbd__interface__gr.html#a52045edf0f555a0f0ecdf37a5e169f7a',1,'ARM_DRIVER_USBD::GetCapabilities()'],['../group__usbh__host__gr.html#aaba1d9458e32389c21c3d899f9cb9313',1,'ARM_DRIVER_USBH::GetCapabilities()'],['../group__usbh__hci__gr.html#a7a41769405bb3bb4cc9eaba26cf220d4',1,'ARM_DRIVER_USBH_HCI::GetCapabilities()']]], + ['getclock',['GetClock',['../group__can__interface__gr.html#a21063f38e762cf29dfd3f5991ee936e2',1,'ARM_DRIVER_CAN']]], + ['getdatacount',['GetDataCount',['../group__i2c__interface__gr.html#ad421a9b9b07fd6d3e6537396c2b98788',1,'ARM_DRIVER_I2C::GetDataCount()'],['../group__spi__interface__gr.html#ad1d892ab3932f65cd7cdf2d0a91ae5da',1,'ARM_DRIVER_SPI::GetDataCount()']]], + ['getdevicebusy',['GetDeviceBusy',['../group__nand__interface__gr.html#ac9bc93fb1a089c6ac71428122f3a072e',1,'ARM_DRIVER_NAND']]], + ['getframenumber',['GetFrameNumber',['../group__usbd__interface__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919',1,'ARM_DRIVER_USBD::GetFrameNumber()'],['../group__usbh__host__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919',1,'ARM_DRIVER_USBH::GetFrameNumber()']]], + ['getinfo',['GetInfo',['../group__flash__interface__gr.html#ae64d4ee61b7a7ee0b38a0ef2b61f1db2',1,'ARM_DRIVER_FLASH']]], + ['getlinkinfo',['GetLinkInfo',['../group__eth__phy__interface__gr.html#ac162bfaf93512fa0966bfbb923c45463',1,'ARM_DRIVER_ETH_PHY']]], + ['getlinkstate',['GetLinkState',['../group__eth__phy__interface__gr.html#a0e25b2f267edc874f1bd785175fcf08a',1,'ARM_DRIVER_ETH_PHY']]], + ['getmacaddress',['GetMacAddress',['../group__eth__mac__interface__gr.html#a02837059933cd04b04bf795a7138f218',1,'ARM_DRIVER_ETH_MAC']]], + ['getmodemstatus',['GetModemStatus',['../group__usart__interface__gr.html#a517a7a98a444126734782beb4951a9db',1,'ARM_DRIVER_USART']]], + ['getrxcount',['GetRxCount',['../group__sai__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71',1,'ARM_DRIVER_SAI::GetRxCount()'],['../group__usart__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71',1,'ARM_DRIVER_USART::GetRxCount()']]], + ['getrxframesize',['GetRxFrameSize',['../group__eth__mac__interface__gr.html#a3286cc9c7624168b162aa3ce3cbe135e',1,'ARM_DRIVER_ETH_MAC']]], + ['getrxframetime',['GetRxFrameTime',['../group__eth__mac__interface__gr.html#a8ae5a588bf4055bba3de73cfba78f7e8',1,'ARM_DRIVER_ETH_MAC']]], + ['getstatus',['GetStatus',['../group__can__interface__gr.html#ad60ff24982cdb3ce38b8c17e0b4f0acc',1,'ARM_DRIVER_CAN::GetStatus()'],['../group__i2c__interface__gr.html#ad4b47653bc47cdb02965dd311e88b96a',1,'ARM_DRIVER_I2C::GetStatus()'],['../group__mci__interface__gr.html#a2dc63353d6869c0ea2d3d29155c88b49',1,'ARM_DRIVER_MCI::GetStatus()'],['../group__nand__interface__gr.html#aa43ee108ee5bf29e40485ca89b34188b',1,'ARM_DRIVER_NAND::GetStatus()'],['../group__flash__interface__gr.html#afc1db6f33f777784f3c95efc816d4856',1,'ARM_DRIVER_FLASH::GetStatus()'],['../group__sai__interface__gr.html#a310d55d55bd7c6b0393d43bb994db708',1,'ARM_DRIVER_SAI::GetStatus()'],['../group__spi__interface__gr.html#a7305e7248420cdb4b02ceba87672178d',1,'ARM_DRIVER_SPI::GetStatus()'],['../group__usart__interface__gr.html#a055ad4095356a022886828009a980316',1,'ARM_DRIVER_USART::GetStatus()']]], + ['gettxcount',['GetTxCount',['../group__sai__interface__gr.html#a0b28b2c21016702f50c28655653099df',1,'ARM_DRIVER_SAI::GetTxCount()'],['../group__usart__interface__gr.html#a0b28b2c21016702f50c28655653099df',1,'ARM_DRIVER_USART::GetTxCount()']]], + ['gettxframetime',['GetTxFrameTime',['../group__eth__mac__interface__gr.html#acf081f5020f4ef1435bcff7333a70b93',1,'ARM_DRIVER_ETH_MAC']]], + ['getversion',['GetVersion',['../group__can__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_CAN::GetVersion()'],['../group__eth__mac__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_ETH_MAC::GetVersion()'],['../group__eth__phy__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_ETH_PHY::GetVersion()'],['../group__i2c__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_I2C::GetVersion()'],['../group__mci__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_MCI::GetVersion()'],['../group__nand__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_NAND::GetVersion()'],['../group__flash__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_FLASH::GetVersion()'],['../group__sai__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_SAI::GetVersion()'],['../group__spi__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_SPI::GetVersion()'],['../group__usart__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USART::GetVersion()'],['../group__usbd__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USBD::GetVersion()'],['../group__usbh__host__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USBH::GetVersion()'],['../group__usbh__hci__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USBH_HCI::GetVersion()']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_68.html b/CMSIS/Documentation/Driver/html/search/all_68.html new file mode 100644 index 0000000..6df9097 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_68.js b/CMSIS/Documentation/Driver/html/search/all_68.js new file mode 100644 index 0000000..fc8072f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['high_5fspeed',['high_speed',['../group__mci__interface__gr.html#a83ecf7d4472c55362750ef72d8f8f47d',1,'ARM_MCI_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_69.html b/CMSIS/Documentation/Driver/html/search/all_69.html new file mode 100644 index 0000000..1a00b55 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_69.js b/CMSIS/Documentation/Driver/html/search/all_69.js new file mode 100644 index 0000000..0721978 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_69.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['i2c_20address_20flags',['I2C Address Flags',['../group__i2c__address__flags.html',1,'']]], + ['i2c_20bus_20speed',['I2C Bus Speed',['../group__i2c__bus__speed__ctrls.html',1,'']]], + ['i2c_20control_20codes',['I2C Control Codes',['../group__i2c__control__codes.html',1,'']]], + ['i2c_20control_20codes',['I2C Control Codes',['../group__i2c__control__gr.html',1,'']]], + ['i2c_20events',['I2C Events',['../group___i2_c__events.html',1,'']]], + ['i2c_20interface',['I2C Interface',['../group__i2c__interface__gr.html',1,'']]], + ['id',['id',['../group__can__interface__gr.html#abaabdc509cdaba7df9f56c6c76f3ae19',1,'ARM_CAN_MSG_INFO']]], + ['initialize',['Initialize',['../group__can__interface__gr.html#a322b44b8e757887616b75035a8fd7027',1,'ARM_DRIVER_CAN::Initialize()'],['../group__eth__mac__interface__gr.html#aa34417c70cb8b43567c59aa530866cc7',1,'ARM_DRIVER_ETH_MAC::Initialize()'],['../group__eth__phy__interface__gr.html#a9f9e7173bf8fed4d774fa48da53739ba',1,'ARM_DRIVER_ETH_PHY::Initialize()'],['../group__i2c__interface__gr.html#ab0480980f67e0ebe0461ccea7873a65b',1,'ARM_DRIVER_I2C::Initialize()'],['../group__mci__interface__gr.html#ae51ec82c310aff0edda6220f9ebfd822',1,'ARM_DRIVER_MCI::Initialize()'],['../group__nand__interface__gr.html#a28b29ab7b6114bb97175bd40d18854ac',1,'ARM_DRIVER_NAND::Initialize()'],['../group__flash__interface__gr.html#a2d1eb2b5c3ee21ba5c92c37e89412567',1,'ARM_DRIVER_FLASH::Initialize()'],['../group__sai__interface__gr.html#a54a38e78d5fd7ca0d37174c81ec01731',1,'ARM_DRIVER_SAI::Initialize()'],['../group__spi__interface__gr.html#afac50d0b28860f7b569293e6b713f8a4',1,'ARM_DRIVER_SPI::Initialize()'],['../group__usart__interface__gr.html#a1a68601c09df8d37f3500ad373333962',1,'ARM_DRIVER_USART::Initialize()'],['../group__usbd__interface__gr.html#a84439aa5677d330d257a4b43e48d6426',1,'ARM_DRIVER_USBD::Initialize()'],['../group__usbh__host__gr.html#a5bf141e46b7ced3abe3466cae4d811fb',1,'ARM_DRIVER_USBH::Initialize()'],['../group__usbh__hci__gr.html#a40cbaad9fd2458b1008d31e1469903bb',1,'ARM_DRIVER_USBH_HCI::Initialize()']]], + ['inquireecc',['InquireECC',['../group__nand__interface__gr.html#aecd239806e9f08b77ce0d00f61e78cf8',1,'ARM_DRIVER_NAND']]], + ['internal_5floopback',['internal_loopback',['../group__can__interface__gr.html#af19cdbb26d3496ed7dd63a59a7c7711f',1,'ARM_CAN_CAPABILITIES']]], + ['irda',['irda',['../group__usart__interface__gr.html#a9a72c5f0209a9ccf840fc196e9a9dffa',1,'ARM_USART_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_6c.html b/CMSIS/Documentation/Driver/html/search/all_6c.html new file mode 100644 index 0000000..f6383cc --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_6c.js b/CMSIS/Documentation/Driver/html/search/all_6c.js new file mode 100644 index 0000000..eaed56d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['last_5ferror_5fcode',['last_error_code',['../group__can__interface__gr.html#a2171ea8dff5e4b54e84728aa134854b6',1,'ARM_CAN_STATUS']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_6d.html b/CMSIS/Documentation/Driver/html/search/all_6d.html new file mode 100644 index 0000000..2e27d4d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_6d.js b/CMSIS/Documentation/Driver/html/search/all_6d.js new file mode 100644 index 0000000..03db0c9 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6d.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['media_20interface_20types',['Media Interface Types',['../group__eth__interface__types1.html',1,'']]], + ['mac_5faddress',['mac_address',['../group__eth__mac__interface__gr.html#a7fdea04bacd9c0e12792751055ef6238',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['mask_5ffiltering',['mask_filtering',['../group__can__interface__gr.html#a2aa0e772d6cb8c30bb76ce1324423464',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['masterreceive',['MasterReceive',['../group__i2c__interface__gr.html#aa135ff2f4832d35ceb5d7e248159b981',1,'ARM_DRIVER_I2C']]], + ['mastertransmit',['MasterTransmit',['../group__i2c__interface__gr.html#a9e58f7ea5fd9476e06b45c70b6696b95',1,'ARM_DRIVER_I2C']]], + ['mci_20bus_20data_20width',['MCI Bus Data Width',['../group__mci__bus__data__width__ctrls.html',1,'']]], + ['mci_20bus_20speed_20mode',['MCI Bus Speed Mode',['../group__mci__bus__speed__ctrls.html',1,'']]], + ['mci_20card_20power_20controls',['MCI Card Power Controls',['../group__mci__card__power__ctrls.html',1,'']]], + ['mci_20cmd_20line_20mode',['MCI CMD Line Mode',['../group__mci__cmd__line__ctrls.html',1,'']]], + ['mci_20control_20codes',['MCI Control Codes',['../group__mci__control__gr.html',1,'']]], + ['mci_20driver_20strength',['MCI Driver Strength',['../group__mci__driver__strength__ctrls.html',1,'']]], + ['mci_20events',['MCI Events',['../group__mci__event__gr.html',1,'']]], + ['mci_20interface',['MCI Interface',['../group__mci__interface__gr.html',1,'']]], + ['mci_20controls',['MCI Controls',['../group__mci__mode__ctrls.html',1,'']]], + ['mci_20send_20command_20flags',['MCI Send Command Flags',['../group__mci__send__command__flags__ctrls.html',1,'']]], + ['mci_20transfer_20controls',['MCI Transfer Controls',['../group__mci__transfer__ctrls.html',1,'']]], + ['mclk_5fpin',['mclk_pin',['../group__sai__interface__gr.html#a12554e2522a0c611e8a26c9e536554eb',1,'ARM_SAI_CAPABILITIES']]], + ['media_5finterface',['media_interface',['../group__eth__mac__interface__gr.html#a3c5cb74e086417a01d0079f847a3fc8d',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['message_5fdepth',['message_depth',['../group__can__interface__gr.html#a5a782fc223b0ea5034c6676eaec6f2d4',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['messageread',['MessageRead',['../group__can__interface__gr.html#ace17a0046cf2c6cdbcb0fd3202e460a0',1,'ARM_DRIVER_CAN']]], + ['messagesend',['MessageSend',['../group__can__interface__gr.html#a3e6eb8bae2b7f8af99a3ca3cbbacce22',1,'ARM_DRIVER_CAN']]], + ['microwire',['microwire',['../group__spi__interface__gr.html#a9b4e858eb1d414128994742bf121f94c',1,'ARM_SPI_CAPABILITIES']]], + ['mmc_5fboot',['mmc_boot',['../group__mci__interface__gr.html#a072a194948489d4dbd2409b94fdca56b',1,'ARM_MCI_CAPABILITIES']]], + ['mmc_5finterrupt',['mmc_interrupt',['../group__mci__interface__gr.html#a3303194ea68bd1094841d4f958f6dbbf',1,'ARM_MCI_CAPABILITIES']]], + ['mode',['mode',['../group__i2c__interface__gr.html#a6b29e4f37f4482274af785ad5ffe96a7',1,'ARM_I2C_STATUS']]], + ['mode_5ffault',['mode_fault',['../group__spi__interface__gr.html#aeaf54ec655b7a64b9e88578c5f39d4e3',1,'ARM_SPI_STATUS']]], + ['monitor_5fmode',['monitor_mode',['../group__can__interface__gr.html#a176f42e68d9cba86b3594c40044b86c6',1,'ARM_CAN_CAPABILITIES']]], + ['mono_5fmode',['mono_mode',['../group__sai__interface__gr.html#a8d92817d8662211abda2d747c52ff4a9',1,'ARM_SAI_CAPABILITIES']]], + ['multiple_5ffilters',['multiple_filters',['../group__can__interface__gr.html#a3662fb9a8fb81212043cadd90da704af',1,'ARM_CAN_OBJ_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_6e.html b/CMSIS/Documentation/Driver/html/search/all_6e.html new file mode 100644 index 0000000..1f92ee5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_6e.js b/CMSIS/Documentation/Driver/html/search/all_6e.js new file mode 100644 index 0000000..8fcd702 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6e.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['nand_20bus_20modes',['NAND Bus Modes',['../group__nand__bus__mode__codes.html',1,'']]], + ['nand_20mode_20controls',['NAND Mode Controls',['../group__nand__control__codes.html',1,'']]], + ['nand_20control_20codes',['NAND Control Codes',['../group__nand__control__gr.html',1,'']]], + ['nand_20data_20bus_20width',['NAND Data Bus Width',['../group__nand__data__bus__width__codes.html',1,'']]], + ['nand_20ecc_20codes',['NAND ECC Codes',['../group__nand__driver__ecc__codes.html',1,'']]], + ['nand_20flags',['NAND Flags',['../group__nand__driver__flag__codes.html',1,'']]], + ['nand_20sequence_20execution_20codes',['NAND Sequence Execution Codes',['../group__nand__driver__seq__exec__codes.html',1,'']]], + ['nand_20driver_20strength',['NAND Driver Strength',['../group__nand__driver__strength__codes.html',1,'']]], + ['nand_20events',['NAND Events',['../group___n_a_n_d__events.html',1,'']]], + ['nand_20interface',['NAND Interface',['../group__nand__interface__gr.html',1,'']]], + ['ns',['ns',['../group__eth__mac__interface__gr.html#a048317f84621fb38ed0bf8c8255e26f0',1,'ARM_ETH_MAC_TIME']]], + ['num_5fobjects',['num_objects',['../group__can__interface__gr.html#a69bd1a164443cf6f501489f4d31f4681',1,'ARM_CAN_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_6f.html b/CMSIS/Documentation/Driver/html/search/all_6f.html new file mode 100644 index 0000000..61827e8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_6f.js b/CMSIS/Documentation/Driver/html/search/all_6f.js new file mode 100644 index 0000000..26d6d82 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_6f.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['overview',['Overview',['../index.html',1,'']]], + ['objectconfigure',['ObjectConfigure',['../group__can__interface__gr.html#a24cfe29d7f6a29dfbac3c7011fc5b652',1,'ARM_DRIVER_CAN']]], + ['objectgetcapabilities',['ObjectGetCapabilities',['../group__can__interface__gr.html#a7239c03265659edcaf69dc9ea5e29ce3',1,'ARM_DRIVER_CAN']]], + ['objectsetfilter',['ObjectSetFilter',['../group__can__interface__gr.html#a2bfa264f66c84606ebf9f9e8dc45b907',1,'ARM_DRIVER_CAN']]], + ['overcurrent',['overcurrent',['../group__usbh__host__gr.html#ae4b5761b8d095bee008a94856ceca46b',1,'ARM_USBH_PORT_STATE']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_70.html b/CMSIS/Documentation/Driver/html/search/all_70.html new file mode 100644 index 0000000..0340151 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_70.js b/CMSIS/Documentation/Driver/html/search/all_70.js new file mode 100644 index 0000000..aed955d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_70.js @@ -0,0 +1,30 @@ +var searchData= +[ + ['page_5fcount',['page_count',['../group__nand__interface__gr.html#aa993bc236650aa405b01d00b7ca72904',1,'ARM_NAND_ECC_INFO']]], + ['page_5flayout',['page_layout',['../group__nand__interface__gr.html#a5952ba4313bda7833fefd358f5aff979',1,'ARM_NAND_ECC_INFO']]], + ['page_5fsize',['page_size',['../group__nand__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9',1,'ARM_NAND_ECC_INFO::page_size()'],['../group__flash__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9',1,'ARM_FLASH_INFO::page_size()']]], + ['phy_5fread',['PHY_Read',['../group__eth__mac__interface__gr.html#a0f2ddb734e4242077275761400b26e35',1,'ARM_DRIVER_ETH_MAC']]], + ['phy_5fwrite',['PHY_Write',['../group__eth__mac__interface__gr.html#ac3efe9bdc31c3b1d7fd8eb82bbfb4c13',1,'ARM_DRIVER_ETH_MAC']]], + ['pipecreate',['PipeCreate',['../group__usbh__host__gr.html#a7ce5ca579a8c535434187ad05f596fbd',1,'ARM_DRIVER_USBH']]], + ['pipedelete',['PipeDelete',['../group__usbh__host__gr.html#ab2f8047e89786bb7a459fb9c6c3f03d5',1,'ARM_DRIVER_USBH']]], + ['pipemodify',['PipeModify',['../group__usbh__host__gr.html#a3efae6fe31a53f7ecd765ba6db99992e',1,'ARM_DRIVER_USBH']]], + ['pipereset',['PipeReset',['../group__usbh__host__gr.html#afe91e3e22bc401546d033cb9554550b7',1,'ARM_DRIVER_USBH']]], + ['pipetransfer',['PipeTransfer',['../group__usbh__host__gr.html#a495b069fadf5ba5b069bfdec6cda8b88',1,'ARM_DRIVER_USBH']]], + ['pipetransferabort',['PipeTransferAbort',['../group__usbh__host__gr.html#ab82fb8b02ff81156098b8210c0344f5e',1,'ARM_DRIVER_USBH']]], + ['pipetransfergetresult',['PipeTransferGetResult',['../group__usbh__host__gr.html#a18369bada042ff5557ff919056636a62',1,'ARM_DRIVER_USBH']]], + ['port_5fmask',['port_mask',['../group__usbh__host__gr.html#ac37c09b54483c2a1e41fa8a976721fc4',1,'ARM_USBH_CAPABILITIES::port_mask()'],['../group__usbh__hci__gr.html#ac37c09b54483c2a1e41fa8a976721fc4',1,'ARM_USBH_HCI_CAPABILITIES::port_mask()']]], + ['portgetstate',['PortGetState',['../group__usbh__host__gr.html#a84c391c0db065fa27b672eef6002905b',1,'ARM_DRIVER_USBH']]], + ['portreset',['PortReset',['../group__usbh__host__gr.html#a95125e80b07640860a7e16f510eca506',1,'ARM_DRIVER_USBH']]], + ['portresume',['PortResume',['../group__usbh__host__gr.html#a79126109256c1ccef901f22bc36ddc1d',1,'ARM_DRIVER_USBH']]], + ['portsuspend',['PortSuspend',['../group__usbh__host__gr.html#ab8be30d2d44a6447c8c085439ef117fb',1,'ARM_DRIVER_USBH']]], + ['portvbusonoff',['PortVbusOnOff',['../group__usbh__host__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f',1,'ARM_DRIVER_USBH::PortVbusOnOff()'],['../group__usbh__hci__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f',1,'ARM_DRIVER_USBH_HCI::PortVbusOnOff()']]], + ['powercontrol',['PowerControl',['../group__can__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_CAN::PowerControl()'],['../group__eth__mac__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_ETH_MAC::PowerControl()'],['../group__eth__phy__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_ETH_PHY::PowerControl()'],['../group__i2c__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_I2C::PowerControl()'],['../group__mci__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_MCI::PowerControl()'],['../group__nand__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_NAND::PowerControl()'],['../group__flash__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_FLASH::PowerControl()'],['../group__sai__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_SAI::PowerControl()'],['../group__spi__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_SPI::PowerControl()'],['../group__usart__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USART::PowerControl()'],['../group__usbd__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USBD::PowerControl()'],['../group__usbh__host__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USBH::PowerControl()'],['../group__usbh__hci__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USBH_HCI::PowerControl()']]], + ['precision_5ftimer',['precision_timer',['../group__eth__mac__interface__gr.html#a881a863974d32f95d7829f768ac47aa2',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['program_5funit',['program_unit',['../group__flash__interface__gr.html#a483c41066757e2865bf3a27a2a627a54',1,'ARM_FLASH_INFO']]], + ['programdata',['ProgramData',['../group__flash__interface__gr.html#a429fc193f1ec62858219ab8749c563ae',1,'ARM_DRIVER_FLASH']]], + ['protocol_5fac97',['protocol_ac97',['../group__sai__interface__gr.html#a5255f8d78a18ace0a959f604f9c065dd',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fi2s',['protocol_i2s',['../group__sai__interface__gr.html#a6fcb9d68c4999860ce162c0ef44c4c97',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fjustified',['protocol_justified',['../group__sai__interface__gr.html#a5363ec1fc0042620cb8aeeee4f98691b',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fpcm',['protocol_pcm',['../group__sai__interface__gr.html#a0b2c79bd96ecb47d801fc5389819314a',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fuser',['protocol_user',['../group__sai__interface__gr.html#a808b1f9e0abc3fa67945899cfc9fccc1',1,'ARM_SAI_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_72.html b/CMSIS/Documentation/Driver/html/search/all_72.html new file mode 100644 index 0000000..0ab18d6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_72.js b/CMSIS/Documentation/Driver/html/search/all_72.js new file mode 100644 index 0000000..8ac1d59 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_72.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['revision_20history_20of_20cmsis_2ddriver',['Revision History of CMSIS-Driver',['../driver_revision_history.html',1,'']]], + ['range_5ffiltering',['range_filtering',['../group__can__interface__gr.html#a96dcf869f4adc9cec686630082c7c60a',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['rb_5fmonitor',['rb_monitor',['../group__nand__interface__gr.html#a69f5e734ee4a9bb501718cf78a740c3e',1,'ARM_NAND_CAPABILITIES']]], + ['read_5fwait',['read_wait',['../group__mci__interface__gr.html#a5e38e4ee9cebcc99904e287adc8e6217',1,'ARM_MCI_CAPABILITIES']]], + ['readcd',['ReadCD',['../group__mci__interface__gr.html#aa4285dd6b0f9b8ca41b6710a478ad641',1,'ARM_DRIVER_MCI']]], + ['readdata',['ReadData',['../group__nand__interface__gr.html#aeba263544c0d63ec8c29e919232615cb',1,'ARM_DRIVER_NAND::ReadData()'],['../group__flash__interface__gr.html#adec45569a2f6f0d915a206f8f19107bd',1,'ARM_DRIVER_FLASH::ReadData()']]], + ['readframe',['ReadFrame',['../group__eth__mac__interface__gr.html#a466b724be2167ea7d9a14569062a8fa8',1,'ARM_DRIVER_ETH_MAC']]], + ['readsetuppacket',['ReadSetupPacket',['../group__usbd__interface__gr.html#ab5593bf9bb516cc7b36c6072fc55260f',1,'ARM_DRIVER_USBD']]], + ['readwp',['ReadWP',['../group__mci__interface__gr.html#aee6f8b38f83a51ac05cc4841524b708d',1,'ARM_DRIVER_MCI']]], + ['receive',['Receive',['../group__sai__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3',1,'ARM_DRIVER_SAI::Receive()'],['../group__spi__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3',1,'ARM_DRIVER_SPI::Receive()'],['../group__usart__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3',1,'ARM_DRIVER_USART::Receive()']]], + ['reentrant_5foperation',['reentrant_operation',['../group__can__interface__gr.html#ae0514834750c7452431717a881471e2b',1,'ARM_CAN_CAPABILITIES::reentrant_operation()'],['../group__nand__interface__gr.html#ae0514834750c7452431717a881471e2b',1,'ARM_NAND_CAPABILITIES::reentrant_operation()']]], + ['reference_20implementation',['Reference Implementation',['../_reference_implementation.html',1,'']]], + ['reserved',['reserved',['../group__nand__interface__gr.html#aa43c4c21b173ada1b6b7568956f0d650',1,'ARM_NAND_ECC_INFO']]], + ['restricted_5fmode',['restricted_mode',['../group__can__interface__gr.html#a93008ac105806db484e78e0582ca118c',1,'ARM_CAN_CAPABILITIES']]], + ['ri',['ri',['../group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb',1,'ARM_USART_MODEM_STATUS::ri()'],['../group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb',1,'ARM_USART_CAPABILITIES::ri()']]], + ['rst_5fn',['rst_n',['../group__mci__interface__gr.html#a2e8bd27f2c5c3093c4fec557890b97d4',1,'ARM_MCI_CAPABILITIES']]], + ['rtr',['rtr',['../group__can__interface__gr.html#a1f32fc9e5d3b33babf5905140e7a53af',1,'ARM_CAN_MSG_INFO']]], + ['rts',['rts',['../group__usart__interface__gr.html#afad044722f459552e9f0f602983659e9',1,'ARM_USART_CAPABILITIES']]], + ['rx',['rx',['../group__can__interface__gr.html#a895532773c3204e1538191f155c7bac8',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['rx_5fbreak',['rx_break',['../group__usart__interface__gr.html#aa5e3fa74f444688f9e727ffc1e988e5d',1,'ARM_USART_STATUS']]], + ['rx_5fbusy',['rx_busy',['../group__sai__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4',1,'ARM_SAI_STATUS::rx_busy()'],['../group__usart__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4',1,'ARM_USART_STATUS::rx_busy()']]], + ['rx_5ferror_5fcount',['rx_error_count',['../group__can__interface__gr.html#ab7e8b863b379b786ad1af935aa3ef2e8',1,'ARM_CAN_STATUS']]], + ['rx_5fframing_5ferror',['rx_framing_error',['../group__usart__interface__gr.html#af1d1cfd8b231843d5cc23e6a2b1ca8d0',1,'ARM_USART_STATUS']]], + ['rx_5foverflow',['rx_overflow',['../group__sai__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa',1,'ARM_SAI_STATUS::rx_overflow()'],['../group__usart__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa',1,'ARM_USART_STATUS::rx_overflow()']]], + ['rx_5fparity_5ferror',['rx_parity_error',['../group__usart__interface__gr.html#affb21b610e2d0d71727702441c238f4f',1,'ARM_USART_STATUS']]], + ['rx_5frtr_5ftx_5fdata',['rx_rtr_tx_data',['../group__can__interface__gr.html#a8a41139926d7c032247458d055071fda',1,'ARM_CAN_OBJ_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_73.html b/CMSIS/Documentation/Driver/html/search/all_73.html new file mode 100644 index 0000000..1ec8f17 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_73.js b/CMSIS/Documentation/Driver/html/search/all_73.js new file mode 100644 index 0000000..08a66c4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_73.js @@ -0,0 +1,65 @@ +var searchData= +[ + ['status_20error_20codes',['Status Error Codes',['../group__can__status__code__ctrls.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__execution__status.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__nand__execution__status.html',1,'']]], + ['sai_20bit_20order',['SAI Bit Order',['../group__sai__bit__order__control.html',1,'']]], + ['sai_20clock_20polarity',['SAI Clock Polarity',['../group__sai__clock__pol__control.html',1,'']]], + ['sai_20companding',['SAI Companding',['../group__sai__companding__control.html',1,'']]], + ['sai_20configuration',['SAI Configuration',['../group__sai__configure__control.html',1,'']]], + ['sai_20control_20codes',['SAI Control Codes',['../group__sai__control.html',1,'']]], + ['sai_20controls',['SAI Controls',['../group__sai__controls.html',1,'']]], + ['sai_20data_20size',['SAI Data Size',['../group__sai__data__bits__control.html',1,'']]], + ['sai_20events',['SAI Events',['../group___s_a_i__events.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__sai__execution__status.html',1,'']]], + ['sai_20frame',['SAI Frame',['../group__sai__frame__control.html',1,'']]], + ['sai_20interface',['SAI Interface',['../group__sai__interface__gr.html',1,'']]], + ['sai_20master_20clock_20pin',['SAI Master Clock Pin',['../group__sai__mclk__pin__control.html',1,'']]], + ['sai_20master_20clock_20prescaler',['SAI Master Clock Prescaler',['../group__sai__mclk__pres__control.html',1,'']]], + ['sai_20mode',['SAI Mode',['../group__sai__mode__control.html',1,'']]], + ['sai_20mono_20mode',['SAI Mono Mode',['../group__sai__mono__control.html',1,'']]], + ['sai_20protocol',['SAI Protocol',['../group__sai__protocol__control.html',1,'']]], + ['sai_20slot',['SAI Slot',['../group__sai__slot__control.html',1,'']]], + ['sai_20synchronization',['SAI Synchronization',['../group__sai__sync__control.html',1,'']]], + ['sdio_5finterrupt',['sdio_interrupt',['../group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825',1,'ARM_MCI_STATUS::sdio_interrupt()'],['../group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825',1,'ARM_MCI_CAPABILITIES::sdio_interrupt()']]], + ['sdr_5ftiming_5fmode',['sdr_timing_mode',['../group__nand__interface__gr.html#a21036f2047273d90c0af0e97031df5a9',1,'ARM_NAND_CAPABILITIES']]], + ['sec',['sec',['../group__eth__mac__interface__gr.html#aaf5f5a3fa5d596a9136b4331f2b54bfc',1,'ARM_ETH_MAC_TIME']]], + ['sector_5fcount',['sector_count',['../group__flash__interface__gr.html#a50947f9a42bbaa2d68d6e5079150d7bf',1,'ARM_FLASH_INFO']]], + ['sector_5finfo',['sector_info',['../group__flash__interface__gr.html#a8dfb9d5160358e45293bba527762238d',1,'ARM_FLASH_INFO']]], + ['sector_5fsize',['sector_size',['../group__flash__interface__gr.html#a7d37def484362c6e97a2d75144080b1d',1,'ARM_FLASH_INFO']]], + ['send',['Send',['../group__sai__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922',1,'ARM_DRIVER_SAI::Send()'],['../group__spi__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922',1,'ARM_DRIVER_SPI::Send()'],['../group__usart__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922',1,'ARM_DRIVER_USART::Send()']]], + ['sendaddress',['SendAddress',['../group__nand__interface__gr.html#a5a43001ef1ca6c6d73f03e366bf41cb5',1,'ARM_DRIVER_NAND']]], + ['sendcommand',['SendCommand',['../group__mci__interface__gr.html#affefb5c1d352082933c2fb0620b37212',1,'ARM_DRIVER_MCI::SendCommand()'],['../group__nand__interface__gr.html#a3dbd36d86718980665ce2e3a1ba672ca',1,'ARM_DRIVER_NAND::SendCommand()']]], + ['sendframe',['SendFrame',['../group__eth__mac__interface__gr.html#ac095aea379f23e30a0e51b1f3518ad37',1,'ARM_DRIVER_ETH_MAC']]], + ['sequence_5foperation',['sequence_operation',['../group__nand__interface__gr.html#afa4b798731b1154878c26dda3f090acf',1,'ARM_NAND_CAPABILITIES']]], + ['setaddressfilter',['SetAddressFilter',['../group__eth__mac__interface__gr.html#a45b879a6df608f582d1866daff715798',1,'ARM_DRIVER_ETH_MAC']]], + ['setbitrate',['SetBitrate',['../group__can__interface__gr.html#a360a314665607fc2d866c24e1608fd06',1,'ARM_DRIVER_CAN']]], + ['setinterface',['SetInterface',['../group__eth__phy__interface__gr.html#a7dfc7cf346c80e7fdb2fe4cea2c61161',1,'ARM_DRIVER_ETH_PHY']]], + ['setmacaddress',['SetMacAddress',['../group__eth__mac__interface__gr.html#ac640f929dc4d5bde3e4282c75b25c00d',1,'ARM_DRIVER_ETH_MAC']]], + ['setmode',['SetMode',['../group__can__interface__gr.html#a0fa2edbde052011604addec816782b4e',1,'ARM_DRIVER_CAN::SetMode()'],['../group__eth__phy__interface__gr.html#ae6686344f4d6afa0881d1e545c898a3d',1,'ARM_DRIVER_ETH_PHY::SetMode()']]], + ['setmodemcontrol',['SetModemControl',['../group__usart__interface__gr.html#af6703d4078818df27ab9f8a7a8ad7b7b',1,'ARM_DRIVER_USART']]], + ['setuptransfer',['SetupTransfer',['../group__mci__interface__gr.html#adc63bab660e8304d78faa1ac429e792b',1,'ARM_DRIVER_MCI']]], + ['simplex',['simplex',['../group__spi__interface__gr.html#af244e2c2facf6414e3886495ee6b40bc',1,'ARM_SPI_CAPABILITIES']]], + ['single_5fwire',['single_wire',['../group__usart__interface__gr.html#ad1928b61021dd9ff689a3ccf9b8966a8',1,'ARM_USART_CAPABILITIES']]], + ['slavereceive',['SlaveReceive',['../group__i2c__interface__gr.html#a12d2689d6e93985e64b9561a8e4e917b',1,'ARM_DRIVER_I2C']]], + ['slavetransmit',['SlaveTransmit',['../group__i2c__interface__gr.html#ae9e3b81b352d4564fd2337fdf0e5488c',1,'ARM_DRIVER_I2C']]], + ['smart_5fcard',['smart_card',['../group__usart__interface__gr.html#aa78e1ee1726d1db2cfa83fd7b5acc8bd',1,'ARM_USART_CAPABILITIES']]], + ['smart_5fcard_5fclock',['smart_card_clock',['../group__usart__interface__gr.html#a7b3c14ea1b5e9ba0a37ebc05fcfd51a6',1,'ARM_USART_CAPABILITIES']]], + ['speed',['speed',['../group__eth__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5',1,'ARM_ETH_LINK_INFO::speed()'],['../group__usbd__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5',1,'ARM_USBD_STATE::speed()'],['../group__usbh__host__gr.html#a220859a8b5da0232739a11cbe7f79fc5',1,'ARM_USBH_PORT_STATE::speed()']]], + ['spi_20bit_20order',['SPI Bit Order',['../group__spi__bit__order__ctrls.html',1,'']]], + ['spi_20control_20codes',['SPI Control Codes',['../group___s_p_i__control.html',1,'']]], + ['spi_20data_20bits',['SPI Data Bits',['../group__spi__data__bits__ctrls.html',1,'']]], + ['spi_20events',['SPI Events',['../group___s_p_i__events.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__spi__execution__status.html',1,'']]], + ['spi_20frame_20format',['SPI Frame Format',['../group__spi__frame__format__ctrls.html',1,'']]], + ['spi_20interface',['SPI Interface',['../group__spi__interface__gr.html',1,'']]], + ['spi_20miscellaneous_20controls',['SPI Miscellaneous Controls',['../group__spi__misc__ctrls.html',1,'']]], + ['spi_20mode_20controls',['SPI Mode Controls',['../group__spi__mode__ctrls.html',1,'']]], + ['spi_20slave_20select_20mode',['SPI Slave Select Mode',['../group__spi__slave__select__mode__ctrls.html',1,'']]], + ['start',['start',['../group__flash__interface__gr.html#a61eb63d26b2fa6c2971603ceccffb14b',1,'ARM_FLASH_SECTOR']]], + ['suspend_5fresume',['suspend_resume',['../group__mci__interface__gr.html#abb03f0187e4658f417b5a24cac33eed9',1,'ARM_MCI_CAPABILITIES']]], + ['synchronous',['synchronous',['../group__sai__interface__gr.html#a9fa4f850b8ce2be2c7ffa2e3ec70ae20',1,'ARM_SAI_CAPABILITIES']]], + ['synchronous_5fmaster',['synchronous_master',['../group__usart__interface__gr.html#afb385bfd9fb2d714bb58aa7d8d9d7d51',1,'ARM_USART_CAPABILITIES']]], + ['synchronous_5fslave',['synchronous_slave',['../group__usart__interface__gr.html#a37dcd87df8762e2bc9af9fea368b1537',1,'ARM_USART_CAPABILITIES']]], + ['status_20error_20codes',['Status Error Codes',['../group__usart__execution__status.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_74.html b/CMSIS/Documentation/Driver/html/search/all_74.html new file mode 100644 index 0000000..fdc6589 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_74.js b/CMSIS/Documentation/Driver/html/search/all_74.js new file mode 100644 index 0000000..c58a26f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_74.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['theory_20of_20operation',['Theory of Operation',['../_theory_operation.html',1,'']]], + ['ti_5fssi',['ti_ssi',['../group__spi__interface__gr.html#a8053c540e5d531b692224bdc2463f36a',1,'ARM_SPI_CAPABILITIES']]], + ['transfer',['Transfer',['../group__spi__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7',1,'ARM_DRIVER_SPI::Transfer()'],['../group__usart__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7',1,'ARM_DRIVER_USART::Transfer()']]], + ['transfer_5factive',['transfer_active',['../group__mci__interface__gr.html#a2655d3422b720097b091a28e8bbcea8f',1,'ARM_MCI_STATUS']]], + ['transfer_5ferror',['transfer_error',['../group__mci__interface__gr.html#a21d4bc1a03e161bd33693619039a6afa',1,'ARM_MCI_STATUS']]], + ['transfer_5ftimeout',['transfer_timeout',['../group__mci__interface__gr.html#a598ae4a196316d6dcb97d07fd337ecdd',1,'ARM_MCI_STATUS']]], + ['tx',['tx',['../group__can__interface__gr.html#a9706173b2ed538efeb5ee4a952e2272f',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['tx_5fbusy',['tx_busy',['../group__sai__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b',1,'ARM_SAI_STATUS::tx_busy()'],['../group__usart__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b',1,'ARM_USART_STATUS::tx_busy()']]], + ['tx_5ferror_5fcount',['tx_error_count',['../group__can__interface__gr.html#a8941505f6f3ebd69825c4382184c580f',1,'ARM_CAN_STATUS']]], + ['tx_5frtr_5frx_5fdata',['tx_rtr_rx_data',['../group__can__interface__gr.html#a1debac19545140bdfe3c5fa8d53f1863',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['tx_5funderflow',['tx_underflow',['../group__sai__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72',1,'ARM_SAI_STATUS::tx_underflow()'],['../group__usart__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72',1,'ARM_USART_STATUS::tx_underflow()']]], + ['type',['type',['../group__nand__interface__gr.html#ad44b615021ed3ccb734fcaf583ef4a03',1,'ARM_NAND_ECC_INFO']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_75.html b/CMSIS/Documentation/Driver/html/search/all_75.html new file mode 100644 index 0000000..ab8455e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_75.js b/CMSIS/Documentation/Driver/html/search/all_75.js new file mode 100644 index 0000000..e709eea --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_75.js @@ -0,0 +1,36 @@ +var searchData= +[ + ['uhs_5fddr50',['uhs_ddr50',['../group__mci__interface__gr.html#a1ee73c19020d5f1bedf7c013d0e5f730',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fdriver_5ftype_5fa',['uhs_driver_type_a',['../group__mci__interface__gr.html#afe5de4fdc6657aa19fa87577a8d460e5',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fdriver_5ftype_5fc',['uhs_driver_type_c',['../group__mci__interface__gr.html#a3c3df9641e7216dd20d3bc395dc4948f',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fdriver_5ftype_5fd',['uhs_driver_type_d',['../group__mci__interface__gr.html#a639bebbcb9a3a743f4f232fec82e2bfc',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fsdr104',['uhs_sdr104',['../group__mci__interface__gr.html#ae07ceef1800252495a79f225142740e7',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fsdr50',['uhs_sdr50',['../group__mci__interface__gr.html#a5c3dcb2f8aa6f65408d9a6741abb7b3e',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fsignaling',['uhs_signaling',['../group__mci__interface__gr.html#a084188480d589cdc8d3e164b9f41bea9',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5ftuning',['uhs_tuning',['../group__mci__interface__gr.html#a617bf7fb73b49a20398b90098ecc3ec0',1,'ARM_MCI_CAPABILITIES']]], + ['uninitialize',['Uninitialize',['../group__can__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_CAN::Uninitialize()'],['../group__eth__mac__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_ETH_MAC::Uninitialize()'],['../group__eth__phy__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_ETH_PHY::Uninitialize()'],['../group__i2c__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_I2C::Uninitialize()'],['../group__mci__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_MCI::Uninitialize()'],['../group__nand__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_NAND::Uninitialize()'],['../group__flash__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_FLASH::Uninitialize()'],['../group__sai__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_SAI::Uninitialize()'],['../group__spi__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_SPI::Uninitialize()'],['../group__usart__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USART::Uninitialize()'],['../group__usbd__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USBD::Uninitialize()'],['../group__usbh__host__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USBH::Uninitialize()'],['../group__usbh__hci__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USBH_HCI::Uninitialize()']]], + ['unit_5fstate',['unit_state',['../group__can__interface__gr.html#a96ec94acab56690b3801e3c5fbd09fa2',1,'ARM_CAN_STATUS']]], + ['usart_20clock_20phase',['USART Clock Phase',['../group__usart__clock__phase.html',1,'']]], + ['usart_20clock_20polarity',['USART Clock Polarity',['../group__usart__clock__polarity.html',1,'']]], + ['usart_20control_20codes',['USART Control Codes',['../group___u_s_a_r_t__control.html',1,'']]], + ['usart_20data_20bits',['USART Data Bits',['../group__usart__data__bits.html',1,'']]], + ['usart_20events',['USART Events',['../group___u_s_a_r_t__events.html',1,'']]], + ['usart_20flow_20control',['USART Flow Control',['../group__usart__flow__control.html',1,'']]], + ['usart_20interface',['USART Interface',['../group__usart__interface__gr.html',1,'']]], + ['usart_20miscellaneous_20control',['USART Miscellaneous Control',['../group__usart__misc__control.html',1,'']]], + ['usart_20mode_20control',['USART Mode Control',['../group__usart__mode__control.html',1,'']]], + ['usart_20parity_20bit',['USART Parity Bit',['../group__usart__parity__bit.html',1,'']]], + ['usart_20stop_20bits',['USART Stop Bits',['../group__usart__stop__bits.html',1,'']]], + ['usb_20endpoint_20type',['USB Endpoint Type',['../group___u_s_b__endpoint__type.html',1,'']]], + ['usb_20interface',['USB Interface',['../group__usb__interface__gr.html',1,'']]], + ['usb_20speed',['USB Speed',['../group___u_s_b__speed.html',1,'']]], + ['usbd_20device_20events',['USBD Device Events',['../group___u_s_b_d__dev__events.html',1,'']]], + ['usbd_20endpoint_20events',['USBD Endpoint Events',['../group___u_s_b_d__ep__events.html',1,'']]], + ['usb_20device_20interface',['USB Device Interface',['../group__usbd__interface__gr.html',1,'']]], + ['usb_20ohci_2fehci',['USB OHCI/EHCI',['../group__usbh__hci__gr.html',1,'']]], + ['usb_20host',['USB Host',['../group__usbh__host__gr.html',1,'']]], + ['usb_20host_20interface',['USB Host Interface',['../group__usbh__interface__gr.html',1,'']]], + ['usbh_20packet_20information',['USBH Packet Information',['../group___u_s_b_h__packets.html',1,'']]], + ['usbh_20pipe_20events',['USBH Pipe Events',['../group___u_s_b_h__pipe__events.html',1,'']]], + ['usbh_20port_20events',['USBH Port Events',['../group___u_s_b_h__port__events.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_76.html b/CMSIS/Documentation/Driver/html/search/all_76.html new file mode 100644 index 0000000..0ff5edd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_76.js b/CMSIS/Documentation/Driver/html/search/all_76.js new file mode 100644 index 0000000..04f4fc2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_76.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['vbus',['vbus',['../group__usbd__interface__gr.html#aa961d5fb2bd3d2960578f1ac3b903070',1,'ARM_USBD_STATE']]], + ['vbus_5fdetection',['vbus_detection',['../group__usbd__interface__gr.html#a6673fc1aa13f62122ecf51e52a605c6e',1,'ARM_USBD_CAPABILITIES']]], + ['vcc',['vcc',['../group__nand__interface__gr.html#a35cfa22b2140b109fe24b97c42d5a5ed',1,'ARM_NAND_CAPABILITIES']]], + ['vcc_5f1v8',['vcc_1v8',['../group__nand__interface__gr.html#a0e7d3b9258d468492b22de55d855a06e',1,'ARM_NAND_CAPABILITIES']]], + ['vccq',['vccq',['../group__mci__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa',1,'ARM_MCI_CAPABILITIES::vccq()'],['../group__nand__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa',1,'ARM_NAND_CAPABILITIES::vccq()']]], + ['vccq_5f1v2',['vccq_1v2',['../group__mci__interface__gr.html#af4f95215005e38700ef527714932b361',1,'ARM_MCI_CAPABILITIES']]], + ['vccq_5f1v8',['vccq_1v8',['../group__mci__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d',1,'ARM_MCI_CAPABILITIES::vccq_1v8()'],['../group__nand__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d',1,'ARM_NAND_CAPABILITIES::vccq_1v8()']]], + ['vdd',['vdd',['../group__mci__interface__gr.html#a414baec222a72be862e262f02b821dce',1,'ARM_MCI_CAPABILITIES']]], + ['vdd_5f1v8',['vdd_1v8',['../group__mci__interface__gr.html#abeb0330f882ebed8cabde782652233dd',1,'ARM_MCI_CAPABILITIES']]], + ['vpp',['vpp',['../group__nand__interface__gr.html#a75b97f7c917bba90b2f5c747d6857d23',1,'ARM_NAND_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/all_77.html b/CMSIS/Documentation/Driver/html/search/all_77.html new file mode 100644 index 0000000..73323d3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/all_77.js b/CMSIS/Documentation/Driver/html/search/all_77.js new file mode 100644 index 0000000..32003e2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/all_77.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['wp',['wp',['../group__nand__interface__gr.html#afe7f5b149b8d92859398315b1ad31ddc',1,'ARM_NAND_CAPABILITIES']]], + ['wp_5fstate',['wp_state',['../group__mci__interface__gr.html#a02df0162d3a653c36158a7b6a76f6175',1,'ARM_MCI_CAPABILITIES']]], + ['writedata',['WriteData',['../group__nand__interface__gr.html#a78393d355e539c6f845b33417da60a7e',1,'ARM_DRIVER_NAND']]], + ['writeprotect',['WriteProtect',['../group__nand__interface__gr.html#add6fa19a729c42303581214bc9dec819',1,'ARM_DRIVER_NAND']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/classes_61.html b/CMSIS/Documentation/Driver/html/search/classes_61.html new file mode 100644 index 0000000..85e5d72 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/classes_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/classes_61.js b/CMSIS/Documentation/Driver/html/search/classes_61.js new file mode 100644 index 0000000..c9ac63f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/classes_61.js @@ -0,0 +1,48 @@ +var searchData= +[ + ['arm_5fcan_5fcapabilities',['ARM_CAN_CAPABILITIES',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fcan_5fmsg_5finfo',['ARM_CAN_MSG_INFO',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___m_s_g___i_n_f_o',1,'']]], + ['arm_5fcan_5fobj_5fcapabilities',['ARM_CAN_OBJ_CAPABILITIES',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___o_b_j___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fcan_5fstatus',['ARM_CAN_STATUS',['../group__can__interface__gr.html#struct_a_r_m___c_a_n___s_t_a_t_u_s',1,'']]], + ['arm_5fdriver_5fcan',['ARM_DRIVER_CAN',['../group__can__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___c_a_n',1,'']]], + ['arm_5fdriver_5feth_5fmac',['ARM_DRIVER_ETH_MAC',['../group__eth__mac__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___m_a_c',1,'']]], + ['arm_5fdriver_5feth_5fphy',['ARM_DRIVER_ETH_PHY',['../group__eth__phy__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___e_t_h___p_h_y',1,'']]], + ['arm_5fdriver_5fflash',['ARM_DRIVER_FLASH',['../group__flash__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___f_l_a_s_h',1,'']]], + ['arm_5fdriver_5fi2c',['ARM_DRIVER_I2C',['../group__i2c__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___i2_c',1,'']]], + ['arm_5fdriver_5fmci',['ARM_DRIVER_MCI',['../group__mci__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___m_c_i',1,'']]], + ['arm_5fdriver_5fnand',['ARM_DRIVER_NAND',['../group__nand__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___n_a_n_d',1,'']]], + ['arm_5fdriver_5fsai',['ARM_DRIVER_SAI',['../group__sai__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_a_i',1,'']]], + ['arm_5fdriver_5fspi',['ARM_DRIVER_SPI',['../group__spi__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___s_p_i',1,'']]], + ['arm_5fdriver_5fusart',['ARM_DRIVER_USART',['../group__usart__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_a_r_t',1,'']]], + ['arm_5fdriver_5fusbd',['ARM_DRIVER_USBD',['../group__usbd__interface__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_d',1,'']]], + ['arm_5fdriver_5fusbh',['ARM_DRIVER_USBH',['../group__usbh__host__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h',1,'']]], + ['arm_5fdriver_5fusbh_5fhci',['ARM_DRIVER_USBH_HCI',['../group__usbh__hci__gr.html#struct_a_r_m___d_r_i_v_e_r___u_s_b_h___h_c_i',1,'']]], + ['arm_5fdriver_5fversion',['ARM_DRIVER_VERSION',['../group__common__drv__gr.html#struct_a_r_m___d_r_i_v_e_r___v_e_r_s_i_o_n',1,'']]], + ['arm_5feth_5flink_5finfo',['ARM_ETH_LINK_INFO',['../group__eth__interface__gr.html#struct_a_r_m___e_t_h___l_i_n_k___i_n_f_o',1,'']]], + ['arm_5feth_5fmac_5faddr',['ARM_ETH_MAC_ADDR',['../group__eth__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___a_d_d_r',1,'']]], + ['arm_5feth_5fmac_5fcapabilities',['ARM_ETH_MAC_CAPABILITIES',['../group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5feth_5fmac_5ftime',['ARM_ETH_MAC_TIME',['../group__eth__mac__interface__gr.html#struct_a_r_m___e_t_h___m_a_c___t_i_m_e',1,'']]], + ['arm_5fflash_5fcapabilities',['ARM_FLASH_CAPABILITIES',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fflash_5finfo',['ARM_FLASH_INFO',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___i_n_f_o',1,'']]], + ['arm_5fflash_5fsector',['ARM_FLASH_SECTOR',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_e_c_t_o_r',1,'']]], + ['arm_5fflash_5fstatus',['ARM_FLASH_STATUS',['../group__flash__interface__gr.html#struct_a_r_m___f_l_a_s_h___s_t_a_t_u_s',1,'']]], + ['arm_5fi2c_5fcapabilities',['ARM_I2C_CAPABILITIES',['../group__i2c__interface__gr.html#struct_a_r_m___i2_c___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fi2c_5fstatus',['ARM_I2C_STATUS',['../group__i2c__interface__gr.html#struct_a_r_m___i2_c___s_t_a_t_u_s',1,'']]], + ['arm_5fmci_5fcapabilities',['ARM_MCI_CAPABILITIES',['../group__mci__interface__gr.html#struct_a_r_m___m_c_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fmci_5fstatus',['ARM_MCI_STATUS',['../group__mci__interface__gr.html#struct_a_r_m___m_c_i___s_t_a_t_u_s',1,'']]], + ['arm_5fnand_5fcapabilities',['ARM_NAND_CAPABILITIES',['../group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fnand_5fecc_5finfo',['ARM_NAND_ECC_INFO',['../group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___e_c_c___i_n_f_o',1,'']]], + ['arm_5fnand_5fstatus',['ARM_NAND_STATUS',['../group__nand__interface__gr.html#struct_a_r_m___n_a_n_d___s_t_a_t_u_s',1,'']]], + ['arm_5fsai_5fcapabilities',['ARM_SAI_CAPABILITIES',['../group__sai__interface__gr.html#struct_a_r_m___s_a_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fsai_5fstatus',['ARM_SAI_STATUS',['../group__sai__interface__gr.html#struct_a_r_m___s_a_i___s_t_a_t_u_s',1,'']]], + ['arm_5fspi_5fcapabilities',['ARM_SPI_CAPABILITIES',['../group__spi__interface__gr.html#struct_a_r_m___s_p_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fspi_5fstatus',['ARM_SPI_STATUS',['../group__spi__interface__gr.html#struct_a_r_m___s_p_i___s_t_a_t_u_s',1,'']]], + ['arm_5fusart_5fcapabilities',['ARM_USART_CAPABILITIES',['../group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusart_5fmodem_5fstatus',['ARM_USART_MODEM_STATUS',['../group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___m_o_d_e_m___s_t_a_t_u_s',1,'']]], + ['arm_5fusart_5fstatus',['ARM_USART_STATUS',['../group__usart__interface__gr.html#struct_a_r_m___u_s_a_r_t___s_t_a_t_u_s',1,'']]], + ['arm_5fusbd_5fcapabilities',['ARM_USBD_CAPABILITIES',['../group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusbd_5fstate',['ARM_USBD_STATE',['../group__usbd__interface__gr.html#struct_a_r_m___u_s_b_d___s_t_a_t_e',1,'']]], + ['arm_5fusbh_5fcapabilities',['ARM_USBH_CAPABILITIES',['../group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusbh_5fhci_5fcapabilities',['ARM_USBH_HCI_CAPABILITIES',['../group__usbh__hci__gr.html#struct_a_r_m___u_s_b_h___h_c_i___c_a_p_a_b_i_l_i_t_i_e_s',1,'']]], + ['arm_5fusbh_5fport_5fstate',['ARM_USBH_PORT_STATE',['../group__usbh__host__gr.html#struct_a_r_m___u_s_b_h___p_o_r_t___s_t_a_t_e',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/close.png b/CMSIS/Documentation/Driver/html/search/close.png new file mode 100644 index 0000000..9342d3d Binary files /dev/null and b/CMSIS/Documentation/Driver/html/search/close.png differ diff --git a/CMSIS/Documentation/Driver/html/search/defines_5f.html b/CMSIS/Documentation/Driver/html/search/defines_5f.html new file mode 100644 index 0000000..548a824 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/defines_5f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/defines_5f.js b/CMSIS/Documentation/Driver/html/search/defines_5f.js new file mode 100644 index 0000000..ff3fa22 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/defines_5f.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['_5farm_5fdriver_5feth_5fmac_5f',['_ARM_Driver_ETH_MAC_',['../_driver___e_t_h___m_a_c_8h.html#ade64adbfd1c8076b7acf0b3994fb4df2',1,'Driver_ETH_MAC.h']]], + ['_5farm_5fdriver_5feth_5fphy_5f',['_ARM_Driver_ETH_PHY_',['../_driver___e_t_h___p_h_y_8h.html#a261d0c3527c5880cbce44c92c5779a95',1,'Driver_ETH_PHY.h']]], + ['_5farm_5fdriver_5fflash_5f',['_ARM_Driver_Flash_',['../_driver___flash_8h.html#a0955bb54d18c78992e20395e32c537e6',1,'Driver_Flash.h']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/defines_61.html b/CMSIS/Documentation/Driver/html/search/defines_61.html new file mode 100644 index 0000000..039f0b7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/defines_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/defines_61.js b/CMSIS/Documentation/Driver/html/search/defines_61.js new file mode 100644 index 0000000..8de1f0e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/defines_61.js @@ -0,0 +1,196 @@ +var searchData= +[ + ['arm_5fcan_5fapi_5fversion',['ARM_CAN_API_VERSION',['../_driver___c_a_n_8h.html#a88cba309175477a369375827c6e67d16',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg1_5fmsk',['ARM_CAN_BIT_PHASE_SEG1_Msk',['../_driver___c_a_n_8h.html#a4a661aa69c2825d9118a97695ba39546',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg1_5fpos',['ARM_CAN_BIT_PHASE_SEG1_Pos',['../_driver___c_a_n_8h.html#a23658b0cb98b00c900857aef64926922',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg2_5fmsk',['ARM_CAN_BIT_PHASE_SEG2_Msk',['../_driver___c_a_n_8h.html#ae4df531026a911d53df401a4b9eec89c',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fphase_5fseg2_5fpos',['ARM_CAN_BIT_PHASE_SEG2_Pos',['../_driver___c_a_n_8h.html#acd52b5921a5ab0ad0b251957a93a5993',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fprop_5fseg_5fmsk',['ARM_CAN_BIT_PROP_SEG_Msk',['../_driver___c_a_n_8h.html#a018bef85dc771e75a5d0f017393af01a',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fprop_5fseg_5fpos',['ARM_CAN_BIT_PROP_SEG_Pos',['../_driver___c_a_n_8h.html#a71e16a70efe5e4b21e5622d2b0cb7889',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fsjw_5fmsk',['ARM_CAN_BIT_SJW_Msk',['../_driver___c_a_n_8h.html#ac3af13704609a6b14655f00b3d7ac419',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbit_5fsjw_5fpos',['ARM_CAN_BIT_SJW_Pos',['../_driver___c_a_n_8h.html#ac233859cfb244895fa47c02d8df02ee8',1,'Driver_CAN.h']]], + ['arm_5fcan_5fcontrol_5fmsk',['ARM_CAN_CONTROL_Msk',['../_driver___c_a_n_8h.html#a0b9ca7f824e6931dd0945673c4d29d14',1,'Driver_CAN.h']]], + ['arm_5fcan_5fcontrol_5fpos',['ARM_CAN_CONTROL_Pos',['../_driver___c_a_n_8h.html#aba948867397ee2081d82f5c6db5edd4b',1,'Driver_CAN.h']]], + ['arm_5fcan_5fid_5fide_5fmsk',['ARM_CAN_ID_IDE_Msk',['../_driver___c_a_n_8h.html#abd2dde58dd280c29aaba971dcc11ce66',1,'Driver_CAN.h']]], + ['arm_5fcan_5fid_5fide_5fpos',['ARM_CAN_ID_IDE_Pos',['../_driver___c_a_n_8h.html#a874d634951197372eaa0c54b0b5c726f',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbit_5fphase_5fseg1',['ARM_CAN_INVALID_BIT_PHASE_SEG1',['../_driver___c_a_n_8h.html#aabdfe8d6ad5be07ad471dc00193afb48',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbit_5fphase_5fseg2',['ARM_CAN_INVALID_BIT_PHASE_SEG2',['../_driver___c_a_n_8h.html#a71cfbc4a4f8a37aafaeb6cf826d32c27',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbit_5fprop_5fseg',['ARM_CAN_INVALID_BIT_PROP_SEG',['../_driver___c_a_n_8h.html#a2911dd8c4017147690f274fc4ef88f44',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbit_5fsjw',['ARM_CAN_INVALID_BIT_SJW',['../_driver___c_a_n_8h.html#ad1c5957b266c8dcaf687288a2465d1b9',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbitrate',['ARM_CAN_INVALID_BITRATE',['../_driver___c_a_n_8h.html#a90b9d9323a6049fb4fcd1efe7c892294',1,'Driver_CAN.h']]], + ['arm_5fcan_5finvalid_5fbitrate_5fselect',['ARM_CAN_INVALID_BITRATE_SELECT',['../_driver___c_a_n_8h.html#a09e23c4f9b9b8c68bd8687b43757110d',1,'Driver_CAN.h']]], + ['arm_5fcan_5fno_5fmessage_5favailable',['ARM_CAN_NO_MESSAGE_AVAILABLE',['../_driver___c_a_n_8h.html#aab7a77388b250367f7e38844485bc513',1,'Driver_CAN.h']]], + ['arm_5fdriver_5feth_5fmac_5f',['ARM_Driver_ETH_MAC_',['../_driver___e_t_h___m_a_c_8h.html#abc6ea74fb57580e41b7321fb255da6d0',1,'Driver_ETH_MAC.h']]], + ['arm_5fdriver_5feth_5fphy_5f',['ARM_Driver_ETH_PHY_',['../_driver___e_t_h___p_h_y_8h.html#a4d6d9b4a50776a881488782b9576af59',1,'Driver_ETH_PHY.h']]], + ['arm_5fdriver_5fflash_5f',['ARM_Driver_Flash_',['../_driver___flash_8h.html#afda179843b93526222e15d61f226ac8f',1,'Driver_Flash.h']]], + ['arm_5fdriver_5fversion_5fmajor_5fminor',['ARM_DRIVER_VERSION_MAJOR_MINOR',['../_driver___common_8h.html#a43c7ca1eb0786d818624246c09932a74',1,'Driver_Common.h']]], + ['arm_5feth_5fduplex_5ffull',['ARM_ETH_DUPLEX_FULL',['../_driver___e_t_h_8h.html#a7848c83cd1fd6b2645c17919c2990354',1,'Driver_ETH.h']]], + ['arm_5feth_5fduplex_5fhalf',['ARM_ETH_DUPLEX_HALF',['../_driver___e_t_h_8h.html#acb15afc2bfe61c56049b7279d6eae8fe',1,'Driver_ETH.h']]], + ['arm_5feth_5fmac_5fapi_5fversion',['ARM_ETH_MAC_API_VERSION',['../_driver___e_t_h___m_a_c_8h.html#a89ade7fd7f91b1b6e21883a8f823a8cc',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fduplex_5fmsk',['ARM_ETH_MAC_DUPLEX_Msk',['../_driver___e_t_h___m_a_c_8h.html#a9249afa842bb7e1088a7729542f91e22',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fduplex_5fpos',['ARM_ETH_MAC_DUPLEX_Pos',['../_driver___e_t_h___m_a_c_8h.html#a245688f6265e8d017435dc6d2c233b87',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fspeed_5fmsk',['ARM_ETH_MAC_SPEED_Msk',['../_driver___e_t_h___m_a_c_8h.html#a7f3cf200085c3387a5572102af2ee2da',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fmac_5fspeed_5fpos',['ARM_ETH_MAC_SPEED_Pos',['../_driver___e_t_h___m_a_c_8h.html#ad7fd5c5f4d4f39a56466c2d34cb699ef',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fphy_5fapi_5fversion',['ARM_ETH_PHY_API_VERSION',['../_driver___e_t_h___p_h_y_8h.html#abb996b4afe22e0600aff5623076d0505',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fduplex_5fmsk',['ARM_ETH_PHY_DUPLEX_Msk',['../_driver___e_t_h___p_h_y_8h.html#a832fd4424dc9aaafac8034457396c259',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fduplex_5fpos',['ARM_ETH_PHY_DUPLEX_Pos',['../_driver___e_t_h___p_h_y_8h.html#aebafadc356d8e58407db156a5dac743f',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fspeed_5fmsk',['ARM_ETH_PHY_SPEED_Msk',['../_driver___e_t_h___p_h_y_8h.html#a8802cb0c4caed22c70d92f656e0811f5',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fspeed_5fpos',['ARM_ETH_PHY_SPEED_Pos',['../_driver___e_t_h___p_h_y_8h.html#a13700fab82aa60a3357614faa0619e97',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fspeed_5f100m',['ARM_ETH_SPEED_100M',['../_driver___e_t_h_8h.html#a3bddfc4cf5645f8568d9cb6621fd606a',1,'Driver_ETH.h']]], + ['arm_5feth_5fspeed_5f10m',['ARM_ETH_SPEED_10M',['../_driver___e_t_h_8h.html#a1f834c4c785d7f69b1eaca011ee298ec',1,'Driver_ETH.h']]], + ['arm_5feth_5fspeed_5f1g',['ARM_ETH_SPEED_1G',['../_driver___e_t_h_8h.html#a218f470079b7c04de6776d467a53772a',1,'Driver_ETH.h']]], + ['arm_5fflash_5fapi_5fversion',['ARM_FLASH_API_VERSION',['../_driver___flash_8h.html#a16e58dce04f3f65d5183c973c9189fa4',1,'Driver_Flash.h']]], + ['arm_5fflash_5fsector_5finfo',['ARM_FLASH_SECTOR_INFO',['../_driver___flash_8h.html#aaeb2830d80f8aca0eaf72e3718537a60',1,'Driver_Flash.h']]], + ['arm_5fi2c_5fapi_5fversion',['ARM_I2C_API_VERSION',['../_driver___i2_c_8h.html#a1d02c71e603ea569af1755251b1d179f',1,'Driver_I2C.h']]], + ['arm_5fmci_5fapi_5fversion',['ARM_MCI_API_VERSION',['../_driver___m_c_i_8h.html#ac1863acc4889811dc5f45ec0e059d892',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpower_5fvccq_5fmsk',['ARM_MCI_POWER_VCCQ_Msk',['../_driver___m_c_i_8h.html#aef11db3d5da54f0e0cf2e346f08622e2',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpower_5fvccq_5fpos',['ARM_MCI_POWER_VCCQ_Pos',['../_driver___m_c_i_8h.html#ae2de0ecc2d5d73b134c18b80bedb23a7',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpower_5fvdd_5fmsk',['ARM_MCI_POWER_VDD_Msk',['../_driver___m_c_i_8h.html#a58913d82ea4abd60dee50cec024de4a0',1,'Driver_MCI.h']]], + ['arm_5fmci_5fpower_5fvdd_5fpos',['ARM_MCI_POWER_VDD_Pos',['../_driver___m_c_i_8h.html#a8de1e84f879b741ed1e13a0aac93a246',1,'Driver_MCI.h']]], + ['arm_5fmci_5fresponse_5fmsk',['ARM_MCI_RESPONSE_Msk',['../_driver___m_c_i_8h.html#af12ae94785114eb31b1e077d52eda3fd',1,'Driver_MCI.h']]], + ['arm_5fmci_5fresponse_5fpos',['ARM_MCI_RESPONSE_Pos',['../_driver___m_c_i_8h.html#a125bb871e85f4646ff0fa8be1ab7c8c9',1,'Driver_MCI.h']]], + ['arm_5fnand_5fapi_5fversion',['ARM_NAND_API_VERSION',['../_driver___n_a_n_d_8h.html#a121ff96c31275cef4bb7e86007665e1c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5fmsk',['ARM_NAND_BUS_DDR2_DI_WCYC_Msk',['../_driver___n_a_n_d_8h.html#ad9ab38101de68a1bc186f5687f63f7c3',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fdi_5fwcyc_5fpos',['ARM_NAND_BUS_DDR2_DI_WCYC_Pos',['../_driver___n_a_n_d_8h.html#aa80b898cdf665aa14ff0e181e4ff31f1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5fmsk',['ARM_NAND_BUS_DDR2_DO_WCYC_Msk',['../_driver___n_a_n_d_8h.html#ad30dfdbdc50a7ff72a5bb173c5f549dc',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5fddr2_5fdo_5fwcyc_5fpos',['ARM_NAND_BUS_DDR2_DO_WCYC_Pos',['../_driver___n_a_n_d_8h.html#a57b282c0818c87b79ea4f11d03cc4f3c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5finterface_5fmsk',['ARM_NAND_BUS_INTERFACE_Msk',['../_driver___n_a_n_d_8h.html#aea213eb1ba9c67beb6216a630d81b91f',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5finterface_5fpos',['ARM_NAND_BUS_INTERFACE_Pos',['../_driver___n_a_n_d_8h.html#a372fc9b9cc1315046ceaffd6fd99e12c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5fmsk',['ARM_NAND_BUS_TIMING_MODE_Msk',['../_driver___n_a_n_d_8h.html#a57f6c319265b00878661656103abe660',1,'Driver_NAND.h']]], + ['arm_5fnand_5fbus_5ftiming_5fmode_5fpos',['ARM_NAND_BUS_TIMING_MODE_Pos',['../_driver___n_a_n_d_8h.html#acc98e42d23656734c7f9a8a5421842d6',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5fcol1_5fmsk',['ARM_NAND_CODE_ADDR_COL1_Msk',['../_driver___n_a_n_d_8h.html#a0951de69f3836c1ab229ec60b3996fcc',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5fcol1_5fpos',['ARM_NAND_CODE_ADDR_COL1_Pos',['../_driver___n_a_n_d_8h.html#ab8b06772e2b6c5930319b17bbb806133',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5fcol2_5fmsk',['ARM_NAND_CODE_ADDR_COL2_Msk',['../_driver___n_a_n_d_8h.html#a6126261e7c53713cee04aeae839d330e',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5fcol2_5fpos',['ARM_NAND_CODE_ADDR_COL2_Pos',['../_driver___n_a_n_d_8h.html#a1c4b9e7f44f77ebf665af8860a3c7528',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow1_5fmsk',['ARM_NAND_CODE_ADDR_ROW1_Msk',['../_driver___n_a_n_d_8h.html#ac24600be47e725ab1ad4193fd84daf80',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow1_5fpos',['ARM_NAND_CODE_ADDR_ROW1_Pos',['../_driver___n_a_n_d_8h.html#a8b75efa00810fcf23fb0f12e7f62d338',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow2_5fmsk',['ARM_NAND_CODE_ADDR_ROW2_Msk',['../_driver___n_a_n_d_8h.html#ae17a3f9b9fd70a88f9f9f38dd2c17951',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow2_5fpos',['ARM_NAND_CODE_ADDR_ROW2_Pos',['../_driver___n_a_n_d_8h.html#a326e135c57b38c78ae88cea121722a30',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow3_5fmsk',['ARM_NAND_CODE_ADDR_ROW3_Msk',['../_driver___n_a_n_d_8h.html#acf1ecacc2b225877c9cfe4f15dafc03c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5faddr_5frow3_5fpos',['ARM_NAND_CODE_ADDR_ROW3_Pos',['../_driver___n_a_n_d_8h.html#a6873f7aedfe81efa8ca21dc85cbb384c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd1_5fmsk',['ARM_NAND_CODE_CMD1_Msk',['../_driver___n_a_n_d_8h.html#ac65db62329bb943592afdb523e4aadca',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd1_5fpos',['ARM_NAND_CODE_CMD1_Pos',['../_driver___n_a_n_d_8h.html#ae34722cf52938f50bf117780a742b6f1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd2_5fmsk',['ARM_NAND_CODE_CMD2_Msk',['../_driver___n_a_n_d_8h.html#a0f963016c81be2ddf7a09d983de226a9',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd2_5fpos',['ARM_NAND_CODE_CMD2_Pos',['../_driver___n_a_n_d_8h.html#aeebe274650e7d0c02b478318759972e5',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd3_5fmsk',['ARM_NAND_CODE_CMD3_Msk',['../_driver___n_a_n_d_8h.html#a16d474e55d0f6ea6efc3cc5436493b22',1,'Driver_NAND.h']]], + ['arm_5fnand_5fcode_5fcmd3_5fpos',['ARM_NAND_CODE_CMD3_Pos',['../_driver___n_a_n_d_8h.html#aa0b87b819cf3c94f32e3ef18dcfd1c6c',1,'Driver_NAND.h']]], + ['arm_5fnand_5fecc_5findex_5fmsk',['ARM_NAND_ECC_INDEX_Msk',['../_driver___n_a_n_d_8h.html#a656537439264ab495c86e4c36051a3c1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fecc_5findex_5fpos',['ARM_NAND_ECC_INDEX_Pos',['../_driver___n_a_n_d_8h.html#a7944be4f63c439d5d64053ad9476407b',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5f1v8',['ARM_NAND_POWER_VCC_1V8',['../_driver___n_a_n_d_8h.html#aa7b9d5a71125b745caba5c1d7aff6385',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5f3v3',['ARM_NAND_POWER_VCC_3V3',['../_driver___n_a_n_d_8h.html#ad15355d67bc239ff49cceac69c2024b3',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5fmsk',['ARM_NAND_POWER_VCC_Msk',['../_driver___n_a_n_d_8h.html#ad898ef5cd4ffe3b6b09d69e224aa0912',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5foff',['ARM_NAND_POWER_VCC_OFF',['../_driver___n_a_n_d_8h.html#a323c320a6195b78c2c79f5c6e85f02e1',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvcc_5fpos',['ARM_NAND_POWER_VCC_Pos',['../_driver___n_a_n_d_8h.html#a848a27ec9ebf0a13a82a1d9760f39d90',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5f1v8',['ARM_NAND_POWER_VCCQ_1V8',['../_driver___n_a_n_d_8h.html#a653d9b4d7bee173beb49d8fec0469476',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5f3v3',['ARM_NAND_POWER_VCCQ_3V3',['../_driver___n_a_n_d_8h.html#a6d5a8a33a0fdaaff2e57e1ac53c984c2',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5fmsk',['ARM_NAND_POWER_VCCQ_Msk',['../_driver___n_a_n_d_8h.html#a7a453227301d7c08d09b22dc8afafbe7',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5foff',['ARM_NAND_POWER_VCCQ_OFF',['../_driver___n_a_n_d_8h.html#aca7679e8269ee986559f4218816937c3',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvccq_5fpos',['ARM_NAND_POWER_VCCQ_Pos',['../_driver___n_a_n_d_8h.html#ac38023b94cd8a68295d48a1019a386e0',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvpp_5foff',['ARM_NAND_POWER_VPP_OFF',['../_driver___n_a_n_d_8h.html#ae2d278901881ffc73d3e0b48717b22f0',1,'Driver_NAND.h']]], + ['arm_5fnand_5fpower_5fvpp_5fon',['ARM_NAND_POWER_VPP_ON',['../_driver___n_a_n_d_8h.html#aeb0d50e30bbcd8ab59c3b78db634aad5',1,'Driver_NAND.h']]], + ['arm_5fsai_5fapi_5fversion',['ARM_SAI_API_VERSION',['../_driver___s_a_i_8h.html#a228007626e6f533b7a86a85e73e74d1e',1,'Driver_SAI.h']]], + ['arm_5fsai_5faudio_5ffreq_5fmsk',['ARM_SAI_AUDIO_FREQ_Msk',['../_driver___s_a_i_8h.html#ac923ba4673588d3839a48c8a873b1248',1,'Driver_SAI.h']]], + ['arm_5fsai_5fbit_5forder_5fmsk',['ARM_SAI_BIT_ORDER_Msk',['../_driver___s_a_i_8h.html#a91d4cec3990025090d2fb31437bc57d2',1,'Driver_SAI.h']]], + ['arm_5fsai_5fbit_5forder_5fpos',['ARM_SAI_BIT_ORDER_Pos',['../_driver___s_a_i_8h.html#a662f3dbd09ce9c8c4df8490ba6fd430d',1,'Driver_SAI.h']]], + ['arm_5fsai_5fclock_5fpolarity_5fmsk',['ARM_SAI_CLOCK_POLARITY_Msk',['../_driver___s_a_i_8h.html#a593bd6efd49b976a12243c2b429bd94f',1,'Driver_SAI.h']]], + ['arm_5fsai_5fclock_5fpolarity_5fpos',['ARM_SAI_CLOCK_POLARITY_Pos',['../_driver___s_a_i_8h.html#a7652e9ea76805425bd1380d386fa956d',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcompanding_5fmsk',['ARM_SAI_COMPANDING_Msk',['../_driver___s_a_i_8h.html#a14371d4016e5863aa2033f47c213e271',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcompanding_5fpos',['ARM_SAI_COMPANDING_Pos',['../_driver___s_a_i_8h.html#a81a330ce8d7c6fe4ebae73b55af6adb9',1,'Driver_SAI.h']]], + ['arm_5fsai_5fcontrol_5fmsk',['ARM_SAI_CONTROL_Msk',['../_driver___s_a_i_8h.html#abe35f330af97ad488b28f580f7105b27',1,'Driver_SAI.h']]], + ['arm_5fsai_5fdata_5fsize_5fmsk',['ARM_SAI_DATA_SIZE_Msk',['../_driver___s_a_i_8h.html#a1e2b0edcbfbdcb5c452d18830af7c010',1,'Driver_SAI.h']]], + ['arm_5fsai_5fdata_5fsize_5fpos',['ARM_SAI_DATA_SIZE_Pos',['../_driver___s_a_i_8h.html#a78090bb0f32ce2b2d1214164d875f1f5',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5flength_5fmsk',['ARM_SAI_FRAME_LENGTH_Msk',['../_driver___s_a_i_8h.html#a23789f916975a203d0f17831452540cd',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5flength_5fpos',['ARM_SAI_FRAME_LENGTH_Pos',['../_driver___s_a_i_8h.html#a330fef2eea5b47e38951600c36ee2a1b',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fpolarity_5fmsk',['ARM_SAI_FRAME_SYNC_POLARITY_Msk',['../_driver___s_a_i_8h.html#a887b40a5223f2febd4a8b6cc7b7386f1',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fpolarity_5fpos',['ARM_SAI_FRAME_SYNC_POLARITY_Pos',['../_driver___s_a_i_8h.html#abc50a101bbf53b0fb438ad6682b2745d',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fwidth_5fmsk',['ARM_SAI_FRAME_SYNC_WIDTH_Msk',['../_driver___s_a_i_8h.html#a319e93ff4c5ac4f067c47118a3334776',1,'Driver_SAI.h']]], + ['arm_5fsai_5fframe_5fsync_5fwidth_5fpos',['ARM_SAI_FRAME_SYNC_WIDTH_Pos',['../_driver___s_a_i_8h.html#a1012f372276699c44b38b5e093802864',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmclk_5fpin_5fmsk',['ARM_SAI_MCLK_PIN_Msk',['../_driver___s_a_i_8h.html#a1fcfc4708ec7324563be3d0d840a72bf',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmclk_5fpin_5fpos',['ARM_SAI_MCLK_PIN_Pos',['../_driver___s_a_i_8h.html#a62e1f07e62ec45d44a4b35a975323233',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmclk_5fprescaler_5fmsk',['ARM_SAI_MCLK_PRESCALER_Msk',['../_driver___s_a_i_8h.html#adaa62519270d171df9b087ea004a3bb9',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmclk_5fprescaler_5fpos',['ARM_SAI_MCLK_PRESCALER_Pos',['../_driver___s_a_i_8h.html#a2d4fa5bf0272869fe80f7a35844c296b',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmode_5fmsk',['ARM_SAI_MODE_Msk',['../_driver___s_a_i_8h.html#ae949aad131ef68cde3190e3ab772f5bc',1,'Driver_SAI.h']]], + ['arm_5fsai_5fmode_5fpos',['ARM_SAI_MODE_Pos',['../_driver___s_a_i_8h.html#a8779654f638207bcee1b86a508b3a486',1,'Driver_SAI.h']]], + ['arm_5fsai_5fprotocol_5fmsk',['ARM_SAI_PROTOCOL_Msk',['../_driver___s_a_i_8h.html#aff67558883dcbaaed0feb28ddb5104a9',1,'Driver_SAI.h']]], + ['arm_5fsai_5fprotocol_5fpos',['ARM_SAI_PROTOCOL_Pos',['../_driver___s_a_i_8h.html#a9d46c20d74fc28cd23c61efec5d7e264',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fcount_5fmsk',['ARM_SAI_SLOT_COUNT_Msk',['../_driver___s_a_i_8h.html#a4c650eb9f59911ea332bbc090e0176ec',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fcount_5fpos',['ARM_SAI_SLOT_COUNT_Pos',['../_driver___s_a_i_8h.html#ac2b8807f6651d6f72e0ec35ccfaea467',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5foffset_5fmsk',['ARM_SAI_SLOT_OFFSET_Msk',['../_driver___s_a_i_8h.html#ae45ed9a4e8a4bb6861ddc0752b716ea3',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5foffset_5fpos',['ARM_SAI_SLOT_OFFSET_Pos',['../_driver___s_a_i_8h.html#a502fb0ed58535dfc41f47db570105af4',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fsize_5fmsk',['ARM_SAI_SLOT_SIZE_Msk',['../_driver___s_a_i_8h.html#a91b6372d62b46f5608f3de2c66186137',1,'Driver_SAI.h']]], + ['arm_5fsai_5fslot_5fsize_5fpos',['ARM_SAI_SLOT_SIZE_Pos',['../_driver___s_a_i_8h.html#a6c17885d8e10e8befe7d04bca108ffda',1,'Driver_SAI.h']]], + ['arm_5fsai_5fsynchronization_5fmsk',['ARM_SAI_SYNCHRONIZATION_Msk',['../_driver___s_a_i_8h.html#a42244bcaa347e43405cc356c00458c2e',1,'Driver_SAI.h']]], + ['arm_5fsai_5fsynchronization_5fpos',['ARM_SAI_SYNCHRONIZATION_Pos',['../_driver___s_a_i_8h.html#a07e9aff784158ff76feab30b9c1b39ec',1,'Driver_SAI.h']]], + ['arm_5fspi_5fapi_5fversion',['ARM_SPI_API_VERSION',['../_driver___s_p_i_8h.html#acf1275c15e53a573d7db89da66839d97',1,'Driver_SPI.h']]], + ['arm_5fspi_5fbit_5forder_5fmsk',['ARM_SPI_BIT_ORDER_Msk',['../_driver___s_p_i_8h.html#a7d407682d2cb5a7fea5e38ae62fa42f8',1,'Driver_SPI.h']]], + ['arm_5fspi_5fbit_5forder_5fpos',['ARM_SPI_BIT_ORDER_Pos',['../_driver___s_p_i_8h.html#a84a8f90504df32ec77832a0285a47081',1,'Driver_SPI.h']]], + ['arm_5fspi_5fcontrol_5fmsk',['ARM_SPI_CONTROL_Msk',['../_driver___s_p_i_8h.html#a646c834efef12377b372ea546459315b',1,'Driver_SPI.h']]], + ['arm_5fspi_5fcontrol_5fpos',['ARM_SPI_CONTROL_Pos',['../_driver___s_p_i_8h.html#a129dc5d38b4ba2c776c0b90aecf12a63',1,'Driver_SPI.h']]], + ['arm_5fspi_5fdata_5fbits_5fmsk',['ARM_SPI_DATA_BITS_Msk',['../_driver___s_p_i_8h.html#a0b6e14fe55f4d92ddab6ca230da77f46',1,'Driver_SPI.h']]], + ['arm_5fspi_5fdata_5fbits_5fpos',['ARM_SPI_DATA_BITS_Pos',['../_driver___s_p_i_8h.html#a89e1140c07c9805112b6de4541c3b59a',1,'Driver_SPI.h']]], + ['arm_5fspi_5fframe_5fformat_5fmsk',['ARM_SPI_FRAME_FORMAT_Msk',['../_driver___s_p_i_8h.html#af459192fe14b4b725816fa0029149298',1,'Driver_SPI.h']]], + ['arm_5fspi_5fframe_5fformat_5fpos',['ARM_SPI_FRAME_FORMAT_Pos',['../_driver___s_p_i_8h.html#ac47e4ed093d8c054021121f89c64023e',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5factive',['ARM_SPI_SS_ACTIVE',['../_driver___s_p_i_8h.html#a3f465cdbd1238ddd74f78e14457076c4',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5finactive',['ARM_SPI_SS_INACTIVE',['../_driver___s_p_i_8h.html#a335b448e07422e9c25616a693ec581cc',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fmaster_5fmode_5fmsk',['ARM_SPI_SS_MASTER_MODE_Msk',['../_driver___s_p_i_8h.html#aaefa5b36525296a43071968cac43a4af',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fmaster_5fmode_5fpos',['ARM_SPI_SS_MASTER_MODE_Pos',['../_driver___s_p_i_8h.html#ac467bd067b72370b23546767e63ce693',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fslave_5fmode_5fmsk',['ARM_SPI_SS_SLAVE_MODE_Msk',['../_driver___s_p_i_8h.html#a2e9a0ac10df1b90b785c5d23079873e0',1,'Driver_SPI.h']]], + ['arm_5fspi_5fss_5fslave_5fmode_5fpos',['ARM_SPI_SS_SLAVE_MODE_Pos',['../_driver___s_p_i_8h.html#a4aed772149cc33c6ee70663adef90956',1,'Driver_SPI.h']]], + ['arm_5fusart_5fapi_5fversion',['ARM_USART_API_VERSION',['../_driver___u_s_a_r_t_8h.html#ab37a12fd0981e09c42ea42684a5dfbab',1,'Driver_USART.h']]], + ['arm_5fusart_5fcontrol_5fmsk',['ARM_USART_CONTROL_Msk',['../_driver___u_s_a_r_t_8h.html#a253d29333d1a40d0401a02f9675a90fd',1,'Driver_USART.h']]], + ['arm_5fusart_5fcontrol_5fpos',['ARM_USART_CONTROL_Pos',['../_driver___u_s_a_r_t_8h.html#ab654e36e71012c28b91273e96827e1b8',1,'Driver_USART.h']]], + ['arm_5fusart_5fcpha_5fmsk',['ARM_USART_CPHA_Msk',['../_driver___u_s_a_r_t_8h.html#afba3e5931503b5a820472c4610252d72',1,'Driver_USART.h']]], + ['arm_5fusart_5fcpha_5fpos',['ARM_USART_CPHA_Pos',['../_driver___u_s_a_r_t_8h.html#a01ec7322a6a62197e82e948b1a8a41fa',1,'Driver_USART.h']]], + ['arm_5fusart_5fcpol_5fmsk',['ARM_USART_CPOL_Msk',['../_driver___u_s_a_r_t_8h.html#a2424397076d0479ab6b83e557be35db2',1,'Driver_USART.h']]], + ['arm_5fusart_5fcpol_5fpos',['ARM_USART_CPOL_Pos',['../_driver___u_s_a_r_t_8h.html#a76148e4ea9d9e8a798e904e1d65d5dfc',1,'Driver_USART.h']]], + ['arm_5fusart_5fdata_5fbits_5fmsk',['ARM_USART_DATA_BITS_Msk',['../_driver___u_s_a_r_t_8h.html#a84581b0925c149db3ca28d2656107656',1,'Driver_USART.h']]], + ['arm_5fusart_5fdata_5fbits_5fpos',['ARM_USART_DATA_BITS_Pos',['../_driver___u_s_a_r_t_8h.html#a08696262ebd491edf1e7865ebe93a81f',1,'Driver_USART.h']]], + ['arm_5fusart_5fflow_5fcontrol_5fmsk',['ARM_USART_FLOW_CONTROL_Msk',['../_driver___u_s_a_r_t_8h.html#a0e80cb6a6f47c164fb1fe5fe8eab43f4',1,'Driver_USART.h']]], + ['arm_5fusart_5fflow_5fcontrol_5fpos',['ARM_USART_FLOW_CONTROL_Pos',['../_driver___u_s_a_r_t_8h.html#a2e09a6b54db30327511241fdf422c4c9',1,'Driver_USART.h']]], + ['arm_5fusart_5fparity_5fmsk',['ARM_USART_PARITY_Msk',['../_driver___u_s_a_r_t_8h.html#a434c48980c65129c01aa5bc1c8e22898',1,'Driver_USART.h']]], + ['arm_5fusart_5fparity_5fpos',['ARM_USART_PARITY_Pos',['../_driver___u_s_a_r_t_8h.html#a2ce50af2e58db12c25a5791080aca258',1,'Driver_USART.h']]], + ['arm_5fusart_5fstop_5fbits_5fmsk',['ARM_USART_STOP_BITS_Msk',['../_driver___u_s_a_r_t_8h.html#aff72dd7b794cf2be5b5edca180be7a40',1,'Driver_USART.h']]], + ['arm_5fusart_5fstop_5fbits_5fpos',['ARM_USART_STOP_BITS_Pos',['../_driver___u_s_a_r_t_8h.html#ac73d045a0058006dbdc64a6d43772217',1,'Driver_USART.h']]], + ['arm_5fusb_5fendpoint_5fdirection_5fmask',['ARM_USB_ENDPOINT_DIRECTION_MASK',['../_driver___u_s_b_8h.html#afc3be8e98be7a242c81cd677996f21d8',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmax_5fpacket_5fsize_5fmask',['ARM_USB_ENDPOINT_MAX_PACKET_SIZE_MASK',['../_driver___u_s_b_8h.html#acdacc3b2d7854566a90f0fe265a96f9d',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5f1',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_1',['../_driver___u_s_b_8h.html#aff3c2adf06d5dc8ccb3622b5860b380c',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5f2',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_2',['../_driver___u_s_b_8h.html#afd061484f2de3a75e89b126f6ed21226',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5f3',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_3',['../_driver___u_s_b_8h.html#a7c23bf8680f3feaf444d289df3603c38',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fmicroframe_5ftransactions_5fmask',['ARM_USB_ENDPOINT_MICROFRAME_TRANSACTIONS_MASK',['../_driver___u_s_b_8h.html#a72544ba674dc6d32c9caffcf9083fdfd',1,'Driver_USB.h']]], + ['arm_5fusb_5fendpoint_5fnumber_5fmask',['ARM_USB_ENDPOINT_NUMBER_MASK',['../_driver___u_s_b_8h.html#a6ef3e2cf16ee3b1356947a17e5d42a6c',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fack',['ARM_USB_PID_ACK',['../_driver___u_s_b_8h.html#a27505b779f79c82f3d7e63f7841b9c98',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fdata0',['ARM_USB_PID_DATA0',['../_driver___u_s_b_8h.html#a047d50d8c7ffa89fb75608cce2756ac6',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fdata1',['ARM_USB_PID_DATA1',['../_driver___u_s_b_8h.html#ab46f4fe90edf21e8e88f21a07876d88d',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fdata2',['ARM_USB_PID_DATA2',['../_driver___u_s_b_8h.html#af3462fb5987bcda04963c7fd02461ced',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5ferr',['ARM_USB_PID_ERR',['../_driver___u_s_b_8h.html#a56e57da4c1665866bf48a4bff4fa36b7',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fin',['ARM_USB_PID_IN',['../_driver___u_s_b_8h.html#adb2459ddd000755c1ea52183bb8c55bb',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fmdata',['ARM_USB_PID_MDATA',['../_driver___u_s_b_8h.html#ad78b3806a0963b041135a76eaf2fcd73',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fnak',['ARM_USB_PID_NAK',['../_driver___u_s_b_8h.html#a3a0de1078536cc459dd21d9b87b952f5',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fnyet',['ARM_USB_PID_NYET',['../_driver___u_s_b_8h.html#ab4f0fb1af1b2257eef132a684a58b62b',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fout',['ARM_USB_PID_OUT',['../_driver___u_s_b_8h.html#a828674d5225de2aadf7fb764a22e74f3',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fping',['ARM_USB_PID_PING',['../_driver___u_s_b_8h.html#a2249b4907c4e9fa63a9d5685a6525ae6',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fpre',['ARM_USB_PID_PRE',['../_driver___u_s_b_8h.html#aa044bae2705c08f38d6cc40bc32d0323',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5freserved',['ARM_USB_PID_RESERVED',['../_driver___u_s_b_8h.html#a8a8e917e48e97820b08e36b3da87f678',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fsetup',['ARM_USB_PID_SETUP',['../_driver___u_s_b_8h.html#a08d69b2a1e3d5ef4ef1a36f591ea0df6',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fsof',['ARM_USB_PID_SOF',['../_driver___u_s_b_8h.html#ab8945ae385d3e7d0da9ba9ff461e09c1',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fsplit',['ARM_USB_PID_SPLIT',['../_driver___u_s_b_8h.html#a136c540358ff3ec0007a7fee6ddcf308',1,'Driver_USB.h']]], + ['arm_5fusb_5fpid_5fstall',['ARM_USB_PID_STALL',['../_driver___u_s_b_8h.html#ab7f3d6c2acab8b6b607ff7c063c11444',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fdm',['ARM_USB_PIN_DM',['../_driver___u_s_b_8h.html#a5a5348d08c911233e4e9d81d1c42a367',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fdp',['ARM_USB_PIN_DP',['../_driver___u_s_b_8h.html#a7f42a0ff2d6e9187428a0126cc140c5b',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fid',['ARM_USB_PIN_ID',['../_driver___u_s_b_8h.html#a03a103d754d9751485b748cd144cbfd7',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5foc',['ARM_USB_PIN_OC',['../_driver___u_s_b_8h.html#a03ae07428733660d5e187fec1aede075',1,'Driver_USB.h']]], + ['arm_5fusb_5fpin_5fvbus',['ARM_USB_PIN_VBUS',['../_driver___u_s_b_8h.html#a390491e93356426de470ae41302dd547',1,'Driver_USB.h']]], + ['arm_5fusb_5frole_5fdevice',['ARM_USB_ROLE_DEVICE',['../_driver___u_s_b_8h.html#ab67eb404d64392b8910d7fdaef01aa0d',1,'Driver_USB.h']]], + ['arm_5fusb_5frole_5fhost',['ARM_USB_ROLE_HOST',['../_driver___u_s_b_8h.html#ab21de5df4cadf9bc4381c8c1066205d8',1,'Driver_USB.h']]], + ['arm_5fusb_5frole_5fnone',['ARM_USB_ROLE_NONE',['../_driver___u_s_b_8h.html#a2cb4a6a3dc939c3b13021be266f23e76',1,'Driver_USB.h']]], + ['arm_5fusbd_5fapi_5fversion',['ARM_USBD_API_VERSION',['../_driver___u_s_b_d_8h.html#a71df406694e557f19cae5e43ff1960ba',1,'Driver_USBD.h']]], + ['arm_5fusbh_5fapi_5fversion',['ARM_USBH_API_VERSION',['../_driver___u_s_b_h_8h.html#a032e1e5caca3235109e2d2d6bf2e34bb',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fep_5fhandle',['ARM_USBH_EP_HANDLE',['../_driver___u_s_b_h_8h.html#ab2c57d8ea726b331b891167aa4a201c9',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fdata_5fmsk',['ARM_USBH_PACKET_DATA_Msk',['../_driver___u_s_b_h_8h.html#a979e5c7ad6bae9b5eb42eb9ee1b6a843',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fdata_5fpos',['ARM_USBH_PACKET_DATA_Pos',['../_driver___u_s_b_h_8h.html#a2b28435952abaeea6fd29480f10e56eb',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fsplit_5fmsk',['ARM_USBH_PACKET_SPLIT_Msk',['../_driver___u_s_b_h_8h.html#ad0c886d7d97a8ad2c343eab0552a09db',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5fsplit_5fpos',['ARM_USBH_PACKET_SPLIT_Pos',['../_driver___u_s_b_h_8h.html#a41e5706fcf6e028c5c86751b37a27dd6',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5ftoken_5fmsk',['ARM_USBH_PACKET_TOKEN_Msk',['../_driver___u_s_b_h_8h.html#a366b3541934b74772eba60e6332923ad',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpacket_5ftoken_5fpos',['ARM_USBH_PACKET_TOKEN_Pos',['../_driver___u_s_b_h_8h.html#a8139a9c76ea4a062795130196d3b6ed9',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fsignalendpointevent_5ft',['ARM_USBH_SignalEndpointEvent_t',['../_driver___u_s_b_h_8h.html#ab66601b4c31f638479d7ab6efa515dcc',1,'Driver_USBH.h']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/enums_61.html b/CMSIS/Documentation/Driver/html/search/enums_61.html new file mode 100644 index 0000000..f27490d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/enums_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/enums_61.js b/CMSIS/Documentation/Driver/html/search/enums_61.js new file mode 100644 index 0000000..51c2ada --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/enums_61.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['arm_5fcan_5fbitrate_5fselect',['ARM_CAN_BITRATE_SELECT',['../group__can__timeseg__ctrls.html#ga11c12020b81a63a73a8b53e96a7e3dea',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5foperation',['ARM_CAN_FILTER_OPERATION',['../group__can__filter__operation__ctrls.html#gacb04d0f8b3969ee69362ff2b62941d75',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode',['ARM_CAN_MODE',['../group__can__bus__mode__ctrls.html#gabbca99c46d478bcf822eee71cdf75dcd',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5fconfig',['ARM_CAN_OBJ_CONFIG',['../group__can__obj__config__ctrls.html#gaa9488554de0575bc821c9f65213c4cd0',1,'Driver_CAN.h']]], + ['arm_5feth_5flink_5fstate',['ARM_ETH_LINK_STATE',['../group__eth__interface__gr.html#gacf7db5320eb841b462a4af3c56cc9291',1,'Driver_ETH.h']]], + ['arm_5fpower_5fstate',['ARM_POWER_STATE',['../group__common__drv__gr.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5',1,'Driver_Common.h']]], + ['arm_5fusart_5fmodem_5fcontrol',['ARM_USART_MODEM_CONTROL',['../group__usart__interface__gr.html#ga7b89d709f048b6a956aa211f63e75f6f',1,'Driver_USART.h']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/enumvalues_61.html b/CMSIS/Documentation/Driver/html/search/enumvalues_61.html new file mode 100644 index 0000000..deef591 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/enumvalues_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/enumvalues_61.js b/CMSIS/Documentation/Driver/html/search/enumvalues_61.js new file mode 100644 index 0000000..19cb078 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/enumvalues_61.js @@ -0,0 +1,31 @@ +var searchData= +[ + ['arm_5fcan_5fbitrate_5ffd_5fdata',['ARM_CAN_BITRATE_FD_DATA',['../_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaaa6c9996de0cdf42da5c02086cd8f16dc',1,'Driver_CAN.h']]], + ['arm_5fcan_5fbitrate_5fnominal',['ARM_CAN_BITRATE_NOMINAL',['../_driver___c_a_n_8h.html#ga11c12020b81a63a73a8b53e96a7e3deaa3b6d191c99f1eba4f01bcc5fbfaf67f3',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5fexact_5fadd',['ARM_CAN_FILTER_ID_EXACT_ADD',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75aa734058b50573de3b0cc49311997806b',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5fexact_5fremove',['ARM_CAN_FILTER_ID_EXACT_REMOVE',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a6fdaecf3fa244ef1e4d1069d9c6c95f8',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5fmaskable_5fadd',['ARM_CAN_FILTER_ID_MASKABLE_ADD',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ac4ad302fa9b762c1d14964141e234ba9',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5fmaskable_5fremove',['ARM_CAN_FILTER_ID_MASKABLE_REMOVE',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75ad9573d5d0e112aece7abc0bc24aa92fb',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5frange_5fadd',['ARM_CAN_FILTER_ID_RANGE_ADD',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a22123bef8e773844fce604c553bf2ed5',1,'Driver_CAN.h']]], + ['arm_5fcan_5ffilter_5fid_5frange_5fremove',['ARM_CAN_FILTER_ID_RANGE_REMOVE',['../_driver___c_a_n_8h.html#gacb04d0f8b3969ee69362ff2b62941d75a17fea7d388dc702bb3318ecae911f50d',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5finitialization',['ARM_CAN_MODE_INITIALIZATION',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda9967a5ebaa045afe54d75e5629676ddc',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5floopback_5fexternal',['ARM_CAN_MODE_LOOPBACK_EXTERNAL',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda5ee1ba60abcf39d575e7cb309e641b9b',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5floopback_5finternal',['ARM_CAN_MODE_LOOPBACK_INTERNAL',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda8579315576baa43860a398a30fd527d8',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5fmonitor',['ARM_CAN_MODE_MONITOR',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda904f68f08c84c4b85c763f5d98c574ab',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5fnormal',['ARM_CAN_MODE_NORMAL',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcdaa3190344bdf3452462e5c0518ac3cdc4',1,'Driver_CAN.h']]], + ['arm_5fcan_5fmode_5frestricted',['ARM_CAN_MODE_RESTRICTED',['../_driver___c_a_n_8h.html#gabbca99c46d478bcf822eee71cdf75dcda22a9bb26e68c2a04f641d466040d755d',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5finactive',['ARM_CAN_OBJ_INACTIVE',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0aebbd0da59658805af30203be66d80249',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5frx',['ARM_CAN_OBJ_RX',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a14780ac7274831ee94f427cbbf67c003',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5frx_5frtr_5ftx_5fdata',['ARM_CAN_OBJ_RX_RTR_TX_DATA',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0ac5d28d180ea9e4328974ffcb8b928a0c',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5ftx',['ARM_CAN_OBJ_TX',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a3e20952f92855298cd0a39a7f47b3f3c',1,'Driver_CAN.h']]], + ['arm_5fcan_5fobj_5ftx_5frtr_5frx_5fdata',['ARM_CAN_OBJ_TX_RTR_RX_DATA',['../_driver___c_a_n_8h.html#gaa9488554de0575bc821c9f65213c4cd0a396d7a6cd2353e1a2936405ace6417f5',1,'Driver_CAN.h']]], + ['arm_5feth_5flink_5fdown',['ARM_ETH_LINK_DOWN',['../_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291a5f635c9352db6cb6fa9ad95660850487',1,'Driver_ETH.h']]], + ['arm_5feth_5flink_5fup',['ARM_ETH_LINK_UP',['../_driver___e_t_h_8h.html#gacf7db5320eb841b462a4af3c56cc9291ab5e5b02c3c8a5a0fefcf69f3be7e31c1',1,'Driver_ETH.h']]], + ['arm_5fpower_5ffull',['ARM_POWER_FULL',['../_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5abed52b77a9ce4775570e44a842b1295e',1,'Driver_Common.h']]], + ['arm_5fpower_5flow',['ARM_POWER_LOW',['../_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5a9ef9e57cbcc948d0e22314e73dc8c434',1,'Driver_Common.h']]], + ['arm_5fpower_5foff',['ARM_POWER_OFF',['../_driver___common_8h.html#ga47d6d7c31f88f3b8ae4aaf9d8444afa5ab6f5becc85ebd51c3dd2524a95d2ca35',1,'Driver_Common.h']]], + ['arm_5fusart_5fdtr_5fclear',['ARM_USART_DTR_CLEAR',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa3ad44ce9f16c136ccad45c09ec65cb4c',1,'Driver_USART.h']]], + ['arm_5fusart_5fdtr_5fset',['ARM_USART_DTR_SET',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab938a21e1b59a2b92424e2521b9469d4',1,'Driver_USART.h']]], + ['arm_5fusart_5frts_5fclear',['ARM_USART_RTS_CLEAR',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fab4d04e682d04f70c6aeba130656d3ec6',1,'Driver_USART.h']]], + ['arm_5fusart_5frts_5fset',['ARM_USART_RTS_SET',['../_driver___u_s_a_r_t_8h.html#ga7b89d709f048b6a956aa211f63e75f6fa7f9d445e6e56642c4c4251a00bfa7434',1,'Driver_USART.h']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/files_64.html b/CMSIS/Documentation/Driver/html/search/files_64.html new file mode 100644 index 0000000..1a32bf8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/files_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/files_64.js b/CMSIS/Documentation/Driver/html/search/files_64.js new file mode 100644 index 0000000..69371e9 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/files_64.js @@ -0,0 +1,33 @@ +var searchData= +[ + ['driver_5fcan_2ec',['Driver_CAN.c',['../_driver___c_a_n_8c.html',1,'']]], + ['driver_5fcan_2eh',['Driver_CAN.h',['../_driver___c_a_n_8h.html',1,'']]], + ['driver_5fcommon_2ec',['Driver_Common.c',['../_driver___common_8c.html',1,'']]], + ['driver_5fcommon_2eh',['Driver_Common.h',['../_driver___common_8h.html',1,'']]], + ['driver_5feth_2ec',['Driver_ETH.c',['../_driver___e_t_h_8c.html',1,'']]], + ['driver_5feth_2eh',['Driver_ETH.h',['../_driver___e_t_h_8h.html',1,'']]], + ['driver_5feth_5fmac_2ec',['Driver_ETH_MAC.c',['../_driver___e_t_h___m_a_c_8c.html',1,'']]], + ['driver_5feth_5fmac_2eh',['Driver_ETH_MAC.h',['../_driver___e_t_h___m_a_c_8h.html',1,'']]], + ['driver_5feth_5fphy_2ec',['Driver_ETH_PHY.c',['../_driver___e_t_h___p_h_y_8c.html',1,'']]], + ['driver_5feth_5fphy_2eh',['Driver_ETH_PHY.h',['../_driver___e_t_h___p_h_y_8h.html',1,'']]], + ['driver_5fflash_2ec',['Driver_Flash.c',['../_driver___flash_8c.html',1,'']]], + ['driver_5fflash_2eh',['Driver_Flash.h',['../_driver___flash_8h.html',1,'']]], + ['driver_5fi2c_2ec',['Driver_I2C.c',['../_driver___i2_c_8c.html',1,'']]], + ['driver_5fi2c_2eh',['Driver_I2C.h',['../_driver___i2_c_8h.html',1,'']]], + ['driver_5fmci_2ec',['Driver_MCI.c',['../_driver___m_c_i_8c.html',1,'']]], + ['driver_5fmci_2eh',['Driver_MCI.h',['../_driver___m_c_i_8h.html',1,'']]], + ['driver_5fnand_2ec',['Driver_NAND.c',['../_driver___n_a_n_d_8c.html',1,'']]], + ['driver_5fnand_2eh',['Driver_NAND.h',['../_driver___n_a_n_d_8h.html',1,'']]], + ['driver_5fsai_2ec',['Driver_SAI.c',['../_driver___s_a_i_8c.html',1,'']]], + ['driver_5fsai_2eh',['Driver_SAI.h',['../_driver___s_a_i_8h.html',1,'']]], + ['driver_5fspi_2ec',['Driver_SPI.c',['../_driver___s_p_i_8c.html',1,'']]], + ['driver_5fspi_2eh',['Driver_SPI.h',['../_driver___s_p_i_8h.html',1,'']]], + ['driver_5fusart_2ec',['Driver_USART.c',['../_driver___u_s_a_r_t_8c.html',1,'']]], + ['driver_5fusart_2eh',['Driver_USART.h',['../_driver___u_s_a_r_t_8h.html',1,'']]], + ['driver_5fusb_2ec',['Driver_USB.c',['../_driver___u_s_b_8c.html',1,'']]], + ['driver_5fusb_2eh',['Driver_USB.h',['../_driver___u_s_b_8h.html',1,'']]], + ['driver_5fusbd_2ec',['Driver_USBD.c',['../_driver___u_s_b_d_8c.html',1,'']]], + ['driver_5fusbd_2eh',['Driver_USBD.h',['../_driver___u_s_b_d_8h.html',1,'']]], + ['driver_5fusbh_2ec',['Driver_USBH.c',['../_driver___u_s_b_h_8c.html',1,'']]], + ['driver_5fusbh_2eh',['Driver_USBH.h',['../_driver___u_s_b_h_8h.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/files_67.html b/CMSIS/Documentation/Driver/html/search/files_67.html new file mode 100644 index 0000000..d5df283 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/files_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/files_67.js b/CMSIS/Documentation/Driver/html/search/files_67.js new file mode 100644 index 0000000..b1407f2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/files_67.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['general_2etxt',['General.txt',['../_general_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/functions_61.html b/CMSIS/Documentation/Driver/html/search/functions_61.html new file mode 100644 index 0000000..7f39533 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/functions_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/functions_61.js b/CMSIS/Documentation/Driver/html/search/functions_61.js new file mode 100644 index 0000000..902bd08 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/functions_61.js @@ -0,0 +1,190 @@ +var searchData= +[ + ['arm_5fcan_5fcontrol',['ARM_CAN_Control',['../group__can__interface__gr.html#ga8d9f0c5f03a8a81ab062b5aa57e5dea4',1,'Driver_CAN.c']]], + ['arm_5fcan_5fgetcapabilities',['ARM_CAN_GetCapabilities',['../group__can__interface__gr.html#ga35f21cabe1637b1be964024a8f77721c',1,'Driver_CAN.c']]], + ['arm_5fcan_5fgetclock',['ARM_CAN_GetClock',['../group__can__interface__gr.html#ga1fe6cc207415de604975ae251e269361',1,'Driver_CAN.c']]], + ['arm_5fcan_5fgetstatus',['ARM_CAN_GetStatus',['../group__can__interface__gr.html#ga676d6b567fc4ab3d44f5d7a50ec9419c',1,'Driver_CAN.c']]], + ['arm_5fcan_5fgetversion',['ARM_CAN_GetVersion',['../group__can__interface__gr.html#ga4256d5b23ffcb27759a05f8e6b854f13',1,'Driver_CAN.c']]], + ['arm_5fcan_5finitialize',['ARM_CAN_Initialize',['../group__can__interface__gr.html#gaa72ceb25ba67e279d7432404632deb44',1,'Driver_CAN.c']]], + ['arm_5fcan_5fmessageread',['ARM_CAN_MessageRead',['../group__can__interface__gr.html#gafc37084df5eab32f593c2744d35cf647',1,'Driver_CAN.c']]], + ['arm_5fcan_5fmessagesend',['ARM_CAN_MessageSend',['../group__can__interface__gr.html#ga0dcffd362b4093043442a030eaebbcfe',1,'Driver_CAN.c']]], + ['arm_5fcan_5fobjectconfigure',['ARM_CAN_ObjectConfigure',['../group__can__interface__gr.html#ga00ec0715f6755a49dae5b60dca182630',1,'Driver_CAN.c']]], + ['arm_5fcan_5fobjectgetcapabilities',['ARM_CAN_ObjectGetCapabilities',['../group__can__interface__gr.html#ga45ab314f5121cf5a1b32d9adc600e0f7',1,'Driver_CAN.c']]], + ['arm_5fcan_5fobjectsetfilter',['ARM_CAN_ObjectSetFilter',['../group__can__interface__gr.html#ga4f9bc7088704483388e14872c9d5385d',1,'Driver_CAN.c']]], + ['arm_5fcan_5fpowercontrol',['ARM_CAN_PowerControl',['../group__can__interface__gr.html#ga6f634f126ac97daef2f3115aa7bfed7c',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsetbitrate',['ARM_CAN_SetBitrate',['../group__can__interface__gr.html#ga88bb27a8525503a250cca7a2c4a5d07a',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsetmode',['ARM_CAN_SetMode',['../group__can__interface__gr.html#ga28226a6e223f9b95b4dafb7c2f48a855',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsignalobjectevent',['ARM_CAN_SignalObjectEvent',['../group__can__interface__gr.html#gabfcaeac9e2ca25936ba5a29f2d594e7e',1,'Driver_CAN.c']]], + ['arm_5fcan_5fsignalunitevent',['ARM_CAN_SignalUnitEvent',['../group__can__interface__gr.html#ga38795d1ed135ce3bd87f31ef1596bccf',1,'Driver_CAN.c']]], + ['arm_5fcan_5funinitialize',['ARM_CAN_Uninitialize',['../group__can__interface__gr.html#ga1e3e364b64f2ab277399e3279cce5ef8',1,'Driver_CAN.c']]], + ['arm_5feth_5fmac_5fcontrol',['ARM_ETH_MAC_Control',['../group__eth__mac__interface__gr.html#gac3e90c66058d20077f04ac8e8b8d0536',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fcontroltimer',['ARM_ETH_MAC_ControlTimer',['../group__eth__mac__interface__gr.html#ga85d9dc865af3702b71a514b18a588643',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetcapabilities',['ARM_ETH_MAC_GetCapabilities',['../group__eth__mac__interface__gr.html#ga2b13b230502736d8c7679b359dff20d0',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetmacaddress',['ARM_ETH_MAC_GetMacAddress',['../group__eth__mac__interface__gr.html#ga66308c1e791952047e974bd653037fae',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetrxframesize',['ARM_ETH_MAC_GetRxFrameSize',['../group__eth__mac__interface__gr.html#ga5ee86d6b0efab5329b9bc191c23a466d',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetrxframetime',['ARM_ETH_MAC_GetRxFrameTime',['../group__eth__mac__interface__gr.html#gaa7c6865fb09754be869778142466c5e4',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgettxframetime',['ARM_ETH_MAC_GetTxFrameTime',['../group__eth__mac__interface__gr.html#ga115b5c7e149aec2b181de760f5d83f60',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fgetversion',['ARM_ETH_MAC_GetVersion',['../group__eth__mac__interface__gr.html#ga86b15062c297384ad5842dd57b9d6b1d',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5finitialize',['ARM_ETH_MAC_Initialize',['../group__eth__mac__interface__gr.html#gacf42d11b171cd032f0ec1de6db2b6832',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fphy_5fread',['ARM_ETH_MAC_PHY_Read',['../group__eth__mac__interface__gr.html#gaded29ad58366e9222487db9944373c29',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fphy_5fwrite',['ARM_ETH_MAC_PHY_Write',['../group__eth__mac__interface__gr.html#ga79dd38672749aeebd28f39d9b4f813ce',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fpowercontrol',['ARM_ETH_MAC_PowerControl',['../group__eth__mac__interface__gr.html#ga346fef040a0e9bac5762a04a306b1be7',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5freadframe',['ARM_ETH_MAC_ReadFrame',['../group__eth__mac__interface__gr.html#ga4b79f57d8624bb4410ee12c73a483993',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsendframe',['ARM_ETH_MAC_SendFrame',['../group__eth__mac__interface__gr.html#ga5bf58defdb239ed7dc948f1da147a1c3',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsetaddressfilter',['ARM_ETH_MAC_SetAddressFilter',['../group__eth__mac__interface__gr.html#ga150fe30290275a4b32756f94208124e8',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsetmacaddress',['ARM_ETH_MAC_SetMacAddress',['../group__eth__mac__interface__gr.html#ga7cc3d17c7312c5032202dfd9a915f24a',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5fsignalevent',['ARM_ETH_MAC_SignalEvent',['../group__eth__mac__interface__gr.html#gae0697be4c4229601f3bfc17e2978ada6',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fmac_5funinitialize',['ARM_ETH_MAC_Uninitialize',['../group__eth__mac__interface__gr.html#gacb2c2ae06f32328775bffbdeaaabfb5d',1,'Driver_ETH_MAC.c']]], + ['arm_5feth_5fphy_5fgetlinkinfo',['ARM_ETH_PHY_GetLinkInfo',['../group__eth__phy__interface__gr.html#ga8c79dcd7a12656403f3befab3c8605a2',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fgetlinkstate',['ARM_ETH_PHY_GetLinkState',['../group__eth__phy__interface__gr.html#ga4085cd24ebe33b78d51a3c003da4a5ba',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fgetversion',['ARM_ETH_PHY_GetVersion',['../group__eth__phy__interface__gr.html#ga6850d33d699d9deee4e983a2c99e9734',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5finitialize',['ARM_ETH_PHY_Initialize',['../group__eth__phy__interface__gr.html#gacf2332a7fa2d84694b8e5f0838135589',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fpowercontrol',['ARM_ETH_PHY_PowerControl',['../group__eth__phy__interface__gr.html#gaba0f92561754dad8f8f03feb1cf2855e',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fsetinterface',['ARM_ETH_PHY_SetInterface',['../group__eth__phy__interface__gr.html#gaedd8b5650a1259d572a1f303d3e2c01c',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5fsetmode',['ARM_ETH_PHY_SetMode',['../group__eth__phy__interface__gr.html#ga9aa688c951f01ed9ca7c88cf51be8a09',1,'Driver_ETH_PHY.c']]], + ['arm_5feth_5fphy_5funinitialize',['ARM_ETH_PHY_Uninitialize',['../group__eth__phy__interface__gr.html#ga26ea7e1e9825b959284241ebff6eea3f',1,'Driver_ETH_PHY.c']]], + ['arm_5fflash_5ferasechip',['ARM_Flash_EraseChip',['../group__flash__interface__gr.html#ga6cbaebe069d31d56c70b1f8f847e2d55',1,'Driver_Flash.c']]], + ['arm_5fflash_5ferasesector',['ARM_Flash_EraseSector',['../group__flash__interface__gr.html#ga0b2b4fe5a7be579cf3644995a765ea20',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetcapabilities',['ARM_Flash_GetCapabilities',['../group__flash__interface__gr.html#ga27c23c998032cd47cb47293c0185ee5d',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetinfo',['ARM_Flash_GetInfo',['../group__flash__interface__gr.html#gac047b7509356e888502e0424a9d189ae',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetstatus',['ARM_Flash_GetStatus',['../group__flash__interface__gr.html#ga06885c0d4587d5a23f97614a8b849ef1',1,'Driver_Flash.c']]], + ['arm_5fflash_5fgetversion',['ARM_Flash_GetVersion',['../group__flash__interface__gr.html#ga1cfe24b2ffa571ee50ae544bd922b604',1,'Driver_Flash.c']]], + ['arm_5fflash_5finitialize',['ARM_Flash_Initialize',['../group__flash__interface__gr.html#gaa5b4bbe529d620d4ad4825588a4c4cf0',1,'Driver_Flash.c']]], + ['arm_5fflash_5fpowercontrol',['ARM_Flash_PowerControl',['../group__flash__interface__gr.html#gaa8baa4618ea33568f8b3752afb2ab5a2',1,'Driver_Flash.c']]], + ['arm_5fflash_5fprogramdata',['ARM_Flash_ProgramData',['../group__flash__interface__gr.html#ga947f24ea4042093fdb5605a68ae74f9d',1,'Driver_Flash.c']]], + ['arm_5fflash_5freaddata',['ARM_Flash_ReadData',['../group__flash__interface__gr.html#ga223138342383219896ed7e255faeb99a',1,'Driver_Flash.c']]], + ['arm_5fflash_5fsignalevent',['ARM_Flash_SignalEvent',['../group__flash__interface__gr.html#ga97b75555b5433b268add81f2e60f095a',1,'Driver_Flash.c']]], + ['arm_5fflash_5funinitialize',['ARM_Flash_Uninitialize',['../group__flash__interface__gr.html#gae23af293e9f8a67cdb19c7d0d562d415',1,'Driver_Flash.c']]], + ['arm_5fi2c_5fcontrol',['ARM_I2C_Control',['../group__i2c__interface__gr.html#ga828f5fa289d065675ef78a9a73d129dc',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetcapabilities',['ARM_I2C_GetCapabilities',['../group__i2c__interface__gr.html#gad20e6731f627aa7b9d6e99a50806122e',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetdatacount',['ARM_I2C_GetDataCount',['../group__i2c__interface__gr.html#ga19db20ad8d7fde84d07f6db4d75f4b7c',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetstatus',['ARM_I2C_GetStatus',['../group__i2c__interface__gr.html#gaba4e0f3eb4018e7dafd51b675c465f3e',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fgetversion',['ARM_I2C_GetVersion',['../group__i2c__interface__gr.html#ga956bd87590c7fb6e23609a0abfb5412c',1,'Driver_I2C.c']]], + ['arm_5fi2c_5finitialize',['ARM_I2C_Initialize',['../group__i2c__interface__gr.html#ga79d2f7d01b3a681d1cf0d70ac6692696',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fmasterreceive',['ARM_I2C_MasterReceive',['../group__i2c__interface__gr.html#gafa22504bcf88a85584dfe6e0dd270ad5',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fmastertransmit',['ARM_I2C_MasterTransmit',['../group__i2c__interface__gr.html#ga8bf4214580149d5a5d2360f71f0feb94',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fpowercontrol',['ARM_I2C_PowerControl',['../group__i2c__interface__gr.html#ga734a69200e063fdbfb5110062afe9329',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fsignalevent',['ARM_I2C_SignalEvent',['../group__i2c__interface__gr.html#gad4f93d2895794b416dc8d8e9de91c05e',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fslavereceive',['ARM_I2C_SlaveReceive',['../group__i2c__interface__gr.html#gae3c9abccd1d377385d3d4cfe29035164',1,'Driver_I2C.c']]], + ['arm_5fi2c_5fslavetransmit',['ARM_I2C_SlaveTransmit',['../group__i2c__interface__gr.html#gafe164f30eba78f066272373b98a62cd4',1,'Driver_I2C.c']]], + ['arm_5fi2c_5funinitialize',['ARM_I2C_Uninitialize',['../group__i2c__interface__gr.html#ga30d8bf600b6b3182a1f867407b3d6e75',1,'Driver_I2C.c']]], + ['arm_5fmci_5faborttransfer',['ARM_MCI_AbortTransfer',['../group__mci__interface__gr.html#ga3dfcf7b7186b711f9b63a096be816fe5',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcardpower',['ARM_MCI_CardPower',['../group__mci__interface__gr.html#gab161f80e0eda2815f3e0ebbba1314ff0',1,'Driver_MCI.c']]], + ['arm_5fmci_5fcontrol',['ARM_MCI_Control',['../group__mci__interface__gr.html#gaec0506a2aa4ae75cf6bc02528f36fe30',1,'Driver_MCI.c']]], + ['arm_5fmci_5fgetcapabilities',['ARM_MCI_GetCapabilities',['../group__mci__interface__gr.html#ga7e5a78b6e6409189833a0b72a0a3c48a',1,'Driver_MCI.c']]], + ['arm_5fmci_5fgetstatus',['ARM_MCI_GetStatus',['../group__mci__interface__gr.html#ga8d61aa42ce78d1864fa928c1f273cbd9',1,'Driver_MCI.c']]], + ['arm_5fmci_5fgetversion',['ARM_MCI_GetVersion',['../group__mci__interface__gr.html#ga3418183015dbf3025b94eebaedb00ab1',1,'Driver_MCI.c']]], + ['arm_5fmci_5finitialize',['ARM_MCI_Initialize',['../group__mci__interface__gr.html#ga6f34d4ab362e596ddaf23aac093268cf',1,'Driver_MCI.c']]], + ['arm_5fmci_5fpowercontrol',['ARM_MCI_PowerControl',['../group__mci__interface__gr.html#ga19752749d04ed22dc91c4294645e0244',1,'Driver_MCI.c']]], + ['arm_5fmci_5freadcd',['ARM_MCI_ReadCD',['../group__mci__interface__gr.html#ga012fca8f1ce5366fce14b708c771c635',1,'Driver_MCI.c']]], + ['arm_5fmci_5freadwp',['ARM_MCI_ReadWP',['../group__mci__interface__gr.html#ga3d70286918405ac81fa795c7d09dc6fd',1,'Driver_MCI.c']]], + ['arm_5fmci_5fsendcommand',['ARM_MCI_SendCommand',['../group__mci__interface__gr.html#ga5a431da89feabc2b4bc0c27943dff6f2',1,'Driver_MCI.c']]], + ['arm_5fmci_5fsetuptransfer',['ARM_MCI_SetupTransfer',['../group__mci__interface__gr.html#gaaec681bcd8e6811c5743e33ee0f35ed1',1,'Driver_MCI.c']]], + ['arm_5fmci_5fsignalevent',['ARM_MCI_SignalEvent',['../group__mci__interface__gr.html#gaac2dbd1c1a98436938c5d0d6248cb700',1,'Driver_MCI.c']]], + ['arm_5fmci_5funinitialize',['ARM_MCI_Uninitialize',['../group__mci__interface__gr.html#gaef8183e77797e74997551d03646d42c2',1,'Driver_MCI.c']]], + ['arm_5fnand_5fabortsequence',['ARM_NAND_AbortSequence',['../group__nand__interface__gr.html#ga00832861f018db0d8368900b099ecd30',1,'Driver_NAND.c']]], + ['arm_5fnand_5fchipenable',['ARM_NAND_ChipEnable',['../group__nand__interface__gr.html#ga1c0cba87cb7b706ad5986dc67c831ad1',1,'Driver_NAND.c']]], + ['arm_5fnand_5fcontrol',['ARM_NAND_Control',['../group__nand__interface__gr.html#ga83061d6d53ffb148853efbc87a864607',1,'Driver_NAND.c']]], + ['arm_5fnand_5fdevicepower',['ARM_NAND_DevicePower',['../group__nand__interface__gr.html#ga11adcbaaace09746581a36befbd563c9',1,'Driver_NAND.c']]], + ['arm_5fnand_5fexecutesequence',['ARM_NAND_ExecuteSequence',['../group__nand__interface__gr.html#ga8a0108dba757a4610475151144b52825',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetcapabilities',['ARM_NAND_GetCapabilities',['../group__nand__interface__gr.html#ga9f2609975c2008d21b9ae28f15daf147',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetdevicebusy',['ARM_NAND_GetDeviceBusy',['../group__nand__interface__gr.html#ga43011066306bd716b580e6aa9a80cf65',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetstatus',['ARM_NAND_GetStatus',['../group__nand__interface__gr.html#ga4578642f37a556b58b0bba0ad5d42641',1,'Driver_NAND.c']]], + ['arm_5fnand_5fgetversion',['ARM_NAND_GetVersion',['../group__nand__interface__gr.html#ga01255fd4f15e7fa4751c7ea59648ef5a',1,'Driver_NAND.c']]], + ['arm_5fnand_5finitialize',['ARM_NAND_Initialize',['../group__nand__interface__gr.html#ga74ad34718a595e7a4375b90f33e72750',1,'Driver_NAND.c']]], + ['arm_5fnand_5finquireecc',['ARM_NAND_InquireECC',['../group__nand__interface__gr.html#gac21425454d586ef48fdfc35e7bd78947',1,'Driver_NAND.c']]], + ['arm_5fnand_5fpowercontrol',['ARM_NAND_PowerControl',['../group__nand__interface__gr.html#ga9c9975637980b5d42db7baba0191fda1',1,'Driver_NAND.c']]], + ['arm_5fnand_5freaddata',['ARM_NAND_ReadData',['../group__nand__interface__gr.html#gae1899a20ef107400c8bf84fad477a8ce',1,'Driver_NAND.c']]], + ['arm_5fnand_5fsendaddress',['ARM_NAND_SendAddress',['../group__nand__interface__gr.html#ga00e195031e03d364db7595858a7e76f3',1,'Driver_NAND.c']]], + ['arm_5fnand_5fsendcommand',['ARM_NAND_SendCommand',['../group__nand__interface__gr.html#ga9f70b89ba478eadfe7f5dee7453a4fb7',1,'Driver_NAND.c']]], + ['arm_5fnand_5fsignalevent',['ARM_NAND_SignalEvent',['../group__nand__interface__gr.html#gaf4ce80b0fd6717de7ddfb1cfaf7dd754',1,'Driver_NAND.c']]], + ['arm_5fnand_5funinitialize',['ARM_NAND_Uninitialize',['../group__nand__interface__gr.html#gaa788b638ab696b166fee2f4a4bc8d97a',1,'Driver_NAND.c']]], + ['arm_5fnand_5fwritedata',['ARM_NAND_WriteData',['../group__nand__interface__gr.html#ga1fa497dd51a86fc308e946b4419fd006',1,'Driver_NAND.c']]], + ['arm_5fnand_5fwriteprotect',['ARM_NAND_WriteProtect',['../group__nand__interface__gr.html#ga1987e65a4e756d748db86332c9fb1cec',1,'Driver_NAND.c']]], + ['arm_5fsai_5fcontrol',['ARM_SAI_Control',['../group__sai__interface__gr.html#ga405a0769c33da6801055db0fb9b6c869',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgetcapabilities',['ARM_SAI_GetCapabilities',['../group__sai__interface__gr.html#gac6c636757944eaf25aebf312a67665aa',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgetrxcount',['ARM_SAI_GetRxCount',['../group__sai__interface__gr.html#ga2c571fcc8b9632c25a64043bc2b2baec',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgetstatus',['ARM_SAI_GetStatus',['../group__sai__interface__gr.html#ga6a202b57697f0f7a9742e76b33d5eeec',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgettxcount',['ARM_SAI_GetTxCount',['../group__sai__interface__gr.html#gaa9805f9d32aee205f787e625a58e8898',1,'Driver_SAI.c']]], + ['arm_5fsai_5fgetversion',['ARM_SAI_GetVersion',['../group__sai__interface__gr.html#ga786b1970a788a4dfc6156b42364e52f8',1,'Driver_SAI.c']]], + ['arm_5fsai_5finitialize',['ARM_SAI_Initialize',['../group__sai__interface__gr.html#ga89622a02ca1e7affb1a01eefacb6f54c',1,'Driver_SAI.c']]], + ['arm_5fsai_5fpowercontrol',['ARM_SAI_PowerControl',['../group__sai__interface__gr.html#gacdec50a3dd5902de601caa7397c1dabc',1,'Driver_SAI.c']]], + ['arm_5fsai_5freceive',['ARM_SAI_Receive',['../group__sai__interface__gr.html#ga2d55f506cef9d2849cbe418146086d98',1,'Driver_SAI.c']]], + ['arm_5fsai_5fsend',['ARM_SAI_Send',['../group__sai__interface__gr.html#ga8bb6866c535adeb930bc4a847d476fcd',1,'Driver_SAI.c']]], + ['arm_5fsai_5fsignalevent',['ARM_SAI_SignalEvent',['../group__sai__interface__gr.html#gaedf3347cb25d6bf2faad1bbb35ad79f4',1,'Driver_SAI.c']]], + ['arm_5fsai_5funinitialize',['ARM_SAI_Uninitialize',['../group__sai__interface__gr.html#gabdefafaba6f072cfd7ed6f8f132422b6',1,'Driver_SAI.c']]], + ['arm_5fspi_5fcontrol',['ARM_SPI_Control',['../group__spi__interface__gr.html#gad18d229992598d6677bec250015e5d1a',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetcapabilities',['ARM_SPI_GetCapabilities',['../group__spi__interface__gr.html#gaf4823a11ab5efcd47c79b13801513ddc',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetdatacount',['ARM_SPI_GetDataCount',['../group__spi__interface__gr.html#gaaaecaaf4ec1922f22e7f9de63af5ccdb',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetstatus',['ARM_SPI_GetStatus',['../group__spi__interface__gr.html#ga60d33d8788a76c388cc36e066240b817',1,'Driver_SPI.c']]], + ['arm_5fspi_5fgetversion',['ARM_SPI_GetVersion',['../group__spi__interface__gr.html#gad5db9209ef1d64a7915a7278d6a402c8',1,'Driver_SPI.c']]], + ['arm_5fspi_5finitialize',['ARM_SPI_Initialize',['../group__spi__interface__gr.html#ga1a3c11ed523a4355cd91069527945906',1,'Driver_SPI.c']]], + ['arm_5fspi_5fpowercontrol',['ARM_SPI_PowerControl',['../group__spi__interface__gr.html#ga1a1e7e80ea32ae381b75213c32aa8067',1,'Driver_SPI.c']]], + ['arm_5fspi_5freceive',['ARM_SPI_Receive',['../group__spi__interface__gr.html#ga726aff54e782ed9b47f7ba1280a3d8f6',1,'Driver_SPI.c']]], + ['arm_5fspi_5fsend',['ARM_SPI_Send',['../group__spi__interface__gr.html#gab2a303d1071e926280d50682f4808479',1,'Driver_SPI.c']]], + ['arm_5fspi_5fsignalevent',['ARM_SPI_SignalEvent',['../group__spi__interface__gr.html#ga505b2d787348d51351d38fee98ccba7e',1,'Driver_SPI.c']]], + ['arm_5fspi_5ftransfer',['ARM_SPI_Transfer',['../group__spi__interface__gr.html#gaa24026b3822c10272e301f1505136ec2',1,'Driver_SPI.c']]], + ['arm_5fspi_5funinitialize',['ARM_SPI_Uninitialize',['../group__spi__interface__gr.html#ga0c480ee3eabb82fc746e89741ed2e03e',1,'Driver_SPI.c']]], + ['arm_5fusart_5fcontrol',['ARM_USART_Control',['../group__usart__interface__gr.html#gad8ffdde2123b5412de3005c456da677d',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetcapabilities',['ARM_USART_GetCapabilities',['../group__usart__interface__gr.html#gad2d3ace1fe7627bb72945efefaeddf0a',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetmodemstatus',['ARM_USART_GetModemStatus',['../group__usart__interface__gr.html#ga198af0d6a7c85b7c0b96f3d9db8c34e0',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetrxcount',['ARM_USART_GetRxCount',['../group__usart__interface__gr.html#ga1a8799aeeba1363a9e5d22bada715a29',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetstatus',['ARM_USART_GetStatus',['../group__usart__interface__gr.html#ga1e8fdd54294b587438b2b72f4dbde004',1,'Driver_USART.c']]], + ['arm_5fusart_5fgettxcount',['ARM_USART_GetTxCount',['../group__usart__interface__gr.html#gacb355584bcdf4ebd36f11d945800fa03',1,'Driver_USART.c']]], + ['arm_5fusart_5fgetversion',['ARM_USART_GetVersion',['../group__usart__interface__gr.html#gabca6151cef47565832decaf484781b61',1,'Driver_USART.c']]], + ['arm_5fusart_5finitialize',['ARM_USART_Initialize',['../group__usart__interface__gr.html#ga51f06805e9a6197c553fa9513ac7b9d6',1,'Driver_USART.c']]], + ['arm_5fusart_5fpowercontrol',['ARM_USART_PowerControl',['../group__usart__interface__gr.html#ga9bad012b28d544f3eeeea9c2f71a4086',1,'Driver_USART.c']]], + ['arm_5fusart_5freceive',['ARM_USART_Receive',['../group__usart__interface__gr.html#gae9efabdabb5aaa17bce83339f8a58803',1,'Driver_USART.c']]], + ['arm_5fusart_5fsend',['ARM_USART_Send',['../group__usart__interface__gr.html#ga5cf758b0b9d03dca68846962f73c0b08',1,'Driver_USART.c']]], + ['arm_5fusart_5fsetmodemcontrol',['ARM_USART_SetModemControl',['../group__usart__interface__gr.html#gad8eb0eb1d1c24fc725584ab93214cfc7',1,'Driver_USART.c']]], + ['arm_5fusart_5fsignalevent',['ARM_USART_SignalEvent',['../group__usart__interface__gr.html#gad796cd023f8f6300a6caadcc39d43cbf',1,'Driver_USART.c']]], + ['arm_5fusart_5ftransfer',['ARM_USART_Transfer',['../group__usart__interface__gr.html#ga878899928d34a818edd3e97d67b65c2a',1,'Driver_USART.c']]], + ['arm_5fusart_5funinitialize',['ARM_USART_Uninitialize',['../group__usart__interface__gr.html#ga96f31f07a6721cf75de2a7a0ab723d26',1,'Driver_USART.c']]], + ['arm_5fusbd_5fdeviceconnect',['ARM_USBD_DeviceConnect',['../group__usbd__interface__gr.html#ga99207f7ff5e97a7f65754eab7f775fca',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdevicedisconnect',['ARM_USBD_DeviceDisconnect',['../group__usbd__interface__gr.html#ga37234abecbb63e4e739f9676e489d2d1',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdevicegetstate',['ARM_USBD_DeviceGetState',['../group__usbd__interface__gr.html#ga7624d6b2cbe5e6ab5016206ce641eee2',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdeviceremotewakeup',['ARM_USBD_DeviceRemoteWakeup',['../group__usbd__interface__gr.html#ga7e149a4c6a0196da24a44f4fada75fb1',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fdevicesetaddress',['ARM_USBD_DeviceSetAddress',['../group__usbd__interface__gr.html#gae66f696584e25fb2ddabe9070fa38670',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointconfigure',['ARM_USBD_EndpointConfigure',['../group__usbd__interface__gr.html#ga62d7d5bdcf9ca7bf7e6d8434368abad8',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointstall',['ARM_USBD_EndpointStall',['../group__usbd__interface__gr.html#ga9502cd7b8e4c583920fccadc4ccf7975',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointtransfer',['ARM_USBD_EndpointTransfer',['../group__usbd__interface__gr.html#ga6e69ad097553125bb01a22dc719e0d30',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointtransferabort',['ARM_USBD_EndpointTransferAbort',['../group__usbd__interface__gr.html#ga7cf3bcc105dbb8cbdc915e8caca8529e',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointtransfergetresult',['ARM_USBD_EndpointTransferGetResult',['../group__usbd__interface__gr.html#gab81fac01522a4d504edcb7b7d3abba6c',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fendpointunconfigure',['ARM_USBD_EndpointUnconfigure',['../group__usbd__interface__gr.html#gaca913df5188dc0f0c4f707b57c2a88fc',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fgetcapabilities',['ARM_USBD_GetCapabilities',['../group__usbd__interface__gr.html#ga178d01ab7896e1c675b90bbccfe8ea7d',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fgetframenumber',['ARM_USBD_GetFrameNumber',['../group__usbd__interface__gr.html#ga4cd050b8343407fe465a27ad1cb7c264',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fgetversion',['ARM_USBD_GetVersion',['../group__usbd__interface__gr.html#ga1dcb8b7790f0e3613ee3da77e5fd18fc',1,'Driver_USBD.c']]], + ['arm_5fusbd_5finitialize',['ARM_USBD_Initialize',['../group__usbd__interface__gr.html#ga60b95c9c0c6767ff5938464cfd748f81',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fpowercontrol',['ARM_USBD_PowerControl',['../group__usbd__interface__gr.html#gaa5bdaac19f6df30c6e569abef17cdb42',1,'Driver_USBD.c']]], + ['arm_5fusbd_5freadsetuppacket',['ARM_USBD_ReadSetupPacket',['../group__usbd__interface__gr.html#ga6bc0ebf699a0f28330f21cab83f85e9e',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fsignaldeviceevent',['ARM_USBD_SignalDeviceEvent',['../group__usbd__interface__gr.html#gafe58a4db1d26b21ca5d418ee49e103a5',1,'Driver_USBD.c']]], + ['arm_5fusbd_5fsignalendpointevent',['ARM_USBD_SignalEndpointEvent',['../group__usbd__interface__gr.html#ga9aa5bc5cb45084194a77fae1457f6575',1,'Driver_USBD.c']]], + ['arm_5fusbd_5funinitialize',['ARM_USBD_Uninitialize',['../group__usbd__interface__gr.html#gafaead6713f141be1734de0110eda966b',1,'Driver_USBD.c']]], + ['arm_5fusbh_5fgetcapabilities',['ARM_USBH_GetCapabilities',['../group__usbh__host__gr.html#gadb509db50fdccfc7198dfd7ac54530d7',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fgetframenumber',['ARM_USBH_GetFrameNumber',['../group__usbh__host__gr.html#ga9dc305fc234c9987b9efd679b5042cc9',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fgetversion',['ARM_USBH_GetVersion',['../group__usbh__host__gr.html#gab11e67e11e7a0edbc8a1afa86b971784',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5fgetcapabilities',['ARM_USBH_HCI_GetCapabilities',['../group__usbh__hci__gr.html#gae607c49ca97202500631473a901e8c2b',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5fgetversion',['ARM_USBH_HCI_GetVersion',['../group__usbh__hci__gr.html#ga10109d0c2a9a128225b5e893d3f72d08',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5finitialize',['ARM_USBH_HCI_Initialize',['../group__usbh__hci__gr.html#gabc1392a544cb64491b5ea5ce6590d832',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5finterrupt',['ARM_USBH_HCI_Interrupt',['../group__usbh__hci__gr.html#ga79d3c2509ed869c8d7d1485acad7b6c6',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5fportvbusonoff',['ARM_USBH_HCI_PortVbusOnOff',['../group__usbh__hci__gr.html#gade1e83403c6ea965fe3e6c4c21fbbded',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5fpowercontrol',['ARM_USBH_HCI_PowerControl',['../group__usbh__hci__gr.html#ga27fa5ec8854cd9877bbef4abffe9a12b',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fhci_5funinitialize',['ARM_USBH_HCI_Uninitialize',['../group__usbh__hci__gr.html#gaacb68fdf201cdb1846b31642a760f041',1,'Driver_USBH.c']]], + ['arm_5fusbh_5finitialize',['ARM_USBH_Initialize',['../group__usbh__host__gr.html#gad1e73f778c95dd46d4396e7741a97f0b',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipecreate',['ARM_USBH_PipeCreate',['../group__usbh__host__gr.html#ga30dcc05151a98c5a8f6fe17e83777fe0',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipedelete',['ARM_USBH_PipeDelete',['../group__usbh__host__gr.html#gab2135041e6d481f186015f36fa0d0521',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipemodify',['ARM_USBH_PipeModify',['../group__usbh__host__gr.html#ga2076a7ae55f603859c726e57b061ac73',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipereset',['ARM_USBH_PipeReset',['../group__usbh__host__gr.html#ga7f5a605dbe98e450e6965d515fde65a7',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipetransfer',['ARM_USBH_PipeTransfer',['../group__usbh__host__gr.html#ga817d503a24ad8927fa362c8f6394920d',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipetransferabort',['ARM_USBH_PipeTransferAbort',['../group__usbh__host__gr.html#ga1d4048a076aed71e585cea96a21f0afb',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpipetransfergetresult',['ARM_USBH_PipeTransferGetResult',['../group__usbh__host__gr.html#ga85baa421345a5b92881ad190d72ca47f',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportgetstate',['ARM_USBH_PortGetState',['../group__usbh__host__gr.html#gaea4ec5453c1d5fe37a2507d3cb4713bc',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportreset',['ARM_USBH_PortReset',['../group__usbh__host__gr.html#gab99882e11ee03018da9ebe33797cc5ff',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportresume',['ARM_USBH_PortResume',['../group__usbh__host__gr.html#gab438b55ada37e2987e77e105f061f2de',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportsuspend',['ARM_USBH_PortSuspend',['../group__usbh__host__gr.html#ga620f8852a70a47a581001ed3050436d6',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fportvbusonoff',['ARM_USBH_PortVbusOnOff',['../group__usbh__host__gr.html#gaccca5ddd4a9d04388e7678a3aed3f6e4',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fpowercontrol',['ARM_USBH_PowerControl',['../group__usbh__host__gr.html#ga290a5e2e491da784e63be94699974d4a',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fsignalpipeevent',['ARM_USBH_SignalPipeEvent',['../group__usbh__host__gr.html#gae58d36afd83a0e32b07e89fb7145c9de',1,'Driver_USBH.c']]], + ['arm_5fusbh_5fsignalportevent',['ARM_USBH_SignalPortEvent',['../group__usbh__host__gr.html#ga53619da2a3d56934629084b0d5c4700c',1,'Driver_USBH.c']]], + ['arm_5fusbh_5funinitialize',['ARM_USBH_Uninitialize',['../group__usbh__host__gr.html#gafc2f18bc12bb0019f9cd1836dcca408d',1,'Driver_USBH.c']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_63.html b/CMSIS/Documentation/Driver/html/search/groups_63.html new file mode 100644 index 0000000..dd75625 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_63.js b/CMSIS/Documentation/Driver/html/search/groups_63.js new file mode 100644 index 0000000..d6082e4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_63.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['can_20bus_20communication_20mode',['CAN Bus Communication Mode',['../group__can__bus__mode__ctrls.html',1,'']]], + ['can_20control_20codes',['CAN Control Codes',['../group__can__control.html',1,'']]], + ['can_20object_20events',['CAN Object Events',['../group___c_a_n__events.html',1,'']]], + ['can_20filter_20operation_20codes',['CAN Filter Operation Codes',['../group__can__filter__operation__ctrls.html',1,'']]], + ['can_20identifier',['CAN Identifier',['../group__can__identifer__ctrls.html',1,'']]], + ['can_20interface',['CAN Interface',['../group__can__interface__gr.html',1,'']]], + ['can_20operation_20codes',['CAN Operation Codes',['../group__can__mode__ctrls.html',1,'']]], + ['can_20object_20configuration_20codes',['CAN Object Configuration Codes',['../group__can__obj__config__ctrls.html',1,'']]], + ['can_20bit_20timing_20codes',['CAN Bit Timing Codes',['../group__can__timeseg__ctrls.html',1,'']]], + ['can_20unit_20events',['CAN Unit Events',['../group___c_a_n__unit__events.html',1,'']]], + ['common_20driver_20definitions',['Common Driver Definitions',['../group__common__drv__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_65.html b/CMSIS/Documentation/Driver/html/search/groups_65.html new file mode 100644 index 0000000..f084d02 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_65.js b/CMSIS/Documentation/Driver/html/search/groups_65.js new file mode 100644 index 0000000..f487e1b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_65.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['ethernet_20interface',['Ethernet Interface',['../group__eth__interface__gr.html',1,'']]], + ['ethernet_20mac_20configuration',['Ethernet MAC Configuration',['../group__eth__mac__configuration__ctrls.html',1,'']]], + ['ethernet_20mac_20control_20codes',['Ethernet MAC Control Codes',['../group__eth__mac__control.html',1,'']]], + ['ethernet_20mac_20controls',['Ethernet MAC Controls',['../group__eth__mac__ctrls.html',1,'']]], + ['ethernet_20mac_20events',['Ethernet MAC Events',['../group___e_t_h___m_a_c__events.html',1,'']]], + ['ethernet_20mac_20flush_20flags',['Ethernet MAC Flush Flags',['../group__eth__mac__flush__flag__ctrls.html',1,'']]], + ['ethernet_20mac_20frame_20transmit_20flags',['Ethernet MAC Frame Transmit Flags',['../group__eth__mac__frame__transmit__ctrls.html',1,'']]], + ['ethernet_20mac_20interface',['Ethernet MAC Interface',['../group__eth__mac__interface__gr.html',1,'']]], + ['ethernet_20mac_20timer_20control_20codes',['Ethernet MAC Timer Control Codes',['../group__eth__mac__time__control.html',1,'']]], + ['ethernet_20mac_20vlan_20filter_20flag',['Ethernet MAC VLAN Filter Flag',['../group__eth__mac__vlan__filter__ctrls.html',1,'']]], + ['ethernet_20phy_20interface',['Ethernet PHY Interface',['../group__eth__phy__interface__gr.html',1,'']]], + ['ethernet_20phy_20mode',['Ethernet PHY Mode',['../group__eth__phy__mode__ctrls.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_66.html b/CMSIS/Documentation/Driver/html/search/groups_66.html new file mode 100644 index 0000000..b1879e4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_66.js b/CMSIS/Documentation/Driver/html/search/groups_66.js new file mode 100644 index 0000000..cc4d084 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_66.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['flash_20events',['Flash Events',['../group___flash__events.html',1,'']]], + ['flash_20interface',['Flash Interface',['../group__flash__interface__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_69.html b/CMSIS/Documentation/Driver/html/search/groups_69.html new file mode 100644 index 0000000..2bcea06 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_69.js b/CMSIS/Documentation/Driver/html/search/groups_69.js new file mode 100644 index 0000000..4c41978 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_69.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['i2c_20address_20flags',['I2C Address Flags',['../group__i2c__address__flags.html',1,'']]], + ['i2c_20bus_20speed',['I2C Bus Speed',['../group__i2c__bus__speed__ctrls.html',1,'']]], + ['i2c_20control_20codes',['I2C Control Codes',['../group__i2c__control__codes.html',1,'']]], + ['i2c_20control_20codes',['I2C Control Codes',['../group__i2c__control__gr.html',1,'']]], + ['i2c_20events',['I2C Events',['../group___i2_c__events.html',1,'']]], + ['i2c_20interface',['I2C Interface',['../group__i2c__interface__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_6d.html b/CMSIS/Documentation/Driver/html/search/groups_6d.html new file mode 100644 index 0000000..7caa8d7 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_6d.js b/CMSIS/Documentation/Driver/html/search/groups_6d.js new file mode 100644 index 0000000..375d31c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_6d.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['media_20interface_20types',['Media Interface Types',['../group__eth__interface__types1.html',1,'']]], + ['mci_20bus_20data_20width',['MCI Bus Data Width',['../group__mci__bus__data__width__ctrls.html',1,'']]], + ['mci_20bus_20speed_20mode',['MCI Bus Speed Mode',['../group__mci__bus__speed__ctrls.html',1,'']]], + ['mci_20card_20power_20controls',['MCI Card Power Controls',['../group__mci__card__power__ctrls.html',1,'']]], + ['mci_20cmd_20line_20mode',['MCI CMD Line Mode',['../group__mci__cmd__line__ctrls.html',1,'']]], + ['mci_20control_20codes',['MCI Control Codes',['../group__mci__control__gr.html',1,'']]], + ['mci_20driver_20strength',['MCI Driver Strength',['../group__mci__driver__strength__ctrls.html',1,'']]], + ['mci_20events',['MCI Events',['../group__mci__event__gr.html',1,'']]], + ['mci_20interface',['MCI Interface',['../group__mci__interface__gr.html',1,'']]], + ['mci_20controls',['MCI Controls',['../group__mci__mode__ctrls.html',1,'']]], + ['mci_20send_20command_20flags',['MCI Send Command Flags',['../group__mci__send__command__flags__ctrls.html',1,'']]], + ['mci_20transfer_20controls',['MCI Transfer Controls',['../group__mci__transfer__ctrls.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_6e.html b/CMSIS/Documentation/Driver/html/search/groups_6e.html new file mode 100644 index 0000000..5e9e7d8 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_6e.js b/CMSIS/Documentation/Driver/html/search/groups_6e.js new file mode 100644 index 0000000..b866179 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_6e.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['nand_20bus_20modes',['NAND Bus Modes',['../group__nand__bus__mode__codes.html',1,'']]], + ['nand_20mode_20controls',['NAND Mode Controls',['../group__nand__control__codes.html',1,'']]], + ['nand_20control_20codes',['NAND Control Codes',['../group__nand__control__gr.html',1,'']]], + ['nand_20data_20bus_20width',['NAND Data Bus Width',['../group__nand__data__bus__width__codes.html',1,'']]], + ['nand_20ecc_20codes',['NAND ECC Codes',['../group__nand__driver__ecc__codes.html',1,'']]], + ['nand_20flags',['NAND Flags',['../group__nand__driver__flag__codes.html',1,'']]], + ['nand_20sequence_20execution_20codes',['NAND Sequence Execution Codes',['../group__nand__driver__seq__exec__codes.html',1,'']]], + ['nand_20driver_20strength',['NAND Driver Strength',['../group__nand__driver__strength__codes.html',1,'']]], + ['nand_20events',['NAND Events',['../group___n_a_n_d__events.html',1,'']]], + ['nand_20interface',['NAND Interface',['../group__nand__interface__gr.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_73.html b/CMSIS/Documentation/Driver/html/search/groups_73.html new file mode 100644 index 0000000..feab00e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_73.js b/CMSIS/Documentation/Driver/html/search/groups_73.js new file mode 100644 index 0000000..00b906e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_73.js @@ -0,0 +1,35 @@ +var searchData= +[ + ['status_20error_20codes',['Status Error Codes',['../group__can__status__code__ctrls.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__execution__status.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__nand__execution__status.html',1,'']]], + ['sai_20bit_20order',['SAI Bit Order',['../group__sai__bit__order__control.html',1,'']]], + ['sai_20clock_20polarity',['SAI Clock Polarity',['../group__sai__clock__pol__control.html',1,'']]], + ['sai_20companding',['SAI Companding',['../group__sai__companding__control.html',1,'']]], + ['sai_20configuration',['SAI Configuration',['../group__sai__configure__control.html',1,'']]], + ['sai_20control_20codes',['SAI Control Codes',['../group__sai__control.html',1,'']]], + ['sai_20controls',['SAI Controls',['../group__sai__controls.html',1,'']]], + ['sai_20data_20size',['SAI Data Size',['../group__sai__data__bits__control.html',1,'']]], + ['sai_20events',['SAI Events',['../group___s_a_i__events.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__sai__execution__status.html',1,'']]], + ['sai_20frame',['SAI Frame',['../group__sai__frame__control.html',1,'']]], + ['sai_20interface',['SAI Interface',['../group__sai__interface__gr.html',1,'']]], + ['sai_20master_20clock_20pin',['SAI Master Clock Pin',['../group__sai__mclk__pin__control.html',1,'']]], + ['sai_20master_20clock_20prescaler',['SAI Master Clock Prescaler',['../group__sai__mclk__pres__control.html',1,'']]], + ['sai_20mode',['SAI Mode',['../group__sai__mode__control.html',1,'']]], + ['sai_20mono_20mode',['SAI Mono Mode',['../group__sai__mono__control.html',1,'']]], + ['sai_20protocol',['SAI Protocol',['../group__sai__protocol__control.html',1,'']]], + ['sai_20slot',['SAI Slot',['../group__sai__slot__control.html',1,'']]], + ['sai_20synchronization',['SAI Synchronization',['../group__sai__sync__control.html',1,'']]], + ['spi_20bit_20order',['SPI Bit Order',['../group__spi__bit__order__ctrls.html',1,'']]], + ['spi_20control_20codes',['SPI Control Codes',['../group___s_p_i__control.html',1,'']]], + ['spi_20data_20bits',['SPI Data Bits',['../group__spi__data__bits__ctrls.html',1,'']]], + ['spi_20events',['SPI Events',['../group___s_p_i__events.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__spi__execution__status.html',1,'']]], + ['spi_20frame_20format',['SPI Frame Format',['../group__spi__frame__format__ctrls.html',1,'']]], + ['spi_20interface',['SPI Interface',['../group__spi__interface__gr.html',1,'']]], + ['spi_20miscellaneous_20controls',['SPI Miscellaneous Controls',['../group__spi__misc__ctrls.html',1,'']]], + ['spi_20mode_20controls',['SPI Mode Controls',['../group__spi__mode__ctrls.html',1,'']]], + ['spi_20slave_20select_20mode',['SPI Slave Select Mode',['../group__spi__slave__select__mode__ctrls.html',1,'']]], + ['status_20error_20codes',['Status Error Codes',['../group__usart__execution__status.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/groups_75.html b/CMSIS/Documentation/Driver/html/search/groups_75.html new file mode 100644 index 0000000..66cc734 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/groups_75.js b/CMSIS/Documentation/Driver/html/search/groups_75.js new file mode 100644 index 0000000..eff288a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/groups_75.js @@ -0,0 +1,26 @@ +var searchData= +[ + ['usart_20clock_20phase',['USART Clock Phase',['../group__usart__clock__phase.html',1,'']]], + ['usart_20clock_20polarity',['USART Clock Polarity',['../group__usart__clock__polarity.html',1,'']]], + ['usart_20control_20codes',['USART Control Codes',['../group___u_s_a_r_t__control.html',1,'']]], + ['usart_20data_20bits',['USART Data Bits',['../group__usart__data__bits.html',1,'']]], + ['usart_20events',['USART Events',['../group___u_s_a_r_t__events.html',1,'']]], + ['usart_20flow_20control',['USART Flow Control',['../group__usart__flow__control.html',1,'']]], + ['usart_20interface',['USART Interface',['../group__usart__interface__gr.html',1,'']]], + ['usart_20miscellaneous_20control',['USART Miscellaneous Control',['../group__usart__misc__control.html',1,'']]], + ['usart_20mode_20control',['USART Mode Control',['../group__usart__mode__control.html',1,'']]], + ['usart_20parity_20bit',['USART Parity Bit',['../group__usart__parity__bit.html',1,'']]], + ['usart_20stop_20bits',['USART Stop Bits',['../group__usart__stop__bits.html',1,'']]], + ['usb_20endpoint_20type',['USB Endpoint Type',['../group___u_s_b__endpoint__type.html',1,'']]], + ['usb_20interface',['USB Interface',['../group__usb__interface__gr.html',1,'']]], + ['usb_20speed',['USB Speed',['../group___u_s_b__speed.html',1,'']]], + ['usbd_20device_20events',['USBD Device Events',['../group___u_s_b_d__dev__events.html',1,'']]], + ['usbd_20endpoint_20events',['USBD Endpoint Events',['../group___u_s_b_d__ep__events.html',1,'']]], + ['usb_20device_20interface',['USB Device Interface',['../group__usbd__interface__gr.html',1,'']]], + ['usb_20ohci_2fehci',['USB OHCI/EHCI',['../group__usbh__hci__gr.html',1,'']]], + ['usb_20host',['USB Host',['../group__usbh__host__gr.html',1,'']]], + ['usb_20host_20interface',['USB Host Interface',['../group__usbh__interface__gr.html',1,'']]], + ['usbh_20packet_20information',['USBH Packet Information',['../group___u_s_b_h__packets.html',1,'']]], + ['usbh_20pipe_20events',['USBH Pipe Events',['../group___u_s_b_h__pipe__events.html',1,'']]], + ['usbh_20port_20events',['USBH Port Events',['../group___u_s_b_h__port__events.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/mag_sel.png b/CMSIS/Documentation/Driver/html/search/mag_sel.png new file mode 100644 index 0000000..81f6040 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/search/mag_sel.png differ diff --git a/CMSIS/Documentation/Driver/html/search/nomatches.html b/CMSIS/Documentation/Driver/html/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/pages_64.html b/CMSIS/Documentation/Driver/html/search/pages_64.html new file mode 100644 index 0000000..f416a91 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/pages_64.js b/CMSIS/Documentation/Driver/html/search/pages_64.js new file mode 100644 index 0000000..51694d3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['driver_20validation',['Driver Validation',['../_driver_validation.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/pages_6f.html b/CMSIS/Documentation/Driver/html/search/pages_6f.html new file mode 100644 index 0000000..9c79c3f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/pages_6f.js b/CMSIS/Documentation/Driver/html/search/pages_6f.js new file mode 100644 index 0000000..277cca0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['overview',['Overview',['../index.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/pages_72.html b/CMSIS/Documentation/Driver/html/search/pages_72.html new file mode 100644 index 0000000..ee0d002 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/pages_72.js b/CMSIS/Documentation/Driver/html/search/pages_72.js new file mode 100644 index 0000000..3016e20 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_72.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['revision_20history_20of_20cmsis_2ddriver',['Revision History of CMSIS-Driver',['../driver_revision_history.html',1,'']]], + ['reference_20implementation',['Reference Implementation',['../_reference_implementation.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/pages_74.html b/CMSIS/Documentation/Driver/html/search/pages_74.html new file mode 100644 index 0000000..bbff83e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/pages_74.js b/CMSIS/Documentation/Driver/html/search/pages_74.js new file mode 100644 index 0000000..4333d7b --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/pages_74.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['theory_20of_20operation',['Theory of Operation',['../_theory_operation.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/search.css b/CMSIS/Documentation/Driver/html/search/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/Driver/html/search/search.js b/CMSIS/Documentation/Driver/html/search/search.js new file mode 100644 index 0000000..b0cc786 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/search.js @@ -0,0 +1,815 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010111111111001111101111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111001111101111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 8: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 9: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001011001000110000101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 10: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000001001010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "files", + 3: "functions", + 4: "variables", + 5: "typedefs", + 6: "enums", + 7: "enumvalues", + 8: "defines", + 9: "groups", + 10: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/typedefs_61.js b/CMSIS/Documentation/Driver/html/search/typedefs_61.js new file mode 100644 index 0000000..a4a738f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/typedefs_61.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['arm_5fcan_5fsignalobjectevent_5ft',['ARM_CAN_SignalObjectEvent_t',['../group__can__interface__gr.html#ga7ceceac3e9aa0981c5cacfab88efb4eb',1,'Driver_CAN.h']]], + ['arm_5fcan_5fsignalunitevent_5ft',['ARM_CAN_SignalUnitEvent_t',['../group__can__interface__gr.html#gaac07b9fdf614bf439414f5417aaa376e',1,'Driver_CAN.h']]], + ['arm_5feth_5fmac_5fsignalevent_5ft',['ARM_ETH_MAC_SignalEvent_t',['../group__eth__mac__interface__gr.html#gadfc95cb09c541a29a72da86963668726',1,'Driver_ETH_MAC.h']]], + ['arm_5feth_5fphy_5fread_5ft',['ARM_ETH_PHY_Read_t',['../group__eth__phy__interface__gr.html#ga987d5dd36f179192721c03df37d93e87',1,'Driver_ETH_PHY.h']]], + ['arm_5feth_5fphy_5fwrite_5ft',['ARM_ETH_PHY_Write_t',['../group__eth__phy__interface__gr.html#gaf690fde16281b25f2ffa07f9c4e8e240',1,'Driver_ETH_PHY.h']]], + ['arm_5fflash_5fsignalevent_5ft',['ARM_Flash_SignalEvent_t',['../group__flash__interface__gr.html#gabeb4ad43b1e6fa4ed956cd5c9371d327',1,'Driver_Flash.h']]], + ['arm_5fi2c_5fsignalevent_5ft',['ARM_I2C_SignalEvent_t',['../group__i2c__interface__gr.html#ga24277c48248a09b0dd7f12bbe22ce13c',1,'Driver_I2C.h']]], + ['arm_5fmci_5fsignalevent_5ft',['ARM_MCI_SignalEvent_t',['../group__mci__interface__gr.html#ga0d14651f6788c1ffd81544602565faf1',1,'Driver_MCI.h']]], + ['arm_5fnand_5fsignalevent_5ft',['ARM_NAND_SignalEvent_t',['../group__nand__interface__gr.html#ga09f4cf2f2df0bb690bce38b13d77e50f',1,'Driver_NAND.h']]], + ['arm_5fsai_5fsignalevent_5ft',['ARM_SAI_SignalEvent_t',['../group__sai__interface__gr.html#gad8ca8e2459e540928f6315b3df6da0ee',1,'Driver_SAI.h']]], + ['arm_5fspi_5fsignalevent_5ft',['ARM_SPI_SignalEvent_t',['../group__spi__interface__gr.html#gafde9205364241ee81290adc0481c6640',1,'Driver_SPI.h']]], + ['arm_5fusart_5fsignalevent_5ft',['ARM_USART_SignalEvent_t',['../group__usart__interface__gr.html#gaa578c3829eea207e9e48df6cb6f038a1',1,'Driver_USART.h']]], + ['arm_5fusbd_5fsignaldeviceevent_5ft',['ARM_USBD_SignalDeviceEvent_t',['../group__usbd__interface__gr.html#ga7c1878799699ddd34cec696da499f7bd',1,'Driver_USBD.h']]], + ['arm_5fusbd_5fsignalendpointevent_5ft',['ARM_USBD_SignalEndpointEvent_t',['../group__usbd__interface__gr.html#gaae754763700fc5059a6bde57ea2d4e2c',1,'Driver_USBD.h']]], + ['arm_5fusbh_5fhci_5finterrupt_5ft',['ARM_USBH_HCI_Interrupt_t',['../group__usbh__hci__gr.html#gac60df9d1f2b3a769f2c30141800a9806',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fpipe_5fhandle',['ARM_USBH_PIPE_HANDLE',['../group__usbh__host__gr.html#ga2e4d0ebd0851ba7bf364ae1d8948672c',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fsignalpipeevent_5ft',['ARM_USBH_SignalPipeEvent_t',['../group__usbh__host__gr.html#ga1a32ebfe0db4a002aae2b0c0f8ece30c',1,'Driver_USBH.h']]], + ['arm_5fusbh_5fsignalportevent_5ft',['ARM_USBH_SignalPortEvent_t',['../group__usbh__host__gr.html#ga61edcbb6ee863fe87abee488d78e1051',1,'Driver_USBH.h']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_61.html b/CMSIS/Documentation/Driver/html/search/variables_61.html new file mode 100644 index 0000000..ff1f937 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_61.js b/CMSIS/Documentation/Driver/html/search/variables_61.js new file mode 100644 index 0000000..d5c2ed0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_61.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['abortsequence',['AbortSequence',['../group__nand__interface__gr.html#ad6e1d53e9028baff856899f795c0d0c8',1,'ARM_DRIVER_NAND']]], + ['aborttransfer',['AbortTransfer',['../group__mci__interface__gr.html#afa8103cc20ba96420b7471455bbb87e4',1,'ARM_DRIVER_MCI']]], + ['active',['active',['../group__usbd__interface__gr.html#ab22b96a3efad48f5a542f46c1b224800',1,'ARM_USBD_STATE']]], + ['address_5f10_5fbit',['address_10_bit',['../group__i2c__interface__gr.html#a4ffaaf168a9f43e98d710abff5861ed5',1,'ARM_I2C_CAPABILITIES']]], + ['api',['api',['../group__common__drv__gr.html#ad180da20fbde1d3dafc074af87c19540',1,'ARM_DRIVER_VERSION']]], + ['arbitration_5flost',['arbitration_lost',['../group__i2c__interface__gr.html#ab3e3c8eeeae7fbe3c51dcb3d4104af24',1,'ARM_I2C_STATUS']]], + ['asynchronous',['asynchronous',['../group__sai__interface__gr.html#a75ba2507ea29601a309393e794f4413d',1,'ARM_SAI_CAPABILITIES::asynchronous()'],['../group__usart__interface__gr.html#a75ba2507ea29601a309393e794f4413d',1,'ARM_USART_CAPABILITIES::asynchronous()']]], + ['auto_5fsplit',['auto_split',['../group__usbh__host__gr.html#a37eab684b9a8aa496bfec9fede42fe27',1,'ARM_USBH_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_62.html b/CMSIS/Documentation/Driver/html/search/variables_62.html new file mode 100644 index 0000000..c55a15e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_62.js b/CMSIS/Documentation/Driver/html/search/variables_62.js new file mode 100644 index 0000000..4d35765 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_62.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['b',['b',['../group__eth__interface__gr.html#ab590318ac859d0e57e15c3dd6c62a605',1,'ARM_ETH_MAC_ADDR']]], + ['brs',['brs',['../group__can__interface__gr.html#a3539c043c5868c59f76c736fe2bcadf4',1,'ARM_CAN_MSG_INFO']]], + ['bus_5ferror',['bus_error',['../group__i2c__interface__gr.html#a43b1d210c48f4361c5054ba69bcae702',1,'ARM_I2C_STATUS']]], + ['busy',['busy',['../group__i2c__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_I2C_STATUS::busy()'],['../group__nand__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_NAND_STATUS::busy()'],['../group__flash__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_FLASH_STATUS::busy()'],['../group__spi__interface__gr.html#a50c88f3c1d787773e2ac1b59533f034a',1,'ARM_SPI_STATUS::busy()']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_63.html b/CMSIS/Documentation/Driver/html/search/variables_63.html new file mode 100644 index 0000000..c649c81 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_63.js b/CMSIS/Documentation/Driver/html/search/variables_63.js new file mode 100644 index 0000000..d9b39e5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_63.js @@ -0,0 +1,31 @@ +var searchData= +[ + ['cardpower',['CardPower',['../group__mci__interface__gr.html#a73334c737658b227ef3097343d5c78bb',1,'ARM_DRIVER_MCI']]], + ['ccs',['ccs',['../group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe',1,'ARM_MCI_STATUS::ccs()'],['../group__mci__interface__gr.html#a13c956ba993083f1e59379968e2badbe',1,'ARM_MCI_CAPABILITIES::ccs()']]], + ['ccs_5ftimeout',['ccs_timeout',['../group__mci__interface__gr.html#a9739c230a13b46482feb5475d257e482',1,'ARM_MCI_CAPABILITIES']]], + ['cd_5fevent',['cd_event',['../group__mci__interface__gr.html#abcabfa504d3226c723d9bf5debe2f164',1,'ARM_MCI_CAPABILITIES']]], + ['cd_5fstate',['cd_state',['../group__mci__interface__gr.html#af47e73979b028c86c7c1fbe39b095140',1,'ARM_MCI_CAPABILITIES']]], + ['ce_5flines',['ce_lines',['../group__nand__interface__gr.html#ad5dd0fcdd7f6d5e5cd739f73323a2b11',1,'ARM_NAND_CAPABILITIES']]], + ['ce_5fmanual',['ce_manual',['../group__nand__interface__gr.html#a2b8044d986995b183b057217643466bf',1,'ARM_NAND_CAPABILITIES']]], + ['checksum_5foffload_5frx_5ficmp',['checksum_offload_rx_icmp',['../group__eth__mac__interface__gr.html#a142179445bfdbaaaf0d451f277fb0e96',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5fip4',['checksum_offload_rx_ip4',['../group__eth__mac__interface__gr.html#a0051111be2e389c3161da1c444746216',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5fip6',['checksum_offload_rx_ip6',['../group__eth__mac__interface__gr.html#a674b2306c64901e924b3cb7bb882f32f',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5ftcp',['checksum_offload_rx_tcp',['../group__eth__mac__interface__gr.html#a730d6be6a7b868e0690d9548e77b7aae',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5frx_5fudp',['checksum_offload_rx_udp',['../group__eth__mac__interface__gr.html#a5a447f05a5fbfd35896aad9cd769511c',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5ficmp',['checksum_offload_tx_icmp',['../group__eth__mac__interface__gr.html#a7b701bac9d66886b5c6964b20c6ca55a',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5fip4',['checksum_offload_tx_ip4',['../group__eth__mac__interface__gr.html#ac787d70407ce70e28724932fb32ef0ba',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5fip6',['checksum_offload_tx_ip6',['../group__eth__mac__interface__gr.html#a8f7a154565e652d976b9e65bf3516504',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5ftcp',['checksum_offload_tx_tcp',['../group__eth__mac__interface__gr.html#a6c2b80bbfe520f3e7808cf3d4aaedb45',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['checksum_5foffload_5ftx_5fudp',['checksum_offload_tx_udp',['../group__eth__mac__interface__gr.html#ab3f9560668a087606c40cd81b935396b',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['chipenable',['ChipEnable',['../group__nand__interface__gr.html#ac090c205fe3d1b3dcb7288b06468bbe5',1,'ARM_DRIVER_NAND']]], + ['codeword_5fsize',['codeword_size',['../group__nand__interface__gr.html#ae8cff208d9efb5067d38ced675916c66',1,'ARM_NAND_ECC_INFO']]], + ['command_5factive',['command_active',['../group__mci__interface__gr.html#aa22ef7c7597e90835bd67d5795ba757e',1,'ARM_MCI_STATUS']]], + ['command_5ferror',['command_error',['../group__mci__interface__gr.html#afca11cd2ce661c67455a6d75328848cc',1,'ARM_MCI_STATUS']]], + ['command_5ftimeout',['command_timeout',['../group__mci__interface__gr.html#a56e426979c3872254c156e9ae7eead5b',1,'ARM_MCI_STATUS']]], + ['companding',['companding',['../group__sai__interface__gr.html#a77e4d8466d2bde30e6583b9ad8ba8c82',1,'ARM_SAI_CAPABILITIES']]], + ['connected',['connected',['../group__usbh__host__gr.html#abf1a0792d6af28877b0abd141d5524ac',1,'ARM_USBH_PORT_STATE']]], + ['control',['Control',['../group__can__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_CAN::Control()'],['../group__eth__mac__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_ETH_MAC::Control()'],['../group__i2c__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_I2C::Control()'],['../group__mci__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_MCI::Control()'],['../group__nand__interface__gr.html#a706fedbc88921808e210d75b7b5da168',1,'ARM_DRIVER_NAND::Control()'],['../group__sai__interface__gr.html#a80455fc2c7355b1850098710fd66a244',1,'ARM_DRIVER_SAI::Control()'],['../group__spi__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_SPI::Control()'],['../group__usart__interface__gr.html#a6e0f47a92f626a971c5197fca6545505',1,'ARM_DRIVER_USART::Control()']]], + ['controltimer',['ControlTimer',['../group__eth__mac__interface__gr.html#ab6bdbdc7fdfcc52e027201738b88b431',1,'ARM_DRIVER_ETH_MAC']]], + ['correctable_5fbits',['correctable_bits',['../group__nand__interface__gr.html#ae65f920c4ad99fd0c6bdf5fd8c4d161a',1,'ARM_NAND_ECC_INFO']]], + ['cts',['cts',['../group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262',1,'ARM_USART_MODEM_STATUS::cts()'],['../group__usart__interface__gr.html#a0a4ccfb729b3a40a5fd611021268c262',1,'ARM_USART_CAPABILITIES::cts()']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_64.html b/CMSIS/Documentation/Driver/html/search/variables_64.html new file mode 100644 index 0000000..fee6769 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_64.js b/CMSIS/Documentation/Driver/html/search/variables_64.js new file mode 100644 index 0000000..c854d23 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_64.js @@ -0,0 +1,30 @@ +var searchData= +[ + ['data_5flost',['data_lost',['../group__spi__interface__gr.html#a9675630df67587ecd171c7ef12b9d22a',1,'ARM_SPI_STATUS']]], + ['data_5fwidth',['data_width',['../group__flash__interface__gr.html#a04c173610dd0a545ecae308e342aafb0',1,'ARM_FLASH_CAPABILITIES']]], + ['data_5fwidth_5f16',['data_width_16',['../group__nand__interface__gr.html#a0f22baea13daa9101bf6fc1fdfddc747',1,'ARM_NAND_CAPABILITIES']]], + ['data_5fwidth_5f4',['data_width_4',['../group__mci__interface__gr.html#a950669a8c88b49c8da4c56163b45a79d',1,'ARM_MCI_CAPABILITIES']]], + ['data_5fwidth_5f4_5fddr',['data_width_4_ddr',['../group__mci__interface__gr.html#abb1a604b0ee4f7e3510409747890e41e',1,'ARM_MCI_CAPABILITIES']]], + ['data_5fwidth_5f8',['data_width_8',['../group__mci__interface__gr.html#a808703d6c70a501464e156e55f5cabd2',1,'ARM_MCI_CAPABILITIES']]], + ['data_5fwidth_5f8_5fddr',['data_width_8_ddr',['../group__mci__interface__gr.html#acd5f6dce3a548d12c292e8cd17e4e9e2',1,'ARM_MCI_CAPABILITIES']]], + ['dcd',['dcd',['../group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c',1,'ARM_USART_MODEM_STATUS::dcd()'],['../group__usart__interface__gr.html#aa56a9ad6e266df78157f0e04feb4b78c',1,'ARM_USART_CAPABILITIES::dcd()']]], + ['ddr',['ddr',['../group__nand__interface__gr.html#aa9acfde38637fe749aa9271c0a8dae1a',1,'ARM_NAND_CAPABILITIES']]], + ['ddr2',['ddr2',['../group__nand__interface__gr.html#ae086693990cbd5d628014c0fcc7c1f2c',1,'ARM_NAND_CAPABILITIES']]], + ['ddr2_5ftiming_5fmode',['ddr2_timing_mode',['../group__nand__interface__gr.html#a6d9b66da0e56d04d545e0bb6841891b2',1,'ARM_NAND_CAPABILITIES']]], + ['ddr_5ftiming_5fmode',['ddr_timing_mode',['../group__nand__interface__gr.html#a00c1f5db7d7c4abe7556733c36da7783',1,'ARM_NAND_CAPABILITIES']]], + ['deviceconnect',['DeviceConnect',['../group__usbd__interface__gr.html#a71d312ce5c5335c6a035da55c25848e4',1,'ARM_DRIVER_USBD']]], + ['devicedisconnect',['DeviceDisconnect',['../group__usbd__interface__gr.html#adff9dd8a0dc764e78b0271113ae3b0af',1,'ARM_DRIVER_USBD']]], + ['devicegetstate',['DeviceGetState',['../group__usbd__interface__gr.html#ab906727173cbe8372bdc26ef20581baa',1,'ARM_DRIVER_USBD']]], + ['devicepower',['DevicePower',['../group__nand__interface__gr.html#a9ba6f3066cda5c8d781c309a17315a58',1,'ARM_DRIVER_NAND']]], + ['deviceremotewakeup',['DeviceRemoteWakeup',['../group__usbd__interface__gr.html#a649343be3fcfc44431d19f51d13e03b3',1,'ARM_DRIVER_USBD']]], + ['devicesetaddress',['DeviceSetAddress',['../group__usbd__interface__gr.html#a4e927b5593f416a8641e12016208b5d5',1,'ARM_DRIVER_USBD']]], + ['direction',['direction',['../group__i2c__interface__gr.html#a2148ffb99828aeaced6a5655502434ac',1,'ARM_I2C_STATUS']]], + ['dlc',['dlc',['../group__can__interface__gr.html#a811fbb0cb2c2263b1a7440a7e9d78239',1,'ARM_CAN_MSG_INFO']]], + ['driver_5fstrength_5f18',['driver_strength_18',['../group__nand__interface__gr.html#ae672b2a65dd3d0b93812c088491c4552',1,'ARM_NAND_CAPABILITIES']]], + ['driver_5fstrength_5f25',['driver_strength_25',['../group__nand__interface__gr.html#ae87c19872b838dac7d3136a3fd466f6a',1,'ARM_NAND_CAPABILITIES']]], + ['driver_5fstrength_5f50',['driver_strength_50',['../group__nand__interface__gr.html#aef3d6e1522a6cf7fb87fd113dcd43ad5',1,'ARM_NAND_CAPABILITIES']]], + ['drv',['drv',['../group__common__drv__gr.html#adcd153bc4507926c792e86ebe74e6455',1,'ARM_DRIVER_VERSION']]], + ['dsr',['dsr',['../group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2',1,'ARM_USART_MODEM_STATUS::dsr()'],['../group__usart__interface__gr.html#a437895b17519a16f920ae07461dd67d2',1,'ARM_USART_CAPABILITIES::dsr()']]], + ['dtr',['dtr',['../group__usart__interface__gr.html#aa3cc092c82fdc3e5e6646460be6ae9fd',1,'ARM_USART_CAPABILITIES']]], + ['duplex',['duplex',['../group__eth__interface__gr.html#a44b6cae894d7311dcdae7e93969c3c09',1,'ARM_ETH_LINK_INFO']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_65.html b/CMSIS/Documentation/Driver/html/search/variables_65.html new file mode 100644 index 0000000..95b64e6 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_65.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_65.js b/CMSIS/Documentation/Driver/html/search/variables_65.js new file mode 100644 index 0000000..196ce24 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_65.js @@ -0,0 +1,41 @@ +var searchData= +[ + ['ecc_5ferror',['ecc_error',['../group__nand__interface__gr.html#a7707d2200a3bf8f49b148ffc8ded7636',1,'ARM_NAND_STATUS']]], + ['ecc_5foffset',['ecc_offset',['../group__nand__interface__gr.html#a22d6a1813a47a7044f7acb478f8e9eb8',1,'ARM_NAND_ECC_INFO']]], + ['ecc_5fsize',['ecc_size',['../group__nand__interface__gr.html#a22365f6a2af1171a1c3629c8ae5fe001',1,'ARM_NAND_ECC_INFO']]], + ['edl',['edl',['../group__can__interface__gr.html#ab6883964c9d4bdf60616684e8d2459df',1,'ARM_CAN_MSG_INFO']]], + ['end',['end',['../group__flash__interface__gr.html#a204a3f4fa39b9c007f9784d3e4af4667',1,'ARM_FLASH_SECTOR']]], + ['endpointconfigure',['EndpointConfigure',['../group__usbd__interface__gr.html#a9fcafd15149d35022b05cf3c396e714e',1,'ARM_DRIVER_USBD']]], + ['endpointstall',['EndpointStall',['../group__usbd__interface__gr.html#a6fbcf63ac9f962787cddc8f11a44dccb',1,'ARM_DRIVER_USBD']]], + ['endpointtransfer',['EndpointTransfer',['../group__usbd__interface__gr.html#a0cc21434bc57e696fabf0207925fe5ff',1,'ARM_DRIVER_USBD']]], + ['endpointtransferabort',['EndpointTransferAbort',['../group__usbd__interface__gr.html#a4e36fd46291f71e4a748264e2f6ae431',1,'ARM_DRIVER_USBD']]], + ['endpointtransfergetresult',['EndpointTransferGetResult',['../group__usbd__interface__gr.html#a217e38c26bbcdecbad8c984753b2597a',1,'ARM_DRIVER_USBD']]], + ['endpointunconfigure',['EndpointUnconfigure',['../group__usbd__interface__gr.html#ad45578fffbd046231f69aa058d29bba5',1,'ARM_DRIVER_USBD']]], + ['erase_5fchip',['erase_chip',['../group__flash__interface__gr.html#af5ec2b569c193fc5024c2739f46b328a',1,'ARM_FLASH_CAPABILITIES']]], + ['erasechip',['EraseChip',['../group__flash__interface__gr.html#ae873705c743d94572fb6500421e15760',1,'ARM_DRIVER_FLASH']]], + ['erased_5fvalue',['erased_value',['../group__flash__interface__gr.html#a85c3826bf20669d38e466dfd376994db',1,'ARM_FLASH_INFO']]], + ['erasesector',['EraseSector',['../group__flash__interface__gr.html#ad9d78f9fe07aabf12b23b95239818b55',1,'ARM_DRIVER_FLASH']]], + ['error',['error',['../group__flash__interface__gr.html#aa8d183302fdfa4a6892f1d80300cdb32',1,'ARM_FLASH_STATUS']]], + ['esi',['esi',['../group__can__interface__gr.html#ada78e3124de6adf5a5d212f9ebc4bbe0',1,'ARM_CAN_MSG_INFO']]], + ['event_5fconnect',['event_connect',['../group__usbh__host__gr.html#ae76b779cb9fdf447b20c8b6beed2d534',1,'ARM_USBH_CAPABILITIES']]], + ['event_5fcts',['event_cts',['../group__usart__interface__gr.html#a4ebe5ddec8d99a63843f2a3c70ac85f9',1,'ARM_USART_CAPABILITIES']]], + ['event_5fdcd',['event_dcd',['../group__usart__interface__gr.html#a7c1dd043d0db9738d6b5fa8d89211446',1,'ARM_USART_CAPABILITIES']]], + ['event_5fdevice_5fready',['event_device_ready',['../group__nand__interface__gr.html#a5f347e9b63764bbb657f52dc20682128',1,'ARM_NAND_CAPABILITIES']]], + ['event_5fdisconnect',['event_disconnect',['../group__usbh__host__gr.html#ab83941051cac8e19807b887354dc42fc',1,'ARM_USBH_CAPABILITIES']]], + ['event_5fdsr',['event_dsr',['../group__usart__interface__gr.html#aefdb61f16498d650b5a7f5f9b62779df',1,'ARM_USART_CAPABILITIES']]], + ['event_5fframe_5ferror',['event_frame_error',['../group__sai__interface__gr.html#acc06ba75f18af9862d171426abc3273e',1,'ARM_SAI_CAPABILITIES']]], + ['event_5fmode_5ffault',['event_mode_fault',['../group__spi__interface__gr.html#a309619714f0c4febaa497ebdb9b7e3ca',1,'ARM_SPI_CAPABILITIES']]], + ['event_5fovercurrent',['event_overcurrent',['../group__usbh__host__gr.html#acd3087b3a4a7691595dd75568c12d696',1,'ARM_USBH_CAPABILITIES']]], + ['event_5fready',['event_ready',['../group__flash__interface__gr.html#add296ba516c8fc17ba51e30f2a00f0a9',1,'ARM_FLASH_CAPABILITIES']]], + ['event_5fri',['event_ri',['../group__usart__interface__gr.html#ab55f90aec5f909ff3a75bf36e61312ea',1,'ARM_USART_CAPABILITIES']]], + ['event_5frx_5fframe',['event_rx_frame',['../group__eth__mac__interface__gr.html#a8c8f1ac2bf053a9bac98c476646a6018',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['event_5frx_5ftimeout',['event_rx_timeout',['../group__usart__interface__gr.html#afe469796cfca4ea61bd6181afb4916be',1,'ARM_USART_CAPABILITIES']]], + ['event_5ftx_5fcomplete',['event_tx_complete',['../group__usart__interface__gr.html#a0190aabe8d8f59176be8d693f8874fb3',1,'ARM_USART_CAPABILITIES']]], + ['event_5ftx_5fframe',['event_tx_frame',['../group__eth__mac__interface__gr.html#a1b4af3590d59ea4f8e845b4239a4e445',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['event_5fvbus_5foff',['event_vbus_off',['../group__usbd__interface__gr.html#a72d905bc20735bafda40d73c91829709',1,'ARM_USBD_CAPABILITIES']]], + ['event_5fvbus_5fon',['event_vbus_on',['../group__usbd__interface__gr.html#a53f95b9ecb7c84197947e7542501c7d3',1,'ARM_USBD_CAPABILITIES']]], + ['event_5fwakeup',['event_wakeup',['../group__eth__mac__interface__gr.html#a7536d9b9818b20b6974a712e0449439b',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['exact_5ffiltering',['exact_filtering',['../group__can__interface__gr.html#a886337af58da4f995529eba228fb9b7a',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['executesequence',['ExecuteSequence',['../group__nand__interface__gr.html#af0dd5e96fbcc5c15bb183363f8541af8',1,'ARM_DRIVER_NAND']]], + ['external_5floopback',['external_loopback',['../group__can__interface__gr.html#a2b76df7e4bfbdd9866cc906415e626c9',1,'ARM_CAN_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_66.html b/CMSIS/Documentation/Driver/html/search/variables_66.html new file mode 100644 index 0000000..9ff42ab --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_66.js b/CMSIS/Documentation/Driver/html/search/variables_66.js new file mode 100644 index 0000000..b6c0ffd --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_66.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['fd_5fmode',['fd_mode',['../group__can__interface__gr.html#a15d22d5906d419ed1a7ca0968be00a04',1,'ARM_CAN_CAPABILITIES']]], + ['flow_5fcontrol_5fcts',['flow_control_cts',['../group__usart__interface__gr.html#a287da15773bb24a301cbfd806975e1e9',1,'ARM_USART_CAPABILITIES']]], + ['flow_5fcontrol_5frts',['flow_control_rts',['../group__usart__interface__gr.html#a1d55dd339a08293018608775fc8b4859',1,'ARM_USART_CAPABILITIES']]], + ['frame_5ferror',['frame_error',['../group__sai__interface__gr.html#a1b4f69a2caf19ef9fd75cf27ae3932f9',1,'ARM_SAI_STATUS']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_67.html b/CMSIS/Documentation/Driver/html/search/variables_67.html new file mode 100644 index 0000000..a7dd438 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_67.js b/CMSIS/Documentation/Driver/html/search/variables_67.js new file mode 100644 index 0000000..7329708 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_67.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['general_5fcall',['general_call',['../group__i2c__interface__gr.html#ab65804439f6f5beda8da30381b0ad22d',1,'ARM_I2C_STATUS']]], + ['getcapabilities',['GetCapabilities',['../group__can__interface__gr.html#a62c0c62c2bf482c000b1b2a2c817a96f',1,'ARM_DRIVER_CAN::GetCapabilities()'],['../group__eth__mac__interface__gr.html#a9fd725bb058c584a9ced9c579561cdf1',1,'ARM_DRIVER_ETH_MAC::GetCapabilities()'],['../group__i2c__interface__gr.html#a5dfa74ca82e0af995d43da61e08c3103',1,'ARM_DRIVER_I2C::GetCapabilities()'],['../group__mci__interface__gr.html#a5648b4224e0346ba5e20fefc7e83aee8',1,'ARM_DRIVER_MCI::GetCapabilities()'],['../group__nand__interface__gr.html#adab9d081aee3e5d1f83c6911e45ceaa6',1,'ARM_DRIVER_NAND::GetCapabilities()'],['../group__flash__interface__gr.html#a25076bd7274af5d3b0af6380ed1f0331',1,'ARM_DRIVER_FLASH::GetCapabilities()'],['../group__sai__interface__gr.html#a7e230744b9898cabf80ee6f2595569f6',1,'ARM_DRIVER_SAI::GetCapabilities()'],['../group__spi__interface__gr.html#a065b5fc24d0204692f0f95a44351ac1e',1,'ARM_DRIVER_SPI::GetCapabilities()'],['../group__usart__interface__gr.html#a9cec078ea816ece7b2d989f35caadb12',1,'ARM_DRIVER_USART::GetCapabilities()'],['../group__usbd__interface__gr.html#a52045edf0f555a0f0ecdf37a5e169f7a',1,'ARM_DRIVER_USBD::GetCapabilities()'],['../group__usbh__host__gr.html#aaba1d9458e32389c21c3d899f9cb9313',1,'ARM_DRIVER_USBH::GetCapabilities()'],['../group__usbh__hci__gr.html#a7a41769405bb3bb4cc9eaba26cf220d4',1,'ARM_DRIVER_USBH_HCI::GetCapabilities()']]], + ['getclock',['GetClock',['../group__can__interface__gr.html#a21063f38e762cf29dfd3f5991ee936e2',1,'ARM_DRIVER_CAN']]], + ['getdatacount',['GetDataCount',['../group__i2c__interface__gr.html#ad421a9b9b07fd6d3e6537396c2b98788',1,'ARM_DRIVER_I2C::GetDataCount()'],['../group__spi__interface__gr.html#ad1d892ab3932f65cd7cdf2d0a91ae5da',1,'ARM_DRIVER_SPI::GetDataCount()']]], + ['getdevicebusy',['GetDeviceBusy',['../group__nand__interface__gr.html#ac9bc93fb1a089c6ac71428122f3a072e',1,'ARM_DRIVER_NAND']]], + ['getframenumber',['GetFrameNumber',['../group__usbd__interface__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919',1,'ARM_DRIVER_USBD::GetFrameNumber()'],['../group__usbh__host__gr.html#a31d1785d6d46f75241ebbf6b5a6b4919',1,'ARM_DRIVER_USBH::GetFrameNumber()']]], + ['getinfo',['GetInfo',['../group__flash__interface__gr.html#ae64d4ee61b7a7ee0b38a0ef2b61f1db2',1,'ARM_DRIVER_FLASH']]], + ['getlinkinfo',['GetLinkInfo',['../group__eth__phy__interface__gr.html#ac162bfaf93512fa0966bfbb923c45463',1,'ARM_DRIVER_ETH_PHY']]], + ['getlinkstate',['GetLinkState',['../group__eth__phy__interface__gr.html#a0e25b2f267edc874f1bd785175fcf08a',1,'ARM_DRIVER_ETH_PHY']]], + ['getmacaddress',['GetMacAddress',['../group__eth__mac__interface__gr.html#a02837059933cd04b04bf795a7138f218',1,'ARM_DRIVER_ETH_MAC']]], + ['getmodemstatus',['GetModemStatus',['../group__usart__interface__gr.html#a517a7a98a444126734782beb4951a9db',1,'ARM_DRIVER_USART']]], + ['getrxcount',['GetRxCount',['../group__sai__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71',1,'ARM_DRIVER_SAI::GetRxCount()'],['../group__usart__interface__gr.html#a758c7822edf6ac18f82eb33c9dc09d71',1,'ARM_DRIVER_USART::GetRxCount()']]], + ['getrxframesize',['GetRxFrameSize',['../group__eth__mac__interface__gr.html#a3286cc9c7624168b162aa3ce3cbe135e',1,'ARM_DRIVER_ETH_MAC']]], + ['getrxframetime',['GetRxFrameTime',['../group__eth__mac__interface__gr.html#a8ae5a588bf4055bba3de73cfba78f7e8',1,'ARM_DRIVER_ETH_MAC']]], + ['getstatus',['GetStatus',['../group__can__interface__gr.html#ad60ff24982cdb3ce38b8c17e0b4f0acc',1,'ARM_DRIVER_CAN::GetStatus()'],['../group__i2c__interface__gr.html#ad4b47653bc47cdb02965dd311e88b96a',1,'ARM_DRIVER_I2C::GetStatus()'],['../group__mci__interface__gr.html#a2dc63353d6869c0ea2d3d29155c88b49',1,'ARM_DRIVER_MCI::GetStatus()'],['../group__nand__interface__gr.html#aa43ee108ee5bf29e40485ca89b34188b',1,'ARM_DRIVER_NAND::GetStatus()'],['../group__flash__interface__gr.html#afc1db6f33f777784f3c95efc816d4856',1,'ARM_DRIVER_FLASH::GetStatus()'],['../group__sai__interface__gr.html#a310d55d55bd7c6b0393d43bb994db708',1,'ARM_DRIVER_SAI::GetStatus()'],['../group__spi__interface__gr.html#a7305e7248420cdb4b02ceba87672178d',1,'ARM_DRIVER_SPI::GetStatus()'],['../group__usart__interface__gr.html#a055ad4095356a022886828009a980316',1,'ARM_DRIVER_USART::GetStatus()']]], + ['gettxcount',['GetTxCount',['../group__sai__interface__gr.html#a0b28b2c21016702f50c28655653099df',1,'ARM_DRIVER_SAI::GetTxCount()'],['../group__usart__interface__gr.html#a0b28b2c21016702f50c28655653099df',1,'ARM_DRIVER_USART::GetTxCount()']]], + ['gettxframetime',['GetTxFrameTime',['../group__eth__mac__interface__gr.html#acf081f5020f4ef1435bcff7333a70b93',1,'ARM_DRIVER_ETH_MAC']]], + ['getversion',['GetVersion',['../group__can__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_CAN::GetVersion()'],['../group__eth__mac__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_ETH_MAC::GetVersion()'],['../group__eth__phy__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_ETH_PHY::GetVersion()'],['../group__i2c__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_I2C::GetVersion()'],['../group__mci__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_MCI::GetVersion()'],['../group__nand__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_NAND::GetVersion()'],['../group__flash__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_FLASH::GetVersion()'],['../group__sai__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_SAI::GetVersion()'],['../group__spi__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_SPI::GetVersion()'],['../group__usart__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USART::GetVersion()'],['../group__usbd__interface__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USBD::GetVersion()'],['../group__usbh__host__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USBH::GetVersion()'],['../group__usbh__hci__gr.html#a8834b281da48583845c044a81566c1b3',1,'ARM_DRIVER_USBH_HCI::GetVersion()']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_68.html b/CMSIS/Documentation/Driver/html/search/variables_68.html new file mode 100644 index 0000000..f11c2c9 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_68.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_68.js b/CMSIS/Documentation/Driver/html/search/variables_68.js new file mode 100644 index 0000000..fc8072f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['high_5fspeed',['high_speed',['../group__mci__interface__gr.html#a83ecf7d4472c55362750ef72d8f8f47d',1,'ARM_MCI_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_69.html b/CMSIS/Documentation/Driver/html/search/variables_69.html new file mode 100644 index 0000000..d4ddaf0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_69.js b/CMSIS/Documentation/Driver/html/search/variables_69.js new file mode 100644 index 0000000..0052467 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_69.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['id',['id',['../group__can__interface__gr.html#abaabdc509cdaba7df9f56c6c76f3ae19',1,'ARM_CAN_MSG_INFO']]], + ['initialize',['Initialize',['../group__can__interface__gr.html#a322b44b8e757887616b75035a8fd7027',1,'ARM_DRIVER_CAN::Initialize()'],['../group__eth__mac__interface__gr.html#aa34417c70cb8b43567c59aa530866cc7',1,'ARM_DRIVER_ETH_MAC::Initialize()'],['../group__eth__phy__interface__gr.html#a9f9e7173bf8fed4d774fa48da53739ba',1,'ARM_DRIVER_ETH_PHY::Initialize()'],['../group__i2c__interface__gr.html#ab0480980f67e0ebe0461ccea7873a65b',1,'ARM_DRIVER_I2C::Initialize()'],['../group__mci__interface__gr.html#ae51ec82c310aff0edda6220f9ebfd822',1,'ARM_DRIVER_MCI::Initialize()'],['../group__nand__interface__gr.html#a28b29ab7b6114bb97175bd40d18854ac',1,'ARM_DRIVER_NAND::Initialize()'],['../group__flash__interface__gr.html#a2d1eb2b5c3ee21ba5c92c37e89412567',1,'ARM_DRIVER_FLASH::Initialize()'],['../group__sai__interface__gr.html#a54a38e78d5fd7ca0d37174c81ec01731',1,'ARM_DRIVER_SAI::Initialize()'],['../group__spi__interface__gr.html#afac50d0b28860f7b569293e6b713f8a4',1,'ARM_DRIVER_SPI::Initialize()'],['../group__usart__interface__gr.html#a1a68601c09df8d37f3500ad373333962',1,'ARM_DRIVER_USART::Initialize()'],['../group__usbd__interface__gr.html#a84439aa5677d330d257a4b43e48d6426',1,'ARM_DRIVER_USBD::Initialize()'],['../group__usbh__host__gr.html#a5bf141e46b7ced3abe3466cae4d811fb',1,'ARM_DRIVER_USBH::Initialize()'],['../group__usbh__hci__gr.html#a40cbaad9fd2458b1008d31e1469903bb',1,'ARM_DRIVER_USBH_HCI::Initialize()']]], + ['inquireecc',['InquireECC',['../group__nand__interface__gr.html#aecd239806e9f08b77ce0d00f61e78cf8',1,'ARM_DRIVER_NAND']]], + ['internal_5floopback',['internal_loopback',['../group__can__interface__gr.html#af19cdbb26d3496ed7dd63a59a7c7711f',1,'ARM_CAN_CAPABILITIES']]], + ['irda',['irda',['../group__usart__interface__gr.html#a9a72c5f0209a9ccf840fc196e9a9dffa',1,'ARM_USART_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_6c.html b/CMSIS/Documentation/Driver/html/search/variables_6c.html new file mode 100644 index 0000000..6016f5c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6c.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_6c.js b/CMSIS/Documentation/Driver/html/search/variables_6c.js new file mode 100644 index 0000000..eaed56d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['last_5ferror_5fcode',['last_error_code',['../group__can__interface__gr.html#a2171ea8dff5e4b54e84728aa134854b6',1,'ARM_CAN_STATUS']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_6d.html b/CMSIS/Documentation/Driver/html/search/variables_6d.html new file mode 100644 index 0000000..b7924e3 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_6d.js b/CMSIS/Documentation/Driver/html/search/variables_6d.js new file mode 100644 index 0000000..e669d80 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6d.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['mac_5faddress',['mac_address',['../group__eth__mac__interface__gr.html#a7fdea04bacd9c0e12792751055ef6238',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['mask_5ffiltering',['mask_filtering',['../group__can__interface__gr.html#a2aa0e772d6cb8c30bb76ce1324423464',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['masterreceive',['MasterReceive',['../group__i2c__interface__gr.html#aa135ff2f4832d35ceb5d7e248159b981',1,'ARM_DRIVER_I2C']]], + ['mastertransmit',['MasterTransmit',['../group__i2c__interface__gr.html#a9e58f7ea5fd9476e06b45c70b6696b95',1,'ARM_DRIVER_I2C']]], + ['mclk_5fpin',['mclk_pin',['../group__sai__interface__gr.html#a12554e2522a0c611e8a26c9e536554eb',1,'ARM_SAI_CAPABILITIES']]], + ['media_5finterface',['media_interface',['../group__eth__mac__interface__gr.html#a3c5cb74e086417a01d0079f847a3fc8d',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['message_5fdepth',['message_depth',['../group__can__interface__gr.html#a5a782fc223b0ea5034c6676eaec6f2d4',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['messageread',['MessageRead',['../group__can__interface__gr.html#ace17a0046cf2c6cdbcb0fd3202e460a0',1,'ARM_DRIVER_CAN']]], + ['messagesend',['MessageSend',['../group__can__interface__gr.html#a3e6eb8bae2b7f8af99a3ca3cbbacce22',1,'ARM_DRIVER_CAN']]], + ['microwire',['microwire',['../group__spi__interface__gr.html#a9b4e858eb1d414128994742bf121f94c',1,'ARM_SPI_CAPABILITIES']]], + ['mmc_5fboot',['mmc_boot',['../group__mci__interface__gr.html#a072a194948489d4dbd2409b94fdca56b',1,'ARM_MCI_CAPABILITIES']]], + ['mmc_5finterrupt',['mmc_interrupt',['../group__mci__interface__gr.html#a3303194ea68bd1094841d4f958f6dbbf',1,'ARM_MCI_CAPABILITIES']]], + ['mode',['mode',['../group__i2c__interface__gr.html#a6b29e4f37f4482274af785ad5ffe96a7',1,'ARM_I2C_STATUS']]], + ['mode_5ffault',['mode_fault',['../group__spi__interface__gr.html#aeaf54ec655b7a64b9e88578c5f39d4e3',1,'ARM_SPI_STATUS']]], + ['monitor_5fmode',['monitor_mode',['../group__can__interface__gr.html#a176f42e68d9cba86b3594c40044b86c6',1,'ARM_CAN_CAPABILITIES']]], + ['mono_5fmode',['mono_mode',['../group__sai__interface__gr.html#a8d92817d8662211abda2d747c52ff4a9',1,'ARM_SAI_CAPABILITIES']]], + ['multiple_5ffilters',['multiple_filters',['../group__can__interface__gr.html#a3662fb9a8fb81212043cadd90da704af',1,'ARM_CAN_OBJ_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_6e.html b/CMSIS/Documentation/Driver/html/search/variables_6e.html new file mode 100644 index 0000000..4cc41d5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6e.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_6e.js b/CMSIS/Documentation/Driver/html/search/variables_6e.js new file mode 100644 index 0000000..4a855b0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['ns',['ns',['../group__eth__mac__interface__gr.html#a048317f84621fb38ed0bf8c8255e26f0',1,'ARM_ETH_MAC_TIME']]], + ['num_5fobjects',['num_objects',['../group__can__interface__gr.html#a69bd1a164443cf6f501489f4d31f4681',1,'ARM_CAN_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_6f.html b/CMSIS/Documentation/Driver/html/search/variables_6f.html new file mode 100644 index 0000000..12fe64f --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_6f.js b/CMSIS/Documentation/Driver/html/search/variables_6f.js new file mode 100644 index 0000000..65dc1ae --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_6f.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['objectconfigure',['ObjectConfigure',['../group__can__interface__gr.html#a24cfe29d7f6a29dfbac3c7011fc5b652',1,'ARM_DRIVER_CAN']]], + ['objectgetcapabilities',['ObjectGetCapabilities',['../group__can__interface__gr.html#a7239c03265659edcaf69dc9ea5e29ce3',1,'ARM_DRIVER_CAN']]], + ['objectsetfilter',['ObjectSetFilter',['../group__can__interface__gr.html#a2bfa264f66c84606ebf9f9e8dc45b907',1,'ARM_DRIVER_CAN']]], + ['overcurrent',['overcurrent',['../group__usbh__host__gr.html#ae4b5761b8d095bee008a94856ceca46b',1,'ARM_USBH_PORT_STATE']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_70.html b/CMSIS/Documentation/Driver/html/search/variables_70.html new file mode 100644 index 0000000..bc5c193 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_70.js b/CMSIS/Documentation/Driver/html/search/variables_70.js new file mode 100644 index 0000000..aed955d --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_70.js @@ -0,0 +1,30 @@ +var searchData= +[ + ['page_5fcount',['page_count',['../group__nand__interface__gr.html#aa993bc236650aa405b01d00b7ca72904',1,'ARM_NAND_ECC_INFO']]], + ['page_5flayout',['page_layout',['../group__nand__interface__gr.html#a5952ba4313bda7833fefd358f5aff979',1,'ARM_NAND_ECC_INFO']]], + ['page_5fsize',['page_size',['../group__nand__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9',1,'ARM_NAND_ECC_INFO::page_size()'],['../group__flash__interface__gr.html#a9dd3e47e968a8f6beb5d88c6d1b7ebe9',1,'ARM_FLASH_INFO::page_size()']]], + ['phy_5fread',['PHY_Read',['../group__eth__mac__interface__gr.html#a0f2ddb734e4242077275761400b26e35',1,'ARM_DRIVER_ETH_MAC']]], + ['phy_5fwrite',['PHY_Write',['../group__eth__mac__interface__gr.html#ac3efe9bdc31c3b1d7fd8eb82bbfb4c13',1,'ARM_DRIVER_ETH_MAC']]], + ['pipecreate',['PipeCreate',['../group__usbh__host__gr.html#a7ce5ca579a8c535434187ad05f596fbd',1,'ARM_DRIVER_USBH']]], + ['pipedelete',['PipeDelete',['../group__usbh__host__gr.html#ab2f8047e89786bb7a459fb9c6c3f03d5',1,'ARM_DRIVER_USBH']]], + ['pipemodify',['PipeModify',['../group__usbh__host__gr.html#a3efae6fe31a53f7ecd765ba6db99992e',1,'ARM_DRIVER_USBH']]], + ['pipereset',['PipeReset',['../group__usbh__host__gr.html#afe91e3e22bc401546d033cb9554550b7',1,'ARM_DRIVER_USBH']]], + ['pipetransfer',['PipeTransfer',['../group__usbh__host__gr.html#a495b069fadf5ba5b069bfdec6cda8b88',1,'ARM_DRIVER_USBH']]], + ['pipetransferabort',['PipeTransferAbort',['../group__usbh__host__gr.html#ab82fb8b02ff81156098b8210c0344f5e',1,'ARM_DRIVER_USBH']]], + ['pipetransfergetresult',['PipeTransferGetResult',['../group__usbh__host__gr.html#a18369bada042ff5557ff919056636a62',1,'ARM_DRIVER_USBH']]], + ['port_5fmask',['port_mask',['../group__usbh__host__gr.html#ac37c09b54483c2a1e41fa8a976721fc4',1,'ARM_USBH_CAPABILITIES::port_mask()'],['../group__usbh__hci__gr.html#ac37c09b54483c2a1e41fa8a976721fc4',1,'ARM_USBH_HCI_CAPABILITIES::port_mask()']]], + ['portgetstate',['PortGetState',['../group__usbh__host__gr.html#a84c391c0db065fa27b672eef6002905b',1,'ARM_DRIVER_USBH']]], + ['portreset',['PortReset',['../group__usbh__host__gr.html#a95125e80b07640860a7e16f510eca506',1,'ARM_DRIVER_USBH']]], + ['portresume',['PortResume',['../group__usbh__host__gr.html#a79126109256c1ccef901f22bc36ddc1d',1,'ARM_DRIVER_USBH']]], + ['portsuspend',['PortSuspend',['../group__usbh__host__gr.html#ab8be30d2d44a6447c8c085439ef117fb',1,'ARM_DRIVER_USBH']]], + ['portvbusonoff',['PortVbusOnOff',['../group__usbh__host__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f',1,'ARM_DRIVER_USBH::PortVbusOnOff()'],['../group__usbh__hci__gr.html#ab859fb9f73a60ffa1ce71ed961d4744f',1,'ARM_DRIVER_USBH_HCI::PortVbusOnOff()']]], + ['powercontrol',['PowerControl',['../group__can__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_CAN::PowerControl()'],['../group__eth__mac__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_ETH_MAC::PowerControl()'],['../group__eth__phy__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_ETH_PHY::PowerControl()'],['../group__i2c__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_I2C::PowerControl()'],['../group__mci__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_MCI::PowerControl()'],['../group__nand__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_NAND::PowerControl()'],['../group__flash__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_FLASH::PowerControl()'],['../group__sai__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_SAI::PowerControl()'],['../group__spi__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_SPI::PowerControl()'],['../group__usart__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USART::PowerControl()'],['../group__usbd__interface__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USBD::PowerControl()'],['../group__usbh__host__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USBH::PowerControl()'],['../group__usbh__hci__gr.html#aba8f1c8019af95ffe19c32403e3240ef',1,'ARM_DRIVER_USBH_HCI::PowerControl()']]], + ['precision_5ftimer',['precision_timer',['../group__eth__mac__interface__gr.html#a881a863974d32f95d7829f768ac47aa2',1,'ARM_ETH_MAC_CAPABILITIES']]], + ['program_5funit',['program_unit',['../group__flash__interface__gr.html#a483c41066757e2865bf3a27a2a627a54',1,'ARM_FLASH_INFO']]], + ['programdata',['ProgramData',['../group__flash__interface__gr.html#a429fc193f1ec62858219ab8749c563ae',1,'ARM_DRIVER_FLASH']]], + ['protocol_5fac97',['protocol_ac97',['../group__sai__interface__gr.html#a5255f8d78a18ace0a959f604f9c065dd',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fi2s',['protocol_i2s',['../group__sai__interface__gr.html#a6fcb9d68c4999860ce162c0ef44c4c97',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fjustified',['protocol_justified',['../group__sai__interface__gr.html#a5363ec1fc0042620cb8aeeee4f98691b',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fpcm',['protocol_pcm',['../group__sai__interface__gr.html#a0b2c79bd96ecb47d801fc5389819314a',1,'ARM_SAI_CAPABILITIES']]], + ['protocol_5fuser',['protocol_user',['../group__sai__interface__gr.html#a808b1f9e0abc3fa67945899cfc9fccc1',1,'ARM_SAI_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_72.html b/CMSIS/Documentation/Driver/html/search/variables_72.html new file mode 100644 index 0000000..29b87f0 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_72.js b/CMSIS/Documentation/Driver/html/search/variables_72.js new file mode 100644 index 0000000..ed31c7e --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_72.js @@ -0,0 +1,27 @@ +var searchData= +[ + ['range_5ffiltering',['range_filtering',['../group__can__interface__gr.html#a96dcf869f4adc9cec686630082c7c60a',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['rb_5fmonitor',['rb_monitor',['../group__nand__interface__gr.html#a69f5e734ee4a9bb501718cf78a740c3e',1,'ARM_NAND_CAPABILITIES']]], + ['read_5fwait',['read_wait',['../group__mci__interface__gr.html#a5e38e4ee9cebcc99904e287adc8e6217',1,'ARM_MCI_CAPABILITIES']]], + ['readcd',['ReadCD',['../group__mci__interface__gr.html#aa4285dd6b0f9b8ca41b6710a478ad641',1,'ARM_DRIVER_MCI']]], + ['readdata',['ReadData',['../group__nand__interface__gr.html#aeba263544c0d63ec8c29e919232615cb',1,'ARM_DRIVER_NAND::ReadData()'],['../group__flash__interface__gr.html#adec45569a2f6f0d915a206f8f19107bd',1,'ARM_DRIVER_FLASH::ReadData()']]], + ['readframe',['ReadFrame',['../group__eth__mac__interface__gr.html#a466b724be2167ea7d9a14569062a8fa8',1,'ARM_DRIVER_ETH_MAC']]], + ['readsetuppacket',['ReadSetupPacket',['../group__usbd__interface__gr.html#ab5593bf9bb516cc7b36c6072fc55260f',1,'ARM_DRIVER_USBD']]], + ['readwp',['ReadWP',['../group__mci__interface__gr.html#aee6f8b38f83a51ac05cc4841524b708d',1,'ARM_DRIVER_MCI']]], + ['receive',['Receive',['../group__sai__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3',1,'ARM_DRIVER_SAI::Receive()'],['../group__spi__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3',1,'ARM_DRIVER_SPI::Receive()'],['../group__usart__interface__gr.html#adb9224a35fe16c92eb0dd103638e4cf3',1,'ARM_DRIVER_USART::Receive()']]], + ['reentrant_5foperation',['reentrant_operation',['../group__can__interface__gr.html#ae0514834750c7452431717a881471e2b',1,'ARM_CAN_CAPABILITIES::reentrant_operation()'],['../group__nand__interface__gr.html#ae0514834750c7452431717a881471e2b',1,'ARM_NAND_CAPABILITIES::reentrant_operation()']]], + ['reserved',['reserved',['../group__nand__interface__gr.html#aa43c4c21b173ada1b6b7568956f0d650',1,'ARM_NAND_ECC_INFO']]], + ['restricted_5fmode',['restricted_mode',['../group__can__interface__gr.html#a93008ac105806db484e78e0582ca118c',1,'ARM_CAN_CAPABILITIES']]], + ['ri',['ri',['../group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb',1,'ARM_USART_MODEM_STATUS::ri()'],['../group__usart__interface__gr.html#aa6cf03b82235bedc0acf00acb46130fb',1,'ARM_USART_CAPABILITIES::ri()']]], + ['rst_5fn',['rst_n',['../group__mci__interface__gr.html#a2e8bd27f2c5c3093c4fec557890b97d4',1,'ARM_MCI_CAPABILITIES']]], + ['rtr',['rtr',['../group__can__interface__gr.html#a1f32fc9e5d3b33babf5905140e7a53af',1,'ARM_CAN_MSG_INFO']]], + ['rts',['rts',['../group__usart__interface__gr.html#afad044722f459552e9f0f602983659e9',1,'ARM_USART_CAPABILITIES']]], + ['rx',['rx',['../group__can__interface__gr.html#a895532773c3204e1538191f155c7bac8',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['rx_5fbreak',['rx_break',['../group__usart__interface__gr.html#aa5e3fa74f444688f9e727ffc1e988e5d',1,'ARM_USART_STATUS']]], + ['rx_5fbusy',['rx_busy',['../group__sai__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4',1,'ARM_SAI_STATUS::rx_busy()'],['../group__usart__interface__gr.html#a9f5baee58ed41b382628a82a0b1cbcb4',1,'ARM_USART_STATUS::rx_busy()']]], + ['rx_5ferror_5fcount',['rx_error_count',['../group__can__interface__gr.html#ab7e8b863b379b786ad1af935aa3ef2e8',1,'ARM_CAN_STATUS']]], + ['rx_5fframing_5ferror',['rx_framing_error',['../group__usart__interface__gr.html#af1d1cfd8b231843d5cc23e6a2b1ca8d0',1,'ARM_USART_STATUS']]], + ['rx_5foverflow',['rx_overflow',['../group__sai__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa',1,'ARM_SAI_STATUS::rx_overflow()'],['../group__usart__interface__gr.html#ac403aefd9bce8b0172e1996c0f3dd8aa',1,'ARM_USART_STATUS::rx_overflow()']]], + ['rx_5fparity_5ferror',['rx_parity_error',['../group__usart__interface__gr.html#affb21b610e2d0d71727702441c238f4f',1,'ARM_USART_STATUS']]], + ['rx_5frtr_5ftx_5fdata',['rx_rtr_tx_data',['../group__can__interface__gr.html#a8a41139926d7c032247458d055071fda',1,'ARM_CAN_OBJ_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_73.html b/CMSIS/Documentation/Driver/html/search/variables_73.html new file mode 100644 index 0000000..65b8f64 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_73.js b/CMSIS/Documentation/Driver/html/search/variables_73.js new file mode 100644 index 0000000..46387e5 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_73.js @@ -0,0 +1,33 @@ +var searchData= +[ + ['sdio_5finterrupt',['sdio_interrupt',['../group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825',1,'ARM_MCI_STATUS::sdio_interrupt()'],['../group__mci__interface__gr.html#a61e2a440b27d7d22c866ad4427f4b825',1,'ARM_MCI_CAPABILITIES::sdio_interrupt()']]], + ['sdr_5ftiming_5fmode',['sdr_timing_mode',['../group__nand__interface__gr.html#a21036f2047273d90c0af0e97031df5a9',1,'ARM_NAND_CAPABILITIES']]], + ['sec',['sec',['../group__eth__mac__interface__gr.html#aaf5f5a3fa5d596a9136b4331f2b54bfc',1,'ARM_ETH_MAC_TIME']]], + ['sector_5fcount',['sector_count',['../group__flash__interface__gr.html#a50947f9a42bbaa2d68d6e5079150d7bf',1,'ARM_FLASH_INFO']]], + ['sector_5finfo',['sector_info',['../group__flash__interface__gr.html#a8dfb9d5160358e45293bba527762238d',1,'ARM_FLASH_INFO']]], + ['sector_5fsize',['sector_size',['../group__flash__interface__gr.html#a7d37def484362c6e97a2d75144080b1d',1,'ARM_FLASH_INFO']]], + ['send',['Send',['../group__sai__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922',1,'ARM_DRIVER_SAI::Send()'],['../group__spi__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922',1,'ARM_DRIVER_SPI::Send()'],['../group__usart__interface__gr.html#a44eedddf4428cf4b98883b6c27d31922',1,'ARM_DRIVER_USART::Send()']]], + ['sendaddress',['SendAddress',['../group__nand__interface__gr.html#a5a43001ef1ca6c6d73f03e366bf41cb5',1,'ARM_DRIVER_NAND']]], + ['sendcommand',['SendCommand',['../group__mci__interface__gr.html#affefb5c1d352082933c2fb0620b37212',1,'ARM_DRIVER_MCI::SendCommand()'],['../group__nand__interface__gr.html#a3dbd36d86718980665ce2e3a1ba672ca',1,'ARM_DRIVER_NAND::SendCommand()']]], + ['sendframe',['SendFrame',['../group__eth__mac__interface__gr.html#ac095aea379f23e30a0e51b1f3518ad37',1,'ARM_DRIVER_ETH_MAC']]], + ['sequence_5foperation',['sequence_operation',['../group__nand__interface__gr.html#afa4b798731b1154878c26dda3f090acf',1,'ARM_NAND_CAPABILITIES']]], + ['setaddressfilter',['SetAddressFilter',['../group__eth__mac__interface__gr.html#a45b879a6df608f582d1866daff715798',1,'ARM_DRIVER_ETH_MAC']]], + ['setbitrate',['SetBitrate',['../group__can__interface__gr.html#a360a314665607fc2d866c24e1608fd06',1,'ARM_DRIVER_CAN']]], + ['setinterface',['SetInterface',['../group__eth__phy__interface__gr.html#a7dfc7cf346c80e7fdb2fe4cea2c61161',1,'ARM_DRIVER_ETH_PHY']]], + ['setmacaddress',['SetMacAddress',['../group__eth__mac__interface__gr.html#ac640f929dc4d5bde3e4282c75b25c00d',1,'ARM_DRIVER_ETH_MAC']]], + ['setmode',['SetMode',['../group__can__interface__gr.html#a0fa2edbde052011604addec816782b4e',1,'ARM_DRIVER_CAN::SetMode()'],['../group__eth__phy__interface__gr.html#ae6686344f4d6afa0881d1e545c898a3d',1,'ARM_DRIVER_ETH_PHY::SetMode()']]], + ['setmodemcontrol',['SetModemControl',['../group__usart__interface__gr.html#af6703d4078818df27ab9f8a7a8ad7b7b',1,'ARM_DRIVER_USART']]], + ['setuptransfer',['SetupTransfer',['../group__mci__interface__gr.html#adc63bab660e8304d78faa1ac429e792b',1,'ARM_DRIVER_MCI']]], + ['simplex',['simplex',['../group__spi__interface__gr.html#af244e2c2facf6414e3886495ee6b40bc',1,'ARM_SPI_CAPABILITIES']]], + ['single_5fwire',['single_wire',['../group__usart__interface__gr.html#ad1928b61021dd9ff689a3ccf9b8966a8',1,'ARM_USART_CAPABILITIES']]], + ['slavereceive',['SlaveReceive',['../group__i2c__interface__gr.html#a12d2689d6e93985e64b9561a8e4e917b',1,'ARM_DRIVER_I2C']]], + ['slavetransmit',['SlaveTransmit',['../group__i2c__interface__gr.html#ae9e3b81b352d4564fd2337fdf0e5488c',1,'ARM_DRIVER_I2C']]], + ['smart_5fcard',['smart_card',['../group__usart__interface__gr.html#aa78e1ee1726d1db2cfa83fd7b5acc8bd',1,'ARM_USART_CAPABILITIES']]], + ['smart_5fcard_5fclock',['smart_card_clock',['../group__usart__interface__gr.html#a7b3c14ea1b5e9ba0a37ebc05fcfd51a6',1,'ARM_USART_CAPABILITIES']]], + ['speed',['speed',['../group__eth__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5',1,'ARM_ETH_LINK_INFO::speed()'],['../group__usbd__interface__gr.html#a220859a8b5da0232739a11cbe7f79fc5',1,'ARM_USBD_STATE::speed()'],['../group__usbh__host__gr.html#a220859a8b5da0232739a11cbe7f79fc5',1,'ARM_USBH_PORT_STATE::speed()']]], + ['start',['start',['../group__flash__interface__gr.html#a61eb63d26b2fa6c2971603ceccffb14b',1,'ARM_FLASH_SECTOR']]], + ['suspend_5fresume',['suspend_resume',['../group__mci__interface__gr.html#abb03f0187e4658f417b5a24cac33eed9',1,'ARM_MCI_CAPABILITIES']]], + ['synchronous',['synchronous',['../group__sai__interface__gr.html#a9fa4f850b8ce2be2c7ffa2e3ec70ae20',1,'ARM_SAI_CAPABILITIES']]], + ['synchronous_5fmaster',['synchronous_master',['../group__usart__interface__gr.html#afb385bfd9fb2d714bb58aa7d8d9d7d51',1,'ARM_USART_CAPABILITIES']]], + ['synchronous_5fslave',['synchronous_slave',['../group__usart__interface__gr.html#a37dcd87df8762e2bc9af9fea368b1537',1,'ARM_USART_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_74.html b/CMSIS/Documentation/Driver/html/search/variables_74.html new file mode 100644 index 0000000..6093922 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_74.js b/CMSIS/Documentation/Driver/html/search/variables_74.js new file mode 100644 index 0000000..5ede271 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_74.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['ti_5fssi',['ti_ssi',['../group__spi__interface__gr.html#a8053c540e5d531b692224bdc2463f36a',1,'ARM_SPI_CAPABILITIES']]], + ['transfer',['Transfer',['../group__spi__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7',1,'ARM_DRIVER_SPI::Transfer()'],['../group__usart__interface__gr.html#ad88b63ed74c03ba06b0599ab06ad4cf7',1,'ARM_DRIVER_USART::Transfer()']]], + ['transfer_5factive',['transfer_active',['../group__mci__interface__gr.html#a2655d3422b720097b091a28e8bbcea8f',1,'ARM_MCI_STATUS']]], + ['transfer_5ferror',['transfer_error',['../group__mci__interface__gr.html#a21d4bc1a03e161bd33693619039a6afa',1,'ARM_MCI_STATUS']]], + ['transfer_5ftimeout',['transfer_timeout',['../group__mci__interface__gr.html#a598ae4a196316d6dcb97d07fd337ecdd',1,'ARM_MCI_STATUS']]], + ['tx',['tx',['../group__can__interface__gr.html#a9706173b2ed538efeb5ee4a952e2272f',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['tx_5fbusy',['tx_busy',['../group__sai__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b',1,'ARM_SAI_STATUS::tx_busy()'],['../group__usart__interface__gr.html#a2c6d2b67fba3f3e084e96a6bc7fcac6b',1,'ARM_USART_STATUS::tx_busy()']]], + ['tx_5ferror_5fcount',['tx_error_count',['../group__can__interface__gr.html#a8941505f6f3ebd69825c4382184c580f',1,'ARM_CAN_STATUS']]], + ['tx_5frtr_5frx_5fdata',['tx_rtr_rx_data',['../group__can__interface__gr.html#a1debac19545140bdfe3c5fa8d53f1863',1,'ARM_CAN_OBJ_CAPABILITIES']]], + ['tx_5funderflow',['tx_underflow',['../group__sai__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72',1,'ARM_SAI_STATUS::tx_underflow()'],['../group__usart__interface__gr.html#a048f45e9d2257a21821f81d9edd17b72',1,'ARM_USART_STATUS::tx_underflow()']]], + ['type',['type',['../group__nand__interface__gr.html#ad44b615021ed3ccb734fcaf583ef4a03',1,'ARM_NAND_ECC_INFO']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_75.html b/CMSIS/Documentation/Driver/html/search/variables_75.html new file mode 100644 index 0000000..b9cc25c --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_75.js b/CMSIS/Documentation/Driver/html/search/variables_75.js new file mode 100644 index 0000000..3df36c4 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_75.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['uhs_5fddr50',['uhs_ddr50',['../group__mci__interface__gr.html#a1ee73c19020d5f1bedf7c013d0e5f730',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fdriver_5ftype_5fa',['uhs_driver_type_a',['../group__mci__interface__gr.html#afe5de4fdc6657aa19fa87577a8d460e5',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fdriver_5ftype_5fc',['uhs_driver_type_c',['../group__mci__interface__gr.html#a3c3df9641e7216dd20d3bc395dc4948f',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fdriver_5ftype_5fd',['uhs_driver_type_d',['../group__mci__interface__gr.html#a639bebbcb9a3a743f4f232fec82e2bfc',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fsdr104',['uhs_sdr104',['../group__mci__interface__gr.html#ae07ceef1800252495a79f225142740e7',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fsdr50',['uhs_sdr50',['../group__mci__interface__gr.html#a5c3dcb2f8aa6f65408d9a6741abb7b3e',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5fsignaling',['uhs_signaling',['../group__mci__interface__gr.html#a084188480d589cdc8d3e164b9f41bea9',1,'ARM_MCI_CAPABILITIES']]], + ['uhs_5ftuning',['uhs_tuning',['../group__mci__interface__gr.html#a617bf7fb73b49a20398b90098ecc3ec0',1,'ARM_MCI_CAPABILITIES']]], + ['uninitialize',['Uninitialize',['../group__can__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_CAN::Uninitialize()'],['../group__eth__mac__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_ETH_MAC::Uninitialize()'],['../group__eth__phy__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_ETH_PHY::Uninitialize()'],['../group__i2c__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_I2C::Uninitialize()'],['../group__mci__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_MCI::Uninitialize()'],['../group__nand__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_NAND::Uninitialize()'],['../group__flash__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_FLASH::Uninitialize()'],['../group__sai__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_SAI::Uninitialize()'],['../group__spi__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_SPI::Uninitialize()'],['../group__usart__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USART::Uninitialize()'],['../group__usbd__interface__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USBD::Uninitialize()'],['../group__usbh__host__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USBH::Uninitialize()'],['../group__usbh__hci__gr.html#adcf20681a1402869ecb5c6447fada17b',1,'ARM_DRIVER_USBH_HCI::Uninitialize()']]], + ['unit_5fstate',['unit_state',['../group__can__interface__gr.html#a96ec94acab56690b3801e3c5fbd09fa2',1,'ARM_CAN_STATUS']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_76.html b/CMSIS/Documentation/Driver/html/search/variables_76.html new file mode 100644 index 0000000..ab1aba9 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_76.js b/CMSIS/Documentation/Driver/html/search/variables_76.js new file mode 100644 index 0000000..04f4fc2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_76.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['vbus',['vbus',['../group__usbd__interface__gr.html#aa961d5fb2bd3d2960578f1ac3b903070',1,'ARM_USBD_STATE']]], + ['vbus_5fdetection',['vbus_detection',['../group__usbd__interface__gr.html#a6673fc1aa13f62122ecf51e52a605c6e',1,'ARM_USBD_CAPABILITIES']]], + ['vcc',['vcc',['../group__nand__interface__gr.html#a35cfa22b2140b109fe24b97c42d5a5ed',1,'ARM_NAND_CAPABILITIES']]], + ['vcc_5f1v8',['vcc_1v8',['../group__nand__interface__gr.html#a0e7d3b9258d468492b22de55d855a06e',1,'ARM_NAND_CAPABILITIES']]], + ['vccq',['vccq',['../group__mci__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa',1,'ARM_MCI_CAPABILITIES::vccq()'],['../group__nand__interface__gr.html#ab1cdfce6eb051bed7b904e0fd1719afa',1,'ARM_NAND_CAPABILITIES::vccq()']]], + ['vccq_5f1v2',['vccq_1v2',['../group__mci__interface__gr.html#af4f95215005e38700ef527714932b361',1,'ARM_MCI_CAPABILITIES']]], + ['vccq_5f1v8',['vccq_1v8',['../group__mci__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d',1,'ARM_MCI_CAPABILITIES::vccq_1v8()'],['../group__nand__interface__gr.html#a1896a7548bb6fab285f23cc0d0b23d7d',1,'ARM_NAND_CAPABILITIES::vccq_1v8()']]], + ['vdd',['vdd',['../group__mci__interface__gr.html#a414baec222a72be862e262f02b821dce',1,'ARM_MCI_CAPABILITIES']]], + ['vdd_5f1v8',['vdd_1v8',['../group__mci__interface__gr.html#abeb0330f882ebed8cabde782652233dd',1,'ARM_MCI_CAPABILITIES']]], + ['vpp',['vpp',['../group__nand__interface__gr.html#a75b97f7c917bba90b2f5c747d6857d23',1,'ARM_NAND_CAPABILITIES']]] +]; diff --git a/CMSIS/Documentation/Driver/html/search/variables_77.html b/CMSIS/Documentation/Driver/html/search/variables_77.html new file mode 100644 index 0000000..25c3e3a --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_77.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Driver/html/search/variables_77.js b/CMSIS/Documentation/Driver/html/search/variables_77.js new file mode 100644 index 0000000..32003e2 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/search/variables_77.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['wp',['wp',['../group__nand__interface__gr.html#afe7f5b149b8d92859398315b1ad31ddc',1,'ARM_NAND_CAPABILITIES']]], + ['wp_5fstate',['wp_state',['../group__mci__interface__gr.html#a02df0162d3a653c36158a7b6a76f6175',1,'ARM_MCI_CAPABILITIES']]], + ['writedata',['WriteData',['../group__nand__interface__gr.html#a78393d355e539c6f845b33417da60a7e',1,'ARM_DRIVER_NAND']]], + ['writeprotect',['WriteProtect',['../group__nand__interface__gr.html#add6fa19a729c42303581214bc9dec819',1,'ARM_DRIVER_NAND']]] +]; diff --git a/CMSIS/Documentation/Driver/html/sync_off.png b/CMSIS/Documentation/Driver/html/sync_off.png new file mode 100644 index 0000000..3b443fc Binary files /dev/null and b/CMSIS/Documentation/Driver/html/sync_off.png differ diff --git a/CMSIS/Documentation/Driver/html/sync_on.png b/CMSIS/Documentation/Driver/html/sync_on.png new file mode 100644 index 0000000..e08320f Binary files /dev/null and b/CMSIS/Documentation/Driver/html/sync_on.png differ diff --git a/CMSIS/Documentation/Driver/html/tab_a.png b/CMSIS/Documentation/Driver/html/tab_a.png new file mode 100644 index 0000000..3b725c4 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/tab_a.png differ diff --git a/CMSIS/Documentation/Driver/html/tab_b.png b/CMSIS/Documentation/Driver/html/tab_b.png new file mode 100644 index 0000000..5f6601a Binary files /dev/null and b/CMSIS/Documentation/Driver/html/tab_b.png differ diff --git a/CMSIS/Documentation/Driver/html/tab_h.png b/CMSIS/Documentation/Driver/html/tab_h.png new file mode 100644 index 0000000..fd5cb70 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/tab_h.png differ diff --git a/CMSIS/Documentation/Driver/html/tab_s.png b/CMSIS/Documentation/Driver/html/tab_s.png new file mode 100644 index 0000000..ab478c9 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/tab_s.png differ diff --git a/CMSIS/Documentation/Driver/html/tab_topnav.png b/CMSIS/Documentation/Driver/html/tab_topnav.png new file mode 100644 index 0000000..b257b77 Binary files /dev/null and b/CMSIS/Documentation/Driver/html/tab_topnav.png differ diff --git a/CMSIS/Documentation/Driver/html/tabs.css b/CMSIS/Documentation/Driver/html/tabs.css new file mode 100644 index 0000000..ffbab50 --- /dev/null +++ b/CMSIS/Documentation/Driver/html/tabs.css @@ -0,0 +1,71 @@ +.tabs, .tabs1, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 10px; +} + +.tabs1 { + background-image: url('tab_topnav.png'); + font-size: 12px; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; + line-height: 24px; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + list-style: none; +} + +.tabs1 .tablist li { + float: left; + display: table-cell; + background-image: url('tab_topnav.png'); + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/CMSIS/Documentation/General/html/CMSIS_END_USER_LICENCE_AGREEMENT.pdf b/CMSIS/Documentation/General/html/CMSIS_END_USER_LICENCE_AGREEMENT.pdf new file mode 100644 index 0000000..c67c867 Binary files /dev/null and b/CMSIS/Documentation/General/html/CMSIS_END_USER_LICENCE_AGREEMENT.pdf differ diff --git a/CMSIS/Documentation/General/html/CMSIS_Logo_Final.png b/CMSIS/Documentation/General/html/CMSIS_Logo_Final.png new file mode 100644 index 0000000..2056b7e Binary files /dev/null and b/CMSIS/Documentation/General/html/CMSIS_Logo_Final.png differ diff --git a/CMSIS/Documentation/General/html/CMSISv4_small.png b/CMSIS/Documentation/General/html/CMSISv4_small.png new file mode 100644 index 0000000..44787e2 Binary files /dev/null and b/CMSIS/Documentation/General/html/CMSISv4_small.png differ diff --git a/CMSIS/Documentation/General/html/_c_m_revision_history.html b/CMSIS/Documentation/General/html/_c_m_revision_history.html new file mode 100644 index 0000000..fa3c22a --- /dev/null +++ b/CMSIS/Documentation/General/html/_c_m_revision_history.html @@ -0,0 +1,165 @@ + + + + + +Revision History +CMSIS: Revision History + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS +  Version 4.5.0 +
    +
    Cortex Microcontroller Software Interface Standard
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Revision History
    +
    +
    +

    The following table shows the overall high-level history of the various CMSIS releases. In addition, each CMSIS component has its own release history:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Version Description
    4.5.0 Maintenance release that is fixing defects. See component's revision history for more details. See component's revision history for more details.
      +
    • CMSIS-CORE 4.30.0
    • +
    • CMSIS-DAP 1.1.0 (unchanged)
    • +
    • CMSIS-Driver 2.04.0
    • +
    • CMSIS-DSP 1.4.7
    • +
    • CMSIS-PACK 1.4.1
    • +
    • CMSIS-RTOS RTX 4.80.0
    • +
    • CMSIS-SVD 1.3.1
    • +
    +
    4.4.0 Feature release adding CMSIS-DAP (see extended End User Licence Agreement) and CMSIS-Driver for CAN. See component's revision history for more details.
      +
    • CMSIS-CORE 4.20.0
    • +
    • CMSIS-DAP 1.1.0
    • +
    • CMSIS-Driver 2.03.0
    • +
    • CMSIS-DSP 1.4.5 (unchanged)
    • +
    • CMSIS-RTOS RTX 4.79.0
    • +
    • CMSIS-PACK 1.4.0
    • +
    • CMSIS-SVD 1.3.0
    • +
    +
    4.3.0 Maintenance release adding SAI CMSIS-Driver and fixing defects. See component's revision history for more details.
      +
    • CMSIS-CORE 4.10.0
    • +
    • CMSIS-Driver 2.02.0
    • +
    • CMSIS-DSP 1.4.5
    • +
    • CMSIS-RTOS RTX 4.78.0
    • +
    • CMSIS-PACK 1.3.3
    • +
    • CMSIS-SVD (unchanged)
    • +
    +
    4.2 Introducing processor support for Cortex-M7.
    4.1 Enhancements in CMSIS-Pack and CMSIS-Driver.
    + Added: PackChk validation utility
    + Removed support for GNU: Sourcery G++ Lite Edition for ARM
    4.0 First release in CMSIS-Pack format.
    + Added specifications for CMSIS-Pack, CMSIS-Driver
    3.30 Maintenance release with enhancements in each component
    3.20 Maintenance release with enhancements in each component
    3.01 Added support for Cortex-M0+ processors
    3.00 Added support for SC000 and SC300 processors
    + Added support for GNU GCC Compiler
    + Added CMSIS-RTOS API
    2.10 Added CMSIS-DSP Library
    2.0 Added support for Cortex-M4 processor
    1.30 Reworked CMSIS startup concept
    1.01 Added support for Cortex-M0 processor
    1.00 Initial release of CMSIS-CORE for Cortex-M3 processor
    +
    +
    + + + + diff --git a/CMSIS/Documentation/General/html/bc_s.png b/CMSIS/Documentation/General/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/CMSIS/Documentation/General/html/bc_s.png differ diff --git a/CMSIS/Documentation/General/html/bdwn.png b/CMSIS/Documentation/General/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/CMSIS/Documentation/General/html/bdwn.png differ diff --git a/CMSIS/Documentation/General/html/closed.png b/CMSIS/Documentation/General/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/CMSIS/Documentation/General/html/closed.png differ diff --git a/CMSIS/Documentation/General/html/cmsis.css b/CMSIS/Documentation/General/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/General/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/General/html/doxygen.css b/CMSIS/Documentation/General/html/doxygen.css new file mode 100644 index 0000000..2642e8f --- /dev/null +++ b/CMSIS/Documentation/General/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/General/html/doxygen.png b/CMSIS/Documentation/General/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/CMSIS/Documentation/General/html/doxygen.png differ diff --git a/CMSIS/Documentation/General/html/dynsections.js b/CMSIS/Documentation/General/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/General/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +Introduction +CMSIS: Introduction + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS +  Version 4.5.0 +
    +
    Cortex Microcontroller Software Interface Standard
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Introduction
    +
    +
    +

    The Cortex Microcontroller Software Interface Standard (CMSIS) is a vendor-independent hardware abstraction layer for the Cortex-M processor series and defines generic tool interfaces. The CMSIS enables consistent device support and simple software interfaces to the processor and the peripherals, simplifying software re-use, reducing the learning curve for microcontroller developers, and reducing the time to market for new devices.

    +

    The CMSIS is defined in close cooperation with various silicon and software vendors and provides a common approach to interface to peripherals, real-time operating systems, and middleware components. The CMSIS is intended to enable the combination of software components from multiple middleware vendors.

    +

    The CMSIS components are:

    +
      +
    • CMSIS-CORE: API for the Cortex-M processor core and peripherals. It provides at standardized interface for Cortex-M0, Cortex-M3, Cortex-M4, Cortex-M7, SC000, and SC300. Included are also SIMD intrinsic functions for Cortex-M4 and Cortex-M7 SIMD instructions.
    • +
    +
      +
    • CMSIS-Driver: defines generic peripheral driver interfaces for middleware making it reusable across supported devices. The API is RTOS independent and connects microcontroller peripherals with middleware that implements for example communication stacks, file systems, or graphic user interfaces.
    • +
    +
      +
    • CMSIS-DSP: DSP Library Collection with over 60 Functions for various data types: fix-point (fractional q7, q15, q31) and single precision floating-point (32-bit). The library is available for all Cortex-M cores. The Cortex-M4 and Cortex-M7 implementations are optimized for the SIMD instruction set.
    • +
    +
      +
    • CMSIS-RTOS API: Common API for Real-Time operating systems. It provides a standardized programming interface that is portable to many RTOS and enables therefore software templates, middleware, libraries, and other components that can work across supported the RTOS systems.
    • +
    +
      +
    • CMSIS-Pack: describes with a XML based package description (PDSC) file the user and device relevant parts of a file collection (called software pack) that includes source, header, and library files, documentation, Flash programming algorithms, source code templates, and example projects. Development tools and web infrastructures use the PDSC file to extract device parameters, software components, and evaluation board configurations.
    • +
    +
      +
    • CMSIS-SVD: System View Description for Peripherals. Describes the peripherals of a device in an XML file and can be used to create peripheral awareness in debuggers or header files with peripheral register and interrupt definitions.
    • +
    +
      +
    • CMSIS-DAP: Debug Access Port. Standardized firmware for a Debug Unit that connects to the CoreSight Debug Access Port. CMSIS-DAP is distributed as separate package and well suited for integration on evaluation boards. This component is provided as separate download.
    • +
    +
    Note
    Refer to ARM::CMSIS Pack for more information on the content of the Software Pack.
    +
    +CMSISv4_small.png +
    +CMSIS Structure
    +

    +Motivation

    +

    CMSIS has been created to help the industry in standardization. It enables consistent software layers and device support across a wide range of development tools and microcontrollers. CMSIS is not a huge software layer that introduces overhead and does not define standard peripherals. The silicon industry can therefore support the wide variations of Cortex-M processor-based devices with this common standard.

    +

    In detail the benefits of the CMSIS are:

    +
      +
    • Overall CMSIS reduces the learning curve, development costs, and time-to-market. Developers can write software quicker through a variety of easy-to-use, standardized software interfaces.
    • +
    • Consistent software interfaces improve the software portability and re-usability. Generic software libraries and interfaces provide consistent software framework.
    • +
    • Provides interfaces for debug connectivity, debug peripheral views, software delivery, and device support to reduce time-to-market for new microcontroller deployment.
    • +
    • Provides a compiler independent layer that allows using different compilers. CMSIS is supported by all mainstream compilers (ARMCC, IAR, and GNU).
    • +
    • Enhances program debugging with peripheral information for debuggers and ITM channels for printf-style output and RTOS kernel awareness.
    • +
    • CMSIS is delivered in CMSIS-Pack format which enables fast software delivery, simplifies updates, and enables consistent integration into development tools.
    • +
    +

    +Coding Rules

    +

    The CMSIS uses the following essential coding rules and conventions:

    +
      +
    • Compliant with ANSI C and C++.
    • +
    • Uses ANSI C standard data types defined in <stdint.h>.
    • +
    • Variables and parameters have a complete data type.
    • +
    • Expressions for #define constants are enclosed in parenthesis.
    • +
    • Conforms to MISRA 2004. MISRA rule violations are documented.
    • +
    +

    In addition, the CMSIS recommends the following conventions for identifiers:

    +
      +
    • CAPITAL names to identify Core Registers, Peripheral Registers, and CPU Instructions.
    • +
    • CamelCase names to identify function names and interrupt functions.
    • +
    • Namespace_ prefixes avoid clashes with user identifiers and provide functional groups (i.e. for peripherals, RTOS, or DSP Library).
    • +
    +

    The CMSIS is documented within the source files with:

    +
      +
    • Comments that use the C or C++ style.
    • +
    • Doxygen compliant function comments that provide:
        +
      • brief function overview.
      • +
      • detailed description of the function.
      • +
      • detailed parameter explanation.
      • +
      • detailed information about return values.
      • +
      +
    • +
    +

    Doxygen comment example:

    +
    /** 
    + * @brief  Enable Interrupt in NVIC Interrupt Controller
    + * @param  IRQn  interrupt number that specifies the interrupt
    + * @return none.
    + * Enable the specified interrupt in the NVIC Interrupt Controller.
    + * Other settings of the interrupt such as priority are not affected.
    + */
    +

    +Licence

    +

    The CMSIS is provided free of charge by ARM and can be used for all Cortex-M based devices.

    +

    The software portions that are deployed in the application program are under a BSD license which allows usage of CMSIS in any commercial or open source projects.

    +

    View the LICENCE AGREEMENT for CMSIS in detail.

    +

    +ARM::CMSIS Pack

    +

    The ARM::CMSIS Pack contains the following:

    + + + + + + + + + + + +
    File/Directory Content
    ARM.CMSIS.pdsc Package description file
    CMSIS CMSIS components (see below)
    CMSIS_RTX Keil RTX implementation of CMSIS-RTOS
    Device ARM reference implementations of Cortex-M devices
    +

    CMSIS Directory

    +

    The directory CMSIS contains the "CMSIS End User License Agreement" as PDF and RTF, a README text file, the index.html file for this documentation, and the following sub-directories:

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Directory Content
    Documentation This documentation
    DAP CMSIS-DAP Debug Access Port source code and reference implementations
    Driver Header files for the CMSIS-Driver peripheral interface API
    DSP_Lib CMSIS-DSP software library source code
    Include Include files for CMSIS-CORE and CMSIS-DSP
    Lib CMSIS-DSP generated libraries for ARMCC and GCC
    Pack CMSIS-Pack example
    RTOS CMSIS-RTOS API header file
    SVD CMSIS-SVD example
    UserCodeTemplates\ARM ITM_Retarget.c, CMSIS retarget output to ITM Channel 0 template file
    Utilities PACK.xsd (CMSIS-Pack schema file), PackChk.exe (checking tool for software packs),
    + CMSIS-SVD.xsd (CMSIS-SVD schema file), SVDConv.exe (conversion tool for SVD files)
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/General/html/jquery.js b/CMSIS/Documentation/General/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/General/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
    +
    +
    Algorithm Functions
    +
    +
    +

    Blank Check

    +

    The following functions are available for creating new Flash programming algorithms:

    +
    + + + + + + + + + + + + + + + + +
    Function Name IndicationDescription
    BlankCheck optional Check and compare patterns.
    EraseChip optional Delete entire Flash memory content.
    EraseSectormandatory Delete Flash memory content of a specific sector.
    Init mandatory Initialize and prepare device for Flash programming.
    ProgramPagemandatory Write the application into the Flash memory.
    UnInit mandatory De-initialize the microcontroller after one of the Flash programming steps.
    Verify optional Compare Flash memory content with the program code.
    +

     

    +
    +

    +BlankCheck

    +
    int BlankCheck (unsigned long adr, unsigned long sz, unsigned char pat);
    +
    Parameters
    + + + + +
    adrBlock start address
    szBlock size in bytes
    patPattern to compare
    +
    +
    +
    Returns
    status information:
      +
    • 0 when the block content is equal to the pattern pat.
    • +
    • 1 when the block content differs from the pattern pat.
    • +
    +
    +

    The function BlankCheck can be used to check whether the specified block is empty, or whether the content is equal to a specific pattern defined in the argument pat.

    +

    The argument adr specifies the start address of the block that is to be verified.

    +

    The argument sz specifies the size of the block that is to be verified.

    +

    Code Example

    +
    int BlankCheck (unsigned long adr, unsigned long sz, unsigned char pat) {
    +
    +
    unsigned long i, j, k;
    +
    +
    // Recalculate address for External SDRAM addresses
    +
    if (adr >= SDRAM_START)
    +
    adr = adr - SDRAM_START + USER_OFFSET;
    +
    +
    for (i = 0; i < sz; i += 256) {
    +
    // Read 256 bytes
    +
    ReadPage_HW (adr+i, 256, &rd_buf[0]);
    +
    +
    // Determine size to compare
    +
    if ((sz-i) >= 256) k = 256;
    +
    else k = (sz-i);
    +
    +
    // Check up to 256 bytes if equal to pattern "pat"
    +
    for (j = 0; j < k; j++)
    +
    if (rd_buf[j] != pat) return (1); // Memory is not blank
    +
    }
    +
    +
    return (0); // Memory is blank
    +
    }
    +

     

    +
    +

    +EraseChip

    +
    int EraseChip (void);
    +
    Returns
    status information:
      +
    • 0 on success.
    • +
    • 1 on failure.
    • +
    +
    +

    The function EraseChip deletes the content of the entire Flash memory. It is invoked whenever the uVision menu Flash - Erase is used, or whenever an attempt is made to download the program to Flash and the option Erase Full Chip has been set in the Flash Download Setup dialog. If this function is missing in the Flash Programming Algorithm, the EraseSector function is executed until the entire content of the Flash memory area has been deleted.

    +

    Code Example

    +
    int EraseChip (void) {
    +
    +
    FLASH->CR |= FLASH_MER; // Mass Erase Enabled
    +
    FLASH->CR |= FLASH_STRT; // Start Erase
    +
    +
    while (FLASH->SR & FLASH_BSY) {
    +
    IWDG->KR = 0xAAAA; // Reload IWDG
    +
    }
    +
    +
    FLASH->CR &= ~FLASH_MER; // Mass Erase Disabled
    +
    +
    return (0); // Done
    +
    }
    +

     

    +
    +

    +EraseSector

    +
    int EraseSector (unsigned long adr);
    +
    Parameters
    + + +
    adrSector address
    +
    +
    +
    Returns
    status information:
      +
    • 0 on success.
    • +
    • 1 on failure.
    • +
    +
    +

    The function EraseSector deletes the content of the sector starting at the address specified by the argument adr. The function is invoked whenever the uVision menu Flash - Erase is used, or whenever an attempt is made to download the program to Flash and the option Erase Sectors has been set in the Flash Download Setup dialog.

    +

    Code Example

    +
    int EraseSector (unsigned long adr) {
    +
    +
    FLASH->CR |= FLASH_PER; // Page Erase Enabled
    +
    FLASH->AR = adr; // Page Address
    +
    FLASH->CR |= FLASH_STRT; // Start Erase
    +
    +
    while (FLASH->SR & FLASH_BSY) {
    +
    IWDG->KR = 0xAAAA; // Reload IWDG
    +
    }
    +
    +
    FLASH->CR &= ~FLASH_PER; // Page Erase Disabled
    +
    +
    return (0); // Done
    +
    }
    +

     

    +
    +

    +Init

    +
    int Init (unsigned long adr, unsigned long clk, unsigned long fnc);
    +
    Parameters
    + + + + +
    adrDevice base address
    clkClock frequency (Hz)
    fncFunction code
    +
    +
    +
    Returns
    status information:
      +
    • 0 on success.
    • +
    • 1 on failure.
    • +
    +
    +

    The function Init initializes the microcontroller for Flash programming. It is invoked whenever an attempt is made to download the program to Flash.

    +

    The argument adr specifies the base address of the device.

    +

    The argument clk specifies the clock frequency for prgramming the device.

    +

    The argument fnc is a number:

    +
      +
    • 1 stands for Erase.
    • +
    • 2 stands for Program.
    • +
    • 3 stands for Verify.
    • +
    +

    Thus, different initialization sections can be implemented for each individual Flash programming step.

    +

    Code Example

    +
    int Init (unsigned long adr, unsigned long clk, unsigned long fnc) {
    +
    +
    // Zero Wait State
    +
    FLASH->ACR = 0x00000000;
    +
    +
    // Unlock Flash
    +
    FLASH->KEYR = FLASH_KEY1;
    +
    FLASH->KEYR = FLASH_KEY2;
    +
    +
    // Test if IWDG is running (IWDG in HW mode)
    +
    if ((FLASH->OBR & 0x04) == 0x00) {
    +
    // Set IWDG time out to ~32.768 second
    +
    IWDG->KR = 0x5555; // Enable write access to IWDG_PR and IWDG_RLR
    +
    IWDG->PR = 0x06; // Set prescaler to 256
    +
    IWDG->RLR = 4095; // Set reload value to 4095
    +
    }
    +
    +
    return (0);
    +
    }
    +

     

    +
    +

    +ProgramPage

    +
    int ProgramPage (unsigned long adr, unsigned long sz, unsigned char *buf);
    +
    Parameters
    + + + + +
    adrPage start address
    szPage size
    bufData to be written
    +
    +
    +
    Returns
    status information:
      +
    • 0 on success.
    • +
    • 1 on failure.
    • +
    +
    +

    The function ProgramPage is used to write code into the Flash memory. It is invoked whenever an attempt is made to download a program to Flash.

    +

    The argument adr specifies the start address of the page that is to be programmed.

    +

    The argument sz specifies the size of the page that is to be programmed.

    +

    The argument buf points to the buffer containing the data to be programmed.

    +

    Code Example

    +
    int ProgramPage (unsigned long adr, unsigned long sz, unsigned char *buf) {
    +
    +
    sz = (sz + 1) & ~1; // Adjust size for Half Words
    +
    +
    while (sz) {
    +
    +
    FLASH->CR |= FLASH_PG; // Programming Enabled
    +
    +
    M16(adr) = *((unsigned short *)buf); // Program Half Word
    +
    while (FLASH->SR & FLASH_BSY);
    +
    +
    FLASH->CR &= ~FLASH_PG; // Programming Disabled
    +
    +
    // Check for Errors
    +
    if (FLASH->SR & (FLASH_PGERR | FLASH_WRPRTERR)) {
    +
    FLASH->SR |= FLASH_PGERR | FLASH_WRPRTERR;
    +
    return (1); // Failed
    +
    }
    +
    +
    // Go to next Half Word
    +
    adr += 2;
    +
    buf += 2;
    +
    sz -= 2;
    +
    +
    }
    +
    +
    return (0); // Done
    +
    }
    +

     

    +
    +

    +UnInit

    +
    int UnInit (unsigned long fnc);
    +
    Parameters
    + + +
    fncFunction code
    +
    +
    +
    Returns
    status information:
      +
    • 0 on success.
    • +
    • 1 on failure.
    • +
    +
    +

    The function UnInit de-initializes the microcontroller and is invoked at the end of an erasing, programming, or verifying step.

    +

    The argument fnc is a number:

    +
      +
    • 1 stands for Erase.
    • +
    • 2 stands for Program.
    • +
    • 3 stands for Verify.
    • +
    +

    Thus, different de-initialization sections can be implemented for each individual Flash programming step.

    +

    Code Example

    +
    int UnInit (unsigned long fnc) {
    +
    +
    // Lock Flash
    +
    FLASH->CR |= FLASH_LOCK;
    +
    +
    return (0);
    +
    }
    +

     

    +
    +

    +Verify

    +
    unsigned long Verify (unsigned long adr, unsigned long sz, unsigned char *buf);
    +
    Parameters
    + + + + +
    adrStart address
    szSize in bytes
    bufData to be compared
    +
    +
    +
    Returns
    status information:
      +
    • the sum of (adr+sz) - on success.
    • +
    • any other number - on failure, and represents the failing address.
    • +
    +
    +

    The function Verify compares the content of the Flash memory with the program code *buf.

    +

    The argument adr specifies the start address for the verification.

    +

    The argument sz specifies the size of the verification.

    +

    The argument buf points to the buffer containing the data to be verified.

    +

    Code Example

    +
    unsigned long Verify (unsigned long adr, unsigned long sz, unsigned char *buf) {
    +
    unsigned long i, adr_dest, in_page_ofs;
    +
    +
    if (adr < block_size) { // Verifying 2-nd level bootloader data
    +
    adr_dest = adr + page_usr_size; // skip page 0 of block 0
    +
    } else { // Verifying program data
    +
    FindBlock(adr, 0);
    +
    adr_dest = nand_block_offset + (adr & (block_size-1));
    +
    }
    +
    in_page_ofs = adr_dest & (page_usr_size-1);
    +
    +
    if (ReadPage_HW(adr_dest, page_usr_size, data_buf)) return (1);
    +
    for (i=0; i<sz; i++)
    +
    if (buf[i] != data_buf[i+in_page_ofs])
    +
    break;
    +
    +
    return (adr+i);
    +
    }
    +
    + + + + + diff --git a/CMSIS/Documentation/Pack/html/_c_p__editors.html b/CMSIS/Documentation/Pack/html/_c_p__editors.html new file mode 100644 index 0000000..84b6e94 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_c_p__editors.html @@ -0,0 +1,134 @@ + + + + + +XML Editors +CMSIS-Pack: XML Editors + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    XML Editors
    +
    +
    +

    Some text editors are capable of verifying XML code against a schema file. This is helpful to identify syntactical or structural problems in a PDSC or SVD file early in the development process. Useful editors are:

    + +

    Usually, the XML file that is to be validated and its corresponding schema file need to reside in the same directory. The CMSIS-Pack schema file Pack.xsd and the CMSIS-SVD schema file CMSIS-SVD.xsd are available in the directory .\CMSIS\Utilities of the ARM::CMSIS Pack.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_c_p__packs.html b/CMSIS/Documentation/Pack/html/_c_p__packs.html new file mode 100644 index 0000000..a356e4b --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_c_p__packs.html @@ -0,0 +1,211 @@ + + + + + +Create Software Packs +CMSIS-Pack: Create Software Packs + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Create Software Packs
    +
    +
    +

    The CMSIS-Pack format is used to deliver a Software Pack and is aimed to be scalable for future requirements. It provides a management process and supports a tool independent distribution for:

    +
      +
    • Device Support for tool chains and software applications to target a specific device:
        +
      • Information about the processor and it's features.
      • +
      • C and assembly files for the device startup and access to the memory mapped peripheral registers.
      • +
      • Parameters, technical information, and data sheets about the device family and the specific devices.
      • +
      • Device description and available peripherals.
      • +
      • Memory layout of internal and external RAM and ROM address ranges.
      • +
      • Flash algorithms for programming the device.
      • +
      • Debug and trace configurations as well as System View Description files for device specific display of the memory mapped peripheral registers.
      • +
      +
    • +
    +
      +
    • Board Support for rapid development in the prototyping stage:
        +
      • Information about the development board and it's features.
      • +
      • Parameters, technical information, and data sheets about the board, the mounted microcontroller and peripheral devices.
      • +
      • Drivers for on-board peripheral devices
      • +
      +
    • +
    +
      +
    • Software Components simplify the re-use of software and the management of 3rd party software. They contain:
        +
      • A collection of source modules, header and configuration files as well as libraries.
      • +
      • Documentation of the software, including features and APIs.
      • +
      +
    • +
    + +
      +
    • Example Projects can be used as a reference and starting point for similar applications. They contain:
        +
      • Fully defined application projects that work out of the box in the specified build and debug environments.
      • +
      • Documentation about the purpose of the example, how to build, configure and execute the application.
      • +
      +
    • +
    +
      +
    • User Code Templates help to understand the basic concepts of a software component better and to give the user a good starting point for implementing his application.
    • +
    +

    +Steps to Create a Pack

    +

    The following image shows the basic steps that are required to create a Software Pack:

    +
    +PackCreateSteps.png +
    +
      +
    1. Produce input: Create the files that will be delivered with the Pack.
    2. +
    3. Organize files: Use directories to separate the content of the Pack.
    4. +
    5. Create PDSC file: The XML based PDSC file can be created using any text editor. Editors that can validate XML code against a schema file help to find bugs early in the Pack development stage.
    6. +
    7. Generate PACK: Any compression tool supporting the ZIP format can be used to create a PACK file. PackChk.exe is helpful for the validation of the contents of a Pack.
    8. +
    +

    The following pages will show how to create a Software Pack from scratch. The page Pack with Software Components will start with a simple Pack containing only the PDSC file and a single software component and will then explain further elements of a Pack in more detail. The page Pack with Device Support adds information on the additional requirements that a DFP has, while Pack with Board Support will elaborate on the content specific to a BSP.

    +

    +Pack Conventions

    +

    All files that belong to a Software Pack are compressed into a *.PACK file using a standard ZIP file format. The content of each Software Pack is described in the Pack Description (*.PDSC) file that is part of each Pack. Refer to Pack Description (*.PDSC) Format for more information.

    +

    A Software Pack must have a unique filename following this naming convention: <vendor>.<name>.<version>.pack.

    +

    Where:

    +
      +
    • <vendor> is name of the supplier or vendor of the Software Pack.
    • +
    • <name> is name of the Software Pack. It is the vendor's responsibility to ensure unique package names.
    • +
    • <version>specifies the version number of the Software Pack.
    • +
    • .pack is the file extension identifying a Software Pack.
    • +
    +
    Note
      +
    • The XML elements <vendor>, <name>, and <version> are declared in the PDSC file.
    • +
    • <vendor> and <name> must not contain spaces.
    • +
    +
    +

    The PDSC file needs to reside at the top-level of the Pack file, using it as the root directory for all file references.

    +

    +Pack Tutorial

    +

    The ARM::CMSIS Pack contains tutorials that are explained on the following pages. In the \CMSIS\Pack\Tutorials directory the following three ZIP files are available:

    + + + + + + + + + +
    ZIP File Documentation
    Pack_with_Software_Components.zip Pack with Software Components
    Pack_with_Device_Support.zip Pack with Device Support
    Pack_with_Board_Support.zip Pack with Board Support
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_c_p__s_w_components.html b/CMSIS/Documentation/Pack/html/_c_p__s_w_components.html new file mode 100644 index 0000000..ab08657 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_c_p__s_w_components.html @@ -0,0 +1,545 @@ + + + + + +Pack with Software Components +CMSIS-Pack: Pack with Software Components + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Pack with Software Components
    +
    +
    +

    This section is a tutorial that explains how to create a Software Pack. Initially, a Software Pack with a simple PDSC file is created that contains only one software component. This Software Pack is then extended to show the various features for describing software components.

    +

    Preparations

    +
      +
    1. Create a working directory on you PC, for example C:\temp\working.
    2. +
    3. Go to the directory \CMSIS\Pack\Tutorials available in the ARM::CMSIS Pack installation. Please consult your development tool's documentation for more information on the Pack installation directory structure. In a standard µVision installation, you will find it below C:\Keil_v5\ARM\Pack\ARM\CMSIS\version.
    4. +
    5. Open the file Pack_with_Software_Components.zip.
    6. +
    7. Copy the content of the ZIP file's 01_Create_PDSC directory into your working directory.
    8. +
    9. Make sure that files/directories are not write protected (remove read-only flag).
    10. +
    11. Copy from the directory \CMSIS\Utilities available in the ARM::CMSIS Pack installation the following files into your working directory:
        +
      • PackChk.exe
      • +
      • PACK.xsd
      • +
      +
    12. +
    +

    +Create PDSC File

    +
      +
    1. +

      Open the file vendor.pack_name.pdsc in an editor and change it like this:

      +
      <?xml version="1.0" encoding="UTF-8"?>
      +
      <package schemaVersion="1.4" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="PACK.xsd">
      +
      <vendor>MyVendor</vendor>
      +
      <name>MyPack</name>
      +
      <description>Internal Software Pack</description>
      +
      <url></url>
      +
      <supportContact></supportContact>
      +
      <license>Docs/license.txt</license>
      +
      Note
      All code examples in this and the following sections can be found in the snippets.xml file in the 01_Create_PDSC directory.
      +

      A PDSC file starts with information on the XML version and the encoding. The <package> element declares the version of the schema file and the XSD file that is used to validate the PDSC file (hence the copy of the PACK.xsd file into the working directory):

      +
        +
      • <name> specifies the name of the Pack and must not contain spaces. Example: MyPack and My_Pack are ok, My Pack is not ok.
      • +
      • <description> describes the Pack in a few words
      • +
      • <vendor> states the name of the Pack's vendor and must not contain spaces. Example: ACMECorp and ACME_Corp are OK, ACME Corporation is not OK.
      • +
      • <url> defines the download URL of the Pack (may be left empty)
        Note
          +
        • In this tutorial, the URL is not specified. This means that the Pack will be marked in Pack Installer as Offline and needs to be updated manually. To resolve this issue, it is possible to specify the file "download" location using a file URI. For Windows users, this would look like the following:
                <url>file:///c:/temp/working</url>
        • +
        • It is important to understand how the <url> element works. If you specify a URL, for example http://www.keil.com/pack, then you have to make the PDSC file and the corresponding PACK file(s) available for download at that exact location. The naming of the files follow the standard naming rules. For example, the ARM::CMSIS PDSC and Pack files are available here:
          + http://www.keil.com/pack/ARM.CMSIS.pdsc and
          + http://www.keil.com/pack/ARM.CMSIS.4.3.0.pack and
          + http://www.keil.com/pack/ARM.CMSIS.4.2.0.pack and ...
          + At the specified location, you need to have one (unversioned) PDSC file and can have multiple versioned PACK files, but at least the latest one.
        • +
        +
        +
      • +
      • <supportContact> may provide an email address or web page URL for Pack specific questions/problems
      • +
      • <license> links to an optional license file that will be shown during the installation of the Pack. The installation in development tools will abort if the license agreement is not accepted.
      • +
      +
    2. +
    3. +

      Add release information and keywords:

      +
      <releases>
      +
      <release version="1.0.0" date="2015-03-09">
      +
      Initial version
      +
      </release>
      +
      </releases>
      +
      +
      <keywords>
      +
      <keyword>MyVendor</keyword>
      +
      <keyword>My Software Component</keyword>
      +
      </keywords>
      +

      The information from the <releases> section will be used for:

      +
        +
      • Determining the Pack version (required for the file name of the Pack file)
      • +
      • Display of release information
      • +
      +

      <keywords> may be used for better visibility for search engines.

      +
    4. +
    5. +Add a <components> section with the following:
      <components>
      +
      <component Cclass="MyClass" Cgroup="MyGroup" Csub="MySubGroup" Cversion="1.0.0">
      +
      <description>MySWComp</description>
      +
      <files>
      +
      <file category="doc" name="Docs/MySWComp.htm"/>
      +
      <file category="header" name="MySWComp/header_mylib.h"/>
      +
      <file category="header" name="MySWComp/config/config_mylib.h" attr="config" version="1.0.0"/>
      +
      <file category="source" name="MySWComp/mylib_one.c"/>
      +
      <file category="source" name="MySWComp/mylib_two.c"/>
      +
      </files>
      +
      </component>
      +
      </components>
      +
      Note
      If you are using a header file with the attribute config, save it in a separate directory from all other header files as in this example. As development tools usually add header files using an include path, saving the configuration file with other header files will prohibit its use as a configuration file.
      +More information on <components> will be given in section Software Components. Save the file and close your editor. In the next section, the generation of a Pack will be explained in detail.
    6. +
    +

    +Generate a Pack

    +
      +
    1. +Rename the file vendor.pack_name.pdsc to MyVendor.MyPack.pdsc.
    2. +
    3. +Open the batch file gen_pack.bat from your working directory in a text editor. Check if the following line of code reflects your setup:
      "C:\Program Files\7-Zip\7z.exe" a %PackName% Files -tzip
      +
      If you do not have 7-Zip installed on your PC, you can specify any other ZIP tool that supports command line calls. In that case you have to adapt the command line arguments accordingly.
    4. +
    5. +Having saved gen_pack.bat, you can execute it either by double-clicking or by using the command line which is recommended to see the output of PackChk.exe (open a command window at the location of the files and enter gen_pack.bat). The batch file will:
        +
      • Check the availability of the PDSC file
      • +
      • Copy the PDSC file to the Files directory
      • +
      • Run PackChk.exe on the Files directory
        +
      • +
      • Create a Pack file in the working directory. It will be called MyVendor.MyPack.1.0.0.pack.
      • +
      +
    6. +
    7. +

      Install the Pack by double-clicking it. Depending on the development software that is used, the display of the Pack contents may differ:

      +
      +simplepack_rte.png +
      +MyClass:MyGroup:MySubGroup shown in development tool
      +
    8. +
    +

    +Software Components

    +

    A component lists the files that belong to it and that are relevant for a project. The component itself or each individual file may refer to a condition that must resolve to true; if it is false, the component or file is not applicable in the given context.

    +

    Each software components must have the following attributes that are used to identify the component:

    +
      +
    • Component Class (Cclass): examples are CMSIS, Device, File System
    • +
    • Component Group (Cgroup): examples are CMSIS:RTOS, Device:Startup, File System:CORE
    • +
    • Component Version (Cversion): the version number of the software component.
    • +
    +

    Optionally, a software component may have additional attributes:

    +
      +
    • Component Sub-Group (Csub): examples are CMSIS:RTOS:MyRTOS, Device:Driver USBD:Full-speed
    • +
    • Component Variant (Cvariant): a variant of the software component.
    • +
    • Component Vendor (Cvendor): the supplier of the software component.
    • +
    +

    The Cclass, Cgroup, Csub, Cvariant and Cversion attributes are used together with the vendor specified by the PACK to identify a component. A component vendor must ensure that the combination Cclass, Cgroup, Csub and Cversion is unique and not used by multiple components within the same Pack.

    +

    The following Cclass names have a special meaning:

    +
      +
    • Board Support usually contains board specific drivers for external peripheral devices.
    • +
    • CMSIS contains general CMSIS components like the CORE, DSP extensions, RTOSes (e.g. Keil RTX)
    • +
    • Device contains startup files for the target device
    • +
    • CMSIS Driver contain CMSIS-Driver conform peripheral drivers for the target device. These will be listed below the respective Cgroup API entries (for example Ethernet (API))
    • +
    • File System, Graphics, Network, and USB contain middleware to support these components
    • +
    +

    Other Cclass names can be freely assigned to software components.

    +

    In case multiple interdependent components (belonging to the same Cclass) form part of a solution, these can be grouped in a so called bundle.

    +

    Use the following syntax to reference to software components and APIs:
    + <Vendor>::<Cclass>:<Cgroup>:<Csub>

    +

    Examples:

    +
      +
    • ::CMSIS:RTOS (API) - the CMSIS-RTOS API.
    • +
    • ARM::CMSIS:DSP - the CMSIS-DSP Library.
    • +
    • ::File System:Drive:NOR - the NOR Flash Drive of a file system.
    • +
    +

    Here is an example for the display of software components in a development tool:

    +
    +ComponentDisplay.png +
    +Display of a software component in development tools
    +

    Software Component Files

    +

    Each software component consists of a certain number of files. Each file has at least the following attributes:

    +
      +
    • name: File path, file name, and file extension in the format path/name.extension. The file path is relative to the root directory of the PACK.
    • +
    • category: Defines the purpose of the file. Select the predefined value as listed in the table File Categories.
    • +
    +

    Optionally, every file may have the following attributes:

    +
      +
    • attr: Defines the special use and handling of a file. Select a predefined value as defined in the table File Attributes.
    • +
    • condition: Enter the identifier (attribute id) of a condition. The element is used if the condition resolves to true.
    • +
    • select: Brief description and purpose of the file. The select attribute is required when attr is set to template or interface. When multiple template files of a component have the same select string, they are treated as a single selectable template. This way, multiple template or interface files can be bundled.
    • +
    • src: Path information. The path is specified relative to the Pack Description File (PDSC).
    • +
    • version: File-specific version information. This is used particularly for files copied into the project workspace. Before a file gets copied, a version check avoids unnecessary copy actions. If a file does not have a version, then the component version is used.
    • +
    +

    +Conditions

    +

    A condition describes dependencies on:

    +
      +
    • a specific device
    • +
    • a certain processor
    • +
    • tool attributes
    • +
    • the presence of other components
    • +
    +

    Conditions are used to define AND/OR rules that make components conditional and therefore only available under certain circumstances, for example for specific devices or processors. Conditions are also used to express dependencies between software components.

    +

    Each condition has an id that is unique within the scope of a the PDSC file. An id can be referenced in the condition attribute of components, APIs, examples, files and other conditions. All attributes set in a accept, require, or deny element must resolve to true for the element to become true. A condition becomes true when:

    +
      +
    • At least one accept element is true, AND
    • +
    • all require elements are true, AND
    • +
    • no deny element is true.
    • +
    +

    If a condition resolves to false during processing, the respective element will be ignored.

    +

    Let's modify the example from the Create PDSC File section by adding the requirement for a CMSIS-RTOS and libraries that are specific to a certain Cortex-M class core:

    +
      +
    • mylib_cm0.lib for use with a Cortex-M0 and Cortex-M0+ processor
    • +
    • mylib_cm3.lib for use with a Cortex-M3 processor
    • +
    • mylib_cm4.lib for use with a Cortex-M4 or Cortex-M7 processor
    • +
    +

    Copy the content of the 02_Conditions directory of the Pack_with_Software_Components.zip file to the Files directory in your working environment:

    +
      +
    1. +Add a <conditions> section with the following:
      <conditions>
      +
      <condition id="ARM Compiler">
      +
      <require Tcompiler="ARMCC"/>
      +
      </condition>
      +
      <condition id="CM0">
      +
      <description>Cortex-M0 based device</description>
      +
      <require condition="ARM Compiler"/>
      +
      <accept Dcore="Cortex-M0"/>
      +
      <accept Dcore="Cortex-M0+"/>
      +
      </condition>
      +
      <condition id="CM3">
      +
      <description>Cortex-M3 based device</description>
      +
      <require condition="ARM Compiler"/>
      +
      <accept Dcore="Cortex-M3"/>
      +
      </condition>
      +
      <condition id="CM4_CM7">
      +
      <description>Cortex-M4 based device</description>
      +
      <require condition="ARM Compiler"/>
      +
      <accept Dcore="Cortex-M4"/>
      +
      <accept Dcore="Cortex-M7"/>
      +
      </condition>
      +
      <condition id="CMSIS Core with RTOS">
      +
      <description>CMSIS Core with RTOS for Cortex-M processor</description>
      +
      <accept condition="CM0"/>
      +
      <accept condition="CM3"/>
      +
      <accept condition="CM4_CM7"/>
      +
      <require Cclass="CMSIS" Cgroup="CORE"/>
      +
      <require Cclass="CMSIS" Cgroup="RTOS"/>
      +
      </condition>
      +
      </conditions>
      +
    2. +
    3. +Change the first line of the already existing component by adding the condition and increasing the version number of the component:
      <component Cclass="MyClass" Cgroup="MyGroup" Csub="MySubGroup" Cversion="1.0.1" condition="CMSIS Core with RTOS">
      +
    4. +
    5. +Add the following code to the already existing component:
      <file category="library" condition="CM0" name="MySWComp/Lib/mylib_cm0.lib"/>
      +
      <file category="library" condition="CM3" name="MySWComp/Lib/mylib_cm3.lib"/>
      +
      <file category="library" condition="CM4_CM7" name="MySWComp/Lib/mylib_cm4.lib"/>
      +
      Note that library files should always have a condition with regards to a specific C/C++ compiler. To accomplish this, each processor condition has the additional requirement for the ARM C/C++ compiler.
    6. +
    7. +Add a new version number to the header of the PDSC file so that a Pack with a new version number will be created:
      <release version="1.0.1">
      +
      Conditions added
      +
      </release>
      +
    8. +
    9. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool and observe the differences to version 1.0.0.

      +
      +ConditionsDisplay.png +
      +Display of conditionally added files for a Cortex-M3 device in development tools
      +
    10. +
    +
    Note
    PackChk.exe will will now display an M362 warning:
    *** WARNING M362: (Line 80)
    +  Not all Component Dependencies for 'Cclass=MyClass, Cgroup=MyGroup, Csub=MySubGroup, Cversion=1.0.1, Capiversion=' can be resolved.
    +M502: RTE Model reports: #error 511:  MyVendor::MyClass:MyGroup:MySubGroup : Additional software components required
    +M504: RTE Model reports: MISSING:     -- require CMSIS:CORE
    +M504: RTE Model reports: MISSING:     -- require CMSIS:RTOS
    +
    This is because it cannot resolve and check dependencies on components that are not part of this Pack (in this case the CMSIS components). You can either safely ignore this warning or add the ARM:CMSIS PDSC to the checking process, so that the dependencies can be correctly examined.
    +

    +Variants

    +

    Software components may have variants, for example:

    +
      +
    • Debug version with or release version without diagnostic output
    • +
    • Long/short file names
    • +
    • Fast/slow modes
    • +
    +

    Variants are mutually exclusive (only one variant can be chosen at a time). Cvariant is an optional part of the component ID. The variant specifier is a brief string (e.g. release, debug).

    +
    Note
    Version management relies on variants to remain unchanged between versions.
    +

    The following example introduces a new component to the Pack in two variants: debug and release. Copy the content of the 03_Variants directory of the Pack_with_Software_Components.zip file to the Files directory in your working environment.

    +
      +
    1. +Add the following lines to the components section in your PDSC file:
      <component Cclass="MyVariant" Cgroup="MyGroup" Cvariant="Release" Cversion="1.0.2" condition="CMSIS Core with RTOS">
      +
      <description>Release version of MyVariant</description>
      +
      <RTE_Components_h>
      +
      <!-- the following content goes into file 'RTE_Components.h' -->
      +
      #define RTE_MyVariant_Release /* MyVariant Release Version */
      +
      </RTE_Components_h>
      +
      <files>
      +
      <file category="doc" name="Docs/MySWComp.htm"/>
      +
      <file category="header" name="MySWComp/header_mylib.h"/>
      +
      <file category="header" name="MySWComp/config/config_mylib.h" attr="config" version="1.0.0"/>
      +
      <file category="source" name="MySWComp/mylib_one.c"/>
      +
      <file category="source" name="MySWComp/mylib_two.c"/>
      +
      <file category="library" condition="CM0" name="MySWComp/Lib/mylib_cm0.lib"/>
      +
      <file category="library" condition="CM3" name="MySWComp/Lib/mylib_cm3.lib"/>
      +
      <file category="library" condition="CM4_CM7" name="MySWComp/Lib/mylib_cm4.lib"/>
      +
      </files>
      +
      </component>
      +
      <component Cclass="MyVariant" Cgroup="MyGroup" Cvariant="Debug" Cversion="1.0.2" condition="CMSIS Core with RTOS">
      +
      <description>Debug version of MyVariant</description>
      +
      <RTE_Components_h>
      +
      <!-- the following content goes into file 'RTE_Components.h' -->
      +
      #define RTE_MyVariant_Debug /* MyVariant Debug Version */
      +
      </RTE_Components_h>
      +
      <files>
      +
      <file category="doc" name="Docs/MySWComp.htm"/>
      +
      <file category="header" name="MySWComp/header_mylib.h"/>
      +
      <file category="header" name="MySWComp/config/debug_config_mylib.h" attr="config" version="1.0.0"/>
      +
      <file category="source" name="MySWComp/debug_mylib_one.c"/>
      +
      <file category="source" name="MySWComp/debug_mylib_two.c"/>
      +
      <file category="library" condition="CM0" name="MySWComp/Lib/debug_mylib_cm0.lib"/>
      +
      <file category="library" condition="CM3" name="MySWComp/Lib/debug_mylib_cm3.lib"/>
      +
      <file category="library" condition="CM4_CM7" name="MySWComp/Lib/debug_mylib_cm4.lib"/>
      +
      </files>
      +
      </component>
      +
    2. +
    3. +Add a new revision to reflect the changes in a newly generated Pack:
      <release version="1.0.2">
      +
      Variants introduced
      +
      </release>
      +
    4. +
    5. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool and observe the differences to version 1.0.1.

      +
      +VariantDisplay.png +
      +Display of MyVariant in development tools
      +
    6. +
    +

    +RTE_Components.h

    +

    Sometimes, software components need to know of other components. Depending on the availability or configuration of another component, certain settings may be required. A distinct header file is available to make components aware of each other: RTE_Components.h. To add a line of C code to this header file, simply add this to your component:

    +
    <RTE_Components_h>
    +  #define RTE_MyVariant_Debug               /* MyVariant Debug Version */
    +</RTE_Components_h>
    +

    The #define can be checked by other components in a project.

    +
    Note
    The RTE_components.h file needs to be included somewhere in your source files.
    +

    +Bundles

    +

    A bundle is basically a variant on the Cclass level. It specifies the attributes Cclass, Cversion and optionally Cgroup and Cvendor for a collection of interdependent components. Components within a bundle inherit the attributes set by the bundle and must not set these attributes again. Bundles ensure consistency of attributes across multiple interworking components and restrict the mix and match of components within a Cclass from different solutions. In addition to components, a bundle has the mandatory elements description and doc (for documentation).

    +

    An example of a bundle is shown in the Create a BSP Bundle section where the bundle is used to deliver board support files for a certain development platform.

    +

    +Instances

    +

    Some software components allow several instances. This is useful if more than one peripheral can be connected.

    +
      +
    1. +Adding the information about a maximum number of instances is easy. Change the first component (::MyClass:MyGroup:MySub) as follows:
      <component Cclass="MyClass" Cgroup="MyGroup" Csub="MySubGroup" Cversion="1.0.3" condition="CMSIS Core with RTOS" maxInstances="3">
      +
    2. +
    3. +Add a new version number:
      <release version="1.0.3">
      +
      Maximum number of instances specified
      +
      </release>
      +
    4. +
    5. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool and observe the differences to version 1.0.2. When selecting a certain number of instances of the component, causes the development tool to copy the required configuration files multiple times into the project. This ensures that each component instance can be configured separately.

      +
      +maxInstancesDisplay.png +
      +Display of component instances in development tools
      +
    6. +
    +

    +API Interface

    +

    An API is a special form of a software component that only defines a C/C++ Application Programming Interface (API). An API does not contain the actual implementation (usually provided by source code or library files) and cannot be selected in a development tool. One example is the CMSIS-RTOS API, which is specified as part of CMSIS. However, the actual RTOS implementation is provided by different vendors. An API consists of a name, a brief description as well as one or more header files, and a document containing a detailed specification of the API.

    +

    Copy the content of the 05_APIs directory of the Pack_with_Software_Components.zip file to the Files directory in your working environment:

    +
      +
    1. +Add a <apis> section with the following:
      <api Cclass="Device" Cgroup="MyAPI" exclusive="0">
      +
      <description>API for MyAPI</description>
      +
      <files>
      +
      <file category="doc" name="Docs/API/MyAPI.htm"/>
      +
      <file category="header" name="API/Include/MyAPI.h"/>
      +
      </files>
      +
      </api>
      +
    2. +
    3. +Add a new version number:
      <release version="1.0.4">
      +
      MyAPI added
      +
      </release>
      +
    4. +
    5. +Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool and observe the differences to version 1.0.3. Most likely, you will see none as APIs are not selectable and are thus not displayed in the tools.
    6. +
    +

    +User Code Templates

    +

    User code templates provide a quick start for implementing an application. To add user code templates, add source files with the attribute attr=“template†in a <component>. The select attribute is used to identify template files. Template files with the same select attribute will be added to a project simultaneously.

    +

    Copy the content of the 06_User_Code_Templates directory of the Pack_with_Software_Components.zip file to the Files directory in your working environment:

    +
      +
    1. +Add the following code to both variants (debug and release) of the ::MyVariant:MyGroup component:
      <file category="source" name="MySWComp/Templates/mylib_template1.c" attr="template" select="Easy Template"/>
      +
      <file category="source" name="MySWComp/Templates/mylib_template2.c" attr="template" select="Complex Template"/>
      +
      <file category="source" name="MySWComp/Templates/mylib_template3.c" attr="template" select="Complex Template"/>
      +
    2. +
    3. +Add a new version number:
      <release version="1.0.5">
      +
      User Code Templates added
      +
      </release>
      +
    4. +
    5. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool and observe the differences to version 1.0.4.

      +
      +UserCodeTemplatesDisplay.png +
      +Display of user code templates in development tools
      +
    6. +
    +

    +Example Projects

    +

    Example projects help to understand a certain MCU or development board better. An example and each individual file of it may refer to a condition that must resolve to true; if it is false, the example or file will be ignored. The board element is used to reference to one or more board descriptions using the board vendor and name an example is targeted for. Each example can specify attributes listing related components using Cclass, Cgroup, Csub and Cversion. The <project> element contains the names of the supported development tools and the project files to be loaded.

    +

    Copy the content of the 07_Example_Projects directory of the Pack_with_Software_Components.zip file to the Files directory in your working environment:

    +
      +
    1. +Add an <examples> section with the following:
      <examples>
      +
      <example name="MyDevBoard Example" doc="Abstract.txt" folder="MyPackExample">
      +
      <description>CMSIS-RTOS based example</description>
      +
      <board name="MyDevBoard" vendor="MyVendor"/>
      +
      <project>
      +
      <environment name="uv" load="MyPackExample.uvprojx"/>
      +
      </project>
      +
      <attributes>
      +
      <component Cclass="CMSIS" Cgroup="CORE"/>
      +
      <component Cclass="Device" Cgroup="Startup"/>
      +
      <component Cclass="CMSIS" Cgroup="RTOS"/>
      +
      <component Cclass="MyVariant" Cgroup="MyGroup"/>
      +
      </attributes>
      +
      </example>
      +
      </examples>
      +
    2. +
    3. +Add a new version number:
      <release version="1.0.6">
      +
      Example project added
      +
      </release>
      +
    4. +
    5. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool and observe the differences to version 1.0.5.

      +
      +ExampleDisplay.png +
      +Display of example projects in development tools
      +
    6. +
    +

    Example projects rely on a development board to be present (as the code needs to run on real hardware). In the code above you will notice that a development board called "MyDevBoard" was specified. Pack with Board Support explains how to integrate boards into a Pack.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_c_p__z_i_p_tool.html b/CMSIS/Documentation/Pack/html/_c_p__z_i_p_tool.html new file mode 100644 index 0000000..56f367f --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_c_p__z_i_p_tool.html @@ -0,0 +1,130 @@ + + + + + +ZIP Compression Tools +CMSIS-Pack: ZIP Compression Tools + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    ZIP Compression Tools
    +
    +
    +

    Any ZIP software utility supporting the compression method DEFLATE can be used to create a PACK file. Simply, create the ZIP file and rename it to *.PACK.

    +

    The compression tool 7-Zip supports command line calls and can be used in batch scripts like gen_pack.bat for automated Pack file creation (and verification with PackChk.exe). Installers for 7-Zip are available for 32-bit and 64-bit Windows operating systems.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_config_wizard.html b/CMSIS/Documentation/Pack/html/_config_wizard.html new file mode 100644 index 0000000..a1f7ece --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_config_wizard.html @@ -0,0 +1,420 @@ + + + + + +Configuration Wizard Annotations +CMSIS-Pack: Configuration Wizard Annotations + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Configuration Wizard Annotations
    +
    +
    +

    +Annotation Rules

    +

    Configuration Wizard Annotations consist of annotation items and annotation modifiers. They create GUI-like elements in IDEs for configuration files (see Tool-specific display). Using a GUI-like approach makes it easier for the user to check and adapt configuration files to the application needs. The following rules apply:

    +
      +
    • The Configuration Wizard section must begin within the first 100 lines of code and must start with the following comment line:
      // <<< Use Configuration Wizard in Context Menu >>>
      +
    • +
    • The Configuration Wizard section can end with the following optional comment:
      // <<< end of configuration section >>>
      +
    • +
    • Annotations are written as comments in the code. Each annotation line must start with a double forward slash (//).
    • +
    • By default, the next code symbol that follows the annotation is modified.
    • +
    • Items marked with * in the table below can be followed by a skip-value. A skip-value omits a number of code symbols (see skip example in table). This overwrites the previous rule.
    • +
    • A descriptive text can be added to items. This text is diplayed on screen (see table).
    • +
    • Whitespace characters are ignored in anotation items or annotaion modifiers (text excluded).
    • +
    +

    The following table lists the Configuration Wizard Annotations:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Item Text Description
    <h> yes Heading. Creates a header section. All items and options enclosed by <h> and </h> belong to one group and can be expanded. This entry makes no changes to code symbols. It is just used to group other itmes and modifiers.
    + Excerpt from the Code Example
    // <h>Thread Configuration -- header without checkbox to group other items
    +
    // ...
    +
    // </h>
    +
    Is the header entry as shown in Tool-specific display.
    <e>* yes Heading with enable. Creates a header section with a checkbox to enabled or disabled all items and options enclosed by <e> and </e>. Excerpt from the Code Example.
    // <e>Round-Robin Thread switching -- header with checkbox
    +
    // ===============================
    +
    //
    +
    // <i> Enables Round-Robin Thread switching. -- tooltip information for the header
    +
    #ifndef OS_ROBIN
    +
    #define OS_ROBIN 1 -- this value is set through the checkbox
    +
    #endif
    +
    // <o>Round-Robin Timeout [ticks] <1-1000>
    +
    // <i> Defines how long a thread will execute before a thread switch.
    +
    // <i> Default: 5
    +
    #ifndef OS_ROBINTOUT
    +
    #define OS_ROBINTOUT 5
    +
    #endif
    +
    // </e>
    +
    The entry <e>Round-Robin Thread switching ... </e> sets OS_ROBIN to 1 (checkbox enabled) or 0 (checkbox disabled) and encloses the OS_ROBINTOUT (Round-Robin Timeout) setting. See screen outcome in Tool-specific display.
    <e.i>* yes Heading with Enable: modifies a specific bit (i) (example: <e.4> - changes bit 4 of a value).
    // <e.4>Serial Number
    +
    // <i>Enable Serial Number String.
    +
    // <i>If disabled, Serial Number String will not be assigned to USB Device.
    +
    #define USBD0_STR_DESC_SER_EN 1
    +
    The example creates the heading Serial Number and a checkbox to set the value. If enabled, then bit 4 of USBD0_STR_DESC_SER_EN is set.
    </h> or </e> yes Heading or Enable end.
    <i> yes Tooltip help for previous item.
    // <i>This is shown as a tooltip when hovering over a text.
    +
    Many examples in this table have tooltip examples.
    <q>* yes Option for bit values which can be set via a checkbox.
    // <h> Chip-select control
    +
    // <q> ASYNCWAIT: Wait signal during asynchronous transfer
    +
    // <i> Enables the FSMC to use the wait signal even during an asynchronous protocol.
    +
    // </h>
    +
    #define RTE_FSMC_BCR1_ASYNCWAIT 0 -- this is changed via a checkbox
    +
    <o>* yes Option with selection or number entry.
    // <o>Round-Robin Timeout [ticks] <1-1000> -- text displayed on screen. Range of [ticks] is [1..1000]
    +
    // <i> Defines how long a thread will execute before a thread switch. -- tooltip info
    +
    // <i> Default: 5 -- tooltip info. Both displayed in one tooltip.
    +
    #ifndef OS_ROBINTOUT
    +
    #define OS_ROBINTOUT 5
    +
    #endif
    +
    // </e>
    +
    The example creates an option with the text Round-Robin Timeout [ticks] and a field to enter values that can range between {1..1000].
    <o.i>* yes Modify a single bit (example: <e.4> - modifies bit 4).
    // <o.4> <o.0>High-speed
    +
    // <i>Enable High-speed functionality (if device supports it).
    +
    #define USBD0_HS 0
    +
    The example creates a heading with the text High-speed and a checkbox. If enabled, then bit 4 of USBD0_HS is set.
    <o.x..y>* yes Modify a range of bits. (example: <o.4..5> - bit 4 to 5).
    // <h>String Settings
    +
    // <i>These settings are used to create the String Descriptor.
    +
    // <o.0..15>Language ID <0x0000-0xFCFF>
    +
    // <i>English (United States) = 0x0409.
    +
    // </h>
    +
    #define USBD0_STR_DESC_LANGID 0x0409
    +
    This example creates an expandable header with the text String Settings and an option Language ID. The range of values is set to <0x0000-0xFCFF>. Useres can enter a value from within that range. The option changes the bits 0..15.
    <s>* yes Option with ASCII string entry.
    // <s>Manufacturer String
    +
    // <i>String Descriptor describing Manufacturer.
    +
    #define USBD0_STR_DESC_MAN L"Keil Software"
    +
    Displays an option with the text Manufacturer String and creates a field in which the user can enter a text. The size of the string is not limited.
    <s.i>* yes Option with ASCII string entry and a size limit of i characters.
    // <s.126>Manufacturer String
    +
    // <i>String Descriptor describing Manufacturer.
    +
    #define USBD0_STR_DESC_MAN L"Keil Software"
    +
    The example sets a size limit od 126 character. default string is "Keil Software".
    skip example
    + <qi>;
    + <oi>; <oi.x>;
    + <si>; <si.x>
    yes Skip i items. Can be applied to all annotation items marked with a * in this table.
    // <o2>Skip 2 and modify the third item after this entry <1-9>
    +
    #define VALUE1 1000
    +
    #define VALUE2 2000
    +
    #define MODIFY_THIS 3000
    +
    The example skips 2 items and modifies the third.
    Modifier   Description
    <0-31> no Value range for option fields.
    <0-100:10> no Value range for option fields with step 10.
    <0x40-0x1000:0x10> no Value range in hex format and step 10.
    <value=> yes Creates a drop dow-list and displays the text. value is written to the next item. Excerpt from the Code Example.
    // <o>Timer Thread Priority -- creates a drop-down with the list below.
    +
    // <1=> Low
    +
    // <2=> Below Normal <3=> Normal <4=> Above Normal
    +
    // <5=> High
    +
    // <6=> Realtime (highest)
    +
    // <i> Defines priority for Timer Thread -- tooltip info
    +
    // <i> Default: High -- tooltip info
    +
    #ifndef OS_TIMERPRIO
    +
    #define OS_TIMERPRIO 5
    +
    #endif
    +
    In this example, the screen would show the option Timer Thread Priority. The field Value would display the text High. OS_TIMERPRIO is set to 5. When clicking on the field, a drop-down would show all options. See Tool-specific display.
    <#+1>   <#-1>
    + <#*8>   <#/3>
    no Modifies the entered or displayed value according to the operator (add, sub, mul, div). The changed value is set for the code symbol.
    + Excerpt from Code Example.
    // <o>Default Thread stack size [bytes] <64-4096:8><#/4>
    +
    // <i> Defines default stack size for threads with osThreadDef stacksz = 0
    +
    // <i> Default: 200
    +
    #ifndef OS_STKSIZE
    +
    #define OS_STKSIZE 50
    +
    #endif
    +
    The option Default Thread stack size [bytes] accepts values in the range [64..4096]. The value (here 200) set in the field is devided by 4 (<#/4>) . The result of the division (200/4) is put into the code symbol OS_STKSIZE, which was set to 50. The screen will display the number 200. See Tool-specific display.
    +

    +Code Example

    +

    You can copy the code into a C-file and check the outcome in the uVision Editor.

    +
    //-------- <<< Use Configuration Wizard in Context Menu>>> -----------------
    +
    //
    +
    // <h>Thread Configuration
    +
    // =======================
    +
    //
    +
    // <o>Number of concurrent running threads <0-250>
    +
    // <i> Defines max. number of threads that will run at the same time.
    +
    // <i> Default: 6
    +
    #ifndef OS_TASKCNT
    +
    #define OS_TASKCNT 6
    +
    #endif
    +
    +
    // <o>Default Thread stack size [bytes] <64-4096:8><#/4>
    +
    // <i> Defines default stack size for threads with osThreadDef stacksz = 0
    +
    // <i> Default: 200
    +
    #ifndef OS_STKSIZE
    +
    #define OS_STKSIZE 50
    +
    #endif
    +
    +
    // <o>Main Thread stack size [bytes] <64-32768:8><#/4>
    +
    // <i> Defines stack size for main thread.
    +
    // <i> Default: 200
    +
    #ifndef OS_MAINSTKSIZE
    +
    #define OS_MAINSTKSIZE 50
    +
    #endif
    +
    +
    // <o>Number of threads with user-provided stack size <0-250>
    +
    // <i> Defines the number of threads with user-provided stack size.
    +
    // <i> Default: 0
    +
    #ifndef OS_PRIVCNT
    +
    #define OS_PRIVCNT 0
    +
    #endif
    +
    +
    // <o>Total stack size [bytes] for threads with user-provided stack size <0-1048576:8><#/4>
    +
    // <i> Defines the combined stack size for threads with user-provided stack size.
    +
    // <i> Default: 0
    +
    #ifndef OS_PRIVSTKSIZE
    +
    #define OS_PRIVSTKSIZE 0
    +
    #endif
    +
    +
    // <q>Check for stack overflow
    +
    // <i> Includes the stack checking code for stack overflow.
    +
    // <i> Note that additional code reduces the Kernel performance.
    +
    #ifndef OS_STKCHECK
    +
    #define OS_STKCHECK 1
    +
    #endif
    +
    +
    // <o>Processor mode for thread execution
    +
    // <0=> Unprivileged mode
    +
    // <1=> Privileged mode
    +
    // <i> Default: Privileged mode
    +
    #ifndef OS_RUNPRIV
    +
    #define OS_RUNPRIV 1
    +
    #endif
    +
    +
    // </h>
    +
    +
    // <h>RTX Kernel Timer Tick Configuration
    +
    // ======================================
    +
    // <q> Use Cortex-M SysTick timer as RTX Kernel Timer
    +
    // <i> Use the Cortex-M SysTick timer as a time-base for RTX.
    +
    #ifndef OS_SYSTICK
    +
    #define OS_SYSTICK 1
    +
    #endif
    +
    //
    +
    // <o>Timer clock value [Hz] <1-1000000000>
    +
    // <i> Defines the timer clock value.
    +
    // <i> Default: 12000000 (12MHz)
    +
    #ifndef OS_CLOCK
    +
    #define OS_CLOCK 12000000
    +
    #endif
    +
    +
    // <o>Timer tick value [us] <1-1000000>
    +
    // <i> Defines the timer tick value.
    +
    // <i> Default: 1000 (1ms)
    +
    #ifndef OS_TICK
    +
    #define OS_TICK 1000
    +
    #endif
    +
    +
    // </h>
    +
    +
    // <h>System Configuration
    +
    // =======================
    +
    //
    +
    // <e>Round-Robin Thread switching
    +
    // ===============================
    +
    //
    +
    // <i> Enables Round-Robin Thread switching.
    +
    #ifndef OS_ROBIN
    +
    #define OS_ROBIN 1
    +
    #endif
    +
    +
    // <o>Round-Robin Timeout [ticks] <1-1000>
    +
    // <i> Defines how long a thread will execute before a thread switch.
    +
    // <i> Default: 5
    +
    #ifndef OS_ROBINTOUT
    +
    #define OS_ROBINTOUT 5
    +
    #endif
    +
    +
    // </e>
    +
    +
    // <e>User Timers
    +
    // ==============
    +
    // <i> Enables user Timers
    +
    #ifndef OS_TIMERS
    +
    #define OS_TIMERS 1
    +
    #endif
    +
    +
    // <o>Timer Thread Priority
    +
    // <1=> Low
    +
    // <2=> Below Normal <3=> Normal <4=> Above Normal
    +
    // <5=> High
    +
    // <6=> Realtime (highest)
    +
    // <i> Defines priority for Timer Thread
    +
    // <i> Default: High
    +
    #ifndef OS_TIMERPRIO
    +
    #define OS_TIMERPRIO 5
    +
    #endif
    +
    +
    // <o>Timer Thread stack size [bytes] <64-4096:8><#/4>
    +
    // <i> Defines stack size for Timer thread.
    +
    // <i> Default: 200
    +
    #ifndef OS_TIMERSTKSZ
    +
    #define OS_TIMERSTKSZ 50
    +
    #endif
    +
    +
    // <o>Timer Callback Queue size <1-32>
    +
    // <i> Number of concurrent active timer callback functions.
    +
    // <i> Default: 4
    +
    #ifndef OS_TIMERCBQS
    +
    #define OS_TIMERCBQS 4
    +
    #endif
    +
    +
    // </e>
    +
    +
    // <o>ISR FIFO Queue size<4=> 4 entries <8=> 8 entries
    +
    // <12=> 12 entries <16=> 16 entries
    +
    // <24=> 24 entries <32=> 32 entries
    +
    // <48=> 48 entries <64=> 64 entries
    +
    // <96=> 96 entries
    +
    // <i> ISR functions store requests to this buffer,
    +
    // <i> when they are called from the interrupt handler.
    +
    // <i> Default: 16 entries
    +
    #ifndef OS_FIFOSZ
    +
    #define OS_FIFOSZ 16
    +
    #endif
    +
    +
    // </h>
    +
    +
    //------------- <<< end of configuration section>>> -----------------------
    +

    +Tool-specific display

    +

    It is left to the development tool to interprete and display Configuration Wizard Annotations. The uVision IDE displays the code above in the following way:

    +
    +RTX_Conf_CM_Wizard_View.png +
    +Configuration Wizard Display
    +

    Where

    +

    Option are device properties, which can be represented in a tree structure. Each item can have an explanatory tooltip.

    +

    Value sets the option value. Can contain controls to encapsulate data in predefined drop-down lists.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_create_pack__d_f_p.html b/CMSIS/Documentation/Pack/html/_create_pack__d_f_p.html new file mode 100644 index 0000000..2d36f2c --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_create_pack__d_f_p.html @@ -0,0 +1,533 @@ + + + + + +Pack with Device Support +CMSIS-Pack: Pack with Device Support + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Pack with Device Support
    +
    +
    +

    A Software Pack that contains a <devices> element is called Device Family Pack (DFP). A DFP may contain additional Software Components or Example Projects or any combination of those. The typical content of a DFP is:

    +
      +
    • Device Properties explaining the capabilities of a device or a device family in more detail.
    • +
    • Software Components that configure the device and basic device drivers, in particular:
        +
      • CMSIS-compliant System and Startup Files required to setup the C run-time library, device clock, and memory interface.
      • +
      • Peripheral Driver Interfaces that provide software routines for physical device peripherals used by middleware stacks. Drivers may adhere to the CMSIS-Driver standard.
      • +
      +
    • +
    • One or more System View Description Files describing the programmer's view of the device's peripherals.
    • +
    • Flash Programming Algorithms for erasing and downloading code into on-chip Flash.
    • +
    • Example Projects that show the usage of the device and its peripherals.
    • +
    • User Code Templates that can be used as a starting point for application development.
    • +
    +

    This section explains how to create a DFP. Initially, the PDSC file in the DFP only describes devices. This DFP is then extended to contain also SVD files, Flash algorithms, and device related software components such as system and HAL files. Example projects and code templates may be added as described in the section Pack with Software Components.

    +

    DFP Use Cases

    +

    A Device Family Pack (DFP) may be provided by a Silicon Vendor and is used to extend development tools with support for new devices. In general, the DFP enables Silicon Vendors to distribute tool independent device support for their device families.
    + DFPs can also be used to provide information for the display on web sites. One example is the new device database on www.keil.com/dd2/:

    +

    +
    +DeviceDatabase2.png +
    +Device information on a web site extracted from a DFP
    +

    Steps to Create a DFP

    +
    +DFPFlow.png +
    +

    +Basic Device Family Pack

    +

    In the following sections, a DFP will be created for a fictional device family called MVCM3 from the device vendor MyVendor. The device family consists of four member that are separated into two sub-families. The specification of the MVCM3 family is as follows:

    +
    +MVCM3SpecTable.png +
    +MVCM3 Device Family Specification
    +

    Preparations

    +
      +
    1. Create a working directory on you PC, for example C:\temp\working_dfp.
    2. +
    3. Go to the directory \CMSIS\Pack\Tutorials available in the ARM::CMSIS Pack installation. Please consult your development tool's documentation for more information on the Pack installation directory structure. In a standard µVision installation, you will find it below C:\Keil_v5\ARM\Pack\ARM\CMSIS\version.
    4. +
    5. Open the file Pack_with_Device_Support.zip.
    6. +
    7. Copy the content of the ZIP file's 01_Basic_Pack directory into your working directory.
    8. +
    9. Make sure that files/directories are not write protected (remove read-only flag).
    10. +
    11. Copy from the directory \CMSIS\Utilities available in the ARM::CMSIS Pack installation the following files into your working directory:
        +
      • PackChk.exe
      • +
      • PACK.xsd
      • +
      • SVDConv.exe
      • +
      +
    12. +
    13. Open the MyVendor.MVCM3.pdsc file in an editor.
    14. +
    +

    Code Example

    +
      +
    1. +Add a <devices> section in the PDSC file with the following:
      <devices>
      +
      <family Dfamily="MVCM3 Series" Dvendor="Generic:5">
      +
      <processor Dcore="Cortex-M3" DcoreVersion="r2p1" Dfpu="0" Dmpu="0" Dendian="Little-endian"/>
      +
      <description>
      +
      The MVCM3 device family contains an ARM Cortex-M3 processor, running up to 100 MHz with a versatile set of on-chip peripherals.
      +
      </description>
      +
      <!-- ************************ Sub-family 'MVCM3100' **************************** -->
      +
      <subFamily DsubFamily="MVCM3100">
      +
      <processor Dclock="50000000"/>
      +
      <!-- ************************* Device 'MVCM3110' ***************************** -->
      +
      <device Dname="MVCM3110">
      +
      <memory id="IROM1" start="0x00000000" size="0x4000" startup="1" default="1"/>
      +
      <memory id="IRAM1" start="0x20000000" size="0x0800" init ="0" default="1"/>
      +
      </device>
      +
      <!-- ************************* Device 'MVCM3120' ***************************** -->
      +
      <device Dname="MVCM3120">
      +
      <memory id="IROM1" start="0x00000000" size="0x8000" startup="1" default="1"/>
      +
      <memory id="IRAM1" start="0x20000000" size="0x1000" init ="0" default="1"/>
      +
      </device>
      +
      </subFamily>
      +
      <!-- ************************ Sub Family 'MVCM3200' **************************** -->
      +
      <subFamily DsubFamily="MVCM3200">
      +
      <processor Dclock="100000000"/>
      +
      <!-- ************************* Device 'MVCM3250' ***************************** -->
      +
      <device Dname="MVCM3250">
      +
      <memory id="IROM1" start="0x00000000" size="0x4000" startup="1" default="1"/>
      +
      <memory id="IRAM1" start="0x20000000" size="0x0800" init ="0" default="1"/>
      +
      </device>
      +
      <!-- ************************* Device 'MVCM3260' ***************************** -->
      +
      <device Dname="MVCM3260">
      +
      <memory id="IROM1" start="0x00000000" size="0x8000" startup="1" default="1"/>
      +
      <memory id="IRAM1" start="0x20000000" size="0x1000" init ="0" default="1"/>
      +
      </device>
      +
      </subFamily>
      +
      </family>
      +
      </devices>
      +
      Note
        +
      • Dvendor IDs are not freely selectable. The current set of IDs can be found in the PACK.xsd file (available in the ARM::CMSIS Pack in the CMSIS\Pack\Utilities directory).
      • +
      • All code examples in this and the following sections can be found in the snippets.xml file in the 01_Basic_Pack directory.
      • +
      +
      +
    2. +
    3. +

      Save the PDSC file and generate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool.

      +
      +BasicDFPDisplay.png +
      +Display of microcontroller devices in development tools
      +
    4. +
    +
    Note
    PackChk.exe will display M350 informations:
    *** INFO M350:
    +  No 'Startup' found for [Generic:5] 'MVCM3110' ()
    +
    We will address this problem in the next section.
    +

    +System and Startup Files

    +

    CMSIS-CORE defines the following files to be used by an embedded application:

    +
      +
    • startup_<device>.s with reset handler and exception vectors. It is executed after reset and calls SystemInit and may contain stack and heap configurations for the user application.
    • +
    • system_<device>.c and system_<device>.h with general system configuration information (i.e. for clock and BUS setup).
    • +
    • <device.h> gives access to processor core and all peripherals. This file should be generated out of the SVD file using SVDConv.exe to ensure consistency between the header file and what is being displayed by the debugger.
    • +
    +
    +SystemStartupFiles.png +
    +System and startup files in relation to user code
    +
    Note
    CMSIS-CORE explains the structure of the system and startup files and how to create them.
    +

    Copy the content of the 02_System_and_Startup directory of the Pack_with_Device_Support.zip file to the Files directory in your working environment:

    +
      +
    1. +Add a <conditions> section in your PDSC with the following (the conditions section provides more information on this step):
      <condition id="MVCM3 CMSIS-CORE">
      +
      <!-- conditions selecting Devices -->
      +
      <description>MyVendor MVCM3 Series devices and CMSIS-CORE</description>
      +
      <require Cclass="CMSIS" Cgroup="CORE"/>
      +
      <require Dvendor="Generic:5" Dname="MVCM3*"/>
      +
      </condition>
      +
      <condition id="Startup ARM">
      +
      <description>Startup assembler file for ARMCC</description>
      +
      <require Tcompiler="ARMCC"/>
      +
      </condition>
      +
      <condition id="Startup GCC">
      +
      <description>Startup assembler file for GCC</description>
      +
      <require Tcompiler="GCC"/>
      +
      </condition>
      +
      <condition id="Startup IAR">
      +
      <description>Startup assembler file for IAR</description>
      +
      <require Tcompiler="IAR"/>
      +
      </condition>
      +
      Note
      The assembler based startup_<device>.s file is tool dependent. Therefore, separate conditions for the various tool vendors are required.
      +
    2. +
    3. +Add a <components> section in your PDSC with the following (the components section provides more information on this step):
      <component Cclass="Device" Cgroup="Startup" Cversion="1.0.0" condition="MVCM3 CMSIS-CORE">
      +
      <description>System Startup for MyVendor MVCM3 Series</description>
      +
      <files>
      +
      <!-- include folder -->
      +
      <file category="include" name="Device/Include/"/>
      +
      +
      <file category="source" name="Device/Source/ARM/startup_MVCM3xxx.s" attr="config" condition="Startup ARM" version="1.0.0"/>
      +
      <file category="source" name="Device/Source/GCC/startup_MVCM3xxx.S" attr="config" condition="Startup GCC" version="1.0.0"/>
      +
      <file category="source" name="Device/Source/IAR/startup_MVCM3xxx.s" attr="config" condition="Startup IAR" version="1.0.0"/>
      +
      +
      <file category="source" name="Device/Source/system_MVCM3xxx.c" attr="config" version="1.0.0"/>
      +
      </files>
      +
      </component>
      +
    4. +
    5. +Add a new version number:
      <release version="1.0.1">
      +
      Startup files included
      +
      </release>
      +
    6. +
    7. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. Afterwards, install the Pack in your development tool and create a new project. Select the software components ::CMSIS:CORE and ::Device:Startup for the project:

      +
      +StartupSystemFilesAdded.png +
      +Startup and system files added to a project
      +
    8. +
    +
    Note
    PackChk.exe will display M350 informations:
    *** INFO M353: .\Files\MyVendor.MVCM3.pdsc (Line 98)
    +  No 'Device Headerfile' File found for Component 'Startup' (MyVendor::Device.Startup:1.0.0) for '[Generic:5] MVCM3110' (ARMCC)
    +
    We will address this problem in the next section.
    +

    +System View Description File

    +

    CMSIS-SVD formalizes the description of the programmer's view for the system contained in ARM Cortex-M processor-based microcontrollers, in particular the memory mapped registers of the peripherals. The level of detail contained in system view descriptions is comparable to what is found in device reference manuals published by silicon vendors. The information ranges from a high level functional description of a peripheral all the way down to the definition and purpose of an individual bit field in a memory mapped register. CMSIS-SVD files are developed and maintained by the silicon vendors. The XML based SVD file is the input for SVDConv.exe that generates the tool dependent debug view and the device header file.

    +
    +SVDFlow.png +
    +SVD file conversion flow
    +

    Copy the content of the 03_SVD_File directory of the Pack_with_Device_Support.zip file to the Files directory in your working environment:

    +
      +
    1. +Open the file MVCM3xxx.svd in the Files\SVD directory in an editor and change the following:
      <device schemaVersion="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd" >
      +
      <vendor>MyVendor</vendor> <!-- device vendor name -->
      +
      <vendorID>Generic</vendorID> <!-- device vendor short name -->
      +
      <name>MVCM3xxx</name> <!-- name of part-->
      +
      <series>MVCM3xxx</series> <!-- device series the device belongs to -->
      +
      <version>1.2</version> <!-- version of this description, adding CMSIS-SVD 1.1 tags -->
      +
      <description>ARM 32-bit Cortex-M3 Microcontroller based device, CPU clock up to 100 MHz.</description>
      +
    2. +
    3. +Open a command window in your working directory and enter:
      C:\temp\working_dfp>SVDConv.exe Files\SVD\MVCM3xxx.svd --generate=header –-fields=macro
      +
    4. +
    5. +You should see some output of SVDConv similar to this:
      CMSIS-SVD SVD Consistency Checker / Header File Generator V2.86g
      +Copyright (C) 2010 - 2014 ARM Ltd and ARM Germany GmbH. All rights reserved.
      +Options: "Files\SVD\MVCM3xxx.svd" --generate=header --fields=macro
      +Reading file: "Files\SVD\MVCM3xxx.svd"
      + 
      +Decoding using XML SVD Schema V1.1
      + 
      +Found 0 Errors and 0 Warnings
      + 
      +Return Code: 0 (OK)
      +
      Move the generated header file MVCM3xxx.h to the Device\Include directory.
    6. +
    7. +Add the following two lines at the family level in the PDSC file:
      <compile header="Device/Include/MVCM3xxx.h"/>
      +
      <debug svd="SVD/MVCM3xxx.svd"/>
      +
    8. +
    9. +Add a new version number:
      <release version="1.0.2">
      +
      SVD and header file included
      +
      </release>
      +
    10. +
    11. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. Afterwards, install the Pack in your development tool and create a new project. Depending on your development environment, you will be able to see the SVD file included in your project:

      +
      +SVDIncluded.png +
      +Project with SVD file
      +
      Note
      For more information on CMSIS-SVD, please visit www.keil.com/cmsis/svd
      +
    12. +
    +

    +Flash Programming Algorithms

    +

    Flash Programming Algorithms are used to erase or download applications to Flash devices. A DFP usually contains predefined Flash algorithms for programming its supported devices. The page Algorithm Functions explains the mechanisms in more detail.

    +

    For the MVCM3 device family, two flash algorithms have to be created. MVCM3110/250 have 16 kB of Flash, whereas MVCM3120/260 have 32 kB of Flash memory.

    +

    Copy the content of the 04_Flash_Programming directory of the Pack_with_Device_Support.zip file to the working directory:

    +
      +
    1. +Rename the project file NewDevice.uvproj (in the _Template_Flash directory) to represent the new Flash ROM device name, for example MVCM3XXX_16.uvproj.
    2. +
    3. +

      Open the project with uVision. The selected target (Cortex-M) is fine for the device.

      +
      Note
      Creating a Flash programming algorithm with MDK-Lite is not supported.
      +
    4. +
    5. +

      Open the dialog Project - Options for Target - Output and change the content of the field Name of Executable to represent the device, here MCVM3XXX_16.

      +
      +FPATargetOptions.png +
      +Options for Target 'Cortex-M'
      +
    6. +
    7. +In the real world, you would now start to adapt the programming algorithms in the file FlashPrg.c. For now, only change the device parameters (Device Name, Device Size, and Sector Size) in the FlashDev.c file:
      struct FlashDevice const FlashDevice = {
      +
      FLASH_DRV_VERS, // Driver Version, do not modify!
      +
      "MVCM3110/250 Flash", // Device Name
      +
      ONCHIP, // Device Type
      +
      0x00000000, // Device Start Address
      +
      0x00004000, // Device Size in Bytes (16kB)
      +
      1024, // Programming Page Size
      +
      0, // Reserved, must be 0
      +
      0xFF, // Initial Content of Erased Memory
      +
      100, // Program Page Timeout 100 mSec
      +
      3000, // Erase Sector Timeout 3000 mSec
      +
      +
      // Specify Size and Address of Sectors
      +
      0x002000, 0x000000, // Sector Size 8kB (2 Sectors)
      +
      SECTOR_END
      +
      };
      +
    8. +
    9. +Use Project - Build Target to generate the new Flash programming algorithm. The algorithm will be created in the parent directory of the _Template_Flash directory.
    10. +
    11. +Copy the output file ..\MVCM3XXX_16.FLM to a new subdirectory called Files\Flash. Add these lines to the MVCM3110/250 device sections:
      algorithm name="Flash/MVCM3XXX_16.FLM" start="0x00000000" size="0x4000" default="1"/>
      +
    12. +
    13. +Create a MVCM3XXX_32.flm for the MVCM3120/260 devices.
    14. +
    15. +Add these lines to the MVCM3120/260 device sections:
      algorithm name="Flash/MVCM3XXX_32.FLM" start="0x00000000" size="0x8000" default="1"/>
      +
    16. +
    17. +Add a new version number:
      <release version="1.0.3">
      +
      Flash Programming Algorithms added
      +
      </release>
      +
    18. +
    19. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. Afterwards, install the Pack in your development tool. Depending on your development environment, you will be able to see the Flash Programming Algorithms included in your project (either for a new project or by adding it manually to an existing project):

      +
      +FPADisplay.png +
      +Display of Flash Programming Algorithm
      +
      Note
      The page Flash Programming Algorithms gives more information on the subject.
      +
    20. +
    +

    +Device Properties

    +

    To limit redundancy, devices can be organized in two hierarchy groups:

    +
      +
    • family: the attributes of a device family which includes also the processor.
    • +
    • subFamily: attributes of an optional sub-family; this adds or modifies features of a family.
    • +
    +

    Parameters of each single device are defined in:

    +
      +
    • device: attributes of a specific silicon device
    • +
    • variant: attributes of a device variant (for example, with different package or temperature range) or an OEM device or board that integrates the device.
    • +
    +

    A device is described by the following properties:

    +
      +
    • description: textual device description
    • +
    • feature: categorized list of device peripherals and features. This list is used on web sites for the display of device features.
    • +
    • book: documentation about the device and its processor(s)
    • +
    • processor: processor and processor features embedded in the device
    • +
    • compile: device specific general settings for the build tools
    • +
    • debugconfig: default settings for a debug connection
    • +
    • debugport: debug port description of the device for the debugger to configure a debug connection.
    • +
    • debug: device specific information for the debugger to configure a debug connection including System View Description files.
    • +
    • trace: device specific information for the debugger to configure trace.
    • +
    • memory: memory layout of the device for internal and external RAM and ROM regions
    • +
    • algorithm: device specific Flash programming algorithms
    • +
    +

    A device inherits all specifications from both the family and sub-family levels. Some properties are required to be unique. For example, the name of the SVD file attribute of the <debug> property. Therefore, the SVD file specified on the family level can be redefined by the attribute on the sub-family or device level. Other information like the <description> and <feature> entries are adding up, starting with the information from the family and sub-family level and finalizing with the information on the device level.

    +

    The following shows how to specify the device properties for the MVCM3110 device (refer to the specification shown in Basic Device Family Pack). The other members of the family are specified accordingly.

    +

    Copy the content of the 05_Device_Properties directory of the Pack_with_Device_Support.zip file to the Files directory of your working environment:

    +
      +
    1. +The MVCM3 Series family properties processor, compile, description, and debug are already specified. There are additional common properties that can be specified on the family level: book and feature. Add the following lines to the PDSC file in the <family> section:
      <book name="Docs/dui0552a_cortex_m3_dgug.pdf" title="Cortex-M3 Generic User Guide"/>
      +
      <book name="Docs/MVCM3XXX_Datasheet.pdf" title="MVCM3 Series Datasheet"/>
      +
      <book name="Docs/MVCM3XXX_Product_Brief.pdf" title="MVCM3 Product Brief"/>
      +
      <feature type="ExtInt" n="16"/>
      +
      <feature type="Temp" n="-40" m="105" name="Extended Temperature Range"/>
      +
      <feature type="VCC" n="2.5" m="3.6"/>
      +
      <feature type="RTC" n="32768"/>
      +
      <feature type="WDT" n="1"/>
      +
    2. +
    3. +The MVCM31xx sub-family has some features that are common for the two member devices. Please add the following code to the MVCM31100 <subFamily> section:
      <feature type="IOs" n="26"/>
      +
      <feature type="I2C" n="1"/>
      +
      <feature type="UART" n="4"/>
      +
      <feature type="Timer" n="6" m="32"/>
      +
      <feature type="QFP" n="32"/>
      +
    4. +
    5. +The MVCM3110 device has some features that are unique to that device. Please add the following code to the MVCM3110 <device> section:
      <feature type="PWM" n="2" m="16"/>
      +
    6. +
    +

    +Device Specific Software Components

    +

    Finally, software components and example projects need to be added to the DFP.

    +
      +
    1. +Add the following lines to the PDSC file in the <components> section:
      <component Cclass="Device" Cgroup="HAL" Csub="GPIO" Cversion="1.0.0" condition="MVCM3 CMSIS-CORE">
      +
      <description>GPIO HAL for MyVendor MVCM3 Series</description>
      +
      <files>
      +
      <file category="header" name="Device/Include/GPIO.h"/>
      +
      <file category="source" name="Device/Source/GPIO.c"/>
      +
      </files>
      +
      </component>
      +
      +
      <component Cclass="Device" Cgroup="HAL" Csub="ADC" Cversion="1.0.0" condition="MVCM3 CMSIS-CORE">
      +
      <description>ADC HAL for MyVendor MVCM3 Series</description>
      +
      <files>
      +
      <file category="header" name="Device/Include/ADC.h"/>
      +
      <file category="source" name="Device/Source/ADC.c"/>
      +
      </files>
      +
      </component>
      +
      +
      <component Cclass="CMSIS Driver" Cgroup="I2C" Cversion="1.0.0" condition="MVCM3 CMSIS-CORE" maxInstances="3">
      +
      <description>I2C Driver for MVCM3 Series</description>
      +
      <RTE_Components_h>
      +
      #define RTE_Drivers_I2C0 /* Driver I2C0 */
      +
      #define RTE_Drivers_I2C1 /* Driver I2C1 */
      +
      #define RTE_Drivers_I2C2 /* Driver I2C2 */
      +
      </RTE_Components_h>
      +
      <files>
      +
      <file category="source" name="Drivers/I2C/I2C_MVCM3.c"/>
      +
      <file category="header" name="Drivers/I2C/I2C_MVCM3.h"/>
      +
      </files>
      +
      </component>
      +
      +
      <component Cclass="CMSIS Driver" Cgroup="UART" Cversion="1.0.0" condition="MVCM3 CMSIS-CORE" maxInstances="5">
      +
      <description>UART Driver for MVCM3 Series</description>
      +
      <RTE_Components_h>
      +
      #define RTE_Drivers_UART0 /* Driver UART0 */
      +
      #define RTE_Drivers_UART1 /* Driver UART1 */
      +
      #define RTE_Drivers_UART2 /* Driver UART2 */
      +
      #define RTE_Drivers_UART3 /* Driver UART3 */
      +
      #define RTE_Drivers_UART4 /* Driver UART4 */
      +
      </RTE_Components_h>
      +
      <files>
      +
      <file category="source" name="Drivers/UART/UART_MVCM3.c"/>
      +
      <file category="header" name="Drivers/UART/UART_MVCM3.h"/>
      +
      </files>
      +
      </component>
      +
      Note
      The first two software components are added to Device::HAL because they are specific to the device family and are not using a published API. The drivers for I2C and UART are adhering to the CMSIS-Driver specification. Thus, they are added to the Cclass CMSIS Driver.
      +
    2. +
    3. +An example project has also been created. Add an <examples> section with the following:
      <examples>
      +
      <example name="Dummy" doc="Abstract.txt" folder="Examples/dummy">
      +
      <description>Dummy project</description>
      +
      <board name="MVCM3 Starter Kit" vendor="MyVendor"/>
      +
      <project>
      +
      <environment name="uv" load="dummy.uvprojx"/>
      +
      </project>
      +
      <attributes>
      +
      <category>Getting Started</category>
      +
      </attributes>
      +
      </example>
      +
      </examples>
      +
    4. +
    5. +Add a new version number:
      <release version="1.0.4">
      +
      DFP finalized
      +
      </release>
      +
    6. +
    7. +Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. Afterwards, install the Pack in your development tool.
    8. +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_create_pack_board.html b/CMSIS/Documentation/Pack/html/_create_pack_board.html new file mode 100644 index 0000000..f34be8c --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_create_pack_board.html @@ -0,0 +1,256 @@ + + + + + +Pack with Board Support +CMSIS-Pack: Pack with Board Support + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Pack with Board Support
    +
    +
    +

    A Software Pack that contains a <board> element is called Board Support Pack (BSP). A BSP may contain additional Software Components, Example Projects, as well as Code Templates. The typical content of a BSP is:

    +
      +
    • Source code, libraries, header/configuration files for the underlying hardware and documentation (for example user manuals, getting started guides, and schematics).
    • +
    • Example Projects that show the usage of the development board and its peripherals.
    • +
    • User Code Templates that can be used as a starting point for using the development board or the mounted device.
    • +
    +

    This section is a tutorial that explains how to create a BSP. Initially the PDSC file in the BSP only describes an evaluation board. This BSP is then extended to contain also software components that interface with the hardware of the board. Example projects and code templates may be added as described in the section Pack with Software Components.

    +

    BSP Use Cases

    +

    A BSP is typically provided by a Board Vendor and is used to extend development tools with support for development boards. In general, the BSP enables Board Vendors to distribute tool independent board support for their development platforms.
    + BSPs can also be used to provide information for the display on web sites. One example is the new boards page on www.keil.com/boards2/:

    +
    +BoardsSectionMCB1500.png +
    +Board information on a web site extracted from a BSP
    +

    +Specify a Development Board

    +

    Preparations

    +
      +
    1. Install the Software Pack Keil::ARMCortex_DFP as this will be required for the BSP to function properly.
    2. +
    3. Create a working directory on your PC, for example C:\temp\working_bsp.
    4. +
    5. Go to the directory \CMSIS\Pack\Tutorials available in the ARM::CMSIS Pack installation. Please consult your development tool's documentation for more information on the Pack installation directory structure. In a standard µVision installation, you will find it below C:\Keil_v5\ARM\Pack\ARM\CMSIS\version.
    6. +
    7. Open the file Pack_with_Board_Support.zip.
    8. +
    9. Copy the content of the ZIP file's 01_Specify_Dev_Board directory into your working directory.
    10. +
    11. Make sure that files/directories are not write protected (remove read-only flag).
    12. +
    13. Copy from the directory \CMSIS\Utilities available in the ARM::CMSIS Pack installation the following files into your working directory:
        +
      • PackChk.exe
      • +
      • PACK.xsd
      • +
      +
    14. +
    15. Open the MyVendor.MyBSP.pdsc file in an editor.
    16. +
    +

    Code Example

    +
      +
    1. +Add a <boards> section in the PDSC file with the following:
      <boards>
      +
      <board vendor="MyVendor" name="MyDevBoard" revision="V1" salesContact="sales@keil.com" orderForm="http://www.keil.com">
      +
      <description>MyVendor MyDevBoard Board Description</description>
      +
      <image small="Images/MyDevBoard_small.png" large="Images/MyDevBoard_large.png"/>
      +
      <book category="setup" name="Docs/MyDevBoard/MyDevBoard_setup.pdf" title="Getting Started"/>
      +
      <book category="schematic" name="Docs/MyDevBoard/MyDevBoard_schematics.pdf" title="Schematics"/>
      +
      <book category="manual" name="Docs/MyDevBoard/MyDevBoard_um.pdf" title="User Manual"/>
      +
      <mountedDevice deviceIndex="0" Dvendor="ARM:82" Dname="ARMCM3"/>
      +
      <compatibleDevice deviceIndex="0" Dvendor="ARM:82" Dfamily="ARM Cortex M3"/>
      +
      <feature type="ODbg" n="1" name="On-board J-LINK Lite"/>
      +
      <feature type="PWR" n="5" name="USB Powered"/>
      +
      <feature type="DIO" n="8"/>
      +
      <feature type="SPI" n="1"/>
      +
      <feature type="LED" n="6" name="User LEDs"/>
      +
      <feature type="ArduinoFF" n="1"/>
      +
      <debugInterface adapter="J-Link Lite" connector="Mini-USB"/>
      +
      </board>
      +
      </boards>
      +
      Note
      All code examples in this and the following sections can be found in the snippets.xml file in the 01_Specify_Dev_Board directory.
      +
    2. +
    3. +

      Finally, save the PDSC file and generate the Pack file using the gen_pack.bat script. See Generate a Pack for further details. Afterwards, install the Pack in your development tool.

      +
      +DevBoardDisplay.png +
      +Display of development boards in development tools
      +
    4. +
    +
    Note
    PackChk.exe will display M346 informations:
    *** WARNING M346: .\Files\MyVendor.MyBSP.pdsc (Line 29)
    +  Referenced device(s) in 'MyDevBoard' not found: 'ARMCM3'
    +
    +*** WARNING M346: .\Files\MyVendor.MyBSP.pdsc (Line 29)
    +  Referenced device(s) in 'MyDevBoard' not found: 'ARM Cortex M3'
    +
    This is because this BSP does not contain a device section with the mentioned devices. To work aroung this problem, you might add the ARM:CMSIS PDSC file to the checking process.
    +

    +Create a BSP Bundle

    +

    A bundle is basically a variant on the Cclass level. It specifies the attributes Cclass, Cversion and optionally Cgroup and Cvendor for a collection of interdependent components. Components within a bundle inherit the attributes set by the bundle and must not set these attributes again. Bundles ensure consistency of attributes across multiple interworking components and restrict the mix and match of components within a Cclass from different solutions. In addition to components, a bundle has the mandatory elements description and doc (for documentation).

    +

    Copy the content of the 02_BSP_Bundle directory of the Pack_with_Board_Support.zip file to the Files directory in your working environment:

    +
      +
    1. +Add a <conditions> section in your PDSC with the following (the conditions section provides more information on this step):
      <condition id="ARM Cortex M3 Series">
      +
      <description>ARM Cortex M3 device required</description>
      +
      <require Dfamily="ARM Cortex M3" Dvendor="ARM:82"/>
      +
      </condition>
      +
      <condition id="MyDevBoard Board Setup">
      +
      <description>Board Setup Code required</description>
      +
      <require condition="ARM Cortex M3 Series"/>
      +
      <require Cclass="Board Support" Cgroup="Board Setup"/>
      +
      </condition>
      +
    2. +
    3. +Add a <components> section in your PDSC with the following (the components section provides more information on this step):
      <bundle Cbundle="MyDevBoardSupport" Cclass="Board Support" Cversion="1.0.1">
      +
      <description>MyDevBoard custom board support package</description>
      +
      <doc>Docs/BSP/MyBSP.htm</doc>
      +
      <component Cgroup="Board Setup" condition="ARM Cortex M3 Series">
      +
      <description>Custom board setup code</description>
      +
      <files>
      +
      <file category="doc" name="Docs/BSP/Setup.htm"/>
      +
      <file category="header" name="MySWComp/Include/setup.h"/>
      +
      <file category="source" name="MySWComp/Source/setup.c"/>
      +
      </files>
      +
      </component>
      +
      <component Cgroup="I/O" Csub="LED" condition="MyDevBoard Board Setup">
      +
      <description>LED code for custom board</description>
      +
      <files>
      +
      <file category="doc" name="Docs/BSP/LED.htm"/>
      +
      <file category="header" name="MySWComp/Include/led.h"/>
      +
      <file category="header" name="MySWComp/Include/config_led.h" attr="config" version="1.0.0"/>
      +
      <file category="source" name="MySWComp/Source/led.c"/>
      +
      </files>
      +
      </component>
      +
      <component Cgroup="I/O" Csub="GPIO" condition="MyDevBoard Board Setup">
      +
      <description>GPIO code for custom board</description>
      +
      <files>
      +
      <file category="doc" name="Docs/BSP/GPIO.htm"/>
      +
      <file category="header" name="MySWComp/Include/gpio.h"/>
      +
      <file category="header" name="MySWComp/Include/config_gpio.h" attr="config" version="1.0.0"/>
      +
      <file category="source" name="MySWComp/Source/gpio.c"/>
      +
      </files>
      +
      </component>
      +
      </bundle>
      +
    4. +
    5. +Add a new version number:
      <release version="1.0.1">
      +
      Board support bundle added
      +
      </release>
      +
    6. +
    7. +

      Finally, save the PDSC file and regenerate the Pack file using the gen_pack.bat script. Afterwards, install the Pack in your development tool and observe the differences to version 1.0.0.

      +
      +BSPBundleDisplay.png +
      +BSP bundle display in development tools
      +
    8. +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_create_pack_publish.html b/CMSIS/Documentation/Pack/html/_create_pack_publish.html new file mode 100644 index 0000000..5db2967 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_create_pack_publish.html @@ -0,0 +1,172 @@ + + + + + +Publish a Pack +CMSIS-Pack: Publish a Pack + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Publish a Pack
    +
    +
    +

    There are multiple ways to distribute a Software Pack:

    +

    +Local Installation

    +

    The easiest way to distribute a Software Pack is attaching it to an email or using other means of electronic distribution (for example using a company internal file server). The installation of a Software Pack is usually triggered by double-clicking the PACK file. The Pack management tool is invoked and the Pack is installed on the local machine. After installation, the Pack will be shown in the list of installed Packs (tool dependent). If the PDSC file does not contain a valid <url> element, a manual installation is required to update a Software Pack. Otherwise, Pack management tools can check for updates on the server or the local machine that is specified by <url>.

    +
    +LocalInstallation.png +
    +Local installation and update from URL
    +
    Note
    For automatic updates on a local machine, specify the <url> using the file URI scheme.
    +

    +Web Download

    +

    Any web server can be used to host a Software Pack (specified by the <url> element in the PDSC file). At this location, at least two files need to be present (refer to Pack Conventions):

    +
      +
    1. <vendor>.<name>.pdsc
    2. +
    3. <vendor>.<name>.<version>.pack, where <version> refers to the latest version specified in the PDSC file.
    4. +
    +

    All previous versions listed in the <releases> section of the PDSC file should be present in that folder as well. This will enable customers to revert updates or to be able to download a specific version of a Software Pack (for code maintenance purposes for example).

    +

    Depending on the Pack management tool, a Pack Index Server might be in place that gathers information about published Packs in an index file. This information is then used in the management tool to retrieve version information and to trigger updates of Packs within the development environment.

    +
    Note
      +
    • It is important to understand how the <url> element works. If you specify a URL, for example http://www.keil.com/pack, then you have to make the PDSC file and the corresponding PACK file(s) available for download at that exact location. The naming of the files follow the standard naming rules. For example, the ARM::CMSIS PDSC and Pack files are available here:
      + http://www.keil.com/pack/ARM.CMSIS.pdsc and
      + http://www.keil.com/pack/ARM.CMSIS.4.3.0.pack and
      + http://www.keil.com/pack/ARM.CMSIS.4.2.0.pack and ...
      + At the specified location, you need to have one (unversioned) PDSC file and can have multiple versioned PACK files, but at least the latest one.
    • +
    • If the URL or the PDSC/PACK files become unavailable (temporarily or permanently), users will not be able to retrieve updates.
    • +
    • Do not replace PDSC/PACK files without updating the version number because the Pack management tools will not recognize the update unless the version has been changed.
    • +
    • Older PACKs should remain available.
    • +
    +
    +
    +WebInstallation.png +
    +Web installation and update
    +

    +Publishing on www.keil.com/pack

    +

    ARM tries to maintain a list of all available Software Packs. If a Software Pack is intended to be on that list, its PDSC file needs to be sent to to the following email address: cmsis.nosp@m.@arm.nosp@m..com. The PDSC file will be manually XML validated. The following content will be processed in order to generate the web site and index file (www.keil.com/pack/index.idx):

    +
      +
    • Version
    • +
    • Release Notes
    • +
    • Devices
    • +
    • Boards
    • +
    • Examples
    • +
    • Software Components
    • +
    +

    Please allow up to seven working days for the process. If the file contains any errors, you will be notified. Otherwise, it will be uploaded to www.keil.com/pack.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_create_pack_util.html b/CMSIS/Documentation/Pack/html/_create_pack_util.html new file mode 100644 index 0000000..0e1434d --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_create_pack_util.html @@ -0,0 +1,134 @@ + + + + + +Utilities for Creating Packs +CMSIS-Pack: Utilities for Creating Packs + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Utilities for Creating Packs
    +
    +
    +

    Software Packs are ZIP files that contain a PDSC file and other content, that is specified within the PDSC file in XML. While the PDSC file can be created with any text editor, some of the contents have to be generated by additional programs. Also, verification of a PDSC file requires the help of additional tools. This section gives and overview over programs that are either part of the CMSIS Pack or are available for download on the Internet.

    +
      +
    • PackChk.exe is part of the CMSIS Pack and is used to check the validity of a PDSC file.
    • +
    • Validation of SVD files with SVDConv.exe is required for SVD files that are part of Device Family Packs.
    • +
    • Several XML Editors can verify XML files using the XML schema files that are part of the CMSIS Pack.
    • +
    • ZIP Compression Tools create the actual ZIP archive of a Software Pack.
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_create_pack_util.js b/CMSIS/Documentation/Pack/html/_create_pack_util.js new file mode 100644 index 0000000..036fa88 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_create_pack_util.js @@ -0,0 +1,8 @@ +var _create_pack_util = +[ + [ "PackChk.exe", "_pack_chk.html", [ + [ "Error and Warning Messages", "_pack_chk.html#PackChkMessages", null ] + ] ], + [ "XML Editors", "_c_p__editors.html", null ], + [ "ZIP Compression Tools", "_c_p__z_i_p_tool.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Pack/html/_flash_algorithm.html b/CMSIS/Documentation/Pack/html/_flash_algorithm.html new file mode 100644 index 0000000..5630724 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_flash_algorithm.html @@ -0,0 +1,200 @@ + + + + + +Flash Programming Algorithms +CMSIS-Pack: Flash Programming Algorithms + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Flash Programming Algorithms
    +
    +
    + +

    Flash Programming Algorithms are a piece of software to erase or download applications to Flash devices. A Pack with Device Support usually contains predefined Flash algorithms for programming the devices that are supported by the DFP. A template for creating new algorithms are available in the ARM:CMSIS Pack. The following section describes the process in more detail.

    +

    +Creating a new Algorithm

    +

    Flash programming algorithms are defined with functions to erase and program the Flash device. Special compiler and linker settings are required. Follow these steps to create and configure a new Flash programming algorithm:

    +
      +
    1. Copy the content from the ARM:CMSIS Pack folder (usually C:\Keil\ARM\Pack\ARM\CMSIS\version\Device\_Template_Flash) to a new folder.
    2. +
    3. Rename the project file NewDevice.uvproj to represent the new Flash ROM device name, for example MyDevice.uvproj.
    4. +
    5. Open the project with uVision. From the toolbar, use the drop-down Select Target to define the processor architecture. Cortex-M fits for all Cortex-M0/M0+, M3, and M4 devices. The configuration assumes a little-endian microcontroller. In case of a big-endian microcontroller, select the correct processor core with Project - Options for Target - Device.
    6. +
    7. Open the dialog Project - Options for Target - Output and change the content of the field Name of Executable to represent the device, for example MyDevice.
    8. +
    9. Adapt the programming algorithms in the file FlashPrg.
    10. +
    11. Adapt the device parameters in the file FlashDev.
    12. +
    13. Use Project - Build Target to generate the new Flash programming algorithm. The output file (for example MyDevice.FLM) has to be added to the DFP.
    14. +
    +
    Note
      +
    • Creating a Flash programming algorithm with MDK-Lite is not supported.
    • +
    • Flash programming algorithms use Read-Only Position Independent and Read-Write Position Independent program code. These options are set in the dialogs Project - Options for Target - C/C++ and Project - Options for Target - Asm.
    • +
    • The dialog Project - Options for Target - Linker defines the linker scatter file Target.lin. The error L6305 is disabled with –diag_suppress L6305.
    • +
    • The Flash Algorithm Functions section contains reference for all the available functions.
    • +
    +
    +

    +

    FlashPrg.c

    +

    The file FlashPrg.c contains the mandatory Flash programming functions Init, UnInit, EraseSector, and ProgramPage. Optionally, depending on the device features (or to speed-up execution), the functions EraseChip, BlankCheck, and Verify can be implemented.

    +

    +

    FlashDev.c

    +

    The file FlashDev.c contains parameter definitions for:

    +
      +
    1. the Flash programming functions.
    2. +
    3. the FlashDevice structure:
      struct FlashDevice const FlashDevice = {
      +
      FLASH_DRV_VERS, // Driver Version, do not modify!
      +
      "STM32Fxxx High-density Flash", // Device Name (512kB/384kB/256kB)
      +
      ONCHIP, // Device Type
      +
      0x08000000, // Device Start Address
      +
      0x00080000, // Device Size in Bytes (512kB)
      +
      1024, // Programming Page Size
      +
      0, // Reserved, must be 0
      +
      0xFF, // Initial Content of Erased Memory
      +
      100, // Program Page Timeout 100 mSec
      +
      500, // Erase Sector Timeout 500 mSec
      +
      +
      // Specify Size and Address of Sectors
      +
      0x0800, 0x000000, // Sector Size 2kB (256 Sectors)
      +
      SECTOR_END
      +
      };
      +
    4. +
    +
    Note
    The Device Name will usually be shown in tools to identify the Flash algorithm. Make sure that this is changed to the correct device name from the DFP.
    +

    Testing Algorithms

    +

    The _Template_Flash\Test-folder contains a project that shows how to test a new Flash programming algorithm on behalf of a STM32F10x device. Adapt the code to your needs.

    +

    +Adding an Algorithm to a Pack

    +

    The generated *.FLM file needs to be added to the Pack with Device Support, so that it is available to the tool user for programming his device. Usually, a directory Flash is created and the algorithm is saved in this directory.

    +

    The algorithm is specified within the the /package/devices/family level:

    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <algorithm name="Flash/STM32F2xx_512.flm" start=0x08000000 size=0x10000 default="1"/> <!-- valid for all devices of the family -->
    +
    +
    <subFamily DsubFamily="STM32F405">
    +
    <algorithm name="Flash/STM32F2xx_1024.flm" start=0x08000000 size=0x20000 default="1"/> <!-- valid for all devices of a subFamily -->
    +
    +
    <device Dname="STM32F405OE">
    +
    <algorithm name="Flash/STM32F2xx_2048.flm" start=0x08000000 size=0x40000 default="1"/> <!-- finally, this is the default for the device -->
    +
    </device>
    +
    ...
    +
    </family>
    +

    The argument start specifies the base address for the Flash programming algorithm.

    +

    The argument size specifies the size covered by the Flash programming algorithm. End address = start + size - 1.

    +

    The argument default specifies whether a Flash programming algorithm is set as the default algorithm in a project (when true). If default is not set or false, the Flash programming algorithm can be configured on a lower level. However, the Flash programming algorithm of a project can be changed manually at any time during development.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_flash_algorithm.js b/CMSIS/Documentation/Pack/html/_flash_algorithm.js new file mode 100644 index 0000000..9002c2c --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_flash_algorithm.js @@ -0,0 +1,14 @@ +var _flash_algorithm = +[ + [ "Creating a new Algorithm", "_flash_algorithm.html#CreateFPA", null ], + [ "Adding an Algorithm to a Pack", "_flash_algorithm.html#AddFPA", null ], + [ "Algorithm Functions", "_algorithm_func.html", [ + [ "BlankCheck", "_algorithm_func.html#BlankCheck", null ], + [ "EraseChip", "_algorithm_func.html#EraseChip", null ], + [ "EraseSector", "_algorithm_func.html#EraseSector", null ], + [ "Init", "_algorithm_func.html#Init", null ], + [ "ProgramPage", "_algorithm_func.html#ProgramPage", null ], + [ "UnInit", "_algorithm_func.html#UnInit", null ], + [ "Verify", "_algorithm_func.html#Verify", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Pack/html/_pack__example.html b/CMSIS/Documentation/Pack/html/_pack__example.html new file mode 100644 index 0000000..cc3913f --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_pack__example.html @@ -0,0 +1,237 @@ + + + + + +Pack Example +CMSIS-Pack: Pack Example + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Pack Example
    +
    +
    +

    The ARM::CMSIS Pack contains an example of a Software Pack that contains device support, board support and software components. This Pack can be used as a reference for user generated Software Packs. It is available in the directory \CMSIS\Pack\Example. It contains a PDSC example file and all sub-directories containing the files referenced in the PDSC.
    + The example is a DFP for NXP's LPC1800 series of microcontrollers. It also contains BSP information and software components, mainly peripheral drivers. Some of the drivers adhere to the CMSIS-Driver standard. This is the layout of the sub-directories:

    + + + + + + + + + + + + + + + + + +
    Directory Content Section in PDSC
    Boards CMSIS-RTOS Blinky uVision project running on the MCB1800 development board <examples>
    CMSIS_DriverCMSIS-Driver compliant peripheral drivers<component>
    Device CMSIS-CORE files for LPC1800 series <device>
    Documents Documentation for devices and boards <book>
    Flash Flash Programming Algorithms and a sub-directory called LPC18xx43xx_IAP containing a uVision project for IAP (In-Application Programming) support<algorithm>
    Images Images of the MCB1800 development board <board>
    SVD SVD file for LPC1800 series <debug>
    +

    +

    PDSC Example File

    +

    The PDSC file that is included in the example Pack is called Keil.LPC1800_DFP.pdsc.txt. The extension txt has been added to hide the file from development tools as it is not intended for installation. The file contains the following top level elements:

    + + + + + + + + + + + + + + + +
    XML Element Purpose
    <package> Publish Pack information like vendor, name, version, etc.
    <devices> Define four sub-families with 16 devices in total.
    <boards> Show MCB1800 development board information.
    <conditions> Declare required conditions for software components.
    <components> Include startup/system files, HAL drivers, and CMSIS-Driver 2.0 compliant peripheral drivers.
    <examples> Contain a CMSIS-RTOS Blinky example project for uVision running on the MCB1800 development board.
    +

    +

    Directory CMSIS_Driver

    +

    The CMSIS_Driver directory contains the following CMSIS-Driver compliant peripheral drivers. These drivers are supporting the NXP LPC1800 series:

    + + + + + + + + + + + + + + + + + +
    Driver File Software Component
    Ethernet EMAC_LPC18xx.c ::CMSIS-Driver:Ethernet MAC
    SPI SSP_LPC18xx.c ::CMSIS-Driver:SPI
    I2C I2C_LPC18xx.c ::CMSIS-Driver:I2C
    MCI MCI_LPC18xx.c ::CMSIS-Driver:MCI
    USART USART_LPC18xx.c ::CMSIS-Driver:USART
    USB Device USBD_LPC18xx.c ::CMSIS-Driver:USB Device:USB0/1
    USB Host USBH_LPC18xx.c ::CMSIS-Driver:USB Host:USB0/1
    +

    The following HAL drivers are required for the implementation of the CMSIS-Driver compliant peripheral drivers:

    + + + + + + + + + +
    Driver File Software Component
    General purpose DMA driver GPDMA_LPC18xx.c ::Device:GPDMA
    General purpose IO driver GPIO_LPC18xx.c ::Device:GPIO
    System control unit driver SCU_LPC18xx.c ::Device:SCU
    +

    +

    Directory Device

    +

    The Device directory has two sub-directories: Include and Source.

    + + + + + + + + + + + + + + + +
    File Purpose Software Component
    Include\LPC18xx.h LPC1800 series header file ::CMSIS:CORE
    Include\system_LPC18xx.h LPC1800 series system header file ::CMSIS:Startup
    Source\system_LPC18xx.c LPC1800 series system source file ::CMSIS:Startup
    Source\ARM\startup_LPC18xx.s LPC1800 series startup assembler file for ARMCC::CMSIS:Startup
    Source\GCC\startup_LPC18xx.S LPC1800 series startup assembler file for GCC ::CMSIS:Startup
    Source\IAR\startup_LPC18xx.s LPC1800 series startup assembler file for IAR ::CMSIS:Startup
    +

    +

    Directory Documents

    +

    This directory incorporates the following documents:

    + + + + + + + + + + + + + + + +
    File Purpose Section in PDSC
    dui0552a_cortex_m3_dgug.pdf Cortex-M3 Generic User Guide<book> element of the device <family> element
    ES_LPC18X0.pdf LPC1800 Errata sheet <book> element of the <device> section
    LPC1850_30_20_10.pdf LPC1800 Data sheet <book> element of the <device> section
    mcb1800.chm MCB1800/4300 User's Guide <book> element of the <boards> section
    MCB1800v1-3-schematics.chm MCB1800 schematics <book> element of the <boards> section
    UM10430.pdf User manual for LPC1800 <book> element of the <device> section
    +
    Note
    Some of these documents are only placeholders for copyright reasons.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_pack_chk.html b/CMSIS/Documentation/Pack/html/_pack_chk.html new file mode 100644 index 0000000..b3950db --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_pack_chk.html @@ -0,0 +1,477 @@ + + + + + +PackChk.exe +CMSIS-Pack: PackChk.exe + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    PackChk.exe
    +
    +
    +

    PackChk.exe is a utility for validation of a Software Pack. It operates on the unzipped content of the Software Pack and is located in the directory .\CMSIS\Utilities of the ARM::CMSIS Pack.

    +

    PackChk.exe performs the following operations:

    +
      +
    1. Reads the content of the specified *.PDSC file. The path to this *.PDSC file is considered as root directory of the Software Pack.
    2. +
    3. Verifies the existence of all files in the Software Pack that are referenced in the *.PDSC file.
    4. +
    5. Checks for presence and correctness of mandatory elements such as <vendor>, <version>, etc.
    6. +
    7. Optional, all System View Description files (*.SVD) that are referenced in the *.PDSC file are verified using SVDConv.exe. Refer to SVD File Validation for details.
    8. +
    9. Optional, the element <url> is verified.
    10. +
    11. Optional, creates the standardized name of the Software Pack file.
    12. +
    13. Sets the exit status reflect the result of the validation to:
        +
      • 0 : no errors detected
      • +
      • 1 : errors during validation detected
      • +
      +
    14. +
    +

    Operation

    +

    PackChk.exe is invoked from the command line. The general command is:
    +

    +
    PackChk.exe <pdsc_file> <options>
    +


    +

    + + + + + + + + + + + + + +
    <options> Short Name Description
    -n <file> Pack file name Write a standardized name for the Software Pack to the specified ASCII file.
    -s Verify SVD files Each SVD file referenced in the *.PDSC file is validated with SVDConv.exe. With this option set, SVDConv.exe is invoked from the same directory as PackChk.exe.
    -u <url> Pack Server URL Verifies that the specified URL matches the <url> element in the *.PDSC file.
    -v Verbose Prints extra process information.
    -x <msg-list> Suppress Supress all listed validation messages. You can separate the values with blanks to create a list or repeat the option. Ranges are not allowed. Suppressing validation messages does not affect error and warning counters. For a list of messages refer to Validation Messages.
    +

    Examples

    +

    Run PackChk.exe on the package description file called MyVendor.MyPack.pdsc. PackChk.exe verifies the file against the Software Pack that is located in the same directory.

    +
    PackChk.exe MyVendor.MyPack.pdsc
    +

    Run PackChk.exe on the package description file called MyVendor.MVCM3.pdsc, verify SVD files, verify the URL to the Pack Server, and generate a ASCII text file with the standardized name of the Software Pack.

    +
    PackChk.exe "MyVendor.MVCM3.pdsc" -s -u "http://www.myvendor.com/pack" -n packname.txt
    +

    Run PackChk.exe on the package description file called MyVendor.MVCM3.pdsc. Suppress validation messsages M304 and M331.

    +
    PackChk.exe MyVendor.MVCM3.pdsc -x M304 M331           // messages as a list
    +PackChk.exe MyVendor.MVCM3.pdsc -x M304 -x M331        // option repeated
    +

    +Error and Warning Messages

    +

    The following table shows the errors and warnings issued by PackChk.

    +

    Internal Errors

    +

    For internal errors, please sent a problem report via email to cmsis.nosp@m.@arm.nosp@m..com.

    + + + + + + + + + + + + + + + + + + + + + +
    Message Number Type Description Action
    M100 ERROR GetModuleHandle failed Call support.
    M101 ERROR Unknown error! Call support.
    M102 ERROR MFC initialization failed Call support.
    M103 ERROR Internal Error: 'REF' Call support and submit the error message.
    M104 - M106 N.A. not in use
    M107 ERROR Lost xml file stream Repeat the process. If this error persists, call support.
    M108 ERROR Reading PDSC File failed! Verify file and folder permissions. Verify whether the file is corrupt or in another folder. Repeat the process. If this error persists, call support.
    M109 ERROR Constructing Model failed! Building Model based on the PDSC information failed. Repeat the process. If this error persists, call support.
    M110 ERROR Verifying Model failed Model based verification of the PDCS information failed. Repeat the process. If this error persists, call support.
    +

    Invocation Errors

    + + + + + + + + + + + + + + + + + + + + + + + +
    Message Number Type Description Action
    M200 ERROR Invalid arguments! At least one argument is wrong. Correct the argument.
    M201 ERROR Too many arguments! The list of arguments is too long. Verify if you have used one argument twice.
    M202 ERROR No PDSC input file specified Correct the command line. PackChk.exe expects a *.PDSC file name as input.
    M203 ERROR Error reading PDSC file 'PATH/FILENAME'! Verify the PDSC file for consistency.
    M204 ERROR File not found: 'PATH' The specified PDSC file could not be found in the PATH displayed in the message. Correct the path or the filename.
    M205 ERROR Cannot create Pack Name file 'PATH' Check the disk space or your permissions. Correct the path name.
    M206 ERROR Multiple PDSC files found in package: 'FILES' Only one PDSC file is allowed in a package. Remove unnecessary PDSC files. The message lists all *.PDSC files found.
    M207 ERROR PDSC file name mismatch!
    + Expected: 'PDSC1.pdsc'
    + Actual : 'PDSC2.pdsc'
    The PDSC file expected has not been found. Rename or exchange the PDSC file.
    M208 ERROR Cannot find SVDConv.exe: 'PATH' SVDConv.exe was not found. Copy the executable into the directory of PackChk.exe or enter the path where SVDConv.exe is located. Default is CMSIS\Utilities.
    M209 ERROR Unknown Option: 'OPT' The command line option entered is not known or invalid.
    +

    +

    Validation Messages

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Message Number Type Description Action
    M300 ERROR The following files are listed in PDSC but not part of the package:
    + 'PATH':
    + 'FILES'
    The files listed should be part of the package. However, these files could not be added to the package. Verify whether the files exist. Verify the file permissions.
    M301 ERROR Checking Pack URL of PDSC file failed:
    + Expected URL : 'URL1'
    + Package URL : 'URL2'
    The URL entered in the package does not match the value entered for comparison. Change the URL in the package. Check for possible misspellings of URL1.
    M302 ERROR No vendor tag found in the PDSC file! Add the <vendor> tag and provide the vendor name. For example: <vendor>Keil</vendor>. No vendor entered in the PDSC file. Enter the tag <vendor> and add the vendor name. Refer to /package.
    M303 ERROR No package name found in the PDSC file! Add the <name> tag and provide the package name. For example: <name>MCU-Name_DFP</name>. No package name found in the PDSC file. Enter the tag <name> and add the package name. For example <name>MCU-Name_DFP</name>. The package name is mandatory to create the package. Refer to /package.
    M304 ERROR No package URL (<url>-tag and/or value) found in PDSC file! Add the tag <url> and enter a URL in the PDSC file. The URL points to the web page from which users can download the package. Refer to /package.
    M305 ERROR No package version ("version"-attribute in a <release>-tag) found in PDSC file! No version or release information found in the PDSC file. Add the attribute version to the tag <release> and enter the version number. Refer to /package/releases/release.
    M306 ERROR No package description found in the PDSC file. Add the <description>-tag and provide a descriptive text. No package description was found in the PDSC file. Enter the tag <description> and briefly describe the package content. Refer to /package.
    M307 ERROR Checking SVD file 'PATH' failed! Verify the consistency of the *.SVD file. Refer to SVD File Validation.
    M308 ERROR SVD file 'PATH' not found. Add the SVD file or correct the PDSC entry. The *.SVD file was not found in the path specified in the message. Add the SVD file or correct the entry in the *.PDSC file.
    M309 ERROR Cannot read file information: 'PATH'. Access to the file specified failed. Verify permissions and spelling.
    M310 ERROR Filename mismatch (case sensitive):
    + PDSC name : 'PDSC_FILENAME'
    + Filename : 'SYSTEM'
    Filenames are case sensitive. Correct spelling.
    M311 WARNING Preamble for 'UTF' should not be used, specify via '<?xml' Specify the character set in the tag mentioned.
    M312 WARNING Unsupported format or extra characters found before '<?xml': 'TEXT' Correct the XML file.
    M313 WARNING UTF Format not supported: 'UTF' Select another UTF-format.
    M314 ERROR Cannot decode XML special character: 'SPECIALCHAR'. Correct the XML file.
    M315 N.A. not in use
    M316 ERROR '<--' found, should this be a comment '<!--' ? Correct the XML file.
    M317 ERROR Begin Tag seems to end with a Single Tag. Is this a typo? Correct the XML file.
    M318 ERROR Inconsistent XML Structure Correct the XML file.
    M319 ERROR XML Stack deeper than 30 Items! Giving up... Reduce the nested nodes.
    M320 ERROR Begin Tag follows Text. Missing End Tag? Correct the XML file.
    M321 ERROR Missing ' " ' in Attributes: 'ATTRLINE' Correct the XML file. Enclose values in " ".
    M322 ERROR XML Hierachy Error: Missing End Tags. Correct the XML file. Verify for enclosing or nested tags.
    M323 ERROR File/Path not found: 'PATH'

    The file or path entered in the PDSC file could not be found. Verify the path information.

    +

    +
    M324 ERROR Board referenced in Example 'EXAMPLE' is undefined: 'VENDOR' : 'BOARD'

    The board referenced in the example application could not be found. Define the board (/package/boards/board) or correct the reference information (/package/examples/example/board).

    +

    +
    M325 ERROR Board 'NAME' redefined, already defined in Line 'LINE': 'PATH'

    This board has been defined already in the line 'LINE' of the file 'PATH'. Verify and remove one of the board definitions.

    +

    +
    M326 - M327 N.A. not in use

    +

    +
    M328 ERROR Version not set for Release Information 'DESCR'

    The release defined through the description 'DESCR' requires the attribute <version>. Refer to /package/releases/release.

    +

    +
    M329 ERROR Description not set for Release Information 'VER'

    The release defined through the version 'VER' needs a description. Refer to /package/releases/release.

    +

    +
    M330 ERROR Condition redefined: 'COND', already defined in Line 'LINE'

    The condition has been defined already in a previous line. Correct the condition name, or remove the duplicate.

    +

    +
    M331 WARNING Condition unused: 'COND'

    The condition has been defined but not used further. Remove the condition or add condition rules. Refer to /package/conditions/condition.

    +

    +
    M332 ERROR Condition undefined: 'COND'

    A condition has been used but not defined. Correct the name of the condition or define the missing condition. Refer to /package/conditions/condition.

    +

    +
    M333 WARNING Component has no condition: Cclass= 'CCLASS', Cgroup= 'CGROUP', Csub='CSUB', Cversion= 'CVER'

    The component defined has no condition. If the component has restrictions, then add a condition to the component definition. Refer to /package/components/.../component.

    +

    +
    M334 WARNING Config File has no version: 'PATH'

    Add version information to the configuration file.

    +

    +
    M335 WARNING Component declared as 'Board Support' has no ref to a device: Cclass= 'CCLASS', Cgroup= 'CGROUP', Cversion= 'CVER'

    A component defined as 'board support' needs a reference to a device. Add a device or correct the component definition. Refer to attribute Cclass of /package/components/.../component and /package/boards/board/mountedDevice.

    +

    +
    M336 WARNING No reference to a device or device not found: Cclass= 'CCLASS', Cgroup= 'CGROUP', Cversion= 'CVER'

    Define the device /package/devices/family/../device or correct the information about the device in the reference.

    +

    +
    M337 WARNING File with category 'CAT' has wrong extension 'EXT': 'PATH'

    The extension of the file does not match the file category. Verify the extension to match the category. Refer to /package/.../files/file.

    +

    +
    M338 WARNING No releases found.

    The PDSC file is missing release information. Add <release> information to the file. Refer to /package/releases element.

    +

    +
    M339 WARNING Include Path 'PATH' must not be a file!

    The path specified contains a filename. Correct the path infomation and remove the filename.

    +

    +
    M340 WARNING Include Path 'PATH' must end with '//' or '\\'

    Include paths must end with a slash or backslash. Verify and correct the path name.

    +

    +
    M341 WARNING File with 'COMP' dependency must have extension 'EXT' : 'PATH'

    A file defining component dependencies must have the extension mentioned in the message. Verify the settings and correct the file extension.

    +

    +
    M342 WARNING File with attribute 'ATTR' must not have category 'CAT': 'PATH'

    A file with the attribute mentioned in the message must not have the category specified. Correct the attribute or the category. Refer to /package/.../files/file.

    +

    +
    M343 WARNING File with attribute 'ATTR' requires 'ATTR2' attribute: 'PATH'

    A file with the attribute 'ATTR' requires another attribute 'ATTR2'. Add the required attribute or correct attribute 'ATTR'. Refer to /package/.../files/file.

    +

    +
    M344 WARNING File shall have condition containing 'COND': 'PATH'

    The file should have a condition. Define a condition in the file specified in the message.

    +

    +
    M345 WARNING URL not found : 'URL'

    The specified URL could not be found. Correct the URL. Refer to /package.

    +

    +
    M346 WARNING Referenced device(s) in 'BOARD' not found: 'DEVICE'

    The device or devices specified for the board could not be found. Verify and correct the device name or the board name. Refer to /package/boards/board/mountedDevice and /package/boards/board/compatibleDevice.

    +

    +
    M347 WARNING Generator ID in Component Cclass= 'CCLASS', Cgroup= 'CGROUP', Cversion= 'CVER' is undefined: 'GENID'

    The generator ID used in the component could not be found. Verify and correct the generator ID (/package/components/.../component), or define the generator ID (ref /package/generators/generator).

    +

    +
    M348 WARNING Feature redefined for 'MCU', see Line 'REF_LINE': 'FEATURE'

    This feature 'FEATURE' has been defined already on the same level in line 'REF_LINE'. The feature characteristics defined on line 'LINE' overwrite those from 'REF_LINE'. Correct the feature (/package/devices/family/.../feature).

    +

    +
    M349 WARNING Examples found, but no board description(s) found

    Example projects have been found for a board that was not defined. Correct the entry for the examples (/package/examples/example/board) or define the board (/package/boards/board).

    +

    +
    M350 WARNING No 'COMP' found for 'VENDOR' : 'MCU' ('COMPILER')

    The package (/package) defines a Vendor-MCU combination for which no component was defined. Define a component (/package/components/.../component) or verify the 'VENDOR' - 'MCU' settings.

    +

    +
    M351 WARNING Component 'COMP' ('COMPID') error for 'VENDOR': 'MCU' ( 'COMPILER'): 'MSG'

    An unspecified error was found for the component. The message might give detailed information about the error.

    +

    +
    M352 WARNING No Directories/Files found for 'COMP' ('COMPID') for 'VENDOR': 'MCU' ('COMPILER')

    No files or directories could be found for the defined component. Add the missing information. Refer to /package/.../files.

    +

    +
    M353 WARNING No 'FILECAT' File found for Component 'COMP' ('COMPID') for 'VENDOR' : 'MCU' ('COMPILER')

    No file with the mentioned file category was found for the component. Verify whether the file exists or correct the information. Refer to attribute category in /package/.../files/file.

    +

    +
    M354 WARNING Multiple 'FILECAT' Files found for Component 'COMP' ('COMPID') for 'VENDOR' : 'MCU' ('COMPILER')

    Multiple files with the mentioned file category were found for the specified component. Verify and rename the files, or correct the component settings (/package/.../files/file).

    +

    +
    M355 WARNING No 'FILECAT' Directory found for Component 'COMP' ('COMPID') for 'VENDOR' : 'MCU' ('COMPILER')

    The directory specified for the file category was not found. Correct the information in the component settings (/package/components/.../component).

    +

    +
    M356 WARNING Multiple 'FILECAT' Directories found for Component 'COMP' ('COMPID') for 'VENDOR' : 'MCU' ('COMPILER')

    Multiple directories were found for the same file category in the specified component. Remove obsolete information or correct the component settings.

    +

    +
    M357 N.A. not in use

    +

    +
    M358 WARNING Header File 'HFILE' for 'CFILE' missing for Component 'COMP' ('COMPID') for 'VENDOR' : 'MCU' ('COMPILER')

    The header file defined for the component could not be found. Verify the header file settings (/package/.../files/file) or whether the file exists.

    +

    +
    M359 WARNING Family has no Device(s) or Subfamilies: 'FAMILY'

    The device family has no devices or subfamilies. Add the missing information (/package/devices/family).

    +

    +
    M360 WARNING Subfamily has no Device(s): 'SUBFAMILY'

    Add the missing information. Refer to /package/devices/family/subFamily.

    +

    +
    M361 WARNING Generator ID in Taxonomy Cclass= 'CCLASS', Cgroup= 'CGROUP' is undefined: 'GENID'

    The generator ID used in the taxonomy is not defined. Define or correct the generator ID (/package/taxonomy element).

    +

    +
    M362 WARNING Not all Component Dependencies for Cclass= 'CCLASS', Cgroup= 'CGROUP', Csub= 'CSUB', Cversion= 'CVER', Capiversion= 'APIVER' can be resolved.
    + RTE Model reports: 'MSG'

    Some of the component dependencies could not be resolved. The message might contain additional information. Verify and correct component definition and dependency information. Refer to /package/components/.../component attribute condition.

    +

    +
    M363 WARNING No API defined for Component Cclass= 'CCLASS', Cgroup= 'CGROUP', Csub= 'CSUB', Cversion= 'CVER', Capiversion= 'APIVER'

    The package is missing the API information for the specified component. Refer to /package/apis.

    +

    +
    M364 WARNING No Devices for Condition 'COND' available.

    The specified condition refers to a device that does not exist. Define the device (/package/devices/family/../device) or correct the information for the condition (/package/conditions/condition).

    +

    +
    M365 - M368 N.A. not in use

    +

    +
    M369 INFO Feature is already defined for 'DEVICE' and will be added, see Line 'LINE': 'FEATURE'.

    This feature 'FEATURE' has been defined already on a higher level and as such it gets added to this 'DEVICE'. This is usually done when some devices have a higher number of basic features. Correct the feature (/package/devices/family/.../feature) if this is a typo.

    +

    +
    M371 ERROR 'SECTION' Feature for 'MCU': 'FEATURE' unknown.

    This feature 'FEATURE' is unknwon to the specified 'MCU'. Correct the feature (/package/devices/family/.../feature) if this is a typo.

    +

    +
    M372 ERROR 'SECTION' Feature for 'MCU': 'FEATURE' misspelled, did you mean 'KNOWNFEATURE' ('DESCR').

    This feature 'FEATURE' resembles the feature 'KNOWNFEATURE'. Correct the feature (/package/devices/family/.../feature) if this is a typo.

    +

    +
    M373 ERROR Unsupported Schema Version: 'VER'.

    The schema version is not supported. Verify the attribute schemaVersion of the element /package.

    +

    +
    M374 ERROR While checking Feature for 'MCU': Pname 'CPU' not found.

    The processor could not be found for the specified device. Refer to /package/devices/family/../device and /package/devices/family/.../processor.

    +

    +
    M375 ERROR 'path/pdsc_file': No <mountedDevice> for board 'BOARD' found.

    If a board element does not contain a <mountedDevice> element, then the examples for this board are not shown in the Pack Installer. and example projects may not appear in the development tools. Refer to /package/boards/board/mountedDevice of /package/boards.

    +

    +
    +

     

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_pack_format.html b/CMSIS/Documentation/Pack/html/_pack_format.html new file mode 100644 index 0000000..b250335 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_pack_format.html @@ -0,0 +1,221 @@ + + + + + +Pack Description (*.PDSC) Format +CMSIS-Pack: Pack Description (*.PDSC) Format + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Pack Description (*.PDSC) Format
    +
    +
    + +

    The Pack Description (*.PDSC) Format uses standard XML annotations and is defined in the schema file PACK.xsd. Software components are distributed through Software Packs. A Software Pack is a zip file containing a single Pack Description file that describes dependencies to devices, processors, tool chains, or other software components.

    +

    A descriptive text of the Software Packalong the text information for devices, components, and examples is part of each a Pack Description (*.PDSC) file. In addition, information is provided which facilitates downloading, updating, and versioning of of a Software Pack. The *.PDSC file contains also the complete version history of the Software Pack with a brief list of the most significant changes.

    +

    +Filename Conventions

    +

    A Software Pack must have a unique filename which uses the following format: <vendor>.<name>.<version>.pack.

    +

    Where:

    +
      +
    • <vendor>: name of the supplier or vendor of the Software Pack.
    • +
    • <name>: name of the Software Pack. It is the vendor's responsibility to ensure unique package names.
    • +
    • <version>: version number of the Software Pack.
    • +
    • .pack: file extension identifying a Software Pack.
    • +
    +
    Note
    <vendor> and <name> must not contain spaces.
    +


    + The Pack Description (*.PDSC) file belonging to such a Software Pack file (<vendor>.<name>.<version>.pack) is version independent and has the format: <vendor>.<name>.pdsc.

    +

    Where:

    + +
    Note
    <vendor> and <name> must not contain spaces.
    +

    Example filenames for software packs:

    +

    Software Pack for CMSIS Version 4.0 released by ARM.

    +
      +
    • ARM.CMSIS.4.0.0.pack: filename of the Software Pack.
    • +
    • ARM.CMSIS.pdsc: filename of the Pack Description (*.PDSC) file.
    • +
    +

    Device Family Pack for STM32F4 Version 1.0.0 released by ST Microelectronics.

    +
      +
    • ST.STM32F4xx_DFP.1.0.0.pack: filename of the Software Pack.
    • +
    • ST.STM32F4xx.pdsc: filename of the Pack Description (*.PDSC) file.
    • +
    +

    +Pack Schema

    +

    The XML schema file PACK.xsd defines the sections used in a *.PDSC file. The current PACK.xsd can be found under the ARM.CMSIS.*.Pack in the .\CMSIS\Utilities-directory.

    +

    The Pack Description (*.PDSC) Format is structured using grouping elements and contains the following top level elements:

    +
      +
    • <package>: describes package related information like vendor, package name, description, version. Is the root element.
    • +
    • <keywords>: lists keywords to search for packages. Can be used for search engines.
    • +
    • <releases>: lists release versions with descriptions.
    • +
    • <taxonomy>: lists description elements that define component classes and component group names.
    • +
    • <apis>: describes Application Programming Interfaces (API) Specifications contained in the Software Pack.
    • +
    • <generators>: specifies the tools that have been used to generate the PDSC file.
    • +
    • <devices>: lists the devices supported by this Software Pack. It specifies the device attributes and files like flash programming algorithms, CMSIS device header files, CMSIS System View Descriptions, etc.
    • +
    • <boards>: lists the development boards supported by the Software Pack.
    • +
    • <conditions>: defines dependencies to devices, processors, components, and tools that are used within the Software Pack. It allows making components and files conditional.
    • +
    • <components>: lists the software components contained in the Software Pack.
    • +
    • <examples>: specifies example projects contained in the PACK.
    • +
    • <sequence>: specifies sequences of debugger commands.
    • +
    +

    +Example of a *.PDSC File

    +

    This example of a *.PDSC File explains the sections, particularly how dependencies are used to identify individual files of Software Components.

    +
    +PDSC_Example_top.png +
    +
    +PDSC_Example_bottom.png +
    +Example of a *.PDSC File
    +

    +Example of a *.PACK File

    +

    The ARM.CMSIS.*.Pack also contains an extracted example of a PACK file. It can be found in the .\CMSIS\Pack\Example-directory. In a real-life *.PACK file this would be the archive's top-level containing the *.PDSC file and the subdirectories with all the files that are part of the Software Pack. Here, an exemplary PDSC file is stored which is renamed to *.pdsc.txt. This PDSC file can be used to examine the contents of the PACK. It is also a starting point for writing your own Software Pack.

    +

    The folder structure of this exemplary Software Pack is as follows:

    +
      +
    • ARM.STM32F4xx_DFP.pdsc.txt: PDSC file example
    • +
    • CMSIS_Driver: Examples of driver implementations adhering to CMSIS-Driver
        +
      • Config: Driver configuration file
      • +
      +
    • +
    • Device: used in a DFP +
    • +
    • Documents: All kinds of documentation (reference manuals, data sheets, board schematics)
    • +
    • Flash: Programming algorithms for microcontroller devices
        +
      • STM32F4xx: uVision project files for generating the Flash programming algorithms
      • +
      +
    • +
    • Images: Pictures of developments boards used for display on web sites or other documentation
    • +
    • SVD: System View Description files for microcontroller devices
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/_pack_format.js b/CMSIS/Documentation/Pack/html/_pack_format.js new file mode 100644 index 0000000..5c7a61e --- /dev/null +++ b/CMSIS/Documentation/Pack/html/_pack_format.js @@ -0,0 +1,73 @@ +var _pack_format = +[ + [ "Filename Conventions", "_pack_format.html#Filenames", null ], + [ "Pack Schema", "_pack_format.html#PackSchema", null ], + [ "Example of a *.PDSC File", "_pack_format.html#PDSC_Example", null ], + [ "Example of a *.PACK File", "_pack_format.html#PACK_Example", null ], + [ "/package element", "pdsc_package_pg.html", [ + [ "/package", "pdsc_package_pg.html#element_package", null ] + ] ], + [ "/package/keywords element", "element_keywords.html", null ], + [ "/package/releases element", "element_releases.html", [ + [ "/package/releases/release", "element_releases.html#element_release", null ] + ] ], + [ "/package/taxonomy element", "element_taxonomy.html", [ + [ "/package/taxonomy/description", "element_taxonomy.html#element_taxonomyDescription", null ] + ] ], + [ "/package/apis element", "pdsc_apis_pg.html", [ + [ "/package/apis", "pdsc_apis_pg.html#element_apis", null ], + [ "/package/apis/api", "pdsc_apis_pg.html#element_api", null ] + ] ], + [ "/package/generators element", "pdsc_generators_pg.html", [ + [ "/package/generators", "pdsc_generators_pg.html#element_generators", null ], + [ "/package/generators/generator", "pdsc_generators_pg.html#element_generator", null ], + [ "/package/generators/generator/select", "pdsc_generators_pg.html#element_gen_select", null ], + [ "/package/generators/generator/arguments", "pdsc_generators_pg.html#element_gen_arguments", null ], + [ "/package/generators/generator/arguments/argument", "pdsc_generators_pg.html#element_gen_argument", null ], + [ "/package/generators/generator/project_files", "pdsc_generators_pg.html#element_gen_project_files", null ], + [ "/package/generators/generator/files", "pdsc_generators_pg.html#element_gen_files", null ], + [ "/package/generators/generator/files/file", "pdsc_generators_pg.html#element_gen_file", null ] + ] ], + [ "/package/devices element", "pdsc_devices_pg.html", "pdsc_devices_pg" ], + [ "/package/boards element", "pdsc_boards_pg.html", [ + [ "/package/boards", "pdsc_boards_pg.html#element_boards", null ], + [ "/package/boards/board", "pdsc_boards_pg.html#element_board", null ], + [ "/package/boards/board/feature", "pdsc_boards_pg.html#element_board_feature", null ], + [ "/package/boards/board/mountedDevice", "pdsc_boards_pg.html#element_board_mountedDevice", null ], + [ "/package/boards/board/compatibleDevice", "pdsc_boards_pg.html#element_board_compatibleDevice", null ], + [ "/package/boards/board/image", "pdsc_boards_pg.html#element_board_image", null ], + [ "/package/boards/board/debugInterface", "pdsc_boards_pg.html#element_board_debugInterface", null ], + [ "/package/boards/board/book", "pdsc_boards_pg.html#element_board_book", null ] + ] ], + [ "/package/conditions element", "pdsc_conditions_pg.html", [ + [ "/package/conditions", "pdsc_conditions_pg.html#element_conditions", null ], + [ "/package/conditions/condition", "pdsc_conditions_pg.html#element_condition", null ], + [ "/package/conditions/condition/accept", "pdsc_conditions_pg.html#element_accept", null ], + [ "/package/conditions/condition/require", "pdsc_conditions_pg.html#element_require", null ], + [ "/package/conditions/condition/deny", "pdsc_conditions_pg.html#element_deny", null ] + ] ], + [ "/package/components element", "pdsc_components_pg.html", [ + [ "Component Bundle", "pdsc_components_pg.html#Component_Bundle", null ], + [ "Component Files", "pdsc_components_pg.html#Component_Files", null ], + [ "Component Instances", "pdsc_components_pg.html#Component_Instances", null ], + [ "RTE_Components.h", "pdsc_components_pg.html#RTE_Components_h", null ], + [ "/package/components", "pdsc_components_pg.html#element_components", null ], + [ "/package/components/bundle", "pdsc_components_pg.html#element_bundle", null ], + [ "/package/components/.../component", "pdsc_components_pg.html#element_component", null ], + [ "/package/.../files", "pdsc_components_pg.html#element_files", null ], + [ "/package/.../files/file", "pdsc_components_pg.html#element_file", null ] + ] ], + [ "/package/examples element", "pdsc_examples_pg.html", [ + [ "/package/examples", "pdsc_examples_pg.html#element_examples", null ], + [ "/package/examples/example", "pdsc_examples_pg.html#element_example", null ], + [ "/package/examples/example/board", "pdsc_examples_pg.html#element_example_board", null ], + [ "/package/examples/project", "pdsc_examples_pg.html#element_example_project", null ], + [ "/package/examples/project/environment", "pdsc_examples_pg.html#element_example_project_env", null ], + [ "/package/examples/example/attributes", "pdsc_examples_pg.html#element_example_attributes", null ], + [ "/package/examples/example/attributes/component", "pdsc_examples_pg.html#element_example_attribute_component", null ] + ] ], + [ "Debug Access Sequences", "pdsc__sequence_name_enum_pg.html", [ + [ "Usage of Debug Access Sequences", "pdsc__sequence_name_enum_pg.html#usage_of_sequences", null ], + [ "Default Debug Access Sequences", "pdsc__sequence_name_enum_pg.html#default_sequences", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Pack/html/bc_s.png b/CMSIS/Documentation/Pack/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/CMSIS/Documentation/Pack/html/bc_s.png differ diff --git a/CMSIS/Documentation/Pack/html/bdwn.png b/CMSIS/Documentation/Pack/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/bdwn.png differ diff --git a/CMSIS/Documentation/Pack/html/closed.png b/CMSIS/Documentation/Pack/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/closed.png differ diff --git a/CMSIS/Documentation/Pack/html/cmsis.css b/CMSIS/Documentation/Pack/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/Pack/html/component_files.png b/CMSIS/Documentation/Pack/html/component_files.png new file mode 100644 index 0000000..5d8c3d4 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/component_files.png differ diff --git a/CMSIS/Documentation/Pack/html/doxygen.css b/CMSIS/Documentation/Pack/html/doxygen.css new file mode 100644 index 0000000..2642e8f --- /dev/null +++ b/CMSIS/Documentation/Pack/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/Pack/html/doxygen.png b/CMSIS/Documentation/Pack/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/doxygen.png differ diff --git a/CMSIS/Documentation/Pack/html/dynsections.js b/CMSIS/Documentation/Pack/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/Pack/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +/package/keywords element +CMSIS-Pack: /package/keywords element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/keywords element
    +
    +
    +

    Is the group element for wrapping keywords, which can be used to find a PACK. Keywords can be exported to web pages to provide information for search engines, such as Google.

    +

    Example:

    +
    <package>
    +
    ...
    +
    <keywords>
    +
    <keyword>ARM</keyword>
    +
    <keyword>Cortex-M</keyword>
    +
    <keyword>TCP/IP Stack</keyword>
    +
    </keywords>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + +
    Parent Element Element Chain
    package /package
    Child Elements Description Type Occurrence
    keyword Element that encloses one keyword. Enter a keyword between the opening and closing tag of this element. xs:string 1..1
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/element_releases.html b/CMSIS/Documentation/Pack/html/element_releases.html new file mode 100644 index 0000000..cfc3b0a --- /dev/null +++ b/CMSIS/Documentation/Pack/html/element_releases.html @@ -0,0 +1,181 @@ + + + + + +/package/releases element +CMSIS-Pack: /package/releases element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/releases element
    +
    +
    +

    Contains the release history of the PACK. This element is mandatory. No more than one such group can exist in a PACK. It contains the full release history of the PACK.

    +

    Example:

    +
    <package>
    +
    ...
    +
    <releases>
    +
    ...
    +
    </releases>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + +
    Parent Element Element Chain
    package /package
    Child Element Description Type Occurrence
    release Contains the version number of the release with some brief information about the main changes in that specific release. xs:string 1..*
    +

     

    +
    +

    +/package/releases/release

    +

    Contains brief information of the main changes in each release version of a PACK. The content is a string written between the opening and closing release tags. The latest release version is always listed on top.

    +

    Example:

    +
    <releases>
    +
    <release version="1.1.1">Fixed a problem with the feature xyz.
    +
    </release>
    +
    <release version="1.1.0">Introduces a new feature xyz.
    +
    </release>
    +
    <release version="1.0.0">First published version.
    +
    </release>
    +
    </releases>
    +

     

    + + + + + + + + + + + + + + + +
    Parent Element Element Chain
    releases /package/releases element
    Attributes Description Type Use
    version Version number of the release. The version format is described in Version Type. VersionType required
    date Release date (specified as YYYY-MM-DD, for example 2014-12-14 (14th December 2014). xs:date optional
    deprecated Pack is no longer officially supported after the set date. It will be excluded from checks for update. Deprecated packs may remain available for download from the server. Tools will continue to work but may provide indicators highlighting end of support for the pack and its content. Not recommended for use with new projects. Note this attribute is only relevant when set for the latest release located on top of the releases section. xs:date optional
    replacement Specifies the vendor and name of the Pack that shall be used instead. Use in conjunction with the deprecated attribute. E.g. the maintainer of the PACK A.X_DFP changes from vendor A to vendor B. In this case the attribute deprecated gets set in the A.X_DFP.pdsc and the replacement attribute set to B.X_DFP. Tools use this information to redirect users to a supported pack. xs:string optional
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/element_taxonomy.html b/CMSIS/Documentation/Pack/html/element_taxonomy.html new file mode 100644 index 0000000..7c71615 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/element_taxonomy.html @@ -0,0 +1,259 @@ + + + + + +/package/taxonomy element +CMSIS-Pack: /package/taxonomy element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/taxonomy element
    +
    +
    +

    Group to list description elements that define component classes and component group names used within a package description. This element is optional.

    +

    Example:

    +
    <package>
    +
    ...
    +
    <taxonomy>
    +
    ...
    +
    </taxonomy>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + +
    Parent Element Element Chain
    package /package
    Child Elements Description Type Occurrence
    description Describes or defines a component class or class-group combination. TaxonomyDescriptionType 1..*
    +

     

    +
    +

    +/package/taxonomy/description

    +

    This element describes a component class or the combination between a component class and a component group. Components are categorized by Cclass and Cgroup. The creator of a package can define names for Cclass and Cgroup. Thus, configuration tools can display the set of available components. A document can be referenced using the attribute doc. The attribute generator can be used to reference to a generator tool. The id of the generator needs to be the same as specified in the element /package/generators/generator. The description itself is a string entered between the opening and closing tags of the element description.

    +

    It is recommended to use an already agreed taxonomy for interchangeable components. For example, the combination of class CMSIS and group Startup is defined for the device-specific CMSIS-CORE files.

    +

     

    +

    Example:

    +
    <taxonomy>
    +
    <description Cclass="Board Support">Generic Interfaces for Evaluation and Development Boards</description>
    +
    <description Cclass="CMSIS" doc="CMSIS/Documentation/General/html/index.html">Cortex Microcontroller Software Interface Components</description>
    +
    <description Cclass="Device" doc="CMSIS/Documentation/Core/html/index.html">Startup, System Setup</description>
    +
    <description Cclass="CMSIS Driver" doc="CMSIS/Documentation/Driver/html/index.html">Unified Device Drivers compliant to CMSIS-Driver Specifications</description>
    +
    <description Cclass="File System">File Drive Support and File System</description>
    +
    <description Cclass="Graphics">Graphical User Interface</description>
    +
    <description Cclass="Network">Network Stack using Internet Protocols</description>
    +
    <description Cclass="USB">Universal Serial Bus Stack</description>
    +
    </taxonomy>
    +
    Note
    You must not use Windows or Linux reserved characters for Cclass, Cgrouop, and Csub names! Some development tools use these names to create a directory structure for the software components in projects. Reserved characters are:
    < (less than)
    +> (greater than)
    +: (colon)
    +" (double quote)
    +/ (forward slash)
    +\ (backslash)
    +| (vertical bar or pipe)
    +? (question mark)
    +* (asterisk)
    +
    +

     

    + + + + + + + + + + + + + + + +
    Parent Element Element Chain
    taxonomy /package/taxonomy element
    Attributes Description Type Use
    Cclass Component Class Name. Can be defined by the creator of the package. Predefined values can be used as listed in the table Component Classes. Cclass required
    Cgroup Component Group Name. Can be defined by the creator of the package. Predefined values can be used as listed in the table Component Groups. CgroupType optional
    doc Reference to documentation. xs:string optional
    generator Reference to a generator. Enter the id value of the element /package/generators/generator. xs:string optional
    +

     

    +

    Table: Component Classes

    +

    Component Class names are strings with a minimum length of 3 characters and a maximum length of 32 characters. Component class names are specified in the section /package/taxonomy/description.

    +

    These values can be used in the elements:

    + +

    Example:

    +
    <... Cclass="CMSIS" ...>
    +

     

    +

    The table lists predefined Component Classes.

    + + + + + + + + + + + + + + + + + + + +
    Cclass= Description
    Board Support Components providing interfaces for Evaluation and Development Boards
    CMSIS Components defined by Cortex Microcontroller Software Interface Standard (e.g. CMSIS-CORE, CMSIS-DSP and CMSIS-RTOS)
    Device Components containing device specific implementations of non-standard APIs (e.g. HAL drivers, CMSIS Startup files)
    CMSIS Driver Components implementing unified device drivers compliant to CMSIS-Driver (e.g. UART, SPI, USB, etc.)
    File System Components implementing some kind of File Systems (e.g. Flash or RAM based file systems)
    Graphics Components implementing some kind of Display and Graphics Software
    Network Components implementing some kind of Network Communications (e.g. TCP/IP Stack)
    USB Components implementing some kind of USB interfaces (e.g. Host and Device interfaces)
    +

     

    +

    Table: Component Groups

    +

    Component Group names are specified by the element Cgroup and create categories within a Component Class specified by the element Cclass. The creator of the PACK can define the names in the element /package/taxonomy/description. A Component Group name is string with a length between 3 and 32 characters.

    +

    Example:

    +
    <... Cgroup="RTOS" Cclass="CMSIS"...>
    +

     

    +

    Component Groups can be used in the elements:

    + +

    The table lists predefined values for the Component Class Cclass="CMSIS". No other Component Groups have been defined so far.

    + + + + + + + + + +
    Cgroup= Description
    CORE A component containing device support in accordance to the CMSIS-CORE specification (startup, system and device files)
    DSP A component implementing the CMSIS-DSP API specification.
    RTOS A component implementing the CMSIS-RTOS API specification.
    +

     

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/ftv2blank.png b/CMSIS/Documentation/Pack/html/ftv2blank.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2blank.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2cl.png b/CMSIS/Documentation/Pack/html/ftv2cl.png new file mode 100644 index 0000000..132f657 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2cl.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2doc.png b/CMSIS/Documentation/Pack/html/ftv2doc.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2doc.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2folderclosed.png b/CMSIS/Documentation/Pack/html/ftv2folderclosed.png new file mode 100644 index 0000000..bb8ab35 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2folderclosed.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2folderopen.png b/CMSIS/Documentation/Pack/html/ftv2folderopen.png new file mode 100644 index 0000000..d6c7f67 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2folderopen.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2lastnode.png b/CMSIS/Documentation/Pack/html/ftv2lastnode.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2lastnode.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2link.png b/CMSIS/Documentation/Pack/html/ftv2link.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2link.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2mlastnode.png b/CMSIS/Documentation/Pack/html/ftv2mlastnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2mlastnode.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2mnode.png b/CMSIS/Documentation/Pack/html/ftv2mnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2mnode.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2mo.png b/CMSIS/Documentation/Pack/html/ftv2mo.png new file mode 100644 index 0000000..4bfb80f Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2mo.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2node.png b/CMSIS/Documentation/Pack/html/ftv2node.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2node.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2ns.png b/CMSIS/Documentation/Pack/html/ftv2ns.png new file mode 100644 index 0000000..72e3d71 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2ns.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2plastnode.png b/CMSIS/Documentation/Pack/html/ftv2plastnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2plastnode.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2pnode.png b/CMSIS/Documentation/Pack/html/ftv2pnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2pnode.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2splitbar.png b/CMSIS/Documentation/Pack/html/ftv2splitbar.png new file mode 100644 index 0000000..fe895f2 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2splitbar.png differ diff --git a/CMSIS/Documentation/Pack/html/ftv2vertline.png b/CMSIS/Documentation/Pack/html/ftv2vertline.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/Pack/html/ftv2vertline.png differ diff --git a/CMSIS/Documentation/Pack/html/index.html b/CMSIS/Documentation/Pack/html/index.html new file mode 100644 index 0000000..cc29e6e --- /dev/null +++ b/CMSIS/Documentation/Pack/html/index.html @@ -0,0 +1,177 @@ + + + + + +Main Page +CMSIS-Pack: Main Page + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    CMSIS-Pack Documentation
    +
    +
    +

    CMSIS-Pack describes a delivery mechanism for software components, device parameters, and evaluation board support. The XML-based package description (PDSC) file describes the content of a Software Pack (file collection) that includes:

    +
      +
    • Source code, header files, and software libraries
    • +
    • Documentation and source code templates
    • +
    • Device parameters along with startup code and programming algorithms
    • +
    • Example projects
    • +
    +

    The complete file collection along with the PDSC file is shipped in ZIP-format as a Software Pack. The PDSC file is designed for software development environments and describes the user and device relevant context for the files supplied within such a Software Pack. A Software Pack can be used for multiple purposes (see below).

    +

    After installing a Software Pack, all included software components are available to the development tools. Software components are a collection of source modules, header and configuration files as well as libraries. Packs containing software components can also include Example Projects and User Code Templates.

    +

    +Software Pack Use Cases

    +
    +SPVariants_small.png +
    +Software Pack Use Cases
    +

    The figure above shows the following use cases for Software Packs:

    +
      +
    • Device Family Pack (DFP): contains CMSIS system/startup files, drivers, and flash algorithms for a microcontroller device family.
    • +
    • CMSIS Software Pack: contains the generic CMSIS components (CORE, DSP Library, and RTOS implementation) supplied by ARM.
    • +
    • Middleware Pack: contains software components belonging to a middleware (such as source code or libraries).
    • +
    • Board Support Pack (BSP): contains documentation, schematics, and drivers for a certain development board.
    • +
    • In-house Software Packs: usually contain software components that can be distributed within a company or engineering group.
    • +
    +
    Note
    A Software Pack can address multiple use cases at the same time!
    +

    The following sections give you more details on the basics:

    + +
    +

    CMSIS-Pack in ARM::CMSIS Pack

    +

    Files relevant to CMSIS-Pack are present in the following ARM::CMSIS directories:

    + + + + + + + + + +
    Folder Content
    Utilities Utilities for Creating Packs
    Pack\Example Reference Software Pack
    Pack\Tutorials Tutorials for Creating Packs
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/jquery.js b/CMSIS/Documentation/Pack/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/Pack/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
    +
    +
    Revision History of CMSIS-Pack
    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    Version Description
    1.4.1 Modifications compared to Version 1.4.0
      +
    • pName, Dname, Dvariant type changed from xs:string to RestrictedString
    • +
    +
    1.4.0 Modifications compared to Version 1.3.3:
      +
    • device section memory specification redefined, deprecating id attribute
    • +
    • device section algorithm support multiple flash programming algorithm styles
    • +
    • device section debug adding CJTAG debug port type
    • +
    +
    1.3.3 Modifications compared to Version 1.3.1:
      +
    • Schema Version remains unchanged, since no incompatible update
    • +
    • Added generator section can specify a target GPDSC file that it will generate
    • +
    • Added A component can be linked to a generator and the generator's GPDSC file will be automatically included in the project as part of the component.
    • +
    • Added A generator command is optionally extended by a separate description of arguments
    • +
    • Updated Vendor list
    • +
    • Updated Utility PackChk.exe to Version 1.3.0.0:
        +
      • detect redefinitions of boards
      • +
      • check presence of board image files
      • +
      • check for duplicate device features
      • +
      • check for duplicate device definitions
      • +
      • check for
      • +
      • minor bug fixes
      • +
      +
    • +
    +
    1.3.1 Modifications compared to Version 1.3:
      +
    • Schema Version remains unchanged, since no incompatible update
    • +
    • Added Cortex-M7 to the predefined list of processors
    • +
    • Updated Vendor list
    • +
    • Added File version attribute to debugvars element of device description
    • +
    • Updated XML file header encoding tag set to capital "UTF8"
    • +
    • Deprecated init attribute of <memory> element in <devices> section deprecated
    • +
    +
    1.3 Modifications compared to Version 1.2:
      +
    • Added attributes to release tag for managing deprecation and changing pack IDs
    • +
    • Removed external RAMn and ROMn memory IDs in memory tag
    • +
    • Added FileCategoryTypes in <file> element for C, C++, Assembler, Linker
    • +
    • Extended specification of <require>, <accept> and <deny> with Cversion and Capiversion ranges
    • +
    • Added Utilities for Creating Packs and PackChk.exe for pack validation
    • +
    • Added documentation for the Example PACK based on LPC1800 Device Family
    • +
    • Refined <debug> element description
    • +
    • Many clarifications in the documentation along with examples
    • +
    +
    1.2 Clarifications for release.
    1.1 - Preliminary Update release for review:
      +
    • new Boards description
    • +
    • new Debug description
    • +
    • revised Device Feature capture
    • +
    • new Generator description
    • +
    • new Flash Algorithm Specification
    • +
    • new Configuration Wizard Annotation Specification
    • +
    +
    1.0 - Preliminary Preliminary release for review
    0.10 Release for beta review
    + + + + + + diff --git a/CMSIS/Documentation/Pack/html/pages.html b/CMSIS/Documentation/Pack/html/pages.html new file mode 100644 index 0000000..444942e --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pages.html @@ -0,0 +1,161 @@ + + + + + +Usage and Description +CMSIS-Pack: Usage and Description + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc__sequence_name_enum_pg.html b/CMSIS/Documentation/Pack/html/pdsc__sequence_name_enum_pg.html new file mode 100644 index 0000000..f7b8d52 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc__sequence_name_enum_pg.html @@ -0,0 +1,499 @@ + + + + + +Debug Access Sequences +CMSIS-Pack: Debug Access Sequences + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Debug Access Sequences
    +
    +
    +

    Operations executed by tools for debugging and flash programming.
    +
    +

    +

    Debug Access Sequences define the activities of development tools to connect to a device using the debug channel for debugging, tracing, or flash programming.

    +

    Several Debug Access Sequences are pre-defined and executed in specific context. Refer to /package/devices/family/.../sequences for a details.

    +

    The development tools should implement Default Debug Access Sequences for these Pre-defined Debug Access Sequences. These Default Debug Access Sequences can be overwritten by Debug Access Sequences specified with the sequence element in the PDSC file. Additionally, a PDSC file can contain user-defined sequences, for example to reuse access sequence fragments.

    +

    +Usage of Debug Access Sequences

    +

    Pre-defined Debug Access Sequences are used in the following context:

    +
      +
    • Connect Debugger to Device is executed when debugging or flash programming with the target starts.
    • +
    • Reset Device is executed to reset the target.
    • +
    • Verify Code is executed to verify the content after flash programming.
    • +
    • Disconnect Debugger is executed when debugging or flash programming with the target stops.
    • +
    +

    The following diagrams show how the Debug Access Sequences are executed by a development tool.

    +

    Connect Debugger to Device is executed when debugging or flash programming with the target starts.

    +
    +DebugConnect.png +
    +

    Reset Device is executed to reset the target.

    +
    +Reset.png +
    +

    Verify Code is executed to verify the content after flash programming.

    +
    +CodeVerify.png +
    +

    Disconnect Debugger is executed when debugging or flash programming with the target stops.

    +
    +DebugDisconnect.png +
    +

    +Default Debug Access Sequences

    +

    Debug Access Sequences get defined in the sequence element. A list of all available pre-defined sequence names is provided in the table Pre-defined Debug Access Sequences. The following default sequences should be implemented in a tool. They are executed when no sequence definition exists in the PDSC file.

    +
    Note
    Default Debug Access Sequences read the System Control Space (SCS) of the processor and assume that the SCS offset is implemented as defined in the ARMv6-M/ARMv7-M architecture reference manual.
    +

    The following Default Debug Access Sequences are implemented:

    + +

    DebugPortSetup

    +
      <sequence name="DebugPortSetup">
    +    <block>
    +      __var isSWJ    = ((__protocol &amp; 0x00010000) != 0);
    +      __var protType = __protocol &amp; 0x0000FFFF;
    +    </block>
    +  
    +    <!-- JTAG Protocol -->
    +    <control if="protType == 1">
    +    
    +      <control if="isSWJ">
    +      
    +        <block atomic="1">
    +          // Ensure current debug interface is in reset state
    +          DAP_SWJ_Sequence(51, 0x0007FFFFFFFFFFFF);
    +          
    +          // Execute SWJ-DP Switch Sequence SWD to JTAG (0xE73C)
    +          // Change if SWJ-DP uses deprecated switch code (0xAEAE)
    +          DAP_SWJ_Sequence(16, 0xE73C);
    +          
    +          // Ensure JTAG interface is reset
    +          DAP_SWJ_Sequence(6, 0x3F);
    +        </block>
    +        
    +      </control>
    +    
    +      <block atomic="1">
    +        // JTAG "Soft" Reset
    +        DAP_JTAG_Sequence(6, 1, 0x3F);
    +        DAP_JTAG_Sequence(1, 0, 0x01);
    +      </block>
    +
    +    </control>
    +    
    +    <!-- SWD Protocol -->
    +    <control if="protType == 2">
    +    
    +      <control if="isSWJ">
    +        
    +        <block atomic="1">
    +          // Ensure current debug interface is in reset state
    +          DAP_SWJ_Sequence(51, 0x0007FFFFFFFFFFFF);
    +          
    +          // Execute SWJ-DP Switch Sequence JTAG to SWD (0xE79E)
    +          // Change if SWJ-DP uses deprecated switch code (0xEDB6)
    +          DAP_SWJ_Sequence(16, 0xE79E);
    +          
    +          // Enter SWD Line Reset State
    +          DAP_SWJ_Sequence(51, 0x0007FFFFFFFFFFFF);  // &gt; 50 cycles SWDIO/TMS High
    +          DAP_SWJ_Sequence(3,  0x00);                // At least 2 idle cycles (SWDIO/TMS Low)
    +      </block>
    +      
    +      </control>
    +    
    +      <control if="!isSWJ">
    +      
    +        <block>
    +          // Enter SWD Line Reset State
    +          DAP_SWJ_Sequence(51, 0x0007FFFFFFFFFFFF);  // &gt; 50 cycles SWDIO/TMS High
    +          DAP_SWJ_Sequence(3,  0x00);                // At least 2 idle cycles (SWDIO/TMS Low)
    +        </block>
    +        
    +      </control>
    +      
    +      <block>
    +        // Read DPIDR to enable SWD interface (SW-DPv1 and SW-DPv2)
    +        ReadDP(0x0);
    +      </block>
    +
    +    </control>
    +    
    +  </sequence>
    +

    DebugPortStart

    +
      <sequence name="DebugPortStart">
    +    
    +    <block>
    +      __var SW_DP_ABORT  = 0x0;
    +      __var DP_CTRL_STAT = 0x4;
    +      __var DP_SELECT    = 0x8;
    +      __var powered_down = 0;
    +
    +      // Switch to DP Register Bank 0
    +      WriteDP(DP_SELECT, 0x00000000);
    +    
    +      // Read DP CTRL/STAT Register and check if CSYSPWRUPACK and CDBGPWRUPACK bits are set
    +      powered_down = ((ReadDP(DP_CTRL_STAT) &amp; 0xA0000000) != 0xA0000000);
    +    </block>
    +    
    +    <control if="powered_down">
    +    
    +      <block>
    +        // Request Debug/System Power-Up
    +        WriteDP(DP_CTRL_STAT, 0x50000000);
    +      </block>
    +      
    +      <!-- Wait for Power-Up Request to be acknowledged -->
    +      <control while="(ReadDP(DP_CTRL_STAT) &amp; 0xA0000000) == 0xA0000000" timeout="1000000"/>
    +      
    +      <block>
    +        // Request Debug Reset
    +        WriteDP(DP_CTRL_STAT, 0x54000000);
    +      </block>
    +      
    +      <!-- Wait for Debug Reset to be acknowledged, don't issue error on timeout to deal with improperly connected Debug Reset -->
    +      <control while="(ReadDP(DP_CTRL_STAT) &amp; 0xA8000000) == 0xA8000000" timeout="300000"/>
    +      
    +      <!-- JTAG Specific Part of sequence -->
    +      <control if="__protocol == 1">
    +      
    +        <block>
    +          // Init AP Transfer Mode, Transaction Counter, and Lane Mask (Normal Transfer Mode, Include all Byte Lanes)
    +          // Additionally clear STICKYORUN, STICKYCMP, and STICKYERR bits by writing '1'
    +          WriteDP(DP_CTRL_STAT, 0x50000F32);
    +        </block>
    +        
    +      </control>
    +      
    +      <!-- SWD Specific Part of sequence -->
    +      <control if="__protocol == 2">
    +      
    +        <block>
    +          // Init AP Transfer Mode, Transaction Counter, and Lane Mask (Normal Transfer Mode, Include all Byte Lanes)
    +          WriteDP(DP_CTRL_STAT, 0x50000F00);
    +          
    +          // Clear WDATAERR, STICKYORUN, STICKYCMP, and STICKYERR bits of CTRL/STAT Register by write to ABORT register
    +          WriteDP(SW_DP_ABORT, 0x0000001E);
    +        </block>
    +
    +      </control>
    +      
    +    </control>
    +    
    +  </sequence>
    +

    DebugPortStop

    +
      <sequence name="DebugPortStop">
    +  
    +    <block>
    +      __var DP_CTRL_STAT = 0x4;
    +      __var DP_SELECT    = 0x8;
    +      
    +      // Switch to DP Register Bank 0
    +      WriteDP(DP_SELECT, 0x00000000);
    +      
    +      // Power Down Debug port
    +      WriteDP(DP_CTRL_STAT, 0x00000000);
    +    </block>
    +  
    +  </sequence>
    +

    DebugCoreStart

    +
      <sequence name="DebugCoreStart">
    +  
    +    <block>
    +      // System Control Space (SCS) offset as defined in ARMv6-M/ARMv7-M.
    +    
    +      __var SCS_Addr   = 0xE000E000;
    +      __var DHCSR_Addr = SCS_Addr + 0xDF0;
    +
    +      // Enable Core Debug via DHCSR
    +      Write32(DHCSR_Addr, 0xA05F0001);
    +    </block>
    +    
    +  </sequence>
    +

    DebugCoreStop

    +
      <sequence name="DebugCoreStop">
    +  
    +    <block>
    +      // System Control Space (SCS) offset as defined in ARMv6-M/ARMv7-M.
    +      
    +      __var SCS_Addr   = 0xE000E000;
    +      __var DHCSR_Addr = SCS_Addr + 0xDF0;
    +      __var DEMCR_Addr = SCS_Addr + 0xDFC;
    +      
    +      // Disable Core Debug via DHCSR
    +      Write32(DHCSR_Addr, 0xA05F0000);
    +      
    +      // Disable DWT and ITM blocks, DebugMonitor handler,
    +      // halting debug traps, and Reset Vector Catch.
    +      Write32(DEMCR_Addr, 0x00000000);
    +    </block>
    +    
    +  </sequence>
    +

    ResetSystem

    +
      <sequence name="ResetSystem">
    +  
    +    <block>
    +      // System Control Space (SCS) offset as defined in ARMv6-M/ARMv7-M.
    +
    +      __var SCS_Addr   = 0xE000E000;
    +      __var AIRCR_Addr = SCS_Addr + 0xD0C;
    +      __var DHCSR_Addr = SCS_Addr + 0xDF0;
    +    
    +      // Execute SYSRESETREQ via AIRCR
    +      Write32(AIRCR_Addr, 0xA05F0004);
    +    </block>
    +
    +    <!-- Reset Recovery: Wait for DHCSR.S_RESET_ST bit to clear on read -->
    +    <control while="(Read32(DHCSR_Addr) &amp; 0x02000000) == 0" timeout="500000"/>
    +    
    +  </sequence>
    +

    ResetProcessor

    +
    Note
    This Default Debug Access Sequence is empty for ARMv6-M based processors.
    +
      <sequence name="ResetProcessor">
    +  
    +    <block>
    +      // System Control Space (SCS) offset as defined in ARMv7-M.
    +
    +      __var SCS_Addr   = 0xE000E000;
    +      __var AIRCR_Addr = SCS_Addr + 0xD0C;
    +      __var DHCSR_Addr = SCS_Addr + 0xDF0;
    +    
    +      // Execute VECTRESET via AIRCR
    +      Write32(AIRCR_Addr, 0xA05F0001);
    +    </block>
    +    
    +    <!-- Reset Recovery: Wait for DHCSR.S_RESET_ST bit to clear on read -->
    +    <control while="(Read32(DHCSR_Addr) &amp; 0x02000000) == 0" timeout="500000"/>
    +
    +  </sequence>
    +

    ResetHardware

    +
      <sequence name="ResetHardware">
    +    
    +    <block>
    +      __var nReset      = 0x80;
    +      __var canReadPins = 0;
    +    
    +      // Deassert nRESET line
    +      canReadPins = (DAP_SWJ_Pins(0x00, nReset, 0) != 0xFFFFFFFF);
    +    </block>
    +    
    +    <!-- Keep reset active for 50 ms -->
    +    <control while="1" timeout="50000"/>
    +
    +    <control if="canReadPins">
    +    
    +      <!-- Assert nRESET line and wait for recovery -->
    +      <control while="(DAP_SWJ_Pins(nReset, nReset, 0) &amp; nReset) == 0" timeout="1000000"/>
    +      
    +    </control>
    +    
    +    <control if="!canReadPins">
    +    
    +      <block>
    +        // Assert nRESET line
    +        DAP_SWJ_Pins(nReset, nReset, 0);
    +      </block>
    +      
    +      <!-- Wait 100ms for recovery if nRESET not readable -->
    +      <control while="1" timeout="1000000"/>
    +      
    +    </control>
    +    
    +  </sequence>
    +

    ResetHardwareAssert

    +
      <sequence name="ResetHardwareAssert">
    +
    +    <block>
    +        __var nReset = 0x80;
    +      
    +        // Deassert nRESET line to activate the hardware reset
    +        DAP_SWJ_Pins(0, nReset, 0);
    +    </block>
    +    
    +  </sequence>
    +

    ResetHardwareDeassert

    +
      <sequence name="ResetHardwareDeassert">
    +
    +    <block>
    +      __var nReset      = 0x80;
    +      __var canReadPins = 0;
    +      
    +      // Assert nRESET line and check if nRESET is readable
    +      canReadPins = (DAP_SWJ_Pins(nReset, nReset, 0) != 0xFFFFFFFF);
    +    </block>
    +
    +    <!-- Wait for nRESET to recover from reset if readable-->
    +    <control if="canReadPins" while="(DAP_SWJ_Pins(nReset, nReset, 0) &amp; nReset) == 0" timeout="1000000"/>
    +    
    +    <!-- Wait 100ms for recovery if nRESET not readable -->
    +    <control if="!canReadPins" while="1" timeout="1000000"/>
    +  
    +  </sequence>

    ResetCatchSet

    +
      <sequence name="ResetCatchSet">
    +  
    +    <block>
    +      // System Control Space (SCS) offset as defined
    +      // in ARMv6-M/ARMv7-M. Reimplement this sequence
    +      // if the SCS is located at a different offset.
    +
    +      __var SCS_Addr   = 0xE000E000;
    +      __var DHCSR_Addr = SCS_Addr + 0xDF0;
    +      __var DEMCR_Addr = SCS_Addr + 0xDFC;
    +      __var value      = 0;
    +    
    +      // Enable Reset Vector Catch in DEMCR
    +      value = Read32(DEMCR_Addr);
    +      Write32(DEMCR_Addr, (value | 0x00000001));
    +
    +      // Read DHCSR to clear potentially set DHCSR.S_RESET_ST bit
    +      Read32(DHCSR_Addr);
    +    </block>
    +  
    +  </sequence>
    +

    ResetCatchClear

    +
      <sequence name="ResetCatchClear">
    +  
    +    <block>
    +      // System Control Space (SCS) offset as defined
    +      // in ARMv6-M/ARMv7-M. Reimplement this sequence
    +      // if the SCS is located at a different offset.
    +      
    +      __var SCS_Addr   = 0xE000E000;
    +      __var DEMCR_Addr = SCS_Addr + 0xDFC;
    +      __var value      = 0;
    +      
    +      // Disable Reset Vector Catch in DEMCR
    +      value = Read32(DEMCR_Addr);
    +      Write32(DEMCR_Addr, (value &amp; (~0x00000001)));
    +    </block>
    +    
    +  </sequence>
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_apis_pg.html b/CMSIS/Documentation/Pack/html/pdsc_apis_pg.html new file mode 100644 index 0000000..3c67be8 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_apis_pg.html @@ -0,0 +1,200 @@ + + + + + +/package/apis element +CMSIS-Pack: /package/apis element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/apis element
    +
    +
    +

    Application Programming Interfaces (apis) are C/C++ interface specifications that allow software to be divided into largely independent modules. Such modules can then be developed, tested, and maintained independently, and reused by different projects. One example is the use of device drivers. If device drivers are developed for different devices implementing the same API, the application software itself can be written independent from the device it is build for.

    +

    The apis allow to distribute the Application Programming Interface Specifications decoupled from actual implementation. One example is the CMSIS-RTOS API, which is specified as part of CMSIS, however, the actual RTOS implementation is provided by different vendors.

    +

    Unlike a software component, an API is not selectable. An API consists of a name, a brief description as well as one or more header files, and a document containing a detailed specification of the API.

    +

     

    +
    +

    +/package/apis

    +

    This element is a grouping element for all application programming interfaces included in the Software Pack. The element itself is optional. Only one such section can exist in a package.

    +

    Example:

    +
    <package>
    +
    <apis>
    +
    ...
    +
    </apis>
    +
    </package>
    +

     

    + + + + + + + + + +
    Parents Element Chain    
    package /package    
    Child Elements Description Type Occurrence
    api Named specification of an API containing a brief description, C/C++ header files and documentation ApiType 1..*
    +

     

    +
    +

    +/package/apis/api

    +

    Application Programming Interfaces (apis) are C/C++ interface specifications that allow components to interwork by either implementing or using a set of functions, data types, and definitions. This element is mandatory and can exist multiple times.

    +

    Example:

    +
    <apis>
    +
    <api Cclass="Device" Cgroup="Driver UART" exclusive="0">
    +
    <description>UART Driver API for the Cortex-M processor based devices</description>
    +
    <files>
    +
    <file category="doc" name="Driver/Doc/UART/html/index.html"/>
    +
    <file category="header" name="Driver/Include/Driver_UART.h"/>
    +
    </files>
    +
    </api>
    +
    <api Cclass="Device" Cgroup="Driver SPI" exclusive="0">
    +
    <description>SPI Driver API for the Cortex-M processor based devices</description>
    +
    <files>
    +
    <file category="doc" name="Driver/Doc/SPI/html/index.html"/>
    +
    <file category="header" name="Driver/Include/Driver_SPI.h"/>
    +
    </files>
    +
    </api>
    +
    ...
    +
    </apis>
    +

     

    + + + + + + + + + + + + + + + + + + + + + +
    Parent Element Element Chain
    apis /package/apis
    Attributes Description Type Use
    Cclass Defines the component class to which this component belongs. This is a mandatory part of the component ID. Predefined values can be used as listed in the table Component Classes. CclassType required
    Cgroup Defines the component group to which this component belongs. This is a mandatory part of the component ID. Predefined values can be used as listed in the table Component Groups. CgroupType required
    exclusive Makes the selection of a component implementing the API exclusive. If set to 0, then multiple components implementing the API can be selected. Default is 1. xs:boolean optional
    Capiversion Version of this component. Is a mandatory part of the component ID. The version format is described in Version Type. VersionType optional
    Child Elements Description Type Occurrence
    description Brief summary about the purpose and scope of an API. xs:string 0..1
    files Grouping element for all file descriptions that are part of this component.. group 0..1
    +

     

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_boards_pg.html b/CMSIS/Documentation/Pack/html/pdsc_boards_pg.html new file mode 100644 index 0000000..9837a61 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_boards_pg.html @@ -0,0 +1,503 @@ + + + + + +/package/boards element +CMSIS-Pack: /package/boards element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/boards element
    +
    +
    +

    The level <boards> describes a development board that is the subject of a Board Support Pack (BSP). It contains information about the board vendor and name, a brief description, images to be displayed on web pages, and different types of documentation. The microcontroller devices that are mounted on the board or that are compatible with the ones mounted are also specified. A list of features concludes the <boards> section.

    +

    A development board is described by the following properties:

    +
      +
    • description: a brief description of the development board
    • +
    • book: documentation about the board (user manuals, schematics, etc.)
    • +
    • mountedDevice: the microcontroller device mounted on the development board.
    • +
    • compatibleDevice: compatible microcontroller devices.
    • +
    • image: pictures of the board to be displayed on web pages.
    • +
    • feature: categorized list of the development board's features and peripherals.
    • +
    • debugInterface: describing the debug capabilities.
    • +
    +

    Example

    +
    <boards>
    +
    <board vendor="STMicroelectronics" name="32F429IDISCOVERY" revision="Rev.1" salesContact="http://www.st.com/stonline/contactus/contacts/index.php" orderForm="https://my.st.com/esample/app?page=basket&amp;pn=STM32F429I-DISCO">
    +
    +
    <description>STMicroelectronics STM32F429I Discovery Board Support and Examples</description>
    +
    +
    <image small="Images/stm32f429i-disco_small.png" large="Images/stm32f429i-disco.png"/>
    +
    +
    <book category="overview" name="http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1199/PF259090" title="32F429IDISCOVERY Web Page"/>
    +
    <book category="setup" name="Documents/UM1662.pdf" title="Getting Started"/>
    +
    <book category="schematic" name="Documents/UM1670.pdf" title="Schematics"/>
    +
    <book category="manual" name="Documents/UM1670.pdf" title="User Manual"/>
    +
    +
    <mountedDevice deviceIndex="0" Dvendor="STMicroelectronics:13" Dname="STM32F429ZI"/>
    +
    +
    <compatibleDevice deviceIndex="0" Dvendor="STMicroelectronics:13" Dfamily="STM32F4 Series" DsubFamily="STM32F429 Line"/>
    +
    +
    <feature type="ODbg" n="1" name="On-board ST-LINK/V2 with selection mode switch to use the kit as a standalone"/>
    +
    <feature type="XTAL" n="80000000"/>
    +
    <feature type="PWR" n="5" name="USB Powered"/>
    +
    <feature type="PWR" n="3" m="5" name="External Supply"/>
    +
    <feature type="RAM" n="1" name="64 MBit SDRAM"/>
    +
    <feature type="DIO" n="4" m="32" name="Extension header for LQFP144 with 2.54 mm Pitch"/>
    +
    <feature type="USB" n="1" name="High-Speed USB OTG with micro-AB Connector"/>
    +
    <feature type="ConnOther" n="1" name="JP3 (Idd) for current measurement"/>
    +
    <feature type="Button" n="2" name="Push-buttons: User and Reset"/>
    +
    <feature type="Gyro" n="1" name="L3GD20, ST MEMS motion sensor, 3-axis digital output gyroscope"/>
    +
    <feature type="LED" n="6" name="Com, 3.3 V Power, Two user, Two USB OTG LEDs"/>
    +
    <feature type="CustomFF" n="66" m="119.3" name="Discovery Board Formfactor"/>
    +
    <feature type="GLCD" n="1" m="240.320" name="2.4 inch QVGA TFT LCD"/>
    +
    +
    <debugInterface adapter="ST-Link" connector="Mini-USB"/>
    +
    +
    </board>
    +
    </boards>
    +

     

    +
    +

    +/package/boards

    +

    Grouping element for boards. No more than one such group can exist in a PACK. None is required.

    + + + + + + + + + +
    Parent Chain
    package /package
    Child Elements Description Type Occurrence
    board Description of the board BoardType 1..*
    +

     

    +
    +

    +/package/boards/board

    +

    This element provides information to specify the Board Support Package (BSP). At least one board must be defined.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parent Chain
    boards /package/boards
    Attributes Description Type Use
    vendor name of the board vendor xs:string required
    name name of the development board xs:string required
    revision Revision of the board that is suited to be used with the BSP. xs:string optional
    salesContact Either an email address or web page to contact the sales department. xs:string optional
    orderForm Link to a web page for ordering the development board. xs:anyURI optional
    Child Elements Description Type Occurrence
    description Brief summary of the board xs:string 1
    feature Describes the features of the development board. BoardsFeatureType 1..*
    mountedDevice Specifies the microcontroller device mounted on the development board. BoardsDeviceType 1..*
    compatibleDevice Specifies compatible microcontroller devices. CompatibleDeviceType 1..*
    image Carries pictures of the boards to be displayed on web pages. Directory and file names are case-sensitive. ComplexType 0..1
    debugInterface Describes the debug interface of the development board. DebugInterfaceType 1..*
    book Describes the documentation files (user manuals, schematics, etc.). Directory and file names are case-sensitive. BoardsBookType 1..*
    +

     

    +
    +

    +/package/boards/board/feature

    +

    This element contains information about the features and capabilities of a board. A list of pre-defined features exists.

    +

    Example

    +
    <feature type="PWR" n="3" m="5" name="Element: Board feature"/>
    +

     

    + + + + + + + + + + + + + + + +
    Parent Chain
    board /package/boards/board
    Attributes Description Type Use
    type Defines board features. Select predefined values from the table Board Features. BoardFeatureTypeEnum required
    n Depends on attribute type. Check table Board Features for details. xs:decimal optional
    m Depends on attribute type. Check table Board Features for details. xs:decimal optional
    name Descriptive name of the feature. If omitted, a Default Name is used (refer to table Board Feature Types). Do not repeat the n or m values in the name. This will lead to duplicate entries on web sites (they show n x name). xs:string optional
    +

     

    +

    Table: Board Features

    +

    The table below lists predefined board features.

    +
    Note
      +
    • The attribute name of the element /package/boards/board/feature is a descriptive text for a feature. If name is omitted, the Default Name (listed below) is used.
    • +
    • Do not repeat the n or m values in the name. Display on websites follows the rule to show n x name.
    • +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    type=n=m=Default NameExampleExample shown as
    ODbgNumber of Debug AdaptersN/AIntegrated Debug Adapter<feature type="ODbg" n="1" name="Integrated ST-Link on USB Connector J13"/>1 x Integrated ST-Link on USB Connector J13
    XTALOscillator FrequencyN/ACrystal Oscillator<feature type="XTAL" n="8000000"/>8 MHz Crystal Oscillator
    PWRMinimum Input VoltageMaximum Input VoltagePower Supply<feature type="PWR" n="8" m="12"/>8 V - 12 V Power Supply
    PWRSockNumber of Power SocketsN/APower Socket<feature type="PWRSock" n="1" name="Coaxial Power Receptacle"/>1 x Coaxial Power Receptacle
    BattNumber of BatteriesN/ABattery<feature type="Batt" n="1" name="CR2032 Battery for RTC"/>1 x CR2032 Battery for RTC
    CurrTypical CurrentMaximum CurrentCurrent<feature type="Curr" n="0.320" m="0.375"/>320 mA (typ), 375 mA (max) Current
    CoreOtherNumber of FeaturesN/AOther Core Feature<feature type="CoreOther" n=1 name="My Other Core Feature"/>1 x My Other Core Feature
    RAMNumber of RAMsN/ARAM<feature type="RAM" n="1" name="512 kB Static RAM"/>1 x 512 kB Static RAM
    ROMNumber of ROMsN/AFlash<feature type="ROM" n="1" name="4 MB NAND-Flash"/>1 x 4 MB NAND-Flash
    MemoryNumber of Additional MemoryN/AMemory<feature type="Memory" n="128" name="EEPROM"/>128 byte EEPROM
    MemCardNumber of Card HoldersN/ASD/microSD/MMC Card Holder<feature type="MemCard" n="2" name="SD Card Holder"/>2 x SD Card Holder
    MemoryOtherNumber of Other MemoryN/AOther Memory Type<feature type="MemoryOther" n="1" name="1 kB MRAM"/>1 x 1 kB MRAM
    DIONumber of Digital I/OsN/ADigital I/Os<feature type="DIO" n="26" name="Digital IOs on 2 x 13 pin header (1.27 mm pitch)"/>26 x Digital IOs on 2 x 13 pin header (1.27 mm pitch)
    AIONumber of Analog I/OsN/AAnalog I/Os<feature type="AIO" n="4" name="Analog Inputs on 4 pin header (1.27 mm pitch)"/>4 x Analog Inputs on 4 pin header (1.27 mm pitch)
    Proton Rowsm ColumnsPrototyping Area<feature type="Proto" n="4" m="7" name="Prototyping Area with 1.00 mm pitch"/>4 x 7 Prototyping Area with 1.00 mm pitch
    USBNumber of USB ConnectorsN/AUSB<feature type="USB" n="2" name="Full-Speed USB Device, Micro-B receptacle"/>2 x Full-Speed USB Device, Micro-B receptacle
    ETHNumber of Ethernet ConnectorsData Rate in Bit/sEthernet<feature type="ETH" n="1" m="10000000" name="RJ45 Receptacle"/>1 x 10 Mbit/s RJ45 Receptacle
    SPINumber of SPI ConnectorsN/ASPI<feature type="SPI" n="1" name="4-Pin Header, 1.27 mm Pitch"/>1 x 4-Pin Header, 1.27 mm Pitch
    I2CNumber of I2C ConnectorsN/AI2C<feature type="I2C" n="1" name="2-Pin Header, 1.27 mm Pitch"/>1 x 2-Pin Header, 1.27 mm Pitch
    RS232Number of RS232 ConnectorsN/ARS232<feature type="RS232" n="1" name="DB9 Male Connector"/>1 x DB9 Male Connector
    RS422Number of RS422 ConnectorsN/ARS422<feature type="RS422" n="1" name="4-Pin Header, 1.27 mm Pitch"/>1 x 4-Pin Header, 1.27 mm Pitch
    RS485Number of RS485 ConnectorsN/ARS485<feature type="RS485" n="1" name="DB9 Male Connector"/>1 x DB9 Male Connector
    CANNumber of CAN ConnectorsN/ACAN<feature type="CAN" n="1" name="DB9 Male Connector"/>1 x DB9 Male Connector
    IrDANumber of IrDA DiodesN/ADiode<feature type="IrDA" n="1" name="Diode Transceiver"/>1 x Diode Transceiver
    LineInNumber of Line In JacksN/ALine In<feature type="LineIn" n="1" name="TRS Audio Jack"/>1 x TRS Audio Jack
    LineOutNumber of Line Out JacksN/ALine Out<feature type="LineOut" n="1" name="TRS Audio Jack"/>1 x TRS Audio Jack
    MICNumber of Microphone JacksN/AMicrophone<feature type="MIC" n="1" name="TS Audio Jack (Mono)"/>1 x TS Audio Jack (Mono)
    Edgen Rowsm ColumnsEdge<feature type="Edge" n="2" m="24"/>2 x 24 Pin Edge
    ConnOtherNumber of Other ConnectorsN/AOther Connector Type<feature type="ConnOther" n="1" name="My Other Connector"/>1 x My Other Connector
    ButtonNumber of Push-ButtonsN/APush-buttons<feature type="Button" n="3" name="Push-buttons: Reset, Wake Up, User"/>3 Push-buttons: Reset, Wake Up, User
    PotiNumber of PotentiometerN/APotentiometer<feature type="Poti" n="1"/>1 x Potentiometer
    JoystickNumber of JoysticksN/AJoystick<feature type="Joystick" n="1" name="5-position Joystick"/>1 x 5-position Joystick
    TouchNumber of Touch KeysN/ATouch Keys/Area<feature type="Touch" n="1"/>1 x Touch Keys/Area
    ContOtherNumber of Other ControlsN/AOther Control<feature type="ContOther" n=1 name="My Other Control Feature"/>1 x My Other Control Feature
    AccelerometerNumber of AccelerometerN/AAccelerometer<feature type="Accelerometer" n="1" name="3-axis digital Accelerometer"/>1 x 3-axis digital Accelerometer
    GyroNumber of GyroscopesN/AGyroscope<feature type="Gyro" n="1" name="3-axis digital Gyroscope"/>1 x 3-axis digital Gyroscope
    CompassNumber of CompassN/ADigital Compass<feature type="Compass" n="1" name="High-Precision Digital Compass"/>1 x High-Precision Digital Compass
    TempSensNumber of Temperature SensorsN/ATemperature Sensor<feature type="TempSens" n="1"/>1 x Temperature Sensor
    PressSensNumber of Pressure SensorsN/APressure Sensor<feature type="PressSens" n="1"/>1 x Pressure Sensor
    LightSensNumber of Light SensorsN/AAmbient Light Sensor<feature type="LightSens" n="1"/>1 x Ambient Light Sensor
    SensOtherNumber of Other SensorsN/AOther Sensor<feature type="SensOther" n=1 name="My Other Sensor Feature"/>1 x My Other Sensor Feature
    CustomFFx [mm]y [mm]Custom Formfactor<feature type="CustomFF" n="54" m="26" name="40-Pin DIP with 0.1-inch Pitch"/>54 mm x 26 mm, 40-Pin DIP with 0.1-inch Pitch
    ArduinoFF1N/AArduino Formfactor<feature type="ArduinoFF" n="1"/>Arduino Formfactor
    FreedomFF1N/AFreedom Formfactor<feature type="FreedomFF" n="1"/>Freedom Formfactor
    TowerFF1N/ATower Formfactor<feature type="TowerFF" n="1"/>Tower Formfactor
    LEDNumber of LEDsN/ALEDs<feature type="LED" n="3" name="Multicolor LEDs"/>3 x Multicolor LEDs
    CameraNumber of Camera InterfacesN/ACamera<feature type="Camera" n="1" name="Digital VGA Camera"/>1 x Digital VGA Camera
    LCDNumber of Segment LCD ControllerCom.Seg as a decimal number (see example)LCD<feature type="LCD" n="1" m="16.40" name="Segment LCD Controller"/>1 x 16 x 40 Segment LCD Controller
    GLCDNumber of Graphic LCD ControllerMaximum Resolution as a decimal number (see example)GLCD<feature type="GLCD" n="1" m="320.240" name="2.4 inch Color TFT LCD with resistive touchscreen"/>320 x 240 Pixel 2.4 inch Color TFT LCD with resistive touchscreen
    SpeakerNumber of SpeakersN/ASpeaker<feature type="Speaker" n="1"/>1 x Speaker
    OtherNumber of Other FeaturesN/AOther Feature<feature type="Other" n=1 name="My Other Feature"/>1 x My Other Feature
    +

     

    +
    +

    +/package/boards/board/mountedDevice

    +

    The element specifies the devices mounted on the board. At least one device must be specified.

    +

    Example

    +
    <mountedDevice deviceIndex="0" Dvendor="STMicroelectronics:13" Dname="STM32F429ZI"/>
    +

     

    + + + + + + + + + + + + + + + + + +
    Parent Chain
    board /package/boards/board
    Attributes Description Type Use
    deviceIndex Index number of the device (in case more than one device is present on the board). xs:string optional
    Dvendor Is the name of vendor of the device specified by Dname. Use predefined values as listed in the table Device Vendor. DeviceVendorEnum required
    Dfamily Is the name of the target device family used on the board. xs:string optional
    DsubFamily Is the name of the target device sub family used on the board. xs:string optional
    Dname Is the name of the target device used on the board. xs:string optional
    +

     

    +
    +

    +/package/boards/board/compatibleDevice

    +

    This element contains information about devices that are compatible to the device used on the board. Compatible means that the user is able to generate code for compatible devices and test it on the development board. At least one compatible device must be specified.

    +

    Example

    +
    <compatibleDevice deviceIndex="0" Dvendor="STMicroelectronics:13" Dfamily="STM32F4 Series" DsubFamily="STM32F429 Line"/>
    +

     

    + + + + + + + + + + + + + + + + + +
    Parent Chain
    board /package/boards/board
    Attributes Description Type Use
    deviceIndex Index number of the device (in case more than one device is present on the board). xs:string optional
    Dvendor Vendor name of the target device specified by Dname. Use predefined values as listed in the table Device Vendor. This element is required if at least one of the following attributs is defined: Dname, DsubFamily, Dfamily. DeviceVendorEnum optional
    Dfamily Name of the target device family used on the board. Requires Dvendor to be specified. xs:string optional
    DsubFamily Name of the target device sub-family used on the board. Requires Dvendor to be specified. xs:string optional
    Dname Name of the target device used on the board. Requires Dvendor to be specified. xs:string optional
    +

     

    +
    +

    +/package/boards/board/image

    +

    This element specifies the picture of a development board. Maximum one image element can be specified. None must be specified. Two different picture types (small and large) can be specified for the same image element at the same time.

    +

    Example:

    +
    <image small="Images\board_image_small.png" large="Images\board_image.png"/>
    +

     

    + + + + + + + + + + + +
    Parent Chain
    board /package/boards/board
    Attributes Description Type Use
    small Specifies the path to a small image. The path is relative to the PACK base directory. xs:string optional
    large Specifies the path to a large image. The path is relative to the PACK base directory. xs:string optional
    +

     

    +
    +

    +/package/boards/board/debugInterface

    +

    This element describes the debug interface of a board. At least debug interface must be specified.

    +

    Example

    +
    <debugInterface adapter="JTAG/SW" connector="20-pin ARM Standard JTAG Connector (0.1 inch connector)"/>
    +
    <debugInterface adapter="JTAG/SW" connector="10-pin Cortex Debug Connector (0.05 inch connector)"/>
    +
    <debugInterface adapter="JTAG/SW" connector="20-pin Cortex Debug + ETM Connector (0.05 inch connector)"/>
    +
    <debugInterface adapter="ST-Link" connector="Mini-USB"/>
    +

     

    + + + + + + + + + + + +
    Parent Chain
    board /package/boards/board
    Attributes Description Type Use
    adapter String describing the debug adapter. Common adapters are: JTAG/SW (for all adapters supporting JTAG and Serial-Wire Debug), CMSIS-DAP, OpenSDA, J-Link, ST-Link, Nu-Link. xs:string optional
    connector String describing the debug connector. Usually one of these: 10-pin Cortex Debug Connector, 20-pin ARM Standard JTAG Connector, 20-pin Cortex Debug + ETM Connector, Mini-USB, Micro-USB. xs:string optional
    +

     

    +
    +

    +/package/boards/board/book

    +

    The element provides information about documentation parts related to a development board. At least one book must be defined.

    +

    Example

    +
    <book category="setup" name="Documents/UM1662.pdf" title="Getting Started"/>
    +

     

    + + + + + + + + + + + + + +
    Parent Chain
    board /package/boards/board
    Attributes Description Type Use
    category Describes the type of documentation. Use predefined values as defined in the table Board Book Categories. BoardBookCategoryEnum optional
    name Is the name of the document (including the path within the Pack). xs:string optional
    title Is the title of the document to be displayed in the Books window of uVision. xs:string optional
    +

     

    +

    Table: Board Book Categories

    +

    The table lists values to identify a specific type of documentation for development boards.

    + + + + + + + + + + + + + + + +
    category= Description
    setup Documentation about how to setup the development board.
    schematic Schematics of the development board.
    overview Overview/data sheet of the development board.
    manual User manual of the development board
    layout PCB layout file of the board (e.g. in Gerber format)
    other All other documentation.
    +

     

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_components_pg.html b/CMSIS/Documentation/Pack/html/pdsc_components_pg.html new file mode 100644 index 0000000..abd91a1 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_components_pg.html @@ -0,0 +1,523 @@ + + + + + +/package/components element +CMSIS-Pack: /package/components element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/components element
    +
    +
    +

    The element /package/components describes software components contained in the PACK. A component lists the files that belong to a component and that are relevant for a project. The component itself or each individual file may refer to a condition that must resolve to true; if it is false the component or file is not applicable in the given context.

    +

    Each component must have a Class (Cclass=), a Group (Cgroup=), and a Version (Cversion=) which is used to identify the component. Optionally a component may have a Sub-Group (Csub=) and Variant (Cvariant=) to add further categories. The Class, Group, Sub-Group, Variant and Version is used together with the vendor specified by the PACK, to identify a component. A component vendor must ensure that the combination Class, Group, Sub-Group and Version is unique and not used by multiple components.

    +

    Example

    +
    <package>
    +
    ...
    +
    <components>
    +
    <!-- component has dependency described by "CMSIS Core" condition -->
    +
    <component Cclass="CMSIS" Cgroup="CORE" Cversion="3.1.0" condition="CMSIS Core">
    +
    <description>CMSIS-CORE for Cortex-M, SC000, and SC300 processor.</description>
    +
    <files>
    +
    <!-- CPU independent -->
    +
    <file category="doc" name="CMSIS/Documentation/Core/html/index.html"/>
    +
    <file category="header" name="CMSIS/Include/core_cmFunc.h"/>
    +
    <file category="header" name="CMSIS/Include/core_cmInstr.h"/>
    +
    <!-- CPU dependent -->
    +
    <file category="header" condition="CM0" name="CMSIS/Include/core_cm0.h"/>
    +
    <file category="header" condition="CM0+" name="CMSIS/Include/core_cm0plus.h"/>
    +
    <file category="header" condition="CM3" name="CMSIS/Include/core_cm3.h"/>
    +
    <file category="header" condition="CM4" name="CMSIS/Include/core_cm4.h"/>
    +
    <file category="header" condition="CM4" name="CMSIS/Include/core_cm4_simd.h"/>
    +
    <file category="header" condition="SC000" name="CMSIS/Include/core_sc000.h"/>
    +
    <file category="header" condition="SC300" name="CMSIS/Include/core_sc300.h"/>
    +
    </files>
    +
    </component>
    +
    +
    <component Cclass="CMSIS" Cgroup="DSP" Cversion="1.1.0" condition="CMSIS DSP">
    +
    <description>CMSIS-DSP Library for Cortex-M0, Cortex-M3 and Cortex-M4 as well as SC000 and SC300 processor based devices</description>
    +
    +
    <files>
    +
    <!-- CPU independent -->
    +
    <file category="doc" name="CMSIS/Documentation/DSP/html/index.html"/>
    +
    <file category="header" name="CMSIS/Include/arm_math.h"/>
    +
    <!-- CPU and Compiler dependent -->
    +
    <!-- ARMCC -->
    +
    <file category="library" condition="CM0_LE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM0l_math.lib"/>
    +
    <file category="library" condition="CM0_BE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM0b_math.lib"/>
    +
    <file category="library" condition="CM3_LE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM3l_math.lib"/>
    +
    <file category="library" condition="CM3_BE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM3b_math.lib"/>
    +
    <file category="library" condition="CM4_LE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM4l_math.lib"/>
    +
    <file category="library" condition="CM4_BE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM4b_math.lib"/>
    +
    <file category="library" condition="CM4F_LE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM4lf_math.lib"/>
    +
    <file category="library" condition="CM4F_BE_ARMCC" name="CMSIS/Lib/ARM/arm_cortexM4bf_math.lib"/>
    +
    <!-- GCC -->
    +
    <file category="library" condition="CM0_LE_GCC" name="CMSIS/Lib/GCC/libarm_cortexM0l_math.a"/>
    +
    <file category="library" condition="CM3_LE_GCC" name="CMSIS/Lib/GCC/libarm_cortexM3l_math.a"/>
    +
    <file category="library" condition="CM4_LE_GCC" name="CMSIS/Lib/GCC/libarm_cortexM4l_math.a"/>
    +
    <file category="library" condition="CM4F_LE_GCC" name="CMSIS/Lib/GCC/libarm_cortexM4lf_math.a"/>
    +
    <!-- G++ -->
    +
    <file category="library" condition="CM0_LE_G++" name="CMSIS/Lib/G++/libarm_cortexM0l_math.a"/>
    +
    <file category="library" condition="CM3_LE_G++" name="CMSIS/Lib/G++/libarm_cortexM3l_math.a"/>
    +
    <file category="library" condition="CM4_LE_G++" name="CMSIS/Lib/G++/libarm_cortexM4l_math.a"/>
    +
    <file category="library" condition="CM4F_LE_G++" name="CMSIS/Lib/G++/libarm_cortexM4lf_math.a"/>
    +
    </files>
    +
    </component>
    +
    +
    <component condition="ARM_CM0" Cclass="Device" Cgroup="Startup" Cversion="3.1.1">
    +
    <description>System Startup for generic ARM Cortex-M0 device</description>
    +
    <files>
    +
    <file category="header" name="Device/ARM/ARMCM0/Include/ARMCM0.h"/>
    +
    <file category="header" name="Device/ARM/ARMCM0/Include/system_ARMCM0.h"/>
    +
    <file category="source" condition="Compiler_ARM" name="Device/ARM/ARMCM0/Source/ARM/startup_ARMCM0.s"/>
    +
    <file category="source" condition="Compiler_GCC" name="Device/ARM/ARMCM0/Source/GCC/startup_ARMCM0.S"/>
    +
    <file category="source" condition="Compiler_G++" name="Device/ARM/ARMCM0/Source/G++/startup_ARMCM0.S"/>
    +
    <file category="source" condition="Compiler_IAR" name="Device/ARM/ARMCM0/Source/IAR/startup_ARMCM0.s"/>
    +
    <file category="source" name="Device/ARM/ARMCM0/Source/system_ARMCM0.c" attr="template"/>
    +
    </files>
    +
    </component>
    +
    </components>
    +
    ...
    +
    </package>
    +

     

    +

    +Component Bundle

    +

    In case multiple inter-dependent components that belong to the same Cclass form part of a solution, these can be grouped into a bundle. A bundle specifies identical attributes Cclass, Cversion and optionally Cgroup and Cvendor for several components. Components within a bundle inherit these attributes set by the bundle and cannot alter these attributes. Bundles ensure consistency of attributes across multiple interworking components and restrict the mix and match of components within a Cclass from different Software Packs.

    +

    An example of a bundle is shown in the Create a BSP Bundle section where the bundle is used to deliver board support files for a certain development platform.

    +

    +Component Files

    +

    The files of a Software Component will be used in development tool-chains to build an application. Depending on the attributes, the files are handled differently:

    +
      +
    • Libraries, source, and header files without an attribute cannot be modified. These files are stored in the folders of the Software Component and get directly included from this location into the project.
    • +
    • Source and header files that have the attribute "config" are copied to the project so that they can be edited by the user and tailored to the needs of the application. If a Software Component allows multiple instances of files, they can be copied multiple times to a project and will get a suffix _%Instance% (see Component Instances). Please note that header files that are used with the attribute "config" need to be stored separately from other header files (for example in an extra directory). This is to ensure that development tools are able to pick them up correctly.
    • +
    • Source and header files that have the attribute "template" are part of User Code Templates and can be added to a project manually by the user.
    • +
    +

    The following image shows the dependency between the attribute and the display in a development environment:

    +
    +component_files.png +
    +Display of files of a Software Component in development tools
    +

    +Component Instances

    +

    Modern microcontrollers often have multiple instances of the same peripheral interface (for example UART, SPI, USB, etc.). To be able to have separate configuration files for each of these instances, Software Components can have multiple instances as well. The attribute maxInstances declares the maximum number of instances that can be used in a project for a certain Software Component.

    +

    If the user selects for example two instances of the same component, all files with the attribute "config" will be copied twice to the project. The name of the component (for example config_mylib.h) will be expanded with an _%Instance% number:

    +
      +
    1. Instance: config_mylib_0.h
    2. +
    3. Instance: config_mylib_1.h
    4. +
    +

    The availability of instances in a project can be made public in the RTE_Components.h file. This can be used to check for the availability of a certain instance in the user application code:

    +
    <RTE_Components_h>
    +
    <!-- the following content goes into file 'RTE_Components.h' -->
    +
    #define RTE_FileSystem_Drive_NOR_%Instance% /* File System NOR Flash Drive %Instance% */
    +
    </RTE_Components_h>
    +


    +

    +
    +Component_Instances.png +
    +Component instances in PDSC file and in development tools
    +

    +RTE_Components.h

    +

    The build environment should generate a C/C++ include file with the name RTE_Components.h that contains optional statements when a software component is selected. These statements are specified with the element RTE_Components_h in the grouping element component.

    +

    Example

    +

    The following example shows a sample content of a file RTE_Components.h. It contains the statements that are specified with the element RTE_Components_h of four software components.

    +
    /*
    +
    Auto generated Run-Time-Environment Component Configuration File
    +
    *** Do not modify ! ***
    +
    */
    +
    +
    #ifndef RTE_COMPONENTS_H
    +
    #define RTE_COMPONENTS_H
    +
    +
    #define RTE_Network_Interface_ETH_0 /* Network Interface ETH 0 */
    +
    #define RTE_Network_Socket_BSD /* Network Socket BSD */
    +
    #define RTE_Network_Socket_TCP /* Network Socket TCP */
    +
    #define RTE_Network_Socket_UDP /* Network Socket UDP */
    +
    +
    #endif /* RTE_COMPONENTS_H */
    +

    The typical usage of the RTE_Components.h file is in header files to control for example the inclusion of files that are related to other components for the same Software Pack.

    +
    #include "RTE_Components.h"
    +
    +
    #ifdef RTE_Network_Interface_ETH_0 // generated when software component Network Interface ETH 0 is included
    +
    #include "Net_Config_ETH_0.h" // add the related configuration file for these component
    +
    #endif
    +

     

    +
    +

    +/package/components

    +

    Grouping element containing a choice of at least one bundle or component. No more than one element components can exist in a PACK.

    + + + + + + + + + + + + + + + +
    Parent Element Chain
    package /package
    Attributes Description Type Use
    generator Specifies the generator ID of the generator that has been used to generate all components within this section. xs:string optional
    Child Elements Description Type Occurrence
    bundle Grouping element for a collection of inter-operable components belonging to the same Cclass ComponentType 1..*
    component Grouping element for components ComponentType 1..*
    +

     

    +
    +

    +/package/components/bundle

    +

    A bundle describes a named collection of inter-operable components of the identical Cvendor, Cclass and Cversion. Components enclosed in a bundle must not specify any of the following attributes Cvendor, Cclass and Cversion.

    + + + + + + + + + + + + + + + + + + + + + + + +
    Parent Element Chain
    components /package/components
    Attributes Description Type Use
    Cbundle Defines the name of the bundle. It becomes a mandatory part of the component ID. xs:string required
    Cvendor Defines the component vendor all components of this bundle belong to. If not explicitly set the component vendor is derived from the package vendor. The component vendor is a mandatory part of the component ID. xs:string optional
    Cclass Defines the component class to which all components in the bundle belong. Is a mandatory part of the component ID. Predefined values can be used as listed in the table Component Classes. CclassType required
    Cversion Defines the version of all components contained in the bundle. The component version is a mandatory part of the component ID. The version format is described in Version Type. VersionType required
    Child Elements Description Type Occurrence
    description Brief description of the bundle xs:string 1..1
    doc Documentation for the bundle: File path, file name, and file extension in the format path/name.extension. The file path is relative to the root directory of the PACK. xs:string

    1..1

    +

    +
    component Grouping element for components. ComponentType 1..*
    +

     

    +
    +

    +/package/components/.../component

    +

    A component describes a collection of files (source, header, configuration, library) that can be versioned and categorized.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parent Element Chain
    components /package/components
    components /package/components/bundle
    Attributes Description Type Use
    Cvendor Defines the component vendor this component is shipped by. It is a mandatory part of the component ID and will be inherited from the package vendor if not specified.
    + Must not be specified for a component within a bundle.
    xs:string optional
    Cclass Defines the component class to which the component belongs. This is a mandatory part of the component ID. Predefined values can be used as listed in the table Component Classes.
    + Must not be specified for a component within a bundle.
    CclassType required
    Cgroup Defines the component group to whoch the component belongs. Is a mandatory part of the component ID. Predefined values can be used as listed in the table Component Groups. CgroupType required
    Csub Defines the component subgroup. Is an optional part of the component ID. The type is described in Component Subgroups. CsubType optional
    Cvariant Defines a variant of a component. Is an optional part of the component ID. The variant specifier is a brief string (for example: release, debug). xs:string [3..32] optional
    Cversion Defines the version of this component. Is a mandatory part of the component ID. The version format is described in Version Type.
    + Must not be specified for a component within a bundle.
    VersionType required
    Capiversion For components that are based on an API, it defines the version of the API used by this component. It ensures that the API header file with this or any higher version is acceptable for using that component. The version format is described in Version Type. VersionType optional
    condition Enter the id of a condition. The component is available and can be selected when the condition is true. xs:string optional
    maxInstances Maximum allowed instances of a component in a project. Default is 1 for one instance. The range is [1..10]. xs:integer optional
    isDefaultVariant Identifies this component variant to be the preferred variant for tool driven selection [Version 1.4.0] xs:boolean optional
    generator This links the component with a generator description located in the same file. If this component is selected by the run time configuration, the tool will test whether the configured gpdsc file does already exist or not. If the file is not present, then the command specified by the referenced generator section, will be invoked. If the gpdsc file already exists it will be included into the project xs:string optional
    Child Elements Description Type Occurrence
    deprecated When set to true, then the component is deprecated and no longer maintained. Default is false to indicate an actively maintained component. xs:boolean 0..1
    description Brief description of the component. xs:string 1..1
    RTE_Components_h Source code that is copied into the file RTE_Components.h when the component is included into a software project. xs:string 0..1
    files Grouping element for all files that are part of this component. group 1
    +

     

    +

    Component Subgroups

    +

    Component Subgroups are specified by the element Csub, and create subcategories within Component Classes (Cclass) and Component Groups (Cgroup). A Csub name is of type xs:string with a length between 3 and 32 characters. No Csub names have been predefined.

    +

    Subgroups exists in the elements:

    + +

    Example:

    +
    <... Csub="MyRTOS" Cgroup="RTOS" Cclass="CMSIS"...>
    +

     

    +
    +

    +/package/.../files

    +

    The group files can appear in various PACK elements. This group is the frame for defining individual file properties.

    +

    Example:

    +
    <package>
    +
    ...
    +
    <apis>
    +
    <api Cclass="Device" Cgroup="Driver UART" exclusive="0">
    +
    <files>
    +
    ...
    +
    </files>
    +
    </api>
    +
    </apis>
    +
    ...
    +
    <components>
    +
    <component Cclass="Device" Cgroup="Startup" Cversion="3.1.1" >
    +
    <files>
    +
    ...
    +
    </files>
    +
    </component>
    +
    </components>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + + + + + +
    Parents Element Chain
    api /package/apis/api
    component /package/components/component
    component /package/components/bundle/component
    Child Elements Description Type Occurrence
    file Frame for the individual file of a component. group 1..*
    +

     

    +
    +

    +/package/.../files/file

    +

    The element file is the mechanism to attach files to the software. The file purpose is defined through the category attribute. The name attribute identifies the file.

    +

    Example:

    +
    <package>
    +
    ...
    +
    <apis>
    +
    <api Cclass="Device" Cgroup="Driver UART" exclusive="0">
    +
    <files>
    +
    <file category="doc" name="Driver/Doc/UART/html/index.html"/>
    +
    <file category="header" name="Driver/Include/Driver_UART.h"/>
    +
    </files>
    +
    </api>
    +
    </apis>
    +
    ...
    +
    <components>
    +
    <component Cclass="Device" Cgroup="Startup" Cversion="3.1.1" >
    +
    <files>
    +
    <file category="header" name="Device/Include/system_stm32f2xx.h"/>
    +
    <file category="source" name="Device/Source/ARM/startup_stm32f2xx.s" attr="template"/>
    +
    <file category="source" name="Device/Source/system_stm32f2xx.c" attr="template"/>
    +
    </files>
    +
    </component>
    +
    </components>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    files /package/apis/api/files
    files /package/components/component/files
    files /package/components/bundle/component/files
    files /package/generators/generator/project_files
    Attributes Description Type Use
    name File path, file name, and file extension in the format path/name.extension. The file path is relative to the root directory of the PACK. xs:string required
    category Defines the purpose of the file. Select the predefined value as listed in the table File Categories. FileCategoryEnum required
    attr Defines the special use and handling of a file. Select a predefined value as defined in the table File Attributes. FileAttributeEnum optional
    condition Enter the identifier (attribute id) of a condition. The element is used if the condition resolves to true. If the condition resolves to false, then the element will be ignored. For example, a library might be specific for a certain toolchain or processor instruction set. xs:string optional
    select Brief description and purpose of the file. The select attribute is required when attr is set to template or interface. When multiple template files of a component have the same select string, they are treated as a single selectable template. This way, multiple template or interface files can be bundled. xs:string optional
    src Path information. The path is specified relative to the PACK Description File. If category is set to library, then the src string can contain a list of directory paths separated by semicolons. A debugger will search those paths for locating the source files of the modules archived in the library supporting the debugging of library code. xs:string optional
    version File-specific version information. This is used particularly for files copied into the project workspace. Before a file gets copied, a version check avoids unnecessary copy actions. If a file does not have a version, then the component version is used. The version format is described in Version Type. VersionType optional
    +

     

    +

    Table: File Attributes

    +

    The file attribute defines the special handling in the project when being used as configuration, template, or interface file. The table lists the values available as a file attribute.

    + + + + + + + +
    attr= Description
    config The file is a configuration file of the component. It is expected that only configuration options are modified. The file is managed as part of the component, as a project-specific file typically copied into the component section of the project.
    template

    The file is used as a source code template file. It is expected to be edited and extended by the software developer. The file can be copied into a user section of the project.

    +

    +
    +
    Note
    If you are using a header file with the attribute config, save it in a separate directory from all other header files, for example:
    <file category="header"  name="src/config/user_config.h" attr="config" version="1.0.0" />
    +
    As development tools usually add header files using an include path, saving the file with other header files will prohibit its use as a configuration file.
    +

     

    +

    Table: File Categories

    +

    File category types define the use of component files within the application. Typically these files are added to the project and processed by the build tools.

    +

    The table lists the predefined values for a file category. These values can be use also in the element /package/generators/generator/files/file.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    category= Description
    doc Documentation
    header Header file used in the component. Sets an include file path.
    include Sets an include file path.
    library Library file
    object Object file that can be added to the application
    source Startup-, system-, and other C/C++, assembler, etc. source files
    sourceC C source file
    sourceCpp C++ source file
    sourceAsm Assembly source file
    linkerScript linker script file that can be selected by tool-chains
    utility a command line tool that can be configured for pre- or post-processing during the build process
    image Files of image type are marked for special processing into a File System Image embedded into the application. This category requires the attr being set to template.
    other Other file types not covered in the list above
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_conditions_pg.html b/CMSIS/Documentation/Pack/html/pdsc_conditions_pg.html new file mode 100644 index 0000000..9c2692e --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_conditions_pg.html @@ -0,0 +1,316 @@ + + + + + +/package/conditions element +CMSIS-Pack: /package/conditions element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/conditions element
    +
    +
    +

    The grouping element /package/conditions contains all conditions defined for the Software Pack.

    +

    A condition describes dependencies on device, processor, and tool attributes as well as the presence of other components. The conditions are used to define AND and OR rules used to make components conditional and therefore only available under certain circumstances, e.g. for specific devices or processors. The conditions are also used to express dependencies between components.

    +

    Each condition has an id that is unique within the scope of a the description. An id can be referenced in the condition attribute of components, apis, examples, files and other conditions to become conditional. If a condition resolves to false during the processing of the description, the respective element will be ignored.

    +

    Example:

    +
    <conditions>
    +
    <condition id="CM4"> <!-- defines the condition with the ID "CM4" -->
    +
    <description>True if the active device has a Cortex-M4 processor</description>
    +
    <require Dcore="Cortex-M4"/> <!-- device has a Cortex-M4 processor -->
    +
    </condition>
    +
    +
    <condition id="Cortex-M"> <!-- defines the condition with the ID "Cortex-M" -->
    +
    <description>True if the active device has a Cortex-M0 or Cortex-M0+ or Cortex-M3 or Cortex-M4 or SC000 or SC3000 processor </description>
    +
    <accept Dcore="Cortex-M0"/> <!-- any of the following cores will make the condition resolve to true -->
    +
    <accept Dcore="Cortex-M0+"/>
    +
    <accept Dcore="Cortex-M3"/>
    +
    <accept Dcore="Cortex-M4"/>
    +
    <accept Dcore="SC000"/>
    +
    <accept Dcore="SC300"/>
    +
    </condition>
    +
    +
    <condition id="CMSIS-CORE"> <!-- defines the condition with the ID "CMSIS-CORE" -->
    +
    <description>True if the component Device Startup is selected and the device has a Cortex-M processor</description>
    +
    <require Cclass="Device" Cgroup="Startup"/> <!-- needs a software component Device Startup AND ... -->
    +
    <require condition="Cortex-M"/> <!-- ... needs that condition with ID=Cortex-M to be true. -->
    +
    </condition>
    +
    +
    <condition id="CMSIS-DSP"> <!-- defines the condition with the ID "CMSIS-DSP" -->
    +
    <description>True if CMSIS-CORE == TRUE and either GCC or ARMCC and device running in little-endian byte ordering</description>
    +
    <require condition="CMSIS-CORE"/> <!-- needs a software component Device Startup AND ... -->
    +
    <accept Tcompiler="GCC"/> <!-- ... works either with the GCC compiler OR ... -->
    +
    <accept Tcompiler="ARMCC"/> <!-- ... the ARMCC compiler AND ... -->
    +
    <require Dendian="Little-endian"/> <!-- ... requires a device running in little-endian byte ordering -->
    +
    </condition>
    +
    +
    <condition id="No STM32"> <!-- defines the condition with ID "No STM32" -->
    +
    <description>False if the device is from ST and the device name starts with "STM32"</description>
    +
    <deny Dvendor="STMicroelectronics:13" Dname="STM32*"/> <!-- device name must not start with STM32 and be from vendor ST-->
    +
    </condition>
    +
    </conditions>
    +

     

    +
    +

    +/package/conditions

    +

    This element groups all conditions used in the Software Pack.

    + + + + + + + + + +
    Parent Chain
    package /package
    Child Elements Description Type Occurrence
    condition Define the individual dependency condition. xs:string 1..*
    +

     

    +
    +

    +/package/conditions/condition

    +

    Conditions are dependency rules that can apply to elements such as a component or file. Other elements can refer to a rule using their attribute condition, which links to the attribute id of a condition. If a condition resolves to false, then the component or file description is ignored.

    + + + + + + + + + + + + + + + + + + + +
    Parent Chain
    conditions /package/conditions
    Attributes Description Type Use
    id Condition identifier which is unique within a Software Pack. The condition identifier is referenced by other elements with the attribute condition. xs:string required
    Child Elements Description Type Occurrence
    description Descriptive (comment) text that explains the condition in an human readable way. xs:string 0..1
    accept1 At least one accept must be true to signal a true for the complete condition (OR-Rule) FilterType 0..*
    require1 All require must be true to signal a true for the complete condition (AND-Rule). FilterType 0..*
    deny1 If one deny is true the complete condition becomes false. This element overrules require and accept (AND-NOT-Rule). FilterType 0..*
    +
    Note
    1: At least one of these elements must be present in any condition.
    +

     

    +
    +

    +/package/conditions/condition/accept

    +

    +/package/conditions/condition/require

    +

    +/package/conditions/condition/deny

    +

    All attributes set in an accept, require, or deny must resolve to true for the element to become true. A condition becomes true when:

    +
      +
    • At least one accept element is true, AND
    • +
    • all require elements are true, AND
    • +
    • no deny element is true.
    • +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parent Chain
    accept /package/conditions/condition/accept
    require /package/conditions/condition/require
    deny /package/conditions/condition/deny
    Attributes Description Type Use
    Dfamily* Specifies the device family name (for example: STM32F2 Series). xs:string optional
    DsubFamily* Specifies the device sub-family name (for example: STM32F205 Series). xs:string optional
    Dvariant* Specifies the variant name of a device (for example: Step A). xs:string optional
    Dvendor Specifies the silicon vendor of the device. Use predefined values as listed in the table Device Vendor. DeviceVendorEnum optional
    Dname* Specifies the name of the device. xs:string optional
    Pname Specifies the processor instance in case of multi processor devices. This allows to describe distinct conditions for a specific processor. xs:string optional
    Dcore Specifies a processor core. Use predefined values as listed in the table Device Cores. DcoreEnum optional
    Dfpu Specifies whether a Floating Point Unit (FPU) must be present or not. Predefined values can be uses as listed in the table Device FPU. DfpuEnum optional
    Dmpu Specifies whether a Memory Protection Unit (MPU) must be present or not. Predefined values can be uses as listed in the table Device MPU. DmpuEnum optional
    Dendian Specifies the endianess of a device. Use predefined values as listed in the table Endianess. DendianEnum optional
    Cvendor* Specifies a component vendor name. xs:string optional
    Cbundle* Specifies a component class bundle name. xs:string optional
    Cclass* Specifies a component class name. Predefined values can be used as listed in the table Component Classes. CclassType optional
    Cgroup* Specifies a software Component Group. Predefined values can be used as listed in the table Component Groups. CgroupType optional
    Csub* Specifies a software component subgroup. The type is described in Component Subgroups. CsubType optional
    Cvariant* Specifies a software component variant. xs:string optional
    Cversion Specifies a software component version.
      +
    • require Cversion:condition is true if version of component is equal or higher than requested.
    • +
    • deny Cversion: condition is true if version of component is lower than requested.
    • +
    • Version ranges are specified with min_version:max_version. The condition is true if the version of the component is equal or higher than min_version and lower or equal than max_version. If min_version and max_version are equal the version must match. For more information refer to Version Type.
    • +
    +
    VersionType optional
    Capiversion Specifies an API version.
      +
    • require Capiversion:condition is true if version of API is equal or higher than requested.
    • +
    • deny Capiversion: condition is true if version of API is lower than requested.
    • +
    • Version ranges are specified with min_version:max_version. The condition is true if the version of the API is equal or higher than min_version and lower or equal than max_version. If min_version and max_version are equal the version must match. For more information refer to Version Type.
    • +
    +
    VersionType optional
    Tcompiler Specifies a compiler toolchain (ARMCC, GCC, IAR, Tasking, ...). Use predefined values as listed in table Compiler Types. CompilerEnumType optional
    condition Refers to another condition identified through the attribute id. xs:string optional
    +

    *) Wild-cards can be used to match names with the following defintions:

    +
      +
    • '*' matches any substring
    • +
    • '?' matches any single character
    • +
    • [abc] matches any character in the set (a,b,c)
    • +
    +

     

    +

    Table: Compiler Types

    +

    The tale list values representing a C/C++ compiler toolchains from a specific tool vendor. The tokens can be used in the elements:

    + + + + + + + + + + + + + + + + +
    Tcompiler= Description
    GCC GNU Tools for ARM Embedded Processors. Refer to ARM GCC.
    G++ Code Sourcery GCC compiler for C and C++ (is now Mentor Graphics CodeBench).
    ARMCC ARM compiler for C and C++. Refer to ARM Compiler from ARM.
    IAR IAR compiler for C and C++.
    Tasking TASKING compiler for C and C++.
    GHS Green Hills Software compiler for C, C++, and EC++.
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_devices_pg.html b/CMSIS/Documentation/Pack/html/pdsc_devices_pg.html new file mode 100644 index 0000000..935eb92 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_devices_pg.html @@ -0,0 +1,251 @@ + + + + + +/package/devices element +CMSIS-Pack: /package/devices element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/devices element
    +
    +
    +

    The level <devices> contains all devices for which support is provided by the Software Pack.

    +

    Devices can be organized in hierarchy groups to limit redundancy. The hierarchy levels are:

    +
      +
    • family: the attributes of a device family which includes also the processor.
    • +
    • subFamily: attributes of an optional sub-family; this adds or modifies features of a family.
    • +
    +

    Device characteristics can be defined in:

    +
      +
    • device: attributes of a specific silicon device
    • +
    • variant: attributes of a device variant (for example, with different package or temperature range) or an OEM device or board that integrates the device.
    • +
    +

    A device is described by the following properties:

    +
      +
    • description: textual device description
    • +
    • feature: categorized list of device peripherals and features
    • +
    • book: documentation about the device and its processor(s)
    • +
    • processor: processor and processor features embedded in the device
    • +
    • compile: device specific general settings for the build tools
    • +
    • debugconfig: default settings for a debug connection
    • +
    • debugvars: global debug access variables for use in sequences.
    • +
    • sequences: debug access sequences.
    • +
    • debugport: debug port description of the device for the debugger to configure a debug connection.
    • +
    • debug: device specific information for the debugger to configure a debug connection including System View Description files.
    • +
    • trace: device specific information for the debugger to configure trace.
    • +
    • memory: memory layout of the device for internal and external RAM and ROM regions
    • +
    • algorithm: device specific Flash programming algorithms
    • +
    +

    A device will inherit the specifications from both the family and sub-family levels. Some properties are required to be unique. For example, the name of the svd file attribute of the <debug> property. Therefore, the svd file specified on the family level can be redefined by the attribute on the sub-family or device level. Information like the description and feature entries are concatenated, starting with the information from the family and sub-family level and finalizing with the information on the device level.

    +

    Example

    +
    <package>
    +
    ...
    +
    <devices>
    +
    <!-- family level -->
    +
    <family Dfamily="STM32F2" Dvendor="STMicroelectronics:13">
    +
    <processor Dcore="Cortex-M3" DcoreVersion="r2p1"
    +
    Dfpu="0" Dmpu="1" Dendian="Little-endian" Dclock="120000000"/>
    +
    +
    <compile header="Device/Include/stm32f2xx.h" define="STM32F2XX"/>
    +
    <debug svd="SVD/STM32F20x.svd"/>
    +
    <algorithm name="Flash/STM32F2xx_OPT.flm" start="0x1FFFC000" size="0x00000010" style="Keil"/>
    +
    <book name="doc/STM32F2.PDF" title="STM32F2 Reference Manual"/>
    +
    +
    <description>
    +
    ARM 32-bit Cortex-M3 CPU based Microcontroller
    +
    - 120 MHz maximum frequency producing 150 DMIPS/1.25 DMIPS/MHz
    +
    - Memory Protection Unit
    +
    - Flexible static memory controller (supports Compact Flash, SRAM, PSRAM, NOR, NAND memories)
    +
    - LCD parallel interface, 8080/6800 modes
    +
    - Clock, reset and supply management
    +
    </description>
    +
    +
    <feature type="Timer" n="10" m="32" name="General Purpose Timer with 60 MHz"/>
    +
    <feature type="Timer" n="2" m="16" name="Advanced Control Timer with 120 MHz"/>
    +
    <feature type="Timer" n="2" m="16" name="Basic Timer with 60 MHz"/>
    +
    <feature type="TimerOther" n="1" name="Independent Watchdog Timer"/>
    +
    <feature type="TimerOther" n="1" name="Window Watchdog Timer"/>
    +
    <feature type="DAC" n="2" m="12"/>
    +
    <feature type="SPI" n="3" name="SPI Interface (two of them can be used as I2S)"/>
    +
    <feature type="I2C" n="3"/>
    +
    <feature type="USART" n="4" name="USART Interface up to 7.5 Mbit/s"/>
    +
    <feature type="UART" n="2" name="UART Interface up to 3.75 Mbit/s"/>
    +
    <feature type="USBOTG" n="1" name="USB OTG (Full-Speed) with PHY and ULPI"/>
    +
    <feature type="USBOTG" n="1" name="USB OTG (High-Speed) with PHY and ULPI"/>
    +
    <feature type="CAN" n="2" name="CAN Interface (2.0b Active)"/>
    +
    <feature type="SDIO" n="1" m="8" name="Supporting SD/MicroSD/MMC"/>
    +
    <feature type="VCC" n="1.8" m="3.6"/>
    +
    +
    <!-- sub family level -->
    +
    <subFamily DsubFamily="128 Flash">
    +
    <memory name="SRAM" access="rwx" start="0x20000000" size="0x10000" default="1"/>
    +
    <memory name="Flash" access="rx" start="0x08000000" size="0x20000" startup="1" default="1"/>
    +
    +
    <!-- device level -->
    +
    <device Dname="STM32F205RB">
    +
    <feature type="IOs" n="51" name="Input and Output Ports"/>
    +
    <variant Dvariant="STM32F205RBT6">
    +
    <feature type="QFP" count="64" name="LQFP 64 10x10x1.4" />
    +
    <feature type="Temp" n="-40" m="85" name="Industrial Temperature Range"/>
    +
    </variant>
    +
    <variant Dvariant="STM32F205RBT7">
    +
    <feature type="QFP" count="64" name="LQFP 64 10x10x1.4" />
    +
    <feature type="Temp" n="-40" m="105" name="Extended Temperature Range"/>
    +
    </variant>
    +
    </device>
    +
    +
    <device Dname="STM32F205VB">
    +
    <feature type="IOs" n="82" name="Input and Output Ports"/>
    +
    <variant Dvariant="STM32F205VBT6">
    +
    <feature type="QFP" count="100" name="LQFP 100 14x14x1.4" />
    +
    <feature type="Temp" n="-40" m="85" name="Industrial Temperature Range"/>
    +
    </variant>
    +
    </device>
    +
    </subFamily>
    +
    +
    </family>
    +
    </devices>
    +
    </package>
    +

     

    +
    +

    +/package/devices

    +

    Group level containing device family descriptions. A package can contain only one element <devices>. The group is not mandatory.

    +

    Example

    +
    <package>
    +
    ...
    +
    <devices>
    +
    ...
    +
    </devices>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + +
    Parents Element Chain
    package /package
    Child Elements Description Type Occurrence
    family Device family group. Define all properties that are in common to devices of a family. complexType 1..*
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_devices_pg.js b/CMSIS/Documentation/Pack/html/pdsc_devices_pg.js new file mode 100644 index 0000000..f30b58b --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_devices_pg.js @@ -0,0 +1,34 @@ +var pdsc_devices_pg = +[ + [ "/package/devices", "pdsc_devices_pg.html#element_devices", null ], + [ "/package/devices/family element", "pdsc_family_pg.html", [ + [ "/package/devices/family", "pdsc_family_pg.html#element_family", null ], + [ "/package/devices/family/subFamily", "pdsc_family_pg.html#element_subFamily", null ], + [ "/package/devices/family/../device", "pdsc_family_pg.html#element_device", null ], + [ "/package/devices/family/.../algorithm", "pdsc_family_pg.html#element_algorithm", null ], + [ "/package/devices/family/.../book", "pdsc_family_pg.html#element_book", null ], + [ "/package/devices/family/.../compile", "pdsc_family_pg.html#element_compile", null ], + [ "/package/devices/family/.../description", "pdsc_family_pg.html#element_description", null ], + [ "/package/devices/family/.../environment", "pdsc_family_pg.html#element_environment", null ], + [ "/package/devices/family/.../feature", "pdsc_family_pg.html#element_feature", null ], + [ "/package/devices/family/.../memory", "pdsc_family_pg.html#element_memory", null ], + [ "/package/devices/family/.../processor", "pdsc_family_pg.html#element_processor", null ], + [ "/package/devices/family/.../debugconfig", "pdsc_family_pg.html#element_debugconfig", null ], + [ "/package/devices/family/.../debugvars", "pdsc_family_pg.html#element_debugvars", null ], + [ "/package/devices/family/.../debugport", "pdsc_family_pg.html#element_debugport", null ], + [ "/package/devices/family/.../debugport/jtag", "pdsc_family_pg.html#element_dp_jtag", null ], + [ "/package/devices/family/.../debugport/swd", "pdsc_family_pg.html#element_dp_swd", null ], + [ "/package/devices/family/.../debugport/cjtag", "pdsc_family_pg.html#element_dp_cjtag", null ], + [ "/package/devices/family/.../sequences", "pdsc_family_pg.html#element_sequences", null ], + [ "/package/devices/family/.../sequences/sequence", "pdsc_family_pg.html#element_sequence", null ], + [ "/package/devices/family/.../sequences/sequence/control", "pdsc_family_pg.html#element_seq_control", null ], + [ "/package/devices/family/.../sequences/sequence/block", "pdsc_family_pg.html#element_seq_block", null ], + [ "/package/devices/family/.../debug", "pdsc_family_pg.html#element_debug", null ], + [ "/package/devices/family/.../debug/datapatch", "pdsc_family_pg.html#element_dbg_datapatch", null ], + [ "/package/devices/family/.../trace", "pdsc_family_pg.html#element_trace", null ], + [ "/package/devices/family/.../trace/serialwire", "pdsc_family_pg.html#element_trace_serialwire", null ], + [ "/package/devices/family/.../trace/traceport", "pdsc_family_pg.html#element_trace_traceport", null ], + [ "/package/devices/family/.../trace/tracebuffer", "pdsc_family_pg.html#element_trace_tracebuffer", null ], + [ "/package/devices/family/.../device/variant", "pdsc_family_pg.html#element_variant", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/Pack/html/pdsc_examples_pg.html b/CMSIS/Documentation/Pack/html/pdsc_examples_pg.html new file mode 100644 index 0000000..b07b20f --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_examples_pg.html @@ -0,0 +1,334 @@ + + + + + +/package/examples element +CMSIS-Pack: /package/examples element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/examples element
    +
    +
    +

    The element /package/examples/example describes fully defined examples contained in the PACK. An example lists the files that belong to an example. The example itself and each individual file may refer to a condition that must resolve to true; if it is false the example or file will be ignored. The board element is used to reference to one or more board descriptions using the board vendor and name an example is targeted for. Each example can specify attributes listing related components using Class (Cclass=), Group (Cgroup=), Subgroup (Csub) and a Version (Cversion=)

    +

    Example

    +
    <examples>
    +
    <example name="Blinky" folder="Boards/MCBSTM32F200/Blinky" doc="Abstract.txt" version="1.0">
    +
    <description>This is a basic example demonstrating the development flow and letting the LED on the board blink</description>
    +
    <board vendor="STMicroelectronics" name="32F429IDISCOVERY"/>
    +
    <project>
    +
    <environment name="uv" load="ARM/Blinky.uvproj"/>
    +
    <environment name="iar" load="IAR/Blinky.ewarm" />
    +
    </project>
    +
    <attributes>
    +
    <component Cclass="CMSIS" Cgroup="CORE"/>
    +
    <component Cclass="Device" Cgroup="Startup"/>
    +
    <keyword>Blinky</keyword>
    +
    <keyword>Getting Started</keyword>
    +
    </attributes>
    +
    </example>
    +
    </examples>
    +

     

    +
    +

    +/package/examples

    +

    Grouping element for examples. No more than one such group can exist in a PACK.

    + + + + + + + + + +
    Parent Chain
    package /package
    Child Elements Description Type Occurrence
    example Description of fully specified project ExampleType 1..*
    +

     

    +
    +

    +/package/examples/example

    +

    An example section is used to provide the required information for accessing an example project contained in a PACK. All examples contained in the installed packs can be listed including a brief description. A selected example will get copied into a user selected destination folder. Based on the user selected environment the respective project file will be loaded. The ID of an example is the combination of the PACK vendor, the board information and the example name and version. Examples with the same ID are treated as a single example.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parent Chain
    examples /package/examples
    Attributes Description Type Use
    name Name of the example xs:string required
    folder Relative path to the example base folder within the package. If selected, then the directory including all sub-folders and files will be copied, unless the archive attribute gets set. xs:string required
    archive Filename and extension of the archive file containing all files and sub-folders of the example. The archive is located in the path specified by the attribute folder. If selected, then the whole archive will be extracted. xs:string optional
    doc Document that describes the example. xs:string required
    version Example version number. The version format is described in Version Type. VersionType optional
    Child Elements Description Type Occurrence
    description Briefly documents the purpose and scope of the example. The test can be displayed in an example selector. xs:string 1
    board Complex type providing a reference to a board description using board name and vendor.. BoardReferenceType 1
    project Complex type describing the project files for different environments ExampleProjectType 1..*
    attributes Group element for project attributes, which list required components, define example categories, and set keywords to filter and search for examples. ExampleAttributesType 1
    +

     

    +
    +

    +/package/examples/example/board

    +

    This element specifies the board that can be used with the example project.

    +

    Example:

    +
    <board name="MV1000A" vendor="MyVendor"/>
    +

     

    + + + + + + + + + + + + + + + + + + + +
    Parent Chain
    example /package/examples/example
    Attributes Description Type Use
    vendor Vendor name of the board. xs:string required
    name Commercial name of the board. xs:string required
    Dvendor Vendor name of the device used on the board. Use predefined values as listed in the table Device Vendor. DeviceVendorEnum optional
    Dfamily Name of the target device family used on the board. This attribute is optional if either DsubFamily or Dname is already specified.
    + Deprecated since version 1.1
    xs:string optional
    DsubFamily Name of the target device sub-family used on the board. This attribute is optional if either Dfamily or Dname is already specified.
    + Deprecated since version 1.1
    xs:string optional
    Dname Name of the target device used on the board. This attribute is optional if either Dfamily or DsubFamily is already specified.
    + Deprecated since version 1.1.
    xs:string optional
    +
    Note
    Values for deprecated attributes are read from the board description element /package/boards/board/mountedDevice.
    +

     

    +
    +

    +/package/examples/project

    +

    A project element is a sequence of environment elements that describe the name of the environment and the project file to be loaded.

    +

    Example:

    +
    <project>
    +
    <environment ... />
    +
    <environment ... />
    +
    </project>
    +

     

    + + + + + + + + + +
    Parent Chain
    example /package/examples/example
    Element Description Type Occurrence
    environment Specifies the environment and project file with extension. xs:complexType 1..*
    +

     

    +
    +

    +/package/examples/project/environment

    +

    The environment element describes the name of the environment and the project file to be loaded.

    +

    Example:

    +
    <project>
    +
    <environment name="uv" load="ARM/Blinky.uvproj"/>
    +
    <environment name="iar" load="IAR/Blinky.ewarm" />
    +
    </project>
    +

     

    + + + + + + + + + + + +
    Parent Chain
    project /package/examples/project
    Attributes Description Type Use
    name Name of the required tool-chain (for example: uv, iar, etc.) xs:string required
    load Specifies the project file with extension. A path relative to folder attribute of the element /package/examples/example can be appended. xs:string required
    +

     

    +
    +

    +/package/examples/example/attributes

    +

    Example:

    +
    <example>
    +
    <attributes>
    +
    <category>Example Project</category>
    +
    <category>For a specific board</category>
    +
    ...
    +
    <component Cclass="CMSIS" Cgroup="CORE"/>
    +
    <component Cclass="Device" Cgroup="Startup"/>
    +
    ...
    +
    <keyword>Blinky</keyword>
    +
    <keyword>Getting Started</keyword>
    +
    </attributes>
    +
    </example>
    +

     

    + + + + + + + + + + + + + +
    Parent Chain
    example /package/examples/example
    Child Elements Description Type Occurrence
    category Free form string defining an example category. A category can be used to filter examples in an example browser. xs:string 0..*
    component Group for defining the components used in the example. ComponentCategoryType 0..*
    keyword Free form string defining a keyword that relates to the example. A keyword can be used to search for examples. xs:string 0..*
    +

     

    +
    +

    +/package/examples/example/attributes/component

    +

    The component element specifies the Cclass to which the example belongs. This can be used to list all related components within an example.

    +

    Example:

    +
    <attributes>
    +
    ...
    +
    <component Cclass="CMSIS" Cgroup="CORE"/>
    +
    <component Cclass="Device" Cgroup="Startup"/>
    +
    ...
    +
    </attributes>
    +

     

    + + + + + + + + + + + + + + + + + +
    Parent Chain
    attribute /package/examples/example/attributes
    Attribute Description Type Use
    Cclass Free form string defining an example class. Predefined values can be used as listed in the table Component Classes. CclassType required
    Cgroup Free form string defining an example group. Predefined values can be used as listed in the table Component Groups. CgroupType optional
    Csub Free form string defining an example subgroup. The type is described in Component Subgroups. CsubType optional
    Cversion Free form string defining an example version. The version format is described in Version Type. VersionType optional
    Cvendor Free form string defining the vendor of the example. xs:string optional
    +

     

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_family_pg.html b/CMSIS/Documentation/Pack/html/pdsc_family_pg.html new file mode 100644 index 0000000..3d47d65 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_family_pg.html @@ -0,0 +1,2421 @@ + + + + + +/package/devices/family element +CMSIS-Pack: /package/devices/family element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/devices/family element
    +
    +
    +

    +/package/devices/family

    +

    Define properties that are in common to all devices of a family. These properties are inherited by subgroups or elements. This is a mechanism of granulation to reduce redundancy. Multiple <family> groups can be defined.

    +

    Example

    +
    <devices>
    +
    ...
    +
    <family Dfamily="STM32F2" Dvendor="STMicroelectronics:13">
    +
    <processor .../>
    +
    <debugconfig .../>
    +
    <debugvars .../>
    +
    <sequences .../>
    +
    <compile .../>
    +
    <memory .../>
    +
    <algorithm .../>
    +
    <book .../>
    +
    <description> Write texte here </description>
    +
    <environment> ... </environment>
    +
    <feature .../>
    +
    <debugport .../>
    +
    <debug .../>
    +
    <trace .../>
    +
    +
    <subFamily DsubFamily="...">
    +
    ...
    +
    <device Dname="...">
    +
    ...
    +
    </device>
    +
    ...
    +
    </subFamily>
    +
    ...
    +
    </family>
    +
    ...
    +
    </devices>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    devices /package/devices
    Attributes Description Type Use
    Dfamily Name of the device family. xs:string required
    Dvendor Device vendor name. Use predefined values as listed in the table Device Vendor. DeviceVendorEnum required
    Child Elements Description Type Occurrence
    processor List all processors that are in common to devices of the family. ProcessorType 0..*
    compile Specify compile or translate options that are relevant to all devices of the family. CompileType 0..*
    debugconfig Specify default settings for the debug connection relevant to all devices of the family. DebugConfigType 0..1
    debugvars Define global debug access variables for settings relevant to all devices of the family unless replaced by debugvars on subFamily, device or variant level DebugVarsType 0..1
    sequences Describe debug access sequences relevant to all devices of the family. SequencesType 0..1
    debugport Describe a debug port relevant to all devices of the family. DebugPortType 0..*
    debug Specify debug options that are relevant to all devices of the family. DebugType 0..*
    trace Specify trace options that are relevant to all devices of the family. TraceType 0..*
    memory Specify memory areas that are available for all devices of the family. MemoryType 0..*
    algorithm Specify Flash programming algorithms that are suitable for all devices. AlgorithmType 0..*
    book Specify documents that are relevant for all devices of a family. BookType 0..*
    description Describe the device family. DescriptionType 0..*
    environment Specify tool specific settings. EnvironmentType 0..*
    feature Specify features that are available in all members of the device family. FeatureType 0..*
    subFamily A optional sub-family that is used to group devices. group 0..*
    device Individual devices that belong to the device family. DeviceType 0..*
    +

     

    +
    +

    +/package/devices/family/subFamily

    +

    Define properties that are in common to all devices of a subFamily. This is another mechanism of granulation to reduce redundancy. These properties are inherited by subgroups or elements. Multiple <subFamily> groups can be defined.

    +

    Example

    +
    <family Dfamily="STM32F2" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <subFamily DsubFamily="...">
    +
    <processor .../>
    +
    <debugconfig .../>
    +
    <debugvars .../>
    +
    <sequences .../>
    +
    <compile .../>
    +
    <memory .../>
    +
    <algorithm .../>
    +
    <book .../>
    +
    <description> Write texte here </description>
    +
    <feature .../>
    +
    <debugport .../>
    +
    <debug .../>
    +
    <trace .../>
    +
    <device Dname="...">
    +
    ...
    +
    </device>
    +
    </subFamily>
    +
    +
    <subFamily DsubFamily="STM32F2xx">
    +
    ...
    +
    </subFamily>
    +
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    Attributes Description Type Use
    DsubFamily Name of the device sub family. xs:string required
    Child Elements Description Type Occurrence
    processor Specify processors that are available in all devices of the sub-family. ProcessorType 0..*
    compile Specify compile or translate options that are relevant to all devices of the sub-family. CompileType 0..*
    debugconfig Specify default settings for the debug connection relevant to all devices of the sub-family. DebugConfigType 0..1
    debugvars Define global debug access variables for user-defined settings relevant to all devices of the sub-family. DebugVarsType 0..1
    sequences Describe debug access sequences relevant to all devices of the sub-family. SequencesType 0..1
    debugport Describe a debug port relevant to all devices of the sub-family. DebugPortType 0..*
    debug Specify debug options that are relevant to all devices of the sub-family. DebugType 0..*
    trace Specify trace options that are relevant to all devices of the sub-family. TraceType 0..*
    memory Specify memory areas that are available in all device of the sub-family. MemoryType 0..*
    algorithm Specify Flash programming algorithms that can be used by all device of the sub-family. AlgorithmType 0..*
    book Specify documents relevant for all device of the sub-family. BookType 0..*
    description Description of the device family. DescriptionType 0..*
    feature Specify features available in devices of the sub-family. FeatureType 0..*
    device List individual devices that belong to the device sub-family. DeviceType 0..*
    +

     

    +
    +

    +/package/devices/family/../device

    +

    Define properties that are specific to a device. Properties defined on upper levels get inherited, unless they can be overwritten. Multiple <device> elements can be defined.

    +

    Example

    +
    <subFamily DsubFamily="STM32F405">
    +
    ...
    +
    <device Dname="STM32F405OE">
    +
    <memory name="Flash" access="rx" start="0x08000000" size="0x80000" startup="1" default="1"/>
    +
    <algorithm name="Flash/STM32F4xx_1024.flm" start="0x08000000" size="0x80000" default="1" style="Keil"/>
    +
    <feature type="IOs" n="72" name="Input and Output Ports"/>
    +
    </device>
    +
    +
    <device Dname="STM32F405OG">
    +
    <memory name="Flash" access="rx" start="0x08000000" size="0x100000" startup="1" default="1"/>
    +
    <algorithm name="Flash/STM32F4xx_1024.flm" start="0x08000000" size="0x100000" default="1" style="Keil"/>
    +
    <feature type="IOs" n="72" name="Input and Output Ports"/>
    +
    </device>
    +
    ...
    +
    </subFamily>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    Attributes Description Type Use
    Dname Specifies the name of the device. Only alphabetical characters, decimal digits, '-' and '_' are allowed RestrictedString required
    Child Elements Description Type Occurrence
    processor Specify processors that are specific to this device. ProcessorType 0..*
    compile Specify compile or translate options specific to this device. CompileType 0..*
    debugconfig Specify default settings for the debug connection specific to this device. DebugConfigType 0..1
    debugvars Define debug access variables for user-defined settings specific to this device. DebugVarsType 0..1
    sequences Describe debug access sequences specific to this device. SequencesType 0..1
    debugport Describe a debug port specific to this device. DebugPortType 0..*
    debug Specify debug options specific to this device. DebugType 0..*
    trace Specify trace options specific to this device. TraceType 0..*
    memory Specify memory areas that specific to this device. MemoryType 0..*
    algorithm Specify Flash programming algorithms that can be used by this device. AlgorithmType 0..*
    book Specify documents specific to this device. BookType 0..*
    description Description specific to this device. DescriptionType 0..*
    feature Specify features specific to this device. FeatureType 0..*
    variant Complex element specifying a variant of a device. xs:string 0..*
    +

     

    +
    +

    +/package/devices/family/.../algorithm

    +

    Specify Flash programming algorithms with the address range and its size. An algorithm with <default> set to true gets configured automatically to the download options of the project. Algorithms can be defined on various levels. Multiple <algorithm> elements are possible. If the memory range and style are identical, the one on the lower level takes precedence.

    +

    Example

    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <!-- use for all devices of the family -->
    +
    <algorithm name="Flash\STM32F2xx_512.flm" start=0x08000000 size=0x10000 default="1" style="Keil"/>
    +
    +
    <subFamily DsubFamily="STM32F405">
    +
    <!-- use for all devices of a subFamily -->
    +
    <algorithm name="Flash/STM32F2xx_1024.flm" start=0x08000000 size=0x20000 default="1" style="Keil"/>
    +
    +
    <device Dname="STM32F405OE">
    +
    <!-- finally, this is the default for the device -->
    +
    <algorithm name="Flash/STM32F2xx_2048.flm" start=0x08000000 size=0x40000 default="1"/> style="Keil"/>
    +
    </device>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Processor identifier. This attribute is mandatory for devices that embed multiple processors that require different algorithms. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    name Flash Programming Algorithm file including the path, which is relative to the root folder of the Software Pack. xs:string required
    start Base address for the Flash programming algorithm. NonNegativeInteger required
    size Size covered by the Flash programming algorithm. End address = start + size - 1 NonNegativeInteger required
    RAMstart Base address for the RAM where the Flash programming algorithm will be executed from. If specified, the memory element does not require a default attribute. NonNegativeInteger optional
    RAMsize Maximum size of RAM available for the execution of the Flash programming algorithm. End address = start + size - 1 is used for the Stack. If specified, the memory element does not require a default attribute. NonNegativeInteger optional
    default If true, then this is the default Flash programming algorithm that gets configured in a project. If not specified or set to false, then the Flash programming algorithm can be configured on a lower level. However, the Flash programming algorithm of a project can be changed manually at any time during development. xs:boolean optional
    style [Version 1.4.0] Today different tool-chains support different styles of incompatible flash programming algorithms. The attribute specifies the style of the specified flash programming algorithm. For backward compatibility the default value is "Keil". The aim is to converge to the CMSIS style. AlgorithmStyleEnum

    optional

    +

    +
    +

     

    +
    +

    +/package/devices/family/.../book

    +

    Specifies documents related to a device. Books can be entered on various levels. The book element contains the location, filename, and extension of the file. The title is used for display purposes.

    +

    Example

    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <book name="Documents/STM32F40x_DS.PDF" title="STM32F40x Data Sheet"/> <!-- valid for all devices of the family -->
    +
    +
    <subFamily DsubFamily="STM32F405">
    +
    <book name="Documents/STM32F4xx_RM.pdf" title="STM32F4 Series Reference Manual"/> <!-- valid for all devices of a subFamily -->
    +
    +
    <device Dname="STM32F405OE">
    +
    <book name="Documents/STM32F405OE_DS.PDF" title="STM32F405OE - Data Sheet"/> <!-- valid for this device; Inherits all above -->
    +
    </device>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Processor identifier. This attribute is mandatory for devices that embed multiple processors and where the book refers to a single processor only. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    name File name of the document including the extension. The document path is relative to the package base folder. Directory/file names are case-sensitive. xs:string required
    title Book title. Can be used for being displayed in various environments. xs:string required
    +

     

    +
    +

    +/package/devices/family/.../compile

    +

    Specify header files and preprocessor defines for programming. This element can occur on various levels. Multiple elements are allowed. The last occurrence in the hierarchy determines the actual define.

    +
    Note
      +
    • In the example below, the device STM32F407IG will have a define STM32F407IG. Previous defines are overridden.
    • +
    • It is good practice to add both attributes (header and define) in the attributes list of the compile element together. This clarifies the relationship between header file and define.
    • +
    +
    +

    Example

    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <compile header="Device/Include/stm32f4xx.h"/>
    +
    +
    <subFamily DsubFamily="STM32F407">
    +
    ...
    +
    <compile header="Device/Include/stm32f4xx.h" define="STM32F40XX"/>
    +
    +
    <device Dname="STM32F407IG">
    +
    <compile header="Device/Include/stm32f4xx.h" define="STM32F407IG"/>
    +
    </device>
    +
    </subFamily>
    +
    </family>
    +
    + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Processor identifier. This attribute is mandatory for devices that embed multiple processors if the header and define is different for each processor. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    header C-header file with path relative to the installation. xs:string optional
    define C-file name with device specific preprocessor defines. The path is relative to the installation. xs:string optional
    +

     

    +
    +

    +/package/devices/family/.../description

    +

    Brief description of the element. Can occur on various levels. Should only contain the unique features of the device. Number of bullet points should not exceed ten. To create a detailed feature list use the /package/devices/family/.../feature instead.

    +

    Example

    +
    <package>
    +
    <devices>
    +
    <family Dfamily="STM32F2" Dvendor="STMicroelectronics:13">
    +
    +
    <description>
    +
    STM32F2 devices are designed for medical, industrial and consumer
    +
    applications and provide rich connectivity peripherals.
    +
    - At 120 MHz CPU clock: 150 DMIPS executing from Flash memory
    +
    - ART Accelerator for low-power Flash execution (175 µA/MHz @ 120 MHz)
    +
    - Flexible Memory Controller supports Compact Flash, SRAM, PSRAM, NOR and NAND
    +
    </description>
    +
    +
    </family>
    +
    </devices>
    +
    </package>
    +

     

    + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Processor Identifier. This attribute is mandatory for devices that embed multiple processors and where the description is specific to a single processor. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    +

     

    +
    +

    +/package/devices/family/.../environment

    +

    Tool-specific elements for a device.

    +

    Can occur on various levels.

    +

    Contains information that is specific for a development tool identified by the name attribute. The structure of the element is not specified in the schema file which gives the development tool full control of the element usage.

    +

    Example

    +
    <package>
    +
    <devices>
    +
    <family Dfamily="MySeries" Dvendor="Generic:5">
    +
    ...
    +
    <environment name="MyConfigTool">
    +
    <file>MyConfigFile.cfg</file>
    +
    <control>MyControlString</control>
    +
    ...
    +
    </environment>
    +
    ...
    +
    </family>
    +
    </devices>
    +
    </package>
    +
    <package>
    +
    <devices>
    +
    <family Dfamily="XMC1000 Series" Dvendor="Infineon:7">
    +
    ...
    +
    <environment name="uv" Pname="M0">
    +
    <CMisc>--C99</CMisc>
    +
    ...
    +
    </environment>
    +
    ...
    +
    </family>
    +
    </devices>
    +
    </package>
    +

     

    + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    name Name of the development tool (e.g. "uv" for uVision) xs:string required
    Pname Identifies the processor the setting belongs to. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    Child Elements Description Type Occurrence
    any Any element that is available for the specified development tool.
    + For uVision, the following elements are available: <CMisc>, <AMisc>, <LMisc>, <preBuild1>, <preBuild2>, <preRun1>, <preRun2>, <postBuild1>, <postBuild2>, <postRun1>, <postRun>.
    xs:anyAttribute 0..*
    +

     

    +
    +

    +/package/devices/family/.../feature

    +

    This element specifies the peripherals that devices can have. Many device feature types are already predefined, such as timers, converters, Ethernet, USB, etc (for a complete list refer to table Device Feature Types). Features can be defined on various levels. Inner elements supersede outer elements.

    +

    Example

    +
    <package>
    +
    <devices>
    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <!-- Features that are in common to this device family. -->
    +
    <feature type="TimerOther" n="1" name="Independent Watchdog Timer"/>
    +
    <feature type="TimerOther" n="1" name="Window Watchdog Timer"/> <!-- The same feature type can be specified multiple times -->
    +
    <feature type="Other" n="1" name="Temperature Sensor"/>
    +
    <feature type="CoreOther" n="1" name="96-bit Unique Identifier"/>
    +
    <feature type="CoreOther" n="1" name="CRC Calculation Unit"/>
    +
    <feature type="DMA" n="16" name="General Purpose DMA with Centralized FIFO and Burst Support"/>
    +
    <feature type="PowerOther" n="1" name="POR, PDR, PVD, and BOR"/>
    +
    <feature type="XTAL" n="4000000" m="26000000" name="Crystal Oscillator"/>
    +
    <feature type="IntRC" n="16000000" name="Internal Factory-Trimmed RC"/>
    +
    <feature type="IntRC" n="32000" name="Internal RC with Calibration"/>
    +
    <feature type="RTC" n="32000" name="RTC with 32 kHz calibrated Oscillator and Battery Backup"/>
    +
    <feature type="PowerMode" n="3" name="Run, Stop, Standby"/>
    +
    <feature type="Temp" n="-40" m="85"/>
    +
    <feature type="Temp" n="-40" m="105"/>
    +
    <feature type="Timer" n="4" m="16" name="General Purpose Timer"/>
    +
    ...
    +
    <subFamily DsubFamily="STM32F407">
    +
    <!-- Features that are in common to this subFamily. -->
    +
    <feature type="IOs" n="36"/> <!-- Adds new feature to subFamily -->
    +
    <feature type="Timer" n="7" m="32" name="General Purpose Timer"/> <!-- Adds to settings from <family> -->
    +
    +
    +
    <device Dname="STM32F407IE">
    +
    <!-- Feature specific to this device. All above features are inherited. -->
    +
    <feature type="QFP" n="176" name="LQFP 176 24x24x1.4"/>
    +
    </device>
    +
    </subFamily>
    +
    </family>
    +
    </devices>
    +
    </package>
    +

     

    + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Processor Identifier. This attribute is mandatory for devices that embed multiple processors. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    type A feature (peripheral), such as CAN, DMA, I/O, LCD, etc. Predefined values must be used as listed in the table Device Feature Types. DeviceFeatureTypeEnum required
    n Depends on the element type. Check table Device Feature Types. xs:decimal optional
    m Depends on the elemen type. Check table Device Feature Types. xs:decimal optional
    name Descriptive name of the feature. For example, "16-bit down counting timer". If omitted, the Default Name is used as described in the table Device Feature Types. xs:string optional
    +

     

    +

    Table: Device Feature Types

    +

    The table lists predefined device features (peripherals).

    +
    Note
    The attribute name of the element /package/devices/family/.../feature is a descriptive text for a feature. If name is omitted, then the Default Name is used.
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    type=n=m=Default NameExampleExample shown as
    NVICNumber of NVIC InterruptsN/ANVIC<feature type="NVIC" n="120" name="NVIC"/>NVIC with 120 interrupt sources
    DMANumber of DMA ChannelsN/ADMA<feature type="DMA" n="16" name="High-Speed DMA"/>16-channel High-Speed DMA
    CryptoBitwidth, given as decimal Number (see example)N/ACryptographic Engine<feature type="Crypto" n="128.256" name="HW accelerated AES Encryption Engine"/>128/256-bit HW accelerated AES Encryption Engine
    RNGNumber of RNGsN/ARandom Number Generator<feature type="RNG" name="True Random Number Generator"/>True Random Number Generator
    CoreOtherNumber of FeaturesN/AOther Core Feature<feature type="CoreOther" n=1 name="96-bit Unique Identifier"/>1 x 96-bit Unique Identifier
    MemoryNumber of BytesN/AMemory<feature type="Memory" n="128" name="EEPROM"/>128 byte EEPROM
    MemoryOtherNumber of MemoriesN/AOther Memory Type<feature type="MemoryOther" n="1" name="1 kB MRAM"/>1 x 1 kB MRAM
    ExtBusBitwidth of Bus InterfaceN/AExternal Bus Interface<feature type="ExtBus" n="16" name="External Bus Interface for SRAM Communication"/>16-bit External Bus Interface for SRAM Communication
    XTALMinimum Frequency in HzMaximum Frequency in HzExternal Crystal Oscillator<feature type="XTAL" n="4000000" m="25000000" name="External Crystal Oscillator"/>4 MHz .. 25 MHz External Crystal Oscillator
    IntRCMinimum Frequency in HzMaximum Frequency in HzInternal RC Oscillator<feature type="IntRC" n="16000000" name="Internal RC Oscillator with +/- 1% accuracy"/>16 MHz Internal RC Oscillator with +/- 1% accuracy
    PLLNumber of PLLsN/APLL<feature type="PLL" n="3" name="Internal PLL"/>3 Internal PLL
    RTCRTC FrequencyN/ARTC<feature type="RTC" n="32000" name="Internal RTC"/>32 kHz Internal RTC
    ClockOtherNumber of PeripheralsN/AOther Clock Peripheral<feature type="ClockOther" name="My special clock feature"/>My special clock feature
    PowerModeNumber of Power ModesN/APower Modes<feature type="Mode" n="3" name="Run, Sleep, Deep-Sleep"/>3 Power Modes: Run, Sleep, Deep-Sleep
    VCCMinimum Supply VoltageMaximum Supply VoltageOperating Voltage<feature type="VCC" n="1.8" m="3.6"/>1.8 V .. 3.6 V
    ConsumptionMinimum Power ConsumptionTypical Power ConsumptionPower Consumption<feature type="Consumption" n="0.00004" m="0.002" name="Ultra-Low Power Consumption"/>40 uW/MHz .. 2 mW/MHz Ultra-Low Power Consumption
    PowerOtherNumber of FeaturesN/AOther Power Feature<feature type="PowerOther" n="1" name="POR"/>1 x POR
    BGANumber of BallsN/ABGA<feature type="BGA" n="256" name="Plastic Ball Grid Array"/>256-ball Plastic Ball Grid Array
    CSPNumber of LeadsN/ACSP<feature type="CSP" n="28" name="Wafer-Level Chip-Scale Package"/>28-ball Wafer-Level Chip-Scale Package
    PLCCNumber of LeadsN/APLCC<feature type="PLCC" n="20" name="PLCC Package"/>20-lead PLCC Package
    QFNNumber of LeadsN/AQFN<feature type="QFN" n="33" name="QFN Package"/>33-pad QFN Package
    QFPNumber of LeadsN/AQFP<feature type="QFP" n="128" name="Low-Profile QFP Package"/>128-lead Low-Profile QFP Package
    SOPNumber of LeadsN/ASOP<feature type="SOP" n="16" name="SSOP Package"/>16-lead SSOP Package
    DIPNumber of LeadsN/ASOP<feature type="DIP" n="16" name="Dual In-Line Package"/>16-lead Dual In-Line Package
    PackageOtherNumber of PinsN/AOther Package Type<feature type="PackageOther" n="44" name="My other Package"/>44-contacts My other Package
    IOsNumber of I/OsN/AInputs/Outputs<feature type="IOs" n="112" name="General Purpose I/Os, 5V tolerant"/>112 General Purpose I/Os, 5V tolerant
    ExtIntNumber of External InterruptsN/AExternal Interrupts<feature type="ExtInt" n="12"/>12 External Interrupts
    TempMinimum Operating TemperatureMaximum Operating TemperatureOperating Temperature Range<feature type="Temp" n="-40" m="105" name="Extended Operating Temperature Range"/>-40 °C .. +105 °C Extended Operating Temperature Range
    ADCNumber of ChannelsResolution in BitADC<feature type="ADC" n="5" m="12" name="High-Performance ADC"/>5-channel x 12-bit High-Performance ADC
    DACNumber of ChannelsResolution in BitDAC<feature type="DAC" n="2" m="10"/>2 x 12-bit DAC
    TempSensNumber of SensorsN/ATemperature Sensor<feature type="TempSens" n="1"/>1 x Temperature Sensor
    AnalogOtherNumber of FeaturesN/AOther Analog Peripheral<feature type="AnalogOther" n="1" name="My Analog"/>1 x My Analog
    TimerNumber of ChannelsResolution in BitTimer/Counter Module<feature type="Timer" n="2" m="32" name="Timer Module with Quadrature Encoding"/>2 x 32-bit Timer Module with Quadrature Encoding
    PWMNumber of ChannelsResolution in BitPWM<feature type="PWM" n="2" m="16" name="Pulse Width Modulation"/>2 x 16-bit Pulse Width Modulation
    WDTNumber of WatchdogsN/AWatchdog<feature type="WDT" n="1"/>1 x Watchdog Timer
    TimerOtherNumber of FeaturesN/AOther Timer Peripheral<feature type="TimerOther" n="1" name="Quadrature En-/Decoder"/>1 x Quadrature En-/Decoder
    MPSerialNumber of Serial PeripheralsN/AMulti-Purpose Serial Peripheral<feature type="MPSerial" n="4" name="Multi-Purpose Serial Interface Module: I2C, I2S, SPI, UART"/>4 x Multi-Purpose Serial Interface Module: I2C, I2S, SPI, UART
    CANNumber of CAN InterfacesN/ACAN<feature type="CAN" n="2" name="CAN 2.0b Controller"/>2 x CAN 2.0b Controller
    ETHNumber of Ethernet InterfacesData Rate in Bit/sEthernet<feature type="ETH" n="1" m="10000000" name="Integrated Ethernet MAC with PHY"/>1 x 10 Mbit/s Integrated Ethernet MAC with PHY
    I2CNumber of I2C InterfacesN/AI2C<feature type="I2C" n="2"name="Low-Power I2C"/>2 x Low-Power I2C
    I2SNumber of I2S InterfacesN/AI2S<feature type="I2S" n="3"/>3 x I2S
    LINNumber of LIN InterfacesN/ALIN<feature type="LIN" n="4"/>4 x LIN
    SDIONumber of SDIO InterfacesBitwidth of SDIO InterfaceSDIO<feature type="SDIO" n="1" m="4" name="SDIO Interface"/>1 x 4-bit SDIO Interface
    SPINumber of SPI InterfacesData Rate in Bit/sSPI<feature type="SPI" n="2" m="20000000" name="SPI Interface"/>2 x 20 Mbit/s SPI Interface
    UARTNumber of UART InterfacesData Rate in Bit/sUART<feature type="UART" n="4" m="3000000" name="High-Speed UART Interface"/>4 x 3 Mbit/s High-Speed UART Interface
    USARTNumber of USART InterfacesData Rate in Bit/sUSART<feature type="USART" n="2" m="1000000" name="High-Speed USART Interface"/>2 x 1 Mbit/s High-Speed USART Interface
    USBDNumber of USB Dvice InterfacesN/AUSB Device<feature type="USBD" n="2" name="Full-Speed USB Device"/>2 x Full-Speed USB Device
    USBHNumber of USB Host InterfacesN/AUSB Host<feature type="USBH" n="2" name="High-Speed USB Host"/>2 x High-Speed USB Host
    USBOTGNumber of USB OTG InterfacesN/AUSB OTG<feature type="USBOTG" n="1" name="High-Speed USB OTG with PHY"/>1 x High-Speed USB OTG with PHY
    ComOtherNumber of other Communication PeripheralsN/AOther Communication Peripheral<feature type="ComOther" n="1" name="ZigBee"/>1 x ZigBee
    CameraNumber of Camera InterfaceResolution in BitCamera Interface<feature type="Camera" n="1" m="8" name="Digital Camera Interface"/>1 x 8-bit Digital Camera Interface
    GLCDNumber of Graphic LCD ControllerMaximum Resolution as a decimal number (see example)Graphic LCD Controller<feature type="GLCD" n="1" m="320.240" name="TFT LCD Controller"/>1 x 320 x 480 pixel TFT LCD Controller
    LCDNumber of Segment LCD ControllerCom.Seg as a decimal number (see example)Segment LCD Controller<feature type="LCD" n="1" m="16.40" name="Segment LCD Controller"/>1 x 16 x 40 Segment LCD Controller
    TouchNumber of Touch ChannelsN/ACapacitive Touch Inputs<feature type="Touch" n="10" name="Capacitive Touch Inputs"/>10 x Capacitive Touch Inputs
    OtherNumber of FeaturesN/AOther Feature<feature type="Other" n="2" name="My other Interface"/>2 x My other Interface
    +

     

    +
    +

    +/package/devices/family/.../memory

    +

    This element specifies memory regions that devices can have. Memory types are predefined and can be selected. This element can be defined on various levels. Inner memory elements supersede outer elements.

    +

    Example

    +
    </package>
    +
    ...
    +
    <devices>
    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    <memory name="SRAM" access="rwx" start="0x20000000" size="0x20000" default="1"/>
    +
    +
    <subFamily DsubFamily="STM32F407">
    +
    <debug __dp="0" __ap="0" svd="SVD/STM32F40x.svd"/>
    +
    <memory name="SRAM1" access="rwx" start="0x20020000" size="0x20000" default="1"/>
    +
    <memory name="SRAM2" access="rwx" start="0x10000000" size="0x10000" default="1"/>
    +
    +
    <device Dname="STM32F407IE">
    +
    <memory name="Flash" access="rx" start="0x08000000" size="0x80000" startup="1" default="1"/>
    +
    </device>
    +
    +
    </subFamily>
    +
    </family>
    +
    </devices>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Processor identifier. This attribute is mandatory for devices that embed multiple processors. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    id (deprecated in Version 1.4.0) (deprecated Version 1.4.0) Identifier of the memory region consisting of a type indicator and an index (for example, IRAM1). Predefind values can be selected as defined in MemoryIDTypeEnum. MemoryIDTypeEnum optional
    name (new in Version 1.4.0) unique name of the memory (new in Version 1.4.0) to be used in conjunction with access xs:string optional
    access (new in Version 1.4.0) access permission attributes of the memory. See MemoryAccessTypeString for details (new in Version 1.4.0). MemoryAccessTypeString optional
    start Base address of the memory using a hexadecimal value. NonNegativeInteger required
    size Size of the memory in bytes using a hexadecimal value. NonNegativeInteger required
    default Indicates a general purpose memory region, that does not require any special considerations (access speed, remapping, protection, etc.). If true, then an IRAM memory region will be used by the linker for locating any data and an IROM memory region will for locating any code. Every device needs at least one default IRAM region. If an algorithm element is specified (without RAMstart and RAMsize attributes), the first listed IRAM region with default="1" will also be used for executing the flash programming algorithm. Default value is false. xs:boolean optional
    startup If true, the startup code of the application will be placed into this memory region. Default value is false. xs:boolean optional
    alias(new in Version 1.4.0) reference to another memory description which shares the same physical memory. Some physical memory is made accessible via different addresses, e.g. chached vs. non-cached accesses. This avoids the impression that the device has twice as much memory available. xs:string optional
    +

     

    +

    Table: Memory ID Types

    +

    The table lists identifiers for memory types.

    + + + + + + + + + + + +
    id= Description
    RAMx External RAM. x can have a value between 1..8
    ROMx External ROM. x can have a value between 1..8
    IRAMx Internal RAM. x can have a value between 1..8
    IROMx Internal ROM. x can have a value between 1..8
    +

     

    +
    +

    Table: Memory Access Attribute String

    +

    The table lists the letters and their meaning for use in the access attribute string.

    + + + + + + + + + + + + + + + + + +
    access= Description
    r Readable
    w Writable
    x eXecutable
    p Peripheral area. Details described in SVD.
    s Secure attribute
    n Non-secure attribute
    c non-secure Callable attribute
    +

     

    +
    +

    +/package/devices/family/.../processor

    +

    Specifies attributes of the device processor. The element can occur on various levels. Elements of multi-processor devices can be associated with a specific processor using the attribute <Pname>. If the information is relevant to all processors, no processor must be specified in <Pname>.

    +

    Example

    +
    <package>
    +
    ...
    +
    <devices>
    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    <processor Dcore="Cortex-M4" DcoreVersion="r0p1"
    +
    Dfpu="1" Dmpu="1" Dendian="Little-endian" Dclock="168000000"/>
    +
    ...
    +
    </family>
    +
    </devices>
    +
    ...
    +
    </package>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Processor identifier. This attribute is mandatory for devices that embed multiple processors. Each processor needs a unique identifier and must be used consistently in the Pname attribute of the elements within the scope of the current device family section. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    Dvendor Specfies the device vendor using a predefined string. Use predefined values as listed in the table Device Vendor. DeviceVendorEnum optional
    Dcore Specifies the processor core. Use predefined values as listed in the table Device Cores. DcoreEnum optional
    Dfpu Specifies whether a hardware Floating Point Unit is present in the processor. Use predefined values as listed in the table Device FPU. DfpuEnum optional
    Dmpu Specifies whether a Memory Protection Unit is present in the processor. Use predefined values as listed in the table Device MPU. DmpuEnum optional
    Dendian Specifies the endianess of the processor. Use predefined values as listed in the table Endinaness. DendianEnum optional
    Dclock Specifies the max clock frequency of the processor subsystem xs:unsignedInt optional
    DcoreVersion Hardware revision of the processor core xs:string required
    +

     

    +

    Table: Device Vendors

    +

    The table lists predefined values representing device vendors. The list is extended from time to time (on request by new vendors). Contact cmsis.nosp@m.@arm.nosp@m..com to ask for an extension. These values can be used in the elements:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Dvendor Description Web Link
    Ambiq Micro:120 Ambiq Micro http://www.ambiqmicro.com
    Analog Devices:1 Analog Devices http://www.analog.com
    ARM:82 ARM Ltd. http://www.arm.com
    Atmel:3 Atmel Corporation http://www.atmel.com
    CSR:118 CSR: http://www.csr.com
    Cypress:19 Cypress Semiconductor http://www.cypress.com
    Dialog Semiconductor:113 Dialog Semiconductor http://www.dialog-semiconductor.com
    Freescale:78 Freescale http://www.freescale.com
    Generic:5 Generic: Not a vendor specific device
    GigaDevice:123 GigaDevice http://www.gigadevice.com
    Holtek:106 Holtek Microelectronics http://www.holtek.com.tw
    Infineon:7 Infineon Technologies http://www.infineon.com
    Lapis Semiconductor:10 Lapis Semiconductor http://www.lapis-semi.com
    Maxim:23 Maxim Integrated http://www.maximintegrated.com
    MicroSemi:112 Microsemi http://www.microsemi.com
    Milandr:99 Milandr http://www.milandr.ru
    Nordic Semiconductor:54 Nordic Semiconductor http://www.nordicsemi.com
    Nuvoton:18 Nuvoton Technolgy Corp. http://www.nuvoton.com
    NXP:11 NXP http://www.nxp.com
    Realtek Semiconductor:124 Realtek Semiconductor http://www.realtek.com.tw
    Redpine Signals:125 Repine Signals http://www.redpinesignals.com
    Renesas:117 Renesas http://www.renesas.com
    ROHM:103 ROHM http://www.rohm.com
    Samsung:47 Samsung Semiconductor http://www.samsung.com
    Silicon Labs:21 Silicon Labs http://www.silabs.com
    Spansion:100 Spansion (previously Fujitsu) http://www.spansion.com
    STMicroelectronics:13 STMicroelectronics http://www.st.com
    Texas Instruments:16 Texas Instruments http://www.ti.com
    Toshiba:92 Toshiba Semiconductor http://www.toshiba-components.com
    Triad Semiconductor:104 Triad Semiconductor http://www.triadsemi.com
    WIZnet:122 WIZnet http://www.wiznet.co.kr
    +

     

    +

    Table: Algorithm Styles

    + + + + + + + + + +
    style= Description
    Keil Flash Programming Algorithm as defined by ARM/Keil
    IAR Flash Programming Algorithm as defined by IAR
    CMSIS

    To be agreed under CMSIS

    +

    +
    +

     

    +

    Table: Device Cores

    +

    The table lists available device cores. The list is extended from time to time to reflect new processor cores. These values can be used in the elements:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Dcore= Description
    Cortex-M0 ARM Cortex-M0 processor based device
    Cortex-M0+ ARM Cortex-M0+ processor based device
    Cortex-M1 ARM Cortex-M1 processor based device
    Cortex-M3 ARM Cortex-M3 processor based device
    Cortex-M4 ARM Cortex-M4 processor based device
    Cortex-M7 ARM Cortex-M7 processor based device
    SC000 SecurCore SC000 based on technology of Cortex-M0.
    SC300 SecurCore SC300 based on technology of Cortex-M3.
    Cortex-R4 ARM Cortex-R4 processor based device
    Cortex-R5 ARM Cortex-R5 processor based device
    Cortex-A8 ARM Cortex-A8 processor based device
    Cortex-A9 ARM Cortex-A9 processor based device
    Cortex-A15 ARM Cortex-A15 processor based device
    * Device based on any processor
    +

     

    +

    Table: Device FPU

    +

    The table lists values that identicate whether a CPU has an Floating Point Unit (FPU). The tokens can be used in the elements:

    + + + + + + + + + + + + +
    Dfpu= Description
    NO_FPU Hardware Floating Point Unit not present
    FPU Hardware Floating Point Unit present
    SP_FPU Single Precision Hardware Floating Point Unit present
    DP_FPU Double Precision Hardware Floating Point Unit present
    +

     

    +

    Table: Device MPU

    +

    The table shows predefined values that identify whether a CPU has an Memory Protection Unit (MPU). The values can be used in the elements:

    + + + + + + + + +
    Dmpu= Description
    MPU Memory Protection Unit is present
    NO_MPU No Memory Protection Unit is present
    +

     

    +

    Table: Endianness

    +

    The table lists values representing the endianness of a device. The values can be used in the elements:

    + + + + + + + + + + +
    Dendian= Description
    Little-endian The least significant byte of a multi-byte access is located at the specified address.
    Big-endian The most significant byte of a multi-byte access is located at the specified address.
    Configurable The byte ordering of multi-byte accesses is configurable.
    +

     

    +
    +

    +/package/devices/family/.../debugconfig

    +

    Default debugger configuration for a target connection.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <debugconfig default="jtag" clock="10000000" swj="1"/>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    default Specifies the default debug protocol to use for target connections. Predefined tokens must be used as defined in Table: Debug Protocol Type. Default value is swd. DebugProtocolEnum optional
    clock Specifies the default debug clock setting in Hz for a target connection. Default value is 10000000. xs:unsignedInt optional
    swj The device is accessed via a CoreSight SWJ-DP capable of switching between Serial Wire Debug (SWD) and JTAG protocols. Default value is true. xs:bool optional
    +

     

    +

    Table: Debug Protocol Type

    +

    The table lists the values for debug protocol types.

    + + + + + + + + + +
    type= Description
    jtag JTAG debug protocol.
    swd ARM Serial Wire Debug (SWD) protocol.
    cjtag CJTAG concurrent jtag debug protocol.
    +

     

    +
    +

    +/package/devices/family/.../debugvars

    +

    Specify global debug access variables. Use these in addition to the pre-defined variables in order to query settings from a debug access sequences.
    +
    + Define debug access variables with statements of the following form.

    +
    __var uservar = value; // Comment: Define "uservar" and initialize to "value"
    +
    Note
      +
    • Initialization values must be constant unsigned numbers. No expressions are allowed.
    • +
    • User-defined debug access variables are read-only in a debug access sequence.
    • +
    • Pre-defined debug access variables cannot be set in this element.
    • +
    +
    +

    Example

    +
    <family Dfamily="EFM32WG Series" Dvendor="Energy Micro:97">
    +
    ...
    +
    <debugvars configfile="Debug/EFM32WGxxx.dbgconf" version="1.0">
    +
    +
    __var __TPIU_pinlocation = 0; // Select one of four possible TPIU pin locations
    +
    +
    __var __SWO_pinlocation = 0; // Select one of four possible SWO pin locations
    +
    +
    </debugvars>
    +
    ...
    +
    <sequences>
    +
    <sequence name="TraceStart">
    +
    ...
    +
    <block if="__TPIU_pinlocation == 2">
    +
    ...
    +
    <!-- Configure device to use pins as defined for TPIU pin location 2 -->
    +
    ...
    +
    </block>
    +
    ...
    +
    </sequence>
    +
    </sequences>
    +
    ...
    +
    <debug __dp="0" __ap="0"/>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    configfile Configuration file with path relative to the package base folder (extension *.DBGCONF). This file contains assignments of a default value to global debug access variables. This file gets copied to the project folder and is editable by the end-user. This file is read by the debugger after processing the global debug access variables. By editing the values of the debug access variables, the end-user effectively controls the behavior of sequences. The file can only assign new values but must not specify any new debug access variables. Configuration Wizard Annotations shall be used within the file to provide a graphical user interface for editing configuration options. xs:string optional
    version Version refers to the file version of the configfile attribute. If a configfile is specified the version attribute becomes mandatory. The version shall be incremented if any changes have been made to the global debug access variable names or default values. Based on the version information the tool environment will load a configfile with the version required by the debug description. The end-user may be required to update the settings after updating to a new version. VersionType optional
    Pname Reference to a processor identifier as specified for a processor element. If Pname is set for this debugvars element, the debug access variables and configfile of this element are only valid for a debug connection to the referenced processor. Otherwise, they are valid for all processors. This attribute must be set if defining multiple debugvars sections for a device. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    +

     

    +

    Example: Configuration File

    +
    // File: EFM32WGxxx.dbgconf
    +
    // Version: 1.0
    +
    // <<< Use Configuration Wizard in Context Menu >>>
    +
    // <h>Trace Pin Setup
    +
    // <o> TPIU Pin Location
    +
    // <0=> Pin Location 0
    +
    // <1=> Pin Location 1
    +
    // <2=> Pin Location 2
    +
    // <3=> Pin Location 3
    +
    // <i> Select TPIU pin location for your board configuration:
    +
    // <i> - Pin Location 0 (TRACECLK: PD7, TRACEDATA0: PD6, TRACEDATA1: PD3, TRACEDATA2: PD4, TRACEDATA3: PD5)
    +
    // <i> - Pin Location 1 (TRACECLK: PF8, TRACEDATA0: PF9, TRACEDATA1: PD13, TRACEDATA2: PB15, TRACEDATA3: PF3)
    +
    // <i> - Pin Location 2 (TRACECLK: PC6, TRACEDATA0: PC7, TRACEDATA1: PD3, TRACEDATA2: PD4, TRACEDATA3: PD5)
    +
    // <i> - Pin Location 3 (TRACECLK: PA6, TRACEDATA0: PA2, TRACEDATA1: PA3, TRACEDATA2: PA4, TRACEDATA3: PA5)
    +
    // <i> Default: Pin Location 0
    +
    __TPIU_pinlocation = 0;
    +
    +
    // <o> SWO Pin Location
    +
    // <0=> Pin Location 0
    +
    // <1=> Pin Location 1
    +
    // <2=> Pin Location 2
    +
    // <3=> Pin Location 3
    +
    // <i> Select SWO pin location for your board configuration:
    +
    // <i> - Pin Location 0 (SWO: PF2)
    +
    // <i> - Pin Location 1 (SWO: PC15)
    +
    // <i> - Pin Location 2 (SWO: PD1)
    +
    // <i> - Pin Location 3 (SWO: PD2)
    +
    // <i> Default: Pin Location 0
    +
    __SWO_pinlocation = 0;
    +
    +
    // </h>
    +
    // <<< end of configuration section >>>
    +

     

    +

    Debug Access Variables

    +

    Debug access variables hold 64-bit unsigned integer values and are used in debug access sequences to query debugger settings and states. They are read-only within a sequence except from a limited set of the pre-defined debug access variables. Use the debugvars element to specify additional user-defined debug access variables.

    +

    Table: Pre-defined Debug Access Variables
    + A debugger needs to support a set of pre-defined debug access variables. These are described in the following table.

    + + + + + + + + + + + + + + + +
    Variable Access Description Value=
    __protocol
    Read-Only Debug protocol selection and parameters for target connection. The following bit map applies:
    +
      +
    • Bit 0..15: Type
        +
      • 0: Error
        +
      • +
      • 1: JTAG
        +
      • +
      • 2: Serial Wire Debug (SWD)
        +
      • +
      • 3: CJTAG
        +
      • +
      +
    • +
    • Bit 16: SWJ-DP
    • +
    • Bit 17..63: Reserved
    • +
    +
    __connection
    Read-Only Target connection configuration. The following bit map applies:
    +
      +
    • Bit 0..7: Connection type
        +
      • 0: Error or target is disconnected.
      • +
      • 1: Connection for target debug.
      • +
      • 2: Connection for downloading application to flash.
      • +
      +
    • +
    • Bit 8..15: Reset type.
        +
      • 0: Error.
      • +
      • 1: Hardware Reset (debugger reset line).
      • +
      • 2: System Reset Request.
      • +
      • 3: Processor Reset Request ("Vector Reset").
      • +
      +
    • +
    • Bit 16..63: Reserved
    • +
    +
    __dp
    Read/Write Debug Port selected for target accesses.
    + This variable is initialized when entering a pre-defined debug access sequence because of a debug event. The initialization value is the __dp as defined for the used debug element.
    Debug port ID as specified in a debugport element or 0 if no debugport element exists.
    __ap
    Read/Write Access Port selected for target accesses.
    + This variable is initialized when entering a pre-defined debug access sequence because of a debug event. The initialization value is the __ap as defined for the used debug element.
    Access Port index.
    __traceout
    Read-Only Activated trace outputs (sinks). Additionally holds information on the selected port width if a parallel trace port is enabled. The following bit map applies:
    +
      +
    • Bit 0: Serial Wire Output (SWO) Trace enabled.
    • +
    • Bit 1: Parallel Trace Port enabled.
    • +
    • Bit 2: Trace Buffer enabled.
    • +
    • Bit 3..15: Reserved.
    • +
    • Bit 16..21: Selected Parallel Trace Port size.
    • +
    • Bit 22..63: Reserved.
    • +
    +
    __errorcontrol
    Read/Write Control variable for debug access error handling. All of its bit fields are intialized to 0 when entering a pre-defined debug access sequence because of a debug event. The following bit map applies:
    +
      +
    • Bit 0: Skip errors if set to 1. A debugger must continue the sequence execution.
    • +
    • Bit 1..63: Reserved
    • +
    +
    +

     

    +
    +

    +/package/devices/family/.../debugport

    +

    Describes a CoreSight debug port of the device and its capabilities. The element can occur on various levels. Use unique ID values for the attribute __dp to distinguish multiple debugport elements in later references.
    +
    + debugport elements are required for targets with multiple debug ports. For devices with a single debug port these elements can be omitted. If no debugport element exists the only allowed __dp ID in later references is 0.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <debugconfig default="jtag" clock="10000000" swj="1"/>
    +
    +
    <debugport __dp="0">
    +
    <jtag tapindex="0"/>
    +
    <swd/>
    +
    </debugport>
    +
    +
    <debugport __dp="1">
    +
    <jtag tapindex="1"/>
    +
    </debugport>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    __dp Unique ID of this debugport. It must be used consistently in references within the scope of the parent section. xs:unsignedInt required
    Child Elements Description Type Occurrence
    jtag Describe JTAG Test Access Port (TAP) properties of this debug port. JtagType 0..1
    swd Describe CoreSight Serial Wire Debug Port (SW-DP) properties of this debug port. SwdType 0..1
    cjtag Describe CJTAG Test Access Port (TAP) properties of this debug port. CjtagType 0..1
    +

     

    +
    +

    +/package/devices/family/.../debugport/jtag

    +

    Indicates availability of a JTAG interface for the debugport parent element. Its attributes allow the manual override of a debugger's automatic JTAG Test Access Port (TAP) detection.

    +

    Example

    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <debugconfig default="swd" clock="10000000" swj="1"/>
    +
    +
    <debugport __dp="0">
    +
    <jtag tapindex="0" idcode="0x4BA00477" irlen="4"/>
    +
    <swd idcode="0x2BA01477"/>
    +
    </debugport>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + +
    Parents Element Chain
    debugport /package/devices/family/.../debugport
    Attributes Description Type Use
    tapindex Specifies the TAP index relative to the JTAG scan chain of this device. A debugger needs to determine the absolute index if the device is part of an extended scan chain. Default value is 0. NonNegativeInteger optional
    idcode Specifies the IDCODE of the JTAG TAP. This value overrides the IDCODE read from the target. NonNegativeInteger

    optional

    +

    +
    irlen Specifies the instruction register length of the JTAG TAP. This value overrides the instruction register length detected by a debugger. xs:unsignedInt optional
    +

     

    +
    +

    +/package/devices/family/.../debugport/swd

    +

    Indicates availability of an ARM Serial Wire Debug (SWD) interface for the debugport parent element. Its attributes allow the manual override of SWD port characteristics as read from the target and provide information for the port selection in a system with multi-drop SWD support.

    +

    Example

    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <debugconfig default="swd" clock="10000000" swj="1"/>
    +
    +
    <debugport __dp="0">
    +
    <jtag tapindex="0" idcode="0x4BA00477" irlen="4"/>
    +
    <swd idcode="0x2BA01477"/>
    +
    </debugport>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + +
    Parents Element Chain
    debugport /package/devices/family/.../debugport
    Attributes Description Type Use
    idcode Specifies the IDCODE of the SWD port. It overrides the value read from the port's IDCODE register. NonNegativeInteger

    optional

    +

    +
    +

     

    +
    +

    +/package/devices/family/.../debugport/cjtag

    +

    Indicates availability of a CJTAG interface for the debugport parent element. Its attributes allow the manual override of a debugger's automatic CJTAG Test Access Port (TAP) detection.

    +

    Example

    +
    <family Dfamily="STM32F4" Dvendor="STMicroelectronics:13">
    +
    ...
    +
    <debugconfig default="swd" clock="10000000" swj="1"/>
    +
    +
    <debugport __dp="0">
    +
    <cjtag tapindex="0" idcode="0x4BA00477" irlen="4"/>
    +
    <swd idcode="0x2BA01477"/>
    +
    </debugport>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + +
    Parents Element Chain
    debugport /package/devices/family/.../debugport
    Attributes Description Type Use
    tapindex Specifies the TAP index relative to the JTAG scan chain of this device. A debugger needs to determine the absolute index if the device is part of an extended scan chain. Default value is 0. NonNegativeInteger optional
    idcode Specifies the IDCODE of the JTAG TAP. This value overrides the IDCODE read from the target. NonNegativeInteger optional
    irlen Specifies the instruction register length of the JTAG TAP. This value overrides the instruction register length detected by a debugger. xs:unsignedInt optional
    +

     

    +
    +

    +/package/devices/family/.../sequences

    +

    Container for debug access sequences for this device.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <sequences>
    +
    ...
    +
    <sequence name="DebugCoreStart" Pname="Cortex-M0">
    +
    ...
    +
    </sequence>
    +
    ...
    +
    <sequence name="ResetSystem" Pname="Cortex-M4">
    +
    ...
    +
    </sequence>
    +
    ...
    +
    <sequence name="TraceStart" Pname="Cortex-M4">
    +
    ...
    +
    </sequence>
    +
    ...
    +
    </sequences>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Child Elements Description Type Occurrence
    sequence Describe a debug access sequence. SequenceType 1..*
    +

     

    +
    +

    +/package/devices/family/.../sequences/sequence

    +

    Describes a Debug Access Sequence which contains control and block elements. block elements contains statements including calls to Debug Access Functions. A Debug Access Sequence overrides or extends the default functionality of a development tool. Refer to Usage of Debug Access Sequences for details.
    +

    +
    Note
      +
    • control elements can contain other control and block elements. The maximum nesting of control elements is 10.
    • +
    +
    +

    Example

    +
    <family Dfamily="Generic Family" Dvendor="Generic:5">
    +
    ...
    +
    <sequences>
    +
    ...
    +
    <sequence name="UserSequence">
    +
    +
    <block info="Define variables and do debug accesses">
    +
    __var tpWidth = (__traceout &amp; 0x003F0000) >> 16;
    +
    ...
    +
    </block>
    +
    +
    <control if="__traceout &amp; 0x2" info="Parallel Trace Port enabled">
    +
    +
    <block>
    +
    // Do something generic for parallel trace port trace
    +
    ...
    +
    </block>
    +
    +
    <control if="tpWidth == 1" info="Configure device for 1-bit TPIU trace.">
    +
    +
    <block>
    +
    // Do debug accesses
    +
    ...
    +
    </block>
    +
    +
    </control>
    +
    +
    <control if="tpWidth == 2" info="Configure device for 2-bit TPIU trace.">
    +
    +
    <block>
    +
    // Do debug accesses
    +
    ...
    +
    </block>
    +
    +
    </control>
    +
    +
    <control if="tpWidth == 4" info="Configure device for 4-bit TPIU trace.">
    +
    +
    <block>
    +
    // Do debug accesses
    +
    ...
    +
    </block>
    +
    +
    </control>
    +
    +
    </control>
    +
    ...
    +
    </sequence>
    +
    ...
    +
    </sequences>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    sequences /package/devices/family/.../sequences
    Attributes Description Type Use
    name Name of the Debug Access Sequence:
    + +
    xs:string required
    Pname Reference to a processor identifier as specified for a processor element. If Pname is set for this sequence element, a debugger executes the debug access sequence only for a debug connection to the referenced processor. Otherwise, it is executed for all processors. This attribute must be set if defining multiple implementations of the same debug access sequence. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    disable Disables execution of the Default Debug Access Sequence. xs:boolean optional
    info Descriptive text to display for example for error diagnostics. xs:string optional
    Child Elements Description Type Occurrence
    control Describe a debug access sequence flow control element. SequenceControlType 0..*
    block Describe a block of debug accesses. SequenceBlockType 0..*
    +

     

    +

    Table: Pre-defined Debug Access Sequences

    +

    The following table list the Pre-defined Debug Access Sequences. For sequences that are not specified in a sequence element Default Debug Access Sequences are executed. Refer to Usage of Debug Access Sequences Usage for more information about the execution of these sequences.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    name= Description
    DebugPortSetup Prepare the target debug port for connection; is executed before acquiring access to the debug port.
    + May include for example an SWJ-DP switch sequence as defined in the ARM Debug Interface (ADI) Architecture Specification.
    + This sequence must not contain debug port/access port register and target memory accesses other than:
      +
    • Reading the DPIDR debug port register to release an SWD connection from its line reset.
    • +
    • Writing the TARGETSEL debug port register (SWD protocol v2).
    • +
    +
    DebugPortStart Connect to the target debug port and power it up; is executed after DebugPortSetup.
    + The parent debugport is default debug port for this sequence.
    + This sequence must not contain access port register and target memory accesses.
    DebugPortStop Power down and disconnect from target debug port.
    + Executed as last step during target disconnect unless another debugger connection to this port is active. The parent debugport is default debug port for this sequence.
    + This sequence must not contain access port register and target memory accesses.
    DebugDeviceUnlock Check if the device is in a locked state and unlock it. Use query command elements for user confirmation.
    + Executed after having powered up the debug port.
    DebugCoreStart Initialize core debug system.
    + Executed after having connected and powered up the default debug port for the connection.
    DebugCoreStop Uninitialize core debug system.
    + Executed as last step during disconnect before powering down any debug ports no longer required for concurrent connections.
    DebugCodeMemRemap Remap memory to execution location.
    + Executed before verifying memory content after flash programming. This is required to replicate a memory remap of a device bootloader (that is not executed during debug connection).
    ResetSystem Execute a system-wide reset via software mechanisms.
    ResetProcessor Execute a processor reset via software mechanisms.
    ResetHardware Execute a system-wide reset via the dedicated debugger reset line, e.g. nRST.
    ResetHardwareAssert Assert a system-wide reset via the dedicated debugger reset line, e.g. nRST.
    ResetHardwareDeassert Deassert a system-wide reset via the dedicated debugger reset line, e.g. nRST.
    ResetCatchSet Executed before a target reset to configure the vector catch to stop code execution after the reset.
    + The implementation of ResetCatchSet requires an implementation of ResetCatchClear to free any hardware resources used for stopping the core.
    ResetCatchClear Executed after a target reset to free hardware resources allocated by ResetCatchSet.
    FlashEraseDone Executed after erasing flash memory.
    FlashProgramDone Eexecuted after programming flash memory.
    TraceStart Enable target trace capture.
    + Executed before the debugger powers up and configures standard CoreSight trace components, e.g. after the initial target connection as well as after a system-wide reset.
    TraceStop Disable target trace capture.
    + Executed after the debugger disabled and powered down standard CoreSight trace components.
    RecoverySupportStart Executed before step or run command to support recovery from a lost target connection, e.g. after a low power mode.
    RecoverySupportStop Executed after step or run command in context of the RecoverySupportStart sequence.
    RecoveryAcknowledge Debugger acknowledge after recovering from a lost target connection. Can be executed independently from a RecoverySupportStart sequence.
    +

     

    +
    +

    +/package/devices/family/.../sequences/sequence/control

    +

    Describes flow control like if and while blocks for debug access sequences.

    +

    Example

    +
    <family Dfamily="Generic Family" Dvendor="Generic:5">
    +
    ...
    +
    <sequences>
    +
    ...
    +
    <sequence name="UserSequence">
    +
    ...
    +
    <block info="Define variables and do debug accesses">
    +
    __var doIfBlock = 1;
    +
    __var whileCondition = 1;
    +
    ...
    +
    </block>
    +
    ...
    +
    <control if="doIfBlock">
    +
    +
    <block>
    +
    // Do debug accesses
    +
    ...
    +
    </block>
    +
    +
    </control>
    +
    ...
    +
    <control while="whileCondition" timeout="5000">
    +
    +
    <block>
    +
    // Execute while "whileCondition" different from '0' with a timeout of 5ms
    +
    whileCondition = 0;
    +
    </block>
    +
    +
    </control>
    +
    ...
    +
    </sequence>
    +
    ...
    +
    </sequences>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    sequence /package/devices/family/.../sequences/sequence
    control /package/devices/family/.../sequences/sequence/control
    Attribute Description Type Use
    if Expression describing the condition under which to execute this sequence block. The block is skipped if the condition resolved to false. Defaults to true if not set. Refer to Expression Rules for the syntax. ExpressionType optional
    while Expression describing a while-condition. The execution of the block contents is repeated while the condition resolves to true, or until an optional timeout is reached. Refer to Expression Rules for the syntax. ExpressionType optional
    timeout Timeout in microseconds for a block with a while condition. A debugger must extend the timeout to the closest possible time granularity. If the timeout is reached, the current iteration including a last evaluation of the while condition must finish. A value of 0 disables the timeout.
    + This attribute defaults to 0.
    xs:unsignedInt optional
    info Descriptive text to display for example for error diagnostics. xs:string optional
    Child Elements Description Type Occurrence
    control Describe a debug access sequence flow control element. SequenceControlType 0..*
    block Describe a block of debug accesses. SequenceBlockType 0..*
    +

     

    +
    +

    +/package/devices/family/.../sequences/sequence/block

    +

    Describes a block of debug accesses. See Debug Access Syntax Rules for details on the allowed syntax of the block contents.

    +

    Example

    +
    <family Dfamily="Generic Family" Dvendor="Generic:5">
    +
    ...
    +
    <sequences>
    +
    ...
    +
    <sequence name="UserSequence">
    +
    ...
    +
    <block info="Define condition variales for later use in block elements.">
    +
    // Variable definition by __var keyword
    +
    __var doIfBlock = 1;
    +
    __var whileCondition = 1;
    +
    </block>
    +
    ...
    +
    </sequence>
    +
    ...
    +
    </sequences>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + +
    Parents Element Chain
    sequence /package/devices/family/.../sequences/sequence
    control /package/devices/family/.../sequences/sequence/control
    Attribute Description Type Use
    atomic Instruct the debugger to execute the block contents atomically; a debugger needs to download and buffer all debug accesses to the debug probe and finish the execution without further communication to the host PC. If a debugger cannot support an atomic block it must abort the execution of the debug access sequence.
    +
    xs:boolean optional
    info Descriptive text to display for example for error diagnostics. xs:string optional
    +

    Atomic Blocks:

    +
      +
    • Do not use debug access results for subsequent accesses in the same atomic block.
    • +
    • Support for atomic blocks is highly debugger dependent. Keep them as short and simple as possible to address a wide range of debuggers.
    • +
    • Query and Sequence debug access functions must not be used in an atomic block.
    • +
    +

     

    +

    Debug Access Syntax Rules

    +

    Debug accesses are described in block elements of a debug access sequence (sequence element). The following syntax is used for this purpose:

    +
      +
    • The contents of a block element is a series of statements.
    • +
    • Each statement must begin in a new line and is terminated by a ; character.
    • +
    • A typical statement consists of variable, followed by a = character and an expression, where the = character is an assignment of the expression result to the variable:
      variable = expression;
      +
    • +
    • Alternatively, a statement can be a sole expression without storing its result to a variable.
      expression;
      +
    • +
    • Comments begin with two slashes (//) and end with a linebreak:
      // Whole line is a comment
      +
      variable = expression; // Comment appended to statement
      +
    • +
    • Variables must be defined using the keyword __var. The definition must include an initalization of the variable:
      __var variable = 0;
      +
    • +
    • Variables can be defined only once within a scope. Scopes beging with entering a debug access sequence or a control element. They are extended to child control elements. Variables of a parent scope can be modified. Leaving a scope destroys all variables defined in it.
      + block elements do not begin a new scope.
      <sequence name="MySequence">
      +
      +
      <block info="Block 1">
      +
      __var condvar = 1;
      +
      __var myvar1 = 5;
      +
      __var myvar2 = 0;
      +
      </block>
      +
      +
      <control if="condvar">
      +
      <block>
      +
      // __var myvar1 = 2; // Redefinition, not allowed!
      +
      __var myvar3 = 2;
      +
      myvar2 = myvar1 + myvar3; // Assign value (5+2) = 7
      +
      </block>
      +
      </control>
      +
      +
      <block info="Block 2">
      +
      myvar1 = myvar2 + 1; // Variable myvar1 holds the value '8' after this statement
      +
      // myvar2 = myvar3; // myvar3 does not exist in this scope, not allowed!
      +
      </block>
      +
      +
      </sequence>
      +
    • +
    • The debug access variables __dp, __ap, and __errorcontrol can be modified within a debug access sequence. An assigned value is held until leaving the sequence. Calling another sequence by the Sequence debug access function will push their values on a sequence execution stack. The values are restored when returning from such a call.
    • +
    +

    Expression Rules

    +

    Expressions are used in various places to describe one of the following:

    +
      +
    • A value as assigned in a debug access statement.
    • +
    • A condition to use in the if attribute of a control element.
    • +
    • A condition to use in the while attribute of a control element.
    • +
    • A parameter to a debug access function as described below.
    • +
    +

    An expression may consist of the following:

    +
      +
    • Constant numbers in decimal and hexadecimal representation (prefix 0x).
    • +
    • Arithmetic operators such as +, -, *, /, and %.
    • +
    • Bit-arithmetic operators such as &, |, ~, ^, >>, and <<.
    • +
    • Comparison-operators such as ==, !=, <, >, <=, and >=.
    • +
    • Logic operators such as !, &&, ||, and ==.
    • +
    • Conditional expression operations like:
      (x < y) ? a : b
      +
    • +
    • Precedence of sub-expressions is indicated by brackets ((, )). C-like precedence applies if brackets are omitted.
    • +
    • References to debug access variables for evaluating debug settings.
    • +
    • Calls to debug access functions.
    • +
    +
    Note
      +
    • All values used in expressions resolve to 64-bit unsigned integer values.
    • +
    • All logic-operations and comparisons resolve to the value 1 if true, to 0 otherwise.
    • +
    • XML prohibits the use of the characters &, <, and >. Use the corresponding XML entity names instead: &amp;, &lt;, and &gt;.
    • +
    +
    +

     

    +

    Table: Debug Access Functions

    +

    Debug access functions can be called in expressions in order to interact with the target device and the user. Parameters to functions can again be expressions.
    + By default, a debugger must abort the execution of a debug access sequence if a function call fails. However, this behavior can be controlled from a sequence by the __errorcontrol debug access variable.
    +
    + The following table describes the existing debug access functions, their parameters and the debug access variables which are evaluated for the function call.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Function Description
    Sequence("name")

    Execute a debug access sequence. Calling a sequence by this function causes the modifiable debug access variables __dp, __ap, and __errorcontrol to be pushed on a sequence execution stack. Returning from such a call will restore the state of these variables.
    +
    + Parameters:
    +

    +
      +
    • name: Name of the sequence to execute. It must be enclosed by quotes.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    Read8(addr)

    Read an 8-bit value from target memory. A device must support native 8-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to read from.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + The 8-bit value as read from target memory.

    +
    Read16(addr)

    Read an 16-bit value from target memory. A device must support native 16-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to read from.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + The 16-bit value as read from target memory.

    +
    Read32(addr)

    Read an 32-bit value from target memory. A device must support native 32-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to read from.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + The 32-bit value as read from target memory.

    +
    Read64(addr)

    Read an 64-bit value from target memory. A device must support native 64-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to read from.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + The 64-bit value as read from target memory.

    +
    ReadAP(addr)

    Read a 32-bit value from an access port register.
    +
    + Parameters:
    +

    +
      +
    • addr: AP register address to read from. Addresses larger than 0xF automatically cause an AP register bank switch.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + The 32-bit value as read from the AP register.

    +
    ReadDP(addr)

    Read a 32-bit value from a debug port register.
    +
    + Parameters:
    +

    +
      +
    • addr: DP register address to read from.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    +

    Return Value:
    + The 32-bit value as read from the DP register.

    +
    Write8(addr, val)

    Write an 8-bit value to target memory. A device must support native 8-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to write to.
    • +
    • val: Value to write.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    Write16(addr, val)

    Write a 16-bit value to target memory. A device must support native 16-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to write to.
    • +
    • val: Value to write.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    Write32(addr, val)

    Write a 32-bit value to target memory. A device must support native 32-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to write to.
    • +
    • val: Value to write.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    Write64(addr, val)

    Write a 64-bit value to target memory. A device must support native 64-bit memory accesses for this function to succeed.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to write to.
    • +
    • val: Value to write.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    WriteAP(addr, val)

    Write a 32-bit value to an access port register. Addresses larger than 0xF automatically cause an AP register bank switch.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to write to.
    • +
    • val: Value to write.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    • __ap: The access port to use for this memory access.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    WriteDP(addr, val)

    Write a 32-bit value to a debug port register.
    +
    + Parameters:
    +

    +
      +
    • addr: Memory address to write to.
    • +
    • val: Value to write.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    DAP_Delay(delay)

    Debug probe command to wait for a specific delay.
    +
    + Parameters:
    +

    +
      +
    • delay: Wait time in microseconds.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    DAP_WriteABORT(value)

    Debug probe command to write an abort request to the CoreSight ABORT register of the target debug port.
    +
    + Parameters:
    +

    +
      +
    • value: 32-bit value to write into the CoreSight ABORT register.
    • +
    +

    Debug Access Variables:
    +

    +
      +
    • __dp: The debug port to use for this memory access.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    DAP_SWJ_Pins(pinout, pinselect, pinwait)

    Debug proble command to monitor and control the I/O Pins including the nRESET device reset line.
    + I/O Pin Mapping for pinout, pinselect, and pinwait:

    +
      +
    • Bit 0: SWCLK/TCK
    • +
    • Bit 1: SWDIO/TMS
    • +
    • Bit 2: TDI
    • +
    • Bit 3: TDO
    • +
    • Bit 5: nTRST
    • +
    • Bit 7: nRESET
    • +
    +


    + The pinwait time is useful in systems where the nRESET pin is implemented as open-drain output. After nRESET is de-asserted by the debugger, external circuit may still hold the target Device under reset for a time. Using the pinwait time, the debugger may monitor selected I/O Pins and wait until they the expected value appears or a timeout expires.
    +
    + Parameters:
    +

    +
      +
    • pinout: Value for selected output pins.
    • +
    • pinselect: Selects which output pins will be modified.
    • +
    • pinwait: Wait timeout for the selected output to stabilize. A debugger must extend this timeout to the closest possible time granularity.
        +
      • 0 = no wait
      • +
      • 1 .. 3000000 = time in microseconds (max 3s)
      • +
      +
    • +
    +

    Return Value:
    + The state of the I/O Pins at the end of this operation. If a debugger is not capable of monitoring the I/O Pins, it must return a value of 0xFFFFFFFF.

    +
    DAP_SWJ_Clock(val)

    Debug probe command to set the clock frequency for JTAG and SWD communication mode.
    +
    + Parameters:
    +

    +
      +
    • val: Maximum SWD/JTAG Clock (SWCLK/TCK) value in Hz.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    DAP_SWJ_Sequence(cnt, val)

    Debug probe command to generate required SWJ sequences, e.g. for SWD/JTAG Reset, SWD<->JTAG switch and Dormant operation.
    +
    + Parameters:
    +

    +
      +
    • cnt: Number of bits in sequence: 1..64. Larger sequences need to be implemented by multiple subsequent DAP_SWJ_Sequence calls. Such a sequence of DAP_SWJ_Sequence commands must be encapsulated in an atomic block to ensure correct execution.
    • +
    • val: Sequence generated on SWDIO/TMS (with clock @SWCLK/TCK), LSB transmitted first.
    • +
    +

    Return Value:
    + Always returns 0.

    +
    DAP_JTAG_Sequence(cnt, tms, tdi)

    Debug probe command to generate a JTAG sequence with fixed TMS value and capture TDO.
    +
    + Parameters:
    +

    +
      +
    • cnt: Length of the JTAG sequence (number of TCK cycles and TDI bits): 1..64
    • +
    • tms: Fixed TMS value: 0..1
    • +
    • tdi: Data generated on TDI with one bit per TCK cycle, LSB transmitted first.
    • +
    +

    Return Value:
    + Data captured from TDO with one bit per TCK cycle, LSB captured first and padded with 0s.

    +
    Query(type, "message", default)

    Query user input. The sequence execution stalls depending on the used type. If the debugger runs in a batch mode, this function returns the value default.
    +
    + Parameters:
    +

    +
      +
    • type: Query type. Can be one of:
        +
      • 0 : Query_Ok, displays an informative message which has to be confirmed by the user. This type allows the result OK.
      • +
      • 1 : Query_YesNo, displays a query with the allowed results Yes and No.
      • +
      • 2 : Query_YesNoCancel, displays a query with the allowed results Yes, No, and Cancel.
      • +
      • 3 : Query_OkCancel, displays a query with the allowed results OK and Cancel.
      • +
      +
    • +
    • message: A constant string with the query message to display. It must not be an expression and it must be enclosed by quotes.
    • +
    • default: The default value to return if the debugger runs in batch mode. See Return Values for a list of allowed values.
    • +
    +

    Return Value:
    + The result of the query. The user input maps to the following numbers:

    +
      +
    • Error : 0
    • +
    • OK : 1
    • +
    • Cancel : 2
    • +
    • Yes : 3
    • +
    • No : 4
    • +
    +

    +
    +
    Note
      +
    • Target memory access functions must perform a debug access of the size indicated by their name. The target system must support debug accesses of this size.
    • +
    • Results of all functions are casted to 64-bit unsigned integer values.
    • +
    • Some target access functions determine the used debug and access port by the current values of the __dp and __ap debug access variables. If a target access requires a different debug or access port than the default ones, it must change these values. This change is held until finishing the sequence the change has occurred in.
    • +
    +
    +

     

    +
    +

    +/package/devices/family/.../debug

    +

    Describes configuration settings, default values, and patches for data accesses for a debug connection. Multiple debug elements can be defined which are either specific to a processor identified by attribute Pname, or which apply to all connections.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <debug Pname="Cortex-M4" __dp="0" __ap="0" svd="SVD/LPC43xx.svd">
    +
    ...
    +
    </debug>
    +
    ...
    +
    <debug Pname="Cortex-M0" __dp="1" __ap="0" svd="SVD/LPC43xx.svd">
    +
    ...
    +
    </debug>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Reference to a processor identifier as specified for a processor element. If Pname is set this debug element's settings and data patches only apply for target connections to the referenced processor. Otherwise, they apply for all processors. This attribute must be set if defining multiple debug elements within the same section. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    __dp Default debug port ID to use for target accesses in this debug connection. The allowed values are defined in debugport elements for this device. If no debugport element exists, the only allowed value is 0.
    + The debug access variable __dp is initialized to this value when entering a pre-defined debug access sequence because of a debug event.
    + This attribute defaults to 0 if not set.
    xs:unsignedInt optional
    __ap Default access port index to use for target accesses in this debug connection.
    + The debug access variable __ap is initialized to this value when entering a pre-defined debug access sequence because of a debug event.
    + This attribute defaults to 0 if not set.
    xs:unsignedInt optional
    svd The system viewer description (*.SVD) file to load for this debug connection. The file path is relative to the package base folder. xs:string optional
    Child Elements Description Type Occurrence
    datapatch Define a patch to apply for data reads in this debug connection. DataPatchType

    0..*

    +

    +
    +

     

    +
    +

    +/package/devices/family/.../debug/datapatch

    +

    Describes a patch a debugger shall apply when reading data from the device.

    +

    Example

    +
    <family Dfamily="LPC800 Series" Dvendor="NXP:11">
    +
    ...
    +
    <debug svd="SVD\LPC800.svd">
    +
    ...
    +
    <datapatch type="Mem" __ap="0" address="0x1400000C" value="0x10000000" mask="0xFFFFFFFF" info="Patch MTB BASE register"/>
    +
    ...
    +
    </debug>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    debug /package/devices/family/.../debug
    Attributes Description Type Use
    type The type of data access to patch. Predefined tokens must be used as defined in Table: Data Patch Access Type. This attribute defaults to Mem if not set. DataPatchAccessTypeEnum optional
    __dp The debug port ID to apply the patch for. The allowed values are defined by the __dp attribute of debugport elements for this device. If no debugport element exists, the only allowed value is 0. If this attribute is not set, the debug port ID for the data patch is set to the default __dp of this debug section. xs:unsignedInt optional
    __ap The CoreSight access port index to apply the patch for. If this attribute is not set, the access port index for the data patch is set to the default __ap of this debug section. xs:unsignedInt optional
    address The address for which to apply the patch. NonNegativeInteger required
    value The value with which the debugger patches the data access. value is specified in little-endian format. NonNegativeInteger required
    mask The bits of the data access to patch. The mask value is specified in little-endian format. NonNegativeInteger optional
    info Descriptive text to display for example for error diagnostics. xs:string optional
    +

     

    +

    Table: Data Patch Access Type

    +

    The table lists the allowed values for data patch access types.

    + + + + + + + + + +
    type= Description
    DP CoreSight Debug Port register access.
    + Note: This type refers to accesses via the DPACC instruction for CoreSight JTAG-DPs. Please refer to the corresponding documentation for differences in the register interface between JTAG and Serial Wire debug ports.
    AP CoreSight Access Port register access.
    Mem Memory access.
    +

     

    +
    +

    +/package/devices/family/.../trace

    +

    Describes device capabilities and possible configuration settings for capturing trace. Multiple trace elements can be defined which are either specific to a processor identified by attribute Pname, or which apply to all connections.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <trace Pname="Cortex-M4">
    +
    <serialwire/>
    +
    <traceport width="0x0000000B"/> <!-- support for port widths 1, 2, and 4 -->
    +
    <tracebuffer start="0x2000C000" size="0x4000"/>
    +
    </trace>
    +
    ...
    +
    <trace Pname="Cortex-M0">
    +
    <!-- Empty trace section for Cortex-M0, no trace capabilities -->
    +
    </trace>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    family /package/devices/family
    subFamily /package/devices/family/subFamily
    device /package/devices/family/../device
    Attributes Description Type Use
    Pname Reference to a processor identifier as specified for a processor element. If Pname is set this trace section only applies for target connections to the referenced processor. Otherwise, it applies for all processors. This attribute must be set if defining multiple trace elements within the same section. Only alphabetical characters, decimal digits, '-' and '_' are allowed. RestrictedString optional
    Child Elements Description Type Occurrence
    serialwire Describe the serial wire trace output capabilities of the processor. SerialWireType 0..*
    traceport Describe the parallel trace port output capabilities of the processor. TracePortType 0..*
    tracebuffer Describe the on-device trace buffer capabilities of the processor. TraceBufferType 0..*
    +

     

    +
    +

    +/package/devices/family/.../trace/serialwire

    +

    Indicates serial wire trace output capabilities of the specified processor.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <trace Pname="Cortex-M4">
    +
    ...
    +
    <serialwire/>
    +
    ...
    +
    </trace>
    +
    ...
    +
    </family>
    +

     

    + + + + + +
    Parents Element Chain
    trace /package/devices/family/.../trace
    +

     

    +
    +

    +/package/devices/family/.../trace/traceport

    +

    Indicates parallel trace port output capabilities of the specified processor. This element describes possible configuration settings for capturing trace.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <trace Pname="Cortex-M4">
    +
    ...
    +
    <traceport width="0x0000000B"/> <!-- support for port widths 1, 2, and 4 -->
    +
    ...
    +
    </trace>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + +
    Parents Element Chain
    trace /package/devices/family/.../trace
    Attributes Description Type Use
    width Parallel trace port widths supported for the processor connection (see table below). NonNegativeInteger optional
    +

    The attribute width specifies the available trace port width that is supported by the device. Each bit of this value represents an available trace port size. If bit n is set a trace port width of n+1 is supported. The value width=0x00008088 (as shown in the table) indicates that three port sizes (16-bit, 8-bit, and 4-bit) are supported by the device.

    + + + + + + + +
    Bit 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
    width 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
    Value 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0
    +

     

    +
    +

    +/package/devices/family/.../trace/tracebuffer

    +

    Indicates on-device trace buffer capabilities of the specified processor. This element describes possible configuration settings for capturing trace and reading it from the buffer.

    +

    Example

    +
    <family Dfamily="LPC4300 Series" Dvendor="NXP:11">
    +
    ...
    +
    <trace Pname="CoreCM4">
    +
    ...
    +
    <tracebuffer start="0x2000C000" size="0x4000"/>
    +
    ...
    +
    </trace>
    +
    ...
    +
    </family>
    +

     

    + + + + + + + + + + + +
    Parents Element Chain
    trace /package/devices/family/.../trace
    Attributes Description Type Use
    start Start address of the on-chip memory used as trace buffer for a supported configuration. NonNegativeInteger optional
    size Size of the on-chip memory used as trace buffer in bytes for a supported configuration. NonNegativeInteger optional
    +

     

    +
    +

    +/package/devices/family/.../device/variant

    +

    Defines a device variant. The element is optional. Can exist multiple times.

    +

    Example

    +
    <device Dname="STM32F205RB">
    +
    ...
    +
    <variant Dvariant="STM32F205RBT6">
    +
    <book name="doc\STM32F2_RM.PDF" title="STM32F2 Reference Manual"/>
    +
    <description>Use this device as an alternative.</description>
    +
    <feature type="QFP" count="64" name="LQFP 64 10x10x1.4" />
    +
    <feature type="Temp" n="-40" m="85" name="Industrial Temperature Range"/>
    +
    </variant>
    +
    <variant Dvariant="STM32F205RBT7">
    +
    <feature type="QFP" count="64" name="LQFP 64 10x10x1.4" />
    +
    <feature type="Temp" n="-40" m="105" name="Extended Temperature Range"/>
    +
    </variant>
    +
    ...
    +
    </device>
    +

     

    + + + + + + + + + + + + + + + + + +
    Parents Element Chain
    device /package/devices/family/../device
    Attributes Description Type Use
    Dvariant Name of the device variant. Only alphabetical characters, decimal digits, '-' and '_' are allowed RestrictedString required
    Child Elements Description Type Occurrence
    book List books that are specific to this variant. BookType 0..*
    description Device description. DescriptionType 0..*
    feature Define features for this device variant. FeatureType 0..*
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_generators_pg.html b/CMSIS/Documentation/Pack/html/pdsc_generators_pg.html new file mode 100644 index 0000000..18f9a17 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_generators_pg.html @@ -0,0 +1,442 @@ + + + + + +/package/generators element +CMSIS-Pack: /package/generators element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package/generators element
    +
    +
    +

    The element /package/generators/generator specifies a tool or utility that is used to generate and/or configure software (source code, header files, configuration files, etc.) in the context of a project. For this purpose, a generator package description file (GPDSC) needs to be created (see <gpdsc>). The GPDSC file details the selected device, components, project files and conditions, as well as information about the generator and how it can be launched again for iterative development cycles. A GPDSC file follows the same schema as a static PACK. However, the files generated by the utility are not installed and managed centrally in the PACK folder, but locally within the project folder.

    +

    A generator can be associated with a component by it's name. Selecting the component will automatically include the files provided by the generator in the project. If the specified GPDSC file is not present, the generator command is executed by the environment to generate the files and GPDSC. In this way project specific configurations can be made, files being generated and included and maintained as part of the project.

    +

    Example Generator Section

    +
    <generators>
    +
    <generator id="STM32CubeMX" Gvendor="STMicroelectronics" Gtool="STM32CubeMX" Gversion="4.10.0">
    +
    <description>STM32CubeMX Environment</description>
    +
    <select Dname="STM32F746NGHx" Dvendor="STMicroelectronics:13"/>
    +
    <command>$SMDK/CubeMX/STM32CubeMXLauncher</command>
    +
    <workingDir>$PRTE/Device/STM32F746NGHx</workingDir>
    +
    <project_files>
    +
    <file category="source" name="STCubeGenerated/Src/main.c" />
    +
    <file category="header" name="STCubeGenerated/Inc/stm32f7xx_it.h"/>
    +
    <file category="source" name="STCubeGenerated/Src/stm32f7xx_it.c"/>
    +
    </project_files>
    +
    </generator>
    +
    </generators>
    +

    Example Generator Package Description File (gpdsc)

    +
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    +
    <!-- ******************************************************************************
    +
    File Name : FrameworkCubeMX.gpdsc
    +
    Date : 02/09/2015 14:27:06
    +
    Description : Generator PDSC File generated by STM32CubeMX (DO NOT EDIT!)
    +
    -->
    +
    +
    <package xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="1.0" xs:noNamespaceSchemaLocation="PACK.xsd">
    +
    <vendor>Keil</vendor>
    +
    <name>FrameworkCubeMX</name>
    +
    <description>STM32CubeMX generated pack description</description>
    +
    <url>project-path</url>
    +
    <releases>
    +
    <release version="1.0.0">
    +
    - Generated: 02/09/2015 14:27:06
    +
    </release>
    +
    </releases>
    +
    <generators>
    +
    <generator id="STM32CubeMX" Gvendor="STMicroelectronics" Gtool="STM32CubeMX" Gversion="4.10.0">
    +
    <description>STM32CubeMX Environment</description>
    +
    <select Dname="STM32F746NGHx" Dvendor="STMicroelectronics:13"/>
    +
    <command>$SMDK/CubeMX/STM32CubeMXLauncher</command>
    +
    <workingDir>$PRTE/Device/STM32F746NGHx</workingDir>
    +
    <project_files>
    +
    <file category="source" name="STCubeGenerated/Src/main.c" />
    +
    <file category="header" name="STCubeGenerated/Inc/stm32f7xx_it.h"/>
    +
    <file category="source" name="STCubeGenerated/Src/stm32f7xx_it.c"/>
    +
    </project_files>
    +
    </generator>
    +
    </generators>
    +
    <taxonomy>
    +
    <description Cclass="Device" Cgroup="STM32Cube Framework" generator="STM32CubeMX">STM32Cube Framework</description>
    +
    </taxonomy>
    +
    <conditions>
    +
    <condition id="STCubeMX">
    +
    <description>Condition to include CMSIS core and Device Startup components</description>
    +
    <require Dvendor="STMicroelectronics:13" Dname="STM32F7*"/>
    +
    <require Cclass="CMSIS" Cgroup="CORE" Csub=""/>
    +
    <require Cclass="Device" Cgroup="Startup"/>
    +
    <require Cclass="Device" Cgroup="STM32Cube HAL" Csub="Common"/>
    +
    <require Cclass="Device" Cgroup="STM32Cube HAL" Csub="GPIO"/>
    +
    </condition>
    +
    </conditions>
    +
    <components>
    +
    <component generator="STM32CubeMX" Cvendor="Keil" Cclass="Device" Cgroup="STM32Cube Framework" Csub="STM32CubeMX" Cversion="1.0.0" condition="STCubeMX">
    +
    <description>Configuration via STM32CubeMX</description>
    +
    <RTE_Components_h>
    +
    #define RTE_DEVICE_FRAMEWORK_CUBE_MX
    +
    </RTE_Components_h>
    +
    <files>
    +
    <file category="header" name="MX_Device.h"/>
    +
    <file category="header" name="STCubeGenerated/Inc/stm32f7xx_hal_conf.h"/>
    +
    <file category="source" name="STCubeGenerated/Src/stm32f7xx_hal_msp.c"/>
    +
    </files>
    +
    </component>
    +
    </components>
    +
    </package>
    +

     

    +
    +

    +/package/generators

    +

    Grouping element for generators. Only one such group can exist in a PACK.

    + + + + + + + + + +
    Parent Chain
    package /package
    Child Elements Description Type Occurrence
    generator Description of the generator and the related files GeneratorType 1..*
    +

    The following variables can be used in the elements <command>, <workingDir>, <argument>, <gpdsc>:

    + + + + + + + + + + + +
    Variable Description
    $P PATH to current project
    #P PATH and name of the current project
    $S PATH to PACK folder containing the Device description used by the current project
    $D Name of the device configured in the current project
    +

     

    +
    +

    +/package/generators/generator

    +

    The generator section is used to provide the details about the tool that has been used to create the GPDSC file. At least one generator element must exist.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parent Chain
    generators /package/generators
    Attributes Description Type Use
    id Identifier of the generator tool. Can be used by other elements to determine the generator. xs:string required
    Gvendor Vendor name of the generator tool. xs:string optional
    Gtool Plain text name of the generator. xs:string optional
    Gversion Version of the generator tool. xs:string optional
    Child Elements Description Type Occurrence
    description Briefly describes the generator tool. xs:string 0..1
    select Complex type specifying the configured device. A device is uniquely identified by vendor, name or variant and processor name in case of devices with multiple processors. GeneratorSelectType 0..1
    workingDir Directory to be set as current directory before launching the <command>. This is either an absolute or relative path to PDSC or GPDSC file. If not specified, the current directory is the directory of the project configured by the environment. xs:string 0..1
    command Invocation command for the generator tool (for an example see top of the page). Command line options should be passed via arguments. xs:string 0..1
    arguments Section for command line arguments of the format <argument switch="-data">myFileName</argument>. Path information for files can be specified absolute or relative to the location (path) of the GPDSC file. GeneratorCommandArgumentsType 0..1
    gpdsc Path and name of the GPDSC that the generator creates and updates. The path is either absolute or relative to the working directory. If no explicit gpdsc file is provided a gpdsc file named after the project with extension gpdsc in the working directory is assumed (<project>.gpdsc). xs:string 0..1
    project_files Grouping element for all project files generated by the tool. group 0..1
    files Grouping element for generator tool files. group 0..1
    extensions Generator vendor specific section ignored by other tools N/A 0..1
    +

     

    +
    +

    +/package/generators/generator/select

    +

    This element contains information about the vendor and device the GPDSC file has been generated for. Only one such element can exist in <generators>.

    +

    Example:

    +
    <generators>
    +
    <generator id="STM32CubeMX" Gvendor="STMicroelectronics" Gtool="STM32CubeMX" Gversion="4.10.0">
    +
    <select Dname="STM32F746NGHx" Dvendor="STMicroelectronics:13"/>
    +
    </generator>
    +
    </generators>
    +

     

    + + + + + + + + + + + + + + + +
    Parent Chain
    generator /package/generators/generator
    Attributes Description Type Use
    Dvendor Vendor name of the targeted device. Use predefined values as listed in the table Device Vendor. DeviceVendorEnum required
    Dname Name of the targeted device. If no Dvariant is specified this tag is required xs:string optional
    Dvariant Name of the targeted device variant. If a variant is specified, the device name will be ignored and the variant rules. If no Dname is specified, this tag is required. xs:string optional
    Pname Name of the targeted processor of a device with multiple processors. For devices with multiple processors this tag is required. xs:string optional
    +

     

    +
    +

    +/package/generators/generator/arguments

    +

    This element contains information about the arguments passed along the <command> string.

    +

    Example:

    +
    <generators>
    +
    <generator id="DAVE3">
    +
    ...
    +
    <command>%DAVE3%/eclipse/DAVE-3.1.6.exe</command>
    +
    <arguments>
    +
    ...
    +
    </arguments>
    +
    </generator>
    +
    </generators>
    +

     

    + + + + + + + + + +
    Parent Chain
    generator /package/generators/generator
    Child Elements Description Type Occurrence
    argument Arguments passed along with the <command>. GeneratorCommandArgumentType required
    +

     

    +
    +

    +/package/generators/generator/arguments/argument

    +

    This element describes a single command line argument passed along with <command> for launching the generator. The argument is split up in a switch value pair. The switch is passed as an attribute and the value as the element value. Both switch and element values are of type xs:string.

    +

    Example

    +
    <generators>
    +
    <generator id="STM32CubeMX">
    +
    <arguments>
    +
    <argument switch="-data">$PRTE/Device/STM32F746NGHx</argument>
    +
    ...
    +
    </arguments>
    +
    ...
    +
    </generator>
    +
    </generators>
    +

     

    + + + + + + + + + + + + + +
    Parent Element Chain
    arguments /package/generators/generator/arguments
    Current Description Type
    argument value of argument without command line switch xs:string
    Attributes Description Type Use
    switch Specifies the command line switch separated from the argument value. xs:string optional
    +

     

    +
    +

    +/package/generators/generator/project_files

    +

    The group project_files specifies all files that are required for the project setup. Only one such group can exist.

    +

    Example

    +
    <generators>
    +
    <generator id="STM32CubeMX" Gvendor="STMicroelectronics" Gtool="STM32CubeMX" Gversion="4.10.0">
    +
    <description>STM32CubeMX Environment</description>
    +
    <select Dname="STM32F746NGHx" Dvendor="STMicroelectronics:13"/>
    +
    <command>$SMDK/CubeMX/STM32CubeMXLauncher</command>
    +
    <workingDir>$PRTE/Device/STM32F746NGHx</workingDir>
    +
    <project_files>
    +
    <file category="source" name="STCubeGenerated/Src/main.c" />
    +
    <file category="header" name="STCubeGenerated/Inc/stm32f7xx_it.h"/>
    +
    <file category="source" name="STCubeGenerated/Src/stm32f7xx_it.c"/>
    +
    </project_files>
    +
    </generator>
    +
    </generators>
    +

     

    + + + + + + + + + +
    Parent Element Chain
    generator /package/generators/generator
    Child Elements Description Type Occurrence
    file Frame for files created by the generator and used in a project. group 0..1
    +

     

    +
    +

    +/package/generators/generator/files

    +

    The group files specifies files that are required by the generator tool. Only one such group can exist.

    +

    Example

    +
    <generators>
    +
    <generator id="MyGenerator">
    +
    <files>
    +
    ...
    +
    <files>
    +
    </generator>
    +
    </generators>
    +

     

    + + + + + + + + + +
    Parent Element Chain
    generator /package/generators/generator
    Child Elements Description Type Occurrence
    file Frame for files used by the generator. group 0..1
    +

     

    +
    +

    +/package/generators/generator/files/file

    +

    This element contains information about files used by a generator.

    +

    Example

    +
    <generators>
    +
    <generator id="MyGenerator">
    +
    <files>
    +
    <file category="generator" name="Main.c"/>
    +
    <file category="you_name_it" name="database/connection.odbc" version="1.2.3"/>
    +
    ...
    +
    <files>
    +
    </generator>
    +
    </generators>
    +

     

    + + + + + + + + + + + + + + + +
    Parent Element Chain
    files /package/generators/generator/files
    Attributes Description Type Use
    condition Reference using the name of the respective condition specified in the conditions section of this package (/package/conditions). If the condition resolves to false, then the element will be ignored and treated as if not present. xs:string optional
    category Describes the file type (for example: doc, header, library). You can use predefined values as listed in the table File Categories, however, this is not mandatory. xs:string required
    name Can consist of the path (relative to the PACK base directory) and the file name with extension. xs:string required
    version File-specific version information. The version format is described in Version Type. VersionType optional
    +

     

    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/pdsc_package_pg.html b/CMSIS/Documentation/Pack/html/pdsc_package_pg.html new file mode 100644 index 0000000..1f60dc9 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/pdsc_package_pg.html @@ -0,0 +1,263 @@ + + + + + +/package element +CMSIS-Pack: /package element + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-Pack +  Version 1.4.1 +
    +
    Delivery Mechanism for Software Packs
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    /package element
    +
    +
    +

    The basic package information captures the package vendor, the package name, a brief description of the package, and the schema version. Additional elements support the logistics of handling packages. The url specifies the origin of the description. It may be left empty if the pack will not be uploaded onto a web server. A license file might point to license agreements. A list of keywords assists searching for packages.

    +

    Example:

    +
    <package schemaVersion="1.4" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="PACK.xsd">
    +
    <vendor>ExampleVendor</vendor>
    +
    <name>STM32F2xx_DFP</name> <!-- name of package -->
    +
    <description>Device Family Package for STMicroelectronics STM32F2 Family of ARM Cortex-M3 based Microcontroller</description>
    +
    <url></url>
    +
    <supportContact>http://www.arm.com/support</supportContact>
    +
    <license>./END_USER_LICENCE_AGREEMENT.rtf</license>
    +
    <releases>
    +
    <release version="1.0.0" date="2014-12-14">
    +
    First Release version of STM32F2 Device Family Pack.
    +
    </release>
    +
    <release version="0.9.0">
    +
    Beta version of STM32F2 Device Family Pack.
    +
    </release>
    +
    </releases>
    +
    +
    <keywords> <!-- keywords for indexing -->
    +
    <keyword>ST</keyword>
    +
    <keyword>Device Support</keyword>
    +
    <keyword>Device Family Package ST</keyword>
    +
    <keyword>STM32F2</keyword>
    +
    <keyword>STM32F2xx</keyword>
    +
    </keywords>
    +
    +
    <taxonomy> <!-- class and group descriptions -->
    +
    <description Cclass="Board Support">
    +
    Generic Interfaces and Templates for Evaluation and Development Boards
    +
    </description>
    +
    </taxonomy>
    +
    ...
    +
    </package>
    +

     

    +

    +/package

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Parent Element Element Chain
    root Document root
    Attributes Description Type Use
    schemaVersion CMSIS-PDSC schema version used for describing the Software Pack (for example, "1.2"). The version format is described in Version Type. VersionType required
    xmlns:xs Is set to: "http://www.w3.org/2001/XMLSchema-instance" to indicate compliance to the XML format. xs:decimal required
    xs:noNamespaceSchemaLocation Path and file name of the PACK.xsd Schema. For example, "PACK.xsd". xs:string required
    Child Elements Description Type Occurrence
    name Name of the Software Pack. Could be displayed by an installer. xs:string 1..1
    vendor Name of the supplier or vendor of the Software Pack. xs:string 1..1
    description Brief description of the Software Pack. xs:string 1..1
    url HTTP URL or file URI location of the Software Pack. The URL can be used by installers for downloading, updating, or checking versions. If left empty, the Pack cannot be updated automatically from a server location. xs:anyURI 1..1
    supportContact HTTP URL or e-mail address for users to get support for the content of the PACK xs:string 0..1
    license Path to a license document. xs:string 0..1
    releases Version release history with brief information about a Software Pack. ReleasesGroup 1..1
    keywords Defines keywords that might be used to find a Software Pack. Keywords may be also exported to web page to provide information for search engines, such as Google. group 0..1
    generators Specifies generator tools that have been used to create the Software Pack. GeneratorsType 0..1
    devices Defines the device family, the devices, and optionally variants (such as boards). group 0..1
    boards Defines the development board support package. BoardsType 0..1
    taxonomy Contains the description for a component class or for the combination between a component class and component group. TaxonomyType 0..1
    apis Defines the API (Application Programming Interfaces) specifications contained in the Software Pack. ApisType 0..1
    conditions Is a group that contains dependency definitions used within the PACK. These rules can describe dependencies on various levels: device attributes, components, or tools. Conditions are referenced by components and files. ConditionsType 0..1
    examples Lists the examples that are included in the PACK. group 0..1
    components Lists the software components that are included in the PACK. group 0..1
    +

     

    +

    Version Type

    +

    CMSIS-PACK version specification is inspired by the Semantic Versioning 2.0.0. Under this scheme, version numbers and the way they are incremented convey a meaning about the underlying content quality and the significance of changes from one version to the next. A version consists of 3 mandatory and 2 optional sections:

    +
    MAJOR.MINOR.PATCH[-Pre Release][+Build Metadata]
    +
      +
    1. MAJOR: increment MAJOR for backwards incompatible changes
        +
      • non-negative integer
      • +
      • 0 indicates initial development, unstable and anything may change at any time
        ARM.CMSIS.0.9.0.pack < ARM.CMSIS.1.0.0.pack
        +
      • +
      +
    2. +
    3. MINOR: increment MINOR for backwards compatible additions and changes
        +
      • non-negative integer
      • +
      • accepted: – trailing zeros are accepted but effectively ignored for version comparison
        ARM.CMSIS.1.02.0.pack equal to ARM.CMSIS.1.2.0.pack
        +
      • +
      +
    4. +
    5. PATCH: increment PATCH for bug fixes not affecting compatibility
        +
      • non-negative integer
      • +
      • accepted:
          +
        • trailing zeros are accepted but effectively ignored for version comparison
        • +
        • a version ending after MINOR without specifying PATCH. In this case PATCH == 0 is assumed.
          ARM.CMSIS.1.1.pack equal to ARM.CMSIS.1.1.0.pack
          +
        • +
        +
      • +
      +
    6. +
    7. pre release: the optional pre-release string must start with a hyphen ('-') immediately after the PATCH and consists of a series of dot separated ASCII alphanumerics and hyphen ([0-9A-Za-z-]).
        +
      • accepted: the pre-release string immediately following the PATCH without a hyphen if the first item is a character.
        ARM.CMSIS.4.3.0-alpha.1
        +
      • +
      +
    8. +
    9. build metadata: the optional build metadata must be denoted by appending a plus sign ('+') and a series of dot separated identifiers. Identifiers comprise only ASCII alphanumerics and hyphen [0-9A-Za-z-]+. Two versions that differ only in the build metadata, have the same precedence.
      ARM.CMSIS.4.3.0-alpha.1+build.102
      +
    10. +
    +

    The above is extending the recommendation that was given in previous version of this specification.:

    +

    Version types are used in:

    + +

    Example: this example applies to /package/releases/release.

    +
    <release version="1.4.2-RC2" ...>
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/Pack/html/printComponentTabs.js b/CMSIS/Documentation/Pack/html/printComponentTabs.js new file mode 100644 index 0000000..64d846b --- /dev/null +++ b/CMSIS/Documentation/Pack/html/printComponentTabs.js @@ -0,0 +1,36 @@ +var strgURL = location.pathname; // path of current component + +// constuctor for the array of objects +function tabElement(id, folderName, tabTxt ) { + this.id = id; // elementID as needed in html; + this.folderName = folderName; // folder name of the component + this.tabTxt = tabTxt; // Text displayed as menu on the web + this.currentListItem = '
  • ' + this.tabTxt + '
  • '; + this.listItem = '
  • ' + this.tabTxt + '
  • '; +}; + +// array of objects +var arr = []; + +// fill array + arr.push( new tabElement( "GEN", "/General/html/", "General") ); + arr.push( new tabElement( "CORE", "/Core/html/", "Core") ); + arr.push( new tabElement( "DRV", "/Driver/html/", "Driver") ); + arr.push( new tabElement( "DSP", "/DSP/html/", "DSP") ); + arr.push( new tabElement( "RTOS", "/RTOS/html/", "RTOS API") ); + arr.push( new tabElement( "RTX", "/RTX/html/", "RTX") ); + arr.push( new tabElement( "PACK", "/Pack/html/", "Pack") ); + arr.push( new tabElement( "SVD", "/SVD/html/", "SVD") ); + arr.push( new tabElement( "DAP", "/DAP/html/", "DAP") ); + +// write tabs +// called from the header file. +function writeComponentTabs() { + for ( var i=0; i < arr.length; i++ ) { + if (strgURL.search(arr[i].folderName) > 0) { // if this is the current folder + document.write(arr[i].currentListItem); // then print and hightlight the tab + } else { + document.write(arr[i].listItem); // else, print the tab + } + } +}; diff --git a/CMSIS/Documentation/Pack/html/resize.js b/CMSIS/Documentation/Pack/html/resize.js new file mode 100644 index 0000000..9fe82ba --- /dev/null +++ b/CMSIS/Documentation/Pack/html/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).width(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.height(); + var footerHeight = footer.height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/CMSIS/Documentation/Pack/html/search/all_61.html b/CMSIS/Documentation/Pack/html/search/all_61.html new file mode 100644 index 0000000..a3164d5 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_61.js b/CMSIS/Documentation/Pack/html/search/all_61.js new file mode 100644 index 0000000..98a3e1d --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['algorithm_20functions',['Algorithm Functions',['../_algorithm_func.html',1,'FlashAlgorithm']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_63.html b/CMSIS/Documentation/Pack/html/search/all_63.html new file mode 100644 index 0000000..56b5ad1 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_63.js b/CMSIS/Documentation/Pack/html/search/all_63.js new file mode 100644 index 0000000..953a75d --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['configuration_20wizard_20annotations',['Configuration Wizard Annotations',['../_config_wizard.html',1,'']]], + ['create_20software_20packs',['Create Software Packs',['../_c_p__packs.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_64.html b/CMSIS/Documentation/Pack/html/search/all_64.html new file mode 100644 index 0000000..b53ff08 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_64.js b/CMSIS/Documentation/Pack/html/search/all_64.js new file mode 100644 index 0000000..6804df6 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['debug_20access_20sequences',['Debug Access Sequences',['../pdsc__sequence_name_enum_pg.html',1,'PackFormat']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_66.html b/CMSIS/Documentation/Pack/html/search/all_66.html new file mode 100644 index 0000000..3d1f8b3 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_66.js b/CMSIS/Documentation/Pack/html/search/all_66.js new file mode 100644 index 0000000..140b722 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['flash_20programming_20algorithms',['Flash Programming Algorithms',['../_flash_algorithm.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_70.html b/CMSIS/Documentation/Pack/html/search/all_70.html new file mode 100644 index 0000000..0340151 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_70.js b/CMSIS/Documentation/Pack/html/search/all_70.js new file mode 100644 index 0000000..96127c9 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_70.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['pack_20with_20software_20components',['Pack with Software Components',['../_c_p__s_w_components.html',1,'']]], + ['pack_20with_20device_20support',['Pack with Device Support',['../_create_pack__d_f_p.html',1,'']]], + ['pack_20with_20board_20support',['Pack with Board Support',['../_create_pack_board.html',1,'']]], + ['publish_20a_20pack',['Publish a Pack',['../_create_pack_publish.html',1,'']]], + ['pack_20example',['Pack Example',['../_pack__example.html',1,'']]], + ['packchk_2eexe',['PackChk.exe',['../_pack_chk.html',1,'CreatePackUtil']]], + ['pack_20description_20_28_2a_2epdsc_29_20format',['Pack Description (*.PDSC) Format',['../_pack_format.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_72.html b/CMSIS/Documentation/Pack/html/search/all_72.html new file mode 100644 index 0000000..0ab18d6 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_72.js b/CMSIS/Documentation/Pack/html/search/all_72.js new file mode 100644 index 0000000..cb00313 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_72.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['revision_20history_20of_20cmsis_2dpack',['Revision History of CMSIS-Pack',['../pack_revision_history.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_75.html b/CMSIS/Documentation/Pack/html/search/all_75.html new file mode 100644 index 0000000..ab8455e --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_75.js b/CMSIS/Documentation/Pack/html/search/all_75.js new file mode 100644 index 0000000..da9c8b1 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['utilities_20for_20creating_20packs',['Utilities for Creating Packs',['../_create_pack_util.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_78.html b/CMSIS/Documentation/Pack/html/search/all_78.html new file mode 100644 index 0000000..10780d6 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_78.js b/CMSIS/Documentation/Pack/html/search/all_78.js new file mode 100644 index 0000000..0656130 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['xml_20editors',['XML Editors',['../_c_p__editors.html',1,'CreatePackUtil']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/all_7a.html b/CMSIS/Documentation/Pack/html/search/all_7a.html new file mode 100644 index 0000000..0593a62 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_7a.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/all_7a.js b/CMSIS/Documentation/Pack/html/search/all_7a.js new file mode 100644 index 0000000..4801116 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/all_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['zip_20compression_20tools',['ZIP Compression Tools',['../_c_p__z_i_p_tool.html',1,'CreatePackUtil']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/close.png b/CMSIS/Documentation/Pack/html/search/close.png new file mode 100644 index 0000000..9342d3d Binary files /dev/null and b/CMSIS/Documentation/Pack/html/search/close.png differ diff --git a/CMSIS/Documentation/Pack/html/search/mag_sel.png b/CMSIS/Documentation/Pack/html/search/mag_sel.png new file mode 100644 index 0000000..81f6040 Binary files /dev/null and b/CMSIS/Documentation/Pack/html/search/mag_sel.png differ diff --git a/CMSIS/Documentation/Pack/html/search/nomatches.html b/CMSIS/Documentation/Pack/html/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_61.html b/CMSIS/Documentation/Pack/html/search/pages_61.html new file mode 100644 index 0000000..d5d1efa --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_61.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_61.js b/CMSIS/Documentation/Pack/html/search/pages_61.js new file mode 100644 index 0000000..98a3e1d --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_61.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['algorithm_20functions',['Algorithm Functions',['../_algorithm_func.html',1,'FlashAlgorithm']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_63.html b/CMSIS/Documentation/Pack/html/search/pages_63.html new file mode 100644 index 0000000..3971181 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_63.js b/CMSIS/Documentation/Pack/html/search/pages_63.js new file mode 100644 index 0000000..953a75d --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['configuration_20wizard_20annotations',['Configuration Wizard Annotations',['../_config_wizard.html',1,'']]], + ['create_20software_20packs',['Create Software Packs',['../_c_p__packs.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_64.html b/CMSIS/Documentation/Pack/html/search/pages_64.html new file mode 100644 index 0000000..f416a91 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_64.js b/CMSIS/Documentation/Pack/html/search/pages_64.js new file mode 100644 index 0000000..6804df6 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['debug_20access_20sequences',['Debug Access Sequences',['../pdsc__sequence_name_enum_pg.html',1,'PackFormat']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_66.html b/CMSIS/Documentation/Pack/html/search/pages_66.html new file mode 100644 index 0000000..4051434 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_66.js b/CMSIS/Documentation/Pack/html/search/pages_66.js new file mode 100644 index 0000000..140b722 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['flash_20programming_20algorithms',['Flash Programming Algorithms',['../_flash_algorithm.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_70.html b/CMSIS/Documentation/Pack/html/search/pages_70.html new file mode 100644 index 0000000..f85921e --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_70.js b/CMSIS/Documentation/Pack/html/search/pages_70.js new file mode 100644 index 0000000..96127c9 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_70.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['pack_20with_20software_20components',['Pack with Software Components',['../_c_p__s_w_components.html',1,'']]], + ['pack_20with_20device_20support',['Pack with Device Support',['../_create_pack__d_f_p.html',1,'']]], + ['pack_20with_20board_20support',['Pack with Board Support',['../_create_pack_board.html',1,'']]], + ['publish_20a_20pack',['Publish a Pack',['../_create_pack_publish.html',1,'']]], + ['pack_20example',['Pack Example',['../_pack__example.html',1,'']]], + ['packchk_2eexe',['PackChk.exe',['../_pack_chk.html',1,'CreatePackUtil']]], + ['pack_20description_20_28_2a_2epdsc_29_20format',['Pack Description (*.PDSC) Format',['../_pack_format.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_72.html b/CMSIS/Documentation/Pack/html/search/pages_72.html new file mode 100644 index 0000000..ee0d002 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_72.js b/CMSIS/Documentation/Pack/html/search/pages_72.js new file mode 100644 index 0000000..cb00313 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_72.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['revision_20history_20of_20cmsis_2dpack',['Revision History of CMSIS-Pack',['../pack_revision_history.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_75.html b/CMSIS/Documentation/Pack/html/search/pages_75.html new file mode 100644 index 0000000..25bde52 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_75.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_75.js b/CMSIS/Documentation/Pack/html/search/pages_75.js new file mode 100644 index 0000000..da9c8b1 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['utilities_20for_20creating_20packs',['Utilities for Creating Packs',['../_create_pack_util.html',1,'']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_78.html b/CMSIS/Documentation/Pack/html/search/pages_78.html new file mode 100644 index 0000000..fe624f1 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_78.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_78.js b/CMSIS/Documentation/Pack/html/search/pages_78.js new file mode 100644 index 0000000..0656130 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_78.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['xml_20editors',['XML Editors',['../_c_p__editors.html',1,'CreatePackUtil']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/pages_7a.html b/CMSIS/Documentation/Pack/html/search/pages_7a.html new file mode 100644 index 0000000..71ecf37 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_7a.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/Pack/html/search/pages_7a.js b/CMSIS/Documentation/Pack/html/search/pages_7a.js new file mode 100644 index 0000000..4801116 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/pages_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['zip_20compression_20tools',['ZIP Compression Tools',['../_c_p__z_i_p_tool.html',1,'CreatePackUtil']]] +]; diff --git a/CMSIS/Documentation/Pack/html/search/search.css b/CMSIS/Documentation/Pack/html/search/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/Pack/html/search/search.js b/CMSIS/Documentation/Pack/html/search/search.js new file mode 100644 index 0000000..ed01575 --- /dev/null +++ b/CMSIS/Documentation/Pack/html/search/search.js @@ -0,0 +1,797 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101101000000000101001001010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101101000000000101001001010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + +Function Overview +CMSIS-RTOS: Function Overview + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Function Overview
    +
    +
    +

    The following list provides a brief overview of all CMSIS-RTOS functions. Functions marked with $ are optional. A specific CMSIS-RTOS implementation may not provide all functions, but this is clearly indicated with osFeatureXXXX defines.

    + + + + + + + + + +
      +
    • Mail Queue
        +
      • osMailCreate : Define and initialize a mail queue with fix-size memory blocks.
      • +
      • osMailAlloc : Allocate a memory block.
      • +
      • osMailCAlloc : Allocate a memory block and zero-set this block.
      • +
      • osMailPut : Put a memory block into a mail queue.
      • +
      • osMailGet : Get a mail or suspend thread execution until mail arrives.
      • +
      • osMailFree : Return a memory block to the mail queue.
      • +
      +
    • +
    +

    +Timout Value

    +

    The timeout value specifies the number of timer ticks until a timeout or time delay elapses. The value is an upper bound and depends on the actual time elapsed since the last timer tick.

    +

    For a value of 1 the system waits until the next timer tick occurs. That means that the actual timeout value can be one timer tick less than the specified timeout value.

    +
    +TimerValues.png +
    +Timer Values
    +

    +Calls from Interrupt Service Routines

    +

    The following CMSIS-RTOS functions can be called from threads and Interrupt Service Routines (ISR):

    + +

    Functions that cannot be called from an ISR are verifying the interrupt status and return, in case they are called from an ISR context, the status code osErrorISR. In some implementations, this condition might be caught using the HARD FAULT vector.

    +

    Some CMSIS-RTOS implementations support CMSIS-RTOS function calls from multiple ISRs at the same time. If this is impossible, the CMSIS-RTOS rejects calls by nested ISR functions with the status code osErrorISRRecursive.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/_using_o_s.html b/CMSIS/Documentation/RTOS/html/_using_o_s.html new file mode 100644 index 0000000..7f85ccd --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/_using_o_s.html @@ -0,0 +1,134 @@ + + + + + +Using a CMSIS-RTOS Implementation +CMSIS-RTOS: Using a CMSIS-RTOS Implementation + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Using a CMSIS-RTOS Implementation
    +
    +
    +

    A CMSIS-RTOS implementation is typically provided as a library. To add the RTOS functionality to an existing CMSIS-based application, the RTOS library (and typically a configuration file) needs to be added. The available functionality of the RTOS library is defined in the header file cmsis_os.h that is specific for each CMSIS-RTOS implementation.

    +
    +CMSIS_RTOS_Files.png +
    +CMSIS-RTOS File Structure
    +

    Depending on the CMSIS-RTOS implementation, execution may start with the main function as the first thread. This has the benefit that an application programmer may use other middleware libraries that create threads internally, but the remaining part of the user application just uses the main thread. Therefore, the usage of the RTOS can be invisible to the application programmer, but libraries can use CMSIS-RTOS features.

    +

    Once the files are added to a project, the user can start working with the CMSIS-RTOS functions. A code example is provided below:

    +

    Code Example

    +
    #include "cmsis_os.h" // CMSIS-RTOS header file
    +
    +
    void job1 (void const *argument) { // thread function 'job1'
    +
    while (1) {
    +
    : // execute some code
    +
    osDelay (10); // delay execution for 10 milliseconds
    +
    }
    +
    }
    +
    +
    osThreadDef(job1, osPriorityAboveNormal, 1, 0); // define job1 as thread function
    +
    +
    void job2 (void const *argument) { // thread function 'job2'
    +
    osThreadCreate(osThread(job1),NULL); // create job1 thread
    +
    while (1) {
    +
    : // execute some code
    +
    }
    +
    }
    +
    +
    osThreadDef(job2, osPriorityNormal, 1, 0); // define job2 as thread function
    +
    +
    void job3 (void const *argument) { // thread function 'job3'
    +
    while (1) {
    +
    : // execute some code
    +
    osDelay (20); // delay execution for 20 milliseconds
    +
    }
    +
    }
    +
    +
    osThreadDef(job3, osPriorityNormal, 1, 0); // define job3 as thread function
    +
    +
    int main (void) { // program execution starts here
    +
    osKernelInitialize (); // initialize RTOS kernel
    +
    : // setup and initialize peripherals
    + + +
    osKernelStart (); // start kernel with job2 execution
    +
    }
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/annotated.html b/CMSIS/Documentation/RTOS/html/annotated.html new file mode 100644 index 0000000..bb651f6 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/annotated.html @@ -0,0 +1,110 @@ + + + + + +Data Structures +CMSIS-RTOS: Data Structures + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Data Structures
    +
    +
    +
    Here are the data structures with brief descriptions:
    + + + + + + + + + + +
    oCos_mailQ
    oCosEventEvent structure contains detailed information about an event
    oCosMailQDef_tDefinition structure for mail queue
    oCosMessageQDef_tDefinition structure for message queue
    oCosMutexDef_tMutex Definition structure contains setup information for a mutex
    oCosPoolDef_tDefinition structure for memory block allocation
    oCosSemaphoreDef_tSemaphore Definition structure contains setup information for a semaphore
    oCosThreadDef_tThread Definition structure contains startup information of a thread
    \CosTimerDef_tTimer Definition structure contains timer parameters
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/annotated.js b/CMSIS/Documentation/RTOS/html/annotated.js new file mode 100644 index 0000000..c324e28 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/annotated.js @@ -0,0 +1,10 @@ +var annotated = +[ + [ "osMailQDef_t", "structos_mail_q_def__t.html", "structos_mail_q_def__t" ], + [ "osMessageQDef_t", "structos_message_q_def__t.html", "structos_message_q_def__t" ], + [ "osMutexDef_t", "structos_mutex_def__t.html", "structos_mutex_def__t" ], + [ "osPoolDef_t", "structos_pool_def__t.html", "structos_pool_def__t" ], + [ "osSemaphoreDef_t", "structos_semaphore_def__t.html", "structos_semaphore_def__t" ], + [ "osThreadDef_t", "structos_thread_def__t.html", "structos_thread_def__t" ], + [ "osTimerDef_t", "structos_timer_def__t.html", "structos_timer_def__t" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/bc_s.png b/CMSIS/Documentation/RTOS/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/bc_s.png differ diff --git a/CMSIS/Documentation/RTOS/html/bdwn.png b/CMSIS/Documentation/RTOS/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/bdwn.png differ diff --git a/CMSIS/Documentation/RTOS/html/classes.html b/CMSIS/Documentation/RTOS/html/classes.html new file mode 100644 index 0000000..276e4dd --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/classes.html @@ -0,0 +1,106 @@ + + + + + +Data Structure Index +CMSIS-RTOS: Data Structure Index + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Data Structure Index
    +
    +
    + + + + + + +
      O  
    +
    osEvent   osMutexDef_t   osThreadDef_t   
    osMailQDef_t   osPoolDef_t   osTimerDef_t   
    os_mailQ   osMessageQDef_t   osSemaphoreDef_t   
    + +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/closed.png b/CMSIS/Documentation/RTOS/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/closed.png differ diff --git a/CMSIS/Documentation/RTOS/html/cmsis.css b/CMSIS/Documentation/RTOS/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/RTOS/html/cmsis__os_8h.html b/CMSIS/Documentation/RTOS/html/cmsis__os_8h.html new file mode 100644 index 0000000..8ff05bf --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/cmsis__os_8h.html @@ -0,0 +1,689 @@ + + + + + +cmsis_os.h File Reference +CMSIS-RTOS: cmsis_os.h File Reference + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    cmsis_os.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  osThreadDef_t
     Thread Definition structure contains startup information of a thread. More...
     
    struct  osTimerDef_t
     Timer Definition structure contains timer parameters. More...
     
    struct  osMutexDef_t
     Mutex Definition structure contains setup information for a mutex. More...
     
    struct  osSemaphoreDef_t
     Semaphore Definition structure contains setup information for a semaphore. More...
     
    struct  osPoolDef_t
     Definition structure for memory block allocation. More...
     
    struct  osMessageQDef_t
     Definition structure for message queue. More...
     
    struct  osMailQDef_t
     Definition structure for mail queue. More...
     
    struct  osEvent
     Event structure contains detailed information about an event. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define osCMSIS   0x10002
     API version (main [31:16] .sub [15:0])
     
    #define osCMSIS_KERNEL   0x10000
     RTOS identification and version (main [31:16] .sub [15:0])
     
    #define osKernelSystemId   "KERNEL V1.00"
     RTOS identification string.
     
    #define osFeature_MainThread   1
     main thread 1=main can be thread, 0=not available
     
    #define osFeature_Pool   1
     Memory Pools: 1=available, 0=not available.
     
    #define osFeature_MailQ   1
     Mail Queues: 1=available, 0=not available.
     
    #define osFeature_MessageQ   1
     Message Queues: 1=available, 0=not available.
     
    #define osFeature_Signals   8
     maximum number of Signal Flags available per thread
     
    #define osFeature_Semaphore   30
     maximum count for osSemaphoreCreate function
     
    #define osFeature_Wait   1
     osWait function: 1=available, 0=not available
     
    #define osFeature_SysTick   1
     osKernelSysTick functions: 1=available, 0=not available
     
    #define osWaitForever   0xFFFFFFFF
     Timeout value.
     
    #define osKernelSysTickFrequency   100000000
     The RTOS kernel system timer frequency in Hz.
     
    #define osKernelSysTickMicroSec(microsec)   (((uint64_t)microsec * (osKernelSysTickFrequency)) / 1000000)
     Convert a microseconds value to a RTOS kernel system timer value.
     
    #define osThreadDef(name, priority, instances, stacksz)
     Create a Thread Definition with function, priority, and stack requirements.
     
    #define osThread(name)   &os_thread_def_##name
     Access a Thread definition.
     
    #define osTimerDef(name, function)
     Define a Timer object.
     
    #define osTimer(name)   &os_timer_def_##name
     Access a Timer definition.
     
    #define osMutexDef(name)   const osMutexDef_t os_mutex_def_##name = { 0 }
     Define a Mutex.
     
    #define osMutex(name)   &os_mutex_def_##name
     Access a Mutex definition.
     
    #define osSemaphoreDef(name)   const osSemaphoreDef_t os_semaphore_def_##name = { 0 }
     Define a Semaphore object.
     
    #define osSemaphore(name)   &os_semaphore_def_##name
     Access a Semaphore definition.
     
    #define osPoolDef(name, no, type)
     Define a Memory Pool.
     
    #define osPool(name)   &os_pool_def_##name
     Access a Memory Pool definition.
     
    #define osMessageQDef(name, queue_sz, type)
     Create a Message Queue Definition.
     
    #define osMessageQ(name)   &os_messageQ_def_##name
     Access a Message Queue Definition.
     
    #define osMailQDef(name, queue_sz, type)
     Create a Mail Queue Definition.
     
    #define osMailQ(name)   &os_mailQ_def_##name
     Access a Mail Queue Definition.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Typedefs

    typedef void(* os_pthread )(void const *argument)
     Entry point of a thread.
     
    typedef void(* os_ptimer )(void const *argument)
     Entry point of a timer call back function.
     
    typedef struct os_thread_cb * osThreadId
     Thread ID identifies the thread (pointer to a thread control block).
     
    typedef struct os_timer_cb * osTimerId
     Timer ID identifies the timer (pointer to a timer control block).
     
    typedef struct os_mutex_cb * osMutexId
     Mutex ID identifies the mutex (pointer to a mutex control block).
     
    typedef struct os_semaphore_cb * osSemaphoreId
     Semaphore ID identifies the semaphore (pointer to a semaphore control block).
     
    typedef struct os_pool_cb * osPoolId
     Pool ID identifies the memory pool (pointer to a memory pool control block).
     
    typedef struct os_messageQ_cb * osMessageQId
     Message ID identifies the message queue (pointer to a message queue control block).
     
    typedef struct os_mailQ_cb * osMailQId
     Mail ID identifies the mail queue (pointer to a mail queue control block).
     
    + + + + + + + + + + +

    +Enumerations

    enum  osPriority {
    +  osPriorityIdle = -3, +
    +  osPriorityLow = -2, +
    +  osPriorityBelowNormal = -1, +
    +  osPriorityNormal = 0, +
    +  osPriorityAboveNormal = +1, +
    +  osPriorityHigh = +2, +
    +  osPriorityRealtime = +3, +
    +  osPriorityError = 0x84 +
    + }
     Priority used for thread control. More...
     
    enum  osStatus {
    +  osOK = 0, +
    +  osEventSignal = 0x08, +
    +  osEventMessage = 0x10, +
    +  osEventMail = 0x20, +
    +  osEventTimeout = 0x40, +
    +  osErrorParameter = 0x80, +
    +  osErrorResource = 0x81, +
    +  osErrorTimeoutResource = 0xC1, +
    +  osErrorISR = 0x82, +
    +  osErrorISRRecursive = 0x83, +
    +  osErrorPriority = 0x84, +
    +  osErrorNoMemory = 0x85, +
    +  osErrorValue = 0x86, +
    +  osErrorOS = 0xFF, +
    +  os_status_reserved = 0x7FFFFFFF +
    + }
     Status code values returned by CMSIS-RTOS functions. More...
     
    enum  os_timer_type {
    +  osTimerOnce = 0, +
    +  osTimerPeriodic = 1 +
    + }
     Timer type value for the timer definition. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    osStatus osKernelInitialize (void)
     Initialize the RTOS Kernel for creating objects.
     
    osStatus osKernelStart (void)
     Start the RTOS Kernel.
     
    int32_t osKernelRunning (void)
     Check if the RTOS kernel is already started.
     
    uint32_t osKernelSysTick (void)
     Get the RTOS kernel system timer counter.
     
    osThreadId osThreadCreate (const osThreadDef_t *thread_def, void *argument)
     Create a thread and add it to Active Threads and set it to state READY.
     
    osThreadId osThreadGetId (void)
     Return the thread ID of the current running thread.
     
    osStatus osThreadTerminate (osThreadId thread_id)
     Terminate execution of a thread and remove it from Active Threads.
     
    osStatus osThreadYield (void)
     Pass control to next thread that is in state READY.
     
    osStatus osThreadSetPriority (osThreadId thread_id, osPriority priority)
     Change priority of an active thread.
     
    osPriority osThreadGetPriority (osThreadId thread_id)
     Get current priority of an active thread.
     
    osStatus osDelay (uint32_t millisec)
     Wait for Timeout (Time Delay).
     
    osEvent osWait (uint32_t millisec)
     Wait for Signal, Message, Mail, or Timeout.
     
    osTimerId osTimerCreate (const osTimerDef_t *timer_def, os_timer_type type, void *argument)
     Create a timer.
     
    osStatus osTimerStart (osTimerId timer_id, uint32_t millisec)
     Start or restart a timer.
     
    osStatus osTimerStop (osTimerId timer_id)
     Stop the timer.
     
    osStatus osTimerDelete (osTimerId timer_id)
     Delete a timer that was created by osTimerCreate.
     
    int32_t osSignalSet (osThreadId thread_id, int32_t signals)
     Set the specified Signal Flags of an active thread.
     
    int32_t osSignalClear (osThreadId thread_id, int32_t signals)
     Clear the specified Signal Flags of an active thread.
     
    osEvent osSignalWait (int32_t signals, uint32_t millisec)
     Wait for one or more Signal Flags to become signaled for the current RUNNING thread.
     
    osMutexId osMutexCreate (const osMutexDef_t *mutex_def)
     Create and Initialize a Mutex object.
     
    osStatus osMutexWait (osMutexId mutex_id, uint32_t millisec)
     Wait until a Mutex becomes available.
     
    osStatus osMutexRelease (osMutexId mutex_id)
     Release a Mutex that was obtained by osMutexWait.
     
    osStatus osMutexDelete (osMutexId mutex_id)
     Delete a Mutex that was created by osMutexCreate.
     
    osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_t *semaphore_def, int32_t count)
     Create and Initialize a Semaphore object used for managing resources.
     
    int32_t osSemaphoreWait (osSemaphoreId semaphore_id, uint32_t millisec)
     Wait until a Semaphore token becomes available.
     
    osStatus osSemaphoreRelease (osSemaphoreId semaphore_id)
     Release a Semaphore token.
     
    osStatus osSemaphoreDelete (osSemaphoreId semaphore_id)
     Delete a Semaphore that was created by osSemaphoreCreate.
     
    osPoolId osPoolCreate (const osPoolDef_t *pool_def)
     Create and Initialize a memory pool.
     
    void * osPoolAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool.
     
    void * osPoolCAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool and set memory block to zero.
     
    osStatus osPoolFree (osPoolId pool_id, void *block)
     Return an allocated memory block back to a specific memory pool.
     
    osMessageQId osMessageCreate (const osMessageQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize a Message Queue.
     
    osStatus osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t millisec)
     Put a Message to a Queue.
     
    osEvent osMessageGet (osMessageQId queue_id, uint32_t millisec)
     Get a Message or Wait for a Message from a Queue.
     
    osMailQId osMailCreate (const osMailQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize mail queue.
     
    void * osMailAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail.
     
    void * osMailCAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail and set memory block to zero.
     
    osStatus osMailPut (osMailQId queue_id, void *mail)
     Put a mail to a queue.
     
    osEvent osMailGet (osMailQId queue_id, uint32_t millisec)
     Get a mail from a queue.
     
    osStatus osMailFree (osMailQId queue_id, void *mail)
     Free a memory block from a mail.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osWaitForever   0xFFFFFFFF
    +
    +
    Note
    MUST REMAIN UNCHANGED: osWaitForever shall be consistent in every CMSIS-RTOS. wait forever timeout value
    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    typedef void(* os_pthread)(void const *argument)
    +
    +
    Note
    MUST REMAIN UNCHANGED: os_pthread shall be consistent in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef void(* os_ptimer)(void const *argument)
    +
    +
    Note
    MUST REMAIN UNCHANGED: os_ptimer shall be consistent in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_mailQ_cb* osMailQId
    +
    +
    Note
    CAN BE CHANGED: os_mailQ_cb is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_messageQ_cb* osMessageQId
    +
    +
    Note
    CAN BE CHANGED: os_messageQ_cb is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_mutex_cb* osMutexId
    +
    +
    Note
    CAN BE CHANGED: os_mutex_cb is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_pool_cb* osPoolId
    +
    +
    Note
    CAN BE CHANGED: os_pool_cb is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_semaphore_cb* osSemaphoreId
    +
    +
    Note
    CAN BE CHANGED: os_semaphore_cb is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_thread_cb* osThreadId
    +
    +
    Note
    CAN BE CHANGED: os_thread_cb is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_timer_cb* osTimerId
    +
    +
    Note
    CAN BE CHANGED: os_timer_cb is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum os_timer_type
    +
    +
    Note
    MUST REMAIN UNCHANGED: os_timer_type shall be consistent in every CMSIS-RTOS.
    +
    Enumerator:
    + + +
    osTimerOnce  +

    one-shot timer

    +
    osTimerPeriodic  +

    repeating timer

    +
    +
    +
    + +
    +
    + +
    +
    + + + + +
    enum osPriority
    +
    +
    Note
    MUST REMAIN UNCHANGED: osPriority shall be consistent in every CMSIS-RTOS.
    +
    Enumerator:
    + + + + + + + + +
    osPriorityIdle  +

    priority: idle (lowest)

    +
    osPriorityLow  +

    priority: low

    +
    osPriorityBelowNormal  +

    priority: below normal

    +
    osPriorityNormal  +

    priority: normal (default)

    +
    osPriorityAboveNormal  +

    priority: above normal

    +
    osPriorityHigh  +

    priority: high

    +
    osPriorityRealtime  +

    priority: realtime (highest)

    +
    osPriorityError  +

    system cannot determine priority or thread has illegal priority

    +
    +
    +
    + +
    +
    + +
    +
    + + + + +
    enum osStatus
    +
    +
    Note
    MUST REMAIN UNCHANGED: osStatus shall be consistent in every CMSIS-RTOS.
    +
    Enumerator:
    + + + + + + + + + + + + + + + +
    osOK  +

    function completed; no error or event occurred.

    +
    osEventSignal  +

    function completed; signal event occurred.

    +
    osEventMessage  +

    function completed; message event occurred.

    +
    osEventMail  +

    function completed; mail event occurred.

    +
    osEventTimeout  +

    function completed; timeout occurred.

    +
    osErrorParameter  +

    parameter error: a mandatory parameter was missing or specified an incorrect object.

    +
    osErrorResource  +

    resource not available: a specified resource was not available.

    +
    osErrorTimeoutResource  +

    resource not available within given time: a specified resource was not available within the timeout period.

    +
    osErrorISR  +

    not allowed in ISR context: the function cannot be called from interrupt service routines.

    +
    osErrorISRRecursive  +

    function called multiple times from ISR with same object.

    +
    osErrorPriority  +

    system cannot determine priority or thread has illegal priority.

    +
    osErrorNoMemory  +

    system is out of memory: it was impossible to allocate or reserve memory for the operation.

    +
    osErrorValue  +

    value of a parameter is out of range.

    +
    osErrorOS  +

    unspecified RTOS error: run-time error but no other error message fits.

    +
    os_status_reserved  +

    prevent from enum down-size compiler optimization.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/cmsis__os_8txt.html b/CMSIS/Documentation/RTOS/html/cmsis__os_8txt.html new file mode 100644 index 0000000..5941e23 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/cmsis__os_8txt.html @@ -0,0 +1,156 @@ + + + + + +cmsis_os.txt File Reference +CMSIS-RTOS: cmsis_os.txt File Reference + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    cmsis_os.txt File Reference
    +
    +
    + + + + + + + + +

    +Enumerations

    enum  osPriority {
    +  osPriorityIdle = -3, +
    +  osPriorityLow = -2, +
    +  osPriorityBelowNormal = -1, +
    +  osPriorityNormal = 0, +
    +  osPriorityAboveNormal = +1, +
    +  osPriorityHigh = +2, +
    +  osPriorityRealtime = +3, +
    +  osPriorityError = 0x84 +
    + }
     
    enum  os_timer_type {
    +  osTimerOnce = 0, +
    +  osTimerPeriodic = 1 +
    + }
     
    enum  osStatus {
    +  osOK = 0, +
    +  osEventSignal = 0x08, +
    +  osEventMessage = 0x10, +
    +  osEventMail = 0x20, +
    +  osEventTimeout = 0x40, +
    +  osErrorParameter = 0x80, +
    +  osErrorResource = 0x81, +
    +  osErrorTimeoutResource = 0xC1, +
    +  osErrorISR = 0x82, +
    +  osErrorISRRecursive = 0x83, +
    +  osErrorPriority = 0x84, +
    +  osErrorNoMemory = 0x85, +
    +  osErrorValue = 0x86, +
    +  osErrorOS = 0xFF, +
    +  os_status_reserved = 0x7FFFFFFF +
    + }
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/cmsis_os_h.html b/CMSIS/Documentation/RTOS/html/cmsis_os_h.html new file mode 100644 index 0000000..5e50d38 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/cmsis_os_h.html @@ -0,0 +1,826 @@ + + + + + +Header File Template: cmsis_os.h +CMSIS-RTOS: Header File Template: cmsis_os.h + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Header File Template: cmsis_os.h
    +
    +
    +

    The file cmsis_os.h is a template header file for a CMSIS-RTOS compliant Real-Time Operating System (RTOS). Each RTOS that is compliant with CMSIS-RTOS shall provide a specific cmsis_os.h header file that represents its implementation.

    +

    The file cmsis_os.h contains:

    +
      +
    • CMSIS-RTOS API function definitions
    • +
    • struct definitions for parameters and return types
    • +
    • status and priority values used by CMSIS-RTOS API functions
    • +
    • macros for defining threads and other kernel objects
    • +
    +

    Name conventions and header file modifications

    +

    All definitions are prefixed with os to give an unique name space for CMSIS-RTOS functions. Definitions that are prefixed os_ are not used in the application code but local to this header file. All definitions and functions that belong to a module are grouped and have a common prefix, i.e. osThread.

    +

    Definitions that are marked with CAN BE CHANGED can be adapted towards the needs of the actual CMSIS-RTOS implementation. These definitions can be specific to the underlying RTOS kernel.

    +

    Definitions that are marked with MUST REMAIN UNCHANGED cannot be altered. Otherwise the CMSIS-RTOS implementation is no longer compliant to the standard. Note that some functions are optional and need not to be provided by every CMSIS-RTOS implementation.

    +

    Define and reference object definitions

    +

    With #define osObjectsExternal objects are defined as external symbols. This allows to create a consistent header file that is used throughout a project as shown below:

    +

    Header File

    +
    #include <cmsis_os.h> // CMSIS RTOS header file
    +
    +
    // Thread definition
    +
    extern void thread_sample (void const *argument); // function prototype
    +
    osThreadDef (thread_sample, osPriorityBelowNormal, 1, 100);
    +
    +
    // Pool definition
    +
    osPoolDef(MyPool, 10, long);
    +

    This header file defines all objects when included in a C/C++ source file. When #define osObjectsExternal is present before the header file, the objects are defined as external symbols. A single consistent header file can therefore be used throughout the whole project.

    +

    Example

    +
    #include "osObjects.h" // Definition of the CMSIS-RTOS objects
    +
    #define osObjectsExternal // Objects will be defined as external symbols
    +
    #include "osObjects.h" // Reference to the CMSIS-RTOS objects
    +

    Header file cmsis_os.h

    +
    /* ----------------------------------------------------------------------
    +
    * $Date: 5. February 2013
    +
    * $Revision: V1.02
    +
    *
    +
    * Project: CMSIS-RTOS API
    +
    * Title: cmsis_os.h template header file
    +
    *
    +
    * Version 0.02
    +
    * Initial Proposal Phase
    +
    * Version 0.03
    +
    * osKernelStart added, optional feature: main started as thread
    +
    * osSemaphores have standard behavior
    +
    * osTimerCreate does not start the timer, added osTimerStart
    +
    * osThreadPass is renamed to osThreadYield
    +
    * Version 1.01
    +
    * Support for C++ interface
    +
    * - const attribute removed from the osXxxxDef_t typedef's
    +
    * - const attribute added to the osXxxxDef macros
    +
    * Added: osTimerDelete, osMutexDelete, osSemaphoreDelete
    +
    * Added: osKernelInitialize
    +
    * Version 1.02
    +
    * Control functions for short timeouts in microsecond resolution:
    +
    * Added: osKernelSysTick, osKernelSysTickFrequency, osKernelSysTickMicroSec
    +
    * Removed: osSignalGet
    +
    *----------------------------------------------------------------------------
    +
    *
    +
    * Copyright (c) 2013 ARM LIMITED
    +
    * All rights reserved.
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in the
    +
    * documentation and/or other materials provided with the distribution.
    +
    * - Neither the name of ARM nor the names of its contributors may be used
    +
    * to endorse or promote products derived from this software without
    +
    * specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    +
    * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    +
    * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    +
    * ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
    +
    * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    +
    * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    +
    * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    +
    * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    +
    * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    +
    * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    *---------------------------------------------------------------------------*/
    +
    +
    +
    #ifndef _CMSIS_OS_H
    +
    #define _CMSIS_OS_H
    +
    +
    /// \note MUST REMAIN UNCHANGED: \b osCMSIS identifies the CMSIS-RTOS API version.
    +
    #define osCMSIS 0x10002 ///< API version (main [31:16] .sub [15:0])
    +
    +
    /// \note CAN BE CHANGED: \b osCMSIS_KERNEL identifies the underlying RTOS kernel and version number.
    +
    #define osCMSIS_KERNEL 0x10000 ///< RTOS identification and version (main [31:16] .sub [15:0])
    +
    +
    /// \note MUST REMAIN UNCHANGED: \b osKernelSystemId shall be consistent in every CMSIS-RTOS.
    +
    #define osKernelSystemId "KERNEL V1.00" ///< RTOS identification string
    +
    +
    /// \note MUST REMAIN UNCHANGED: \b osFeature_xxx shall be consistent in every CMSIS-RTOS.
    +
    #define osFeature_MainThread 1 ///< main thread 1=main can be thread, 0=not available
    +
    #define osFeature_Pool 1 ///< Memory Pools: 1=available, 0=not available
    +
    #define osFeature_MailQ 1 ///< Mail Queues: 1=available, 0=not available
    +
    #define osFeature_MessageQ 1 ///< Message Queues: 1=available, 0=not available
    +
    #define osFeature_Signals 8 ///< maximum number of Signal Flags available per thread
    +
    #define osFeature_Semaphore 30 ///< maximum count for \ref osSemaphoreCreate function
    +
    #define osFeature_Wait 1 ///< osWait function: 1=available, 0=not available
    +
    #define osFeature_SysTick 1 ///< osKernelSysTick functions: 1=available, 0=not available
    +
    +
    #include <stdint.h>
    +
    #include <stddef.h>
    +
    +
    #ifdef __cplusplus
    +
    extern "C"
    +
    {
    +
    #endif
    +
    +
    +
    // ==== Enumeration, structures, defines ====
    +
    +
    /// Priority used for thread control.
    +
    /// \note MUST REMAIN UNCHANGED: \b osPriority shall be consistent in every CMSIS-RTOS.
    +
    typedef enum {
    +
    osPriorityIdle = -3, ///< priority: idle (lowest)
    +
    osPriorityLow = -2, ///< priority: low
    +
    osPriorityBelowNormal = -1, ///< priority: below normal
    +
    osPriorityNormal = 0, ///< priority: normal (default)
    +
    osPriorityAboveNormal = +1, ///< priority: above normal
    +
    osPriorityHigh = +2, ///< priority: high
    +
    osPriorityRealtime = +3, ///< priority: realtime (highest)
    +
    osPriorityError = 0x84 ///< system cannot determine priority or thread has illegal priority
    + +
    +
    /// Timeout value.
    +
    /// \note MUST REMAIN UNCHANGED: \b osWaitForever shall be consistent in every CMSIS-RTOS.
    +
    #define osWaitForever 0xFFFFFFFF ///< wait forever timeout value
    +
    +
    /// Status code values returned by CMSIS-RTOS functions.
    +
    /// \note MUST REMAIN UNCHANGED: \b osStatus shall be consistent in every CMSIS-RTOS.
    +
    typedef enum {
    +
    osOK = 0, ///< function completed; no error or event occurred.
    +
    osEventSignal = 0x08, ///< function completed; signal event occurred.
    +
    osEventMessage = 0x10, ///< function completed; message event occurred.
    +
    osEventMail = 0x20, ///< function completed; mail event occurred.
    +
    osEventTimeout = 0x40, ///< function completed; timeout occurred.
    +
    osErrorParameter = 0x80, ///< parameter error: a mandatory parameter was missing or specified an incorrect object.
    +
    osErrorResource = 0x81, ///< resource not available: a specified resource was not available.
    +
    osErrorTimeoutResource = 0xC1, ///< resource not available within given time: a specified resource was not available within the timeout period.
    +
    osErrorISR = 0x82, ///< not allowed in ISR context: the function cannot be called from interrupt service routines.
    +
    osErrorISRRecursive = 0x83, ///< function called multiple times from ISR with same object.
    +
    osErrorPriority = 0x84, ///< system cannot determine priority or thread has illegal priority.
    +
    osErrorNoMemory = 0x85, ///< system is out of memory: it was impossible to allocate or reserve memory for the operation.
    +
    osErrorValue = 0x86, ///< value of a parameter is out of range.
    +
    osErrorOS = 0xFF, ///< unspecified RTOS error: run-time error but no other error message fits.
    +
    os_status_reserved = 0x7FFFFFFF ///< prevent from enum down-size compiler optimization.
    + +
    +
    +
    /// Timer type value for the timer definition.
    +
    /// \note MUST REMAIN UNCHANGED: \b os_timer_type shall be consistent in every CMSIS-RTOS.
    +
    typedef enum {
    +
    osTimerOnce = 0, ///< one-shot timer
    +
    osTimerPeriodic = 1 ///< repeating timer
    + +
    +
    /// Entry point of a thread.
    +
    /// \note MUST REMAIN UNCHANGED: \b os_pthread shall be consistent in every CMSIS-RTOS.
    +
    typedef void (*os_pthread) (void const *argument);
    +
    +
    /// Entry point of a timer call back function.
    +
    /// \note MUST REMAIN UNCHANGED: \b os_ptimer shall be consistent in every CMSIS-RTOS.
    +
    typedef void (*os_ptimer) (void const *argument);
    +
    +
    // >>> the following data type definitions may shall adapted towards a specific RTOS
    +
    +
    /// Thread ID identifies the thread (pointer to a thread control block).
    +
    /// \note CAN BE CHANGED: \b os_thread_cb is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_thread_cb *osThreadId;
    +
    +
    /// Timer ID identifies the timer (pointer to a timer control block).
    +
    /// \note CAN BE CHANGED: \b os_timer_cb is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_timer_cb *osTimerId;
    +
    +
    /// Mutex ID identifies the mutex (pointer to a mutex control block).
    +
    /// \note CAN BE CHANGED: \b os_mutex_cb is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_mutex_cb *osMutexId;
    +
    +
    /// Semaphore ID identifies the semaphore (pointer to a semaphore control block).
    +
    /// \note CAN BE CHANGED: \b os_semaphore_cb is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_semaphore_cb *osSemaphoreId;
    +
    +
    /// Pool ID identifies the memory pool (pointer to a memory pool control block).
    +
    /// \note CAN BE CHANGED: \b os_pool_cb is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_pool_cb *osPoolId;
    +
    +
    /// Message ID identifies the message queue (pointer to a message queue control block).
    +
    /// \note CAN BE CHANGED: \b os_messageQ_cb is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_messageQ_cb *osMessageQId;
    +
    +
    /// Mail ID identifies the mail queue (pointer to a mail queue control block).
    +
    /// \note CAN BE CHANGED: \b os_mailQ_cb is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_mailQ_cb *osMailQId;
    +
    +
    +
    /// Thread Definition structure contains startup information of a thread.
    +
    /// \note CAN BE CHANGED: \b os_thread_def is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_thread_def {
    +
    os_pthread pthread; ///< start address of thread function
    +
    osPriority tpriority; ///< initial thread priority
    +
    uint32_t instances; ///< maximum number of instances of that thread function
    +
    uint32_t stacksize; ///< stack size requirements in bytes; 0 is default stack size
    + +
    +
    /// Timer Definition structure contains timer parameters.
    +
    /// \note CAN BE CHANGED: \b os_timer_def is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_timer_def {
    +
    os_ptimer ptimer; ///< start address of a timer function
    + +
    +
    /// Mutex Definition structure contains setup information for a mutex.
    +
    /// \note CAN BE CHANGED: \b os_mutex_def is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_mutex_def {
    +
    uint32_t dummy; ///< dummy value.
    + +
    +
    /// Semaphore Definition structure contains setup information for a semaphore.
    +
    /// \note CAN BE CHANGED: \b os_semaphore_def is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_semaphore_def {
    +
    uint32_t dummy; ///< dummy value.
    + +
    +
    /// Definition structure for memory block allocation.
    +
    /// \note CAN BE CHANGED: \b os_pool_def is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_pool_def {
    +
    uint32_t pool_sz; ///< number of items (elements) in the pool
    +
    uint32_t item_sz; ///< size of an item
    +
    void *pool; ///< pointer to memory for pool
    + +
    +
    /// Definition structure for message queue.
    +
    /// \note CAN BE CHANGED: \b os_messageQ_def is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_messageQ_def {
    +
    uint32_t queue_sz; ///< number of elements in the queue
    +
    uint32_t item_sz; ///< size of an item
    +
    void *pool; ///< memory array for messages
    + +
    +
    /// Definition structure for mail queue.
    +
    /// \note CAN BE CHANGED: \b os_mailQ_def is implementation specific in every CMSIS-RTOS.
    +
    typedef struct os_mailQ_def {
    +
    uint32_t queue_sz; ///< number of elements in the queue
    +
    uint32_t item_sz; ///< size of an item
    +
    void *pool; ///< memory array for mail
    + +
    +
    /// Event structure contains detailed information about an event.
    +
    /// \note MUST REMAIN UNCHANGED: \b os_event shall be consistent in every CMSIS-RTOS.
    +
    /// However the struct may be extended at the end.
    +
    typedef struct {
    +
    osStatus status; ///< status code: event or error information
    +
    union {
    +
    uint32_t v; ///< message as 32-bit value
    +
    void *p; ///< message or mail as void pointer
    +
    int32_t signals; ///< signal flags
    +
    } value; ///< event value
    +
    union {
    +
    osMailQId mail_id; ///< mail id obtained by \ref osMailCreate
    +
    osMessageQId message_id; ///< message id obtained by \ref osMessageCreate
    +
    } def; ///< event definition
    + +
    +
    +
    // ==== Kernel Control Functions ====
    +
    +
    /// Initialize the RTOS Kernel for creating objects.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osKernelInitialize shall be consistent in every CMSIS-RTOS.
    + +
    +
    /// Start the RTOS Kernel.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osKernelStart shall be consistent in every CMSIS-RTOS.
    + +
    +
    /// Check if the RTOS kernel is already started.
    +
    /// \note MUST REMAIN UNCHANGED: \b osKernelRunning shall be consistent in every CMSIS-RTOS.
    +
    /// \return 0 RTOS is not started, 1 RTOS is started.
    +
    int32_t osKernelRunning(void);
    +
    +
    #if (defined (osFeature_SysTick) && (osFeature_SysTick != 0)) // System Timer available
    +
    +
    /// Get the RTOS kernel system timer counter
    +
    /// \note MUST REMAIN UNCHANGED: \b osKernelSysTick shall be consistent in every CMSIS-RTOS.
    +
    /// \return RTOS kernel system timer as 32-bit value
    +
    uint32_t osKernelSysTick (void);
    +
    +
    /// The RTOS kernel system timer frequency in Hz
    +
    /// \note Reflects the system timer setting and is typically defined in a configuration file.
    +
    #define osKernelSysTickFrequency 100000000
    +
    +
    /// Convert a microseconds value to a RTOS kernel system timer value.
    +
    /// \param microsec time value in microseconds.
    +
    /// \return time value normalized to the \ref osKernelSysTickFrequency
    +
    #define osKernelSysTickMicroSec(microsec) (((uint64_t)microsec * (osKernelSysTickFrequency)) / 1000000)
    +
    +
    #endif // System Timer available
    +
    +
    // ==== Thread Management ====
    +
    +
    /// Create a Thread Definition with function, priority, and stack requirements.
    +
    /// \param name name of the thread function.
    +
    /// \param priority initial priority of the thread function.
    +
    /// \param instances number of possible thread instances.
    +
    /// \param stacksz stack size (in bytes) requirements for the thread function.
    +
    /// \note CAN BE CHANGED: The parameters to \b osThreadDef shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #if defined (osObjectsExternal) // object is external
    +
    #define osThreadDef(name, priority, instances, stacksz) \
    +
    extern const osThreadDef_t os_thread_def_##name
    +
    #else // define the object
    +
    #define osThreadDef(name, priority, instances, stacksz) \
    +
    const osThreadDef_t os_thread_def_##name = \
    +
    { (name), (priority), (instances), (stacksz) }
    +
    #endif
    +
    +
    /// Access a Thread definition.
    +
    /// \param name name of the thread definition object.
    +
    /// \note CAN BE CHANGED: The parameter to \b osThread shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #define osThread(name) \
    +
    &os_thread_def_##name
    +
    +
    /// Create a thread and add it to Active Threads and set it to state READY.
    +
    /// \param[in] thread_def thread definition referenced with \ref osThread.
    +
    /// \param[in] argument pointer that is passed to the thread function as start argument.
    +
    /// \return thread ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osThreadCreate shall be consistent in every CMSIS-RTOS.
    +
    osThreadId osThreadCreate (const osThreadDef_t *thread_def, void *argument);
    +
    +
    /// Return the thread ID of the current running thread.
    +
    /// \return thread ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osThreadGetId shall be consistent in every CMSIS-RTOS.
    +
    osThreadId osThreadGetId (void);
    +
    +
    /// Terminate execution of a thread and remove it from Active Threads.
    +
    /// \param[in] thread_id thread ID obtained by \ref osThreadCreate or \ref osThreadGetId.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osThreadTerminate shall be consistent in every CMSIS-RTOS.
    +
    osStatus osThreadTerminate (osThreadId thread_id);
    +
    +
    /// Pass control to next thread that is in state \b READY.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osThreadYield shall be consistent in every CMSIS-RTOS.
    + +
    +
    /// Change priority of an active thread.
    +
    /// \param[in] thread_id thread ID obtained by \ref osThreadCreate or \ref osThreadGetId.
    +
    /// \param[in] priority new priority value for the thread function.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osThreadSetPriority shall be consistent in every CMSIS-RTOS.
    +
    osStatus osThreadSetPriority (osThreadId thread_id, osPriority priority);
    +
    +
    /// Get current priority of an active thread.
    +
    /// \param[in] thread_id thread ID obtained by \ref osThreadCreate or \ref osThreadGetId.
    +
    /// \return current priority value of the thread function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osThreadGetPriority shall be consistent in every CMSIS-RTOS.
    +
    osPriority osThreadGetPriority (osThreadId thread_id);
    +
    +
    +
    // ==== Generic Wait Functions ====
    +
    +
    /// Wait for Timeout (Time Delay).
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue "time delay" value
    +
    /// \return status code that indicates the execution status of the function.
    +
    osStatus osDelay (uint32_t millisec);
    +
    +
    #if (defined (osFeature_Wait) && (osFeature_Wait != 0)) // Generic Wait available
    +
    +
    /// Wait for Signal, Message, Mail, or Timeout.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out
    +
    /// \return event that contains signal, message, or mail information or error code.
    +
    /// \note MUST REMAIN UNCHANGED: \b osWait shall be consistent in every CMSIS-RTOS.
    +
    osEvent osWait (uint32_t millisec);
    +
    +
    #endif // Generic Wait available
    +
    +
    +
    // ==== Timer Management Functions ====
    +
    /// Define a Timer object.
    +
    /// \param name name of the timer object.
    +
    /// \param function name of the timer call back function.
    +
    /// \note CAN BE CHANGED: The parameter to \b osTimerDef shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #if defined (osObjectsExternal) // object is external
    +
    #define osTimerDef(name, function) \
    +
    extern const osTimerDef_t os_timer_def_##name
    +
    #else // define the object
    +
    #define osTimerDef(name, function) \
    +
    const osTimerDef_t os_timer_def_##name = \
    +
    { (function) }
    +
    #endif
    +
    +
    /// Access a Timer definition.
    +
    /// \param name name of the timer object.
    +
    /// \note CAN BE CHANGED: The parameter to \b osTimer shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #define osTimer(name) \
    +
    &os_timer_def_##name
    +
    +
    /// Create a timer.
    +
    /// \param[in] timer_def timer object referenced with \ref osTimer.
    +
    /// \param[in] type osTimerOnce for one-shot or osTimerPeriodic for periodic behavior.
    +
    /// \param[in] argument argument to the timer call back function.
    +
    /// \return timer ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osTimerCreate shall be consistent in every CMSIS-RTOS.
    +
    osTimerId osTimerCreate (const osTimerDef_t *timer_def, os_timer_type type, void *argument);
    +
    +
    /// Start or restart a timer.
    +
    /// \param[in] timer_id timer ID obtained by \ref osTimerCreate.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue "time delay" value of the timer.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osTimerStart shall be consistent in every CMSIS-RTOS.
    +
    osStatus osTimerStart (osTimerId timer_id, uint32_t millisec);
    +
    +
    /// Stop the timer.
    +
    /// \param[in] timer_id timer ID obtained by \ref osTimerCreate.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osTimerStop shall be consistent in every CMSIS-RTOS.
    +
    osStatus osTimerStop (osTimerId timer_id);
    +
    +
    /// Delete a timer that was created by \ref osTimerCreate.
    +
    /// \param[in] timer_id timer ID obtained by \ref osTimerCreate.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osTimerDelete shall be consistent in every CMSIS-RTOS.
    +
    osStatus osTimerDelete (osTimerId timer_id);
    +
    +
    +
    // ==== Signal Management ====
    +
    +
    /// Set the specified Signal Flags of an active thread.
    +
    /// \param[in] thread_id thread ID obtained by \ref osThreadCreate or \ref osThreadGetId.
    +
    /// \param[in] signals specifies the signal flags of the thread that should be set.
    +
    /// \return previous signal flags of the specified thread or 0x80000000 in case of incorrect parameters.
    +
    /// \note MUST REMAIN UNCHANGED: \b osSignalSet shall be consistent in every CMSIS-RTOS.
    +
    int32_t osSignalSet (osThreadId thread_id, int32_t signals);
    +
    +
    /// Clear the specified Signal Flags of an active thread.
    +
    /// \param[in] thread_id thread ID obtained by \ref osThreadCreate or \ref osThreadGetId.
    +
    /// \param[in] signals specifies the signal flags of the thread that shall be cleared.
    +
    /// \return previous signal flags of the specified thread or 0x80000000 in case of incorrect parameters or call from ISR.
    +
    /// \note MUST REMAIN UNCHANGED: \b osSignalClear shall be consistent in every CMSIS-RTOS.
    +
    int32_t osSignalClear (osThreadId thread_id, int32_t signals);
    +
    +
    /// Wait for one or more Signal Flags to become signaled for the current \b RUNNING thread.
    +
    /// \param[in] signals wait until all specified signal flags set or 0 for any single signal flag.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out.
    +
    /// \return event flag information or error code.
    +
    /// \note MUST REMAIN UNCHANGED: \b osSignalWait shall be consistent in every CMSIS-RTOS.
    +
    osEvent osSignalWait (int32_t signals, uint32_t millisec);
    +
    +
    +
    // ==== Mutex Management ====
    +
    +
    /// Define a Mutex.
    +
    /// \param name name of the mutex object.
    +
    /// \note CAN BE CHANGED: The parameter to \b osMutexDef shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #if defined (osObjectsExternal) // object is external
    +
    #define osMutexDef(name) \
    +
    extern const osMutexDef_t os_mutex_def_##name
    +
    #else // define the object
    +
    #define osMutexDef(name) \
    +
    const osMutexDef_t os_mutex_def_##name = { 0 }
    +
    #endif
    +
    +
    /// Access a Mutex definition.
    +
    /// \param name name of the mutex object.
    +
    /// \note CAN BE CHANGED: The parameter to \b osMutex shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #define osMutex(name) \
    +
    &os_mutex_def_##name
    +
    +
    /// Create and Initialize a Mutex object.
    +
    /// \param[in] mutex_def mutex definition referenced with \ref osMutex.
    +
    /// \return mutex ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMutexCreate shall be consistent in every CMSIS-RTOS.
    +
    osMutexId osMutexCreate (const osMutexDef_t *mutex_def);
    +
    +
    /// Wait until a Mutex becomes available.
    +
    /// \param[in] mutex_id mutex ID obtained by \ref osMutexCreate.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMutexWait shall be consistent in every CMSIS-RTOS.
    +
    osStatus osMutexWait (osMutexId mutex_id, uint32_t millisec);
    +
    +
    /// Release a Mutex that was obtained by \ref osMutexWait.
    +
    /// \param[in] mutex_id mutex ID obtained by \ref osMutexCreate.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMutexRelease shall be consistent in every CMSIS-RTOS.
    +
    osStatus osMutexRelease (osMutexId mutex_id);
    +
    +
    /// Delete a Mutex that was created by \ref osMutexCreate.
    +
    /// \param[in] mutex_id mutex ID obtained by \ref osMutexCreate.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMutexDelete shall be consistent in every CMSIS-RTOS.
    +
    osStatus osMutexDelete (osMutexId mutex_id);
    +
    +
    +
    // ==== Semaphore Management Functions ====
    +
    +
    #if (defined (osFeature_Semaphore) && (osFeature_Semaphore != 0)) // Semaphore available
    +
    +
    /// Define a Semaphore object.
    +
    /// \param name name of the semaphore object.
    +
    /// \note CAN BE CHANGED: The parameter to \b osSemaphoreDef shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #if defined (osObjectsExternal) // object is external
    +
    #define osSemaphoreDef(name) \
    +
    extern const osSemaphoreDef_t os_semaphore_def_##name
    +
    #else // define the object
    +
    #define osSemaphoreDef(name) \
    +
    const osSemaphoreDef_t os_semaphore_def_##name = { 0 }
    +
    #endif
    +
    +
    /// Access a Semaphore definition.
    +
    /// \param name name of the semaphore object.
    +
    /// \note CAN BE CHANGED: The parameter to \b osSemaphore shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #define osSemaphore(name) \
    +
    &os_semaphore_def_##name
    +
    +
    /// Create and Initialize a Semaphore object used for managing resources.
    +
    /// \param[in] semaphore_def semaphore definition referenced with \ref osSemaphore.
    +
    /// \param[in] count number of available resources.
    +
    /// \return semaphore ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osSemaphoreCreate shall be consistent in every CMSIS-RTOS.
    +
    osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_t *semaphore_def, int32_t count);
    +
    +
    /// Wait until a Semaphore token becomes available.
    +
    /// \param[in] semaphore_id semaphore object referenced with \ref osSemaphoreCreate.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out.
    +
    /// \return number of available tokens, or -1 in case of incorrect parameters.
    +
    /// \note MUST REMAIN UNCHANGED: \b osSemaphoreWait shall be consistent in every CMSIS-RTOS.
    +
    int32_t osSemaphoreWait (osSemaphoreId semaphore_id, uint32_t millisec);
    +
    +
    /// Release a Semaphore token.
    +
    /// \param[in] semaphore_id semaphore object referenced with \ref osSemaphoreCreate.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osSemaphoreRelease shall be consistent in every CMSIS-RTOS.
    +
    osStatus osSemaphoreRelease (osSemaphoreId semaphore_id);
    +
    +
    /// Delete a Semaphore that was created by \ref osSemaphoreCreate.
    +
    /// \param[in] semaphore_id semaphore object referenced with \ref osSemaphoreCreate.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osSemaphoreDelete shall be consistent in every CMSIS-RTOS.
    +
    osStatus osSemaphoreDelete (osSemaphoreId semaphore_id);
    +
    +
    #endif // Semaphore available
    +
    +
    +
    // ==== Memory Pool Management Functions ====
    +
    +
    #if (defined (osFeature_Pool) && (osFeature_Pool != 0)) // Memory Pool Management available
    +
    +
    /// \brief Define a Memory Pool.
    +
    /// \param name name of the memory pool.
    +
    /// \param no maximum number of blocks (objects) in the memory pool.
    +
    /// \param type data type of a single block (object).
    +
    /// \note CAN BE CHANGED: The parameter to \b osPoolDef shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #if defined (osObjectsExternal) // object is external
    +
    #define osPoolDef(name, no, type) \
    +
    extern const osPoolDef_t os_pool_def_##name
    +
    #else // define the object
    +
    #define osPoolDef(name, no, type) \
    +
    const osPoolDef_t os_pool_def_##name = \
    +
    { (no), sizeof(type), NULL }
    +
    #endif
    +
    +
    /// \brief Access a Memory Pool definition.
    +
    /// \param name name of the memory pool
    +
    /// \note CAN BE CHANGED: The parameter to \b osPool shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #define osPool(name) \
    +
    &os_pool_def_##name
    +
    +
    /// Create and Initialize a memory pool.
    +
    /// \param[in] pool_def memory pool definition referenced with \ref osPool.
    +
    /// \return memory pool ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osPoolCreate shall be consistent in every CMSIS-RTOS.
    +
    osPoolId osPoolCreate (const osPoolDef_t *pool_def);
    +
    +
    /// Allocate a memory block from a memory pool.
    +
    /// \param[in] pool_id memory pool ID obtain referenced with \ref osPoolCreate.
    +
    /// \return address of the allocated memory block or NULL in case of no memory available.
    +
    /// \note MUST REMAIN UNCHANGED: \b osPoolAlloc shall be consistent in every CMSIS-RTOS.
    +
    void *osPoolAlloc (osPoolId pool_id);
    +
    +
    /// Allocate a memory block from a memory pool and set memory block to zero.
    +
    /// \param[in] pool_id memory pool ID obtain referenced with \ref osPoolCreate.
    +
    /// \return address of the allocated memory block or NULL in case of no memory available.
    +
    /// \note MUST REMAIN UNCHANGED: \b osPoolCAlloc shall be consistent in every CMSIS-RTOS.
    +
    void *osPoolCAlloc (osPoolId pool_id);
    +
    +
    /// Return an allocated memory block back to a specific memory pool.
    +
    /// \param[in] pool_id memory pool ID obtain referenced with \ref osPoolCreate.
    +
    /// \param[in] block address of the allocated memory block that is returned to the memory pool.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osPoolFree shall be consistent in every CMSIS-RTOS.
    +
    osStatus osPoolFree (osPoolId pool_id, void *block);
    +
    +
    #endif // Memory Pool Management available
    +
    +
    +
    // ==== Message Queue Management Functions ====
    +
    +
    #if (defined (osFeature_MessageQ) && (osFeature_MessageQ != 0)) // Message Queues available
    +
    +
    /// \brief Create a Message Queue Definition.
    +
    /// \param name name of the queue.
    +
    /// \param queue_sz maximum number of messages in the queue.
    +
    /// \param type data type of a single message element (for debugger).
    +
    /// \note CAN BE CHANGED: The parameter to \b osMessageQDef shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #if defined (osObjectsExternal) // object is external
    +
    #define osMessageQDef(name, queue_sz, type) \
    +
    extern const osMessageQDef_t os_messageQ_def_##name
    +
    #else // define the object
    +
    #define osMessageQDef(name, queue_sz, type) \
    +
    const osMessageQDef_t os_messageQ_def_##name = \
    +
    { (queue_sz), sizeof (type) }
    +
    #endif
    +
    +
    /// \brief Access a Message Queue Definition.
    +
    /// \param name name of the queue
    +
    /// \note CAN BE CHANGED: The parameter to \b osMessageQ shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #define osMessageQ(name) \
    +
    &os_messageQ_def_##name
    +
    +
    /// Create and Initialize a Message Queue.
    +
    /// \param[in] queue_def queue definition referenced with \ref osMessageQ.
    +
    /// \param[in] thread_id thread ID (obtained by \ref osThreadCreate or \ref osThreadGetId) or NULL.
    +
    /// \return message queue ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMessageCreate shall be consistent in every CMSIS-RTOS.
    +
    osMessageQId osMessageCreate (const osMessageQDef_t *queue_def, osThreadId thread_id);
    +
    +
    /// Put a Message to a Queue.
    +
    /// \param[in] queue_id message queue ID obtained with \ref osMessageCreate.
    +
    /// \param[in] info message information.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMessagePut shall be consistent in every CMSIS-RTOS.
    +
    osStatus osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t millisec);
    +
    +
    /// Get a Message or Wait for a Message from a Queue.
    +
    /// \param[in] queue_id message queue ID obtained with \ref osMessageCreate.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out.
    +
    /// \return event information that includes status code.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMessageGet shall be consistent in every CMSIS-RTOS.
    +
    osEvent osMessageGet (osMessageQId queue_id, uint32_t millisec);
    +
    +
    #endif // Message Queues available
    +
    +
    +
    // ==== Mail Queue Management Functions ====
    +
    +
    #if (defined (osFeature_MailQ) && (osFeature_MailQ != 0)) // Mail Queues available
    +
    +
    /// \brief Create a Mail Queue Definition.
    +
    /// \param name name of the queue
    +
    /// \param queue_sz maximum number of messages in queue
    +
    /// \param type data type of a single message element
    +
    /// \note CAN BE CHANGED: The parameter to \b osMailQDef shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #if defined (osObjectsExternal) // object is external
    +
    #define osMailQDef(name, queue_sz, type) \
    +
    extern const osMailQDef_t os_mailQ_def_##name
    +
    #else // define the object
    +
    #define osMailQDef(name, queue_sz, type) \
    +
    const osMailQDef_t os_mailQ_def_##name = \
    +
    { (queue_sz), sizeof (type) }
    +
    #endif
    +
    +
    /// \brief Access a Mail Queue Definition.
    +
    /// \param name name of the queue
    +
    /// \note CAN BE CHANGED: The parameter to \b osMailQ shall be consistent but the
    +
    /// macro body is implementation specific in every CMSIS-RTOS.
    +
    #define osMailQ(name) \
    +
    &os_mailQ_def_##name
    +
    +
    /// Create and Initialize mail queue.
    +
    /// \param[in] queue_def reference to the mail queue definition obtain with \ref osMailQ
    +
    /// \param[in] thread_id thread ID (obtained by \ref osThreadCreate or \ref osThreadGetId) or NULL.
    +
    /// \return mail queue ID for reference by other functions or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMailCreate shall be consistent in every CMSIS-RTOS.
    +
    osMailQId osMailCreate (const osMailQDef_t *queue_def, osThreadId thread_id);
    +
    +
    /// Allocate a memory block from a mail.
    +
    /// \param[in] queue_id mail queue ID obtained with \ref osMailCreate.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out
    +
    /// \return pointer to memory block that can be filled with mail or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMailAlloc shall be consistent in every CMSIS-RTOS.
    +
    void *osMailAlloc (osMailQId queue_id, uint32_t millisec);
    +
    +
    /// Allocate a memory block from a mail and set memory block to zero.
    +
    /// \param[in] queue_id mail queue ID obtained with \ref osMailCreate.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out
    +
    /// \return pointer to memory block that can be filled with mail or NULL in case of error.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMailCAlloc shall be consistent in every CMSIS-RTOS.
    +
    void *osMailCAlloc (osMailQId queue_id, uint32_t millisec);
    +
    +
    /// Put a mail to a queue.
    +
    /// \param[in] queue_id mail queue ID obtained with \ref osMailCreate.
    +
    /// \param[in] mail memory block previously allocated with \ref osMailAlloc or \ref osMailCAlloc.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMailPut shall be consistent in every CMSIS-RTOS.
    +
    osStatus osMailPut (osMailQId queue_id, void *mail);
    +
    +
    /// Get a mail from a queue.
    +
    /// \param[in] queue_id mail queue ID obtained with \ref osMailCreate.
    +
    /// \param[in] millisec \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out
    +
    /// \return event that contains mail information or error code.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMailGet shall be consistent in every CMSIS-RTOS.
    +
    osEvent osMailGet (osMailQId queue_id, uint32_t millisec);
    +
    +
    /// Free a memory block from a mail.
    +
    /// \param[in] queue_id mail queue ID obtained with \ref osMailCreate.
    +
    /// \param[in] mail pointer to the memory block that was obtained with \ref osMailGet.
    +
    /// \return status code that indicates the execution status of the function.
    +
    /// \note MUST REMAIN UNCHANGED: \b osMailFree shall be consistent in every CMSIS-RTOS.
    +
    osStatus osMailFree (osMailQId queue_id, void *mail);
    +
    +
    #endif // Mail Queues available
    +
    +
    +
    #ifdef __cplusplus
    +
    }
    +
    #endif
    +
    +
    #endif // _CMSIS_OS_H
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/dir_67baed4ff719a838d401a6dc7774cf41.html b/CMSIS/Documentation/RTOS/html/dir_67baed4ff719a838d401a6dc7774cf41.html new file mode 100644 index 0000000..2b807ff --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/dir_67baed4ff719a838d401a6dc7774cf41.html @@ -0,0 +1,97 @@ + + + + + +RTOS Directory Reference +CMSIS-RTOS: RTOS Directory Reference + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    RTOS Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  Template
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/dir_9afdeffb8e409a4e0df5c5bf9ab1a7d2.html b/CMSIS/Documentation/RTOS/html/dir_9afdeffb8e409a4e0df5c5bf9ab1a7d2.html new file mode 100644 index 0000000..7130d21 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/dir_9afdeffb8e409a4e0df5c5bf9ab1a7d2.html @@ -0,0 +1,97 @@ + + + + + +Template Directory Reference +CMSIS-RTOS: Template Directory Reference + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Template Directory Reference
    +
    +
    + + + + +

    +Files

    file  cmsis_os.h
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/doxygen.css b/CMSIS/Documentation/RTOS/html/doxygen.css new file mode 100644 index 0000000..2642e8f --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/RTOS/html/doxygen.png b/CMSIS/Documentation/RTOS/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/doxygen.png differ diff --git a/CMSIS/Documentation/RTOS/html/dynsections.js b/CMSIS/Documentation/RTOS/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +File List +CMSIS-RTOS: File List + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    File List
    +
    +
    +
    Here is a list of all files with brief descriptions:
    + + +
    \*cmsis_os.h
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/ftv2blank.png b/CMSIS/Documentation/RTOS/html/ftv2blank.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2blank.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2cl.png b/CMSIS/Documentation/RTOS/html/ftv2cl.png new file mode 100644 index 0000000..132f657 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2cl.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2doc.png b/CMSIS/Documentation/RTOS/html/ftv2doc.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2doc.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2folderclosed.png b/CMSIS/Documentation/RTOS/html/ftv2folderclosed.png new file mode 100644 index 0000000..bb8ab35 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2folderclosed.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2folderopen.png b/CMSIS/Documentation/RTOS/html/ftv2folderopen.png new file mode 100644 index 0000000..d6c7f67 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2folderopen.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2lastnode.png b/CMSIS/Documentation/RTOS/html/ftv2lastnode.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2lastnode.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2link.png b/CMSIS/Documentation/RTOS/html/ftv2link.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2link.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2mlastnode.png b/CMSIS/Documentation/RTOS/html/ftv2mlastnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2mlastnode.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2mnode.png b/CMSIS/Documentation/RTOS/html/ftv2mnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2mnode.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2mo.png b/CMSIS/Documentation/RTOS/html/ftv2mo.png new file mode 100644 index 0000000..4bfb80f Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2mo.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2node.png b/CMSIS/Documentation/RTOS/html/ftv2node.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2node.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2ns.png b/CMSIS/Documentation/RTOS/html/ftv2ns.png new file mode 100644 index 0000000..72e3d71 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2ns.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2plastnode.png b/CMSIS/Documentation/RTOS/html/ftv2plastnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2plastnode.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2pnode.png b/CMSIS/Documentation/RTOS/html/ftv2pnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2pnode.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2splitbar.png b/CMSIS/Documentation/RTOS/html/ftv2splitbar.png new file mode 100644 index 0000000..fe895f2 Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2splitbar.png differ diff --git a/CMSIS/Documentation/RTOS/html/ftv2vertline.png b/CMSIS/Documentation/RTOS/html/ftv2vertline.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTOS/html/ftv2vertline.png differ diff --git a/CMSIS/Documentation/RTOS/html/functions.html b/CMSIS/Documentation/RTOS/html/functions.html new file mode 100644 index 0000000..489dcb6 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/functions.html @@ -0,0 +1,161 @@ + + + + + +Data Fields +CMSIS-RTOS: Data Fields + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/functions_vars.html b/CMSIS/Documentation/RTOS/html/functions_vars.html new file mode 100644 index 0000000..aaa3ef2 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/functions_vars.html @@ -0,0 +1,161 @@ + + + + + +Data Fields - Variables +CMSIS-RTOS: Data Fields - Variables + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/globals.html b/CMSIS/Documentation/RTOS/html/globals.html new file mode 100644 index 0000000..484e7b3 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/globals.html @@ -0,0 +1,423 @@ + + + + + +Globals +CMSIS-RTOS: Globals + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/globals_defs.html b/CMSIS/Documentation/RTOS/html/globals_defs.html new file mode 100644 index 0000000..5396235 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/globals_defs.html @@ -0,0 +1,182 @@ + + + + + +Globals +CMSIS-RTOS: Globals + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/globals_enum.html b/CMSIS/Documentation/RTOS/html/globals_enum.html new file mode 100644 index 0000000..a07156b --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/globals_enum.html @@ -0,0 +1,110 @@ + + + + + +Globals +CMSIS-RTOS: Globals + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/globals_eval.html b/CMSIS/Documentation/RTOS/html/globals_eval.html new file mode 100644 index 0000000..8b896e2 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/globals_eval.html @@ -0,0 +1,173 @@ + + + + + +Globals +CMSIS-RTOS: Globals + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/globals_func.html b/CMSIS/Documentation/RTOS/html/globals_func.html new file mode 100644 index 0000000..4c7ec3c --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/globals_func.html @@ -0,0 +1,225 @@ + + + + + +Globals +CMSIS-RTOS: Globals + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    +
    +  + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/globals_type.html b/CMSIS/Documentation/RTOS/html/globals_type.html new file mode 100644 index 0000000..32d4d3d --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/globals_type.html @@ -0,0 +1,125 @@ + + + + + +Globals +CMSIS-RTOS: Globals + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.html new file mode 100644 index 0000000..fec85f6 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.html @@ -0,0 +1,122 @@ + + + + + +CMSIS-RTOS API +CMSIS-RTOS: CMSIS-RTOS API + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    CMSIS-RTOS API
    +
    +
    + +

    This section describes the CMSIS-RTOS API. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Content

     Kernel Information and Control
     Provide version/system information and start the RTOS Kernel.
     
     Thread Management
     Define, create, and control thread functions.
     
     Generic Wait Functions
     Wait for a time period or unspecified events.
     
     Timer Management
     Create and control timer and timer callback functions.
     
     Inter-Thread Communication and Resource Sharing
     Functions for inter-thread communication.
     
     Generic Data Types and Definitions
     Data Type Definitions used by the CMSIS-RTOS API functions.
     
     Status and Error Codes
     Status and Error Codes returned by CMSIS-RTOS API functions.
     
    +

    Description

    +

    The CMSIS-RTOS is a generic API layer that interfaces to an existing RTOS kernel.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.js new file mode 100644 index 0000000..3df2489 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s.js @@ -0,0 +1,10 @@ +var group___c_m_s_i_s___r_t_o_s = +[ + [ "Kernel Information and Control", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl" ], + [ "Thread Management", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html", "group___c_m_s_i_s___r_t_o_s___thread_mgmt" ], + [ "Generic Wait Functions", "group___c_m_s_i_s___r_t_o_s___wait.html", "group___c_m_s_i_s___r_t_o_s___wait" ], + [ "Timer Management", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html", "group___c_m_s_i_s___r_t_o_s___timer_mgmt" ], + [ "Inter-Thread Communication and Resource Sharing", "group___c_m_s_i_s___r_t_o_s___inter_thread.html", "group___c_m_s_i_s___r_t_o_s___inter_thread" ], + [ "Generic Data Types and Definitions", "group___c_m_s_i_s___r_t_o_s___definitions.html", "group___c_m_s_i_s___r_t_o_s___definitions" ], + [ "Status and Error Codes", "group___c_m_s_i_s___r_t_o_s___status.html", "group___c_m_s_i_s___r_t_o_s___status" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.html new file mode 100644 index 0000000..e62e66b --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.html @@ -0,0 +1,260 @@ + + + + + +Generic Data Types and Definitions +CMSIS-RTOS: Generic Data Types and Definitions + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Generic Data Types and Definitions
    +
    +
    + +

    Data Type Definitions used by the CMSIS-RTOS API functions. +More...

    + + + + + + + +

    +Data Structures

    struct  osEvent
     Event structure contains detailed information about an event. More...
     
    struct  os_mailQ
     
    +

    Description

    +

    The Data Type section lists all data types that are used to exchange information with CMSIS-RTOS functions.

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct osEvent
    +
    +
    Note
    MUST REMAIN UNCHANGED: os_event shall be consistent in every CMSIS-RTOS. However the struct may be extended at the end.
    +

    The osEvent structure describes the events returned by CMSIS-RTOS functions.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    osStatus status
     status code: event or error information
     
    union {
       uint32_t   v
     message as 32-bit value
     
       void *   p
     message or mail as void pointer
     
       int32_t   signals
     signal flags
     
    value
     event value
     
    union {
       osMailQId   mail_id
     mail id obtained by osMailCreate
     
       osMessageQId   message_id
     message id obtained by osMessageCreate
     
    def
     event definition
     
    +

    Field Documentation

    + +
    +
    + + + + +
    union { ... } def
    +
    + +
    +
    + +
    +
    + + + + +
    osMailQId mail_id
    +
    + +
    +
    + +
    +
    + + + + +
    osMessageQId message_id
    +
    + +
    +
    + +
    +
    + + + + +
    void* p
    +
    + +
    +
    + +
    +
    + + + + +
    int32_t signals
    +
    + +
    +
    + +
    +
    + + + + +
    osStatus status
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t v
    +
    + +
    +
    + +
    +
    + + + + +
    union { ... } value
    +
    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct os_mailQ
    +
    +

    The osEvent structure describes the events returned by CMSIS-RTOS functions.

    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.js new file mode 100644 index 0000000..5eab500 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___definitions.js @@ -0,0 +1,14 @@ +var group___c_m_s_i_s___r_t_o_s___definitions = +[ + [ "osEvent", "group___c_m_s_i_s___r_t_o_s___definitions.html#structos_event", [ + [ "def", "group___c_m_s_i_s___r_t_o_s___definitions.html#a596b6d55c3321db19239256bbe403df6", null ], + [ "mail_id", "group___c_m_s_i_s___r_t_o_s___definitions.html#ac86175a4b1706bee596f3018322df26e", null ], + [ "message_id", "group___c_m_s_i_s___r_t_o_s___definitions.html#af394cbe21dde7377974e63af38cd87b0", null ], + [ "p", "group___c_m_s_i_s___r_t_o_s___definitions.html#a117104b82864d3b23ec174af6d392709", null ], + [ "signals", "group___c_m_s_i_s___r_t_o_s___definitions.html#ad0dda1bf7e74f1576261d493fba232b6", null ], + [ "status", "group___c_m_s_i_s___r_t_o_s___definitions.html#ad477a289f1f03ac45407b64268d707d3", null ], + [ "v", "group___c_m_s_i_s___r_t_o_s___definitions.html#a9e0a00edabf3b8a5dafff624fff7bbfc", null ], + [ "value", "group___c_m_s_i_s___r_t_o_s___definitions.html#a0b9f8fd3645f01d8cb09cae82add2d7f", null ] + ] ], + [ "os_mailQ", "group___c_m_s_i_s___r_t_o_s___definitions.html#structos__mail_q", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.html new file mode 100644 index 0000000..843de70 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.html @@ -0,0 +1,133 @@ + + + + + +Inter-Thread Communication and Resource Sharing +CMSIS-RTOS: Inter-Thread Communication and Resource Sharing + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Inter-Thread Communication and Resource Sharing
    +
    +
    + +

    Functions for inter-thread communication. +More...

    + + + + + + + + + + + + + + + + + + + + +

    +Content

     Signal Events
     Synchronize threads using signals.
     
     Message Queue
     Exchange messages between threads in a FIFO-like operation.
     
     Memory Pool
     Manage thread-safe fixed-size blocks of dynamic memory.
     
     Mail Queue
     Exchange data between threads using a queue of memory blocks.
     
     Mutexes
     Synchronize resource access using Mutual Exclusion (Mutex).
     
     Semaphores
     Access shared resources simultaneously from different threads.
     
    +

    Description

    +

    In most applications, threads need to communicate with each other or access shared resources together. There are many ways to exchange data between threads, for example using shared data, polling loops and message passing.

    +

    Many resources in a microcontroller can be considered as serially-reusable. This means that they can be used repeatedly by different threads, but only by one thread at a time (for example communication peripherals such as UARTs, memory, and files that need to be modified).

    +

    The CMSIS-RTOS API provides different means to pass messages between threads to make inter-thread communication more efficient. Also, resource sharing is inherently supported. The following methods are available to the user:

    +

    Inter-Thread Communication

    + +

    Resource Sharing

    + +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.js new file mode 100644 index 0000000..12c2295 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___inter_thread.js @@ -0,0 +1,9 @@ +var group___c_m_s_i_s___r_t_o_s___inter_thread = +[ + [ "Signal Events", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html", "group___c_m_s_i_s___r_t_o_s___signal_mgmt" ], + [ "Message Queue", "group___c_m_s_i_s___r_t_o_s___message.html", "group___c_m_s_i_s___r_t_o_s___message" ], + [ "Memory Pool", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html", "group___c_m_s_i_s___r_t_o_s___pool_mgmt" ], + [ "Mail Queue", "group___c_m_s_i_s___r_t_o_s___mail.html", "group___c_m_s_i_s___r_t_o_s___mail" ], + [ "Mutexes", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt" ], + [ "Semaphores", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html new file mode 100644 index 0000000..4adc773 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html @@ -0,0 +1,429 @@ + + + + + +Kernel Information and Control +CMSIS-RTOS: Kernel Information and Control + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Kernel Information and Control
    +
    +
    + +

    Provide version/system information and start the RTOS Kernel. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define osFeature_MainThread   1
     main thread 1=main can be thread, 0=not available
     
    #define osFeature_SysTick   1
     osKernelSysTick functions: 1=available, 0=not available
     
    #define osCMSIS   0x10002
     API version (main [31:16] .sub [15:0])
     
    #define osCMSIS_KERNEL   0x10000
     RTOS identification and version (main [31:16] .sub [15:0])
     
    #define osKernelSystemId   "KERNEL V1.00"
     RTOS identification string.
     
    #define osKernelSysTickFrequency   100000000
     The RTOS kernel system timer frequency in Hz.
     
    #define osKernelSysTickMicroSec(microsec)   (((uint64_t)microsec * (osKernelSysTickFrequency)) / 1000000)
     Convert a microseconds value to a RTOS kernel system timer value.
     
    + + + + + + + + + + + + + +

    +Functions

    osStatus osKernelInitialize (void)
     Initialize the RTOS Kernel for creating objects.
     
    osStatus osKernelStart (void)
     Start the RTOS Kernel.
     
    int32_t osKernelRunning (void)
     Check if the RTOS kernel is already started.
     
    uint32_t osKernelSysTick (void)
     Get the RTOS kernel system timer counter.
     
    +

    Description

    +

    The Kernel Information and Control function group allows to:

    +
      +
    • obtain information about the system and the underlying kernel.
    • +
    • obtain version information about the CMSIS-RTOS API.
    • +
    • initialize of the RTOS kernel for creating objects.
    • +
    • start the RTOS kernel and thread switching.
    • +
    • check the execution status of the RTOS kernel.
    • +
    +

    The function main is a special thread function that may be started at system initialization. In this case it has the initial priority osPriorityNormal.

    +

    When reaching main, it is necessary to:

    +
      +
    1. Call osKernelInitialize() to initialize the CMSIS-RTOS Kernel
    2. +
    3. Setup device peripherals and create other RTOS objects using the os*Create functions.
    4. +
    5. Start the Kernel and begin thread switching by calling osKernelStart().
    6. +
    +

    Code Example

    +
    int main (void) {
    +
    osKernelInitialize (); // initialize CMSIS-RTOS
    +
    +
    // initialize peripherals here
    +
    +
    // create 'thread' functions that start executing,
    +
    // example: tid_name = osThreadCreate (osThread(name), NULL);
    +
    +
    osKernelStart (); // start thread execution
    +
    }
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osCMSIS   0x10002
    +
    +

    Version information of the CMSIS-RTOS API whereby major version is in bits [31:16] and sub version in bits [15:0]. The value 0x10000 represents version 1.00.

    +
    Note
    MUST REMAIN UNCHANGED: osCMSIS identifies the CMSIS-RTOS API version.
    + +
    +
    + +
    +
    + + + + +
    #define osCMSIS_KERNEL   0x10000
    +
    +

    Identifies the underlying RTOS kernel and version number. The actual name of that define depends on the RTOS Kernel used in the implementation. For example, osCMSIS_FreeRTOS identifies the FreeRTOS kernel and the value indicates the version number of that kernel whereby the major version is in bits [31:16] and sub version in bits [15:0]. The value 0x10000 represents version 1.00.

    +
    Note
    CAN BE CHANGED: osCMSIS_KERNEL identifies the underlying RTOS kernel and version number.
    + +
    +
    + +
    +
    + + + + +
    #define osFeature_MainThread   1
    +
    +

    A CMSIS-RTOS implementation may support to start thread execution with the function 'main'.

    + +
    Note
    MUST REMAIN UNCHANGED: osFeature_xxx shall be consistent in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    #define osFeature_SysTick   1
    +
    +

    A CMSIS-RTOS implementation may provide access to the RTOS kernel system timer.

    + + +
    +
    + +
    +
    + + + + +
    #define osKernelSystemId   "KERNEL V1.00"
    +
    +

    Defines a string that identifies the underlying RTOS Kernel and provides version information. The length of that string is limited to 21 bytes. A valid identification string is for example, "FreeRTOS V1.00".

    +
    Note
    MUST REMAIN UNCHANGED: osKernelSystemId shall be consistent in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + +
    #define osKernelSysTickFrequency   100000000
    +
    +

    Specifies the frequency of the Kernel SysTick timer in Hz. The value is typically use to scale a time value and is for example used in osKernelSysTickMicroSec.

    +
    See Also
    osKernelSysTick
    +
    Note
    Reflects the system timer setting and is typically defined in a configuration file.
    + +
    +
    + +
    +
    + + + + + + + + +
    #define osKernelSysTickMicroSec( microsec)   (((uint64_t)microsec * (osKernelSysTickFrequency)) / 1000000)
    +
    +

    Allows you to scale a microsecond value to the frequency of the Kernel SysTick timer. This macro is typically used to check for short timeouts in polling loops.

    +
    See Also
    osKernelSysTick
    +
    Parameters
    + + +
    microsectime value in microseconds.
    +
    +
    +
    Returns
    time value normalized to the osKernelSysTickFrequency
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    osStatus osKernelInitialize (void )
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osKernelInitialize shall be consistent in every CMSIS-RTOS.
    +

    Initialize of the RTOS Kernel to allow peripheral setup and creation of other RTOS objects with the functions:

    + +

    The RTOS kernel does not start thread switching until the function osKernelStart is called.

    +
    Note
    In case that the RTOS Kernel starts thread execution with the function main the function osKernelInitialize stops thread switching. This allows you to setup the system to a defined state before thread switching is resumed with osKernelStart.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    int main (void) {
    +
    if (!osKernelRunning ()) { // if kernel is not running, initialize the kernel
    +
    if (osKernelInitialize () != osOK) { // check osStatus for other possible valid values
    +
    // exit with an error message
    +
    }
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t osKernelRunning (void )
    +
    +
    Note
    MUST REMAIN UNCHANGED: osKernelRunning shall be consistent in every CMSIS-RTOS.
    +
    Returns
    0 RTOS is not started, 1 RTOS is started.
    +

    Identifies if the RTOS kernel is started. For systems with the option to start the main function as a thread this allows you to identify that the RTOS kernel is already running.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    int main (void) { // program execution starts here
    +
    if (osKernelRunning ()) {
    +
    : // main is already a thread function
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osKernelStart (void )
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osKernelStart shall be consistent in every CMSIS-RTOS.
    +

    Start the RTOS Kernel and begin thread switching.

    +
    Note
    When the CMSIS-RTOS starts thread execution with the function main this function resumes thread switching. The main thread will continue executing after osKernelStart.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the RTOS kernel has been successfully started.
    • +
    • osErrorISR: osKernelStart cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    int main (void) {
    +
    if (osKernelInitialize () != osOK) { // check osStatus for other possible valid values
    +
    // exit with an error message
    +
    }
    +
    +
    if (!osKernelRunning ()) { // is the kernel running ?
    +
    if (osKernelStart () != osOK) { // start the kernel
    +
    // kernel could not be started
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    uint32_t osKernelSysTick (void )
    +
    +
    Note
    MUST REMAIN UNCHANGED: osKernelSysTick shall be consistent in every CMSIS-RTOS.
    +
    Returns
    RTOS kernel system timer as 32-bit value
    +

    Get the value of the Kernel SysTick timer for time comparison. The value is a rolling 32-bit counter that is typically composed of the kernel system interrupt timer value and an counter that counts these interrupts.

    +

    This function allows the implementation of timeout checks. These are for example required when checking for a busy status in a device or peripheral initialization routine.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void SetupDevice (void) {
    +
    uint32_t tick;
    +
    +
    tick = osKernelSysTick(); // get start value of the Kernel system tick
    +
    Device.Setup (); // initialize a device or peripheral
    +
    do { // poll device busy status for 100 microseconds
    +
    if (!Device.Busy) break; // check if device is correctly initialized
    +
    } while ((osKernelSysTick() - tick) < osKernelSysTickMicroSec(100));
    +
    if (Device.Busy) {
    +
    ; // in case device still busy, signal error
    +
    }
    +
    // start interacting with device
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js new file mode 100644 index 0000000..50eddf6 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js @@ -0,0 +1,14 @@ +var group___c_m_s_i_s___r_t_o_s___kernel_ctrl = +[ + [ "osCMSIS", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga702196bacccbb978620c736b209387f1", null ], + [ "osCMSIS_KERNEL", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gab78dce646fabec479c5f34bc5175b7de", null ], + [ "osFeature_MainThread", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga22f7d235bc9f783933bd5a981fd79696", null ], + [ "osFeature_SysTick", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae554ec16c23c5b7d65affade2a351891", null ], + [ "osKernelSystemId", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga47cf03658f01cdffca688e9096b58289", null ], + [ "osKernelSysTickFrequency", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga9e0954d52722673e2031233a2ab99960", null ], + [ "osKernelSysTickMicroSec", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae12c190af42d7310d8006d64f4ed5a88", null ], + [ "osKernelInitialize", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga53d078a801022e202e8115c083ece68e", null ], + [ "osKernelRunning", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga3b571de44cd3094c643247a7397f86b5", null ], + [ "osKernelStart", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gaab668ffd2ea76bb0a77ab0ab385eaef2", null ], + [ "osKernelSysTick", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gad0262e4688e95d1e9038afd9bcc16001", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.html new file mode 100644 index 0000000..a28161e --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.html @@ -0,0 +1,594 @@ + + + + + +Mail Queue +CMSIS-RTOS: Mail Queue + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    + +
    + +

    Exchange data between threads using a queue of memory blocks. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_MailQ   1
     Mail Queues: 1=available, 0=not available.
     
    #define osMailQDef(name, queue_sz, type)
     Create a Mail Queue Definition.
     
    #define osMailQ(name)   &os_mailQ_def_##name
     Access a Mail Queue Definition.
     
    + + + + + + + + + + + + + + + + + + + +

    +Functions

    osMailQId osMailCreate (const osMailQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize mail queue.
     
    void * osMailAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail.
     
    void * osMailCAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail and set memory block to zero.
     
    osStatus osMailPut (osMailQId queue_id, void *mail)
     Put a mail to a queue.
     
    osEvent osMailGet (osMailQId queue_id, uint32_t millisec)
     Get a mail from a queue.
     
    osStatus osMailFree (osMailQId queue_id, void *mail)
     Free a memory block from a mail.
     
    +

    Description

    +

    A mail queue resembles a Message Queue, but the data that is being transferred consists of memory blocks that need to be allocated (before putting data in) and freed (after taking data out). The mail queue uses a Memory Pool to create formatted memory blocks and passes pointers to these blocks in a message queue. This allows the data to stay in an allocated memory block while only a pointer is moved between the separate threads. This is an advantage over messages that can transfer only a 32-bit value or a pointer. Using the mail queue functions, you can control, send, receive, or wait for mail.

    +
    +MailQueue.png +
    +CMSIS-RTOS Mail Queue
    +

    Working with Mail Queues

    +

    Follow these steps to create and use a mail queue:

    +
      +
    1. Declare a data structure that combines a number of elements:
      typedef struct {
      +
      uint32_t length;
      +
      uint32_t width;
      +
      uint32_t height;
      +
      uint32_t weight;
      +
      } properties_t;
      +
    2. +
    3. Declare a mail queue made up of these objects:
      osMailQDef (object_pool_q, 10, properties_t); // Declare mail queue
      +
      osMailQId (object_pool_q_id); // Mail queue ID
      +
    4. +
    5. Then, create the mail pool in a thread:
      object_pool_q_id = osMailCreate(osMailQ(object_pool_q), NULL);
      +
    6. +
    7. Allocate the mail queue within a thread and fill it with data:
      properties_t *object_data;
      +
      *object_data = (properties_t *) osMailAlloc(object_pool_q_id, osWaitForever);
      +
      +
      object_data->length = 100;
      +
      object_data->width = 10;
      +
      object_data->height = 23;
      +
      object_data->weight = 1000;
      +
    8. +
    9. Pass the pointer to the mail queue to another thread:
      osMailPut(object_pool_q_id, object_data);
      +
    10. +
    11. Access the data in another thread:
      osEvent event = osMailGet(properties_q_id, osWaitForever);
      +
      properties_t *received = (properties_t *)event.value.p; // ".p" indicates that the message is a pointer
      +
      my_length(received->length);
      +
    12. +
    13. Once the data has been used, the memory block must be freed so that the memory pool can be reused
      osMailFree(object_pool_q_id, received);
      +
    14. +
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_MailQ   1
    +
    +

    A CMSIS-RTOS implementation may support mail queues.

    + + +
    +
    + +
    +
    + + + + + + + + +
    #define osMailQ( name)   &os_mailQ_def_##name
    +
    +

    Access to the mail queue definition for the function osMailCreate.

    +
    Parameters
    + + +
    namename of the queue
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osMailQ shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osMailQDef( name,
     queue_sz,
     type 
    )
    +
    +

    Define the attributes of a mail queue that can by the function osMailCreate using osMailQ.

    +
    Note
    The parameter thread registers the receiving thread for a mail and is needed for the general osWait function to deliver the mail.
    +
    Parameters
    + + + + +
    namename of the queue
    queue_szmaximum number of messages in queue
    typedata type of a single message element
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osMailQDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void * osMailAlloc (osMailQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]millisecTimout Value or 0 in case of no time-out
    +
    +
    +
    Returns
    pointer to memory block that can be filled with mail or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osMailAlloc shall be consistent in every CMSIS-RTOS.
    +

    Allocate a memory block from the mail queue that is filled with the mail information.

    +

    The argument queue_id specifies a mail queue identifier that is obtain with osMailCreate.

    +

    The argument millisec specifies how long the system waits for a mail slot to become available. While the system waits the tread calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a mail slot can be allocated.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +
    +Interrupt Service Routines can call this function.
    +

    A NULL pointer is returned when no memory slot can be obtained or queue specifies an illegal parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void * osMailCAlloc (osMailQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]millisecTimout Value or 0 in case of no time-out
    +
    +
    +
    Returns
    pointer to memory block that can be filled with mail or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osMailCAlloc shall be consistent in every CMSIS-RTOS.
    +

    Allocate a memory block from the mail queue that is filled with the mail information. The memory block returned is cleared.

    +

    The argument queue_id specifies a mail queue identifier that is obtain with osMailCreate.

    +

    The argument millisec specifies how long the system waits for a mail slot to become available. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a mail slot can be allocated.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +
    +Interrupt Service Routines can call this function.
    +

    A NULL pointer is returned when no memory block can be obtained or queue specifies an illegal parameter.

    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osMailQId osMailCreate (const osMailQDef_tqueue_def,
    osThreadId thread_id 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_defreference to the mail queue definition obtain with osMailQ
    [in]thread_idthread ID (obtained by osThreadCreate or osThreadGetId) or NULL.
    +
    +
    +
    Returns
    mail queue ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osMailCreate shall be consistent in every CMSIS-RTOS.
    +

    Initialize and create a mail queue.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    osThreadId tid_thread1; // ID for thread 1
    +
    osThreadId tid_thread2; // ID for thread 2
    +
    +
    typedef struct { // Mail object structure
    +
    float voltage; // AD result of measured voltage
    +
    float current; // AD result of measured current
    +
    int counter; // A counter value
    +
    } T_MEAS;
    +
    +
    osMailQDef(mail, 16, T_MEAS); // Define mail queue
    +
    osMailQId mail;
    +
    +
    void send_thread (void const *argument); // forward reference
    +
    void recv_thread (void const *argument);
    +
    +
    osThreadDef(send_thread, osPriorityNormal, 1, 0); // thread definitions
    +
    osThreadDef(recv_thread, osPriorityNormal, 1, 2000);
    +
    +
    //
    +
    // Thread 1: Send thread
    +
    //
    +
    void send_thread (void const *argument) {
    +
    T_MEAS *mptr;
    +
    +
    mptr = osMailAlloc(mail, osWaitForever); // Allocate memory
    +
    mptr->voltage = 223.72; // Set the mail content
    +
    mptr->current = 17.54;
    +
    mptr->counter = 120786;
    +
    osMailPut(mail, mptr); // Send Mail
    +
    osDelay(100);
    +
    +
    mptr = osMailAlloc(mail, osWaitForever); // Allocate memory
    +
    mptr->voltage = 227.23; // Prepare 2nd mail
    +
    mptr->current = 12.41;
    +
    mptr->counter = 170823;
    +
    osMailPut(mail, mptr); // Send Mail
    +
    osThreadYield(); // Cooperative multitasking
    +
    // We are done here, exit this thread
    +
    }
    +
    +
    //
    +
    // Thread 2: Receive thread
    +
    //
    +
    void recv_thread (void const *argument) {
    +
    T_MEAS *rptr;
    +
    osEvent evt;
    +
    +
    for (;;) {
    +
    evt = osMailGet(mail, osWaitForever); // wait for mail
    +
    if (evt.status == osEventMail) {
    +
    rptr = evt.value.p;
    +
    printf ("\nVoltage: %.2f V\n", rptr->voltage);
    +
    printf ("Current: %.2f A\n", rptr->current);
    +
    printf ("Number of cycles: %d\n", rptr->counter);
    +
    osMailFree(mail, rptr); // free memory allocated for mail
    +
    }
    +
    }
    +
    }
    +
    +
    void StartApplication (void) {
    +
    mail = osMailCreate(osMailQ(mail), NULL); // create mail queue
    +
    +
    tid_thread1 = osThreadCreate(osThread(send_thread), NULL);
    +
    tid_thread2 = osThreadCreate(osThread(recv_thread), NULL);
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osMailFree (osMailQId queue_id,
    void * mail 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]mailpointer to the memory block that was obtained with osMailGet.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osMailFree shall be consistent in every CMSIS-RTOS.
    +

    Free the memory block specified by mail and return it to the mail queue.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mail block is released.
    • +
    • osErrorValue: mail block does not belong to the mail queue pool.
    • +
    • osErrorParameter: the value to the parameter queue_id is incorrect.
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osEvent osMailGet (osMailQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]millisecTimout Value or 0 in case of no time-out
    +
    +
    +
    Returns
    event that contains mail information or error code.
    +
    Note
    MUST REMAIN UNCHANGED: osMailGet shall be consistent in every CMSIS-RTOS.
    +

    Suspend the execution of the current RUNNING thread until a mail arrives. When a mail is already in the queue, the function returns instantly with the mail information.

    +

    The argument millisec specifies how long the system waits for a mail to arrive. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a mail arrives.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +
    +Interrupt Service Routines can call this function.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: no mail is available in the queue and no timeout was specified
    • +
    • osEventTimeout: no mail has arrived during the given timeout period.
    • +
    • osEventMail: mail received, value.p contains the pointer to mail content.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osMailPut (osMailQId queue_id,
    void * mail 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]mailmemory block previously allocated with osMailAlloc or osMailCAlloc.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osMailPut shall be consistent in every CMSIS-RTOS.
    +

    Put the memory block specified with mail into the mail queue specified by queue.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the message is put into the queue.
    • +
    • osErrorValue: mail was previously not allocated as memory slot.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.js new file mode 100644 index 0000000..72ce801 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mail.js @@ -0,0 +1,12 @@ +var group___c_m_s_i_s___r_t_o_s___mail = +[ + [ "osFeature_MailQ", "group___c_m_s_i_s___r_t_o_s___mail.html#gaceb2e0071ce160d153047f2eac1aca8e", null ], + [ "osMailQ", "group___c_m_s_i_s___r_t_o_s___mail.html#gad2deeb66d51ade54e63d8f87ff2ec9d2", null ], + [ "osMailQDef", "group___c_m_s_i_s___r_t_o_s___mail.html#ga58d712b16c0c6668059f509386d1e55b", null ], + [ "osMailAlloc", "group___c_m_s_i_s___r_t_o_s___mail.html#gadf5ce811bd6a56e617e902a1db6c2194", null ], + [ "osMailCAlloc", "group___c_m_s_i_s___r_t_o_s___mail.html#ga8fde74f6fe5b9e88f75cc5eb8f2124fd", null ], + [ "osMailCreate", "group___c_m_s_i_s___r_t_o_s___mail.html#gaa177e7fe5820dd70d8c9e46ded131174", null ], + [ "osMailFree", "group___c_m_s_i_s___r_t_o_s___mail.html#ga27c1060cf21393f96b4fd1ed1c0167cc", null ], + [ "osMailGet", "group___c_m_s_i_s___r_t_o_s___mail.html#gac6ad7e6e7d6c4a80e60da22c57a42ccd", null ], + [ "osMailPut", "group___c_m_s_i_s___r_t_o_s___mail.html#ga485ef6f81854ebda8ffbce4832181e02", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html new file mode 100644 index 0000000..336fd47 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.html @@ -0,0 +1,451 @@ + + + + + +Message Queue +CMSIS-RTOS: Message Queue + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    + +
    + +

    Exchange messages between threads in a FIFO-like operation. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_MessageQ   1
     Message Queues: 1=available, 0=not available.
     
    #define osMessageQDef(name, queue_sz, type)
     Create a Message Queue Definition.
     
    #define osMessageQ(name)   &os_messageQ_def_##name
     Access a Message Queue Definition.
     
    + + + + + + + + + + +

    +Functions

    osMessageQId osMessageCreate (const osMessageQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize a Message Queue.
     
    osStatus osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t millisec)
     Put a Message to a Queue.
     
    osEvent osMessageGet (osMessageQId queue_id, uint32_t millisec)
     Get a Message or Wait for a Message from a Queue.
     
    +

    Description

    +

    Message passing is another basic communication model between threads. In the message passing model, one thread sends data explicitly, while another thread receives it. The operation is more like some kind of I/O rather than a direct access to information to be shared. In CMSIS-RTOS, this mechanism is called s message queue. The data is passed from one thread to another in a FIFO-like operation. Using message queue functions, you can control, send, receive, or wait for messages. The data to be passed can be of integer or pointer type:

    +
    +MessageQueue.png +
    +CMSIS-RTOS Message Queue
    +

    Compared to a Memory Pool, message queues are less efficient in general, but solve a broader range of problems. Sometimes, threads do not have a common address space or the use of shared memory raises problems, such as mutual exclusion.

    +

    Working with Message Queues

    +

    Follow these steps to create and use a message queue:

    +
      +
    1. Setup the message queue:
      osMessageQDef(message_q, 5, uint32_t); // Declare a message queue
      +
      osMessageQId (message_q_id); // Declare an ID for the message queue
      +
    2. +
    3. Then, create the message queue in a thread:
      message_q_id = osMessageCreate(osMessageQ(message_q), NULL);
      +
    4. +
    5. Fill the message queue with data:
      uint32_t data = 512;
      +
      +
      osMailPut(message_q_id, data, osWaitForever);
      +
    6. +
    7. From the receiving thread access the data using:
      osEvent event = osMessageGet(message_q_id, osWaitForever);
      +
    8. +
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_MessageQ   1
    +
    +

    A CMSIS-RTOS implementation may support message queues.

    + + +
    +
    + +
    +
    + + + + + + + + +
    #define osMessageQ( name)   &os_messageQ_def_##name
    +
    +

    Access to the message queue definition for the function osMessageCreate.

    +
    Parameters
    + + +
    namename of the queue
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osMessageQ shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osMessageQDef( name,
     queue_sz,
     type 
    )
    +
    +

    Define the attributes of a message queue created by the function osMessageCreate using osMessageQ.

    +
    Note
    The parameter thread registers the receiving thread for a message and is needed for the general osWait function to deliver the message.
    +
    Parameters
    + + + + +
    namename of the queue.
    queue_szmaximum number of messages in the queue.
    typedata type of a single message element (for debugger).
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osMessageQDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osMessageQId osMessageCreate (const osMessageQDef_tqueue_def,
    osThreadId thread_id 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_defqueue definition referenced with osMessageQ.
    [in]thread_idthread ID (obtained by osThreadCreate or osThreadGetId) or NULL.
    +
    +
    +
    Returns
    message queue ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osMessageCreate shall be consistent in every CMSIS-RTOS.
    +

    Create and initialize a message queue.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    osThreadId tid_thread1; // ID for thread 1
    +
    osThreadId tid_thread2; // for thread 2
    +
    +
    typedef struct { // Message object structure
    +
    float voltage; // AD result of measured voltage
    +
    float current; // AD result of measured current
    +
    int counter; // A counter value
    +
    } T_MEAS;
    +
    +
    osPoolDef(mpool, 16, T_MEAS); // Define memory pool
    +
    osPoolId mpool;
    +
    osMessageQDef(MsgBox, 16, T_MEAS); // Define message queue
    +
    osMessageQId MsgBox;
    +
    +
    void send_thread (void const *argument); // forward reference
    +
    void recv_thread (void const *argument); // forward reference
    +
    // Thread definitions
    +
    osThreadDef(send_thread, osPriorityNormal, 1, 0);
    +
    osThreadDef(recv_thread, osPriorityNormal, 1, 2000);
    +
    +
    //
    +
    // Thread 1: Send thread
    +
    //
    +
    void send_thread (void const *argument) {
    +
    T_MEAS *mptr;
    +
    +
    mptr = osPoolAlloc(mpool); // Allocate memory for the message
    +
    mptr->voltage = 223.72; // Set the message content
    +
    mptr->current = 17.54;
    +
    mptr->counter = 120786;
    +
    osMessagePut(MsgBox, (uint32_t)mptr, osWaitForever); // Send Message
    +
    osDelay(100);
    +
    +
    mptr = osPoolAlloc(mpool); // Allocate memory for the message
    +
    mptr->voltage = 227.23; // Prepare a 2nd message
    +
    mptr->current = 12.41;
    +
    mptr->counter = 170823;
    +
    osMessagePut(MsgBox, (uint32_t)mptr, osWaitForever); // Send Message
    +
    osThreadYield(); // Cooperative multitasking
    +
    // We are done here, exit this thread
    +
    }
    +
    +
    //
    +
    // Thread 2: Receive thread
    +
    //
    +
    void recv_thread (void const *argument) {
    +
    T_MEAS *rptr;
    +
    osEvent evt;
    +
    +
    for (;;) {
    +
    evt = osMessageGet(MsgBox, osWaitForever); // wait for message
    +
    if (evt.status == osEventMessage) {
    +
    rptr = evt.value.p;
    +
    printf ("\nVoltage: %.2f V\n", rptr->voltage);
    +
    printf ("Current: %.2f A\n", rptr->current);
    +
    printf ("Number of cycles: %d\n", rptr->counter);
    +
    osPoolFree(mpool, rptr); // free memory allocated for message
    +
    }
    +
    }
    +
    }
    +
    +
    void StartApplication (void) {
    +
    mpool = osPoolCreate(osPool(mpool)); // create memory pool
    +
    MsgBox = osMessageCreate(osMessageQ(MsgBox), NULL); // create msg queue
    +
    +
    tid_thread1 = osThreadCreate(osThread(send_thread), NULL);
    +
    tid_thread2 = osThreadCreate(osThread(recv_thread), NULL);
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osEvent osMessageGet (osMessageQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmessage queue ID obtained with osMessageCreate.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    event information that includes status code.
    +
    Note
    MUST REMAIN UNCHANGED: osMessageGet shall be consistent in every CMSIS-RTOS.
    +

    Suspend the execution of the current RUNNING thread until a message arrives. When a message is already in the queue, the function returns instantly with the message information.

    +

    The argument millisec specifies how long the system waits for a message to become available. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout value can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a message arrives.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +
    +Interrupt Service Routines can call this function.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: no message is available in the queue and no timeout was specified.
    • +
    • osEventTimeout: no message has arrived during the given timeout period.
    • +
    • osEventMessage: message received, value.p contains the pointer to message.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    osStatus osMessagePut (osMessageQId queue_id,
    uint32_t info,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + + +
    [in]queue_idmessage queue ID obtained with osMessageCreate.
    [in]infomessage information.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osMessagePut shall be consistent in every CMSIS-RTOS.
    +

    Put the message info in a message queue specified by queue_id.

    +

    When the message queue is full, the system retries for a specified time with millisec. While the system retries the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a message queue slot becomes available.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +
    +Interrupt Service Routines can call this function.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the message is put into the queue.
    • +
    • osErrorResource: no memory in the queue was available.
    • +
    • osErrorTimeoutResource: no memory in the queue was available during the given time limit.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.js new file mode 100644 index 0000000..38de1fa --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___message.js @@ -0,0 +1,9 @@ +var group___c_m_s_i_s___r_t_o_s___message = +[ + [ "osFeature_MessageQ", "group___c_m_s_i_s___r_t_o_s___message.html#ga479a6561f859e3d4818e25708593d203", null ], + [ "osMessageQ", "group___c_m_s_i_s___r_t_o_s___message.html#ga2d446a0b4bb90bf05d6f92eedeaabc97", null ], + [ "osMessageQDef", "group___c_m_s_i_s___r_t_o_s___message.html#gac9a6a6276c12609793e7701afcc82326", null ], + [ "osMessageCreate", "group___c_m_s_i_s___r_t_o_s___message.html#gaf3b9345cf426304d46565152bc26fb78", null ], + [ "osMessageGet", "group___c_m_s_i_s___r_t_o_s___message.html#ga6c6892b8f2296cca6becd57ca2d7e1ae", null ], + [ "osMessagePut", "group___c_m_s_i_s___r_t_o_s___message.html#gac0dcf462fc92de8ffaba6cc004514a6d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html new file mode 100644 index 0000000..5cebaa7 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html @@ -0,0 +1,405 @@ + + + + + +Mutexes +CMSIS-RTOS: Mutexes + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    + +
    + +

    Synchronize resource access using Mutual Exclusion (Mutex). +More...

    + + + + + + + + +

    +Macros

    #define osMutexDef(name)   const osMutexDef_t os_mutex_def_##name = { 0 }
     Define a Mutex.
     
    #define osMutex(name)   &os_mutex_def_##name
     Access a Mutex definition.
     
    + + + + + + + + + + + + + +

    +Functions

    osMutexId osMutexCreate (const osMutexDef_t *mutex_def)
     Create and Initialize a Mutex object.
     
    osStatus osMutexWait (osMutexId mutex_id, uint32_t millisec)
     Wait until a Mutex becomes available.
     
    osStatus osMutexRelease (osMutexId mutex_id)
     Release a Mutex that was obtained by osMutexWait.
     
    osStatus osMutexDelete (osMutexId mutex_id)
     Delete a Mutex that was created by osMutexCreate.
     
    +

    Description

    +

    Mutual exclusion (widely known as Mutex) is used in various operating systems for resource management. Many resources in a microcontroller device can be used repeatedly, but only by one thread at a time (for example communication channels, memory, and files). Mutexes are used to protect access to a shared resource. A mutex is created and then passed between the threads (they can acquire and release the mutex).

    +
    +Mutex.png +
    +CMSIS-RTOS Mutex
    +

    A mutex is a special version of a semaphore. Like the semaphore, it is a container for tokens. But instead of being able to have multiple tokens, a mutex can only carry one (representing the resource). Thus, a mutex token is binary and bounded. The advantage of a mutex is that it introduces thread ownership. When a thread acquires a mutex and becomes its owner, subsequent mutex acquires from that thread will succeed immediately without any latency. Thus, mutex acquires/releases can be nested.

    +
    Note
      +
    • Mutex management functions cannot be called from interrupt service routines (ISR), unlike a binary semaphore that can be released from an ISR.
    • +
    +
    +

    Working with Mutexes

    +

    To use mutexes, you need to follow these steps for creating and using them:

    +
      +
    1. Declare the mutex container and initialize the mutex:
      osMutexDef (uart_mutex); // Declare mutex
      +
      osMutexId (uart_mutex_id); // Mutex ID
      +
    2. +
    3. Create the mutex in a thread:
      uart_mutex_id = osMutexCreate(osMutex(uart_mutex));
      +
    4. +
    5. Acquire the mutex when peripheral access is required:
      osMutexWait(uart_mutex_id, osWaitForever);
      +
    6. +
    7. When finished with the peripheral access, release the mutex:
      osMutexRelease(uart_mutex_id);
      +
    8. +
    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define osMutex( name)   &os_mutex_def_##name
    +
    +

    Access to mutex object for the functions osMutexCreate.

    +
    Parameters
    + + +
    namename of the mutex object.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osMutex shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + + + + + +
    #define osMutexDef( name)   const osMutexDef_t os_mutex_def_##name = { 0 }
    +
    +

    Define a mutex object that is referenced by osMutex.

    +
    Parameters
    + + +
    namename of the mutex object.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osMutexDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    osMutexId osMutexCreate (const osMutexDef_tmutex_def)
    +
    +
    Parameters
    + + +
    [in]mutex_defmutex definition referenced with osMutex.
    +
    +
    +
    Returns
    mutex ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osMutexCreate shall be consistent in every CMSIS-RTOS.
    +

    Create and initialize a Mutex object.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr); // Mutex name definition
    +
    +
    void CreateMutex (void) {
    +
    osMutexId mutex_id;
    +
    +
    mutex_id = osMutexCreate (osMutex (MutexIsr));
    +
    if (mutex_id != NULL) {
    +
    // Mutex object created
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osMutexDelete (osMutexId mutex_id)
    +
    +
    Parameters
    + + +
    [in]mutex_idmutex ID obtained by osMutexCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osMutexDelete shall be consistent in every CMSIS-RTOS.
    +

    Delete a Mutex object. The function releases internal memory obtained for Mutex handling. After this call the mutex_id is no longer valid and cannot be used. The Mutex may be created again using the function osMutexCreate.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mutex object has been deleted.
    • +
    • osErrorISR: osMutexDelete cannot be called from interrupt service routines.
    • +
    • osErrorResource: all tokens have already been released.
    • +
    • osErrorParameter: the parameter mutex_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr); // Mutex name definition
    +
    osMutexId mutex_id; // Mutex id populated by the function CreateMutex()
    +
    osMutexId CreateMutex (void); // function prototype that creates the Mutex
    +
    +
    void DeleteMutex (osMutexId mutex_id) {
    +
    osStatus status;
    +
    +
    if (mutex_id != NULL) {
    +
    status = osMutexDelete(mutex_id);
    +
    if (status != osOK) {
    +
    // handle failure code
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osMutexRelease (osMutexId mutex_id)
    +
    +
    Parameters
    + + +
    [in]mutex_idmutex ID obtained by osMutexCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osMutexRelease shall be consistent in every CMSIS-RTOS.
    +

    Release a Mutex that was obtained with osMutexWait. Other threads that currently wait for the same mutex will be now put into the state READY.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mutex has been correctly released.
    • +
    • osErrorResource: the mutex was not obtained before.
    • +
    • osErrorParameter: the parameter mutex_id is incorrect.
    • +
    • osErrorISR: osMutexRelease cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr); // Mutex name definition
    +
    osMutexId mutex_id; // Mutex id populated by the function CreateMutex()
    +
    osMutexId CreateMutex (void); // function prototype that creates the Mutex
    +
    +
    void ReleaseMutex (osMutexId mutex_id) {
    +
    osStatus status;
    +
    +
    if (mutex_id != NULL) {
    +
    status = osMutexRelease(mutex_id);
    +
    if (status != osOK) {
    +
    // handle failure code
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osMutexWait (osMutexId mutex_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]mutex_idmutex ID obtained by osMutexCreate.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osMutexWait shall be consistent in every CMSIS-RTOS.
    +

    Wait until a Mutex becomes available. If no other thread has obtained the Mutex, the function instantly returns and blocks the mutex object.

    +

    The argument millisec specifies how long the system waits for a mutex. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until the mutex becomes available.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mutex has been obtain.
    • +
    • osErrorTimeoutResource: the mutex could not be obtained in the given time.
    • +
    • osErrorResource: the mutex could not be obtained when no timeout was specified.
    • +
    • osErrorParameter: the parameter mutex_id is incorrect.
    • +
    • osErrorISR: osMutexWait cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr);
    +
    +
    void WaitMutex (void) {
    +
    osMutexId mutex_id;
    +
    osStatus status;
    +
    +
    mutex_id = osMutexCreate (osMutex (MutexIsr));
    +
    if (mutex_id != NULL) {
    +
    status = osMutexWait (mutex_id, 0);
    +
    if (status != osOK) {
    +
    // handle failure code
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js new file mode 100644 index 0000000..1587dca --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js @@ -0,0 +1,9 @@ +var group___c_m_s_i_s___r_t_o_s___mutex_mgmt = +[ + [ "osMutex", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga1122a86faa64b4a0880c76cf68d0c934", null ], + [ "osMutexDef", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga9b522438489d7c402c95332b58bc94f3", null ], + [ "osMutexCreate", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5c9de56e717016e39e788064e9a291cc", null ], + [ "osMutexDelete", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#gac27e24135185d51d18f3dabc20910219", null ], + [ "osMutexRelease", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga006e4744d741e8e132c3d5bbc295afe1", null ], + [ "osMutexWait", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5e1752b73f573ee015dbd9ef1edaba13", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html new file mode 100644 index 0000000..7a9d5dd --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html @@ -0,0 +1,456 @@ + + + + + +Memory Pool +CMSIS-RTOS: Memory Pool + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    + +
    + +

    Manage thread-safe fixed-size blocks of dynamic memory. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_Pool   1
     Memory Pools: 1=available, 0=not available.
     
    #define osPoolDef(name, no, type)
     Define a Memory Pool.
     
    #define osPool(name)   &os_pool_def_##name
     Access a Memory Pool definition.
     
    + + + + + + + + + + + + + +

    +Functions

    osPoolId osPoolCreate (const osPoolDef_t *pool_def)
     Create and Initialize a memory pool.
     
    void * osPoolAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool.
     
    void * osPoolCAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool and set memory block to zero.
     
    osStatus osPoolFree (osPoolId pool_id, void *block)
     Return an allocated memory block back to a specific memory pool.
     
    +

    Description

    +

    Memory pools are fixed-size blocks of memory that are thread-safe. They operate much faster than the dynamically allocated heap and do not suffer from fragmentation. Being thread-safe, they can be accessed from threads and ISRs alike.

    +

    Shared memory is one of the basic models to exchange information between threads. Using memory pools for exchanging data, you can share more complex objects between threads if compared to a Message Queue. Memory pool management functions are used to define and manage such fixed-sized memory pools.

    +

    Working with Memory Pools

    +

    Follow these steps to create and use a memory pool:

    +
      +
    1. Declare a data structure that combines a number of elements:
      typedef struct {
      +
      uint32_t length;
      +
      uint32_t width;
      +
      uint32_t height;
      +
      uint32_t weight;
      +
      } properties_t;
      +
    2. +
    3. Declare a memory pool of these objects as a block of memory:
      osPoolDef (object_pool, 10, properties_t); // Declare memory pool
      +
      osPoolId (object_pool_id); // Memory pool ID
      +
    4. +
    5. Then, create the memory pool in a thread:
      object_pool_id = osPoolCreate(osPool(object_pool));
      +
    6. +
    7. Allocate the pool within a thread and fill it with data:
      properties_t *object_data;
      +
      *object_data = (properties_t *) osPoolAlloc(object_pool_id);
      +
      +
      object_data->length = 100;
      +
      object_data->width = 10;
      +
      object_data->height = 23;
      +
      object_data->weight = 1000;
      +
    8. +
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_Pool   1
    +
    +

    A CMSIS-RTOS implementation may support fixed-size memory pools.

    + + +
    +
    + +
    +
    + + + + + + + + +
    #define osPool( name)   &os_pool_def_##name
    +
    +

    Access a memory pool for the functions osPoolCreate.

    +
    Parameters
    + + +
    namename of the memory pool
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osPool shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osPoolDef( name,
     no,
     type 
    )
    +
    +

    Define a memory pool that is referenced by osPool.

    +
    Parameters
    + + + + +
    namename of the memory pool.
    nomaximum number of blocks (objects) in the memory pool.
    typedata type of a single block (object).
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osPoolDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void * osPoolAlloc (osPoolId pool_id)
    +
    +
    Parameters
    + + +
    [in]pool_idmemory pool ID obtain referenced with osPoolCreate.
    +
    +
    +
    Returns
    address of the allocated memory block or NULL in case of no memory available.
    +
    Note
    MUST REMAIN UNCHANGED: osPoolAlloc shall be consistent in every CMSIS-RTOS.
    +

    Allocate a memory block from the memory pool.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void AlocMemoryPoolBlock (void) {
    +
    osPoolId MemPool_Id;
    +
    MEM_BLOCK *addr;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    :
    +
    // allocate a memory block
    +
    addr = (MEM_BLOCK *)osPoolAlloc (MemPool_Id);
    +
    +
    if (addr != NULL) {
    +
    // memory block was allocated
    +
    :
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    void * osPoolCAlloc (osPoolId pool_id)
    +
    +
    Parameters
    + + +
    [in]pool_idmemory pool ID obtain referenced with osPoolCreate.
    +
    +
    +
    Returns
    address of the allocated memory block or NULL in case of no memory available.
    +
    Note
    MUST REMAIN UNCHANGED: osPoolCAlloc shall be consistent in every CMSIS-RTOS.
    +

    Allocate a memory block from the memory pool. The block is initialized to zero.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void CAlocMemoryPoolBlock (void) {
    +
    osPoolId MemPool_Id;
    +
    MEM_BLOCK *addr;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    :
    +
    // allocate a memory block
    +
    addr = (MEM_BLOCK *)osPoolCAlloc (MemPool_Id);
    +
    +
    if (addr != NULL) {
    +
    // memory block was allocated
    +
    :
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osPoolId osPoolCreate (const osPoolDef_tpool_def)
    +
    +
    Parameters
    + + +
    [in]pool_defmemory pool definition referenced with osPool.
    +
    +
    +
    Returns
    memory pool ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osPoolCreate shall be consistent in every CMSIS-RTOS.
    +

    Create and initialize a memory pool.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void CreateMemoryPool (void) {
    +
    osPoolId MemPool_Id;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    // memory pool created
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osPoolFree (osPoolId pool_id,
    void * block 
    )
    +
    +
    Parameters
    + + + +
    [in]pool_idmemory pool ID obtain referenced with osPoolCreate.
    [in]blockaddress of the allocated memory block that is returned to the memory pool.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osPoolFree shall be consistent in every CMSIS-RTOS.
    +

    Return a memory block to a memory pool.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the memory block is released.
    • +
    • osErrorValue: block does not belong to the memory pool.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    +
    Note
    Interrupt Service Routines can call this function.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void CAlocMemoryPoolBlock (void) {
    +
    osPoolId MemPool_Id;
    +
    MEM_BLOCK *addr;
    +
    osStatus status;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    addr = (MEM_BLOCK *)osPoolCAlloc (MemPool_Id);
    +
    if (addr != NULL) {
    +
    :
    +
    // return a memory block back to pool
    +
    status = osPoolFree (MemPool_Id, addr);
    +
    if (status==osOK) {
    +
    // handle status code
    +
    }
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js new file mode 100644 index 0000000..51d5079 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js @@ -0,0 +1,10 @@ +var group___c_m_s_i_s___r_t_o_s___pool_mgmt = +[ + [ "osFeature_Pool", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gadd84b683001de327894851b428587caa", null ], + [ "osPool", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga5f0b204a82327533d420210125c90697", null ], + [ "osPoolDef", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga87b471d4fe2d5dbd0040708edd52771b", null ], + [ "osPoolAlloc", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gaa0b2994f1a866c19e0d11e6e0d44f543", null ], + [ "osPoolCAlloc", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga9f129fcad4730fbd1048ad4fa262f36a", null ], + [ "osPoolCreate", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga34af5c4f4ab38f4138ea7f1f9ece3a1a", null ], + [ "osPoolFree", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga4a861e9c469c9d0daf5721bf174f8e54", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html new file mode 100644 index 0000000..916e331 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html @@ -0,0 +1,424 @@ + + + + + +Semaphores +CMSIS-RTOS: Semaphores + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    + +
    + +

    Access shared resources simultaneously from different threads. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_Semaphore   30
     maximum count for osSemaphoreCreate function
     
    #define osSemaphoreDef(name)   const osSemaphoreDef_t os_semaphore_def_##name = { 0 }
     Define a Semaphore object.
     
    #define osSemaphore(name)   &os_semaphore_def_##name
     Access a Semaphore definition.
     
    + + + + + + + + + + + + + +

    +Functions

    osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_t *semaphore_def, int32_t count)
     Create and Initialize a Semaphore object used for managing resources.
     
    int32_t osSemaphoreWait (osSemaphoreId semaphore_id, uint32_t millisec)
     Wait until a Semaphore token becomes available.
     
    osStatus osSemaphoreRelease (osSemaphoreId semaphore_id)
     Release a Semaphore token.
     
    osStatus osSemaphoreDelete (osSemaphoreId semaphore_id)
     Delete a Semaphore that was created by osSemaphoreCreate.
     
    +

    Description

    +

    Semaphores are used to manage and protect access to shared resources. Semaphores are very similar to Mutexes. Whereas a Mutex permits just one thread to access a shared resource at a time, a semaphore can be used to permit a fixed number of threads to access a pool of shared resources. Using semaphores, access to a group of identical peripherals can be managed (for example multiple DMA channels).

    +
    +Semaphore.png +
    +CMSIS-RTOS Semaphore
    +

    A semaphore object should be initialized to the maximum number of available tokens. This number of available resources is specified as parameter of the osSemaphoreCreate function. Each time a semaphore token is obtained with osSemaphoreWait, the semaphore count is decremented. When the semaphore count is 0, no semaphore token can be obtained. The thread that tries to obtain the semaphore token needs to wait until the next token is free. Semaphores are released with osSemaphoreRelease incrementing the semaphore count.

    +
    Note
    Semaphore tokens can be acquired from threads and released from threads and ISRs.
    +

    Working with Semaphores

    +

    Follow these steps to create and use a semaphore:

    +
      +
    1. Declare the semaphore container and initialize the semaphore:
      osSemaphoreDef (my_semaphore); // Declare semaphore
      +
      osSemaphoreId (my_semaphore_id); // Semaphore ID
      +
    2. +
    3. Initialize the semaphore container with a number of tokens within a thread:
      my_semaphore_id = osSemaphoreCreate(osSemaphore(my_semaphore), 4); // Create semaphore with 4 tokens
      +
      Important: semaphore tokens can be created and destroyed as threads run. This means that can initialize a semaphore with zero tokens and then use one thread to add/create tokens to the semaphore while a second thread removes them. In this way you can distinguish between producer and consumer threads.
    4. +
    5. Acquire a token from the semaphore container:
      osSemaphoreWait(my_semaphore_id, osWaitForever);
      +
    6. +
    7. When finished using the semaphore resource, send the token back to the semaphore container:
      osSemaphoreRelease(my_semaphore_id);
      +
    8. +
    +

    Semaphore Use Cases

    +

    Due to their flexibility, semaphores cover a wide range of synchronizing applications. At the same time, they are perhaps the most challenging RTOS object to understand. The following explains a use case for semaphores, taken from the book The Little Book Of Semaphores by Allen B. Downey which is available for free download.

    +

    Non-binary Semaphore (Multiplex)

    +

    A multiplex limits the number of threads that can access a critical section of code. For example, this could be a function accessing DMA resources which can only support a limited number of calls.

    +

    To allow multiple threads to run the function, initialize a semaphore to the maximum number of threads that can be allowed. The number of tokens in the semaphore represents the number of additional threads that may enter. If this number is zero, then the next thread trying to access the function will have to wait until one of the other threads exits and releases its token. When all threads have exited the token number is back to n. Ths following example shows the code for one of the threads that might access the resource:

    +
    osSemaphoreDef(multiplex);
    +
    osSemaphoreId (multiplex_id);
    +
    +
    void thread_n (void)
    +
    {
    +
    multiplex_id = osSemaphoreCreate(osSemaphore(multiplex), 3);
    +
    while(1)
    +
    {
    + +
    // do something
    +
    osSemaphoreRelease(multiplex_id);
    +
    }
    +
    }
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_Semaphore   30
    +
    +

    A CMSIS-RTOS implementation may support semaphores. The value osFeature_Semaphore indicates the maximum index count for a semaphore.

    + +
    +
    + +
    +
    + + + + + + + + +
    #define osSemaphore( name)   &os_semaphore_def_##name
    +
    +

    Access to semaphore object for the functions osSemaphoreCreate.

    +
    Parameters
    + + +
    namename of the semaphore object.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osSemaphore shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + + + + + +
    #define osSemaphoreDef( name)   const osSemaphoreDef_t os_semaphore_def_##name = { 0 }
    +
    +

    Define a semaphore object that is referenced by osSemaphore.

    +
    Parameters
    + + +
    namename of the semaphore object.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osSemaphoreDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_tsemaphore_def,
    int32_t count 
    )
    +
    +
    Parameters
    + + + +
    [in]semaphore_defsemaphore definition referenced with osSemaphore.
    [in]countnumber of available resources.
    +
    +
    +
    Returns
    semaphore ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osSemaphoreCreate shall be consistent in every CMSIS-RTOS.
    +

    Create and initialize a Semaphore object that is used to manage access to shared resources. The parameter count specifies the number of available resources. The count value 1 creates a binary semaphore.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    osThreadId tid_thread1; // ID for thread 1
    +
    osThreadId tid_thread2; // ID for thread 2
    +
    +
    osSemaphoreId semaphore; // Semaphore ID
    +
    osSemaphoreDef(semaphore); // Semaphore definition
    +
    +
    //
    +
    // Thread 1 - High Priority - Active every 3ms
    +
    //
    +
    void thread1 (void const *argument) {
    +
    int32_t value;
    +
    +
    while (1) {
    +
    osDelay(3); // Pass control to other tasks for 3ms
    +
    val = osSemaphoreWait (semaphore, 1); // Wait 1ms for the free semaphore
    +
    if (val > 0) {
    +
    // If there was no time-out the semaphore was acquired
    +
    : // OK, the interface is free now, use it.
    +
    osSemaphoreRelease (semaphore); // Return a token back to a semaphore
    +
    }
    +
    }
    +
    }
    +
    +
    //
    +
    // Thread 2 - Normal Priority - looks for a free semaphore and uses
    +
    // the resource whenever it is available
    +
    //
    +
    void thread2 (void const *argument) {
    +
    while (1) {
    +
    osSemaphoreWait (semaphore, osWaitForever); // Wait indefinitely for a free semaphore
    +
    // OK, the interface is free now, use it.
    +
    :
    +
    osSemaphoreRelease (semaphore); // Return a token back to a semaphore.
    +
    }
    +
    }
    +
    +
    // Thread definitions
    +
    osThreadDef(thread1, osPriorityHigh, 1, 0);
    +
    osThreadDef(thread2, osPriorityNormal, 1, 0);
    +
    +
    void StartApplication (void) {
    +
    semaphore = osSemaphoreCreate(osSemaphore(semaphore), 1);
    +
    +
    tid_thread1 = osThreadCreate(osThread(thread1), NULL);
    +
    tid_thread2 = osThreadCreate(osThread(thread2), NULL);
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osSemaphoreDelete (osSemaphoreId semaphore_id)
    +
    +
    Parameters
    + + +
    [in]semaphore_idsemaphore object referenced with osSemaphoreCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osSemaphoreDelete shall be consistent in every CMSIS-RTOS.
    +

    Delete a Semaphore object. The function releases internal memory obtained for Semaphore handling. After this call the semaphore_id is no longer valid and cannot be used. The Semaphore may be created again using the function osSemaphoreCreate.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the semaphore object has been deleted.
    • +
    • osErrorISR: osSemaphoreDelete cannot be called from interrupt service routines.
    • +
    • osErrorResource: the semaphore object could not be deleted.
    • +
    • osErrorParameter: the parameter semaphore_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    + +
    +
    + +
    +
    + + + + + + + + +
    osStatus osSemaphoreRelease (osSemaphoreId semaphore_id)
    +
    +
    Parameters
    + + +
    [in]semaphore_idsemaphore object referenced with osSemaphoreCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osSemaphoreRelease shall be consistent in every CMSIS-RTOS.
    +

    Release a Semaphore token. This increments the count of available semaphore tokens.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the semaphore has been released.
    • +
    • osErrorResource: all tokens have already been released.
    • +
    • osErrorParameter: the parameter semaphore_id is incorrect.
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t osSemaphoreWait (osSemaphoreId semaphore_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]semaphore_idsemaphore object referenced with osSemaphoreCreate.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    number of available tokens, or -1 in case of incorrect parameters.
    +
    Note
    MUST REMAIN UNCHANGED: osSemaphoreWait shall be consistent in every CMSIS-RTOS.
    +

    Wait until a Semaphore token becomes available. When no Semaphore token is available, the function waits for the time specified with the parameter millisec.

    +

    The argument millisec specifies how long the system waits for a Semaphore token to become available. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until the Semaphore token becomes available.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +

    The return value indicates the number of available tokens (the semaphore count value). If 0 is returned, then no semaphore was available.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js new file mode 100644 index 0000000..cb194a8 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js @@ -0,0 +1,10 @@ +var group___c_m_s_i_s___r_t_o_s___semaphore_mgmt = +[ + [ "osFeature_Semaphore", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga7da4c7bfb340779c9fc7b321f5ab3e3a", null ], + [ "osSemaphore", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga03761ee8d2c3cd4544e18364ab301dac", null ], + [ "osSemaphoreDef", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga9e66fe361749071e5ab87826c43c2f1b", null ], + [ "osSemaphoreCreate", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga97381e8e55cd47cec390bf57c96d6edb", null ], + [ "osSemaphoreDelete", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gabae2801ac2c096f6e8c69a264908f595", null ], + [ "osSemaphoreRelease", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gab108914997c49e14d8ff1ae0d1988ca0", null ], + [ "osSemaphoreWait", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gacc15b0fc8ce1167fe43da33042e62098", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html new file mode 100644 index 0000000..88524b9 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html @@ -0,0 +1,337 @@ + + + + + +Signal Events +CMSIS-RTOS: Signal Events + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    + +
    + +

    Synchronize threads using signals. +More...

    + + + + + +

    +Macros

    #define osFeature_Signals   8
     maximum number of Signal Flags available per thread
     
    + + + + + + + + + + +

    +Functions

    int32_t osSignalSet (osThreadId thread_id, int32_t signals)
     Set the specified Signal Flags of an active thread.
     
    int32_t osSignalClear (osThreadId thread_id, int32_t signals)
     Clear the specified Signal Flags of an active thread.
     
    osEvent osSignalWait (int32_t signals, uint32_t millisec)
     Wait for one or more Signal Flags to become signaled for the current RUNNING thread.
     
    +

    Description

    +

    Signals are used to trigger execution states between threads. The signal management functions in CMSIS-RTOS allow you to control or wait for signal flags. Each thread has up to 31 assigned signal flags. The maximum number of signal flags is defined in the cmsis_os.h file (#define osFeature_Signals).

    +

    A thread

    +
      +
    • can wait for signals to be set (using osSignalWait). Using this function, it enters the WAITING state. The osSignalWait parameter signals defines the signals that are required to put the thread back into READY state.
    • +
    • may set one or more flags in any other given thread (using osSignalSet).
    • +
    • may clear its own signals or the signals of other threads (using osSignalClear).
    • +
    +

    When a thread wakes up and resumes execution, its signal flags are automatically cleared.

    +

    Working with Signals

    +

    Here is a simple example that shows how two thread can communicate with each others using signals:

    +
    +simple_signal.png +
    +Simple signal event communication
    +

    The following steps are required to use signals:

    +
      +
    1. In the thread (for example thread ID tid_thread1) that is supposed to wait for a signal, call the wait function:
      osSignalWait (0x0001, osWaitForever); // wait forever for the signal 0x0001
      +
    2. +
    3. In another thread (or threads) that are supposed to wake the waiting thread up call:
      osSignalSet (tid_thread1, 0x0001); // set the signal 0x0001 for thread tid_thread1
      +
      osDelay (1000); // wait for 1 second
      +
    4. +
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_Signals   8
    +
    +

    The CMSIS-RTOS API may support a variable number of signal flags. This define specifies the number of signal flags available per thread. The maximum value is 32 signal flags per thread.

    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t osSignalClear (osThreadId thread_id,
    int32_t signals 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    [in]signalsspecifies the signal flags of the thread that shall be cleared.
    +
    +
    +
    Returns
    previous signal flags of the specified thread or 0x80000000 in case of incorrect parameters or call from ISR.
    +
    Note
    MUST REMAIN UNCHANGED: osSignalClear shall be consistent in every CMSIS-RTOS.
    +

    Clear the signal flags of an active thread.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    void Thread_2 (void const *arg);
    +
    +
    osThreadDef (Thread_2, osPriorityHigh, 1, 0);
    +
    +
    static void EX_Signal_1 (void) {
    +
    int32_t signals;
    +
    osThreadId thread_id;
    +
    +
    thread_id = osThreadCreate (osThread(Thread_2), NULL);
    +
    if (thread_id == NULL) {
    +
    // Failed to create a thread.
    +
    }
    +
    else {
    +
    f :
    +
    signals = osSignalClear (thread_id, 0x01);
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t osSignalSet (osThreadId thread_id,
    int32_t signals 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    [in]signalsspecifies the signal flags of the thread that should be set.
    +
    +
    +
    Returns
    previous signal flags of the specified thread or 0x80000000 in case of incorrect parameters.
    +
    Note
    MUST REMAIN UNCHANGED: osSignalSet shall be consistent in every CMSIS-RTOS.
    +

    Set the signal flags of an active thread. This function may be used also within interrupt service routines.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Code Example

    +
    void Thread_2 (void const *arg);
    +
    +
    osThreadDef (Thread_2, osPriorityHigh, 1, 0);
    +
    +
    static void EX_Signal_1 (void) {
    +
    int32_t signals;
    +
    uint32_t exec;
    +
    osThreadId thread_id;
    +
    +
    thread_id = osThreadCreate (osThread(Thread_2), NULL);
    +
    if (thread_id == NULL) {
    +
    // Failed to create a thread.
    +
    }
    +
    else {
    +
    signals = osSignalSet (thread_id, 0x00000005); // Send signals to the created thread
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osEvent osSignalWait (int32_t signals,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]signalswait until all specified signal flags set or 0 for any single signal flag.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    event flag information or error code.
    +
    Note
    MUST REMAIN UNCHANGED: osSignalWait shall be consistent in every CMSIS-RTOS.
    +

    Suspend the execution of the current RUNNING thread until all specified signal flags with the parameter signals are set. When the parameter signals is 0 the current RUNNING thread is suspended until any signal is set. When these signal flags are already set, the function returns instantly. Otherwise the thread is put into the state WAITING. Signal flags that are reported as event are automatically cleared.

    +

    The argument millisec specifies how long the system waits for the specified signal flags. While the system waits the tread calling this function is put into the state WAITING. The timeout value can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a specified signal is set.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +

    Status and Error Codes
    +

    +
      +
    • osOK: no signal received when the timeout value millisec was 0.
    • +
    • osEventTimeout: signal not occurred within timeout
    • +
    • osEventSignal: signal occurred, value.signals contains the signal flags; these signal flags are cleared.
    • +
    • osErrorValue: the value signals is outside of the permitted range.
    • +
    • osErrorISR: osSignalWait cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    void Thread_2 (void const *arg);
    +
    +
    osThreadDef (Thread_2, osPriorityHigh, 1, 0);
    +
    +
    static void EX_Signal_1 (void) {
    +
    osThreadId thread_id;
    +
    osEvent evt;
    +
    +
    thread_id = osThreadCreate (osThread(Thread_2), NULL);
    +
    if (thread_id == NULL) {
    +
    // Failed to create a thread.
    +
    }
    +
    else {
    +
    :
    +
    // wait for a signal
    +
    evt = osSignalWait (0x01, 100);
    +
    if (evt.status == osEventSignal) {
    +
    // handle event status
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js new file mode 100644 index 0000000..825b993 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js @@ -0,0 +1,7 @@ +var group___c_m_s_i_s___r_t_o_s___signal_mgmt = +[ + [ "osFeature_Signals", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga01edde265710d883b6e237d34a6ef4a6", null ], + [ "osSignalClear", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga87283a6ebc31ce9ed42baf3ea7e4eab6", null ], + [ "osSignalSet", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga3de2730654589d6c3559c4b9e2825553", null ], + [ "osSignalWait", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga38860acda96df47da6923348d96fc4c9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.html new file mode 100644 index 0000000..1e6fcb4 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.html @@ -0,0 +1,198 @@ + + + + + +Status and Error Codes +CMSIS-RTOS: Status and Error Codes + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Status and Error Codes
    +
    +
    + +

    Status and Error Codes returned by CMSIS-RTOS API functions. +More...

    + + + + +

    +Enumerations

    enum  osStatus {
    +  osOK = 0, +
    +  osEventSignal = 0x08, +
    +  osEventMessage = 0x10, +
    +  osEventMail = 0x20, +
    +  osEventTimeout = 0x40, +
    +  osErrorParameter = 0x80, +
    +  osErrorResource = 0x81, +
    +  osErrorTimeoutResource = 0xC1, +
    +  osErrorISR = 0x82, +
    +  osErrorISRRecursive = 0x83, +
    +  osErrorPriority = 0x84, +
    +  osErrorNoMemory = 0x85, +
    +  osErrorValue = 0x86, +
    +  osErrorOS = 0xFF, +
    +  os_status_reserved = 0x7FFFFFFF +
    + }
     
    +

    Description

    +

    The Status and Error Codes section lists all the return values that the CMSIS-RTOS functions will return.

    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum osStatus
    +
    +
    Note
    MUST REMAIN UNCHANGED: osStatus shall be consistent in every CMSIS-RTOS.
    +

    The osStatus enumeration defines the event status and error codes that are returned by the CMSIS-RTOS functions.

    +
    Enumerator:
    + + + + + + + + + + + + + + + +
    osOK  +

    function completed; no error or event occurred.

    +
    osEventSignal  +

    function completed; signal event occurred.

    +
    osEventMessage  +

    function completed; message event occurred.

    +
    osEventMail  +

    function completed; mail event occurred.

    +
    osEventTimeout  +

    function completed; timeout occurred.

    +
    osErrorParameter  +

    parameter error: a mandatory parameter was missing or specified an incorrect object.

    +
    osErrorResource  +

    resource not available: a specified resource was not available.

    +
    osErrorTimeoutResource  +

    resource not available within given time: a specified resource was not available within the timeout period.

    +
    osErrorISR  +

    not allowed in ISR context: the function cannot be called from interrupt service routines.

    +
    osErrorISRRecursive  +

    function called multiple times from ISR with same object.

    +
    osErrorPriority  +

    system cannot determine priority or thread has illegal priority.

    +
    osErrorNoMemory  +

    system is out of memory: it was impossible to allocate or reserve memory for the operation.

    +
    osErrorValue  +

    value of a parameter is out of range.

    +
    osErrorOS  +

    unspecified RTOS error: run-time error but no other error message fits.

    +
    os_status_reserved  +

    prevent from enum down-size compiler optimization.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.js new file mode 100644 index 0000000..a890636 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___status.js @@ -0,0 +1,20 @@ +var group___c_m_s_i_s___r_t_o_s___status = +[ + [ "osStatus", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99e", [ + [ "osOK", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea9e1c9e2550bb4de8969a935acffc968f", null ], + [ "osEventSignal", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5df7e9643aa8a2f5f3a6f6ec59758518", null ], + [ "osEventMessage", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ead604f3673359dd4ac643b16dc5a2c342", null ], + [ "osEventMail", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea15b12e42b42b53f35fb8a2724ad02926", null ], + [ "osEventTimeout", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea78f477732375c0e1fca814e369618177", null ], + [ "osErrorParameter", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac24adca6a5d072c9f01c32178ba0d109", null ], + [ "osErrorResource", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea8fc5801e8b0482bdf22ad63a77f0155d", null ], + [ "osErrorTimeoutResource", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea314d24a49003f09459035db0dd7c9467", null ], + [ "osErrorISR", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea21635bdc492d3094fe83027fa4a30e2f", null ], + [ "osErrorISRRecursive", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf6552310a817452aedfcd453f2805d65", null ], + [ "osErrorPriority", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eab7dda0ef504817659334cbfd650ae56f", null ], + [ "osErrorNoMemory", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf1fac0240218e51eb30a13da2f8aae81", null ], + [ "osErrorValue", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea4672c8a0c0f6bb1d7981da4602e8e9ee", null ], + [ "osErrorOS", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5fde24ff588ec5ab9cb8314bade26fbc", null ], + [ "os_status_reserved", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac7a77f5fe18a15a357790c36a4aca1b1", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html new file mode 100644 index 0000000..117ebfb --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html @@ -0,0 +1,580 @@ + + + + + +Thread Management +CMSIS-RTOS: Thread Management + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Thread Management
    +
    +
    + +

    Define, create, and control thread functions. +More...

    + + + + + + + + +

    +Macros

    #define osThreadDef(name, priority, instances, stacksz)
     Create a Thread Definition with function, priority, and stack requirements.
     
    #define osThread(name)   &os_thread_def_##name
     Access a Thread definition.
     
    + + + +

    +Enumerations

    enum  osPriority {
    +  osPriorityIdle = -3, +
    +  osPriorityLow = -2, +
    +  osPriorityBelowNormal = -1, +
    +  osPriorityNormal = 0, +
    +  osPriorityAboveNormal = +1, +
    +  osPriorityHigh = +2, +
    +  osPriorityRealtime = +3, +
    +  osPriorityError = 0x84 +
    + }
     
    + + + + + + + + + + + + + + + + + + + +

    +Functions

    osThreadId osThreadCreate (const osThreadDef_t *thread_def, void *argument)
     Create a thread and add it to Active Threads and set it to state READY.
     
    osThreadId osThreadGetId (void)
     Return the thread ID of the current running thread.
     
    osStatus osThreadTerminate (osThreadId thread_id)
     Terminate execution of a thread and remove it from Active Threads.
     
    osStatus osThreadSetPriority (osThreadId thread_id, osPriority priority)
     Change priority of an active thread.
     
    osPriority osThreadGetPriority (osThreadId thread_id)
     Get current priority of an active thread.
     
    osStatus osThreadYield (void)
     Pass control to next thread that is in state READY.
     
    +

    Description

    +

    The Thread Management function group allows defining, creating, and controlling thread functions in the system. The function main is a special thread function that is started at system initialization and has the initial priority osPriorityNormal.

    +

    Threads can be in the following states:

    +
      +
    • RUNNING: The thread that is currently running is in the RUNNING state. Only one thread at a time can be in this state.
    • +
    • READY: Threads which are ready to run are in the READY state. Once the RUNNING thread has terminated or is WAITING, the next READY thread with the highest priority becomes the RUNNING thread.
    • +
    • WAITING: Threads that are waiting for an event to occur are in the WAITING state.
    • +
    • INACTIVE: Threads that are not created or terminated are in the INACTIVE state. These threads typically consume no system resources.
    • +
    +
    +ThreadStatus.png +
    +Thread State and State Transitions
    +

    A CMSIS-RTOS assumes that threads are scheduled as shown in the figure Thread State and State Transitions. The thread states change as follows:

    +
      +
    • A thread is created using the function osThreadCreate. This puts the thread into the READY or RUNNING state (depending on the thread priority).
    • +
    • CMSIS-RTOS is pre-emptive. The active thread with the highest priority becomes the RUNNING thread provided it does not wait for any event. The initial priority of a thread is defined with the osThreadDef but may be changed during execution using the function osThreadSetPriority.
    • +
    • The RUNNING thread transfers into the WAITING state when it is waiting for an event.
    • +
    • Active threads can be terminated any time using the function osThreadTerminate. Threads can terminate also by just returning from the thread function. Threads that are terminated are in the INACTIVE state and typically do not consume any dynamic memory resources.
    • +
    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define osThread( name)   &os_thread_def_##name
    +
    +

    Access to the thread definition for the function osThreadCreate.

    +
    Parameters
    + + +
    namename of the thread definition object.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osThread shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osThreadDef( name,
     priority,
     instances,
     stacksz 
    )
    +
    +

    Define the attributes of a thread functions that can be created by the function osThreadCreate using osThread.

    +
    Parameters
    + + + + + +
    namename of the thread function.
    priorityinitial priority of the thread function.
    instancesnumber of possible thread instances.
    stackszstack size (in bytes) requirements for the thread function.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameters to osThreadDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum osPriority
    +
    +
    Note
    MUST REMAIN UNCHANGED: osPriority shall be consistent in every CMSIS-RTOS.
    +
    +Cannot be called from Interrupt Service Routines.
    +

    The osPriority value specifies the priority for a thread. The default thread priority should be osPriorityNormal. If a Thread is active that has a higher priority than the currently executing thread, then a thread switch occurs immediately to execute the new task.

    +

    To prevent from a priority inversion, a CMSIS-RTOS complained OS may optionally implement a priority inheritance method. A priority inversion occurs when a high priority thread is waiting for a resource or event that is controlled by a thread with a lower priority.

    +
    Enumerator:
    + + + + + + + + +
    osPriorityIdle  +

    priority: idle (lowest)

    +
    osPriorityLow  +

    priority: low

    +
    osPriorityBelowNormal  +

    priority: below normal

    +
    osPriorityNormal  +

    priority: normal (default)

    +
    osPriorityAboveNormal  +

    priority: above normal

    +
    osPriorityHigh  +

    priority: high

    +
    osPriorityRealtime  +

    priority: realtime (highest)

    +
    osPriorityError  +

    system cannot determine priority or thread has illegal priority

    +
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osThreadId osThreadCreate (const osThreadDef_tthread_def,
    void * argument 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_defthread definition referenced with osThread.
    [in]argumentpointer that is passed to the thread function as start argument.
    +
    +
    +
    Returns
    thread ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osThreadCreate shall be consistent in every CMSIS-RTOS.
    +

    Start a thread function by adding it to the Active Threads list and set it to state READY. The thread function receives the argument pointer as function argument when the function is started. When the priority of the created thread function is higher than the current RUNNING thread, the created thread function starts instantly and becomes the new RUNNING thread.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg); // function prototype for Thread_1
    +
    osThreadDef (Thread_1, osPriorityNormal, 1, 0); // define Thread_1
    +
    +
    void ThreadCreate_example (void) {
    + +
    +
    id = osThreadCreate (osThread (Thread_1), NULL); // create the thread
    +
    if (id == NULL) { // handle thread creation
    +
    // Failed to create a thread
    +
    }
    +
    :
    +
    osThreadTerminate (id); // stop the thread
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osThreadId osThreadGetId (void )
    +
    +
    Returns
    thread ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osThreadGetId shall be consistent in every CMSIS-RTOS.
    +

    Get the thread ID of the current running thread.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    void ThreadGetId_example (void) {
    +
    osThreadId id; // id for the currently running thread
    +
    +
    id = osThreadGetId ();
    +
    if (id == NULL) {
    +
    // Failed to get the id; not in a thread
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osPriority osThreadGetPriority (osThreadId thread_id)
    +
    +
    Parameters
    + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    +
    +
    +
    Returns
    current priority value of the thread function.
    +
    Note
    MUST REMAIN UNCHANGED: osThreadGetPriority shall be consistent in every CMSIS-RTOS.
    +

    Get the priority of an active thread. In case of a failure the value osPriorityError is returned.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osThreadId id; // id for the currently running thread
    +
    osPriority priority; // thread priority
    +
    +
    id = osThreadGetId (); // Obtain ID of current running thread
    +
    +
    if (id != NULL) {
    +
    priority = osThreadGetPriority (id);
    +
    }
    +
    else {
    +
    // Failed to get the id
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osThreadSetPriority (osThreadId thread_id,
    osPriority priority 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    [in]prioritynew priority value for the thread function.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osThreadSetPriority shall be consistent in every CMSIS-RTOS.
    +

    Change the priority of an active thread.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the priority of the specified thread has been successfully changed.
    • +
    • osErrorParameter: thread_id is incorrect.
    • +
    • osErrorValue: incorrect priority value.
    • +
    • osErrorResource: thread_id refers to a thread that is not an active thread.
    • +
    • osErrorISR: osThreadSetPriority cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osThreadId id; // id for the currently running thread
    +
    osPriority pr; // thread priority
    +
    osStatus status; // status of the executed function
    +
    +
    :
    +
    id = osThreadGetId (); // Obtain ID of current running thread
    +
    +
    if (id != NULL) {
    + +
    if (status == osOK) {
    +
    // Thread priority changed to BelowNormal
    +
    }
    +
    else {
    +
    // Failed to set the priority
    +
    }
    +
    }
    +
    else {
    +
    // Failed to get the id
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osThreadTerminate (osThreadId thread_id)
    +
    +
    Parameters
    + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osThreadTerminate shall be consistent in every CMSIS-RTOS.
    +

    Remove the thread function from the active thread list. If the thread is currently RUNNING the execution will stop.

    +
    Note
    In case that osThreadTerminate terminates the currently running task, the function never returns and other threads that are in the READY state are started.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified thread has been successfully terminated.
    • +
    • osErrorParameter: thread_id is incorrect.
    • +
    • osErrorResource: thread_id refers to a thread that is not an active thread.
    • +
    • osErrorISR: osThreadTerminate cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg); // function prototype for Thread_1
    +
    osThreadDef (Thread_1, osPriorityNormal, 1, 0); // define Thread_1
    +
    +
    void ThreadTerminate_example (void) {
    +
    osStatus status;
    + +
    +
    id = osThreadCreate (osThread (Thread_1), NULL); // create the thread
    +
    :
    +
    status = osThreadTerminate (id); // stop the thread
    +
    if (status == osOK) {
    +
    // Thread was terminated successfully
    +
    }
    +
    else {
    +
    // Failed to terminate a thread
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osThreadYield (void )
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osThreadYield shall be consistent in every CMSIS-RTOS.
    +

    Pass control to the next thread that is in state READY. If there is no other thread in the state READY, the current thread continues execution and no thread switching occurs.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the function has been correctly executed.
    • +
    • osErrorISR: osThreadYield cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osStatus status; // status of the executed function
    +
    :
    +
    while (1) {
    +
    status = osThreadYield(); //
    +
    if (status != osOK) {
    +
    // thread switch not occurred, not in a thread function
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js new file mode 100644 index 0000000..fa5d5de --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js @@ -0,0 +1,21 @@ +var group___c_m_s_i_s___r_t_o_s___thread_mgmt = +[ + [ "osThread", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf0c7c6b5e09f8be198312144b5c9e453", null ], + [ "osThreadDef", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaee93d929beb350f16e5cc7fa602e229f", null ], + [ "osPriority", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849a", [ + [ "osPriorityIdle", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa549e79a43ff4f8b2b31afb613f5caa81", null ], + [ "osPriorityLow", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa61cb822239ac8f66dfbdc7291598a3d4", null ], + [ "osPriorityBelowNormal", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa193b650117c209b4a203954542bcc3e6", null ], + [ "osPriorityNormal", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa45a2895ad30c79fb97de18cac7cc19f1", null ], + [ "osPriorityAboveNormal", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa17b36cd9cd38652c2bc6d4803990674b", null ], + [ "osPriorityHigh", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa914433934143a9ba767e59577c56e6c2", null ], + [ "osPriorityRealtime", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa1485dec3702434a1ec3cb74c7a17a4af", null ], + [ "osPriorityError", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aae35f5e2f9c64ad346822521b643bdea4", null ] + ] ], + [ "osThreadCreate", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gac59b5713cb083702dce759c73fd90dff", null ], + [ "osThreadGetId", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gab1df2a28925862ef8f9cf4e1c995c5a7", null ], + [ "osThreadGetPriority", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga4299d838978bc2aae5e4350754e6a4e9", null ], + [ "osThreadSetPriority", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga0dfb90ccf1f6e4b54b9251b12d1cbc8b", null ], + [ "osThreadTerminate", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaea135bb90eb853eff39e0800b91bbeab", null ], + [ "osThreadYield", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf13a667493c5d629a90c13e113b99233", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html new file mode 100644 index 0000000..299ac4b --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html @@ -0,0 +1,498 @@ + + + + + +Timer Management +CMSIS-RTOS: Timer Management + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Timer Management
    +
    +
    + +

    Create and control timer and timer callback functions. +More...

    + + + + + + + + +

    +Macros

    #define osTimerDef(name, function)
     Define a Timer object.
     
    #define osTimer(name)   &os_timer_def_##name
     Access a Timer definition.
     
    + + + +

    +Enumerations

    enum  os_timer_type {
    +  osTimerOnce = 0, +
    +  osTimerPeriodic = 1 +
    + }
     
    + + + + + + + + + + + + + +

    +Functions

    osTimerId osTimerCreate (const osTimerDef_t *timer_def, os_timer_type type, void *argument)
     Create a timer.
     
    osStatus osTimerStart (osTimerId timer_id, uint32_t millisec)
     Start or restart a timer.
     
    osStatus osTimerStop (osTimerId timer_id)
     Stop the timer.
     
    osStatus osTimerDelete (osTimerId timer_id)
     Delete a timer that was created by osTimerCreate.
     
    +

    Description

    +

    In addition to the Generic Wait Functions CMSIS-RTOS also supports virtual timer objects. These timer objects can trigger the execution of a function (not threads). When a timer expires, a callback function is executed to run associated code with the timer. The timer number is passed as a parameter to the callback function. Each timer can be configured as a one-shot or a periodic timer. A periodic timer repeats its operation until it is deleted or stopped. All timers can be started, restarted, or stopped.

    +

    Timers are handled in the thread osTimerThread. Callback functions run under control of this thread and may use other CMSIS-RTOS API calls.

    +

    The figure below shows the behavior of a periodic timer. For one-shot timers, the timer stops after execution of the callback function.

    +
    +Timer.png +
    +Behavior of a Periodic Timer
    +

    Working with Timers

    +

    The following steps are required to use a timer:

    +
      +
    1. Define the timers:
      osTimerDef(one_shot, start_machine); // when the timer expires, the function start_machine is called
      +
      osTimerDef(periodic, toggle_power); // when the timer expires, the function toggle_power is called
      +
      osTimerId one_shot_id, periodic_id;
      +
    2. +
    3. Instantiate and start the timers in an RTOS thread:
      one_shot_id = osTimerCreate(osTimer(one_shot), osTimerOnce, (void *)0); // creates a one-shot timer;
      +
      // (void*)0 is passed as an argument to the callback function
      +
      periodic_id = osTimerCreate(osTimer(periodic), osTimerPeriodic, (void *)5); // creates a periodic timer;
      +
      // (void*)5 is passed as an argument to the callback function
      +
      osTimerStart(one_shot_id, 500);
      +
      osTimerStart(periodic, 1500);
      +
    4. +
    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define osTimer( name)   &os_timer_def_##name
    +
    +

    Access to the timer definition for the function osTimerCreate.

    +
    Parameters
    + + +
    namename of the timer object.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osTimer shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    #define osTimerDef( name,
     function 
    )
    +
    +

    Define the attributes of a timer.

    +
    Parameters
    + + + +
    namename of the timer object.
    functionname of the timer call back function.
    +
    +
    +
    Note
    CAN BE CHANGED: The parameter to osTimerDef shall be consistent but the macro body is implementation specific in every CMSIS-RTOS.
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum os_timer_type
    +
    +
    Note
    MUST REMAIN UNCHANGED: os_timer_type shall be consistent in every CMSIS-RTOS. The os_timer_type specifies the a repeating (periodic) or one-shot timer for the function osTimerCreate.
    +
    Enumerator:
    + + +
    osTimerOnce  +

    one-shot timer

    +
    osTimerPeriodic  +

    repeating timer

    +
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    osTimerId osTimerCreate (const osTimerDef_ttimer_def,
    os_timer_type type,
    void * argument 
    )
    +
    +
    Parameters
    + + + + +
    [in]timer_deftimer object referenced with osTimer.
    [in]typeosTimerOnce for one-shot or osTimerPeriodic for periodic behavior.
    [in]argumentargument to the timer call back function.
    +
    +
    +
    Returns
    timer ID for reference by other functions or NULL in case of error.
    +
    Note
    MUST REMAIN UNCHANGED: osTimerCreate shall be consistent in every CMSIS-RTOS.
    +

    Create a one-shot or periodic timer and associate it with a callback function argument. The timer is in stopped until it is started with osTimerStart.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Timer1_Callback (void const *arg); // prototypes for timer callback function
    +
    void Timer2_Callback (void const *arg);
    +
    +
    osTimerDef (Timer1, Timer1_Callback); // define timers
    +
    osTimerDef (Timer2, Timer2_Callback);
    +
    +
    uint32_t exec1; // argument for the timer call back function
    +
    uint32_t exec2; // argument for the timer call back function
    +
    +
    void TimerCreate_example (void) {
    +
    osTimerId id1; // timer id
    +
    osTimerId id2; // timer id
    +
    +
    // Create one-shoot timer
    +
    exec1 = 1;
    +
    id1 = osTimerCreate (osTimer(Timer1), osTimerOnce, &exec1);
    +
    if (id1 != NULL) {
    +
    // One-shoot timer created
    +
    }
    +
    +
    // Create periodic timer
    +
    exec2 = 2;
    +
    id2 = osTimerCreate (osTimer(Timer2), osTimerPeriodic, &exec2);
    +
    if (id2 != NULL) {
    +
    // Periodic timer created
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osTimerDelete (osTimerId timer_id)
    +
    +
    Parameters
    + + +
    [in]timer_idtimer ID obtained by osTimerCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osTimerDelete shall be consistent in every CMSIS-RTOS.
    +

    Delete the timer object.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified timer has been deleted.
    • +
    • osErrorISR: osTimerDelete cannot be called from interrupt service routines.
    • +
    • osErrorParameter: timer_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Timer_Callback (void const *arg); // prototype for timer callback function
    +
    osTimerDef (Timer, Timer_Callback); // define timer
    +
    +
    void TimerDelete_example (void) {
    +
    osTimerId id; // timer id
    +
    osStatus status; // function return status
    +
    +
    // Create periodic timer
    +
    exec = 1;
    +
    id = osTimerCreate (osTimer(Timer2), osTimerPeriodic, NULL);
    +
    osTimerStart (id, 1000UL); // start timer
    +
    :
    +
    status = osTimerDelete (id); // stop and delete timer
    +
    if (status != osOK) {
    +
    // Timer could not be deleted
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osTimerStart (osTimerId timer_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]timer_idtimer ID obtained by osTimerCreate.
    [in]millisectime delay value of the timer.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osTimerStart shall be consistent in every CMSIS-RTOS.
    +

    Start or restart the timer.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified timer has been started or restarted.
    • +
    • osErrorISR: osTimerStart cannot be called from interrupt service routines.
    • +
    • osErrorParameter: timer_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Time_Callback (void const *arg) { // timer callback function
    +
    // arg contains &exec
    +
    // called every second after osTimerStart
    +
    }
    +
    +
    osTimerDef (Timer, Time_Callback); // define timer
    +
    uint32_t exec; // argument for the timer call back function
    +
    +
    void TimerStart_example (void) {
    +
    osTimerId id; // timer id
    +
    uint32_t timerDelay; // timer value
    +
    osStatus status; // function return status
    +
    +
    // Create periodic timer
    +
    exec = 1;
    +
    id = osTimerCreate (osTimer(Timer), osTimerPeriodic, &exec);
    +
    if (id) {
    +
    timerDelay = 1000;
    +
    status = osTimerStart (id, timerDelay); // start timer
    +
    if (status != osOK) {
    +
    // Timer could not be started
    +
    }
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osTimerStop (osTimerId timer_id)
    +
    +
    Parameters
    + + +
    [in]timer_idtimer ID obtained by osTimerCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +
    Note
    MUST REMAIN UNCHANGED: osTimerStop shall be consistent in every CMSIS-RTOS.
    +

    Stop the timer.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified timer has been stopped.
    • +
    • osErrorISR: osTimerStop cannot be called from interrupt service routines.
    • +
    • osErrorParameter: timer_id is incorrect.
    • +
    • osErrorResource: the timer is not started.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Timer_Callback (void const *arg); // prototype for timer callback function
    +
    osTimerDef (Timer, Timer_Callback); // define timer
    +
    +
    void TimerStop_example (void) {
    +
    osTimerId id; // timer id
    +
    osStatus status; // function return status
    +
    +
    // Create periodic timer
    +
    exec = 1;
    +
    id = osTimerCreate (osTimer(Timer2), osTimerPeriodic, NULL);
    +
    osTimerStart (id, 1000); // start timer
    +
    :
    +
    status = osTimerStop (id); // stop timer
    +
    if (status != osOK) {
    +
    // Timer could not be stopped
    +
    }
    +
    :
    +
    osTimerStart (id, 1000); // start timer again
    +
    :
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js new file mode 100644 index 0000000..60f1ace --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js @@ -0,0 +1,13 @@ +var group___c_m_s_i_s___r_t_o_s___timer_mgmt = +[ + [ "osTimer", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1b8d670eaf964b2910fa06885e650678", null ], + [ "osTimerDef", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1c720627e08d1cc1afcad44e799ed492", null ], + [ "os_timer_type", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9", [ + [ "osTimerOnce", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ad21712f8df5f97069c82dc9eec37b951", null ], + [ "osTimerPeriodic", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ab9c91f9699162edb09bb7c90c11c8788", null ] + ] ], + [ "osTimerCreate", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gaedd312bfdca04e0b8162b666e09a1ae6", null ], + [ "osTimerDelete", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga746b8043d906849bd65e3900fcb483cf", null ], + [ "osTimerStart", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga27a797a401b068e2644d1125f22a07ca", null ], + [ "osTimerStop", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga58f36b121a812936435cacc6e1e0e091", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.html b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.html new file mode 100644 index 0000000..c0eafec --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.html @@ -0,0 +1,254 @@ + + + + + +Generic Wait Functions +CMSIS-RTOS: Generic Wait Functions + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Generic Wait Functions
    +
    +
    + +

    Wait for a time period or unspecified events. +More...

    + + + + + +

    +Macros

    #define osFeature_Wait   1
     osWait function: 1=available, 0=not available
     
    + + + + + + + +

    +Functions

    osStatus osDelay (uint32_t millisec)
     Wait for Timeout (Time Delay).
     
    osEvent osWait (uint32_t millisec)
     Wait for Signal, Message, Mail, or Timeout.
     
    +

    Description

    +

    The Generic Wait function group provides means for a time delay and allow to wait for unspecified events.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_Wait   1
    +
    +

    A CMSIS-RTOS implementation may support the generic wait function osWait.

    + + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    osStatus osDelay (uint32_t millisec)
    +
    +
    Parameters
    + + +
    [in]millisectime delay value
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Wait for a specified time period in millisec.

    +

    The millisec value specifies the number of timer ticks and is therefore an upper bound. The exact time delay depends on the actual time elapsed since the last timer tick.

    +

    For a value of 1, the system waits until the next timer tick occurs. That means that the actual time delay may be up to one timer tick less.

    +

    Status and Error Codes
    +

    +
      +
    • osEventTimeout: the time delay is executed.
    • +
    • osErrorISR: osDelay cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osStatus status; // capture the return status
    +
    uint32_t delayTime; // delay time in milliseconds
    +
    +
    delayTime = 1000; // delay 1 second
    +
    :
    +
    status = osDelay (delayTime); // suspend thread execution
    +
    // handle error code
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osEvent osWait (uint32_t millisec)
    +
    +
    Parameters
    + + +
    [in]millisecTimout Value or 0 in case of no time-out
    +
    +
    +
    Returns
    event that contains signal, message, or mail information or error code.
    +
    Note
    MUST REMAIN UNCHANGED: osWait shall be consistent in every CMSIS-RTOS.
    +

    Wait for any event of the type Signal, Message, Mail for a specified time period in millisec. While the system waits, the thread that is calling this function is put into the state WAITING. When millisec is set to osWaitForever, the function will wait for an infinite time until an event occurs.

    +

    The osWait function puts a thread into the state WAITING and waits for any of the following events:

    +
      +
    • A signal sent to that thread explicitly
    • +
    • A message from a message object that is registered to that thread
    • +
    • A mail from a mail object that is registered to that thread
    • +
    +
    Note
    This function is optional and may not be provided by all CMSIS-RTOS implementations.
    +

    Status and Error Codes
    +

    +
      +
    • osEventSignal: a signal event occurred and is returned.
    • +
    • osEventMessage: a message event occurred and is returned.
    • +
    • osEventMail: a mail event occurred and is returned.
    • +
    • osEventTimeout: the time delay is executed.
    • +
    • osErrorISR: osDelay cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osEvent Event; // capture the event
    +
    uint32_t waitTime; // wait time in milliseconds
    +
    +
    :
    +
    waitTime = osWaitForever; // special "wait" value
    +
    Event = osWait (waitTime); // wait forever and until an event occurred
    +
    switch (Event.status) {
    +
    case osEventSignal: // Signal arrived
    +
    : // Event.value.signals contains the signal flags
    +
    break;
    +
    +
    case osEventMessage: // Message arrived
    +
    : // Event.value.p contains the message pointer
    +
    : // Event.def.message_id contains the message Id
    +
    break;
    +
    +
    case osEventMail: // Mail arrived
    +
    : // Event.value.p contains the mail pointer
    +
    : // Event.def.mail_id contains the mail Id
    +
    break;
    +
    +
    case osEventTimeout: // Timeout occurred
    +
    break;
    +
    +
    default: // Error occurred
    +
    break;
    +
    }
    +
    :
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.js b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.js new file mode 100644 index 0000000..6694d9f --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/group___c_m_s_i_s___r_t_o_s___wait.js @@ -0,0 +1,6 @@ +var group___c_m_s_i_s___r_t_o_s___wait = +[ + [ "osFeature_Wait", "group___c_m_s_i_s___r_t_o_s___wait.html#ga6c97d38879ae86491628f6e647639bad", null ], + [ "osDelay", "group___c_m_s_i_s___r_t_o_s___wait.html#ga02e19d5e723bfb06ba9324d625162255", null ], + [ "osWait", "group___c_m_s_i_s___r_t_o_s___wait.html#ga8470c8aaedfde524a44e22e5b2328285", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTOS/html/index.html b/CMSIS/Documentation/RTOS/html/index.html new file mode 100644 index 0000000..e9c7e27 --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/index.html @@ -0,0 +1,148 @@ + + + + + +Overview +CMSIS-RTOS: Overview + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS +  Version 1.02 +
    +
    CMSIS-RTOS API: Generic RTOS interface for Cortex-M processor-based devices.
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Overview
    +
    +
    +

    The CMSIS-RTOS API is a generic RTOS interface for ARM® Cortex®-M processor-based devices. CMSIS-RTOS provides a standardized API for software components that require RTOS functionality and gives therefore serious benefits to the users and the software industry.

    +
      +
    • CMSIS-RTOS provides basic features that are required in many applications or technologies such as UML or Java (JVM).
    • +
    • The unified feature set of the CMSIS-RTOS API simplifies sharing of software components and reduces learning efforts.
    • +
    • Middleware components that use the CMSIS-RTOS API are RTOS agnostic. CMSIS-RTOS compliant middleware is easier to adapt.
    • +
    • Standard project templates (such as motor control) of the CMSIS-RTOS API may be shipped with freely available CMSIS-RTOS implementations.
    • +
    +
    Note
    The CMSIS-RTOS API defines a minimum feature set. Implementations with extended features may be provided by RTOS vendors.
    +
    +API_Structure.png +
    +CMSIS-RTOS API Structure
    +

    A typical CMSIS-RTOS API implementation interfaces to an existing real-time Kernel. The CMSIS-RTOS API provides the following attributes and functionalities:

    +
      +
    • Function names, identifiers, and parameters are descriptive and easy to understand. The functions are powerful and flexible which reduces the number of functions exposed to the user.
    • +
    • Thread Management allows you to define, create, and control threads.
    • +
    • Interrupt Service Routines (ISR) can call some CMSIS-RTOS functions. When a CMSIS-RTOS function cannot be called from ISR context, it rejects the invocation.
    • +
    • Three different thread event types support communication between multiple threads and/or ISR:
        +
      • Signal: is a flag that may be used to indicate specific conditions to a thread. Signals can be modified in an ISR or set from other threads.
      • +
      • Message: is a 32-bit value that can be sent to a thread or an ISR. Messages are buffered in a queue. The message type and queue size is defined in a descriptor.
      • +
      • Mail: is a fixed-size memory block that can be sent to a thread or an ISR. Mails are buffered in a queue and memory allocation is provided. The mail type and queue size is defined in a descriptor.
      • +
      +
    • +
    • Mutexes and Semaphores are incorporated.
    • +
    • CPU time can be schedule with the following functionalities:
        +
      • A timeout parameter is incorporated in many CMSIS-RTOS functions to avoid system lockup. When a timeout is specified, the system waits until a resource is available or an event occurs. While waiting, other threads are scheduled.
      • +
      • The osDelay function puts a thread into the state WAITING for a specified period of time.
      • +
      • The generic osWait function waits for events that are assigned to a thread.
      • +
      • The osThreadYield provides co-operative thread switching and passes execution to another thread of the same priority.
      • +
      +
    • +
    +

    The CMSIS-RTOS API is designed to optionally incorporate multi-processor systems and/or access protection via the Cortex-M Memory Protection Unit (MPU).

    +

    In some RTOS implementations threads may execute on different processors and Mail and Message queues can therefore reside in shared memory resources.

    +

    The CMSIS-RTOS API encourages the software industry to evolve existing RTOS implementations. Kernel objects are defined and accessed using macros. This allows differentiation. RTOS implementations can be different and optimized in various aspects towards the Cortex-M processors. Optional features may be for example

    +
      +
    • Generic wait function; i.e. with support of time intervals.
    • +
    • Support of the Cortex-M Memory Protection Unit (MPU).
    • +
    • Zero-copy mail queue.
    • +
    • Support of multi-processor systems.
    • +
    • Support of a DMA controller.
    • +
    • Deterministic context switching.
    • +
    • Round-robin context switching.
    • +
    • Deadlock avoidance, for example with priority inversion.
    • +
    • Zero interrupt latency by using the Cortex-M3/M4 instructions LDEX and STEX.
    • +
    +
    +

    CMSIS-RTOS in ARM::CMSIS Pack

    +

    The following files relevant to CMSIS-RTOS are present in the ARM::CMSIS Pack directories:

    + + + + + + + +
    File/Folder Content
    CMSIS\Documentation\RTOS This documentation
    CMSIS\RTOS\Template Header File Template: cmsis_os.h
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTOS/html/jquery.js b/CMSIS/Documentation/RTOS/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/RTOS/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
    +
    +
    Configuration of CMSIS-RTOS RTX
    +
    +
    +

    The file RTX_Conf_CM.c is used to define the configuration parameters of CMSIS-RTOS RTX. This file must be part of every project that is using the CMSIS-RTOS RTX kernel.

    +

    The configuration file uses Configuration Wizard Annotations. Depending on the development tool that is used, this might lead to a more user friendly graphical representation of the settings. The following is a screenshot of the same configuration file using µVision's Configuration Wizard view:

    +
    +config_wizard.png +
    +RTX_Conf_CM.c in Configuration Wizard View
    +

    The configuration options are explained on these pages:

    + +

    Other configuration options not covered by the Configuration Wizard are explained here:

    + +
    + + + + + diff --git a/CMSIS/Documentation/RTX/html/_configure.js b/CMSIS/Documentation/RTX/html/_configure.js new file mode 100644 index 0000000..4af4ecd --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_configure.js @@ -0,0 +1,21 @@ +var _configure = +[ + [ "Thread Configuration", "_thread_config.html", [ + [ "Configuration of Thread count and Stack Space", "_thread_config.html#StackConfig", null ], + [ "Stack Overflow Checking", "_thread_config.html#StackCheck", null ], + [ "Stack Usage Watermark", "_thread_config.html#StackUsage", null ], + [ "Processor Mode for Thread Execution", "_thread_config.html#ProcessorMode", null ] + ] ], + [ "RTX Kernel Tick Timer Configuration", "_timer_tick.html", [ + [ "Usage of an Alternate Timer as RTX Kernel Timer", "_timer_tick.html#AltTimer", null ] + ] ], + [ "System Configuration", "_system_config.html", [ + [ "Settings for Round-Robin Thread Switching", "_system_config.html#RoundRobin", null ], + [ "User Timer Management", "_system_config.html#UserTimer", null ], + [ "ISR FIFO Queue size", "_system_config.html#ISRFIFO", null ] + ] ], + [ "Configuration for Low-Power Modes", "_low_power.html", [ + [ "Tick-less operation", "_low_power.html#TickLess", null ] + ] ], + [ "SVC Functions", "_s_v_c_functions.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/_creating__r_t_x__l_i_b.html b/CMSIS/Documentation/RTX/html/_creating__r_t_x__l_i_b.html new file mode 100644 index 0000000..5a958ea --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_creating__r_t_x__l_i_b.html @@ -0,0 +1,142 @@ + + + + + +Building the CMSIS-RTOS RTX Library +CMSIS-RTOS RTX: Building the CMSIS-RTOS RTX Library + + + + + + + + + + + + + + + +
    +
    +
    + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    + + +
    +
      + +
    +
    + + + + +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Building the CMSIS-RTOS RTX Library
    +
    +
    +

    The CMSIS Pack contains a µVision project for building the set of CMSIS-RTOS RTX libraries. This project can also be used as a reference for building the CMSIS-RTOS RTX libraries using a tool-chain of your choice.

    +
      +
    1. Open the project RTX_Lib_CM.uvproj from the pack folder \CMSIS\RTOS\RTX\SRC\ARM\ in uVision.
    2. +
    3. Select the project target that matches your device's processor core.
      + The project provides target configuration for all supported Cortex-M targets supported by RTX.
      + Note: The targets CMF4_LE (Little Endian) and CMF4_BE (Big Endian) shall be used for Cortex-M4 as well as Cortex-M7 based devices with FPU.
    4. +
    5. You can find out about the required preprocessor defines in the dialogs Options for Target - C/C++ and Options for Target - Asm.
    6. +
    7. From the Project window you find the list of source files required for a complete library build.
    8. +
    +
    +own_lib_projwin.png +
    +Project with files for Cortex-M4 cores
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_example_r_t_x__tutorial.html b/CMSIS/Documentation/RTX/html/_example_r_t_x__tutorial.html new file mode 100644 index 0000000..440c271 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_example_r_t_x__tutorial.html @@ -0,0 +1,131 @@ + + + + + +CMSIS-RTOS RTX Tutorial +CMSIS-RTOS RTX: CMSIS-RTOS RTX Tutorial + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    CMSIS-RTOS RTX Tutorial
    +
    +
    +

    The tutorial is an excerpt of Trevor Martin's book The Designer's Guide to the Cortex-M Processor Family. It is accompanied by a Pack file that contains the example projects that are discussed in the tutorial.

    +

    The tutorial is available as a Software Pack from http://www.keil.com/dd2/pack. On the page, browse to Hitex and select the Pack described as "An Introduction to using CMSIS RTOS for Cortex-M Microcontrollers". Download and install the Pack which contains all example projects referenced in the CMSIS_RTOS_Tutorial.pdf.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_files.html b/CMSIS/Documentation/RTX/html/_files.html new file mode 100644 index 0000000..4f9dbc5 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_files.html @@ -0,0 +1,505 @@ + + + + + +Directory Structure and File Overview +CMSIS-RTOS RTX: Directory Structure and File Overview + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Directory Structure and File Overview
    +
    +
    +

    The following section provides an overview of the directory structure and the files that are relevant for the user's for CMSIS-RTOS RTX.

    +

    +CMSIS-RTOS RTX Directory Structure

    +

    The CMSIS-RTOS RTX is delivered in source code and several examples are provided.

    + + + + + + + + + + + + + +
    Directory Content
    INC The include files for CMSIS-RTOS RTX. cmsis_os.h is the central include file for user applications.
    LIB CMSIS-RTOS RTX library files for ARMCC, GCC, and IAR Compiler.
    SRC Source code of CMSIS-RTOS RTX library along with project files for ARMCC, GCC, and IAR Compiler.
    Templates CMSIS-RTOS RTX configuration file (RTX_Conf_CM.c).
    UserCode Templates Template files for creating application projects with CMSIS-RTOS RTX.
    +

    +CMSIS-RTOS RTX Library Files

    +

    The CMSIS-RTOS RTX Library is available pre-compiled for ARMCC, GCC, and IAR C/C++ Compilers and supports all Cortex-M processor variants in every configuration.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Library File Processor Configuration
    LIB\ARM\RTX_CM0.lib CMSIS-RTOS RTX Library for ARMCC Compiler, Cortex-M0 and M1, little-endian.
    LIB\ARM\RTX_CM0_B.lib CMSIS-RTOS RTX Library for ARMCC Compiler, Cortex-M0 and M1, big-endian.
    LIB\ARM\RTX_CM3.lib CMSIS-RTOS RTX Library for ARMCC Compiler, Cortex-M3, M4, and M7 without FPU, little-endian.
    LIB\ARM\RTX_CM3_B.lib CMSIS-RTOS RTX Library for ARMCC Compiler, Cortex-M3, M4, and M7 without FPU, big-endian.
    LIB\ARM\RTX_CM4.lib CMSIS-RTOS RTX Library for ARMCC Compiler, Cortex-M4 and M7 with FPU, little-endian.
    LIB\ARM\RTX_CM4_B.lib CMSIS-RTOS RTX Library for ARMCC Compiler, Cortex-M4 and M7 with FPU, big-endian.
    LIB\GCC\libRTX_CM0.a CMSIS-RTOS RTX Library for GCC Compiler, Cortex-M0 and M1, little-endian.
    LIB\GCC\libRTX_CM0_B.a CMSIS-RTOS RTX Library for GCC Compiler, Cortex-M0 and M1, big-endian.
    LIB\GCC\libRTX_CM3.a CMSIS-RTOS RTX Library for GCC Compiler, Cortex-M3, M4, and M7 without FPU, little-endian.
    LIB\GCC\libRTX_CM3_B.a CMSIS-RTOS RTX Library for GCC Compiler, Cortex-M3, M4, and M7 without FPU, big-endian.
    LIB\GCC\libRTX_CM4.a CMSIS-RTOS RTX Library for GCC Compiler, Cortex-M4 and M7 with FPU, little-endian.
    LIB\GCC\libRTX_CM4_B.a CMSIS-RTOS RTX Library for GCC Compiler, Cortex-M4 and M7 with FPU, big-endian.
    LIB\IAR\RTX_CM0.lib CMSIS-RTOS RTX Library for IAR Compiler, Cortex-M0 and M1, little-endian.
    LIB\IAR\RTX_CM0_B.lib CMSIS-RTOS RTX Library for IAR Compiler, Cortex-M0 and M1, big-endian.
    LIB\IAR\RTX_CM3.lib CMSIS-RTOS RTX Library for IAR Compiler, Cortex-M3, M4, and M7 without FPU, little-endian.
    LIB\IAR\RTX_CM3_B.lib CMSIS-RTOS RTX Library for IAR Compiler, Cortex-M3, M4, and M7 without FPU, big-endian.
    LIB\IAR\RTX_CM4.lib CMSIS-RTOS RTX Library for IAR Compiler, Cortex-M4 and M7 with FPU, little-endian.
    LIB\IAR\RTX_CM4_B.lib CMSIS-RTOS RTX Library for IAR Compiler, Cortex-M4 and M7 with FPU, big-endian.
    +

    +Configuration File RTX_Conf_CM.c

    +
    /*----------------------------------------------------------------------------
    +
    * CMSIS-RTOS - RTX
    +
    *----------------------------------------------------------------------------
    +
    * Name: RTX_Conf_CM.C
    +
    * Purpose: Configuration of CMSIS RTX Kernel for Cortex-M
    +
    * Rev.: V4.70.1
    +
    *----------------------------------------------------------------------------
    +
    *
    +
    * Copyright (c) 1999-2009 KEIL, 2009-2015 ARM Germany GmbH
    +
    * All rights reserved.
    +
    * Redistribution and use in source and binary forms, with or without
    +
    * modification, are permitted provided that the following conditions are met:
    +
    * - Redistributions of source code must retain the above copyright
    +
    * notice, this list of conditions and the following disclaimer.
    +
    * - Redistributions in binary form must reproduce the above copyright
    +
    * notice, this list of conditions and the following disclaimer in the
    +
    * documentation and/or other materials provided with the distribution.
    +
    * - Neither the name of ARM nor the names of its contributors may be used
    +
    * to endorse or promote products derived from this software without
    +
    * specific prior written permission.
    +
    *
    +
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    +
    * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    +
    * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    +
    * ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
    +
    * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    +
    * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    +
    * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    +
    * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    +
    * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    +
    * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +
    * POSSIBILITY OF SUCH DAMAGE.
    +
    *---------------------------------------------------------------------------*/
    +
    +
    #include "cmsis_os.h"
    +
    +
    +
    /*----------------------------------------------------------------------------
    +
    * RTX User configuration part BEGIN
    +
    *---------------------------------------------------------------------------*/
    +
    +
    //-------- <<< Use Configuration Wizard in Context Menu >>> -----------------
    +
    //
    +
    // <h>Thread Configuration
    +
    // =======================
    +
    //
    +
    // <o>Number of concurrent running user threads <1-250>
    +
    // <i> Defines max. number of user threads that will run at the same time.
    +
    // <i> Default: 6
    +
    #ifndef OS_TASKCNT
    +
    #define OS_TASKCNT 6
    +
    #endif
    +
    +
    // <o>Default Thread stack size [bytes] <64-4096:8><#/4>
    +
    // <i> Defines default stack size for threads with osThreadDef stacksz = 0
    +
    // <i> Default: 200
    +
    #ifndef OS_STKSIZE
    +
    #define OS_STKSIZE 50 // this stack size value is in words
    +
    #endif
    +
    +
    // <o>Main Thread stack size [bytes] <64-32768:8><#/4>
    +
    // <i> Defines stack size for main thread.
    +
    // <i> Default: 200
    +
    #ifndef OS_MAINSTKSIZE
    +
    #define OS_MAINSTKSIZE 50 // this stack size value is in words
    +
    #endif
    +
    +
    // <o>Number of threads with user-provided stack size <0-250>
    +
    // <i> Defines the number of threads with user-provided stack size.
    +
    // <i> Default: 0
    +
    #ifndef OS_PRIVCNT
    +
    #define OS_PRIVCNT 0
    +
    #endif
    +
    +
    // <o>Total stack size [bytes] for threads with user-provided stack size <0-1048576:8><#/4>
    +
    // <i> Defines the combined stack size for threads with user-provided stack size.
    +
    // <i> Default: 0
    +
    #ifndef OS_PRIVSTKSIZE
    +
    #define OS_PRIVSTKSIZE 0 // this stack size value is in words
    +
    #endif
    +
    +
    // <q>Stack overflow checking
    +
    // <i> Enable stack overflow checks at thread switch.
    +
    // <i> Enabling this option increases slightly the execution time of a thread switch.
    +
    #ifndef OS_STKCHECK
    +
    #define OS_STKCHECK 1
    +
    #endif
    +
    +
    // <q>Stack usage watermark
    +
    // <i> Initialize thread stack with watermark pattern for analyzing stack usage (current/maximum) in System and Thread Viewer.
    +
    // <i> Enabling this option increases significantly the execution time of osThreadCreate.
    +
    #ifndef OS_STKINIT
    +
    #define OS_STKINIT 0
    +
    #endif
    +
    +
    // <o>Processor mode for thread execution
    +
    // <0=> Unprivileged mode
    +
    // <1=> Privileged mode
    +
    // <i> Default: Privileged mode
    +
    #ifndef OS_RUNPRIV
    +
    #define OS_RUNPRIV 1
    +
    #endif
    +
    +
    // </h>
    +
    +
    // <h>RTX Kernel Timer Tick Configuration
    +
    // ======================================
    +
    // <q> Use Cortex-M SysTick timer as RTX Kernel Timer
    +
    // <i> Cortex-M processors provide in most cases a SysTick timer that can be used as
    +
    // <i> as time-base for RTX.
    +
    #ifndef OS_SYSTICK
    +
    #define OS_SYSTICK 1
    +
    #endif
    +
    //
    +
    // <o>RTOS Kernel Timer input clock frequency [Hz] <1-1000000000>
    +
    // <i> Defines the input frequency of the RTOS Kernel Timer.
    +
    // <i> When the Cortex-M SysTick timer is used, the input clock
    +
    // <i> is on most systems identical with the core clock.
    +
    #ifndef OS_CLOCK
    +
    #define OS_CLOCK 12000000
    +
    #endif
    +
    +
    // <o>RTX Timer tick interval value [us] <1-1000000>
    +
    // <i> The RTX Timer tick interval value is used to calculate timeout values.
    +
    // <i> When the Cortex-M SysTick timer is enabled, the value also configures the SysTick timer.
    +
    // <i> Default: 1000 (1ms)
    +
    #ifndef OS_TICK
    +
    #define OS_TICK 1000
    +
    #endif
    +
    +
    // </h>
    +
    +
    // <h>System Configuration
    +
    // =======================
    +
    //
    +
    // <e>Round-Robin Thread switching
    +
    // ===============================
    +
    //
    +
    // <i> Enables Round-Robin Thread switching.
    +
    #ifndef OS_ROBIN
    +
    #define OS_ROBIN 1
    +
    #endif
    +
    +
    // <o>Round-Robin Timeout [ticks] <1-1000>
    +
    // <i> Defines how long a thread will execute before a thread switch.
    +
    // <i> Default: 5
    +
    #ifndef OS_ROBINTOUT
    +
    #define OS_ROBINTOUT 5
    +
    #endif
    +
    +
    // </e>
    +
    +
    // <e>User Timers
    +
    // ==============
    +
    // <i> Enables user Timers
    +
    #ifndef OS_TIMERS
    +
    #define OS_TIMERS 1
    +
    #endif
    +
    +
    // <o>Timer Thread Priority
    +
    // <1=> Low
    +
    // <2=> Below Normal <3=> Normal <4=> Above Normal
    +
    // <5=> High
    +
    // <6=> Realtime (highest)
    +
    // <i> Defines priority for Timer Thread
    +
    // <i> Default: High
    +
    #ifndef OS_TIMERPRIO
    +
    #define OS_TIMERPRIO 5
    +
    #endif
    +
    +
    // <o>Timer Thread stack size [bytes] <64-4096:8><#/4>
    +
    // <i> Defines stack size for Timer thread.
    +
    // <i> Default: 200
    +
    #ifndef OS_TIMERSTKSZ
    +
    #define OS_TIMERSTKSZ 50 // this stack size value is in words
    +
    #endif
    +
    +
    // <o>Timer Callback Queue size <1-32>
    +
    // <i> Number of concurrent active timer callback functions.
    +
    // <i> Default: 4
    +
    #ifndef OS_TIMERCBQS
    +
    #define OS_TIMERCBQS 4
    +
    #endif
    +
    +
    // </e>
    +
    +
    // <o>ISR FIFO Queue size<4=> 4 entries <8=> 8 entries
    +
    // <12=> 12 entries <16=> 16 entries
    +
    // <24=> 24 entries <32=> 32 entries
    +
    // <48=> 48 entries <64=> 64 entries
    +
    // <96=> 96 entries
    +
    // <i> ISR functions store requests to this buffer,
    +
    // <i> when they are called from the interrupt handler.
    +
    // <i> Default: 16 entries
    +
    #ifndef OS_FIFOSZ
    +
    #define OS_FIFOSZ 16
    +
    #endif
    +
    +
    // </h>
    +
    +
    //------------- <<< end of configuration section >>> -----------------------
    +
    +
    // Standard library system mutexes
    +
    // ===============================
    +
    // Define max. number system mutexes that are used to protect
    +
    // the arm standard runtime library. For microlib they are not used.
    +
    #ifndef OS_MUTEXCNT
    +
    #define OS_MUTEXCNT 8
    +
    #endif
    +
    +
    /*----------------------------------------------------------------------------
    +
    * RTX User configuration part END
    +
    *---------------------------------------------------------------------------*/
    +
    +
    #define OS_TRV ((uint32_t)(((double)OS_CLOCK*(double)OS_TICK)/1E6)-1)
    +
    +
    +
    /*----------------------------------------------------------------------------
    +
    * Global Functions
    +
    *---------------------------------------------------------------------------*/
    +
    +
    /*--------------------------- os_idle_demon ---------------------------------*/
    +
    +
    /// \brief The idle demon is running when no other thread is ready to run
    +
    void os_idle_demon (void) {
    +
    +
    for (;;) {
    +
    /* HERE: include optional user code to be executed when no thread runs.*/
    +
    }
    +
    }
    +
    +
    #if (OS_SYSTICK == 0) // Functions for alternative timer as RTX kernel timer
    +
    +
    /*--------------------------- os_tick_init ----------------------------------*/
    +
    +
    /// \brief Initializes an alternative hardware timer as RTX kernel timer
    +
    /// \return IRQ number of the alternative hardware timer
    +
    int os_tick_init (void) {
    +
    return (-1); /* Return IRQ number of timer (0..239) */
    +
    }
    +
    +
    /*--------------------------- os_tick_val -----------------------------------*/
    +
    +
    /// \brief Get alternative hardware timer's current value (0 .. OS_TRV)
    +
    /// \return Current value of the alternative hardware timer
    +
    uint32_t os_tick_val (void) {
    +
    return (0);
    +
    }
    +
    +
    /*--------------------------- os_tick_ovf -----------------------------------*/
    +
    +
    /// \brief Get alternative hardware timer's overflow flag
    +
    /// \return Overflow flag\n
    +
    /// - 1 : overflow
    +
    /// - 0 : no overflow
    +
    uint32_t os_tick_ovf (void) {
    +
    return (0);
    +
    }
    +
    +
    /*--------------------------- os_tick_irqack --------------------------------*/
    +
    +
    /// \brief Acknowledge alternative hardware timer interrupt
    +
    void os_tick_irqack (void) {
    +
    /* ... */
    +
    }
    +
    +
    #endif // (OS_SYSTICK == 0)
    +
    +
    /*--------------------------- os_error --------------------------------------*/
    +
    +
    /* OS Error Codes */
    +
    #define OS_ERROR_STACK_OVF 1
    +
    #define OS_ERROR_FIFO_OVF 2
    +
    #define OS_ERROR_MBX_OVF 3
    +
    #define OS_ERROR_TIMER_OVF 4
    +
    +
    extern osThreadId svcThreadGetId (void);
    +
    +
    /// \brief Called when a runtime error is detected
    +
    /// \param[in] error_code actual error code that has been detected
    +
    void os_error (uint32_t error_code) {
    +
    +
    /* HERE: include optional code to be executed on runtime error. */
    +
    switch (error_code) {
    + +
    /* Stack overflow detected for the currently running task. */
    +
    /* Thread can be identified by calling svcThreadGetId(). */
    +
    break;
    + +
    /* ISR FIFO Queue buffer overflow detected. */
    +
    break;
    + +
    /* Mailbox overflow detected. */
    +
    break;
    + +
    /* User Timer Callback Queue overflow detected. */
    +
    break;
    +
    default:
    +
    break;
    +
    }
    +
    for (;;);
    +
    }
    +
    +
    +
    /*----------------------------------------------------------------------------
    +
    * RTX Configuration Functions
    +
    *---------------------------------------------------------------------------*/
    +
    +
    #include "RTX_CM_lib.h"
    +
    +
    /*----------------------------------------------------------------------------
    +
    * end of file
    +
    *---------------------------------------------------------------------------*/
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_function_overview.html b/CMSIS/Documentation/RTX/html/_function_overview.html new file mode 100644 index 0000000..5b18e25 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_function_overview.html @@ -0,0 +1,256 @@ + + + + + +Function Overview +CMSIS-RTOS RTX: Function Overview + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Function Overview
    +
    +
    +

    The following list provides a brief overview of all CMSIS-RTOS functions that are implemented in CMSIS-RTOS RTX.

    + + + + + + + + + + + +

    +Timout Value

    +

    The timeout value specifies the number of timer ticks until a timeout or time delay elapses. The value is an upper bound and depends on the actual time elapsed since the last timer tick.

    +

    For a value of 1 the system waits until the next timer tick occurs. That means that the actual timeout value can be one timer tick less than the specified timeout value.

    +
    +TimerValues.png +
    +Timer Values
    +
    Note
    The actual granularity depends also on the RTX Kernel Tick Timer Configuration.
    +
    +The underlying RTX uses 16-bit timeout values. Therefore the timeout value has a valid range from 1 .. 65534 ticks.
    +

    +Calls from Interrupt Service Routines

    +

    The following CMSIS-RTOS functions can be called from threads and Interrupt Service Routines (ISR):

    + +

    Functions that cannot be called from an ISR are verifying the interrupt status and return, in case they are called from an ISR context, the status code osErrorISR. In some implementations, this condition might be caught using the HARD FAULT vector.

    +

    Some CMSIS-RTOS implementations support CMSIS-RTOS function calls from multiple ISRs at the same time. If this is impossible, the CMSIS-RTOS rejects calls by nested ISR functions with the status code osErrorISRRecursive.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_low_power.html b/CMSIS/Documentation/RTX/html/_low_power.html new file mode 100644 index 0000000..0636872 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_low_power.html @@ -0,0 +1,204 @@ + + + + + +Configuration for Low-Power Modes +CMSIS-RTOS RTX: Configuration for Low-Power Modes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Configuration for Low-Power Modes
    +
    +
    +

    The system thread os_idle_demon can be use to switch the system into a low-power mode. The easiest form to enter a low-power mode is the execution of the __WFE function that puts the processor into a sleep mode where it waits for an event.

    +

    Configuration Example:

    +
    #include "device.h" /* Device definitions */
    +
    +
    void os_idle_demon (void) {
    +
    /* The idle demon is a system thread, running when no other thread is */
    +
    /* ready to run. */
    +
    +
    for (;;) {
    +
    __WFE(); /* Enter sleep mode */
    +
    }
    +
    }
    +
    Note
    __WFE() is not available at every Cortex-M implementation. Check device manuals for availability.
    +

    +Tick-less operation

    +

    CMSIS-RTOS RTX provides extension for tick-less operation which is useful for applications that use extensively low-power modes where the SysTick timer is also disabled. To provide a time-tick in such power-saving modes a wake-up timer is used to derive timer intervals. The RTX functions os_suspend and os_resume control the tick-less operation.

    +

    Using this functions allows the RTX thread scheduler to stop the periodic kernel tick interrupt. When all active threads are suspended, the system enters power-down and calculates how long it can stay in this power-down mode. In the power-down mode the processor and potentially peripherals can be switched off. Only a wake-up timer must remain powered, because this timer is responsible to wake-up the system after the power-down period expires.

    +

    The tick-less operation is controlled from the os_idle_demon thread. The wake-up timeout value is set before the system enters the power-down mode. The function os_suspend calculates the wake-up timeout measured in RTX Timer Ticks; this value is used to setup the wake-up timer that runs during the power-down mode of the system.

    +

    Once the system resumes operation (either by a wake-up time out or other interrupts) the RTX thread scheduler is started with the function os_resume. The parameter sleep_time specifies the time (in RTX Timer Ticks) that the system was in power-down mode.

    +

    Code Example

    +
    #include "LPC11Uxx.h" /* LPC11Uxx definitions */
    +
    +
    void os_idle_demon (void) {
    +
    /* The idle demon is a system thread, running when no other thread is */
    +
    /* ready to run. */
    +
    unsigned int sleep;
    +
    unsigned int tc;
    +
    +
    LPC_SYSCON->SYSAHBCLKCTRL |= (1UL << 15) | /* Enable clock for WWDT */
    +
    (1UL << 19); /* Enable clock for Pin IRQ */
    +
    +
    LPC_SYSCON->PINTSEL[0] = 1; /* P0.1 selected as INT0 IRQ */
    +
    LPC_SYSCON->STARTERP0 |= (1UL << 0); /* Enable INT0 wake-up */
    +
    LPC_SYSCON->STARTERP1 |= (1UL << 12); /* Enable WWDT wake-up */
    +
    +
    LPC_SYSCON->WDTOSCCTRL = (3 << 0) | /* WDOSC DIVSEL=3 */
    +
    (2 << 5); /* WDOSC FREQ=0.8MHz */
    +
    LPC_SYSCON->PDRUNCFG &= ~(1UL << 6); /* Power-up WDT Oscillator */
    +
    LPC_SYSCON->PDSLEEPCFG &= ~(1UL << 6); /* Power WDT Oscillator in PD */
    +
    +
    LPC_WWDT->CLKSEL = (1UL << 0) | /* Select WDOSC as Clock */
    +
    (1UL << 31); /* Lock selection */
    +
    LPC_WWDT->WARNINT = 1000; /* WDT Warning IRQ value */
    +
    LPC_WWDT->MOD = (1UL << 0); /* Enable WDT */
    +
    +
    NVIC_EnableIRQ(FLEX_INT0_IRQn); /* Enable INT0 IRQ (wake-up) */
    +
    NVIC_EnableIRQ(WDT_IRQn); /* Enable WWDT IRQ (wake-up) */
    +
    +
    for (;;) {
    +
    /* HERE: include optional user code to be executed when no task runs.*/
    +
    sleep = os_suspend(); /* Suspend RTX thread scheduler */
    +
    +
    if (sleep) { /* How long can we sleep? */
    +
    /* "sleep" is in RTX Timer Ticks which is 10ms in this configuration */
    +
    +
    /* Setup WDT wake-up: WDT ticks @25kHz (FREQ/2/(DIVSEL+1)/4) */
    +
    tc = (sleep * 250) + 1000;
    +
    LPC_WWDT->TC = tc;
    +
    LPC_WWDT->FEED = 0xAA;
    +
    LPC_WWDT->FEED = 0x55;
    +
    +
    /* Enter Power-down mode */
    +
    LPC_SYSCON->PDAWAKECFG = LPC_SYSCON->PDRUNCFG; /* Power after wake-up */
    +
    LPC_PMU->PCON = 0x02; /* Select Power-down mode */
    +
    SCB->SCR = (1UL << 2); /* Set SLEEPDEEP */
    +
    __WFE(); /* Enter Power-down mode */
    +
    +
    /* After Wake-up */
    +
    sleep = (tc - LPC_WWDT->TV) / 250;
    +
    }
    +
    +
    os_resume(sleep); /* Resume RTX thread scheduler */
    +
    }
    +
    }
    +
    Note
    __WFE() is not available at every Cortex-M implementation. Check device manuals for availability.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_m_i_s_r_a_compliance.html b/CMSIS/Documentation/RTX/html/_m_i_s_r_a_compliance.html new file mode 100644 index 0000000..6d0e6ef --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_m_i_s_r_a_compliance.html @@ -0,0 +1,173 @@ + + + + + +MISRA-C:2004 Compliance Exceptions +CMSIS-RTOS RTX: MISRA-C:2004 Compliance Exceptions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    MISRA-C:2004 Compliance Exceptions
    +
    +
    +

    CMSIS-RTOS RTX tries to be MISRA-C compliant as much as possible. However, there are some violations in order to simplify the overall code logic and to generate more efficient code.

    +

    CMSIS-RTOS RTX generates the following notes, warnings and infos for MISRA-C:2004 rules:

    +
      +
    • Rule 1.1, required, Rule 2.2, required: Non-ANSI reserved word or construct: '//'
    • +
    • Rule 1.2, required: Both sides have side effects
    • +
    • Rule 1.2, required: Unusual pointer cast (incompatible indirect types)
    • +
    • Rule 8.1, required: Function defined without a prototype in scope
    • +
    • Rule 11.1, required, Rule 11.3, advisory: cast from pointer to unsigned int
    • +
    • Rule 11.1, required, Rule 11.3, advisory: cast from unsigned int to pointer
    • +
    • Rule 11.4, advisory: cast from pointer to pointer
    • +
    • Rule 12.11, advisory: Overflow in computing constant for operation: 'unsigned shift left'
    • +
    • Rule 13.7, required, Rule 14.1, required: Constant value Boolean
    • +
    • Rule 14.4, required: Use of goto is deprecated
    • +
    • Rule 14.7, required: Return statement before end of function
    • +
    • Rule 16.10, required: Ignoring return value of function
    • +
    • Rule 17.2, required, Rule 17.3, required: Relational or subtract operator applied to pointers
    • +
    • Rule 19.4, required, Rule 19.10, required: Expression-like macro not parenthesized
    • +
    • Rule 19.15, required: Repeated include file
    • +
    +

    CMSIS-RTOS RTX violates the following MISRA-C:2004 rules:

    +
      +
    • Required Rule 8.5: object/function definition in header file
    • +
    • Required Rule 10.1: Prohibited Implicit Conversion: Non-constant argument to function
    • +
    • Required Rule 10.1: Implicit conversion of complex integer expression
    • +
    • Required Rule 10.3: Cast of complex integer expression to larger type
    • +
    • Required Rule 10.3: Cast of complex expression changes signedness
    • +
    • Required Rule 11.5: attempt to cast away const/volatile from a pointer or reference
    • +
    • Required Rule 12.4: side effects on right hand of logical operator: '&&'
    • +
    • Required Rule 12.4: side effects on right hand of logical operator: '||'
    • +
    • Required Rule 12.5: non-primary expression used with logical operator
    • +
    • Required Rule 14.3: null statement not in line by itself
    • +
    • Required Rule 14.8: left brace expected for while, do...while and for
    • +
    • Required Rule 14.9: left brace expected for if and else
    • +
    • Required Rule 15.3: default missing from switch statement
    • +
    • Required Rule 16.9: function identifier used without '&' or parenthesized parameter list
    • +
    • Required Rule 17.4: pointer arithmetic other than array indexing used
    • +
    • Required Rule 18.4: declaration of union type or object of union type: '{...}'
    • +
    • Required Rule 19.12: Multiple use of '#/##' operators in definition of macro
    • +
    • Required Rule 20.2: Re-use of C90 identifier pattern
    • +
    • Advisory Rule 12.1: dependence placed on C's operator precedence; operators: '+' and '-'
    • +
    • Advisory Rule 12.13: increment or decrement combined with another operator
    • +
    • Advisory Rule 19.13: '#/##' operator used in macro
    • +
    • Advisory Rule 19.7: Function-like macro defined
    • +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_overview.html b/CMSIS/Documentation/RTX/html/_overview.html new file mode 100644 index 0000000..84bd2d0 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_overview.html @@ -0,0 +1,159 @@ + + + + + +Overview +CMSIS-RTOS RTX: Overview + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Overview
    +
    +
    +

    This version of RTX implements the CMSIS-RTOS API, which is a generic RTOS interface for Cortex-M processor-based devices. The CMSIS-RTOS API provides a standardized interface for software components that require RTOS functionality. This RTX implementation gives therefore serious benefits to the users and the software industry.

    +
      +
    • The unified feature set of the CMSIS-RTOS API simplifies sharing of software components and reduces learning efforts.
    • +
    • Middleware components that use the CMSIS-RTOS API are RTOS agnostic and CMSIS-RTOS compliant middleware is easier to adapt.
    • +
    • This RTX implementation is available under the BSD license and can be freely distributed with project templates.
    • +
    +

    The CMSIS-RTOS RTX manages the resources of the microcontroller system and implements the concept of parallel threads that run concurrently. There are many advantages of using the CMSIS-RTOS RTX kernel.

    +

    Applications frequently require several concurrent activities. RTX can manage multiple concurrent activities at the time when they are needed. Each activity gets a separate thread which executes a specific task and this simplifies the overall program structure. The CMSIS-RTOS RTX system is scalable and additional threads can be added easily at a later time. Threads have a priority allowing faster execution of time-critical parts of an user application.

    +

    The CMSIS-RTOS RTX offers services needed in many real-time applications, for example, periodical activation of timer functions, memory management, and message exchange between threads with time limits.

    +
    +RTX_Structure.png +
    +CMSIS-RTOS RTX Structure
    +

    Compared to the classic Keil RTX version, the CMSIS-RTOS RTX library is extended with the CMSIS API interface module (source file rt_cmsis.c) which implements the function translation. The header file cmsis_os.h provides the API to the CMSIS-RTOS RTX for the user application. Refer to Create a CMSIS-RTOS RTX Project for more information.

    +

    CMSIS-RTOS RTX has several options that are configured with the RTX_Conf_CM.c file. Refer to Configuration of CMSIS-RTOS RTX for more information.

    +

    Attributes of the CMSIS-RTOS RTX implementation:

    + +

    The following sections provide further details:

    + +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_overview.js b/CMSIS/Documentation/RTX/html/_overview.js new file mode 100644 index 0000000..fea1c29 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_overview.js @@ -0,0 +1,18 @@ +var _overview = +[ + [ "Theory of Operation", "_theory.html", [ + [ "RTX Kernel Timer Tick and Thread Management", "_theory.html#KernelTimer", null ], + [ "CMSIS-RTOS RTX Threads", "_theory.html#RTX_Threads", null ], + [ "Priority Inversion on Resource Sharing", "_theory.html#PriorityInversion", null ], + [ "Function calls from Interrupt Service Routines (ISR)", "_theory.html#isr_function_calls", null ] + ] ], + [ "Directory Structure and File Overview", "_files.html", [ + [ "CMSIS-RTOS RTX Directory Structure", "_files.html#Folders", null ], + [ "CMSIS-RTOS RTX Library Files", "_files.html#LibFiles", null ], + [ "Configuration File RTX_Conf_CM.c", "_files.html#RTX_Conf_CM", null ] + ] ], + [ "Technical Data", "_technical_data.html", [ + [ "osWait", "_technical_data.html#osWait", null ] + ] ], + [ "MISRA-C:2004 Compliance Exceptions", "_m_i_s_r_a_compliance.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/_r_t_x___conf___c_m_8c.html b/CMSIS/Documentation/RTX/html/_r_t_x___conf___c_m_8c.html new file mode 100644 index 0000000..31da526 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_r_t_x___conf___c_m_8c.html @@ -0,0 +1,499 @@ + + + + + +RTX_Conf_CM.c File Reference +CMSIS-RTOS RTX: RTX_Conf_CM.c File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    RTX_Conf_CM.c File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define OS_TASKCNT   6
     
    #define OS_STKSIZE   50
     
    #define OS_MAINSTKSIZE   50
     
    #define OS_PRIVCNT   0
     
    #define OS_PRIVSTKSIZE   0
     
    #define OS_STKCHECK   1
     
    #define OS_STKINIT   0
     
    #define OS_RUNPRIV   1
     
    #define OS_CLOCK   12000000
     
    #define OS_TICK   1000
     
    #define OS_ROBIN   1
     
    #define OS_ROBINTOUT   5
     
    #define OS_TIMERS   1
     
    #define OS_TIMERPRIO   5
     
    #define OS_TIMERSTKSZ   50
     
    #define OS_TIMERCBQS   4
     
    #define OS_FIFOSZ   16
     
    #define OS_MUTEXCNT   8
     
    #define OS_TRV   ((uint32_t)(((double)OS_CLOCK*(double)OS_TICK)/1E6)-1)
     
    #define OS_ERROR_STACK_OVF   1
     
    #define OS_ERROR_FIFO_OVF   2
     
    #define OS_ERROR_MBX_OVF   3
     
    #define OS_ERROR_TIMER_OVF   4
     
    + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void os_idle_demon (void)
     The idle demon is running when no other thread is ready to run.
     
    int os_tick_init (void)
     Initializes an alternative hardware timer as RTX kernel timer.
     
    uint32_t os_tick_val (void)
     Get alternative hardware timer's current value (0 .. OS_TRV)
     
    uint32_t os_tick_ovf (void)
     Get alternative hardware timer's overflow flag.
     
    void os_tick_irqack (void)
     Acknowledge alternative hardware timer interrupt.
     
    osThreadId svcThreadGetId (void)
     
    void os_error (uint32_t error_code)
     Called when a runtime error is detected.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define OS_CLOCK   12000000
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_ERROR_FIFO_OVF   2
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_ERROR_MBX_OVF   3
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_ERROR_STACK_OVF   1
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_ERROR_TIMER_OVF   4
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_FIFOSZ   16
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_MAINSTKSIZE   50
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_MUTEXCNT   8
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_PRIVCNT   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_PRIVSTKSIZE   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_ROBIN   1
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_ROBINTOUT   5
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_RUNPRIV   1
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_STKCHECK   1
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_STKINIT   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_STKSIZE   50
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_TASKCNT   6
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_TICK   1000
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_TIMERCBQS   4
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_TIMERPRIO   5
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_TIMERS   1
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_TIMERSTKSZ   50
    +
    + +
    +
    + +
    +
    + + + + +
    #define OS_TRV   ((uint32_t)(((double)OS_CLOCK*(double)OS_TICK)/1E6)-1)
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    osThreadId svcThreadGetId (void )
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_s_v_c_functions.html b/CMSIS/Documentation/RTX/html/_s_v_c_functions.html new file mode 100644 index 0000000..3f2ad21 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_s_v_c_functions.html @@ -0,0 +1,167 @@ + + + + + +SVC Functions +CMSIS-RTOS RTX: SVC Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    SVC Functions
    +
    +
    +

    Supervisor Calls (SVC) are exceptions targeted at software and operating systems for generating system function calls. They are sometimes called software interrupts. For example, instead of allowing user programs to directly access hardware, an operating system may provide access to hardware through an SVC. So when a user program wants to use certain hardware, it generates the SVC exception using SVC instructions, and then the software exception handler in the operating system is executed and provides the requested service to the user application. In this way, access to hardware is under the control of the OS, which can provide a more robust system by preventing the user applications from directly accessing the hardware.

    +

    SVC can also make software more portable because the user application does not need to know the programming details of the underlying hardware. The user program will only need to know the application programming interface (API) function ID and parameters; the actual hardware-level programming is handled by device drivers.

    +

    SVCs run in Privileged Handler mode of the Cortex-M core. SVC functions accept arguments and can return values. The functions are used in the same way as other functions; however, differences are hidden to the user. The ARMCC handles the differences and generates code instructions to call SVC functions. SVC functions are called by executing the SVC instruction. When executing SVC instructions, the controller changes to the Privileged Handler Mode.

    +

    Interrupts are not disabled in this mode. To protect SVC function from interrupts, you need to include the disable/enable intrinsic functions __disable_irq() and __enable_irq() in your code.

    +

    You can use SVC functions to access protected peripherals, for example, to configure NVIC and interrupts. This is required if you run tasks in unprivileged (protected) mode and you need to change interrupts from the task.

    +

    To implement SVC functions in your CMSIS-RTOS RTX kernel project, you need to:

    +
      +
    1. Copy the file SVC_Table.s to your project folder and include it into your project. This file is available as a source code template.
    2. +
    3. Declare a function with a __svc(x) attribute. Use the first SVC number, starting from 1, that is free.
      void __svc(1) inc_5bit (U32 *cp);
      +
    4. +
    5. Write a function implementation and convert the function name into a __SVC_x function name. Later, this name is referenced by the linker from the SVC_Table.s module. You also need to disable/enable interrupts.
      void __SVC_1 (U32 *cp) {
      +
      // A protected function to increment a 5-bit counter.
      +
      __disable_irq();
      +
      *cp = (*cp + 1) & 0x1F;
      +
      __enable_irq();
      +
      }
      +
    6. +
    7. Add the function __SVC_x to the SVC function table in the SVC_Table.s module. First import it from other modules:
      ; Import user SVC functions here.
      +
      IMPORT __SVC_1
      +
      Then, add a reference to it into the table:
      ; Insert user SVC functions here. SVC 0 used by RTL Kernel.
      +
      DCD __SVC_1 ; user SVC function
      +
    8. +
    9. Your SVC function should now look like this:
      void __svc(1) inc_5bit (U32 *cp);
      +
      void __SVC_1 (U32 *cp) {
      +
      // A protected function to increment a 5-bit counter.
      +
      __disable_irq();
      +
      *cp = (*cp + 1) & 0x1F;
      +
      __enable_irq();
      +
      }
      +
    10. +
    +
    Note
      +
    • SVC function 0 is reserved for the CMSIS-RTOS RTX kernel.
    • +
    • Do not leave gaps when numbering SVC functions. They must occupy a continuous range of numbers starting from 1.
    • +
    • SVC functions can still be interrupted.
    • +
    • CMSIS-RTOS RTX must not be called before the main() function.
    • +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_system_config.html b/CMSIS/Documentation/RTX/html/_system_config.html new file mode 100644 index 0000000..d10098e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_system_config.html @@ -0,0 +1,187 @@ + + + + + +System Configuration +CMSIS-RTOS RTX: System Configuration + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    System Configuration
    +
    +
    +

    The CMSIS-RTOS RTX provides system-wide settings for:

    + +

    +Settings for Round-Robin Thread Switching

    +

    CMSIS-RTOS RTX may be configured to use Round-Robin Multitasking thread switching. Round-Robin allows quasi-parallel execution of several threads. Threads are not really executed concurrently but are time-sliced where the available CPU time is divided into time slices and CMSIS-RTOS RTX assigns a time slice to each thread. Because the time slice is typically short (only a few milliseconds) it appears as though threads execute simultaneously.

    +

    Threads execute for the duration of their time-slice (unless the thread's time slice is given up). Then, CMSIS-RTOS RTX switches to the next thread that is ready to run and has the same priority. If no other task with the same priority is ready to run, the current running task resumes it execution.

    +

    Round-Robin Multitasking is controlled with the #define OS_ROBIN. The time-slice period is configured (in RTX Timer ticks) with the #define OS_ROBINTOUT.

    +

    Code Example:

    +

    The following example shows a simple CMSIS-RTOS RTX program that uses Round-Robin Multitasking. The two threads in this program are counter loops. RTX starts executing job 1, which is the function named job1. This function creates another task called job2. After job1 executes for its time slice, RTX switches to job2. After job2 executes for its time slice, RTX switches back to job1. This process repeats indefinitely.

    +
    #include "cmsis_os.h" // CMSIS-RTOS header file
    +
    +
    int counter1;
    +
    int counter2;
    +
    +
    void job1 (void const *arg) {
    +
    while (1) { // loop forever
    +
    counter1++; // update the counter
    +
    }
    +
    }
    +
    +
    void job2 (void const *arg) {
    +
    while (1) { // loop forever
    +
    counter2++; // update the counter
    +
    }
    +
    }
    +
    + + +
    +
    int main (void) {
    +
    osKernelInitialize (); // setup kernel
    +
    osThreadCreate (osThread(job1), NULL); // create threads
    +
    osThreadCreate (osThread(job2), NULL);
    +
    osKernelStart (); // start kernel
    +
    }
    +
    Note
    Rather than waiting for a thread time slice to expire, use CMSIS-RTOS functions to signal to the RTX kernel that it can switch to another task. The function osThreadYield passes control to other threads without Round-Robin Multitasking.
    +

    +User Timer Management

    +

    CMSIS-RTOS RTX supports Timer Management which provides timer callback functions. The Timer Management is configured with the following #defines:

    + + + + + + + + + + + +
    Name #define Description
    User Timers OS_TIMERS Enables the Timer Management. When disabled, the osTimerThread is not created.
    Timer Thread Priority OS_TIMERPRIO Specifies the priority of the osTimerThread that executes the timer callback functions.
    Timer Thread stack size [bytes] OS_TIMERSTKSZ Specifies the stack size (in words) for the the osTimerThread.
    Timer Callback Queue size OS_TIMERCBQS Specifies the maximum number of concurrent timer callbacks.
    +
    Note
    Refer to CMSIS-RTOS RTX Threads for more information about the osTimerThread.
    +

    +ISR FIFO Queue size

    +

    ISR functions store requests to this buffer, when they are called from the interrupt handler. The default value for #define OS_FIFOSZ is 16.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_technical_data.html b/CMSIS/Documentation/RTX/html/_technical_data.html new file mode 100644 index 0000000..a4e4290 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_technical_data.html @@ -0,0 +1,211 @@ + + + + + +Technical Data +CMSIS-RTOS RTX: Technical Data + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Technical Data
    +
    +
    +

    This section lists the technical data of CMSIS-RTOS RTX.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Description

    Limitations

    +

    +
    Defined Tasks

    Unlimited

    +

    +
    Active Threads

    250 max

    +

    +
    Mailboxes

    Unlimited

    +

    +
    Semaphores

    Unlimited

    +

    +
    Mutexes

    Unlimited

    +

    +
    Signals

    16 per thread

    +

    +
    Timer Callbacks

    Unlimited

    +

    +
    Code Space

    < 5.0 Kbytes

    +

    +
    RAM Space for Kernel

    300 bytes + 128 bytes Main Stack

    +

    +
    RAM Space for a Thread

    StackSize + 52 bytes

    +

    +
    RAM Space for a Mailbox

    MaxMessages * 4 + 16 bytes

    +

    +
    RAM Space for a Semaphore

    8 bytes

    +

    +
    RAM Space for a Mutex

    12 bytes

    +

    +
    RAM Space for a User Timer

    24 bytes

    +

    +
    Hardware Requirements

    SysTick timer or other hardware timer

    +

    +
    Thread context switch time

    < 2.6 usec @ 72 MHz

    +

    +
    Interrupt lockout time Not disabled
    +
    Note
      +
    • Unlimited means that the RTX kernel does not impose any limitations on the number. However, the available system memory resources limit the number of items you can create.
    • +
    • RAM requirements depend on the number of concurrently running threads.
    • +
    • The code and RAM size is calculated for ARMCC Compiler when using the MicroLib runtime library.
    • +
    +
    +

    +osWait

    +

    The generic wait function osWait is currently not supported by CMSIS-RTOS RTX.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_theory.html b/CMSIS/Documentation/RTX/html/_theory.html new file mode 100644 index 0000000..f836145 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_theory.html @@ -0,0 +1,171 @@ + + + + + +Theory of Operation +CMSIS-RTOS RTX: Theory of Operation + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Theory of Operation
    +
    +
    +

    This section describes how CMSIS-RTOS RTX manages the resources of the target system. Many aspects of the CMSIS-RTOS RTX kernel can be configured. Information about configuration options is mentioned where applicable.

    +

    +RTX Kernel Timer Tick and Thread Management

    +

    By default, CMSIS-RTOS RTX uses the Cortex-M SysTick timer to generate periodic interrupts for the RTX kernel timer tick. CMSIS-RTOS provides Timer Management functions and several CMSIS-RTOS functions have a timeout parameter. This periodic RTX kernel timer tick interrupt is used to derive the required time interval. CMSIS-RTOS RTX also provides configuration options for a alternative timer and tick-less operation. Refer to RTX Kernel Tick Timer Configuration for more information.

    +

    To handle timeout and time delays for threads, the CMSIS-RTOS RTX thread management is controlled by the RTX kernel timer tick interrupt. The thread context switch itself is implemented in the HAL_CMx.x hardware abstraction layer source files. The thread context contains all CPU registers (R0 - R12), the return address (LR), the program counter (PC), and the processor status register (xPSR). For the Cortex-M4 FPU and Cortex-M7 FPU the floating point status and registers (S0 - S32, FPSCR) are also part of the thread context.

    +

    When a thread switch occurs:

    +
      +
    • the thread context of the current running thread is stored on the local stack of this thread.
    • +
    • the stack pointer is switched to the next running thread.
    • +
    • the thread context of this next running thread is restored and this thread starts to run.
    • +
    +
    Note
      +
    • For Cortex-M0, Cortex-M3, Cortex-M4, and Cortex-M7 the thread context requires 64 bytes on the local stack.
    • +
    • For Cortex-M4 FPU and Cortex-M7 FPU the thread context requires 200 bytes on the local stack. For devices with Cortex-M4 FPU and Cortex-M7 FPU the default stack space should be increased to a minimum of 300 bytes.
    • +
    +
    +

    Each thread is provided with an separate stack that holds the thread context and stack space for automatic variables and return addresses for function call nesting. The stack sizes of the RTX threads are flexible configurable as explained in the section Thread Configuration. RTX even offers a configurable checking for stack overflows. Refer to Stack Overflow Checking for more information.

    +

    +CMSIS-RTOS RTX Threads

    +

    At startup time, the CMSIS-RTOS RTX creates the following threads:

    +
      +
    • main : the 'main' function of the application code is started as thread with the osPriorityNormal.
    • +
    • os_idle_demon : this thread executes when no other thread is in RUNNING state. The code of that thread is provided in the RTX_Conf_CM.c file and is typically used to put the system into a power-saving mode.
    • +
    • osTimerThread : this thread executes the Timer Management callback functions. This thread can be disabled; refer to User Timer Management for configuration options.
    • +
    +

    +Priority Inversion on Resource Sharing

    +

    The CMSIS-RTOS RTX employs a priority-based preemptive scheduler which ensures that from all the threads that are in the READY state, the thread with the highest priority gets executed and becomes the RUNNING thread. Because threads share resources, events that are outside of the control of the RTX scheduler can prevent the highest priority thread from running when it should. If this happens, a critical deadline could be missed, causing the system to fail. Priority inversion is the term of a scenario in which the highest-priority ready task fails to run when it should.

    +

    Threads typically share resources to communicate and process data by using the CMSIS-RTOS Mutex Management. At any time, two or more threads share a resource, such as a memory buffer or a serial port, one of them may have a higher priority. It is expected that the higher-priority thread runs as soon as it is in the READY state. However, if the lower-priority thread is using a shared resource of a higher-priority thread, this higher-priority thread must wait until the lower-priority thread releases the shared resource.

    +

    To prevent priority inversions, the CMSIS-RTOS RTX implements a priority inheritance method for the Mutex Management. A lower-priority thread inherit the priority of any higher-priority thread that is waiting with osMutexWait on a shared resource. During the time the higher-priority thread is in WAITING state, the lower-priority thread runs at the same priority of a higher-priority pending thread. When the lower-priority thread stops to share a resource with osMutexRelease, the original priority is assigned to this thread again.

    +

    +Function calls from Interrupt Service Routines (ISR)

    +

    The following CMSIS-RTOS functions can be called from threads and Interrupt Service Routines (ISR):

    + +

    Functions that cannot be called from an ISR are verifying the interrupt status and return the status code osErrorISR in case that they are called from an ISR context.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_thread_config.html b/CMSIS/Documentation/RTX/html/_thread_config.html new file mode 100644 index 0000000..98311aa --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_thread_config.html @@ -0,0 +1,181 @@ + + + + + +Thread Configuration +CMSIS-RTOS RTX: Thread Configuration + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Thread Configuration
    +
    +
    +

    The CMSIS-RTOS RTX provides several parameters for the thread configuration.

    + +

    +Configuration of Thread count and Stack Space

    +

    osThreadDef defines a thread function. The parameter stacksz specifies thereby the stack requirements of this thread function. CMSIS-RTOS RTX defines two methods for defining the stack requirements:

    +
      +
    • when stacksz is 0, a fixed-size memory pool is used to for the thread stack. In this case OS_STKSIZE specifies the stack size for the thread function.
    • +
    • when stacksz is not 0, the thread stack is allocated from a user space. The size of this user space is specified with OS_PRIVSTKSIZE.
    • +
    + + + + + + + + + + + + + + + + + + + +
    Name #define Description
    Number of concurrent running user threads OS_TASKCNT Indicates the maximum number of threads that will run at the same time (including main).
    Default Thread stack size [bytes] OS_STKSIZE Specifies the default stack size (in words) for threads that are defined with osThreadDef stacksz = 0.
    Main Thread stack size [bytes] OS_MAINSTKSIZE Is the stack requirement (in words) for the main function that is started by default as an RTOS thread.
    Number of threads with user-provided stack size OS_PRIVCNT Indicates the number of threads that are defined with osThreadDef stacksz != 0 (excluding main). stacksz specifies the stack size requirement of that thread.
    Total stack size [bytes] for threads with user-provided stack size OS_PRIVSTKSIZE Is the combined stack requirement (in words) of all threads that are defined with with osThreadDef stacksz != 0 (excluding main).
    Stack overflow checking OS_STKCHECK If a stack overflow is detected at a thread switch, the function os_error with error code = 1 is called. By default, this function is implemented as endless loop and will practically stop code execution.
    Stack usage watermark OS_STKINIT Initializes the thread stack with a watermark pattern that can be used to detect stack overflows within each thread.
    Processor mode for thread execution OS_RUNPRIV Control the processor mode (privileged/unprivileged)
    +

    +Stack Overflow Checking

    +

    CMSIS-RTOS RTX implements a software stack overflow checking that traps stack overruns. Stack is used for return addresses and automatic variables and extensive usage or incorrect stack configuration may cause a stack overflow. Software stack overflow checking is controlled with the #define OS_STKCHECK.

    +

    If a stack overflow is detected, the function os_error with error code = 1 is called. By default, this function is implemented as endless loop and will practically stop code execution.

    +

    +Stack Usage Watermark

    +

    CMSIS-RTOS RTX initializes thread stack with watermark pattern (0xCC) when thread is created. This allows the debugger to determine maximum stack usage for each thread. It is typically used during development but removed from the final application. Stack usage watermark is controlled with the #define OS_STKINIT.

    +

    Enabling this option increases significantly the execution time of osThreadCreate (depends on thread stack size).

    +

    +Processor Mode for Thread Execution

    +

    CMSIS-RTOS RTX allows to execute threads in unprivileged or privileged processor mode. The processor mode is controlled with the #define OS_RUNPRIV.

    +

    In unprivileged processor mode, the software:

    +
      +
    • has limited access to the MSR and MRS instructions, and cannot use the CPS instruction.
    • +
    • cannot access the system timer, NVIC, or system control block.
    • +
    • might have restricted access to memory or peripherals.
    • +
    +

    In privileged processor mode the software can use all the instructions and has access to all resources.

    +
    Note
    It is recommended to use the privileged processor mode.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_timer_tick.html b/CMSIS/Documentation/RTX/html/_timer_tick.html new file mode 100644 index 0000000..a11bad8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_timer_tick.html @@ -0,0 +1,225 @@ + + + + + +RTX Kernel Tick Timer Configuration +CMSIS-RTOS RTX: RTX Kernel Tick Timer Configuration + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    RTX Kernel Tick Timer Configuration
    +
    +
    +

    The CMSIS-RTOS RTX functions provide delays in units of milliseconds that are derived from the RTX Timer Tick. It is therefore recommended to configure the RTX Timer Tick to generate a 1 millisecond interval. Configuring a longer RTX Timer Tick may reduce energy consumption, but has impacts on the granularity of the timeouts.

    + + + + + + + + + +
    Name #define Description
    Use Cortex-M SysTick timer as RTX Kernel Timer OS_SYSTICK Selects the Cortex-M SysTick timer as RTX kernel timer. In this case, the RTX kernel configures the SysTick timer clock source as processor clock. Therefore the value OS_CLOCK should be identical with the value of the CMSIS variable SystemCoreClock.
    RTOS Kernel Timer input clock frequency [Hz] OS_CLOCK Specifies the Cortex-M processor clock frequency in Hz. This value is used to calculate the RTX kernel timer reload value.
    RTX Timer tick interval value [us] OS_TICK Specifies the RTX Timer Tick interval in microseconds (us). This value is used to calculate timeout values. When the SysTick core timer is enabled the value is also used to configure the SysTick timer. It is recommended to configure the RTX Timer tick to 1000 us which results in a timeout granularity of 1 millisecond.
    +

    +Usage of an Alternate Timer as RTX Kernel Timer

    +

    With #define OS_SYSTICK 0 an alternative timer is selected as RTX kernel timer.

    +

    Four functions in the RTX_Conf_CM.c file need to be adapted for using an alternative hardware timer.

    +
      +
    • os_tick_init provides the initialization function for the alternative hardware timer.
    • +
    • os_tick_val returns the current value of the alternative hardware timer.
    • +
    • os_tick_ovf returns the overflow flag of the alternative hardware timer.
    • +
    • os_tick_irqack is an interrupt acknowledge function that is called to confirm the alternative hardware timer interrupt.
    • +
    • OS_Tick_Handler needs to be called as the hardware timer interrupt function; the startup code should be modified to this function.
    • +
    +

    Configuration Code:

    +
    #if (OS_SYSTICK == 0) // Functions for alternative timer as RTX kernel timer
    +
    +
    /*--------------------------- os_tick_init ----------------------------------*/
    +
    +
    /// \brief Initializes an alternative hardware timer as RTX kernel timer
    +
    /// \return IRQ number of the alternative hardware timer
    +
    int os_tick_init (void) {
    +
    return (-1); /* Return IRQ number of timer (0..239) */
    +
    }
    +
    +
    /*--------------------------- os_tick_val -----------------------------------*/
    +
    +
    /// \brief Get alternative hardware timer's current value (0 .. OS_TRV)
    +
    /// \return Current value of the alternative hardware timer
    +
    uint32_t os_tick_val (void) {
    +
    return (0);
    +
    }
    +
    +
    /*--------------------------- os_tick_ovf -----------------------------------*/
    +
    +
    /// \brief Get alternative hardware timer's overflow flag
    +
    /// \return Overflow flag\n
    +
    /// - 1 : overflow
    +
    /// - 0 : no overflow
    +
    uint32_t os_tick_ovf (void) {
    +
    return (0);
    +
    }
    +
    +
    /*--------------------------- os_tick_irqack --------------------------------*/
    +
    +
    /// \brief Acknowledge alternative hardware timer interrupt
    +
    void os_tick_irqack (void) {
    +
    /* ... */
    +
    }
    +
    +
    #endif // (OS_SYSTICK == 0)
    +

    +

    OS_Tick_Handler

    +

    The function OS_Tick_Handler handles the RTX tick interval interrupts. It is used if you are using an alternate timer as the RTX tick timer.

    +

    The OS_Tick_Handler is an interrupt handler function, which runs the OS task scheduler. It is called by the Nested Vectored Interrupt Controller (NVIC) on the alternate timer's interrupt, and cannot be called as a regular C-function. It must be entered into the Interrupt Table in startup file. The default Cortex-M interrupt vector must be replaced by OS_Tick_Handler.

    +
    ; Vector Table Mapped to Address 0 at Reset
    +
    +
    AREA RESET, DATA, READONLY
    +
    EXPORT __Vectors
    +
    +
    IMPORT OS_Tick_Handler
    +
    +
    __Vectors DCD __initial_sp ; Top of Stack
    +
    DCD Reset_Handler ; Reset Handler
    +
    DCD NMI_Handler ; NMI Handler
    +
    DCD HardFault_Handler ; Hard Fault Handler
    +
    DCD MemManage_Handler ; MPU Fault Handler
    +
    DCD BusFault_Handler ; Bus Fault Handler
    +
    DCD UsageFault_Handler ; Usage Fault Handler
    +
    DCD 0 ; Reserved
    +
    DCD 0 ; Reserved
    +
    DCD 0 ; Reserved
    +
    DCD 0 ; Reserved
    +
    DCD SVC_Handler ; SVCall Handler
    +
    DCD DebugMon_Handler ; Debug Monitor Handler
    +
    DCD 0 ; Reserved
    +
    DCD PendSV_Handler ; PendSV Handler
    +
    DCD SysTick_Handler ; SysTick Handler
    +
    +
    ; External Interrupts
    +
    DCD WDT_IRQHandler ; 16: Watchdog Timer
    +
    DCD TIMER0_IRQHandler ; 17: Timer0
    +
    ...
    +
    DCD I2S_IRQHandler ; 43: I2S
    +
    DCD ENET_IRQHandler ; 44: Ethernet
    +
    DCD OS_Tick_Handler ; 45: Repetitive Interrupt Timer
    +
    DCD MCPWM_IRQHandler ; 46: Motor Control PWM
    +
    ...
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/_using.html b/CMSIS/Documentation/RTX/html/_using.html new file mode 100644 index 0000000..07e327d --- /dev/null +++ b/CMSIS/Documentation/RTX/html/_using.html @@ -0,0 +1,190 @@ + + + + + +Create a CMSIS-RTOS RTX Project +CMSIS-RTOS RTX: Create a CMSIS-RTOS RTX Project + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Create a CMSIS-RTOS RTX Project
    +
    +
    +

    Example projects using CMSIS-RTOS RTX are available for various development boards. To make use of these examples, you need to install a Device Family Pack in µVision and use Pack Installer to open a CMSIS-RTOS Blinky project. If you wish to start a CMSIS-RTOS RTX from scratch, follow these steps:

    +
      +
    • Create a new project and select a device.
    • +
    • In the Manage Run-Time Environment window that opens, select CMSIS::CORE and CMSIS::RTOS (API)::Keil RTX. If the Validation Output requires other components to be present, try to use the Resolve button:

      +
      +manage_rte_output.png +
      +
    • +
    +
      +
    • Click OK. In the Project window, you will see the files that have been automatically added to you project, such as RTX_Conf_CM.c and the system and startup files:

      +
      +project_window.png +
      +
    • +
    +
      +
    • You can add template files to the project by right-clicking on Source Group 1 and selecting Add New Item to 'Source Group 1'. In the new window, click on User Code Template. On the right-hand side you will see all available template files for CMSIS-RTOS RTX:

      +
      +add_item.png +
      +
    • +
    +
      +
    • Finally, configure RTX to the application's needs using the RTX_Conf_CM.c file.
    • +
    +

    +Define and Reference Object Definitions

    +

    With #define osObjectsExternal objects are defined as external symbols. This allows to create a consistent header file that is used throughout a project. If you are using the CMSIS-RTOS 'main' function user code template, such a header file (called osObjects.h) will be added automatically to the project:

    +

    Code Example

    +
    /*----------------------------------------------------------------------------
    +
    osObjects.h: CMSIS-RTOS global object definitions for an application
    +
    *----------------------------------------------------------------------------
    +
    +
    This header file defines global RTOS objects used throughout a project
    +
    +
    #define osObjectsPublic indicates that objects are defined; without that
    +
    definition the objects are defined as external symbols.
    +
    +
    *--------------------------------------------------------------------------*/
    +
    +
    #ifndef __osObjects
    +
    #define __osObjects
    +
    +
    #if (!defined (osObjectsPublic))
    +
    #define osObjectsExternal // define RTOS objects with extern attribute
    +
    #endif
    +
    +
    #include <cmsis_os.h> // CMSIS RTOS header file
    +
    +
    // global 'thread' functions -------------------------------------------------
    +
    extern void thread_sample (void const *argument); // function prototype
    +
    osThreadDef (thread_sample, osPriorityBelowNormal, 1, 100);
    +
    +
    // global 'memory pools' -----------------------------------------------------
    +
    osPoolDef(MyPool, 10, long);
    +
    +
    #endif // __osObjects
    +

    This header file defines all objects when included in a C/C++ source file. When #define osObjectsExternal is present before the header file, the objects are defined as external symbols. A single consistent header file can therefore be used throughout the whole project.

    +

    Code Example

    +
    #include "osObjects.h" // Definition of the CMSIS-RTOS objects
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/add_item.png b/CMSIS/Documentation/RTX/html/add_item.png new file mode 100644 index 0000000..20e6946 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/add_item.png differ diff --git a/CMSIS/Documentation/RTX/html/annotated.html b/CMSIS/Documentation/RTX/html/annotated.html new file mode 100644 index 0000000..b59e521 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/annotated.html @@ -0,0 +1,148 @@ + + + + + +Data Structures +CMSIS-RTOS RTX: Data Structures + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Data Structures
    +
    +
    +
    Here are the data structures with brief descriptions:
    + + + + + + + + + + +
    oCos_mailQ
    oCosEventEvent structure contains detailed information about an event
    oCosMailQDef_tDefinition structure for mail queue
    oCosMessageQDef_tDefinition structure for message queue
    oCosMutexDef_tMutex Definition structure contains setup information for a mutex
    oCosPoolDef_tDefinition structure for memory block allocation
    oCosSemaphoreDef_tSemaphore Definition structure contains setup information for a semaphore
    oCosThreadDef_tThread Definition structure contains startup information of a thread
    \CosTimerDef_tTimer Definition structure contains timer parameters
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/annotated.js b/CMSIS/Documentation/RTX/html/annotated.js new file mode 100644 index 0000000..c324e28 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/annotated.js @@ -0,0 +1,10 @@ +var annotated = +[ + [ "osMailQDef_t", "structos_mail_q_def__t.html", "structos_mail_q_def__t" ], + [ "osMessageQDef_t", "structos_message_q_def__t.html", "structos_message_q_def__t" ], + [ "osMutexDef_t", "structos_mutex_def__t.html", "structos_mutex_def__t" ], + [ "osPoolDef_t", "structos_pool_def__t.html", "structos_pool_def__t" ], + [ "osSemaphoreDef_t", "structos_semaphore_def__t.html", "structos_semaphore_def__t" ], + [ "osThreadDef_t", "structos_thread_def__t.html", "structos_thread_def__t" ], + [ "osTimerDef_t", "structos_timer_def__t.html", "structos_timer_def__t" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/bc_s.png b/CMSIS/Documentation/RTX/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/CMSIS/Documentation/RTX/html/bc_s.png differ diff --git a/CMSIS/Documentation/RTX/html/bdwn.png b/CMSIS/Documentation/RTX/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/bdwn.png differ diff --git a/CMSIS/Documentation/RTX/html/classes.html b/CMSIS/Documentation/RTX/html/classes.html new file mode 100644 index 0000000..5edc7da --- /dev/null +++ b/CMSIS/Documentation/RTX/html/classes.html @@ -0,0 +1,144 @@ + + + + + +Data Structure Index +CMSIS-RTOS RTX: Data Structure Index + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/RTX/html/closed.png b/CMSIS/Documentation/RTX/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/closed.png differ diff --git a/CMSIS/Documentation/RTX/html/cmsis.css b/CMSIS/Documentation/RTX/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/RTX/html/cmsis__os_8h.html b/CMSIS/Documentation/RTX/html/cmsis__os_8h.html new file mode 100644 index 0000000..667fb14 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/cmsis__os_8h.html @@ -0,0 +1,744 @@ + + + + + +cmsis_os.h File Reference +CMSIS-RTOS RTX: cmsis_os.h File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    cmsis_os.h File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Data Structures

    struct  osThreadDef_t
     Thread Definition structure contains startup information of a thread. More...
     
    struct  osTimerDef_t
     Timer Definition structure contains timer parameters. More...
     
    struct  osMutexDef_t
     Mutex Definition structure contains setup information for a mutex. More...
     
    struct  osSemaphoreDef_t
     Semaphore Definition structure contains setup information for a semaphore. More...
     
    struct  osPoolDef_t
     Definition structure for memory block allocation. More...
     
    struct  osMessageQDef_t
     Definition structure for message queue. More...
     
    struct  osMailQDef_t
     Definition structure for mail queue. More...
     
    struct  osEvent
     Event structure contains detailed information about an event. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define osCMSIS   0x10002U
     CMSIS-RTOS API version (main [31:16] .sub [15:0])
     
    #define osCMSIS_RTX   ((4<<16)|80)
     RTOS identification and version (main [31:16] .sub [15:0])
     
    #define osKernelSystemId   "RTX V4.80"
     RTOS identification string.
     
    #define osFeature_MainThread   1
     main can be thread
     
    #define osFeature_Pool   1
     Memory Pools available.
     
    #define osFeature_MailQ   1
     Mail Queues available.
     
    #define osFeature_MessageQ   1
     Message Queues available.
     
    #define osFeature_Signals   16
     16 Signal Flags available per thread
     
    #define osFeature_Semaphore   65535
     Maximum count for osSemaphoreCreate function.
     
    #define osFeature_Wait   0
     osWait not available
     
    #define osFeature_SysTick   1
     osKernelSysTick functions available
     
    #define os_InRegs
     
    #define osWaitForever   0xFFFFFFFFU
     Timeout value.
     
    #define osKernelSysTickFrequency   os_tickfreq
     The RTOS kernel system timer frequency in Hz.
     
    #define osKernelSysTickMicroSec(microsec)   ((microsec * os_tickus_i) + ((microsec * os_tickus_f) >> 16))
     Convert a microseconds value to a RTOS kernel system timer value.
     
    #define osThreadDef(name, priority, instances, stacksz)
     Create a Thread Definition with function, priority, and stack requirements.
     
    #define osThread(name)   &os_thread_def_##name
     Access a Thread definition.
     
    #define osTimerDef(name, function)
     Define a Timer object.
     
    #define osTimer(name)   &os_timer_def_##name
     Access a Timer definition.
     
    #define osMutexDef(name)
     Define a Mutex.
     
    #define osMutex(name)   &os_mutex_def_##name
     Access a Mutex definition.
     
    #define osSemaphoreDef(name)
     Define a Semaphore object.
     
    #define osSemaphore(name)   &os_semaphore_def_##name
     Access a Semaphore definition.
     
    #define osPoolDef(name, no, type)
     Define a Memory Pool.
     
    #define osPool(name)   &os_pool_def_##name
     Access a Memory Pool definition.
     
    #define osMessageQDef(name, queue_sz, type)
     Create a Message Queue Definition.
     
    #define osMessageQ(name)   &os_messageQ_def_##name
     Access a Message Queue Definition.
     
    #define osMailQDef(name, queue_sz, type)
     Create a Mail Queue Definition.
     
    #define osMailQ(name)   &os_mailQ_def_##name
     Access a Mail Queue Definition.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Typedefs

    typedef void(* os_pthread )(void const *argument)
     Entry point of a thread.
     
    typedef void(* os_ptimer )(void const *argument)
     Entry point of a timer call back function.
     
    typedef struct os_thread_cb * osThreadId
     Thread ID identifies the thread (pointer to a thread control block).
     
    typedef struct os_timer_cb * osTimerId
     Timer ID identifies the timer (pointer to a timer control block).
     
    typedef struct os_mutex_cb * osMutexId
     Mutex ID identifies the mutex (pointer to a mutex control block).
     
    typedef struct os_semaphore_cb * osSemaphoreId
     Semaphore ID identifies the semaphore (pointer to a semaphore control block).
     
    typedef struct os_pool_cb * osPoolId
     Pool ID identifies the memory pool (pointer to a memory pool control block).
     
    typedef struct os_messageQ_cb * osMessageQId
     Message ID identifies the message queue (pointer to a message queue control block).
     
    typedef struct os_mailQ_cb * osMailQId
     Mail ID identifies the mail queue (pointer to a mail queue control block).
     
    + + + + + + + + + + +

    +Enumerations

    enum  osPriority {
    +  osPriorityIdle = -3, +
    +  osPriorityLow = -2, +
    +  osPriorityBelowNormal = -1, +
    +  osPriorityNormal = 0, +
    +  osPriorityAboveNormal = +1, +
    +  osPriorityHigh = +2, +
    +  osPriorityRealtime = +3, +
    +  osPriorityError = 0x84 +
    + }
     Priority used for thread control. More...
     
    enum  osStatus {
    +  osOK = 0, +
    +  osEventSignal = 0x08, +
    +  osEventMessage = 0x10, +
    +  osEventMail = 0x20, +
    +  osEventTimeout = 0x40, +
    +  osErrorParameter = 0x80, +
    +  osErrorResource = 0x81, +
    +  osErrorTimeoutResource = 0xC1, +
    +  osErrorISR = 0x82, +
    +  osErrorISRRecursive = 0x83, +
    +  osErrorPriority = 0x84, +
    +  osErrorNoMemory = 0x85, +
    +  osErrorValue = 0x86, +
    +  osErrorOS = 0xFF, +
    +  os_status_reserved = 0x7FFFFFFF +
    + }
     Status code values returned by CMSIS-RTOS functions. More...
     
    enum  os_timer_type {
    +  osTimerOnce = 0, +
    +  osTimerPeriodic = 1 +
    + }
     Timer type value for the timer definition. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    osStatus osKernelInitialize (void)
     Initialize the RTOS Kernel for creating objects.
     
    osStatus osKernelStart (void)
     Start the RTOS Kernel.
     
    int32_t osKernelRunning (void)
     Check if the RTOS kernel is already started.
     
    uint32_t osKernelSysTick (void)
     Get the RTOS kernel system timer counter.
     
    osThreadId osThreadCreate (const osThreadDef_t *thread_def, void *argument)
     Create a thread and add it to Active Threads and set it to state READY.
     
    osThreadId osThreadGetId (void)
     Return the thread ID of the current running thread.
     
    osStatus osThreadTerminate (osThreadId thread_id)
     Terminate execution of a thread and remove it from Active Threads.
     
    osStatus osThreadYield (void)
     Pass control to next thread that is in state READY.
     
    osStatus osThreadSetPriority (osThreadId thread_id, osPriority priority)
     Change priority of an active thread.
     
    osPriority osThreadGetPriority (osThreadId thread_id)
     Get current priority of an active thread.
     
    osStatus osDelay (uint32_t millisec)
     Wait for Timeout (Time Delay).
     
    osTimerId osTimerCreate (const osTimerDef_t *timer_def, os_timer_type type, void *argument)
     Create a timer.
     
    osStatus osTimerStart (osTimerId timer_id, uint32_t millisec)
     Start or restart a timer.
     
    osStatus osTimerStop (osTimerId timer_id)
     Stop the timer.
     
    osStatus osTimerDelete (osTimerId timer_id)
     Delete a timer that was created by osTimerCreate.
     
    int32_t osSignalSet (osThreadId thread_id, int32_t signals)
     Set the specified Signal Flags of an active thread.
     
    int32_t osSignalClear (osThreadId thread_id, int32_t signals)
     Clear the specified Signal Flags of an active thread.
     
    os_InRegs osEvent osSignalWait (int32_t signals, uint32_t millisec)
     Wait for one or more Signal Flags to become signaled for the current RUNNING thread.
     
    osMutexId osMutexCreate (const osMutexDef_t *mutex_def)
     Create and Initialize a Mutex object.
     
    osStatus osMutexWait (osMutexId mutex_id, uint32_t millisec)
     Wait until a Mutex becomes available.
     
    osStatus osMutexRelease (osMutexId mutex_id)
     Release a Mutex that was obtained by osMutexWait.
     
    osStatus osMutexDelete (osMutexId mutex_id)
     Delete a Mutex that was created by osMutexCreate.
     
    osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_t *semaphore_def, int32_t count)
     Create and Initialize a Semaphore object used for managing resources.
     
    int32_t osSemaphoreWait (osSemaphoreId semaphore_id, uint32_t millisec)
     Wait until a Semaphore token becomes available.
     
    osStatus osSemaphoreRelease (osSemaphoreId semaphore_id)
     Release a Semaphore token.
     
    osStatus osSemaphoreDelete (osSemaphoreId semaphore_id)
     Delete a Semaphore that was created by osSemaphoreCreate.
     
    osPoolId osPoolCreate (const osPoolDef_t *pool_def)
     Create and Initialize a memory pool.
     
    void * osPoolAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool.
     
    void * osPoolCAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool and set memory block to zero.
     
    osStatus osPoolFree (osPoolId pool_id, void *block)
     Return an allocated memory block back to a specific memory pool.
     
    osMessageQId osMessageCreate (const osMessageQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize a Message Queue.
     
    osStatus osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t millisec)
     Put a Message to a Queue.
     
    os_InRegs osEvent osMessageGet (osMessageQId queue_id, uint32_t millisec)
     Get a Message or Wait for a Message from a Queue.
     
    osMailQId osMailCreate (const osMailQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize mail queue.
     
    void * osMailAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail.
     
    void * osMailCAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail and set memory block to zero.
     
    osStatus osMailPut (osMailQId queue_id, void *mail)
     Put a mail to a queue.
     
    os_InRegs osEvent osMailGet (osMailQId queue_id, uint32_t millisec)
     Get a mail from a queue.
     
    osStatus osMailFree (osMailQId queue_id, void *mail)
     Free a memory block from a mail.
     
    uint32_t os_suspend (void)
     Suspend the RTX task scheduler.
     
    void os_resume (uint32_t sleep_time)
     Resume the RTX task scheduler.
     
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define os_InRegs
    +
    + +
    +
    + +
    +
    + + + + +
    #define osFeature_Wait   0
    +
    + +
    +
    + +
    +
    + + + + +
    #define osWaitForever   0xFFFFFFFFU
    +
    +

    wait forever timeout value

    + +
    +
    +

    Typedef Documentation

    + +
    +
    + + + + +
    typedef void(* os_pthread)(void const *argument)
    +
    + +
    +
    + +
    +
    + + + + +
    typedef void(* os_ptimer)(void const *argument)
    +
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_mailQ_cb* osMailQId
    +
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_messageQ_cb* osMessageQId
    +
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_mutex_cb* osMutexId
    +
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_pool_cb* osPoolId
    +
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_semaphore_cb* osSemaphoreId
    +
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_thread_cb* osThreadId
    +
    + +
    +
    + +
    +
    + + + + +
    typedef struct os_timer_cb* osTimerId
    +
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum os_timer_type
    +
    +
    Enumerator:
    + + +
    osTimerOnce  +

    one-shot timer

    +
    osTimerPeriodic  +

    repeating timer

    +
    +
    +
    + +
    +
    + +
    +
    + + + + +
    enum osPriority
    +
    +
    Enumerator:
    + + + + + + + + +
    osPriorityIdle  +

    priority: idle (lowest)

    +
    osPriorityLow  +

    priority: low

    +
    osPriorityBelowNormal  +

    priority: below normal

    +
    osPriorityNormal  +

    priority: normal (default)

    +
    osPriorityAboveNormal  +

    priority: above normal

    +
    osPriorityHigh  +

    priority: high

    +
    osPriorityRealtime  +

    priority: realtime (highest)

    +
    osPriorityError  +

    system cannot determine priority or thread has illegal priority

    +
    +
    +
    + +
    +
    + +
    +
    + + + + +
    enum osStatus
    +
    +
    Enumerator:
    + + + + + + + + + + + + + + + +
    osOK  +

    function completed; no error or event occurred.

    +
    osEventSignal  +

    function completed; signal event occurred.

    +
    osEventMessage  +

    function completed; message event occurred.

    +
    osEventMail  +

    function completed; mail event occurred.

    +
    osEventTimeout  +

    function completed; timeout occurred.

    +
    osErrorParameter  +

    parameter error: a mandatory parameter was missing or specified an incorrect object.

    +
    osErrorResource  +

    resource not available: a specified resource was not available.

    +
    osErrorTimeoutResource  +

    resource not available within given time: a specified resource was not available within the timeout period.

    +
    osErrorISR  +

    not allowed in ISR context: the function cannot be called from interrupt service routines.

    +
    osErrorISRRecursive  +

    function called multiple times from ISR with same object.

    +
    osErrorPriority  +

    system cannot determine priority or thread has illegal priority.

    +
    osErrorNoMemory  +

    system is out of memory: it was impossible to allocate or reserve memory for the operation.

    +
    osErrorValue  +

    value of a parameter is out of range.

    +
    osErrorOS  +

    unspecified RTOS error: run-time error but no other error message fits.

    +
    os_status_reserved  +

    prevent from enum down-size compiler optimization.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/cmsis__os__api_8txt.html b/CMSIS/Documentation/RTX/html/cmsis__os__api_8txt.html new file mode 100644 index 0000000..82772cd --- /dev/null +++ b/CMSIS/Documentation/RTX/html/cmsis__os__api_8txt.html @@ -0,0 +1,194 @@ + + + + + +cmsis_os_api.txt File Reference +CMSIS-RTOS RTX: cmsis_os_api.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    cmsis_os_api.txt File Reference
    +
    +
    + + + + + + + + +

    +Enumerations

    enum  osPriority {
    +  osPriorityIdle = -3, +
    +  osPriorityLow = -2, +
    +  osPriorityBelowNormal = -1, +
    +  osPriorityNormal = 0, +
    +  osPriorityAboveNormal = +1, +
    +  osPriorityHigh = +2, +
    +  osPriorityRealtime = +3, +
    +  osPriorityError = 0x84 +
    + }
     
    enum  os_timer_type {
    +  osTimerOnce = 0, +
    +  osTimerPeriodic = 1 +
    + }
     
    enum  osStatus {
    +  osOK = 0, +
    +  osEventSignal = 0x08, +
    +  osEventMessage = 0x10, +
    +  osEventMail = 0x20, +
    +  osEventTimeout = 0x40, +
    +  osErrorParameter = 0x80, +
    +  osErrorResource = 0x81, +
    +  osErrorTimeoutResource = 0xC1, +
    +  osErrorISR = 0x82, +
    +  osErrorISRRecursive = 0x83, +
    +  osErrorPriority = 0x84, +
    +  osErrorNoMemory = 0x85, +
    +  osErrorValue = 0x86, +
    +  osErrorOS = 0xFF, +
    +  os_status_reserved = 0x7FFFFFFF +
    + }
     
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/config_wizard.png b/CMSIS/Documentation/RTX/html/config_wizard.png new file mode 100644 index 0000000..d285942 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/config_wizard.png differ diff --git a/CMSIS/Documentation/RTX/html/doxygen.png b/CMSIS/Documentation/RTX/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/doxygen.png differ diff --git a/CMSIS/Documentation/RTX/html/dynsections.js b/CMSIS/Documentation/RTX/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/RTX/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +File List +CMSIS-RTOS RTX: File List + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    File List
    +
    +
    +
    Here is a list of all files with brief descriptions:
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/ftv2blank.png b/CMSIS/Documentation/RTX/html/ftv2blank.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2blank.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2cl.png b/CMSIS/Documentation/RTX/html/ftv2cl.png new file mode 100644 index 0000000..132f657 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2cl.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2doc.png b/CMSIS/Documentation/RTX/html/ftv2doc.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2doc.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2folderclosed.png b/CMSIS/Documentation/RTX/html/ftv2folderclosed.png new file mode 100644 index 0000000..bb8ab35 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2folderclosed.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2folderopen.png b/CMSIS/Documentation/RTX/html/ftv2folderopen.png new file mode 100644 index 0000000..d6c7f67 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2folderopen.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2lastnode.png b/CMSIS/Documentation/RTX/html/ftv2lastnode.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2lastnode.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2link.png b/CMSIS/Documentation/RTX/html/ftv2link.png new file mode 100644 index 0000000..17edabf Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2link.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2mlastnode.png b/CMSIS/Documentation/RTX/html/ftv2mlastnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2mlastnode.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2mnode.png b/CMSIS/Documentation/RTX/html/ftv2mnode.png new file mode 100644 index 0000000..0b63f6d Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2mnode.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2mo.png b/CMSIS/Documentation/RTX/html/ftv2mo.png new file mode 100644 index 0000000..4bfb80f Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2mo.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2node.png b/CMSIS/Documentation/RTX/html/ftv2node.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2node.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2ns.png b/CMSIS/Documentation/RTX/html/ftv2ns.png new file mode 100644 index 0000000..72e3d71 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2ns.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2plastnode.png b/CMSIS/Documentation/RTX/html/ftv2plastnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2plastnode.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2pnode.png b/CMSIS/Documentation/RTX/html/ftv2pnode.png new file mode 100644 index 0000000..c6ee22f Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2pnode.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2splitbar.png b/CMSIS/Documentation/RTX/html/ftv2splitbar.png new file mode 100644 index 0000000..fe895f2 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2splitbar.png differ diff --git a/CMSIS/Documentation/RTX/html/ftv2vertline.png b/CMSIS/Documentation/RTX/html/ftv2vertline.png new file mode 100644 index 0000000..63c605b Binary files /dev/null and b/CMSIS/Documentation/RTX/html/ftv2vertline.png differ diff --git a/CMSIS/Documentation/RTX/html/functions.html b/CMSIS/Documentation/RTX/html/functions.html new file mode 100644 index 0000000..4283600 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/functions.html @@ -0,0 +1,203 @@ + + + + + +Data Fields +CMSIS-RTOS RTX: Data Fields + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all struct and union fields with links to the structures/unions they belong to:
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/functions_vars.html b/CMSIS/Documentation/RTX/html/functions_vars.html new file mode 100644 index 0000000..da010ba --- /dev/null +++ b/CMSIS/Documentation/RTX/html/functions_vars.html @@ -0,0 +1,203 @@ + + + + + +Data Fields - Variables +CMSIS-RTOS RTX: Data Fields - Variables + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/globals.html b/CMSIS/Documentation/RTX/html/globals.html new file mode 100644 index 0000000..8d98126 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/globals.html @@ -0,0 +1,562 @@ + + + + + +Globals +CMSIS-RTOS RTX: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
    + +

    - o -

    + + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/globals_defs.html b/CMSIS/Documentation/RTX/html/globals_defs.html new file mode 100644 index 0000000..5868a9e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/globals_defs.html @@ -0,0 +1,299 @@ + + + + + +Globals +CMSIS-RTOS RTX: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - o -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/globals_enum.html b/CMSIS/Documentation/RTX/html/globals_enum.html new file mode 100644 index 0000000..4878e9c --- /dev/null +++ b/CMSIS/Documentation/RTX/html/globals_enum.html @@ -0,0 +1,148 @@ + + + + + +Globals +CMSIS-RTOS RTX: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/RTX/html/globals_eval.html b/CMSIS/Documentation/RTX/html/globals_eval.html new file mode 100644 index 0000000..a2324d3 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/globals_eval.html @@ -0,0 +1,211 @@ + + + + + +Globals +CMSIS-RTOS RTX: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/globals_func.html b/CMSIS/Documentation/RTX/html/globals_func.html new file mode 100644 index 0000000..5806872 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/globals_func.html @@ -0,0 +1,292 @@ + + + + + +Globals +CMSIS-RTOS RTX: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +  + +

    - o -

    + + +

    - s -

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/globals_type.html b/CMSIS/Documentation/RTX/html/globals_type.html new file mode 100644 index 0000000..e47f345 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/globals_type.html @@ -0,0 +1,163 @@ + + + + + +Globals +CMSIS-RTOS RTX: Globals + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.html new file mode 100644 index 0000000..8f646ce --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.html @@ -0,0 +1,178 @@ + + + + + +CMSIS-RTOS API (RTX) +CMSIS-RTOS RTX: CMSIS-RTOS API (RTX) + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    CMSIS-RTOS API (RTX)
    +
    +
    + +

    This section describes the CMSIS-RTOS API as implemented by RTX. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Content

     Kernel Information and Control
     Provide version/system information and start the RTOS Kernel.
     
     Thread Management
     Define, create, and control thread functions.
     
     Generic Wait Function
     Wait for a time period or unspecified events.
     
     Timer Management
     Create and control timer and timer callback functions.
     
     Signal Management
     Control or wait for signal flags.
     
     Mutex Management
     Synchronize thread execution with a Mutex.
     
     Semaphore Management
     Control access to shared resources.
     
     Memory Pool Management
     Define and manage fixed-size memory pools.
     
     Message Queue Management
     Control, send, receive, or wait for messages.
     
     Mail Queue Management
     Control, send, receive, or wait for mail.
     
     RTX Global Functions
     Global functions that are specific for CMSIS-RTOS RTX.
     
     Generic Data Types and Definitions
     Data Type Definitions used by the CMSIS-RTOS API functions.
     
     Status and Error Codes
     Status and Error Codes returned by CMSIS-RTOS API functions.
     
    +

    Description

    +

    RTX implements the generic CMSIS-RTOS API (except for osWait).

    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.js new file mode 100644 index 0000000..73f73ca --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s.js @@ -0,0 +1,16 @@ +var group___c_m_s_i_s___r_t_o_s = +[ + [ "Kernel Information and Control", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl" ], + [ "Thread Management", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html", "group___c_m_s_i_s___r_t_o_s___thread_mgmt" ], + [ "Generic Wait Function", "group___c_m_s_i_s___r_t_o_s___wait.html", "group___c_m_s_i_s___r_t_o_s___wait" ], + [ "Timer Management", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html", "group___c_m_s_i_s___r_t_o_s___timer_mgmt" ], + [ "Signal Management", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html", "group___c_m_s_i_s___r_t_o_s___signal_mgmt" ], + [ "Mutex Management", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt" ], + [ "Semaphore Management", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt" ], + [ "Memory Pool Management", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html", "group___c_m_s_i_s___r_t_o_s___pool_mgmt" ], + [ "Message Queue Management", "group___c_m_s_i_s___r_t_o_s___message.html", "group___c_m_s_i_s___r_t_o_s___message" ], + [ "Mail Queue Management", "group___c_m_s_i_s___r_t_o_s___mail.html", "group___c_m_s_i_s___r_t_o_s___mail" ], + [ "RTX Global Functions", "group___r_t_x___global___functions.html", "group___r_t_x___global___functions" ], + [ "Generic Data Types and Definitions", "group___c_m_s_i_s___r_t_o_s___definitions.html", "group___c_m_s_i_s___r_t_o_s___definitions" ], + [ "Status and Error Codes", "group___c_m_s_i_s___r_t_o_s___status.html", "group___c_m_s_i_s___r_t_o_s___status" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.html new file mode 100644 index 0000000..f8ef53f --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.html @@ -0,0 +1,297 @@ + + + + + +Generic Data Types and Definitions +CMSIS-RTOS RTX: Generic Data Types and Definitions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Generic Data Types and Definitions
    +
    +
    + +

    Data Type Definitions used by the CMSIS-RTOS API functions. +More...

    + + + + + + + +

    +Data Structures

    struct  osEvent
     Event structure contains detailed information about an event. More...
     
    struct  os_mailQ
     
    +

    Description

    +

    The Data Type section lists all data types that are used to exchange information with CMSIS-RTOS functions.

    +

    Data Structure Documentation

    + +
    +
    + + + + +
    struct osEvent
    +
    +

    The osEvent structure describes the events returned by CMSIS-RTOS functions.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Fields

    osStatus status
     status code: event or error information
     
    union {
       uint32_t   v
     message as 32-bit value
     
       void *   p
     message or mail as void pointer
     
       int32_t   signals
     signal flags
     
    value
     event value
     
    union {
       osMailQId   mail_id
     mail id obtained by osMailCreate
     
       osMessageQId   message_id
     message id obtained by osMessageCreate
     
    def
     event definition
     
    +

    Field Documentation

    + +
    +
    + + + + +
    union { ... } def
    +
    + +
    +
    + +
    +
    + + + + +
    osMailQId mail_id
    +
    + +
    +
    + +
    +
    + + + + +
    osMessageQId message_id
    +
    + +
    +
    + +
    +
    + + + + +
    void* p
    +
    + +
    +
    + +
    +
    + + + + +
    int32_t signals
    +
    + +
    +
    + +
    +
    + + + + +
    osStatus status
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t v
    +
    + +
    +
    + +
    +
    + + + + +
    union { ... } value
    +
    + +
    +
    + +
    +
    + +
    +
    + + + + +
    struct os_mailQ
    +
    +

    The osEvent structure describes the events returned by CMSIS-RTOS functions.

    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.js new file mode 100644 index 0000000..5eab500 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___definitions.js @@ -0,0 +1,14 @@ +var group___c_m_s_i_s___r_t_o_s___definitions = +[ + [ "osEvent", "group___c_m_s_i_s___r_t_o_s___definitions.html#structos_event", [ + [ "def", "group___c_m_s_i_s___r_t_o_s___definitions.html#a596b6d55c3321db19239256bbe403df6", null ], + [ "mail_id", "group___c_m_s_i_s___r_t_o_s___definitions.html#ac86175a4b1706bee596f3018322df26e", null ], + [ "message_id", "group___c_m_s_i_s___r_t_o_s___definitions.html#af394cbe21dde7377974e63af38cd87b0", null ], + [ "p", "group___c_m_s_i_s___r_t_o_s___definitions.html#a117104b82864d3b23ec174af6d392709", null ], + [ "signals", "group___c_m_s_i_s___r_t_o_s___definitions.html#ad0dda1bf7e74f1576261d493fba232b6", null ], + [ "status", "group___c_m_s_i_s___r_t_o_s___definitions.html#ad477a289f1f03ac45407b64268d707d3", null ], + [ "v", "group___c_m_s_i_s___r_t_o_s___definitions.html#a9e0a00edabf3b8a5dafff624fff7bbfc", null ], + [ "value", "group___c_m_s_i_s___r_t_o_s___definitions.html#a0b9f8fd3645f01d8cb09cae82add2d7f", null ] + ] ], + [ "os_mailQ", "group___c_m_s_i_s___r_t_o_s___definitions.html#structos__mail_q", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html new file mode 100644 index 0000000..31e3f13 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html @@ -0,0 +1,452 @@ + + + + + +Kernel Information and Control +CMSIS-RTOS RTX: Kernel Information and Control + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Kernel Information and Control
    +
    +
    + +

    Provide version/system information and start the RTOS Kernel. +More...

    + + + + + + + + + + + + + + + + + + + + + + + +

    +Macros

    #define osFeature_MainThread   1
     main can be thread
     
    #define osFeature_SysTick   1
     osKernelSysTick functions available
     
    #define osCMSIS   0x10002U
     CMSIS-RTOS API version (main [31:16] .sub [15:0])
     
    #define osCMSIS_RTX   ((4<<16)|80)
     RTOS identification and version (main [31:16] .sub [15:0])
     
    #define osKernelSystemId   "RTX V4.80"
     RTOS identification string.
     
    #define osKernelSysTickFrequency   os_tickfreq
     The RTOS kernel system timer frequency in Hz.
     
    #define osKernelSysTickMicroSec(microsec)   ((microsec * os_tickus_i) + ((microsec * os_tickus_f) >> 16))
     Convert a microseconds value to a RTOS kernel system timer value.
     
    + + + + + + + + + + + + + +

    +Functions

    osStatus osKernelInitialize (void)
     Initialize the RTOS Kernel for creating objects.
     
    osStatus osKernelStart (void)
     Start the RTOS Kernel.
     
    int32_t osKernelRunning (void)
     Check if the RTOS kernel is already started.
     
    uint32_t osKernelSysTick (void)
     Get the RTOS kernel system timer counter.
     
    +

    Description

    +

    The Kernel Information and Control function group allow to:

    +
      +
    • obtain information about the system and the underlying kernel.
    • +
    • obtain version information about the CMSIS RTOS API.
    • +
    • initialize of the RTOS kernel for creating objects.
    • +
    • start the RTOS kernel and thread switching.
    • +
    • check the execution status of the RTOS kernel.
    • +
    +

    The function main is a special thread function that may be started at system initialization. In this case it has the initial priority osPriorityNormal.

    +

    Example

    +
    void system_error (void) {
    +
    // fatal error: set system to a safe state
    +
    while (1);
    +
    }
    +
    +
    +
    int main (void) { // program execution starts here
    +
    if (osKernelInitialize () != osOK) { // initialize RTOS kernel
    +
    system_error (); // invoke system error function
    +
    }
    +
    +
    system_initialize (); // setup and initialize peripherals
    +
    osThreadCreate (osThread(job1)); // create threads
    + +
    if (osKernelStart () != osOK) { // start kernel with job2 execution
    +
    system_error (); // invoke system error function
    +
    }
    +
    }
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osCMSIS   0x10002U
    +
    +

    Version information of the CMSIS RTOS API whereby major version is in bits [31:16] and sub version in bits [15:0]. The value 0x10000 represents version 1.00.

    + +
    +
    + +
    +
    + + + + +
    #define osCMSIS_RTX   ((4<<16)|80)
    +
    +

    Identifies the CMSIS-RTOS RTX kernel and version number.

    + +
    +
    + +
    +
    + + + + +
    #define osFeature_MainThread   1
    +
    +

    CMSIS-RTOS RTX starts with 'main'. The RTOS kernel is in this case already started.

    + +
    +
    + +
    +
    + + + + +
    #define osFeature_SysTick   1
    +
    +

    CMSIS-RTOS RTX provides access to the RTOS kernel system timer with osKernelSysTick, osKernelSysTickFrequency, and osKernelSysTickMicroSec.

    + +
    +
    + +
    +
    + + + + +
    #define osKernelSystemId   "RTX V4.80"
    +
    +

    Defines the CMSIS-RTOS RTX Kernel and provides version information.

    + +
    +
    + +
    +
    + + + + +
    #define osKernelSysTickFrequency   os_tickfreq
    +
    +

    Specifies the frequency of the Kernel SysTick timer in Hz. The value is typically use to scale a time value and is for example used in osKernelSysTickMicroSec.

    +
    See Also
    osKernelSysTick
    +
    Note
    Reflects the system timer setting and is typically defined in a configuration file.
    + +
    +
    + +
    +
    + + + + + + + + +
    #define osKernelSysTickMicroSec( microsec)   ((microsec * os_tickus_i) + ((microsec * os_tickus_f) >> 16))
    +
    +

    Allows to scale a microsecond value to the frequency of the Kernel SysTick timer. This macro is typically used to check for short timeouts in polling loops.

    +
    See Also
    osKernelSysTick
    +
    Parameters
    + + +
    microsectime value in microseconds.
    +
    +
    +
    Returns
    time value normalized to the osKernelSysTickFrequency
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    osStatus osKernelInitialize (void )
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Initialize of the RTOS Kernel to allow peripheral setup and creation of other RTOS objects with the functions:

    + +

    CMSIS-RTOS RTX Kernel starts thread execution with the function main. In this case, the function osKernelInitialize stops thread switching. This allows to setup the system to a defined state before thread switching is resumed with osKernelStart.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    int main (void) {
    +
    if (!osKernelRunning ()) { // if kernel is not running, initialize the kernel
    +
    if (osKernelInitialize () != osOK) { // check osStatus for other possible valid values
    +
    // exit with an error message
    +
    }
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    int32_t osKernelRunning (void )
    +
    +
    Returns
    0 RTOS is not started, 1 RTOS is started.
    +

    Identifies if the RTOS kernel is started. For CMSIS-RTOS RTX, this allows to identify that the RTOS kernel is already running.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    int main (void) { // program execution starts here
    +
    if (osKernelRunning ()) {
    +
    : // main is already a thread function
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osKernelStart (void )
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Start the RTOS Kernel and begin thread switching. CMSIS-RTOS RTX starts thread execution with the function main. In this case, the function osKernelStart resumes thread switching. The main thread will continue executing after osKernelStart.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the RTOS kernel has been successfully started.
    • +
    • osErrorISR: osKernelStart cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    int main (void) {
    +
    if (osKernelInitialize () != osOK) { // check osStatus for other possible valid values
    +
    // exit with an error message
    +
    }
    +
    +
    if (!osKernelRunning ()) { // is the kernel running ?
    +
    if (osKernelStart () != osOK) { // start the kernel
    +
    // kernel could not be started
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    uint32_t osKernelSysTick (void )
    +
    +
    Returns
    RTOS kernel system timer as 32-bit value
    +

    Get the value of the Kernel SysTick timer for time comparison. The value is a rolling 32-bit counter that is typically composed of the kernel system interrupt timer value and an counter that counts these interrupts.

    +

    This function allows the implementation of timeout checks. These are for example required when checking for a busy status in a device or peripheral initialization routine.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void SetupDevice (void) {
    +
    uint32_t tick;
    +
    +
    tick = osKernelSysTick(); // get start value of the Kernel system tick
    +
    Device.Setup (); // initialize a device or peripheral
    +
    do { // poll device busy status for 100 microseconds
    +
    if (!Device.Busy) break; // check if device is correctly initialized
    +
    } while ((osKernelSysTick() - tick) < osKernelSysTickMicroSec(100));
    +
    if (Device.Busy) {
    +
    ; // in case device still busy, signal error
    +
    }
    +
    // start interacting with device
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js new file mode 100644 index 0000000..d73e5c6 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___kernel_ctrl.js @@ -0,0 +1,14 @@ +var group___c_m_s_i_s___r_t_o_s___kernel_ctrl = +[ + [ "osCMSIS", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga702196bacccbb978620c736b209387f1", null ], + [ "osCMSIS_RTX", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga4f74ed918c795e909dc1cea0040fd3b7", null ], + [ "osFeature_MainThread", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga22f7d235bc9f783933bd5a981fd79696", null ], + [ "osFeature_SysTick", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae554ec16c23c5b7d65affade2a351891", null ], + [ "osKernelSystemId", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga47cf03658f01cdffca688e9096b58289", null ], + [ "osKernelSysTickFrequency", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga9e0954d52722673e2031233a2ab99960", null ], + [ "osKernelSysTickMicroSec", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae12c190af42d7310d8006d64f4ed5a88", null ], + [ "osKernelInitialize", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga53d078a801022e202e8115c083ece68e", null ], + [ "osKernelRunning", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga3b571de44cd3094c643247a7397f86b5", null ], + [ "osKernelStart", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gaab668ffd2ea76bb0a77ab0ab385eaef2", null ], + [ "osKernelSysTick", "group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gad0262e4688e95d1e9038afd9bcc16001", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.html new file mode 100644 index 0000000..2aae8cb --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.html @@ -0,0 +1,586 @@ + + + + + +Mail Queue Management +CMSIS-RTOS RTX: Mail Queue Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Mail Queue Management
    +
    +
    + +

    Control, send, receive, or wait for mail. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_MailQ   1
     Mail Queues available.
     
    #define osMailQDef(name, queue_sz, type)
     Create a Mail Queue Definition.
     
    #define osMailQ(name)   &os_mailQ_def_##name
     Access a Mail Queue Definition.
     
    + + + + + + + + + + + + + + + + + + + +

    +Functions

    osMailQId osMailCreate (const osMailQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize mail queue.
     
    void * osMailAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail.
     
    void * osMailCAlloc (osMailQId queue_id, uint32_t millisec)
     Allocate a memory block from a mail and set memory block to zero.
     
    osStatus osMailPut (osMailQId queue_id, void *mail)
     Put a mail to a queue.
     
    os_InRegs osEvent osMailGet (osMailQId queue_id, uint32_t millisec)
     Get a mail from a queue.
     
    osStatus osMailFree (osMailQId queue_id, void *mail)
     Free a memory block from a mail.
     
    +

    Description

    +

    The Mail Queue Management function group allow to control, send, receive, or wait for mail. A mail is a memory block that is sent to a thread or interrupt service routine.

    +
    +MailQueue.png +
    +CMSIS-RTOS Mail Queue
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_MailQ   1
    +
    +

    CMSIS-RTOS RTX supports mail queues.

    + +
    +
    + +
    +
    + + + + + + + + +
    #define osMailQ( name)   &os_mailQ_def_##name
    +
    +

    Access to the mail queue definition for the function osMailCreate.

    +
    Parameters
    + + +
    namename of the queue
    +
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osMailQDef( name,
     queue_sz,
     type 
    )
    +
    +

    Define the attributes of a mail queue that can by the function osMailCreate using osMailQ.

    +
    Note
    The parameter thread registers the receiving thread for a mail and is needed for the general osWait function to deliver the mail.
    +
    Parameters
    + + + + +
    namename of the queue
    queue_szmaximum number of messages in queue
    typedata type of a single message element
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void * osMailAlloc (osMailQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]millisecTimout Value or 0 in case of no time-out
    +
    +
    +
    Returns
    pointer to memory block that can be filled with mail or NULL in case of error.
    +

    Allocate a memory block from the mail queue that is filled with the mail information.

    +

    The argument queue_id specifies a mail queue identifier that is obtain with osMailCreate.

    +

    The argument millisec specifies how long the system waits for a mail slot to become available. While the system waits the tread calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a mail slot can be allocated.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +

    A NULL pointer is returned when no memory slot can be obtained or queue specifies an illegal parameter.

    +
    Note
    Interrupt Service Routines can call this function.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    void * osMailCAlloc (osMailQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]millisecTimout Value or 0 in case of no time-out
    +
    +
    +
    Returns
    pointer to memory block that can be filled with mail or NULL in case of error.
    +

    Allocate a memory block from the mail queue that is filled with the mail information. The memory block returned is cleared.

    +

    The argument queue_id specifies a mail queue identifier that is obtain with osMailCreate.

    +

    The argument millisec specifies how long the system waits for a mail slot to become available. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a mail slot can be allocated.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +

    A NULL pointer is returned when no memory block can be obtained or queue specifies an illegal parameter.

    +
    Note
    Interrupt Service Routines can call this function.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osMailQId osMailCreate (const osMailQDef_tqueue_def,
    osThreadId thread_id 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_defreference to the mail queue definition obtain with osMailQ
    [in]thread_idthread ID (obtained by osThreadCreate or osThreadGetId) or NULL.
    +
    +
    +
    Returns
    mail queue ID for reference by other functions or NULL in case of error.
    +

    Initialize and create a mail queue.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    osThreadId tid_thread1; // ID for thread 1
    +
    osThreadId tid_thread2; // ID for thread 2
    +
    +
    typedef struct { // Mail object structure
    +
    float voltage; // AD result of measured voltage
    +
    float current; // AD result of measured current
    +
    int counter; // A counter value
    +
    } T_MEAS;
    +
    +
    osMailQDef(mail, 16, T_MEAS); // Define mail queue
    +
    osMailQId mail;
    +
    +
    void send_thread (void const *argument); // forward reference
    +
    void recv_thread (void const *argument);
    +
    +
    osThreadDef(send_thread, osPriorityNormal, 1, 0); // thread definitions
    +
    osThreadDef(recv_thread, osPriorityNormal, 1, 2000);
    +
    +
    //
    +
    // Thread 1: Send thread
    +
    //
    +
    void send_thread (void const *argument) {
    +
    T_MEAS *mptr;
    +
    +
    mptr = osMailAlloc(mail, osWaitForever); // Allocate memory
    +
    mptr->voltage = 223.72; // Set the mail content
    +
    mptr->current = 17.54;
    +
    mptr->counter = 120786;
    +
    osMailPut(mail, mptr); // Send Mail
    +
    osDelay(100);
    +
    +
    mptr = osMailAlloc(mail, osWaitForever); // Allocate memory
    +
    mptr->voltage = 227.23; // Prepare 2nd mail
    +
    mptr->current = 12.41;
    +
    mptr->counter = 170823;
    +
    osMailPut(mail, mptr); // Send Mail
    +
    osThreadYield(); // Cooperative multitasking
    +
    // We are done here, exit this thread
    +
    }
    +
    +
    //
    +
    // Thread 2: Receive thread
    +
    //
    +
    void recv_thread (void const *argument) {
    +
    T_MEAS *rptr;
    +
    osEvent evt;
    +
    +
    for (;;) {
    +
    evt = osMailGet(mail, osWaitForever); // wait for mail
    +
    if (evt.status == osEventMail) {
    +
    rptr = evt.value.p;
    +
    printf ("\nVoltage: %.2f V\n", rptr->voltage);
    +
    printf ("Current: %.2f A\n", rptr->current);
    +
    printf ("Number of cycles: %d\n", rptr->counter);
    +
    osMailFree(mail, rptr); // free memory allocated for mail
    +
    }
    +
    }
    +
    }
    +
    +
    void StartApplication (void) {
    +
    mail = osMailCreate(osMailQ(mail), NULL); // create mail queue
    +
    +
    tid_thread1 = osThreadCreate(osThread(send_thread), NULL);
    +
    tid_thread2 = osThreadCreate(osThread(recv_thread), NULL);
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osMailFree (osMailQId queue_id,
    void * mail 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]mailpointer to the memory block that was obtained with osMailGet.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Free the memory block specified by mail and return it to the mail queue.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mail block is released.
    • +
    • osErrorValue: mail block does not belong to the mail queue pool.
    • +
    • osErrorParameter: the value to the parameter queue_id is incorrect.
    • +
    +
    Note
    Interrupt Service Routines can call this function.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osEvent osMailGet (osMailQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]millisecTimout Value or 0 in case of no time-out
    +
    +
    +
    Returns
    event that contains mail information or error code.
    +

    Suspend the execution of the current RUNNING thread until a mail arrives. When a mail is already in the queue, the function returns instantly with the mail information.

    +

    The argument millisec specifies how long the system waits for a mail to arrive. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a mail arrives.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: no mail is available in the queue and no timeout was specified
    • +
    • osEventTimeout: no mail has arrived during the given timeout period.
    • +
    • osEventMail: mail received, value.p contains the pointer to mail content.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    +
    Note
    Interrupt Service Routines can call this function.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osMailPut (osMailQId queue_id,
    void * mail 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmail queue ID obtained with osMailCreate.
    [in]mailmemory block previously allocated with osMailAlloc or osMailCAlloc.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Put the memory block specified with mail into the mail queue specified by queue.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the message is put into the queue.
    • +
    • osErrorValue: mail was previously not allocated as memory slot.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    +
    Note
    Interrupt Service Routines can call this function.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.js new file mode 100644 index 0000000..72ce801 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mail.js @@ -0,0 +1,12 @@ +var group___c_m_s_i_s___r_t_o_s___mail = +[ + [ "osFeature_MailQ", "group___c_m_s_i_s___r_t_o_s___mail.html#gaceb2e0071ce160d153047f2eac1aca8e", null ], + [ "osMailQ", "group___c_m_s_i_s___r_t_o_s___mail.html#gad2deeb66d51ade54e63d8f87ff2ec9d2", null ], + [ "osMailQDef", "group___c_m_s_i_s___r_t_o_s___mail.html#ga58d712b16c0c6668059f509386d1e55b", null ], + [ "osMailAlloc", "group___c_m_s_i_s___r_t_o_s___mail.html#gadf5ce811bd6a56e617e902a1db6c2194", null ], + [ "osMailCAlloc", "group___c_m_s_i_s___r_t_o_s___mail.html#ga8fde74f6fe5b9e88f75cc5eb8f2124fd", null ], + [ "osMailCreate", "group___c_m_s_i_s___r_t_o_s___mail.html#gaa177e7fe5820dd70d8c9e46ded131174", null ], + [ "osMailFree", "group___c_m_s_i_s___r_t_o_s___mail.html#ga27c1060cf21393f96b4fd1ed1c0167cc", null ], + [ "osMailGet", "group___c_m_s_i_s___r_t_o_s___mail.html#gac6ad7e6e7d6c4a80e60da22c57a42ccd", null ], + [ "osMailPut", "group___c_m_s_i_s___r_t_o_s___mail.html#ga485ef6f81854ebda8ffbce4832181e02", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.html new file mode 100644 index 0000000..b7c6715 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.html @@ -0,0 +1,462 @@ + + + + + +Message Queue Management +CMSIS-RTOS RTX: Message Queue Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Message Queue Management
    +
    +
    + +

    Control, send, receive, or wait for messages. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_MessageQ   1
     Message Queues available.
     
    #define osMessageQDef(name, queue_sz, type)
     Create a Message Queue Definition.
     
    #define osMessageQ(name)   &os_messageQ_def_##name
     Access a Message Queue Definition.
     
    + + + + + + + + + + +

    +Functions

    osMessageQId osMessageCreate (const osMessageQDef_t *queue_def, osThreadId thread_id)
     Create and Initialize a Message Queue.
     
    osStatus osMessagePut (osMessageQId queue_id, uint32_t info, uint32_t millisec)
     Put a Message to a Queue.
     
    os_InRegs osEvent osMessageGet (osMessageQId queue_id, uint32_t millisec)
     Get a Message or Wait for a Message from a Queue.
     
    +

    Description

    +

    Message Queue Management functions allow to control, send, receive, or wait for messages. A message can be an integer or pointer value that is send to a thread or interrupt service routine.

    +
    +MessageQueue.png +
    +CMSIS-RTOS Message Queue
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_MessageQ   1
    +
    +

    CMSIS-RTOS RTX supports message queues.

    + +
    +
    + +
    +
    + + + + + + + + +
    #define osMessageQ( name)   &os_messageQ_def_##name
    +
    +

    Access to the message queue definition for the function osMessageCreate.

    +
    Parameters
    + + +
    namename of the queue
    +
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osMessageQDef( name,
     queue_sz,
     type 
    )
    +
    +

    Define the attributes of a message queue created by the function osMessageCreate using osMessageQ.

    +
    Note
    The parameter thread registers the receiving thread for a message and is needed for the general osWait function to deliver the message.
    +
    Parameters
    + + + + +
    namename of the queue.
    queue_szmaximum number of messages in the queue.
    typedata type of a single message element (for debugger).
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osMessageQId osMessageCreate (const osMessageQDef_tqueue_def,
    osThreadId thread_id 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_defqueue definition referenced with osMessageQ.
    [in]thread_idthread ID (obtained by osThreadCreate or osThreadGetId) or NULL.
    +
    +
    +
    Returns
    message queue ID for reference by other functions or NULL in case of error.
    +

    Create and initialize a message queue.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    osThreadId tid_thread1; // ID for thread 1
    +
    osThreadId tid_thread2; // for thread 2
    +
    +
    typedef struct { // Message object structure
    +
    float voltage; // AD result of measured voltage
    +
    float current; // AD result of measured current
    +
    int counter; // A counter value
    +
    } T_MEAS;
    +
    +
    osPoolDef(mpool, 16, T_MEAS); // Define memory pool
    +
    osPoolId mpool;
    +
    osMessageQDef(MsgBox, 16, T_MEAS); // Define message queue
    +
    osMessageQId MsgBox;
    +
    +
    void send_thread (void const *argument); // forward reference
    +
    void recv_thread (void const *argument); // forward reference
    +
    // Thread definitions
    +
    osThreadDef(send_thread, osPriorityNormal, 1, 0);
    +
    osThreadDef(recv_thread, osPriorityNormal, 1, 2000);
    +
    +
    //
    +
    // Thread 1: Send thread
    +
    //
    +
    void send_thread (void const *argument) {
    +
    T_MEAS *mptr;
    +
    +
    mptr = osPoolAlloc(mpool); // Allocate memory for the message
    +
    mptr->voltage = 223.72; // Set the message content
    +
    mptr->current = 17.54;
    +
    mptr->counter = 120786;
    +
    osMessagePut(MsgBox, (uint32_t)mptr, osWaitForever); // Send Message
    +
    osDelay(100);
    +
    +
    mptr = osPoolAlloc(mpool); // Allocate memory for the message
    +
    mptr->voltage = 227.23; // Prepare a 2nd message
    +
    mptr->current = 12.41;
    +
    mptr->counter = 170823;
    +
    osMessagePut(MsgBox, (uint32_t)mptr, osWaitForever); // Send Message
    +
    osThreadYield(); // Cooperative multitasking
    +
    // We are done here, exit this thread
    +
    }
    +
    +
    //
    +
    // Thread 2: Receive thread
    +
    //
    +
    void recv_thread (void const *argument) {
    +
    T_MEAS *rptr;
    +
    osEvent evt;
    +
    +
    for (;;) {
    +
    evt = osMessageGet(MsgBox, osWaitForever); // wait for message
    +
    if (evt.status == osEventMessage) {
    +
    rptr = evt.value.p;
    +
    printf ("\nVoltage: %.2f V\n", rptr->voltage);
    +
    printf ("Current: %.2f A\n", rptr->current);
    +
    printf ("Number of cycles: %d\n", rptr->counter);
    +
    osPoolFree(mpool, rptr); // free memory allocated for message
    +
    }
    +
    }
    +
    }
    +
    +
    void StartApplication (void) {
    +
    mpool = osPoolCreate(osPool(mpool)); // create memory pool
    +
    MsgBox = osMessageCreate(osMessageQ(MsgBox), NULL); // create msg queue
    +
    +
    tid_thread1 = osThreadCreate(osThread(send_thread), NULL);
    +
    tid_thread2 = osThreadCreate(osThread(recv_thread), NULL);
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osEvent osMessageGet (osMessageQId queue_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]queue_idmessage queue ID obtained with osMessageCreate.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    event information that includes status code.
    +

    Suspend the execution of the current RUNNING thread until a message arrives. When a message is already in the queue, the function returns instantly with the message information.

    +

    The argument millisec specifies how long the system waits for a message to become available. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout value can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a message arrives.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: no message is available in the queue and no timeout was specified.
    • +
    • osEventTimeout: no message has arrived during the given timeout period.
    • +
    • osEventMessage: message received, value.p contains the pointer to message.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    +
    Note
    Interrupt Service Routines can call this function.
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    osStatus osMessagePut (osMessageQId queue_id,
    uint32_t info,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + + +
    [in]queue_idmessage queue ID obtained with osMessageCreate.
    [in]infomessage information.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Put the message info in a message queue specified by queue_id.

    +

    When the message queue is full, the system retries for a specified time with millisec. While the system retries the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a message queue slot becomes available.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +
    Note
    The parameter millisec must be 0 for using this function in an ISR.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the message is put into the queue.
    • +
    • osErrorResource: no memory in the queue was available.
    • +
    • osErrorTimeoutResource: no memory in the queue was available during the given time limit.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    +
    Note
    Interrupt Service Routines can call this function.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.js new file mode 100644 index 0000000..38de1fa --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___message.js @@ -0,0 +1,9 @@ +var group___c_m_s_i_s___r_t_o_s___message = +[ + [ "osFeature_MessageQ", "group___c_m_s_i_s___r_t_o_s___message.html#ga479a6561f859e3d4818e25708593d203", null ], + [ "osMessageQ", "group___c_m_s_i_s___r_t_o_s___message.html#ga2d446a0b4bb90bf05d6f92eedeaabc97", null ], + [ "osMessageQDef", "group___c_m_s_i_s___r_t_o_s___message.html#gac9a6a6276c12609793e7701afcc82326", null ], + [ "osMessageCreate", "group___c_m_s_i_s___r_t_o_s___message.html#gaf3b9345cf426304d46565152bc26fb78", null ], + [ "osMessageGet", "group___c_m_s_i_s___r_t_o_s___message.html#ga6c6892b8f2296cca6becd57ca2d7e1ae", null ], + [ "osMessagePut", "group___c_m_s_i_s___r_t_o_s___message.html#gac0dcf462fc92de8ffaba6cc004514a6d", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html new file mode 100644 index 0000000..10d46e8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html @@ -0,0 +1,420 @@ + + + + + +Mutex Management +CMSIS-RTOS RTX: Mutex Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Mutex Management
    +
    +
    + +

    Synchronize thread execution with a Mutex. +More...

    + + + + + + + + +

    +Macros

    #define osMutexDef(name)
     Define a Mutex.
     
    #define osMutex(name)   &os_mutex_def_##name
     Access a Mutex definition.
     
    + + + + + + + + + + + + + +

    +Functions

    osMutexId osMutexCreate (const osMutexDef_t *mutex_def)
     Create and Initialize a Mutex object.
     
    osStatus osMutexWait (osMutexId mutex_id, uint32_t millisec)
     Wait until a Mutex becomes available.
     
    osStatus osMutexRelease (osMutexId mutex_id)
     Release a Mutex that was obtained by osMutexWait.
     
    osStatus osMutexDelete (osMutexId mutex_id)
     Delete a Mutex that was created by osMutexCreate.
     
    +

    Description

    +

    The Mutex Management function group is used to synchronize the execution of threads. This is for example used to protect access to a shared resource, for example a shared memory image.

    +
    Note
    Mutex Management functions cannot be called from interrupt service routines (ISR).
    +
    +Mutex.png +
    +CMSIS-RTOS Mutex
    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define osMutex( name)   &os_mutex_def_##name
    +
    +

    Access to mutex object for the functions osMutexCreate.

    +
    Parameters
    + + +
    namename of the mutex object.
    +
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define osMutexDef( name)
    +
    +

    Define a mutex object that is referenced by osMutex.

    +
    Parameters
    + + +
    namename of the mutex object.
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    osMutexId osMutexCreate (const osMutexDef_tmutex_def)
    +
    +
    Parameters
    + + +
    [in]mutex_defmutex definition referenced with osMutex.
    +
    +
    +
    Returns
    mutex ID for reference by other functions or NULL in case of error.
    +

    Create and initialize a Mutex object.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr); // Mutex name definition
    +
    +
    void CreateMutex (void) {
    +
    osMutexId mutex_id;
    +
    +
    mutex_id = osMutexCreate (osMutex (MutexIsr));
    +
    if (mutex_id != NULL) {
    +
    // Mutex object created
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osMutexDelete (osMutexId mutex_id)
    +
    +
    Parameters
    + + +
    [in]mutex_idmutex ID obtained by osMutexCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Delete a Mutex object. The function releases internal memory obtained for Mutex handling. After this call the mutex_id is no longer valid and cannot be used. The Mutex may be created again using the function osMutexCreate.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mutex object has been deleted.
    • +
    • osErrorISR: osMutexDelete cannot be called from interrupt service routines.
    • +
    • osErrorResource: all tokens have already been released.
    • +
    • osErrorParameter: the parameter mutex_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr); // Mutex name definition
    +
    osMutexId mutex_id; // Mutex id populated by the function CreateMutex()
    +
    osMutexId CreateMutex (void); // function prototype that creates the Mutex
    +
    +
    void DeleteMutex (osMutexId mutex_id) {
    +
    osStatus status;
    +
    +
    if (mutex_id != NULL) {
    +
    status = osMutexDelete(mutex_id);
    +
    if (status != osOK) {
    +
    // handle failure code
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osMutexRelease (osMutexId mutex_id)
    +
    +
    Parameters
    + + +
    [in]mutex_idmutex ID obtained by osMutexCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Release a Mutex that was obtained with osMutexWait. Other threads that currently wait for the same mutex will be now put into the state READY.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mutex has been correctly released.
    • +
    • osErrorResource: the mutex was not obtained before.
    • +
    • osErrorParameter: the parameter mutex_id is incorrect.
    • +
    • osErrorISR: osMutexRelease cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr); // Mutex name definition
    +
    osMutexId mutex_id; // Mutex id populated by the function CreateMutex()
    +
    osMutexId CreateMutex (void); // function prototype that creates the Mutex
    +
    +
    void ReleaseMutex (osMutexId mutex_id) {
    +
    osStatus status;
    +
    +
    if (mutex_id != NULL) {
    +
    status = osMutexRelease(mutex_id);
    +
    if (status != osOK) {
    +
    // handle failure code
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osMutexWait (osMutexId mutex_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]mutex_idmutex ID obtained by osMutexCreate.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Wait until a Mutex becomes available. If no other thread has obtained the Mutex, the function instantly returns and blocks the mutex object.

    +

    The argument millisec specifies how long the system waits for a mutex. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until the mutex becomes available.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the mutex has been obtain.
    • +
    • osErrorTimeoutResource: the mutex could not be obtained in the given time.
    • +
    • osErrorResource: the mutex could not be obtained when no timeout was specified.
    • +
    • osErrorParameter: the parameter mutex_id is incorrect.
    • +
    • osErrorISR: osMutexWait cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    osMutexDef (MutexIsr);
    +
    +
    void WaitMutex (void) {
    +
    osMutexId mutex_id;
    +
    osStatus status;
    +
    +
    mutex_id = osMutexCreate (osMutex (MutexIsr));
    +
    if (mutex_id != NULL) {
    +
    status = osMutexWait (mutex_id, 0);
    +
    if (status != osOK) {
    +
    // handle failure code
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js new file mode 100644 index 0000000..1587dca --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___mutex_mgmt.js @@ -0,0 +1,9 @@ +var group___c_m_s_i_s___r_t_o_s___mutex_mgmt = +[ + [ "osMutex", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga1122a86faa64b4a0880c76cf68d0c934", null ], + [ "osMutexDef", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga9b522438489d7c402c95332b58bc94f3", null ], + [ "osMutexCreate", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5c9de56e717016e39e788064e9a291cc", null ], + [ "osMutexDelete", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#gac27e24135185d51d18f3dabc20910219", null ], + [ "osMutexRelease", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga006e4744d741e8e132c3d5bbc295afe1", null ], + [ "osMutexWait", "group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5e1752b73f573ee015dbd9ef1edaba13", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html new file mode 100644 index 0000000..6b84b3e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.html @@ -0,0 +1,459 @@ + + + + + +Memory Pool Management +CMSIS-RTOS RTX: Memory Pool Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Memory Pool Management
    +
    +
    + +

    Define and manage fixed-size memory pools. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_Pool   1
     Memory Pools available.
     
    #define osPoolDef(name, no, type)
     Define a Memory Pool.
     
    #define osPool(name)   &os_pool_def_##name
     Access a Memory Pool definition.
     
    + + + + + + + + + + + + + +

    +Functions

    osPoolId osPoolCreate (const osPoolDef_t *pool_def)
     Create and Initialize a memory pool.
     
    void * osPoolAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool.
     
    void * osPoolCAlloc (osPoolId pool_id)
     Allocate a memory block from a memory pool and set memory block to zero.
     
    osStatus osPoolFree (osPoolId pool_id, void *block)
     Return an allocated memory block back to a specific memory pool.
     
    +

    Description

    +

    The Memory Pool Management function group is used to define and manage fixed-sized memory pools.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_Pool   1
    +
    +

    CMSIS-RTOS RTX supports fixed-size memory pools.

    + +
    +
    + +
    +
    + + + + + + + + +
    #define osPool( name)   &os_pool_def_##name
    +
    +

    Access a memory pool for the functions osPoolCreate.

    +
    Parameters
    + + +
    namename of the memory pool
    +
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osPoolDef( name,
     no,
     type 
    )
    +
    +

    Define a memory pool that is referenced by osPool.

    +
    Parameters
    + + + + +
    namename of the memory pool.
    nomaximum number of blocks (objects) in the memory pool.
    typedata type of a single block (object).
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void * osPoolAlloc (osPoolId pool_id)
    +
    +
    Parameters
    + + +
    [in]pool_idmemory pool ID obtain referenced with osPoolCreate.
    +
    +
    +
    Returns
    address of the allocated memory block or NULL in case of no memory available.
    +

    Allocate a memory block from the memory pool.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void AlocMemoryPoolBlock (void) {
    +
    osPoolId MemPool_Id;
    +
    MEM_BLOCK *addr;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    :
    +
    // allocate a memory block
    +
    addr = (MEM_BLOCK *)osPoolAlloc (MemPool_Id);
    +
    +
    if (addr != NULL) {
    +
    // memory block was allocated
    +
    :
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    void * osPoolCAlloc (osPoolId pool_id)
    +
    +
    Parameters
    + + +
    [in]pool_idmemory pool ID obtain referenced with osPoolCreate.
    +
    +
    +
    Returns
    address of the allocated memory block or NULL in case of no memory available.
    +

    Allocate a memory block from the memory pool. The block is initialized to zero.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void CAlocMemoryPoolBlock (void) {
    +
    osPoolId MemPool_Id;
    +
    MEM_BLOCK *addr;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    :
    +
    // allocate a memory block
    +
    addr = (MEM_BLOCK *)osPoolCAlloc (MemPool_Id);
    +
    +
    if (addr != NULL) {
    +
    // memory block was allocated
    +
    :
    +
    }
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osPoolId osPoolCreate (const osPoolDef_tpool_def)
    +
    +
    Parameters
    + + +
    [in]pool_defmemory pool definition referenced with osPool.
    +
    +
    +
    Returns
    memory pool ID for reference by other functions or NULL in case of error.
    +

    Create and initialize a memory pool.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void CreateMemoryPool (void) {
    +
    osPoolId MemPool_Id;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    // memory pool created
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osPoolFree (osPoolId pool_id,
    void * block 
    )
    +
    +
    Parameters
    + + + +
    [in]pool_idmemory pool ID obtain referenced with osPoolCreate.
    [in]blockaddress of the allocated memory block that is returned to the memory pool.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Return a memory block to a memory pool.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the memory block is released.
    • +
    • osErrorValue: block does not belong to the memory pool.
    • +
    • osErrorParameter: a parameter is invalid or outside of a permitted range.
    • +
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    typedef struct {
    +
    uint8_t Buf[32];
    +
    uint8_t Idx;
    +
    } MEM_BLOCK;
    +
    +
    osPoolDef (MemPool, 8, MEM_BLOCK);
    +
    +
    void CAlocMemoryPoolBlock (void) {
    +
    osPoolId MemPool_Id;
    +
    MEM_BLOCK *addr;
    +
    osStatus status;
    +
    +
    MemPool_Id = osPoolCreate (osPool (MemPool));
    +
    if (MemPool_Id != NULL) {
    +
    addr = (MEM_BLOCK *)osPoolCAlloc (MemPool_Id);
    +
    if (addr != NULL) {
    +
    :
    +
    // return a memory block back to pool
    +
    status = osPoolFree (MemPool_Id, addr);
    +
    if (status==osOK) {
    +
    // handle status code
    +
    }
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js new file mode 100644 index 0000000..51d5079 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___pool_mgmt.js @@ -0,0 +1,10 @@ +var group___c_m_s_i_s___r_t_o_s___pool_mgmt = +[ + [ "osFeature_Pool", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gadd84b683001de327894851b428587caa", null ], + [ "osPool", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga5f0b204a82327533d420210125c90697", null ], + [ "osPoolDef", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga87b471d4fe2d5dbd0040708edd52771b", null ], + [ "osPoolAlloc", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gaa0b2994f1a866c19e0d11e6e0d44f543", null ], + [ "osPoolCAlloc", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga9f129fcad4730fbd1048ad4fa262f36a", null ], + [ "osPoolCreate", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga34af5c4f4ab38f4138ea7f1f9ece3a1a", null ], + [ "osPoolFree", "group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga4a861e9c469c9d0daf5721bf174f8e54", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html new file mode 100644 index 0000000..a637c76 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html @@ -0,0 +1,429 @@ + + + + + +Semaphore Management +CMSIS-RTOS RTX: Semaphore Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Semaphore Management
    +
    +
    + +

    Control access to shared resources. +More...

    + + + + + + + + + + + +

    +Macros

    #define osFeature_Semaphore   65535
     Maximum count for osSemaphoreCreate function.
     
    #define osSemaphoreDef(name)
     Define a Semaphore object.
     
    #define osSemaphore(name)   &os_semaphore_def_##name
     Access a Semaphore definition.
     
    + + + + + + + + + + + + + +

    +Functions

    osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_t *semaphore_def, int32_t count)
     Create and Initialize a Semaphore object used for managing resources.
     
    int32_t osSemaphoreWait (osSemaphoreId semaphore_id, uint32_t millisec)
     Wait until a Semaphore token becomes available.
     
    osStatus osSemaphoreRelease (osSemaphoreId semaphore_id)
     Release a Semaphore token.
     
    osStatus osSemaphoreDelete (osSemaphoreId semaphore_id)
     Delete a Semaphore that was created by osSemaphoreCreate.
     
    +

    Description

    +

    The Semaphore Management function group is used to manage and protect access to shared resources. For example, with a Semaphore the access to a group of identical peripherals can be managed. The number of available resources is specified as parameter of the osSemaphoreCreate function.

    +

    Each time a Semaphore token is obtained with osSemaphoreWait the semaphore count is decremented. When the semaphore count is 0, no Semaphore token can be obtained. Semaphores are released with osSemaphoreRelease; this function increments the semaphore count.

    +
    +Semaphore.png +
    +CMSIS-RTOS Semaphore
    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_Semaphore   65535
    +
    +

    CMSIS-RTOS RTX supports an index count up to 65535 for a semaphore .

    + +
    +
    + +
    +
    + + + + + + + + +
    #define osSemaphore( name)   &os_semaphore_def_##name
    +
    +

    Access to semaphore object for the functions osSemaphoreCreate.

    +
    Parameters
    + + +
    namename of the semaphore object.
    +
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    #define osSemaphoreDef( name)
    +
    +

    Define a semaphore object that is referenced by osSemaphore.

    +
    Parameters
    + + +
    namename of the semaphore object.
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osSemaphoreId osSemaphoreCreate (const osSemaphoreDef_tsemaphore_def,
    int32_t count 
    )
    +
    +
    Parameters
    + + + +
    [in]semaphore_defsemaphore definition referenced with osSemaphore.
    [in]countnumber of available resources.
    +
    +
    +
    Returns
    semaphore ID for reference by other functions or NULL in case of error.
    +

    Create and initialize a Semaphore object that is used to manage access to shared resources. The parameter count specifies the number of available resources. The count value 1 creates a binary semaphore.

    +
    Note
      +
    • The value count is only used to set the initial token count. The initial token count is not stored in memory (to save RAM as the RTX implementation tries to use as little resource as possible). Therefore no error is generated when osSemaphoreRelease is used to release more tokens than specified with the initial token count.
    • +
    +
    +
    +- Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    osThreadId tid_thread1; // ID for thread 1
    +
    osThreadId tid_thread2; // ID for thread 2
    +
    +
    osSemaphoreId semaphore; // Semaphore ID
    +
    osSemaphoreDef(semaphore); // Semaphore definition
    +
    +
    //
    +
    // Thread 1 - High Priority - Active every 3ms
    +
    //
    +
    void thread1 (void const *argument) {
    +
    int32_t value;
    +
    +
    while (1) {
    +
    osDelay(3); // Pass control to other tasks for 3ms
    +
    val = osSemaphoreWait (semaphore, 1); // Wait 1ms for the free semaphore
    +
    if (val > 0) {
    +
    // If there was no time-out the semaphore was acquired
    +
    : // OK, the interface is free now, use it.
    +
    osSemaphoreRelease (semaphore); // Return a token back to a semaphore
    +
    }
    +
    }
    +
    }
    +
    +
    //
    +
    // Thread 2 - Normal Priority - looks for a free semaphore and uses
    +
    // the resource whenever it is available
    +
    //
    +
    void thread2 (void const *argument) {
    +
    while (1) {
    +
    osSemaphoreWait (semaphore, osWaitForever); // Wait indefinitely for a free semaphore
    +
    // OK, the interface is free now, use it.
    +
    :
    +
    osSemaphoreRelease (semaphore); // Return a token back to a semaphore.
    +
    }
    +
    }
    +
    +
    // Thread definitions
    +
    osThreadDef(thread1, osPriorityHigh, 1, 0);
    +
    osThreadDef(thread2, osPriorityNormal, 1, 0);
    +
    +
    void StartApplication (void) {
    +
    semaphore = osSemaphoreCreate(osSemaphore(semaphore), 1);
    +
    +
    tid_thread1 = osThreadCreate(osThread(thread1), NULL);
    +
    tid_thread2 = osThreadCreate(osThread(thread2), NULL);
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osSemaphoreDelete (osSemaphoreId semaphore_id)
    +
    +
    Parameters
    + + +
    [in]semaphore_idsemaphore object referenced with osSemaphoreCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Delete a Semaphore object. The function releases internal memory obtained for Semaphore handling. After this call the semaphore_id is no longer valid and cannot be used. The Semaphore may be created again using the function osSemaphoreCreate.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the semaphore object has been deleted.
    • +
    • osErrorISR: osSemaphoreDelete cannot be called from interrupt service routines.
    • +
    • osErrorResource: the semaphore object could not be deleted.
    • +
    • osErrorParameter: the parameter semaphore_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    + +
    +
    + +
    +
    + + + + + + + + +
    osStatus osSemaphoreRelease (osSemaphoreId semaphore_id)
    +
    +
    Parameters
    + + +
    [in]semaphore_idsemaphore object referenced with osSemaphoreCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Release a Semaphore token. This increments the count of available semaphore tokens.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the semaphore has been released.
    • +
    • osErrorResource: all tokens have already been released.
    • +
    • osErrorParameter: the parameter semaphore_id is incorrect.
    • +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t osSemaphoreWait (osSemaphoreId semaphore_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]semaphore_idsemaphore object referenced with osSemaphoreCreate.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    number of available tokens, or -1 in case of incorrect parameters.
    +

    Wait until a Semaphore token becomes available. When no Semaphore token is available, the function waits for the time specified with the parameter millisec.

    +

    The argument millisec specifies how long the system waits for a Semaphore token to become available. While the system waits the thread that is calling this function is put into the state WAITING. The millisec timeout can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until the Semaphore token becomes available.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +

    The return value indicates the number of available tokens (the semaphore count value). If 0 is returned, then no semaphore was available.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js new file mode 100644 index 0000000..cb194a8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.js @@ -0,0 +1,10 @@ +var group___c_m_s_i_s___r_t_o_s___semaphore_mgmt = +[ + [ "osFeature_Semaphore", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga7da4c7bfb340779c9fc7b321f5ab3e3a", null ], + [ "osSemaphore", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga03761ee8d2c3cd4544e18364ab301dac", null ], + [ "osSemaphoreDef", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga9e66fe361749071e5ab87826c43c2f1b", null ], + [ "osSemaphoreCreate", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga97381e8e55cd47cec390bf57c96d6edb", null ], + [ "osSemaphoreDelete", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gabae2801ac2c096f6e8c69a264908f595", null ], + [ "osSemaphoreRelease", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gab108914997c49e14d8ff1ae0d1988ca0", null ], + [ "osSemaphoreWait", "group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gacc15b0fc8ce1167fe43da33042e62098", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html new file mode 100644 index 0000000..048448f --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.html @@ -0,0 +1,351 @@ + + + + + +Signal Management +CMSIS-RTOS RTX: Signal Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Signal Management
    +
    +
    + +

    Control or wait for signal flags. +More...

    + + + + + +

    +Macros

    #define osFeature_Signals   16
     16 Signal Flags available per thread
     
    + + + + + + + + + + +

    +Functions

    int32_t osSignalSet (osThreadId thread_id, int32_t signals)
     Set the specified Signal Flags of an active thread.
     
    int32_t osSignalClear (osThreadId thread_id, int32_t signals)
     Clear the specified Signal Flags of an active thread.
     
    os_InRegs osEvent osSignalWait (int32_t signals, uint32_t millisec)
     Wait for one or more Signal Flags to become signaled for the current RUNNING thread.
     
    +

    Description

    +

    The Signal Management function group allows to control or wait signal flags. Each thread has assigned signal flags.

    +

    Macro Definition Documentation

    + +
    +
    + + + + +
    #define osFeature_Signals   16
    +
    +

    CMSIS-RTOS RTX supports up to 16 signal flags per thread.

    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t osSignalClear (osThreadId thread_id,
    int32_t signals 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    [in]signalsspecifies the signal flags of the thread that shall be cleared.
    +
    +
    +
    Returns
    previous signal flags of the specified thread or 0x80000000 in case of incorrect parameters or call from ISR.
    +

    Clear the signal flags of an active thread. This function cannot be called from interrupt service routines.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    void Thread_2 (void const *arg);
    +
    +
    osThreadDef (Thread_2, osPriorityHigh, 1, 0);
    +
    +
    static void EX_Signal_1 (void) {
    +
    int32_t signals;
    +
    osThreadId thread_id;
    +
    +
    thread_id = osThreadCreate (osThread(Thread_2), NULL);
    +
    if (thread_id == NULL) {
    +
    // Failed to create a thread.
    +
    }
    +
    else {
    +
    f :
    +
    signals = osSignalClear (thread_id, 0x01);
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int32_t osSignalSet (osThreadId thread_id,
    int32_t signals 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    [in]signalsspecifies the signal flags of the thread that should be set.
    +
    +
    +
    Returns
    previous signal flags of the specified thread or 0x80000000 in case of incorrect parameters.
    +

    Set the signal flags of an active thread.

    +
    Note
    Interrupt Service Routines can call this function.
    +

    Example

    +
    void Thread_2 (void const *arg);
    +
    +
    osThreadDef (Thread_2, osPriorityHigh, 1, 0);
    +
    +
    static void EX_Signal_1 (void) {
    +
    int32_t signals;
    +
    uint32_t exec;
    +
    osThreadId thread_id;
    +
    +
    thread_id = osThreadCreate (osThread(Thread_2), NULL);
    +
    if (thread_id == NULL) {
    +
    // Failed to create a thread.
    +
    }
    +
    else {
    +
    signals = osSignalSet (thread_id, 0x00000005); // Send signals to the created thread
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osEvent osSignalWait (int32_t signals,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]signalswait until all specified signal flags set or 0 for any single signal flag.
    [in]millisecTimout Value or 0 in case of no time-out.
    +
    +
    +
    Returns
    event flag information or error code.
    +

    Suspend the execution of the current RUNNING thread until all specified signal flags with the parameter signals are set. When this signal flags are already set, the function returns instantly. Otherwise the thread is put into the state WAITING. Signal flags that are reported as event are automatically cleared.

    +

    The argument millisec specifies how long the system waits for the specified signal flags. While the system waits the tread calling this function is put into the state WAITING. The timeout value can have the following values:

    +
      +
    • when millisec is 0, the function returns instantly.
    • +
    • when millisec is set to osWaitForever the function will wait for an infinite time until a specified signal is set.
    • +
    • all other values specify a time in millisecond for a timeout.
    • +
    +

    Status and Error Codes
    +

    +
      +
    • osOK: no signal received when the timeout value millisec was 0.
    • +
    • osEventTimeout: signal not occurred within timeout
    • +
    • osEventSignal: signal occurred, value.signals contains the signal flags; these signal flags are cleared.
    • +
    • osErrorValue: the value signals is outside of the permitted range.
    • +
    • osErrorISR: osSignalWait cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    void Thread_2 (void const *arg);
    +
    +
    osThreadDef (Thread_2, osPriorityHigh, 1, 0);
    +
    +
    static void EX_Signal_1 (void) {
    +
    osThreadId thread_id;
    +
    osEvent evt;
    +
    +
    thread_id = osThreadCreate (osThread(Thread_2), NULL);
    +
    if (thread_id == NULL) {
    +
    // Failed to create a thread.
    +
    }
    +
    else {
    +
    :
    +
    // wait for a signal
    +
    evt = osSignalWait (0x01, 100);
    +
    if (evt.status == osEventSignal) {
    +
    // handle event status
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js new file mode 100644 index 0000000..825b993 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___signal_mgmt.js @@ -0,0 +1,7 @@ +var group___c_m_s_i_s___r_t_o_s___signal_mgmt = +[ + [ "osFeature_Signals", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga01edde265710d883b6e237d34a6ef4a6", null ], + [ "osSignalClear", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga87283a6ebc31ce9ed42baf3ea7e4eab6", null ], + [ "osSignalSet", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga3de2730654589d6c3559c4b9e2825553", null ], + [ "osSignalWait", "group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga38860acda96df47da6923348d96fc4c9", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.html new file mode 100644 index 0000000..cd55aae --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.html @@ -0,0 +1,235 @@ + + + + + +Status and Error Codes +CMSIS-RTOS RTX: Status and Error Codes + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Status and Error Codes
    +
    +
    + +

    Status and Error Codes returned by CMSIS-RTOS API functions. +More...

    + + + + +

    +Enumerations

    enum  osStatus {
    +  osOK = 0, +
    +  osEventSignal = 0x08, +
    +  osEventMessage = 0x10, +
    +  osEventMail = 0x20, +
    +  osEventTimeout = 0x40, +
    +  osErrorParameter = 0x80, +
    +  osErrorResource = 0x81, +
    +  osErrorTimeoutResource = 0xC1, +
    +  osErrorISR = 0x82, +
    +  osErrorISRRecursive = 0x83, +
    +  osErrorPriority = 0x84, +
    +  osErrorNoMemory = 0x85, +
    +  osErrorValue = 0x86, +
    +  osErrorOS = 0xFF, +
    +  os_status_reserved = 0x7FFFFFFF +
    + }
     
    +

    Description

    +

    The Status and Error Codes section lists all the return values that the CMSIS-RTOS functions will return.

    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum osStatus
    +
    +

    The osStatus enumeration defines the event status and error codes that are returned by the CMSIS-RTOS functions.

    +
    Enumerator:
    + + + + + + + + + + + + + + + +
    osOK  +

    function completed; no error or event occurred.

    +
    osEventSignal  +

    function completed; signal event occurred.

    +
    osEventMessage  +

    function completed; message event occurred.

    +
    osEventMail  +

    function completed; mail event occurred.

    +
    osEventTimeout  +

    function completed; timeout occurred.

    +
    osErrorParameter  +

    parameter error: a mandatory parameter was missing or specified an incorrect object.

    +
    osErrorResource  +

    resource not available: a specified resource was not available.

    +
    osErrorTimeoutResource  +

    resource not available within given time: a specified resource was not available within the timeout period.

    +
    osErrorISR  +

    not allowed in ISR context: the function cannot be called from interrupt service routines.

    +
    osErrorISRRecursive  +

    function called multiple times from ISR with same object.

    +
    osErrorPriority  +

    system cannot determine priority or thread has illegal priority.

    +
    osErrorNoMemory  +

    system is out of memory: it was impossible to allocate or reserve memory for the operation.

    +
    osErrorValue  +

    value of a parameter is out of range.

    +
    osErrorOS  +

    unspecified RTOS error: run-time error but no other error message fits.

    +
    os_status_reserved  +

    prevent from enum down-size compiler optimization.

    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.js new file mode 100644 index 0000000..a890636 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___status.js @@ -0,0 +1,20 @@ +var group___c_m_s_i_s___r_t_o_s___status = +[ + [ "osStatus", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99e", [ + [ "osOK", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea9e1c9e2550bb4de8969a935acffc968f", null ], + [ "osEventSignal", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5df7e9643aa8a2f5f3a6f6ec59758518", null ], + [ "osEventMessage", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ead604f3673359dd4ac643b16dc5a2c342", null ], + [ "osEventMail", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea15b12e42b42b53f35fb8a2724ad02926", null ], + [ "osEventTimeout", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea78f477732375c0e1fca814e369618177", null ], + [ "osErrorParameter", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac24adca6a5d072c9f01c32178ba0d109", null ], + [ "osErrorResource", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea8fc5801e8b0482bdf22ad63a77f0155d", null ], + [ "osErrorTimeoutResource", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea314d24a49003f09459035db0dd7c9467", null ], + [ "osErrorISR", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea21635bdc492d3094fe83027fa4a30e2f", null ], + [ "osErrorISRRecursive", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf6552310a817452aedfcd453f2805d65", null ], + [ "osErrorPriority", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eab7dda0ef504817659334cbfd650ae56f", null ], + [ "osErrorNoMemory", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf1fac0240218e51eb30a13da2f8aae81", null ], + [ "osErrorValue", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea4672c8a0c0f6bb1d7981da4602e8e9ee", null ], + [ "osErrorOS", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5fde24ff588ec5ab9cb8314bade26fbc", null ], + [ "os_status_reserved", "group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac7a77f5fe18a15a357790c36a4aca1b1", null ] + ] ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html new file mode 100644 index 0000000..265c4b9 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.html @@ -0,0 +1,608 @@ + + + + + +Thread Management +CMSIS-RTOS RTX: Thread Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Thread Management
    +
    +
    + +

    Define, create, and control thread functions. +More...

    + + + + + + + + +

    +Macros

    #define osThreadDef(name, priority, instances, stacksz)
     Create a Thread Definition with function, priority, and stack requirements.
     
    #define osThread(name)   &os_thread_def_##name
     Access a Thread definition.
     
    + + + +

    +Enumerations

    enum  osPriority {
    +  osPriorityIdle = -3, +
    +  osPriorityLow = -2, +
    +  osPriorityBelowNormal = -1, +
    +  osPriorityNormal = 0, +
    +  osPriorityAboveNormal = +1, +
    +  osPriorityHigh = +2, +
    +  osPriorityRealtime = +3, +
    +  osPriorityError = 0x84 +
    + }
     
    + + + + + + + + + + + + + + + + + + + +

    +Functions

    osThreadId osThreadCreate (const osThreadDef_t *thread_def, void *argument)
     Create a thread and add it to Active Threads and set it to state READY.
     
    osThreadId osThreadGetId (void)
     Return the thread ID of the current running thread.
     
    osStatus osThreadTerminate (osThreadId thread_id)
     Terminate execution of a thread and remove it from Active Threads.
     
    osStatus osThreadSetPriority (osThreadId thread_id, osPriority priority)
     Change priority of an active thread.
     
    osPriority osThreadGetPriority (osThreadId thread_id)
     Get current priority of an active thread.
     
    osStatus osThreadYield (void)
     Pass control to next thread that is in state READY.
     
    +

    Description

    +

    The Thread Management function group allow defining, creating, and controlling thread functions in the system. The function main is a special thread function that is started at system initialization and has the initial priority osPriorityNormal.

    +

    Threads can be in the following states:

    +
      +
    • RUNNING: The thread that is currently running is in the RUNNING state. Only one thread at a time can be in this state.
    • +
    • READY: Threads which are ready to run are in the READY state. Once the RUNNING thread has terminated or is WAITING the next READY thread with the highest priority becomes the RUNNING thread.
    • +
    • WAITING: Threads that are waiting for an event to occur are in the WAITING state.
    • +
    • INACTIVE: Threads that are not created or terminated are in the INACTIVE state. These threads typically consume no system resources.
    • +
    +
    +ThreadStatus.png +
    +Thread State and State Transitions
    +

    The CMSIS-RTOS assumes that threads are scheduled as shown in the figure Thread State and State Transitions. The thread states change as described below:

    +
      +
    • A thread is created using the function osThreadCreate. This puts the thread into the READY or RUNNING state (depending on the thread priority).
    • +
    • CMSIS-RTOS is pre-emptive. The active thread with the highest priority becomes the RUNNING thread provided it does not wait for any event. The initial priority of a thread is defined with the osThreadDef but may be changed during execution using the function osThreadSetPriority.
    • +
    • The RUNNING thread transfers into the WAITING state when it is waiting for an event.
    • +
    • Active threads can be terminated any time using the function osThreadTerminate. Threads can terminate also by just returning from the thread function. Threads that are terminated are in the INACTIVE state and typically do not consume any dynamic memory resources.
    • +
    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define osThread( name)   &os_thread_def_##name
    +
    +

    Access to the thread definition for the function osThreadCreate.

    +
    Parameters
    + + +
    namename of the thread definition object. macro body is implementation specific in every CMSIS-RTOS.
    +
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #define osThreadDef( name,
     priority,
     instances,
     stacksz 
    )
    +
    +

    Define the attributes of a thread functions that can be created by the function osThreadCreate using osThread.

    +
    Note
    The parameter instances is intended to reserve stack resources but is currently not used by the CMSIS-RTOS RTX implementation. There is not limit check at time of creating threads using osThreadCreate (other then the general check for available stack resources).
    +
    Parameters
    + + + + + +
    namename of the thread function.
    priorityinitial priority of the thread function.
    instancesnumber of possible thread instances.
    stackszstack size (in bytes) requirements for the thread function. macro body is implementation specific in every CMSIS-RTOS.
    +
    +
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum osPriority
    +
    +

    The osPriority value specifies the priority for a thread. The default thread priority should be osPriorityNormal. If a Thread is active that has a higher priority than the currently executing thread, then a thread switch occurs immediately to execute the new task.

    +

    To prevent from a priority inversion, a CMSIS-RTOS complained OS may optionally implement a priority inheritance method. A priority inversion occurs when a high priority thread is waiting for a resource or event that is controlled by a thread with a lower priority.

    +
    Enumerator:
    + + + + + + + + +
    osPriorityIdle  +

    priority: idle (lowest)

    +
    osPriorityLow  +

    priority: low

    +
    osPriorityBelowNormal  +

    priority: below normal

    +
    osPriorityNormal  +

    priority: normal (default)

    +
    osPriorityAboveNormal  +

    priority: above normal

    +
    osPriorityHigh  +

    priority: high

    +
    osPriorityRealtime  +

    priority: realtime (highest)

    +
    osPriorityError  +

    system cannot determine priority or thread has illegal priority

    +
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osThreadId osThreadCreate (const osThreadDef_tthread_def,
    void * argument 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_defthread definition referenced with osThread.
    [in]argumentpointer that is passed to the thread function as start argument.
    +
    +
    +
    Returns
    thread ID for reference by other functions or NULL in case of error.
    +

    Start a thread function by adding it to the Active Threads list and set it to state READY. The thread function receives the argument pointer as function argument when the function is started. When the priority of the created thread function is higher than the current RUNNING thread, the created thread function starts instantly and becomes the new RUNNING thread.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg); // function prototype for Thread_1
    +
    osThreadDef (Thread_1, osPriorityNormal, 1, 0); // define Thread_1
    +
    +
    void ThreadCreate_example (void) {
    + +
    +
    id = osThreadCreate (osThread (Thread_1), NULL); // create the thread
    +
    if (id == NULL) { // handle thread creation
    +
    // Failed to create a thread
    +
    }
    +
    :
    +
    osThreadTerminate (id); // stop the thread
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osThreadId osThreadGetId (void )
    +
    +
    Returns
    thread ID for reference by other functions or NULL in case of error.
    +

    Get the thread ID of the current running thread.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    void ThreadGetId_example (void) {
    +
    osThreadId id; // id for the currently running thread
    +
    +
    id = osThreadGetId ();
    +
    if (id == NULL) {
    +
    // Failed to get the id; not in a thread
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osPriority osThreadGetPriority (osThreadId thread_id)
    +
    +
    Parameters
    + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    +
    +
    +
    Returns
    current priority value of the thread function.
    +

    Get the priority of an active thread. In case of a failure the value osPriorityError is returned.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osThreadId id; // id for the currently running thread
    +
    osPriority priority; // thread priority
    +
    +
    id = osThreadGetId (); // Obtain ID of current running thread
    +
    +
    if (id != NULL) {
    +
    priority = osThreadGetPriority (id);
    +
    }
    +
    else {
    +
    // Failed to get the id
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osThreadSetPriority (osThreadId thread_id,
    osPriority priority 
    )
    +
    +
    Parameters
    + + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    [in]prioritynew priority value for the thread function.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Change the priority of an active thread.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the priority of the specified thread has been successfully changed.
    • +
    • osErrorParameter: thread_id is incorrect.
    • +
    • osErrorValue: incorrect priority value.
    • +
    • osErrorResource: thread_id refers to a thread that is not an active thread.
    • +
    • osErrorISR: osThreadSetPriority cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osThreadId id; // id for the currently running thread
    +
    osPriority pr; // thread priority
    +
    osStatus status; // status of the executed function
    +
    +
    :
    +
    id = osThreadGetId (); // Obtain ID of current running thread
    +
    +
    if (id != NULL) {
    + +
    if (status == osOK) {
    +
    // Thread priority changed to BelowNormal
    +
    }
    +
    else {
    +
    // Failed to set the priority
    +
    }
    +
    }
    +
    else {
    +
    // Failed to get the id
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osThreadTerminate (osThreadId thread_id)
    +
    +
    Parameters
    + + +
    [in]thread_idthread ID obtained by osThreadCreate or osThreadGetId.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Remove the thread function from the active thread list. If the thread is currently RUNNING the execution will stop.

    +
    Note
    In case that osThreadTerminate terminates the currently running task, the function never returns and other threads that are in the READY state are started.
    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified thread has been successfully terminated.
    • +
    • osErrorParameter: thread_id is incorrect.
    • +
    • osErrorResource: thread_id refers to a thread that is not an active thread.
    • +
    • osErrorISR: osThreadTerminate cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg); // function prototype for Thread_1
    +
    osThreadDef (Thread_1, osPriorityNormal, 1, 0); // define Thread_1
    +
    +
    void ThreadTerminate_example (void) {
    +
    osStatus status;
    + +
    +
    id = osThreadCreate (osThread (Thread_1), NULL); // create the thread
    +
    :
    +
    status = osThreadTerminate (id); // stop the thread
    +
    if (status == osOK) {
    +
    // Thread was terminated successfully
    +
    }
    +
    else {
    +
    // Failed to terminate a thread
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osThreadYield (void )
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Pass control to the next thread that is in state READY. If there is no other thread in the state READY, the current thread continues execution and no thread switching occurs.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the function has been correctly executed.
    • +
    • osErrorISR: osThreadYield cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osStatus status; // status of the executed function
    +
    :
    +
    while (1) {
    +
    status = osThreadYield(); //
    +
    if (status != osOK) {
    +
    // thread switch not occurred, not in a thread function
    +
    }
    +
    }
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js new file mode 100644 index 0000000..fa5d5de --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___thread_mgmt.js @@ -0,0 +1,21 @@ +var group___c_m_s_i_s___r_t_o_s___thread_mgmt = +[ + [ "osThread", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf0c7c6b5e09f8be198312144b5c9e453", null ], + [ "osThreadDef", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaee93d929beb350f16e5cc7fa602e229f", null ], + [ "osPriority", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849a", [ + [ "osPriorityIdle", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa549e79a43ff4f8b2b31afb613f5caa81", null ], + [ "osPriorityLow", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa61cb822239ac8f66dfbdc7291598a3d4", null ], + [ "osPriorityBelowNormal", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa193b650117c209b4a203954542bcc3e6", null ], + [ "osPriorityNormal", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa45a2895ad30c79fb97de18cac7cc19f1", null ], + [ "osPriorityAboveNormal", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa17b36cd9cd38652c2bc6d4803990674b", null ], + [ "osPriorityHigh", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa914433934143a9ba767e59577c56e6c2", null ], + [ "osPriorityRealtime", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa1485dec3702434a1ec3cb74c7a17a4af", null ], + [ "osPriorityError", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aae35f5e2f9c64ad346822521b643bdea4", null ] + ] ], + [ "osThreadCreate", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gac59b5713cb083702dce759c73fd90dff", null ], + [ "osThreadGetId", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gab1df2a28925862ef8f9cf4e1c995c5a7", null ], + [ "osThreadGetPriority", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga4299d838978bc2aae5e4350754e6a4e9", null ], + [ "osThreadSetPriority", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga0dfb90ccf1f6e4b54b9251b12d1cbc8b", null ], + [ "osThreadTerminate", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaea135bb90eb853eff39e0800b91bbeab", null ], + [ "osThreadYield", "group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf13a667493c5d629a90c13e113b99233", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html new file mode 100644 index 0000000..712b3be --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.html @@ -0,0 +1,517 @@ + + + + + +Timer Management +CMSIS-RTOS RTX: Timer Management + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Timer Management
    +
    +
    + +

    Create and control timer and timer callback functions. +More...

    + + + + + + + + +

    +Macros

    #define osTimerDef(name, function)
     Define a Timer object.
     
    #define osTimer(name)   &os_timer_def_##name
     Access a Timer definition.
     
    + + + +

    +Enumerations

    enum  os_timer_type {
    +  osTimerOnce = 0, +
    +  osTimerPeriodic = 1 +
    + }
     
    + + + + + + + + + + + + + +

    +Functions

    osTimerId osTimerCreate (const osTimerDef_t *timer_def, os_timer_type type, void *argument)
     Create a timer.
     
    osStatus osTimerStart (osTimerId timer_id, uint32_t millisec)
     Start or restart a timer.
     
    osStatus osTimerStop (osTimerId timer_id)
     Stop the timer.
     
    osStatus osTimerDelete (osTimerId timer_id)
     Delete a timer that was created by osTimerCreate.
     
    +

    Description

    +

    The Timer Management function group allow creating and controlling of timers and callback functions in the system. A callback function is called when a time period expires whereby both one-shot and periodic timers are possible. A timer can be started, restarted, or stopped.

    +

    Timers are handled in the thread osTimerThread. Callback functions run under control of this thread and may use other CMSIS-RTOS API calls.

    +

    The figure below shows the behavior of a periodic timer. For one-shot timers, the timer stops after execution of the callback function.

    +
    +Timer.png +
    +Behavior of a Periodic Timer
    +

    Macro Definition Documentation

    + +
    +
    + + + + + + + + +
    #define osTimer( name)   &os_timer_def_##name
    +
    +

    Access to the timer definition for the function osTimerCreate.

    +
    Parameters
    + + +
    namename of the timer object.
    +
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    #define osTimerDef( name,
     function 
    )
    +
    +

    Define the attributes of a timer.

    +
    Parameters
    + + + +
    namename of the timer object.
    functionname of the timer call back function.
    +
    +
    + +
    +
    +

    Enumeration Type Documentation

    + +
    +
    + + + + +
    enum os_timer_type
    +
    +

    The os_timer_type specifies the a repeating (periodic) or one-shot timer for the function osTimerCreate.

    +
    Enumerator:
    + + +
    osTimerOnce  +

    one-shot timer

    +
    osTimerPeriodic  +

    repeating timer

    +
    +
    +
    + +
    +
    +

    Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    osTimerId osTimerCreate (const osTimerDef_ttimer_def,
    os_timer_type type,
    void * argument 
    )
    +
    +
    Parameters
    + + + + +
    [in]timer_deftimer object referenced with osTimer.
    [in]typeosTimerOnce for one-shot or osTimerPeriodic for periodic behavior.
    [in]argumentargument to the timer call back function.
    +
    +
    +
    Returns
    timer ID for reference by other functions or NULL in case of error.
    +

    Create a one-shot or periodic timer and associate it with a callback function argument. The timer is in stopped until it is started with osTimerStart.

    +
    Note
    - In RTX, this function is only available if you have set OS_TIMERS to 1 in the RTX_Conf_CM.c configuration file (User Timers enabled).
    +
    +- Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Timer1_Callback (void const *arg); // prototypes for timer callback function
    +
    void Timer2_Callback (void const *arg);
    +
    +
    osTimerDef (Timer1, Timer1_Callback); // define timers
    +
    osTimerDef (Timer2, Timer2_Callback);
    +
    +
    uint32_t exec1; // argument for the timer call back function
    +
    uint32_t exec2; // argument for the timer call back function
    +
    +
    void TimerCreate_example (void) {
    +
    osTimerId id1; // timer id
    +
    osTimerId id2; // timer id
    +
    +
    // Create one-shoot timer
    +
    exec1 = 1;
    +
    id1 = osTimerCreate (osTimer(Timer1), osTimerOnce, &exec1);
    +
    if (id1 != NULL) {
    +
    // One-shoot timer created
    +
    }
    +
    +
    // Create periodic timer
    +
    exec2 = 2;
    +
    id2 = osTimerCreate (osTimer(Timer2), osTimerPeriodic, &exec2);
    +
    if (id2 != NULL) {
    +
    // Periodic timer created
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osTimerDelete (osTimerId timer_id)
    +
    +
    Parameters
    + + +
    [in]timer_idtimer ID obtained by osTimerCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Delete the timer object.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified timer has been deleted.
    • +
    • osErrorISR: osTimerDelete cannot be called from interrupt service routines.
    • +
    • osErrorParameter: timer_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Timer_Callback (void const *arg); // prototype for timer callback function
    +
    osTimerDef (Timer, Timer_Callback); // define timer
    +
    +
    void TimerDelete_example (void) {
    +
    osTimerId id; // timer id
    +
    osStatus status; // function return status
    +
    +
    // Create periodic timer
    +
    exec = 1;
    +
    id = osTimerCreate (osTimer(Timer2), osTimerPeriodic, NULL);
    +
    osTimerStart (id, 1000UL); // start timer
    +
    :
    +
    status = osTimerDelete (id); // stop and delete timer
    +
    if (status != osOK) {
    +
    // Timer could not be deleted
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    osStatus osTimerStart (osTimerId timer_id,
    uint32_t millisec 
    )
    +
    +
    Parameters
    + + + +
    [in]timer_idtimer ID obtained by osTimerCreate.
    [in]millisecTime delay value of the timer.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Start or restart the timer.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified timer has been started or restarted.
    • +
    • osErrorISR: osTimerStart cannot be called from interrupt service routines.
    • +
    • osErrorParameter: timer_id is incorrect.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Time_Callback (void const *arg) { // timer callback function
    +
    // arg contains &exec
    +
    // called every second after osTimerStart
    +
    }
    +
    +
    osTimerDef (Timer, Timer_Callback); // define timer
    +
    uint32_t exec; // argument for the timer call back function
    +
    +
    void TimerStart_example (void) {
    +
    osTimerId id; // timer id
    +
    uint32_t timerDelay; // timer value
    +
    osStatus status; // function return status
    +
    +
    // Create periodic timer
    +
    exec = 1;
    +
    id = osTimerCreate (osTimer(Timer), osTimerPeriodic, &exec);
    +
    if (id) {
    +
    timerDelay = 1000;
    +
    status = osTimerStart (id, timerDelay); // start timer
    +
    if (status != osOK) {
    +
    // Timer could not be started
    +
    }
    +
    }
    +
    :
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    osStatus osTimerStop (osTimerId timer_id)
    +
    +
    Parameters
    + + +
    [in]timer_idtimer ID obtained by osTimerCreate.
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Stop the timer.

    +

    Status and Error Codes
    +

    +
      +
    • osOK: the specified timer has been stopped.
    • +
    • osErrorISR: osTimerStop cannot be called from interrupt service routines.
    • +
    • osErrorParameter: timer_id is incorrect.
    • +
    • osErrorResource: the timer is not started.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Timer_Callback (void const *arg); // prototype for timer callback function
    +
    osTimerDef (Timer, Timer_Callback); // define timer
    +
    +
    void TimerStop_example (void) {
    +
    osTimerId id; // timer id
    +
    osStatus status; // function return status
    +
    +
    // Create periodic timer
    +
    exec = 1;
    +
    id = osTimerCreate (osTimer(Timer2), osTimerPeriodic, NULL);
    +
    osTimerStart (id, 1000); // start timer
    +
    :
    +
    status = osTimerStop (id); // stop timer
    +
    if (status != osOK) {
    +
    // Timer could not be stopped
    +
    }
    +
    :
    +
    osTimerStart (id, 1000); // start timer again
    +
    :
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js new file mode 100644 index 0000000..60f1ace --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___timer_mgmt.js @@ -0,0 +1,13 @@ +var group___c_m_s_i_s___r_t_o_s___timer_mgmt = +[ + [ "osTimer", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1b8d670eaf964b2910fa06885e650678", null ], + [ "osTimerDef", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1c720627e08d1cc1afcad44e799ed492", null ], + [ "os_timer_type", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9", [ + [ "osTimerOnce", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ad21712f8df5f97069c82dc9eec37b951", null ], + [ "osTimerPeriodic", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ab9c91f9699162edb09bb7c90c11c8788", null ] + ] ], + [ "osTimerCreate", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gaedd312bfdca04e0b8162b666e09a1ae6", null ], + [ "osTimerDelete", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga746b8043d906849bd65e3900fcb483cf", null ], + [ "osTimerStart", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga27a797a401b068e2644d1125f22a07ca", null ], + [ "osTimerStop", "group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga58f36b121a812936435cacc6e1e0e091", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.html b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.html new file mode 100644 index 0000000..d900f14 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.html @@ -0,0 +1,188 @@ + + + + + +Generic Wait Function +CMSIS-RTOS RTX: Generic Wait Function + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    Generic Wait Function
    +
    +
    + +

    Wait for a time period or unspecified events. +More...

    + + + + + +

    +Functions

    osStatus osDelay (uint32_t millisec)
     Wait for Timeout (Time Delay).
     
    +

    Description

    +

    The Generic Wait function group provides means for a time delay and allow to wait for unspecified events.

    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    osStatus osDelay (uint32_t millisec)
    +
    +
    Parameters
    + + +
    [in]millisecTime delay value
    +
    +
    +
    Returns
    status code that indicates the execution status of the function.
    +

    Wait for a specified time period in millisec.

    +

    The millisec value specifies the number of timer ticks and is therefore an upper bound. The exact time delay depends on the actual time elapsed since the last timer tick.

    +

    Status and Error Codes
    +

    +
      +
    • osEventTimeout: the time delay is executed.
    • +
    • osErrorISR: osDelay cannot be called from interrupt service routines.
    • +
    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Example

    +
    #include "cmsis_os.h"
    +
    +
    void Thread_1 (void const *arg) { // Thread function
    +
    osStatus status; // capture the return status
    +
    uint32_t delayTime; // delay time in milliseconds
    +
    +
    delayTime = 1000; // delay 1 second
    +
    :
    +
    status = osDelay (delayTime); // suspend thread execution
    +
    // handle error code
    +
    :
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.js b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.js new file mode 100644 index 0000000..5d68f6e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___c_m_s_i_s___r_t_o_s___wait.js @@ -0,0 +1,4 @@ +var group___c_m_s_i_s___r_t_o_s___wait = +[ + [ "osDelay", "group___c_m_s_i_s___r_t_o_s___wait.html#ga02e19d5e723bfb06ba9324d625162255", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.html b/CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.html new file mode 100644 index 0000000..6d65a0c --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.html @@ -0,0 +1,459 @@ + + + + + +RTX Global Functions +CMSIS-RTOS RTX: RTX Global Functions + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    RTX Global Functions
    +
    +
    + +

    Global functions that are specific for CMSIS-RTOS RTX. +More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    void os_idle_demon (void)
     The idle demon is running when no other thread is ready to run.
     
    int os_tick_init (void)
     Initializes an alternative hardware timer as RTX kernel timer.
     
    uint32_t os_tick_val (void)
     Get alternative hardware timer's current value (0 .. OS_TRV)
     
    uint32_t os_tick_ovf (void)
     Get alternative hardware timer's overflow flag.
     
    void os_tick_irqack (void)
     Acknowledge alternative hardware timer interrupt.
     
    void os_error (uint32_t error_code)
     Called when a runtime error is detected.
     
    uint32_t os_suspend (void)
     Suspend the RTX task scheduler.
     
    void os_resume (uint32_t sleep_time)
     Resume the RTX task scheduler.
     
    +

    Description

    +

    The RTX kernel can be customized for different application requirements:

    + +

    Function Documentation

    + +
    +
    + + + + + + + + +
    void os_error (uint32_t error_code)
    +
    +
    Parameters
    + + +
    [in]error_codeactual error code that has been detected
    +
    +
    +

    Some system error conditions can be detected during runtime. If the RTX kernel detects a runtime error, it calls the runtime error function os_error.

    +

    The argument error_code passes the actual error code to this function:

    + + + + + + + + + + + +
    Error Code Description
    OS_ERROR_STACK_OVFThe stack checking has detected a stack overflow for the currently running thread.
    OS_ERROR_FIFO_OVF The ISR FIFO Queue buffer overflow is detected.
    OS_ERROR_MBX_OVF A mailbox overflow is detected for the function osMessagePut or osMailPut.
    OS_ERROR_TIMER_OVFThe User Timer Callback Queue overflow is detected.
    +

    The function os_error must contain an infinite loop to prevent further program execution. You can use an emulator to step over infinite loop and trace into the code introducing a runtime error. For the overflow errors this means you need to increase the size of the object causing an overflow.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    void os_error (uint32_t error_code) {
    +
    +
    // HERE: include optional code to be executed on runtime error.
    +
    switch (error_code) {
    +
    + +
    // Stack overflow detected for the currently running task.
    +
    // Thread can be identified by calling svcThreadGetId().
    +
    break;
    +
    + +
    // ISR FIFO Queue buffer overflow detected.
    +
    break;
    +
    + +
    // Mailbox overflow detected.
    +
    break;
    +
    + +
    // User Timer Callback Queue overflow detected.
    +
    break;
    +
    }
    +
    for (;;);
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    void os_idle_demon (void )
    +
    +

    The function os_idle_demon is executed by the RTX kernel, when no other threads are ready to run. By default, this task is an empty end-less loop that does nothing. It only waits until another task becomes ready to run. You may change the code of the os_idle_demon function to put the CPU into a power-saving or idle mode.

    +
    Note
    Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    void os_idle_demon (void) {
    +
    +
    for (;;) {
    +
    __WFI(); // wait for interrupt
    +
    }
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    void os_resume (uint32_t sleep_time)
    +
    +
    Parameters
    + + +
    [in]sleep_timespecifies how long the system was in sleep or power-down mode.
    +
    +
    +

    The function os_resume resumes the RTX task scheduler. You must call this function after you have called os_suspend to re-enable the task scheduler.

    +

    The argument sleep_time specifies how long the system was in sleep or power-down mode. It is measured in number of system intervals.

    +
    Note
      +
    • You can call this function from the idle task only.
    • +
    • When the system is in power-down, the system tick timer is not running.
    • +
    • Cannot be called from Interrupt Service Routines.
    • +
    +
    +

    See os_suspend for a Code Example.

    + +
    +
    + +
    +
    + + + + + + + + +
    uint32_t os_suspend (void )
    +
    +
    Returns
    number of ticks, for how long the system can sleep or power-down.
    +

    The function os_suspend suspends the RTX task scheduler. The function calculates the time, for how long the system is allowed to power-down, and locks the task scheduler. When the function returns, the task switches are disabled. For normal RTX operation, after calling os_suspend, you must call the os_resume function to re-enable the OS task scheduler.

    +
    Note
      +
    • You can call this function from the idle task only.
    • +
    • When the system is in power-down, the system tick timer is not running.
    • +
    • Cannot be called from Interrupt Service Routines.
    • +
    +
    +

    Code Example

    +

    The low power RTX is controlled from the os_idle_demon. The peripheral wake-up timer must be initialized before the system enters an endless loop. os_suspend calculates the timeout until the first suspended task becomes ready, and returns the timeout to the user:

    +
    for (;;) {
    +
    sleep = os_suspend();
    +

    The user sets-up a peripheral timer to sleep timeout and starts the timer. The timeout is measured in system ticks.

    +
    if (sleep) {
    +
    // Setup the wake-up timer ...
    +

    When the wake-up timer is set-up and running, the user puts the system in power-down mode. The wake-up timer must run also in power-down mode. All other peripherals and the CPU may power-down to reduce power.

    +
    // Power-down the system ...
    +
    SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk;
    +
    __WFE();
    +

    The wake-up timer, when expired, generates the interrupt and wakes-up the system. Hence, it must run also in power-down mode. The system resumes operation and needs to call the function os_resume. This function restores the RTX and re-enables the scheduler.

    +
    // After Wake-up
    +
    sleep = (tc - LPC_WWDT->TV) / 250;
    +
    }
    +
    os_resume(sleep);
    +

    If, for any reason, the system does not wake up immediately after the wake-up interrupt, the actual sleep time is checked and adjusted.

    + +
    +
    + +
    +
    + + + + + + + + +
    int os_tick_init (void )
    +
    +
    Returns
    IRQ number of the alternative hardware timer
    +

    The function os_tick_init initializes an alternate hardware timer as the system tick timer and starts it. If you setup OS_SYSTICK to 0, this function will be available for adding the alternate timer. It returns the interrupt number of the alternative hardware timer.

    +
    Note
    - When using an alternate timer, you must enter the OS_Tick_Handler in the interrupt vector table in the startup file.
    +
    +- Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "LPC43xx.h" // Device header
    +
    +
    int os_tick_init (void) {
    +
    // Initialize hardware timer as system tick timer.
    +
    +
    LPC_CCU1->CLK_M4_RITIMER_CFG = (1UL << 0);
    +
    +
    LPC_RITIMER->COMPVAL = OS_TRV; // Set match value
    +
    LPC_RITIMER->COUNTER = 0; // Set count value to 0
    +
    LPC_RITIMER->CTRL = (1UL << 3) | // Timer enable
    +
    (1UL << 2) | // Timer enable for debug
    +
    (1UL << 1) | // Timer enable clear on match
    +
    (1UL << 0); // Clear interrupt flag
    +
    +
    return (M0_RITIMER_OR_WWDT_IRQn); // Return IRQ number of timer (0..239)
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    void os_tick_irqack (void )
    +
    +

    The function os_tick_irqack acknowledges the peripheral timer interrupt.

    +
    Note
    - When using an alternate timer, you must enter the OS_Tick_Handler in the interrupt vector table in the startup file.
    +
    +- Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "LPC43xx.h" // Device header
    +
    +
    void os_tick_irqack (void) {
    +
    +
    LPC_RITIMER->CTRL |= (1UL << 0); // Clear interrupt flag
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    uint32_t os_tick_ovf (void )
    +
    +
    Returns
    Overflow flag
    +
      +
    • 1 : overflow
    • +
    • 0 : no overflow
    • +
    +
    +

    The function os_tick_ovf returns the overflow flag of the alternate hardware timer specified by os_tick_init.

    +
    Note
    - When using an alternate timer, you must enter the OS_Tick_Handler in the interrupt vector table in the startup file.
    +
    +- Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "LPC43xx.h" // Device header
    +
    +
    uint32_t os_tick_ovf (void) {
    +
    +
    return (LPC_RITIMER->CTRL);
    +
    }
    +
    +
    +
    + +
    +
    + + + + + + + + +
    uint32_t os_tick_val (void )
    +
    +
    Returns
    Current value of the alternative hardware timer
    +

    The function os_tick_val returns the current value of the alternate hardware timer specified by os_tick_init.

    +
    Note
    - When using an alternate timer, you must enter the OS_Tick_Handler in the interrupt vector table in the startup file.
    +
    +- Cannot be called from Interrupt Service Routines.
    +

    Code Example

    +
    #include "LPC43xx.h" // Device header
    +
    +
    uint32_t os_tick_val (void) {
    +
    +
    return (LPC_RITIMER->COUNTER);
    +
    }
    +
    +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.js b/CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.js new file mode 100644 index 0000000..6593664 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/group___r_t_x___global___functions.js @@ -0,0 +1,11 @@ +var group___r_t_x___global___functions = +[ + [ "os_error", "group___r_t_x___global___functions.html#ga651ae76b3acf45f80bf0e0487b51d6e6", null ], + [ "os_idle_demon", "group___r_t_x___global___functions.html#gafb4dc4d3dff8343a393726d2860282e4", null ], + [ "os_resume", "group___r_t_x___global___functions.html#ga1b85a217d43e6b971ffcf24f8aae1c33", null ], + [ "os_suspend", "group___r_t_x___global___functions.html#ga3e9c57746ccbdfe90464ad50513c569e", null ], + [ "os_tick_init", "group___r_t_x___global___functions.html#ga145e7eafdd042bb522020cbb3b469d9c", null ], + [ "os_tick_irqack", "group___r_t_x___global___functions.html#ga85dab8408f27236c7341a69feb6258c7", null ], + [ "os_tick_ovf", "group___r_t_x___global___functions.html#gad5deddec3fea0fb31798f571afc3c692", null ], + [ "os_tick_val", "group___r_t_x___global___functions.html#ga567543bf38239a91f09751686c23017b", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/index.html b/CMSIS/Documentation/RTX/html/index.html new file mode 100644 index 0000000..a7f2b28 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/index.html @@ -0,0 +1,142 @@ + + + + + +Main Page +CMSIS-RTOS RTX: Main Page + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    CMSIS-RTOS RTX Documentation
    +
    +
    +

    This manual describes the CMSIS-RTOS implementation based on the Keil RTX Real-Time Operating System which is designed for Cortex-M processor-based devices. The RTX kernel can be used for creating applications that perform multiple tasks simultaneously. These tasks are executed by threads that operate in a quasi-parallel fashion.

    +

    While it is certainly possible to create real-time applications without an RTOS (by executing one or more tasks in a loop), there are numerous scheduling, maintenance, and timing issues that can be solved better with an RTOS. For example, an RTOS enables flexible scheduling of system resources like CPU and memory, and offers methods to communicate between threads.

    +

    CMSIS-RTOS RTX programs are written using standard C/C++ constructs and are compiled with the ARMCC, GCC, or IAR Compiler. The cmsis_os.h header file defines the RTX functions and macros that allow declaring tasks and accessing all RTOS features easily.

    +

    This manual contains the following sections:

    + +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/jquery.js b/CMSIS/Documentation/RTX/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/RTX/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + +
    +
    +
    Reference
    +
    +
    +
    Here is a list of all modules:
    +
    [detail level 12]
    + + + + + + + + + + + + + + +
    \CMSIS-RTOS API (RTX)This section describes the CMSIS-RTOS API as implemented by RTX
     oKernel Information and ControlProvide version/system information and start the RTOS Kernel
     oThread ManagementDefine, create, and control thread functions
     oGeneric Wait FunctionWait for a time period or unspecified events
     oTimer ManagementCreate and control timer and timer callback functions
     oSignal ManagementControl or wait for signal flags
     oMutex ManagementSynchronize thread execution with a Mutex
     oSemaphore ManagementControl access to shared resources
     oMemory Pool ManagementDefine and manage fixed-size memory pools
     oMessage Queue ManagementControl, send, receive, or wait for messages
     oMail Queue ManagementControl, send, receive, or wait for mail
     oRTX Global FunctionsGlobal functions that are specific for CMSIS-RTOS RTX
     oGeneric Data Types and DefinitionsData Type Definitions used by the CMSIS-RTOS API functions
     \Status and Error CodesStatus and Error Codes returned by CMSIS-RTOS API functions
    + + + + + + + diff --git a/CMSIS/Documentation/RTX/html/modules.js b/CMSIS/Documentation/RTX/html/modules.js new file mode 100644 index 0000000..d82c88b --- /dev/null +++ b/CMSIS/Documentation/RTX/html/modules.js @@ -0,0 +1,4 @@ +var modules = +[ + [ "CMSIS-RTOS API (RTX)", "group___c_m_s_i_s___r_t_o_s.html", "group___c_m_s_i_s___r_t_o_s" ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/nav_f.png b/CMSIS/Documentation/RTX/html/nav_f.png new file mode 100644 index 0000000..72a58a5 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/nav_f.png differ diff --git a/CMSIS/Documentation/RTX/html/nav_g.png b/CMSIS/Documentation/RTX/html/nav_g.png new file mode 100644 index 0000000..2093a23 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/nav_g.png differ diff --git a/CMSIS/Documentation/RTX/html/nav_h.png b/CMSIS/Documentation/RTX/html/nav_h.png new file mode 100644 index 0000000..33389b1 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/nav_h.png differ diff --git a/CMSIS/Documentation/RTX/html/navtree.css b/CMSIS/Documentation/RTX/html/navtree.css new file mode 100644 index 0000000..8001f82 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/navtree.css @@ -0,0 +1,143 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 300px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background:url("ftv2splitbar.png") repeat scroll right center transparent; + cursor:e-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/CMSIS/Documentation/RTX/html/navtree.js b/CMSIS/Documentation/RTX/html/navtree.js new file mode 100644 index 0000000..b61533d --- /dev/null +++ b/CMSIS/Documentation/RTX/html/navtree.js @@ -0,0 +1,528 @@ +var NAVTREE = +[ + [ "CMSIS-RTOS RTX", "index.html", [ + [ "Overview", "_overview.html", "_overview" ], + [ "Revision History", "rtx_revision_history.html", null ], + [ "Create a CMSIS-RTOS RTX Project", "_using.html", [ + [ "Define and Reference Object Definitions", "_using.html#DefRefObj", null ] + ] ], + [ "Configuration of CMSIS-RTOS RTX", "_configure.html", "_configure" ], + [ "CMSIS-RTOS RTX Tutorial", "_example_r_t_x__tutorial.html", null ], + [ "Building the CMSIS-RTOS RTX Library", "_creating__r_t_x__l_i_b.html", null ], + [ "Function Overview", "_function_overview.html", [ + [ "Timout Value", "_function_overview.html#CMSIS_RTOS_TimeOutValue", null ], + [ "Calls from Interrupt Service Routines", "_function_overview.html#CMSIS_RTOS_ISR_Calls", null ] + ] ], + [ "Reference", "modules.html", "modules" ], + [ "Data Structures", "annotated.html", "annotated" ], + [ "Data Structure Index", "classes.html", null ], + [ "Data Fields", "functions.html", [ + [ "All", "functions.html", null ], + [ "Variables", "functions_vars.html", null ] + ] ] + ] ] +]; + +var NAVTREEINDEX = +[ +"_configure.html" +]; + +var SYNCONMSG = 'click to disable panel synchronisation'; +var SYNCOFFMSG = 'click to enable panel synchronisation'; +var navTreeSubIndices = new Array(); + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + if ($.browser.msie && $.browser.version<=8) { + // script.onload does work with older versions of IE + script.onreadystatechange = function() { + if (script.readyState=='complete' || script.readyState=='loaded') { + func(); if (show) showRoot(); + } + } + } + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + if (node.parentNode && node.parentNode.parentNode) { + createIndent(o,domNode,node.parentNode,level+1); + } + var imgNode = document.createElement("img"); + imgNode.width = 16; + imgNode.height = 22; + if (level==0 && node.childrenData) { + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2plastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2pnode.png"; + } + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + domNode.appendChild(imgNode); + } + if (level==0) { + if (node.isLast) { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2plastnode.png"; + } else { + imgNode.src = node.relpath+"ftv2lastnode.png"; + domNode.appendChild(imgNode); + } + } else { + if (node.childrenData) { + imgNode.src = node.relpath+"ftv2pnode.png"; + } else { + imgNode.src = node.relpath+"ftv2node.png"; + domNode.appendChild(imgNode); + } + } + } else { + if (node.isLast) { + imgNode.src = node.relpath+"ftv2blank.png"; + } else { + imgNode.src = node.relpath+"ftv2vertline.png"; + } + } + imgNode.border = "0"; +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath($(location).attr('pathname')); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : '#'; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var pos, anchor = $(aname), docContent = $('#doc-content'); + if (anchor.parent().attr('class')=='memItemLeft') { + pos = anchor.parent().position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + window.location.replace(aname); + }); + } + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',0,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } if (imm || ($.browser.msie && $.browser.version>8)) { + // somehow slideDown jumps to the start of tree for IE9 :-( + $(node.getChildrenUL()).show(); + } else { + $(node.getChildrenUL()).slideDown("fast"); + } + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var anchor = $($(location).attr('hash')); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+ + window.location.hash.substring(1)+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parents().slice(2).prop('tagName')=='TR') { + glowEffect(anchor.parents('div.memitem'),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).show(); + if (node.isLast) { + node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + } else { + node.plus_img.src = node.relpath+"ftv2mnode.png"; + } + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1]; + else hash=''; + } + if (root==NAVTREE[0][1]) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + //root=root.replace(/_source\./,'.'); // source link to doc link + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash')); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("img"); + o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.width = 16; + o.node.plus_img.height = 22; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + navTo(o,toroot,window.location.hash,relpath); + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath($(location).attr('pathname'))+':'+ + $(location).attr('hash').substring(1); + a=$('.item a[class$="'+clslink+'"]'); + } + if (a==null || !$(a).parent().parent().hasClass('selected')){ + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + } + var link=stripPath2($(location).attr('pathname')); + navTo(o,link,$(location).attr('hash'),relpath); + } + }) + + $(window).load(showRoot); +} + diff --git a/CMSIS/Documentation/RTX/html/navtreeindex0.js b/CMSIS/Documentation/RTX/html/navtreeindex0.js new file mode 100644 index 0000000..c105d9f --- /dev/null +++ b/CMSIS/Documentation/RTX/html/navtreeindex0.js @@ -0,0 +1,194 @@ +var NAVTREEINDEX0 = +{ +"_configure.html":[3], +"_creating__r_t_x__l_i_b.html":[5], +"_example_r_t_x__tutorial.html":[4], +"_files.html":[0,1], +"_files.html#Folders":[0,1,0], +"_files.html#LibFiles":[0,1,1], +"_files.html#RTX_Conf_CM":[0,1,2], +"_function_overview.html":[6], +"_function_overview.html#CMSIS_RTOS_ISR_Calls":[6,1], +"_function_overview.html#CMSIS_RTOS_TimeOutValue":[6,0], +"_low_power.html":[3,3], +"_low_power.html#TickLess":[3,3,0], +"_m_i_s_r_a_compliance.html":[0,3], +"_overview.html":[0], +"_s_v_c_functions.html":[3,4], +"_system_config.html":[3,2], +"_system_config.html#ISRFIFO":[3,2,2], +"_system_config.html#RoundRobin":[3,2,0], +"_system_config.html#UserTimer":[3,2,1], +"_technical_data.html":[0,2], +"_technical_data.html#osWait":[0,2,0], +"_theory.html":[0,0], +"_theory.html#KernelTimer":[0,0,0], +"_theory.html#PriorityInversion":[0,0,2], +"_theory.html#RTX_Threads":[0,0,1], +"_theory.html#isr_function_calls":[0,0,3], +"_thread_config.html":[3,0], +"_thread_config.html#ProcessorMode":[3,0,3], +"_thread_config.html#StackCheck":[3,0,1], +"_thread_config.html#StackConfig":[3,0,0], +"_thread_config.html#StackUsage":[3,0,2], +"_timer_tick.html":[3,1], +"_timer_tick.html#AltTimer":[3,1,0], +"_using.html":[2], +"_using.html#DefRefObj":[2,0], +"annotated.html":[8], +"classes.html":[9], +"functions.html":[10,0], +"functions_vars.html":[10,1], +"group___c_m_s_i_s___r_t_o_s.html":[7,0], +"group___c_m_s_i_s___r_t_o_s___definitions.html":[7,0,11], +"group___c_m_s_i_s___r_t_o_s___definitions.html#a0b9f8fd3645f01d8cb09cae82add2d7f":[7,0,11,0,7], +"group___c_m_s_i_s___r_t_o_s___definitions.html#a117104b82864d3b23ec174af6d392709":[7,0,11,0,3], +"group___c_m_s_i_s___r_t_o_s___definitions.html#a596b6d55c3321db19239256bbe403df6":[7,0,11,0,0], +"group___c_m_s_i_s___r_t_o_s___definitions.html#a9e0a00edabf3b8a5dafff624fff7bbfc":[7,0,11,0,6], +"group___c_m_s_i_s___r_t_o_s___definitions.html#ac86175a4b1706bee596f3018322df26e":[7,0,11,0,1], +"group___c_m_s_i_s___r_t_o_s___definitions.html#ad0dda1bf7e74f1576261d493fba232b6":[7,0,11,0,4], +"group___c_m_s_i_s___r_t_o_s___definitions.html#ad477a289f1f03ac45407b64268d707d3":[7,0,11,0,5], +"group___c_m_s_i_s___r_t_o_s___definitions.html#af394cbe21dde7377974e63af38cd87b0":[7,0,11,0,2], +"group___c_m_s_i_s___r_t_o_s___definitions.html#structos__mail_q":[7,0,11,1], +"group___c_m_s_i_s___r_t_o_s___definitions.html#structos_event":[7,0,11,0], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html":[7,0,0], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga22f7d235bc9f783933bd5a981fd79696":[7,0,0,2], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga3b571de44cd3094c643247a7397f86b5":[7,0,0,8], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga47cf03658f01cdffca688e9096b58289":[7,0,0,4], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga4f74ed918c795e909dc1cea0040fd3b7":[7,0,0,1], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga53d078a801022e202e8115c083ece68e":[7,0,0,7], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga702196bacccbb978620c736b209387f1":[7,0,0,0], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga9e0954d52722673e2031233a2ab99960":[7,0,0,5], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gaab668ffd2ea76bb0a77ab0ab385eaef2":[7,0,0,9], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gad0262e4688e95d1e9038afd9bcc16001":[7,0,0,10], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae12c190af42d7310d8006d64f4ed5a88":[7,0,0,6], +"group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae554ec16c23c5b7d65affade2a351891":[7,0,0,3], +"group___c_m_s_i_s___r_t_o_s___mail.html":[7,0,9], +"group___c_m_s_i_s___r_t_o_s___mail.html#ga27c1060cf21393f96b4fd1ed1c0167cc":[7,0,9,6], +"group___c_m_s_i_s___r_t_o_s___mail.html#ga485ef6f81854ebda8ffbce4832181e02":[7,0,9,8], +"group___c_m_s_i_s___r_t_o_s___mail.html#ga58d712b16c0c6668059f509386d1e55b":[7,0,9,2], +"group___c_m_s_i_s___r_t_o_s___mail.html#ga8fde74f6fe5b9e88f75cc5eb8f2124fd":[7,0,9,4], +"group___c_m_s_i_s___r_t_o_s___mail.html#gaa177e7fe5820dd70d8c9e46ded131174":[7,0,9,5], +"group___c_m_s_i_s___r_t_o_s___mail.html#gac6ad7e6e7d6c4a80e60da22c57a42ccd":[7,0,9,7], +"group___c_m_s_i_s___r_t_o_s___mail.html#gaceb2e0071ce160d153047f2eac1aca8e":[7,0,9,0], +"group___c_m_s_i_s___r_t_o_s___mail.html#gad2deeb66d51ade54e63d8f87ff2ec9d2":[7,0,9,1], +"group___c_m_s_i_s___r_t_o_s___mail.html#gadf5ce811bd6a56e617e902a1db6c2194":[7,0,9,3], +"group___c_m_s_i_s___r_t_o_s___message.html":[7,0,8], +"group___c_m_s_i_s___r_t_o_s___message.html#ga2d446a0b4bb90bf05d6f92eedeaabc97":[7,0,8,1], +"group___c_m_s_i_s___r_t_o_s___message.html#ga479a6561f859e3d4818e25708593d203":[7,0,8,0], +"group___c_m_s_i_s___r_t_o_s___message.html#ga6c6892b8f2296cca6becd57ca2d7e1ae":[7,0,8,4], +"group___c_m_s_i_s___r_t_o_s___message.html#gac0dcf462fc92de8ffaba6cc004514a6d":[7,0,8,5], +"group___c_m_s_i_s___r_t_o_s___message.html#gac9a6a6276c12609793e7701afcc82326":[7,0,8,2], +"group___c_m_s_i_s___r_t_o_s___message.html#gaf3b9345cf426304d46565152bc26fb78":[7,0,8,3], +"group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html":[7,0,5], +"group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga006e4744d741e8e132c3d5bbc295afe1":[7,0,5,4], +"group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga1122a86faa64b4a0880c76cf68d0c934":[7,0,5,0], +"group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5c9de56e717016e39e788064e9a291cc":[7,0,5,2], +"group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5e1752b73f573ee015dbd9ef1edaba13":[7,0,5,5], +"group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga9b522438489d7c402c95332b58bc94f3":[7,0,5,1], +"group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#gac27e24135185d51d18f3dabc20910219":[7,0,5,3], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html":[7,0,7], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga34af5c4f4ab38f4138ea7f1f9ece3a1a":[7,0,7,5], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga4a861e9c469c9d0daf5721bf174f8e54":[7,0,7,6], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga5f0b204a82327533d420210125c90697":[7,0,7,1], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga87b471d4fe2d5dbd0040708edd52771b":[7,0,7,2], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga9f129fcad4730fbd1048ad4fa262f36a":[7,0,7,4], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gaa0b2994f1a866c19e0d11e6e0d44f543":[7,0,7,3], +"group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gadd84b683001de327894851b428587caa":[7,0,7,0], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html":[7,0,6], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga03761ee8d2c3cd4544e18364ab301dac":[7,0,6,1], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga7da4c7bfb340779c9fc7b321f5ab3e3a":[7,0,6,0], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga97381e8e55cd47cec390bf57c96d6edb":[7,0,6,3], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga9e66fe361749071e5ab87826c43c2f1b":[7,0,6,2], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gab108914997c49e14d8ff1ae0d1988ca0":[7,0,6,5], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gabae2801ac2c096f6e8c69a264908f595":[7,0,6,4], +"group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gacc15b0fc8ce1167fe43da33042e62098":[7,0,6,6], +"group___c_m_s_i_s___r_t_o_s___signal_mgmt.html":[7,0,4], +"group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga01edde265710d883b6e237d34a6ef4a6":[7,0,4,0], +"group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga38860acda96df47da6923348d96fc4c9":[7,0,4,3], +"group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga3de2730654589d6c3559c4b9e2825553":[7,0,4,2], +"group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga87283a6ebc31ce9ed42baf3ea7e4eab6":[7,0,4,1], +"group___c_m_s_i_s___r_t_o_s___status.html":[7,0,12], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99e":[7,0,12,0], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea15b12e42b42b53f35fb8a2724ad02926":[7,0,12,0,3], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea21635bdc492d3094fe83027fa4a30e2f":[7,0,12,0,8], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea314d24a49003f09459035db0dd7c9467":[7,0,12,0,7], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea4672c8a0c0f6bb1d7981da4602e8e9ee":[7,0,12,0,12], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5df7e9643aa8a2f5f3a6f6ec59758518":[7,0,12,0,1], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5fde24ff588ec5ab9cb8314bade26fbc":[7,0,12,0,13], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea78f477732375c0e1fca814e369618177":[7,0,12,0,4], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea8fc5801e8b0482bdf22ad63a77f0155d":[7,0,12,0,6], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea9e1c9e2550bb4de8969a935acffc968f":[7,0,12,0,0], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eab7dda0ef504817659334cbfd650ae56f":[7,0,12,0,10], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac24adca6a5d072c9f01c32178ba0d109":[7,0,12,0,5], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac7a77f5fe18a15a357790c36a4aca1b1":[7,0,12,0,14], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ead604f3673359dd4ac643b16dc5a2c342":[7,0,12,0,2], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf1fac0240218e51eb30a13da2f8aae81":[7,0,12,0,11], +"group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf6552310a817452aedfcd453f2805d65":[7,0,12,0,9], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html":[7,0,1], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga0dfb90ccf1f6e4b54b9251b12d1cbc8b":[7,0,1,6], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga4299d838978bc2aae5e4350754e6a4e9":[7,0,1,5], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849a":[7,0,1,2], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa1485dec3702434a1ec3cb74c7a17a4af":[7,0,1,2,6], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa17b36cd9cd38652c2bc6d4803990674b":[7,0,1,2,4], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa193b650117c209b4a203954542bcc3e6":[7,0,1,2,2], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa45a2895ad30c79fb97de18cac7cc19f1":[7,0,1,2,3], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa549e79a43ff4f8b2b31afb613f5caa81":[7,0,1,2,0], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa61cb822239ac8f66dfbdc7291598a3d4":[7,0,1,2,1], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa914433934143a9ba767e59577c56e6c2":[7,0,1,2,5], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aae35f5e2f9c64ad346822521b643bdea4":[7,0,1,2,7], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gab1df2a28925862ef8f9cf4e1c995c5a7":[7,0,1,4], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gac59b5713cb083702dce759c73fd90dff":[7,0,1,3], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaea135bb90eb853eff39e0800b91bbeab":[7,0,1,7], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaee93d929beb350f16e5cc7fa602e229f":[7,0,1,1], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf0c7c6b5e09f8be198312144b5c9e453":[7,0,1,0], +"group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf13a667493c5d629a90c13e113b99233":[7,0,1,8], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html":[7,0,3], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1b8d670eaf964b2910fa06885e650678":[7,0,3,0], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1c720627e08d1cc1afcad44e799ed492":[7,0,3,1], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga27a797a401b068e2644d1125f22a07ca":[7,0,3,5], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga58f36b121a812936435cacc6e1e0e091":[7,0,3,6], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga746b8043d906849bd65e3900fcb483cf":[7,0,3,4], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9":[7,0,3,2], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ab9c91f9699162edb09bb7c90c11c8788":[7,0,3,2,1], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ad21712f8df5f97069c82dc9eec37b951":[7,0,3,2,0], +"group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gaedd312bfdca04e0b8162b666e09a1ae6":[7,0,3,3], +"group___c_m_s_i_s___r_t_o_s___wait.html":[7,0,2], +"group___c_m_s_i_s___r_t_o_s___wait.html#ga02e19d5e723bfb06ba9324d625162255":[7,0,2,0], +"group___r_t_x___global___functions.html":[7,0,10], +"group___r_t_x___global___functions.html#ga145e7eafdd042bb522020cbb3b469d9c":[7,0,10,4], +"group___r_t_x___global___functions.html#ga1b85a217d43e6b971ffcf24f8aae1c33":[7,0,10,2], +"group___r_t_x___global___functions.html#ga3e9c57746ccbdfe90464ad50513c569e":[7,0,10,3], +"group___r_t_x___global___functions.html#ga567543bf38239a91f09751686c23017b":[7,0,10,7], +"group___r_t_x___global___functions.html#ga651ae76b3acf45f80bf0e0487b51d6e6":[7,0,10,0], +"group___r_t_x___global___functions.html#ga85dab8408f27236c7341a69feb6258c7":[7,0,10,5], +"group___r_t_x___global___functions.html#gad5deddec3fea0fb31798f571afc3c692":[7,0,10,6], +"group___r_t_x___global___functions.html#gafb4dc4d3dff8343a393726d2860282e4":[7,0,10,1], +"index.html":[], +"modules.html":[7], +"pages.html":[], +"rtx_revision_history.html":[1], +"structos_mail_q_def__t.html":[8,0], +"structos_mail_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c":[8,0,1], +"structos_mail_q_def__t.html#a4c2a0c691de3365c00ecd22d8102811f":[8,0,0], +"structos_mail_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0":[8,0,2], +"structos_message_q_def__t.html":[8,1], +"structos_message_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c":[8,1,0], +"structos_message_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0":[8,1,1], +"structos_mutex_def__t.html":[8,2], +"structos_mutex_def__t.html#aef475bb63aad7508c7dffe80ad332e4e":[8,2,0], +"structos_pool_def__t.html":[8,3], +"structos_pool_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c":[8,3,1], +"structos_pool_def__t.html#a4c2a0c691de3365c00ecd22d8102811f":[8,3,0], +"structos_pool_def__t.html#ac112e786b2a234e0e45cb5bdbee53763":[8,3,2], +"structos_semaphore_def__t.html":[8,4], +"structos_semaphore_def__t.html#a83324f0a93a76a6c99f5a21bbe9d9209":[8,4,0], +"structos_thread_def__t.html":[8,5], +"structos_thread_def__t.html#a15da8f23c6fe684b70a73646ada685e7":[8,5,3], +"structos_thread_def__t.html#a950b7f81ad4711959517296e63bc79d1":[8,5,2], +"structos_thread_def__t.html#aa4c4115851a098c0b87358ab6c025603":[8,5,0], +"structos_thread_def__t.html#ad3c9624ee214329fb34e71f544a6933e":[8,5,1], +"structos_timer_def__t.html":[8,6], +"structos_timer_def__t.html#a15773df83aba93f8e61f3737af5fae47":[8,6,0], +"structos_timer_def__t.html#a7107c9a80d9b4991d437133827e35839":[8,6,1] +}; diff --git a/CMSIS/Documentation/RTX/html/open.png b/CMSIS/Documentation/RTX/html/open.png new file mode 100644 index 0000000..30f75c7 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/open.png differ diff --git a/CMSIS/Documentation/RTX/html/own_lib_projwin.png b/CMSIS/Documentation/RTX/html/own_lib_projwin.png new file mode 100644 index 0000000..7373a18 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/own_lib_projwin.png differ diff --git a/CMSIS/Documentation/RTX/html/pages.html b/CMSIS/Documentation/RTX/html/pages.html new file mode 100644 index 0000000..b8f519d --- /dev/null +++ b/CMSIS/Documentation/RTX/html/pages.html @@ -0,0 +1,132 @@ + + + + + +Usage and Description +CMSIS-RTOS RTX: Usage and Description + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Usage and Description
    +
    +
    +
    Here is a list of all related documentation pages:
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/printComponentTabs.js b/CMSIS/Documentation/RTX/html/printComponentTabs.js new file mode 100644 index 0000000..64d846b --- /dev/null +++ b/CMSIS/Documentation/RTX/html/printComponentTabs.js @@ -0,0 +1,36 @@ +var strgURL = location.pathname; // path of current component + +// constuctor for the array of objects +function tabElement(id, folderName, tabTxt ) { + this.id = id; // elementID as needed in html; + this.folderName = folderName; // folder name of the component + this.tabTxt = tabTxt; // Text displayed as menu on the web + this.currentListItem = '
  • ' + this.tabTxt + '
  • '; + this.listItem = '
  • ' + this.tabTxt + '
  • '; +}; + +// array of objects +var arr = []; + +// fill array + arr.push( new tabElement( "GEN", "/General/html/", "General") ); + arr.push( new tabElement( "CORE", "/Core/html/", "Core") ); + arr.push( new tabElement( "DRV", "/Driver/html/", "Driver") ); + arr.push( new tabElement( "DSP", "/DSP/html/", "DSP") ); + arr.push( new tabElement( "RTOS", "/RTOS/html/", "RTOS API") ); + arr.push( new tabElement( "RTX", "/RTX/html/", "RTX") ); + arr.push( new tabElement( "PACK", "/Pack/html/", "Pack") ); + arr.push( new tabElement( "SVD", "/SVD/html/", "SVD") ); + arr.push( new tabElement( "DAP", "/DAP/html/", "DAP") ); + +// write tabs +// called from the header file. +function writeComponentTabs() { + for ( var i=0; i < arr.length; i++ ) { + if (strgURL.search(arr[i].folderName) > 0) { // if this is the current folder + document.write(arr[i].currentListItem); // then print and hightlight the tab + } else { + document.write(arr[i].listItem); // else, print the tab + } + } +}; diff --git a/CMSIS/Documentation/RTX/html/project_window.png b/CMSIS/Documentation/RTX/html/project_window.png new file mode 100644 index 0000000..0846b93 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/project_window.png differ diff --git a/CMSIS/Documentation/RTX/html/resize.js b/CMSIS/Documentation/RTX/html/resize.js new file mode 100644 index 0000000..9fe82ba --- /dev/null +++ b/CMSIS/Documentation/RTX/html/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).width(); + content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.height(); + var footerHeight = footer.height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/CMSIS/Documentation/RTX/html/rtx_8txt.html b/CMSIS/Documentation/RTX/html/rtx_8txt.html new file mode 100644 index 0000000..0ada468 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/rtx_8txt.html @@ -0,0 +1,129 @@ + + + + + +rtx.txt File Reference +CMSIS-RTOS RTX: rtx.txt File Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/CMSIS/Documentation/RTX/html/rtx_revision_history.html b/CMSIS/Documentation/RTX/html/rtx_revision_history.html new file mode 100644 index 0000000..09ba9d2 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/rtx_revision_history.html @@ -0,0 +1,190 @@ + + + + + +Revision History +CMSIS-RTOS RTX: Revision History + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    Revision History
    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Version Description
    V4.80 Restored time delay parameter 'millisec' old behavior (before V4.79) for software compatibility.
    + Corrected: implicit mutex release when mutex owner thread is terminated.
    +
    V4.79 Corrected: time delay parameter ‘millisec’ in all functions (osDelay, osSignalWait, …) is now treated as lower bound – wait for at least time given (before it could have been up to 1ms less).
    + Corrected: Lazy Context switching for Cortex-M4 with FPU could lead to a crash when thread which used FPU was terminated.
    + Corrected: osMailCAlloc only cleared the allocated memory block if it was available without waiting.
    + Corrected: osThreadCreate function returns NULL when trying to create more concurrent threads than defined in the configuration.
    + Improved source code MISRA compliance.
    +
    V4.78 Corrected: osTimerStart function accepts full 32-bit range for time delay value in milisec.
    + Added: User Timer Callback Queue overflow reported through os_error(OS_ERROR_TIMER_OVF).
    +
    V4.77 Added: Stack usage watermark.
    +
    V4.76 Optimized Service calls in GCC libraries.
    + Corrected: Stack/Heap regions can be used with scatter loading.
    +
    V4.75 Corrected: Service calls for Cortex-M4 with Floating Point for GCC.
    + Corrected: osSignalClear returns 0x80000000 when called from interrupt service routines.
    + Corrected: C standard library memory functions (malloc, free, ...) can be called between calls to osKernelInitialize and osKernelStart.
    + Corrected: Interrupt Priority Group can be configured between calls to osKernelInitialize and osKernelStart.
    +
    V4.74 Corrected: osKernelInitialize and osKernelStart when called from main which is already a thread.
    +
    V4.73 Corrected: mutex priority inversion when thread owns more than one mutex.
    + Added: RTX extensions os_suspend and os_resume.
    + Added: RTX os_error template.
    V4.72 Corrected: object initialization when defined inside function (allocated on stack and not as static memory).
    V4.71 Corrected: osMailFree behaviour when osMailAlloc timed out.
    V4.70 Added: New control functions for short timeouts in microsecond resolution osKernelSysTick, osKernelSysTickFrequency, osKernelSysTickMicroSec.
    + Removed: osSignalGet.
    V4.61 Enhanced: osTimerCreate can now be called after osKernelInitialize (before only after osKernelStart).
    + Corrected: Initialization of alternative kernel timer for Cortex-M0/M0+/M1 (when SysTick timer is not used).
    + Corrected: Message/Mail Queue behavior when timeout expires.
    V4.51 Corrected: problem with osKernelInitialize when after the call high priority threads are defined.
    V4.50 Based on CMSIS-RTOS API Version 1.01 and the classic RTX V4.50 Kernel.
    + Added: osTimerDelete, osMutexDelete, osSemaphoreDelete.
    + Added: osKernelInitialize that prepares the Kernel for object creation.
    + Added: support for Low Power Cortex-M applications based on new configuration functions: os_suspend, os_resume.
    + Added: support for peripheral timer to be used as OS tick timer instead of Core SysTick timer.
    + Corrected: stack checking did not work for os_tsk_delete_self function Preview Release.
    V4.20 Initial CMSIS-RTOS adaption of the RTX Kernel.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/search/all_62.html b/CMSIS/Documentation/RTX/html/search/all_62.html new file mode 100644 index 0000000..ee8871c --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_62.js b/CMSIS/Documentation/RTX/html/search/all_62.js new file mode 100644 index 0000000..72c5d0e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_62.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['building_20the_20cmsis_2drtos_20rtx_20library',['Building the CMSIS-RTOS RTX Library',['../_creating__r_t_x__l_i_b.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_63.html b/CMSIS/Documentation/RTX/html/search/all_63.html new file mode 100644 index 0000000..56b5ad1 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_63.js b/CMSIS/Documentation/RTX/html/search/all_63.js new file mode 100644 index 0000000..0078fb4 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_63.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['cmsis_5fos_2eh',['cmsis_os.h',['../cmsis__os_8h.html',1,'']]], + ['cmsis_5fos_5fapi_2etxt',['cmsis_os_api.txt',['../cmsis__os__api_8txt.html',1,'']]], + ['cmsis_2drtos_20api_20_28rtx_29',['CMSIS-RTOS API (RTX)',['../group___c_m_s_i_s___r_t_o_s.html',1,'']]], + ['configuration_20of_20cmsis_2drtos_20rtx',['Configuration of CMSIS-RTOS RTX',['../_configure.html',1,'index']]], + ['cmsis_2drtos_20rtx_20tutorial',['CMSIS-RTOS RTX Tutorial',['../_example_r_t_x__tutorial.html',1,'index']]], + ['configuration_20for_20low_2dpower_20modes',['Configuration for Low-Power Modes',['../_low_power.html',1,'Configure']]], + ['create_20a_20cmsis_2drtos_20rtx_20project',['Create a CMSIS-RTOS RTX Project',['../_using.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_64.html b/CMSIS/Documentation/RTX/html/search/all_64.html new file mode 100644 index 0000000..b53ff08 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_64.js b/CMSIS/Documentation/RTX/html/search/all_64.js new file mode 100644 index 0000000..c36f3e9 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_64.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['def',['def',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a596b6d55c3321db19239256bbe403df6',1,'osEvent']]], + ['directory_20structure_20and_20file_20overview',['Directory Structure and File Overview',['../_files.html',1,'Overview']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_66.html b/CMSIS/Documentation/RTX/html/search/all_66.html new file mode 100644 index 0000000..3d1f8b3 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_66.js b/CMSIS/Documentation/RTX/html/search/all_66.js new file mode 100644 index 0000000..3125c1e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['function_20overview',['Function Overview',['../_function_overview.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_67.html b/CMSIS/Documentation/RTX/html/search/all_67.html new file mode 100644 index 0000000..41a459a --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_67.js b/CMSIS/Documentation/RTX/html/search/all_67.js new file mode 100644 index 0000000..8233358 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_67.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['generic_20data_20types_20and_20definitions',['Generic Data Types and Definitions',['../group___c_m_s_i_s___r_t_o_s___definitions.html',1,'']]], + ['generic_20wait_20function',['Generic Wait Function',['../group___c_m_s_i_s___r_t_o_s___wait.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_69.html b/CMSIS/Documentation/RTX/html/search/all_69.html new file mode 100644 index 0000000..1a00b55 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_69.js b/CMSIS/Documentation/RTX/html/search/all_69.js new file mode 100644 index 0000000..db14a54 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_69.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['instances',['instances',['../structos_thread_def__t.html#aa4c4115851a098c0b87358ab6c025603',1,'osThreadDef_t']]], + ['item_5fsz',['item_sz',['../structos_pool_def__t.html#a4c2a0c691de3365c00ecd22d8102811f',1,'osPoolDef_t::item_sz()'],['../structos_mail_q_def__t.html#a4c2a0c691de3365c00ecd22d8102811f',1,'osMailQDef_t::item_sz()']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_6b.html b/CMSIS/Documentation/RTX/html/search/all_6b.html new file mode 100644 index 0000000..571dadb --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_6b.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_6b.js b/CMSIS/Documentation/RTX/html/search/all_6b.js new file mode 100644 index 0000000..83362d7 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_6b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['kernel_20information_20and_20control',['Kernel Information and Control',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_6d.html b/CMSIS/Documentation/RTX/html/search/all_6d.html new file mode 100644 index 0000000..2e27d4d --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_6d.js b/CMSIS/Documentation/RTX/html/search/all_6d.js new file mode 100644 index 0000000..192a3e5 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_6d.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['mail_20queue_20management',['Mail Queue Management',['../group___c_m_s_i_s___r_t_o_s___mail.html',1,'']]], + ['message_20queue_20management',['Message Queue Management',['../group___c_m_s_i_s___r_t_o_s___message.html',1,'']]], + ['mutex_20management',['Mutex Management',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html',1,'']]], + ['memory_20pool_20management',['Memory Pool Management',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html',1,'']]], + ['mail_5fid',['mail_id',['../group___c_m_s_i_s___r_t_o_s___definitions.html#ac86175a4b1706bee596f3018322df26e',1,'osEvent']]], + ['message_5fid',['message_id',['../group___c_m_s_i_s___r_t_o_s___definitions.html#af394cbe21dde7377974e63af38cd87b0',1,'osEvent']]], + ['misra_2dc_3a2004_20compliance_20exceptions',['MISRA-C:2004 Compliance Exceptions',['../_m_i_s_r_a_compliance.html',1,'Overview']]], + ['mutex',['mutex',['../structos_mutex_def__t.html#aef475bb63aad7508c7dffe80ad332e4e',1,'osMutexDef_t']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_6f.html b/CMSIS/Documentation/RTX/html/search/all_6f.html new file mode 100644 index 0000000..61827e8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_6f.js b/CMSIS/Documentation/RTX/html/search/all_6f.js new file mode 100644 index 0000000..11c4e52 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_6f.js @@ -0,0 +1,149 @@ +var searchData= +[ + ['os_5fclock',['OS_CLOCK',['../_r_t_x___conf___c_m_8c.html#adff23afdf544a322a38314870f8848b9',1,'RTX_Conf_CM.c']]], + ['os_5ferror',['os_error',['../group___r_t_x___global___functions.html#ga651ae76b3acf45f80bf0e0487b51d6e6',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5ffifo_5fovf',['OS_ERROR_FIFO_OVF',['../_r_t_x___conf___c_m_8c.html#a075d54df14c85a6afe32b7f5c99c9c29',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5fmbx_5fovf',['OS_ERROR_MBX_OVF',['../_r_t_x___conf___c_m_8c.html#ab715d7d66c341c067ef0a97b55db8a10',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5fstack_5fovf',['OS_ERROR_STACK_OVF',['../_r_t_x___conf___c_m_8c.html#abf8311a7a239ec56c6d725f926ba766d',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5ftimer_5fovf',['OS_ERROR_TIMER_OVF',['../_r_t_x___conf___c_m_8c.html#a79d7e388d951f11bd0dabd13f722cea8',1,'RTX_Conf_CM.c']]], + ['os_5ffifosz',['OS_FIFOSZ',['../_r_t_x___conf___c_m_8c.html#a93c8e36d441750016f9f72e102f68d66',1,'RTX_Conf_CM.c']]], + ['os_5fidle_5fdemon',['os_idle_demon',['../group___r_t_x___global___functions.html#gafb4dc4d3dff8343a393726d2860282e4',1,'RTX_Conf_CM.c']]], + ['os_5finregs',['os_InRegs',['../cmsis__os_8h.html#ac6b67612d20f480bef2d76bb64e95be8',1,'cmsis_os.h']]], + ['os_5fmailq',['os_mailQ',['../group___c_m_s_i_s___r_t_o_s___definitions.html#structos__mail_q',1,'']]], + ['os_5fmainstksize',['OS_MAINSTKSIZE',['../_r_t_x___conf___c_m_8c.html#a95362a96f44d4314f148ae24edd52f7c',1,'RTX_Conf_CM.c']]], + ['os_5fmutexcnt',['OS_MUTEXCNT',['../_r_t_x___conf___c_m_8c.html#ad11cf133eea28b601f9a63cd9af9b786',1,'RTX_Conf_CM.c']]], + ['os_5fprivcnt',['OS_PRIVCNT',['../_r_t_x___conf___c_m_8c.html#a7cfcbf2c4f9d0a63424a2a48592955b1',1,'RTX_Conf_CM.c']]], + ['os_5fprivstksize',['OS_PRIVSTKSIZE',['../_r_t_x___conf___c_m_8c.html#a6e0d30986e4ae0df44f449a4b3b0fbec',1,'RTX_Conf_CM.c']]], + ['os_5fpthread',['os_pthread',['../cmsis__os_8h.html#aee631e5ea1b700fc35695cc7bc574cf7',1,'cmsis_os.h']]], + ['os_5fptimer',['os_ptimer',['../cmsis__os_8h.html#aa2d85e49bde9f6951ff3545cd323f065',1,'cmsis_os.h']]], + ['os_5fresume',['os_resume',['../group___r_t_x___global___functions.html#ga1b85a217d43e6b971ffcf24f8aae1c33',1,'cmsis_os.h']]], + ['os_5frobin',['OS_ROBIN',['../_r_t_x___conf___c_m_8c.html#ae34f3058383d9fa9280bbf595618ab0a',1,'RTX_Conf_CM.c']]], + ['os_5frobintout',['OS_ROBINTOUT',['../_r_t_x___conf___c_m_8c.html#ad89fdd7232cfba74d400080b6bcc0012',1,'RTX_Conf_CM.c']]], + ['os_5frunpriv',['OS_RUNPRIV',['../_r_t_x___conf___c_m_8c.html#a786924d58be54e943a7e73458cebc51b',1,'RTX_Conf_CM.c']]], + ['os_5fstatus_5freserved',['os_status_reserved',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac7a77f5fe18a15a357790c36a4aca1b1',1,'cmsis_os.h']]], + ['os_5fstkcheck',['OS_STKCHECK',['../_r_t_x___conf___c_m_8c.html#a6ef9e00396f881f0fa9ac877150e5962',1,'RTX_Conf_CM.c']]], + ['os_5fstkinit',['OS_STKINIT',['../_r_t_x___conf___c_m_8c.html#ac820623da739e4219ee86f15bdcd9752',1,'RTX_Conf_CM.c']]], + ['os_5fstksize',['OS_STKSIZE',['../_r_t_x___conf___c_m_8c.html#a16495c133349f3e7c27ac933857c1a8c',1,'RTX_Conf_CM.c']]], + ['os_5fsuspend',['os_suspend',['../group___r_t_x___global___functions.html#ga3e9c57746ccbdfe90464ad50513c569e',1,'cmsis_os.h']]], + ['os_5ftaskcnt',['OS_TASKCNT',['../_r_t_x___conf___c_m_8c.html#a309353d912327b7f4a2300711ee1b349',1,'RTX_Conf_CM.c']]], + ['os_5ftick',['OS_TICK',['../_r_t_x___conf___c_m_8c.html#ab6b10bd6d60e95ab28c775757f6bfbcc',1,'RTX_Conf_CM.c']]], + ['os_5ftick_5finit',['os_tick_init',['../group___r_t_x___global___functions.html#ga145e7eafdd042bb522020cbb3b469d9c',1,'RTX_Conf_CM.c']]], + ['os_5ftick_5firqack',['os_tick_irqack',['../group___r_t_x___global___functions.html#ga85dab8408f27236c7341a69feb6258c7',1,'RTX_Conf_CM.c']]], + ['os_5ftick_5fovf',['os_tick_ovf',['../group___r_t_x___global___functions.html#gad5deddec3fea0fb31798f571afc3c692',1,'RTX_Conf_CM.c']]], + ['os_5ftick_5fval',['os_tick_val',['../group___r_t_x___global___functions.html#ga567543bf38239a91f09751686c23017b',1,'RTX_Conf_CM.c']]], + ['os_5ftimer_5ftype',['os_timer_type',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9',1,'os_timer_type(): cmsis_os_api.txt'],['../cmsis__os_8h.html#adac860eb9e1b4b0619271e6595ed83d9',1,'os_timer_type(): cmsis_os.h']]], + ['os_5ftimercbqs',['OS_TIMERCBQS',['../_r_t_x___conf___c_m_8c.html#a29701cff84a42494279367ad018f252d',1,'RTX_Conf_CM.c']]], + ['os_5ftimerprio',['OS_TIMERPRIO',['../_r_t_x___conf___c_m_8c.html#a90af874f1df4dfb0f8821cc2d860dae6',1,'RTX_Conf_CM.c']]], + ['os_5ftimers',['OS_TIMERS',['../_r_t_x___conf___c_m_8c.html#a23b0f1095632e58b5ac0d8f7dcfdfded',1,'RTX_Conf_CM.c']]], + ['os_5ftimerstksz',['OS_TIMERSTKSZ',['../_r_t_x___conf___c_m_8c.html#a76d1b01799981a753fc528e600015627',1,'RTX_Conf_CM.c']]], + ['os_5ftrv',['OS_TRV',['../_r_t_x___conf___c_m_8c.html#a9d55a070ddb219165bd4287f08318d51',1,'RTX_Conf_CM.c']]], + ['oscmsis',['osCMSIS',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga702196bacccbb978620c736b209387f1',1,'cmsis_os.h']]], + ['oscmsis_5frtx',['osCMSIS_RTX',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga4f74ed918c795e909dc1cea0040fd3b7',1,'cmsis_os.h']]], + ['osdelay',['osDelay',['../group___c_m_s_i_s___r_t_o_s___wait.html#ga02e19d5e723bfb06ba9324d625162255',1,'cmsis_os.h']]], + ['oserrorisr',['osErrorISR',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea21635bdc492d3094fe83027fa4a30e2f',1,'cmsis_os.h']]], + ['oserrorisrrecursive',['osErrorISRRecursive',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf6552310a817452aedfcd453f2805d65',1,'cmsis_os.h']]], + ['oserrornomemory',['osErrorNoMemory',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf1fac0240218e51eb30a13da2f8aae81',1,'cmsis_os.h']]], + ['oserroros',['osErrorOS',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5fde24ff588ec5ab9cb8314bade26fbc',1,'cmsis_os.h']]], + ['oserrorparameter',['osErrorParameter',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac24adca6a5d072c9f01c32178ba0d109',1,'cmsis_os.h']]], + ['oserrorpriority',['osErrorPriority',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eab7dda0ef504817659334cbfd650ae56f',1,'cmsis_os.h']]], + ['oserrorresource',['osErrorResource',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea8fc5801e8b0482bdf22ad63a77f0155d',1,'cmsis_os.h']]], + ['oserrortimeoutresource',['osErrorTimeoutResource',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea314d24a49003f09459035db0dd7c9467',1,'cmsis_os.h']]], + ['oserrorvalue',['osErrorValue',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea4672c8a0c0f6bb1d7981da4602e8e9ee',1,'cmsis_os.h']]], + ['osevent',['osEvent',['../group___c_m_s_i_s___r_t_o_s___definitions.html#structos_event',1,'']]], + ['oseventmail',['osEventMail',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea15b12e42b42b53f35fb8a2724ad02926',1,'cmsis_os.h']]], + ['oseventmessage',['osEventMessage',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ead604f3673359dd4ac643b16dc5a2c342',1,'cmsis_os.h']]], + ['oseventsignal',['osEventSignal',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5df7e9643aa8a2f5f3a6f6ec59758518',1,'cmsis_os.h']]], + ['oseventtimeout',['osEventTimeout',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea78f477732375c0e1fca814e369618177',1,'cmsis_os.h']]], + ['osfeature_5fmailq',['osFeature_MailQ',['../group___c_m_s_i_s___r_t_o_s___mail.html#gaceb2e0071ce160d153047f2eac1aca8e',1,'cmsis_os.h']]], + ['osfeature_5fmainthread',['osFeature_MainThread',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga22f7d235bc9f783933bd5a981fd79696',1,'cmsis_os.h']]], + ['osfeature_5fmessageq',['osFeature_MessageQ',['../group___c_m_s_i_s___r_t_o_s___message.html#ga479a6561f859e3d4818e25708593d203',1,'cmsis_os.h']]], + ['osfeature_5fpool',['osFeature_Pool',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gadd84b683001de327894851b428587caa',1,'cmsis_os.h']]], + ['osfeature_5fsemaphore',['osFeature_Semaphore',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga7da4c7bfb340779c9fc7b321f5ab3e3a',1,'cmsis_os.h']]], + ['osfeature_5fsignals',['osFeature_Signals',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga01edde265710d883b6e237d34a6ef4a6',1,'cmsis_os.h']]], + ['osfeature_5fsystick',['osFeature_SysTick',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae554ec16c23c5b7d65affade2a351891',1,'cmsis_os.h']]], + ['osfeature_5fwait',['osFeature_Wait',['../cmsis__os_8h.html#a6c97d38879ae86491628f6e647639bad',1,'cmsis_os.h']]], + ['oskernelinitialize',['osKernelInitialize',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga53d078a801022e202e8115c083ece68e',1,'cmsis_os.h']]], + ['oskernelrunning',['osKernelRunning',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga3b571de44cd3094c643247a7397f86b5',1,'cmsis_os.h']]], + ['oskernelstart',['osKernelStart',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gaab668ffd2ea76bb0a77ab0ab385eaef2',1,'cmsis_os.h']]], + ['oskernelsystemid',['osKernelSystemId',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga47cf03658f01cdffca688e9096b58289',1,'cmsis_os.h']]], + ['oskernelsystick',['osKernelSysTick',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gad0262e4688e95d1e9038afd9bcc16001',1,'cmsis_os.h']]], + ['oskernelsystickfrequency',['osKernelSysTickFrequency',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga9e0954d52722673e2031233a2ab99960',1,'cmsis_os.h']]], + ['oskernelsystickmicrosec',['osKernelSysTickMicroSec',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gae12c190af42d7310d8006d64f4ed5a88',1,'cmsis_os.h']]], + ['osmailalloc',['osMailAlloc',['../group___c_m_s_i_s___r_t_o_s___mail.html#gadf5ce811bd6a56e617e902a1db6c2194',1,'cmsis_os.h']]], + ['osmailcalloc',['osMailCAlloc',['../group___c_m_s_i_s___r_t_o_s___mail.html#ga8fde74f6fe5b9e88f75cc5eb8f2124fd',1,'cmsis_os.h']]], + ['osmailcreate',['osMailCreate',['../group___c_m_s_i_s___r_t_o_s___mail.html#gaa177e7fe5820dd70d8c9e46ded131174',1,'cmsis_os.h']]], + ['osmailfree',['osMailFree',['../group___c_m_s_i_s___r_t_o_s___mail.html#ga27c1060cf21393f96b4fd1ed1c0167cc',1,'cmsis_os.h']]], + ['osmailget',['osMailGet',['../group___c_m_s_i_s___r_t_o_s___mail.html#gac6ad7e6e7d6c4a80e60da22c57a42ccd',1,'cmsis_os.h']]], + ['osmailput',['osMailPut',['../group___c_m_s_i_s___r_t_o_s___mail.html#ga485ef6f81854ebda8ffbce4832181e02',1,'cmsis_os.h']]], + ['osmailq',['osMailQ',['../group___c_m_s_i_s___r_t_o_s___mail.html#gad2deeb66d51ade54e63d8f87ff2ec9d2',1,'cmsis_os.h']]], + ['osmailqdef',['osMailQDef',['../group___c_m_s_i_s___r_t_o_s___mail.html#ga58d712b16c0c6668059f509386d1e55b',1,'cmsis_os.h']]], + ['osmailqdef_5ft',['osMailQDef_t',['../structos_mail_q_def__t.html',1,'']]], + ['osmailqid',['osMailQId',['../cmsis__os_8h.html#a1dac049fb7725a8af8b26c71cbb373b5',1,'cmsis_os.h']]], + ['osmessagecreate',['osMessageCreate',['../group___c_m_s_i_s___r_t_o_s___message.html#gaf3b9345cf426304d46565152bc26fb78',1,'cmsis_os.h']]], + ['osmessageget',['osMessageGet',['../group___c_m_s_i_s___r_t_o_s___message.html#ga6c6892b8f2296cca6becd57ca2d7e1ae',1,'cmsis_os.h']]], + ['osmessageput',['osMessagePut',['../group___c_m_s_i_s___r_t_o_s___message.html#gac0dcf462fc92de8ffaba6cc004514a6d',1,'cmsis_os.h']]], + ['osmessageq',['osMessageQ',['../group___c_m_s_i_s___r_t_o_s___message.html#ga2d446a0b4bb90bf05d6f92eedeaabc97',1,'cmsis_os.h']]], + ['osmessageqdef',['osMessageQDef',['../group___c_m_s_i_s___r_t_o_s___message.html#gac9a6a6276c12609793e7701afcc82326',1,'cmsis_os.h']]], + ['osmessageqdef_5ft',['osMessageQDef_t',['../structos_message_q_def__t.html',1,'']]], + ['osmessageqid',['osMessageQId',['../cmsis__os_8h.html#ad9ec70c32c6c521970636b521e12d17f',1,'cmsis_os.h']]], + ['osmutex',['osMutex',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga1122a86faa64b4a0880c76cf68d0c934',1,'cmsis_os.h']]], + ['osmutexcreate',['osMutexCreate',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5c9de56e717016e39e788064e9a291cc',1,'cmsis_os.h']]], + ['osmutexdef',['osMutexDef',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga9b522438489d7c402c95332b58bc94f3',1,'cmsis_os.h']]], + ['osmutexdef_5ft',['osMutexDef_t',['../structos_mutex_def__t.html',1,'']]], + ['osmutexdelete',['osMutexDelete',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#gac27e24135185d51d18f3dabc20910219',1,'cmsis_os.h']]], + ['osmutexid',['osMutexId',['../cmsis__os_8h.html#a3263c1ad9fd79b84f908d65e8da44ac2',1,'cmsis_os.h']]], + ['osmutexrelease',['osMutexRelease',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga006e4744d741e8e132c3d5bbc295afe1',1,'cmsis_os.h']]], + ['osmutexwait',['osMutexWait',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5e1752b73f573ee015dbd9ef1edaba13',1,'cmsis_os.h']]], + ['osok',['osOK',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea9e1c9e2550bb4de8969a935acffc968f',1,'cmsis_os.h']]], + ['ospool',['osPool',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga5f0b204a82327533d420210125c90697',1,'cmsis_os.h']]], + ['ospoolalloc',['osPoolAlloc',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gaa0b2994f1a866c19e0d11e6e0d44f543',1,'cmsis_os.h']]], + ['ospoolcalloc',['osPoolCAlloc',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga9f129fcad4730fbd1048ad4fa262f36a',1,'cmsis_os.h']]], + ['ospoolcreate',['osPoolCreate',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga34af5c4f4ab38f4138ea7f1f9ece3a1a',1,'cmsis_os.h']]], + ['ospooldef',['osPoolDef',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga87b471d4fe2d5dbd0040708edd52771b',1,'cmsis_os.h']]], + ['ospooldef_5ft',['osPoolDef_t',['../structos_pool_def__t.html',1,'']]], + ['ospoolfree',['osPoolFree',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga4a861e9c469c9d0daf5721bf174f8e54',1,'cmsis_os.h']]], + ['ospoolid',['osPoolId',['../cmsis__os_8h.html#a08d2e20fd9bbd96220fe068d420f3686',1,'cmsis_os.h']]], + ['ospriority',['osPriority',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849a',1,'osPriority(): cmsis_os_api.txt'],['../cmsis__os_8h.html#a7f2b42f1983b9107775ec2a1c69a849a',1,'osPriority(): cmsis_os.h']]], + ['ospriorityabovenormal',['osPriorityAboveNormal',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa17b36cd9cd38652c2bc6d4803990674b',1,'cmsis_os.h']]], + ['osprioritybelownormal',['osPriorityBelowNormal',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa193b650117c209b4a203954542bcc3e6',1,'cmsis_os.h']]], + ['ospriorityerror',['osPriorityError',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aae35f5e2f9c64ad346822521b643bdea4',1,'cmsis_os.h']]], + ['ospriorityhigh',['osPriorityHigh',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa914433934143a9ba767e59577c56e6c2',1,'cmsis_os.h']]], + ['ospriorityidle',['osPriorityIdle',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa549e79a43ff4f8b2b31afb613f5caa81',1,'cmsis_os.h']]], + ['osprioritylow',['osPriorityLow',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa61cb822239ac8f66dfbdc7291598a3d4',1,'cmsis_os.h']]], + ['osprioritynormal',['osPriorityNormal',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa45a2895ad30c79fb97de18cac7cc19f1',1,'cmsis_os.h']]], + ['ospriorityrealtime',['osPriorityRealtime',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa1485dec3702434a1ec3cb74c7a17a4af',1,'cmsis_os.h']]], + ['ossemaphore',['osSemaphore',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga03761ee8d2c3cd4544e18364ab301dac',1,'cmsis_os.h']]], + ['ossemaphorecreate',['osSemaphoreCreate',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga97381e8e55cd47cec390bf57c96d6edb',1,'cmsis_os.h']]], + ['ossemaphoredef',['osSemaphoreDef',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga9e66fe361749071e5ab87826c43c2f1b',1,'cmsis_os.h']]], + ['ossemaphoredef_5ft',['osSemaphoreDef_t',['../structos_semaphore_def__t.html',1,'']]], + ['ossemaphoredelete',['osSemaphoreDelete',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gabae2801ac2c096f6e8c69a264908f595',1,'cmsis_os.h']]], + ['ossemaphoreid',['osSemaphoreId',['../cmsis__os_8h.html#aa8968896c84094aa973683c84fa06f84',1,'cmsis_os.h']]], + ['ossemaphorerelease',['osSemaphoreRelease',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gab108914997c49e14d8ff1ae0d1988ca0',1,'cmsis_os.h']]], + ['ossemaphorewait',['osSemaphoreWait',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gacc15b0fc8ce1167fe43da33042e62098',1,'cmsis_os.h']]], + ['ossignalclear',['osSignalClear',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga87283a6ebc31ce9ed42baf3ea7e4eab6',1,'cmsis_os.h']]], + ['ossignalset',['osSignalSet',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga3de2730654589d6c3559c4b9e2825553',1,'cmsis_os.h']]], + ['ossignalwait',['osSignalWait',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga38860acda96df47da6923348d96fc4c9',1,'cmsis_os.h']]], + ['osstatus',['osStatus',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99e',1,'osStatus(): cmsis_os_api.txt'],['../cmsis__os_8h.html#ae2e091fefc4c767117727bd5aba4d99e',1,'osStatus(): cmsis_os.h']]], + ['osthread',['osThread',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf0c7c6b5e09f8be198312144b5c9e453',1,'cmsis_os.h']]], + ['osthreadcreate',['osThreadCreate',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gac59b5713cb083702dce759c73fd90dff',1,'cmsis_os.h']]], + ['osthreaddef',['osThreadDef',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaee93d929beb350f16e5cc7fa602e229f',1,'cmsis_os.h']]], + ['osthreaddef_5ft',['osThreadDef_t',['../structos_thread_def__t.html',1,'']]], + ['osthreadgetid',['osThreadGetId',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gab1df2a28925862ef8f9cf4e1c995c5a7',1,'cmsis_os.h']]], + ['osthreadgetpriority',['osThreadGetPriority',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga4299d838978bc2aae5e4350754e6a4e9',1,'cmsis_os.h']]], + ['osthreadid',['osThreadId',['../cmsis__os_8h.html#adfeb153a84a81309e2d958268197617f',1,'cmsis_os.h']]], + ['osthreadsetpriority',['osThreadSetPriority',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga0dfb90ccf1f6e4b54b9251b12d1cbc8b',1,'cmsis_os.h']]], + ['osthreadterminate',['osThreadTerminate',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaea135bb90eb853eff39e0800b91bbeab',1,'cmsis_os.h']]], + ['osthreadyield',['osThreadYield',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf13a667493c5d629a90c13e113b99233',1,'cmsis_os.h']]], + ['ostimer',['osTimer',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1b8d670eaf964b2910fa06885e650678',1,'cmsis_os.h']]], + ['ostimercreate',['osTimerCreate',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gaedd312bfdca04e0b8162b666e09a1ae6',1,'cmsis_os.h']]], + ['ostimerdef',['osTimerDef',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga1c720627e08d1cc1afcad44e799ed492',1,'cmsis_os.h']]], + ['ostimerdef_5ft',['osTimerDef_t',['../structos_timer_def__t.html',1,'']]], + ['ostimerdelete',['osTimerDelete',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga746b8043d906849bd65e3900fcb483cf',1,'cmsis_os.h']]], + ['ostimerid',['osTimerId',['../cmsis__os_8h.html#ab8530dd4273f1f5382187732e14fcaa7',1,'cmsis_os.h']]], + ['ostimeronce',['osTimerOnce',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ad21712f8df5f97069c82dc9eec37b951',1,'cmsis_os.h']]], + ['ostimerperiodic',['osTimerPeriodic',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ab9c91f9699162edb09bb7c90c11c8788',1,'cmsis_os.h']]], + ['ostimerstart',['osTimerStart',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga27a797a401b068e2644d1125f22a07ca',1,'cmsis_os.h']]], + ['ostimerstop',['osTimerStop',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga58f36b121a812936435cacc6e1e0e091',1,'cmsis_os.h']]], + ['oswaitforever',['osWaitForever',['../cmsis__os_8h.html#a9eb9a7a797a42e4b55eb171ecc609ddb',1,'cmsis_os.h']]], + ['overview',['Overview',['../_overview.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_70.html b/CMSIS/Documentation/RTX/html/search/all_70.html new file mode 100644 index 0000000..0340151 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_70.js b/CMSIS/Documentation/RTX/html/search/all_70.js new file mode 100644 index 0000000..68e34f3 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_70.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['p',['p',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a117104b82864d3b23ec174af6d392709',1,'osEvent']]], + ['pool',['pool',['../structos_pool_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c',1,'osPoolDef_t::pool()'],['../structos_message_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c',1,'osMessageQDef_t::pool()'],['../structos_mail_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c',1,'osMailQDef_t::pool()']]], + ['pool_5fsz',['pool_sz',['../structos_pool_def__t.html#ac112e786b2a234e0e45cb5bdbee53763',1,'osPoolDef_t']]], + ['pthread',['pthread',['../structos_thread_def__t.html#ad3c9624ee214329fb34e71f544a6933e',1,'osThreadDef_t']]], + ['ptimer',['ptimer',['../structos_timer_def__t.html#a15773df83aba93f8e61f3737af5fae47',1,'osTimerDef_t']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_71.html b/CMSIS/Documentation/RTX/html/search/all_71.html new file mode 100644 index 0000000..b4dc1e6 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_71.js b/CMSIS/Documentation/RTX/html/search/all_71.js new file mode 100644 index 0000000..5a829f8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_71.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['queue_5fsz',['queue_sz',['../structos_message_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0',1,'osMessageQDef_t::queue_sz()'],['../structos_mail_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0',1,'osMailQDef_t::queue_sz()']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_72.html b/CMSIS/Documentation/RTX/html/search/all_72.html new file mode 100644 index 0000000..0ab18d6 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_72.js b/CMSIS/Documentation/RTX/html/search/all_72.js new file mode 100644 index 0000000..6dd57d5 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_72.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['rtx_2etxt',['rtx.txt',['../rtx_8txt.html',1,'']]], + ['rtx_5fconf_5fcm_2ec',['RTX_Conf_CM.c',['../_r_t_x___conf___c_m_8c.html',1,'']]], + ['rtx_20global_20functions',['RTX Global Functions',['../group___r_t_x___global___functions.html',1,'']]], + ['revision_20history',['Revision History',['../rtx_revision_history.html',1,'index']]], + ['rtx_20kernel_20tick_20timer_20configuration',['RTX Kernel Tick Timer Configuration',['../_timer_tick.html',1,'Configure']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_73.html b/CMSIS/Documentation/RTX/html/search/all_73.html new file mode 100644 index 0000000..1ec8f17 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_73.js b/CMSIS/Documentation/RTX/html/search/all_73.js new file mode 100644 index 0000000..ce82185 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_73.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['semaphore_20management',['Semaphore Management',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html',1,'']]], + ['signal_20management',['Signal Management',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html',1,'']]], + ['status_20and_20error_20codes',['Status and Error Codes',['../group___c_m_s_i_s___r_t_o_s___status.html',1,'']]], + ['semaphore',['semaphore',['../structos_semaphore_def__t.html#a83324f0a93a76a6c99f5a21bbe9d9209',1,'osSemaphoreDef_t']]], + ['signals',['signals',['../group___c_m_s_i_s___r_t_o_s___definitions.html#ad0dda1bf7e74f1576261d493fba232b6',1,'osEvent']]], + ['stacksize',['stacksize',['../structos_thread_def__t.html#a950b7f81ad4711959517296e63bc79d1',1,'osThreadDef_t']]], + ['status',['status',['../group___c_m_s_i_s___r_t_o_s___definitions.html#ad477a289f1f03ac45407b64268d707d3',1,'osEvent']]], + ['svc_20functions',['SVC Functions',['../_s_v_c_functions.html',1,'Configure']]], + ['svcthreadgetid',['svcThreadGetId',['../_r_t_x___conf___c_m_8c.html#a395cca131b7746fc43c104a3485b77f7',1,'RTX_Conf_CM.c']]], + ['system_20configuration',['System Configuration',['../_system_config.html',1,'Configure']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_74.html b/CMSIS/Documentation/RTX/html/search/all_74.html new file mode 100644 index 0000000..fdc6589 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_74.js b/CMSIS/Documentation/RTX/html/search/all_74.js new file mode 100644 index 0000000..b8385bb --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_74.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['thread_20management',['Thread Management',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html',1,'']]], + ['timer_20management',['Timer Management',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html',1,'']]], + ['technical_20data',['Technical Data',['../_technical_data.html',1,'Overview']]], + ['theory_20of_20operation',['Theory of Operation',['../_theory.html',1,'Overview']]], + ['thread_20configuration',['Thread Configuration',['../_thread_config.html',1,'Configure']]], + ['timer',['timer',['../structos_timer_def__t.html#a7107c9a80d9b4991d437133827e35839',1,'osTimerDef_t']]], + ['tpriority',['tpriority',['../structos_thread_def__t.html#a15da8f23c6fe684b70a73646ada685e7',1,'osThreadDef_t']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/all_76.html b/CMSIS/Documentation/RTX/html/search/all_76.html new file mode 100644 index 0000000..0ff5edd --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/all_76.js b/CMSIS/Documentation/RTX/html/search/all_76.js new file mode 100644 index 0000000..15d2556 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/all_76.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['v',['v',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a9e0a00edabf3b8a5dafff624fff7bbfc',1,'osEvent']]], + ['value',['value',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a0b9f8fd3645f01d8cb09cae82add2d7f',1,'osEvent']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/classes_6f.html b/CMSIS/Documentation/RTX/html/search/classes_6f.html new file mode 100644 index 0000000..926dcfc --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/classes_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/classes_6f.js b/CMSIS/Documentation/RTX/html/search/classes_6f.js new file mode 100644 index 0000000..3da0bb6 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/classes_6f.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['os_5fmailq',['os_mailQ',['../group___c_m_s_i_s___r_t_o_s___definitions.html#structos__mail_q',1,'']]], + ['osevent',['osEvent',['../group___c_m_s_i_s___r_t_o_s___definitions.html#structos_event',1,'']]], + ['osmailqdef_5ft',['osMailQDef_t',['../structos_mail_q_def__t.html',1,'']]], + ['osmessageqdef_5ft',['osMessageQDef_t',['../structos_message_q_def__t.html',1,'']]], + ['osmutexdef_5ft',['osMutexDef_t',['../structos_mutex_def__t.html',1,'']]], + ['ospooldef_5ft',['osPoolDef_t',['../structos_pool_def__t.html',1,'']]], + ['ossemaphoredef_5ft',['osSemaphoreDef_t',['../structos_semaphore_def__t.html',1,'']]], + ['osthreaddef_5ft',['osThreadDef_t',['../structos_thread_def__t.html',1,'']]], + ['ostimerdef_5ft',['osTimerDef_t',['../structos_timer_def__t.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/close.png b/CMSIS/Documentation/RTX/html/search/close.png new file mode 100644 index 0000000..9342d3d Binary files /dev/null and b/CMSIS/Documentation/RTX/html/search/close.png differ diff --git a/CMSIS/Documentation/RTX/html/search/defines_6f.html b/CMSIS/Documentation/RTX/html/search/defines_6f.html new file mode 100644 index 0000000..ed8e3dd --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/defines_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/defines_6f.js b/CMSIS/Documentation/RTX/html/search/defines_6f.js new file mode 100644 index 0000000..283e17c --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/defines_6f.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['os_5fclock',['OS_CLOCK',['../_r_t_x___conf___c_m_8c.html#adff23afdf544a322a38314870f8848b9',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5ffifo_5fovf',['OS_ERROR_FIFO_OVF',['../_r_t_x___conf___c_m_8c.html#a075d54df14c85a6afe32b7f5c99c9c29',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5fmbx_5fovf',['OS_ERROR_MBX_OVF',['../_r_t_x___conf___c_m_8c.html#ab715d7d66c341c067ef0a97b55db8a10',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5fstack_5fovf',['OS_ERROR_STACK_OVF',['../_r_t_x___conf___c_m_8c.html#abf8311a7a239ec56c6d725f926ba766d',1,'RTX_Conf_CM.c']]], + ['os_5ferror_5ftimer_5fovf',['OS_ERROR_TIMER_OVF',['../_r_t_x___conf___c_m_8c.html#a79d7e388d951f11bd0dabd13f722cea8',1,'RTX_Conf_CM.c']]], + ['os_5ffifosz',['OS_FIFOSZ',['../_r_t_x___conf___c_m_8c.html#a93c8e36d441750016f9f72e102f68d66',1,'RTX_Conf_CM.c']]], + ['os_5finregs',['os_InRegs',['../cmsis__os_8h.html#ac6b67612d20f480bef2d76bb64e95be8',1,'cmsis_os.h']]], + ['os_5fmainstksize',['OS_MAINSTKSIZE',['../_r_t_x___conf___c_m_8c.html#a95362a96f44d4314f148ae24edd52f7c',1,'RTX_Conf_CM.c']]], + ['os_5fmutexcnt',['OS_MUTEXCNT',['../_r_t_x___conf___c_m_8c.html#ad11cf133eea28b601f9a63cd9af9b786',1,'RTX_Conf_CM.c']]], + ['os_5fprivcnt',['OS_PRIVCNT',['../_r_t_x___conf___c_m_8c.html#a7cfcbf2c4f9d0a63424a2a48592955b1',1,'RTX_Conf_CM.c']]], + ['os_5fprivstksize',['OS_PRIVSTKSIZE',['../_r_t_x___conf___c_m_8c.html#a6e0d30986e4ae0df44f449a4b3b0fbec',1,'RTX_Conf_CM.c']]], + ['os_5frobin',['OS_ROBIN',['../_r_t_x___conf___c_m_8c.html#ae34f3058383d9fa9280bbf595618ab0a',1,'RTX_Conf_CM.c']]], + ['os_5frobintout',['OS_ROBINTOUT',['../_r_t_x___conf___c_m_8c.html#ad89fdd7232cfba74d400080b6bcc0012',1,'RTX_Conf_CM.c']]], + ['os_5frunpriv',['OS_RUNPRIV',['../_r_t_x___conf___c_m_8c.html#a786924d58be54e943a7e73458cebc51b',1,'RTX_Conf_CM.c']]], + ['os_5fstkcheck',['OS_STKCHECK',['../_r_t_x___conf___c_m_8c.html#a6ef9e00396f881f0fa9ac877150e5962',1,'RTX_Conf_CM.c']]], + ['os_5fstkinit',['OS_STKINIT',['../_r_t_x___conf___c_m_8c.html#ac820623da739e4219ee86f15bdcd9752',1,'RTX_Conf_CM.c']]], + ['os_5fstksize',['OS_STKSIZE',['../_r_t_x___conf___c_m_8c.html#a16495c133349f3e7c27ac933857c1a8c',1,'RTX_Conf_CM.c']]], + ['os_5ftaskcnt',['OS_TASKCNT',['../_r_t_x___conf___c_m_8c.html#a309353d912327b7f4a2300711ee1b349',1,'RTX_Conf_CM.c']]], + ['os_5ftick',['OS_TICK',['../_r_t_x___conf___c_m_8c.html#ab6b10bd6d60e95ab28c775757f6bfbcc',1,'RTX_Conf_CM.c']]], + ['os_5ftimercbqs',['OS_TIMERCBQS',['../_r_t_x___conf___c_m_8c.html#a29701cff84a42494279367ad018f252d',1,'RTX_Conf_CM.c']]], + ['os_5ftimerprio',['OS_TIMERPRIO',['../_r_t_x___conf___c_m_8c.html#a90af874f1df4dfb0f8821cc2d860dae6',1,'RTX_Conf_CM.c']]], + ['os_5ftimers',['OS_TIMERS',['../_r_t_x___conf___c_m_8c.html#a23b0f1095632e58b5ac0d8f7dcfdfded',1,'RTX_Conf_CM.c']]], + ['os_5ftimerstksz',['OS_TIMERSTKSZ',['../_r_t_x___conf___c_m_8c.html#a76d1b01799981a753fc528e600015627',1,'RTX_Conf_CM.c']]], + ['os_5ftrv',['OS_TRV',['../_r_t_x___conf___c_m_8c.html#a9d55a070ddb219165bd4287f08318d51',1,'RTX_Conf_CM.c']]], + ['osfeature_5fwait',['osFeature_Wait',['../cmsis__os_8h.html#a6c97d38879ae86491628f6e647639bad',1,'cmsis_os.h']]], + ['oswaitforever',['osWaitForever',['../cmsis__os_8h.html#a9eb9a7a797a42e4b55eb171ecc609ddb',1,'cmsis_os.h']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/enums_6f.html b/CMSIS/Documentation/RTX/html/search/enums_6f.html new file mode 100644 index 0000000..13b3560 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/enums_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/enums_6f.js b/CMSIS/Documentation/RTX/html/search/enums_6f.js new file mode 100644 index 0000000..e698ffc --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/enums_6f.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['os_5ftimer_5ftype',['os_timer_type',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9',1,'os_timer_type(): cmsis_os_api.txt'],['../cmsis__os_8h.html#adac860eb9e1b4b0619271e6595ed83d9',1,'os_timer_type(): cmsis_os.h']]], + ['ospriority',['osPriority',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849a',1,'osPriority(): cmsis_os_api.txt'],['../cmsis__os_8h.html#a7f2b42f1983b9107775ec2a1c69a849a',1,'osPriority(): cmsis_os.h']]], + ['osstatus',['osStatus',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99e',1,'osStatus(): cmsis_os_api.txt'],['../cmsis__os_8h.html#ae2e091fefc4c767117727bd5aba4d99e',1,'osStatus(): cmsis_os.h']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/enumvalues_6f.html b/CMSIS/Documentation/RTX/html/search/enumvalues_6f.html new file mode 100644 index 0000000..697cd20 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/enumvalues_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/enumvalues_6f.js b/CMSIS/Documentation/RTX/html/search/enumvalues_6f.js new file mode 100644 index 0000000..2dc61e1 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/enumvalues_6f.js @@ -0,0 +1,28 @@ +var searchData= +[ + ['os_5fstatus_5freserved',['os_status_reserved',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac7a77f5fe18a15a357790c36a4aca1b1',1,'cmsis_os.h']]], + ['oserrorisr',['osErrorISR',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea21635bdc492d3094fe83027fa4a30e2f',1,'cmsis_os.h']]], + ['oserrorisrrecursive',['osErrorISRRecursive',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf6552310a817452aedfcd453f2805d65',1,'cmsis_os.h']]], + ['oserrornomemory',['osErrorNoMemory',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eaf1fac0240218e51eb30a13da2f8aae81',1,'cmsis_os.h']]], + ['oserroros',['osErrorOS',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5fde24ff588ec5ab9cb8314bade26fbc',1,'cmsis_os.h']]], + ['oserrorparameter',['osErrorParameter',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eac24adca6a5d072c9f01c32178ba0d109',1,'cmsis_os.h']]], + ['oserrorpriority',['osErrorPriority',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99eab7dda0ef504817659334cbfd650ae56f',1,'cmsis_os.h']]], + ['oserrorresource',['osErrorResource',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea8fc5801e8b0482bdf22ad63a77f0155d',1,'cmsis_os.h']]], + ['oserrortimeoutresource',['osErrorTimeoutResource',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea314d24a49003f09459035db0dd7c9467',1,'cmsis_os.h']]], + ['oserrorvalue',['osErrorValue',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea4672c8a0c0f6bb1d7981da4602e8e9ee',1,'cmsis_os.h']]], + ['oseventmail',['osEventMail',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea15b12e42b42b53f35fb8a2724ad02926',1,'cmsis_os.h']]], + ['oseventmessage',['osEventMessage',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ead604f3673359dd4ac643b16dc5a2c342',1,'cmsis_os.h']]], + ['oseventsignal',['osEventSignal',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea5df7e9643aa8a2f5f3a6f6ec59758518',1,'cmsis_os.h']]], + ['oseventtimeout',['osEventTimeout',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea78f477732375c0e1fca814e369618177',1,'cmsis_os.h']]], + ['osok',['osOK',['../group___c_m_s_i_s___r_t_o_s___status.html#gae2e091fefc4c767117727bd5aba4d99ea9e1c9e2550bb4de8969a935acffc968f',1,'cmsis_os.h']]], + ['ospriorityabovenormal',['osPriorityAboveNormal',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa17b36cd9cd38652c2bc6d4803990674b',1,'cmsis_os.h']]], + ['osprioritybelownormal',['osPriorityBelowNormal',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa193b650117c209b4a203954542bcc3e6',1,'cmsis_os.h']]], + ['ospriorityerror',['osPriorityError',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aae35f5e2f9c64ad346822521b643bdea4',1,'cmsis_os.h']]], + ['ospriorityhigh',['osPriorityHigh',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa914433934143a9ba767e59577c56e6c2',1,'cmsis_os.h']]], + ['ospriorityidle',['osPriorityIdle',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa549e79a43ff4f8b2b31afb613f5caa81',1,'cmsis_os.h']]], + ['osprioritylow',['osPriorityLow',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa61cb822239ac8f66dfbdc7291598a3d4',1,'cmsis_os.h']]], + ['osprioritynormal',['osPriorityNormal',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa45a2895ad30c79fb97de18cac7cc19f1',1,'cmsis_os.h']]], + ['ospriorityrealtime',['osPriorityRealtime',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga7f2b42f1983b9107775ec2a1c69a849aa1485dec3702434a1ec3cb74c7a17a4af',1,'cmsis_os.h']]], + ['ostimeronce',['osTimerOnce',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ad21712f8df5f97069c82dc9eec37b951',1,'cmsis_os.h']]], + ['ostimerperiodic',['osTimerPeriodic',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gadac860eb9e1b4b0619271e6595ed83d9ab9c91f9699162edb09bb7c90c11c8788',1,'cmsis_os.h']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/files_63.html b/CMSIS/Documentation/RTX/html/search/files_63.html new file mode 100644 index 0000000..6611a5b --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/files_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/files_63.js b/CMSIS/Documentation/RTX/html/search/files_63.js new file mode 100644 index 0000000..d31f5e7 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/files_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['cmsis_5fos_2eh',['cmsis_os.h',['../cmsis__os_8h.html',1,'']]], + ['cmsis_5fos_5fapi_2etxt',['cmsis_os_api.txt',['../cmsis__os__api_8txt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/files_72.html b/CMSIS/Documentation/RTX/html/search/files_72.html new file mode 100644 index 0000000..609fb48 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/files_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/files_72.js b/CMSIS/Documentation/RTX/html/search/files_72.js new file mode 100644 index 0000000..7720a2a --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/files_72.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['rtx_2etxt',['rtx.txt',['../rtx_8txt.html',1,'']]], + ['rtx_5fconf_5fcm_2ec',['RTX_Conf_CM.c',['../_r_t_x___conf___c_m_8c.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/functions_6f.html b/CMSIS/Documentation/RTX/html/search/functions_6f.html new file mode 100644 index 0000000..222f0f8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/functions_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/functions_6f.js b/CMSIS/Documentation/RTX/html/search/functions_6f.js new file mode 100644 index 0000000..0d7e1f0 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/functions_6f.js @@ -0,0 +1,50 @@ +var searchData= +[ + ['os_5ferror',['os_error',['../group___r_t_x___global___functions.html#ga651ae76b3acf45f80bf0e0487b51d6e6',1,'RTX_Conf_CM.c']]], + ['os_5fidle_5fdemon',['os_idle_demon',['../group___r_t_x___global___functions.html#gafb4dc4d3dff8343a393726d2860282e4',1,'RTX_Conf_CM.c']]], + ['os_5fresume',['os_resume',['../group___r_t_x___global___functions.html#ga1b85a217d43e6b971ffcf24f8aae1c33',1,'cmsis_os.h']]], + ['os_5fsuspend',['os_suspend',['../group___r_t_x___global___functions.html#ga3e9c57746ccbdfe90464ad50513c569e',1,'cmsis_os.h']]], + ['os_5ftick_5finit',['os_tick_init',['../group___r_t_x___global___functions.html#ga145e7eafdd042bb522020cbb3b469d9c',1,'RTX_Conf_CM.c']]], + ['os_5ftick_5firqack',['os_tick_irqack',['../group___r_t_x___global___functions.html#ga85dab8408f27236c7341a69feb6258c7',1,'RTX_Conf_CM.c']]], + ['os_5ftick_5fovf',['os_tick_ovf',['../group___r_t_x___global___functions.html#gad5deddec3fea0fb31798f571afc3c692',1,'RTX_Conf_CM.c']]], + ['os_5ftick_5fval',['os_tick_val',['../group___r_t_x___global___functions.html#ga567543bf38239a91f09751686c23017b',1,'RTX_Conf_CM.c']]], + ['osdelay',['osDelay',['../group___c_m_s_i_s___r_t_o_s___wait.html#ga02e19d5e723bfb06ba9324d625162255',1,'cmsis_os.h']]], + ['oskernelinitialize',['osKernelInitialize',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga53d078a801022e202e8115c083ece68e',1,'cmsis_os.h']]], + ['oskernelrunning',['osKernelRunning',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#ga3b571de44cd3094c643247a7397f86b5',1,'cmsis_os.h']]], + ['oskernelstart',['osKernelStart',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gaab668ffd2ea76bb0a77ab0ab385eaef2',1,'cmsis_os.h']]], + ['oskernelsystick',['osKernelSysTick',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html#gad0262e4688e95d1e9038afd9bcc16001',1,'cmsis_os.h']]], + ['osmailalloc',['osMailAlloc',['../group___c_m_s_i_s___r_t_o_s___mail.html#gadf5ce811bd6a56e617e902a1db6c2194',1,'cmsis_os.h']]], + ['osmailcalloc',['osMailCAlloc',['../group___c_m_s_i_s___r_t_o_s___mail.html#ga8fde74f6fe5b9e88f75cc5eb8f2124fd',1,'cmsis_os.h']]], + ['osmailcreate',['osMailCreate',['../group___c_m_s_i_s___r_t_o_s___mail.html#gaa177e7fe5820dd70d8c9e46ded131174',1,'cmsis_os.h']]], + ['osmailfree',['osMailFree',['../group___c_m_s_i_s___r_t_o_s___mail.html#ga27c1060cf21393f96b4fd1ed1c0167cc',1,'cmsis_os.h']]], + ['osmailget',['osMailGet',['../group___c_m_s_i_s___r_t_o_s___mail.html#gac6ad7e6e7d6c4a80e60da22c57a42ccd',1,'cmsis_os.h']]], + ['osmailput',['osMailPut',['../group___c_m_s_i_s___r_t_o_s___mail.html#ga485ef6f81854ebda8ffbce4832181e02',1,'cmsis_os.h']]], + ['osmessagecreate',['osMessageCreate',['../group___c_m_s_i_s___r_t_o_s___message.html#gaf3b9345cf426304d46565152bc26fb78',1,'cmsis_os.h']]], + ['osmessageget',['osMessageGet',['../group___c_m_s_i_s___r_t_o_s___message.html#ga6c6892b8f2296cca6becd57ca2d7e1ae',1,'cmsis_os.h']]], + ['osmessageput',['osMessagePut',['../group___c_m_s_i_s___r_t_o_s___message.html#gac0dcf462fc92de8ffaba6cc004514a6d',1,'cmsis_os.h']]], + ['osmutexcreate',['osMutexCreate',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5c9de56e717016e39e788064e9a291cc',1,'cmsis_os.h']]], + ['osmutexdelete',['osMutexDelete',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#gac27e24135185d51d18f3dabc20910219',1,'cmsis_os.h']]], + ['osmutexrelease',['osMutexRelease',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga006e4744d741e8e132c3d5bbc295afe1',1,'cmsis_os.h']]], + ['osmutexwait',['osMutexWait',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html#ga5e1752b73f573ee015dbd9ef1edaba13',1,'cmsis_os.h']]], + ['ospoolalloc',['osPoolAlloc',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#gaa0b2994f1a866c19e0d11e6e0d44f543',1,'cmsis_os.h']]], + ['ospoolcalloc',['osPoolCAlloc',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga9f129fcad4730fbd1048ad4fa262f36a',1,'cmsis_os.h']]], + ['ospoolcreate',['osPoolCreate',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga34af5c4f4ab38f4138ea7f1f9ece3a1a',1,'cmsis_os.h']]], + ['ospoolfree',['osPoolFree',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html#ga4a861e9c469c9d0daf5721bf174f8e54',1,'cmsis_os.h']]], + ['ossemaphorecreate',['osSemaphoreCreate',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#ga97381e8e55cd47cec390bf57c96d6edb',1,'cmsis_os.h']]], + ['ossemaphoredelete',['osSemaphoreDelete',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gabae2801ac2c096f6e8c69a264908f595',1,'cmsis_os.h']]], + ['ossemaphorerelease',['osSemaphoreRelease',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gab108914997c49e14d8ff1ae0d1988ca0',1,'cmsis_os.h']]], + ['ossemaphorewait',['osSemaphoreWait',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html#gacc15b0fc8ce1167fe43da33042e62098',1,'cmsis_os.h']]], + ['ossignalclear',['osSignalClear',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga87283a6ebc31ce9ed42baf3ea7e4eab6',1,'cmsis_os.h']]], + ['ossignalset',['osSignalSet',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga3de2730654589d6c3559c4b9e2825553',1,'cmsis_os.h']]], + ['ossignalwait',['osSignalWait',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html#ga38860acda96df47da6923348d96fc4c9',1,'cmsis_os.h']]], + ['osthreadcreate',['osThreadCreate',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gac59b5713cb083702dce759c73fd90dff',1,'cmsis_os.h']]], + ['osthreadgetid',['osThreadGetId',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gab1df2a28925862ef8f9cf4e1c995c5a7',1,'cmsis_os.h']]], + ['osthreadgetpriority',['osThreadGetPriority',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga4299d838978bc2aae5e4350754e6a4e9',1,'cmsis_os.h']]], + ['osthreadsetpriority',['osThreadSetPriority',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#ga0dfb90ccf1f6e4b54b9251b12d1cbc8b',1,'cmsis_os.h']]], + ['osthreadterminate',['osThreadTerminate',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaea135bb90eb853eff39e0800b91bbeab',1,'cmsis_os.h']]], + ['osthreadyield',['osThreadYield',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html#gaf13a667493c5d629a90c13e113b99233',1,'cmsis_os.h']]], + ['ostimercreate',['osTimerCreate',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#gaedd312bfdca04e0b8162b666e09a1ae6',1,'cmsis_os.h']]], + ['ostimerdelete',['osTimerDelete',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga746b8043d906849bd65e3900fcb483cf',1,'cmsis_os.h']]], + ['ostimerstart',['osTimerStart',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga27a797a401b068e2644d1125f22a07ca',1,'cmsis_os.h']]], + ['ostimerstop',['osTimerStop',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html#ga58f36b121a812936435cacc6e1e0e091',1,'cmsis_os.h']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/functions_73.html b/CMSIS/Documentation/RTX/html/search/functions_73.html new file mode 100644 index 0000000..774d577 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/functions_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/functions_73.js b/CMSIS/Documentation/RTX/html/search/functions_73.js new file mode 100644 index 0000000..f09c39a --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/functions_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['svcthreadgetid',['svcThreadGetId',['../_r_t_x___conf___c_m_8c.html#a395cca131b7746fc43c104a3485b77f7',1,'RTX_Conf_CM.c']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/groups_63.html b/CMSIS/Documentation/RTX/html/search/groups_63.html new file mode 100644 index 0000000..dd75625 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/groups_63.js b/CMSIS/Documentation/RTX/html/search/groups_63.js new file mode 100644 index 0000000..fd244b2 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['cmsis_2drtos_20api_20_28rtx_29',['CMSIS-RTOS API (RTX)',['../group___c_m_s_i_s___r_t_o_s.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/groups_67.html b/CMSIS/Documentation/RTX/html/search/groups_67.html new file mode 100644 index 0000000..4fc9422 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_67.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/groups_67.js b/CMSIS/Documentation/RTX/html/search/groups_67.js new file mode 100644 index 0000000..8233358 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_67.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['generic_20data_20types_20and_20definitions',['Generic Data Types and Definitions',['../group___c_m_s_i_s___r_t_o_s___definitions.html',1,'']]], + ['generic_20wait_20function',['Generic Wait Function',['../group___c_m_s_i_s___r_t_o_s___wait.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/groups_6b.html b/CMSIS/Documentation/RTX/html/search/groups_6b.html new file mode 100644 index 0000000..8aa6cb7 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_6b.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/groups_6b.js b/CMSIS/Documentation/RTX/html/search/groups_6b.js new file mode 100644 index 0000000..83362d7 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_6b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['kernel_20information_20and_20control',['Kernel Information and Control',['../group___c_m_s_i_s___r_t_o_s___kernel_ctrl.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/groups_6d.html b/CMSIS/Documentation/RTX/html/search/groups_6d.html new file mode 100644 index 0000000..7caa8d7 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/groups_6d.js b/CMSIS/Documentation/RTX/html/search/groups_6d.js new file mode 100644 index 0000000..7a833ee --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_6d.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['mail_20queue_20management',['Mail Queue Management',['../group___c_m_s_i_s___r_t_o_s___mail.html',1,'']]], + ['message_20queue_20management',['Message Queue Management',['../group___c_m_s_i_s___r_t_o_s___message.html',1,'']]], + ['mutex_20management',['Mutex Management',['../group___c_m_s_i_s___r_t_o_s___mutex_mgmt.html',1,'']]], + ['memory_20pool_20management',['Memory Pool Management',['../group___c_m_s_i_s___r_t_o_s___pool_mgmt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/groups_72.html b/CMSIS/Documentation/RTX/html/search/groups_72.html new file mode 100644 index 0000000..a4430da --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/groups_72.js b/CMSIS/Documentation/RTX/html/search/groups_72.js new file mode 100644 index 0000000..b12a9c3 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_72.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['rtx_20global_20functions',['RTX Global Functions',['../group___r_t_x___global___functions.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/groups_73.html b/CMSIS/Documentation/RTX/html/search/groups_73.html new file mode 100644 index 0000000..feab00e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/groups_73.js b/CMSIS/Documentation/RTX/html/search/groups_73.js new file mode 100644 index 0000000..1163234 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_73.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['semaphore_20management',['Semaphore Management',['../group___c_m_s_i_s___r_t_o_s___semaphore_mgmt.html',1,'']]], + ['signal_20management',['Signal Management',['../group___c_m_s_i_s___r_t_o_s___signal_mgmt.html',1,'']]], + ['status_20and_20error_20codes',['Status and Error Codes',['../group___c_m_s_i_s___r_t_o_s___status.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/groups_74.html b/CMSIS/Documentation/RTX/html/search/groups_74.html new file mode 100644 index 0000000..315d58c --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/groups_74.js b/CMSIS/Documentation/RTX/html/search/groups_74.js new file mode 100644 index 0000000..d49d5f3 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/groups_74.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['thread_20management',['Thread Management',['../group___c_m_s_i_s___r_t_o_s___thread_mgmt.html',1,'']]], + ['timer_20management',['Timer Management',['../group___c_m_s_i_s___r_t_o_s___timer_mgmt.html',1,'']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/mag_sel.png b/CMSIS/Documentation/RTX/html/search/mag_sel.png new file mode 100644 index 0000000..81f6040 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/search/mag_sel.png differ diff --git a/CMSIS/Documentation/RTX/html/search/nomatches.html b/CMSIS/Documentation/RTX/html/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_62.html b/CMSIS/Documentation/RTX/html/search/pages_62.html new file mode 100644 index 0000000..d777475 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_62.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_62.js b/CMSIS/Documentation/RTX/html/search/pages_62.js new file mode 100644 index 0000000..72c5d0e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_62.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['building_20the_20cmsis_2drtos_20rtx_20library',['Building the CMSIS-RTOS RTX Library',['../_creating__r_t_x__l_i_b.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_63.html b/CMSIS/Documentation/RTX/html/search/pages_63.html new file mode 100644 index 0000000..3971181 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_63.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_63.js b/CMSIS/Documentation/RTX/html/search/pages_63.js new file mode 100644 index 0000000..c58e1d7 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_63.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['configuration_20of_20cmsis_2drtos_20rtx',['Configuration of CMSIS-RTOS RTX',['../_configure.html',1,'index']]], + ['cmsis_2drtos_20rtx_20tutorial',['CMSIS-RTOS RTX Tutorial',['../_example_r_t_x__tutorial.html',1,'index']]], + ['configuration_20for_20low_2dpower_20modes',['Configuration for Low-Power Modes',['../_low_power.html',1,'Configure']]], + ['create_20a_20cmsis_2drtos_20rtx_20project',['Create a CMSIS-RTOS RTX Project',['../_using.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_64.html b/CMSIS/Documentation/RTX/html/search/pages_64.html new file mode 100644 index 0000000..f416a91 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_64.js b/CMSIS/Documentation/RTX/html/search/pages_64.js new file mode 100644 index 0000000..9b30139 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['directory_20structure_20and_20file_20overview',['Directory Structure and File Overview',['../_files.html',1,'Overview']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_66.html b/CMSIS/Documentation/RTX/html/search/pages_66.html new file mode 100644 index 0000000..4051434 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_66.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_66.js b/CMSIS/Documentation/RTX/html/search/pages_66.js new file mode 100644 index 0000000..3125c1e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['function_20overview',['Function Overview',['../_function_overview.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_6d.html b/CMSIS/Documentation/RTX/html/search/pages_6d.html new file mode 100644 index 0000000..958ccc6 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_6d.js b/CMSIS/Documentation/RTX/html/search/pages_6d.js new file mode 100644 index 0000000..036f18c --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['misra_2dc_3a2004_20compliance_20exceptions',['MISRA-C:2004 Compliance Exceptions',['../_m_i_s_r_a_compliance.html',1,'Overview']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_6f.html b/CMSIS/Documentation/RTX/html/search/pages_6f.html new file mode 100644 index 0000000..9c79c3f --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_6f.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_6f.js b/CMSIS/Documentation/RTX/html/search/pages_6f.js new file mode 100644 index 0000000..a20d167 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_6f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['overview',['Overview',['../_overview.html',1,'index']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_72.html b/CMSIS/Documentation/RTX/html/search/pages_72.html new file mode 100644 index 0000000..ee0d002 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_72.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_72.js b/CMSIS/Documentation/RTX/html/search/pages_72.js new file mode 100644 index 0000000..660ac31 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_72.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['revision_20history',['Revision History',['../rtx_revision_history.html',1,'index']]], + ['rtx_20kernel_20tick_20timer_20configuration',['RTX Kernel Tick Timer Configuration',['../_timer_tick.html',1,'Configure']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_73.html b/CMSIS/Documentation/RTX/html/search/pages_73.html new file mode 100644 index 0000000..ba42c50 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_73.js b/CMSIS/Documentation/RTX/html/search/pages_73.js new file mode 100644 index 0000000..3114ad8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_73.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['svc_20functions',['SVC Functions',['../_s_v_c_functions.html',1,'Configure']]], + ['system_20configuration',['System Configuration',['../_system_config.html',1,'Configure']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/pages_74.html b/CMSIS/Documentation/RTX/html/search/pages_74.html new file mode 100644 index 0000000..bbff83e --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/pages_74.js b/CMSIS/Documentation/RTX/html/search/pages_74.js new file mode 100644 index 0000000..18656b5 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/pages_74.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['technical_20data',['Technical Data',['../_technical_data.html',1,'Overview']]], + ['theory_20of_20operation',['Theory of Operation',['../_theory.html',1,'Overview']]], + ['thread_20configuration',['Thread Configuration',['../_thread_config.html',1,'Configure']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/search.css b/CMSIS/Documentation/RTX/html/search/search.css new file mode 100644 index 0000000..1746d13 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/search.css @@ -0,0 +1,240 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#searchli { + float: right; + display: block; + width: 170px; + height: 24px; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 3px; + right: 0px; + width: 170px; + z-index: 102; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:116px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} diff --git a/CMSIS/Documentation/RTX/html/search/search.js b/CMSIS/Documentation/RTX/html/search/search.js new file mode 100644 index 0000000..9ba2349 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/search.js @@ -0,0 +1,815 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011101101010101111110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100001000100110110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 8: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 9: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000100010100001110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 10: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011101000000101001110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "files", + 3: "functions", + 4: "variables", + 5: "typedefs", + 6: "enums", + 7: "enumvalues", + 8: "defines", + 9: "groups", + 10: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/typedefs_6f.js b/CMSIS/Documentation/RTX/html/search/typedefs_6f.js new file mode 100644 index 0000000..e543bcc --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/typedefs_6f.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['os_5fpthread',['os_pthread',['../cmsis__os_8h.html#aee631e5ea1b700fc35695cc7bc574cf7',1,'cmsis_os.h']]], + ['os_5fptimer',['os_ptimer',['../cmsis__os_8h.html#aa2d85e49bde9f6951ff3545cd323f065',1,'cmsis_os.h']]], + ['osmailqid',['osMailQId',['../cmsis__os_8h.html#a1dac049fb7725a8af8b26c71cbb373b5',1,'cmsis_os.h']]], + ['osmessageqid',['osMessageQId',['../cmsis__os_8h.html#ad9ec70c32c6c521970636b521e12d17f',1,'cmsis_os.h']]], + ['osmutexid',['osMutexId',['../cmsis__os_8h.html#a3263c1ad9fd79b84f908d65e8da44ac2',1,'cmsis_os.h']]], + ['ospoolid',['osPoolId',['../cmsis__os_8h.html#a08d2e20fd9bbd96220fe068d420f3686',1,'cmsis_os.h']]], + ['ossemaphoreid',['osSemaphoreId',['../cmsis__os_8h.html#aa8968896c84094aa973683c84fa06f84',1,'cmsis_os.h']]], + ['osthreadid',['osThreadId',['../cmsis__os_8h.html#adfeb153a84a81309e2d958268197617f',1,'cmsis_os.h']]], + ['ostimerid',['osTimerId',['../cmsis__os_8h.html#ab8530dd4273f1f5382187732e14fcaa7',1,'cmsis_os.h']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_64.html b/CMSIS/Documentation/RTX/html/search/variables_64.html new file mode 100644 index 0000000..fee6769 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_64.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_64.js b/CMSIS/Documentation/RTX/html/search/variables_64.js new file mode 100644 index 0000000..8ae0edc --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_64.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['def',['def',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a596b6d55c3321db19239256bbe403df6',1,'osEvent']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_69.html b/CMSIS/Documentation/RTX/html/search/variables_69.html new file mode 100644 index 0000000..d4ddaf0 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_69.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_69.js b/CMSIS/Documentation/RTX/html/search/variables_69.js new file mode 100644 index 0000000..db14a54 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_69.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['instances',['instances',['../structos_thread_def__t.html#aa4c4115851a098c0b87358ab6c025603',1,'osThreadDef_t']]], + ['item_5fsz',['item_sz',['../structos_pool_def__t.html#a4c2a0c691de3365c00ecd22d8102811f',1,'osPoolDef_t::item_sz()'],['../structos_mail_q_def__t.html#a4c2a0c691de3365c00ecd22d8102811f',1,'osMailQDef_t::item_sz()']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_6d.html b/CMSIS/Documentation/RTX/html/search/variables_6d.html new file mode 100644 index 0000000..b7924e3 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_6d.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_6d.js b/CMSIS/Documentation/RTX/html/search/variables_6d.js new file mode 100644 index 0000000..00aef7f --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_6d.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['mail_5fid',['mail_id',['../group___c_m_s_i_s___r_t_o_s___definitions.html#ac86175a4b1706bee596f3018322df26e',1,'osEvent']]], + ['message_5fid',['message_id',['../group___c_m_s_i_s___r_t_o_s___definitions.html#af394cbe21dde7377974e63af38cd87b0',1,'osEvent']]], + ['mutex',['mutex',['../structos_mutex_def__t.html#aef475bb63aad7508c7dffe80ad332e4e',1,'osMutexDef_t']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_70.html b/CMSIS/Documentation/RTX/html/search/variables_70.html new file mode 100644 index 0000000..bc5c193 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_70.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_70.js b/CMSIS/Documentation/RTX/html/search/variables_70.js new file mode 100644 index 0000000..68e34f3 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_70.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['p',['p',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a117104b82864d3b23ec174af6d392709',1,'osEvent']]], + ['pool',['pool',['../structos_pool_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c',1,'osPoolDef_t::pool()'],['../structos_message_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c',1,'osMessageQDef_t::pool()'],['../structos_mail_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c',1,'osMailQDef_t::pool()']]], + ['pool_5fsz',['pool_sz',['../structos_pool_def__t.html#ac112e786b2a234e0e45cb5bdbee53763',1,'osPoolDef_t']]], + ['pthread',['pthread',['../structos_thread_def__t.html#ad3c9624ee214329fb34e71f544a6933e',1,'osThreadDef_t']]], + ['ptimer',['ptimer',['../structos_timer_def__t.html#a15773df83aba93f8e61f3737af5fae47',1,'osTimerDef_t']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_71.html b/CMSIS/Documentation/RTX/html/search/variables_71.html new file mode 100644 index 0000000..cceeff2 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_71.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_71.js b/CMSIS/Documentation/RTX/html/search/variables_71.js new file mode 100644 index 0000000..5a829f8 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_71.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['queue_5fsz',['queue_sz',['../structos_message_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0',1,'osMessageQDef_t::queue_sz()'],['../structos_mail_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0',1,'osMailQDef_t::queue_sz()']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_73.html b/CMSIS/Documentation/RTX/html/search/variables_73.html new file mode 100644 index 0000000..65b8f64 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_73.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_73.js b/CMSIS/Documentation/RTX/html/search/variables_73.js new file mode 100644 index 0000000..1fa6f7b --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_73.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['semaphore',['semaphore',['../structos_semaphore_def__t.html#a83324f0a93a76a6c99f5a21bbe9d9209',1,'osSemaphoreDef_t']]], + ['signals',['signals',['../group___c_m_s_i_s___r_t_o_s___definitions.html#ad0dda1bf7e74f1576261d493fba232b6',1,'osEvent']]], + ['stacksize',['stacksize',['../structos_thread_def__t.html#a950b7f81ad4711959517296e63bc79d1',1,'osThreadDef_t']]], + ['status',['status',['../group___c_m_s_i_s___r_t_o_s___definitions.html#ad477a289f1f03ac45407b64268d707d3',1,'osEvent']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_74.html b/CMSIS/Documentation/RTX/html/search/variables_74.html new file mode 100644 index 0000000..6093922 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_74.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_74.js b/CMSIS/Documentation/RTX/html/search/variables_74.js new file mode 100644 index 0000000..f3ee237 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_74.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['timer',['timer',['../structos_timer_def__t.html#a7107c9a80d9b4991d437133827e35839',1,'osTimerDef_t']]], + ['tpriority',['tpriority',['../structos_thread_def__t.html#a15da8f23c6fe684b70a73646ada685e7',1,'osThreadDef_t']]] +]; diff --git a/CMSIS/Documentation/RTX/html/search/variables_76.html b/CMSIS/Documentation/RTX/html/search/variables_76.html new file mode 100644 index 0000000..ab1aba9 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_76.html @@ -0,0 +1,25 @@ + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/CMSIS/Documentation/RTX/html/search/variables_76.js b/CMSIS/Documentation/RTX/html/search/variables_76.js new file mode 100644 index 0000000..15d2556 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/search/variables_76.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['v',['v',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a9e0a00edabf3b8a5dafff624fff7bbfc',1,'osEvent']]], + ['value',['value',['../group___c_m_s_i_s___r_t_o_s___definitions.html#a0b9f8fd3645f01d8cb09cae82add2d7f',1,'osEvent']]] +]; diff --git a/CMSIS/Documentation/RTX/html/structos_mail_q_def__t.html b/CMSIS/Documentation/RTX/html/structos_mail_q_def__t.html new file mode 100644 index 0000000..3832523 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_mail_q_def__t.html @@ -0,0 +1,191 @@ + + + + + +osMailQDef_t Struct Reference +CMSIS-RTOS RTX: osMailQDef_t Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    osMailQDef_t Struct Reference
    +
    +
    + +

    Definition structure for mail queue. +

    + + + + + + + + + + + +

    +Data Fields

    uint32_t queue_sz
     number of elements in the queue
     
    uint32_t item_sz
     size of an item
     
    void * pool
     memory array for mail
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t item_sz
    +
    + +
    +
    + +
    +
    + + + + +
    void* pool
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t queue_sz
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/structos_mail_q_def__t.js b/CMSIS/Documentation/RTX/html/structos_mail_q_def__t.js new file mode 100644 index 0000000..dc34d7b --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_mail_q_def__t.js @@ -0,0 +1,6 @@ +var structos_mail_q_def__t = +[ + [ "item_sz", "structos_mail_q_def__t.html#a4c2a0c691de3365c00ecd22d8102811f", null ], + [ "pool", "structos_mail_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c", null ], + [ "queue_sz", "structos_mail_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/structos_message_q_def__t.html b/CMSIS/Documentation/RTX/html/structos_message_q_def__t.html new file mode 100644 index 0000000..8e64085 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_message_q_def__t.html @@ -0,0 +1,176 @@ + + + + + +osMessageQDef_t Struct Reference +CMSIS-RTOS RTX: osMessageQDef_t Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    osMessageQDef_t Struct Reference
    +
    +
    + +

    Definition structure for message queue. +

    + + + + + + + + +

    +Data Fields

    uint32_t queue_sz
     number of elements in the queue
     
    void * pool
     memory array for messages
     
    +

    Field Documentation

    + +
    +
    + + + + +
    void* pool
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t queue_sz
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/structos_message_q_def__t.js b/CMSIS/Documentation/RTX/html/structos_message_q_def__t.js new file mode 100644 index 0000000..68e4cae --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_message_q_def__t.js @@ -0,0 +1,5 @@ +var structos_message_q_def__t = +[ + [ "pool", "structos_message_q_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c", null ], + [ "queue_sz", "structos_message_q_def__t.html#a8a83a3a8c0aa8057b13807d2a54077e0", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/structos_mutex_def__t.html b/CMSIS/Documentation/RTX/html/structos_mutex_def__t.html new file mode 100644 index 0000000..29ae200 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_mutex_def__t.html @@ -0,0 +1,161 @@ + + + + + +osMutexDef_t Struct Reference +CMSIS-RTOS RTX: osMutexDef_t Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    osMutexDef_t Struct Reference
    +
    +
    + +

    Mutex Definition structure contains setup information for a mutex. +

    + + + + + +

    +Data Fields

    void * mutex
     pointer to internal data
     
    +

    Field Documentation

    + +
    +
    + + + + +
    void* mutex
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/structos_mutex_def__t.js b/CMSIS/Documentation/RTX/html/structos_mutex_def__t.js new file mode 100644 index 0000000..b5c3cc6 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_mutex_def__t.js @@ -0,0 +1,4 @@ +var structos_mutex_def__t = +[ + [ "mutex", "structos_mutex_def__t.html#aef475bb63aad7508c7dffe80ad332e4e", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/structos_pool_def__t.html b/CMSIS/Documentation/RTX/html/structos_pool_def__t.html new file mode 100644 index 0000000..db9eca7 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_pool_def__t.html @@ -0,0 +1,191 @@ + + + + + +osPoolDef_t Struct Reference +CMSIS-RTOS RTX: osPoolDef_t Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    osPoolDef_t Struct Reference
    +
    +
    + +

    Definition structure for memory block allocation. +

    + + + + + + + + + + + +

    +Data Fields

    uint32_t pool_sz
     number of items (elements) in the pool
     
    uint32_t item_sz
     size of an item
     
    void * pool
     pointer to memory for pool
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t item_sz
    +
    + +
    +
    + +
    +
    + + + + +
    void* pool
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t pool_sz
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/structos_pool_def__t.js b/CMSIS/Documentation/RTX/html/structos_pool_def__t.js new file mode 100644 index 0000000..c5f4af2 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_pool_def__t.js @@ -0,0 +1,6 @@ +var structos_pool_def__t = +[ + [ "item_sz", "structos_pool_def__t.html#a4c2a0c691de3365c00ecd22d8102811f", null ], + [ "pool", "structos_pool_def__t.html#a269c3935f8bc66db70bccdd02cb05e3c", null ], + [ "pool_sz", "structos_pool_def__t.html#ac112e786b2a234e0e45cb5bdbee53763", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/structos_semaphore_def__t.html b/CMSIS/Documentation/RTX/html/structos_semaphore_def__t.html new file mode 100644 index 0000000..a669838 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_semaphore_def__t.html @@ -0,0 +1,161 @@ + + + + + +osSemaphoreDef_t Struct Reference +CMSIS-RTOS RTX: osSemaphoreDef_t Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    osSemaphoreDef_t Struct Reference
    +
    +
    + +

    Semaphore Definition structure contains setup information for a semaphore. +

    + + + + + +

    +Data Fields

    void * semaphore
     pointer to internal data
     
    +

    Field Documentation

    + +
    +
    + + + + +
    void* semaphore
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/structos_semaphore_def__t.js b/CMSIS/Documentation/RTX/html/structos_semaphore_def__t.js new file mode 100644 index 0000000..9313cbe --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_semaphore_def__t.js @@ -0,0 +1,4 @@ +var structos_semaphore_def__t = +[ + [ "semaphore", "structos_semaphore_def__t.html#a83324f0a93a76a6c99f5a21bbe9d9209", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/structos_thread_def__t.html b/CMSIS/Documentation/RTX/html/structos_thread_def__t.html new file mode 100644 index 0000000..0921d3a --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_thread_def__t.html @@ -0,0 +1,206 @@ + + + + + +osThreadDef_t Struct Reference +CMSIS-RTOS RTX: osThreadDef_t Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    osThreadDef_t Struct Reference
    +
    +
    + +

    Thread Definition structure contains startup information of a thread. +

    + + + + + + + + + + + + + + +

    +Data Fields

    os_pthread pthread
     start address of thread function
     
    osPriority tpriority
     initial thread priority
     
    uint32_t instances
     maximum number of instances of that thread function
     
    uint32_t stacksize
     stack size requirements in bytes; 0 is default stack size
     
    +

    Field Documentation

    + +
    +
    + + + + +
    uint32_t instances
    +
    + +
    +
    + +
    +
    + + + + +
    os_pthread pthread
    +
    + +
    +
    + +
    +
    + + + + +
    uint32_t stacksize
    +
    + +
    +
    + +
    +
    + + + + +
    osPriority tpriority
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/structos_thread_def__t.js b/CMSIS/Documentation/RTX/html/structos_thread_def__t.js new file mode 100644 index 0000000..33b1207 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_thread_def__t.js @@ -0,0 +1,7 @@ +var structos_thread_def__t = +[ + [ "instances", "structos_thread_def__t.html#aa4c4115851a098c0b87358ab6c025603", null ], + [ "pthread", "structos_thread_def__t.html#ad3c9624ee214329fb34e71f544a6933e", null ], + [ "stacksize", "structos_thread_def__t.html#a950b7f81ad4711959517296e63bc79d1", null ], + [ "tpriority", "structos_thread_def__t.html#a15da8f23c6fe684b70a73646ada685e7", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/structos_timer_def__t.html b/CMSIS/Documentation/RTX/html/structos_timer_def__t.html new file mode 100644 index 0000000..3d42093 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_timer_def__t.html @@ -0,0 +1,176 @@ + + + + + +osTimerDef_t Struct Reference +CMSIS-RTOS RTX: osTimerDef_t Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-RTOS RTX +  Version 4.80 +
    +
    CMSIS-RTOS RTX: Real-Time Operating System for Cortex-M processor-based devices
    +
    +
    + +
    +
      + +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    osTimerDef_t Struct Reference
    +
    +
    + +

    Timer Definition structure contains timer parameters. +

    + + + + + + + + +

    +Data Fields

    os_ptimer ptimer
     start address of a timer function
     
    void * timer
     pointer to internal data
     
    +

    Field Documentation

    + +
    +
    + + + + +
    os_ptimer ptimer
    +
    + +
    +
    + +
    +
    + + + + +
    void* timer
    +
    + +
    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/RTX/html/structos_timer_def__t.js b/CMSIS/Documentation/RTX/html/structos_timer_def__t.js new file mode 100644 index 0000000..85addb4 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/structos_timer_def__t.js @@ -0,0 +1,5 @@ +var structos_timer_def__t = +[ + [ "ptimer", "structos_timer_def__t.html#a15773df83aba93f8e61f3737af5fae47", null ], + [ "timer", "structos_timer_def__t.html#a7107c9a80d9b4991d437133827e35839", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/RTX/html/sync_off.png b/CMSIS/Documentation/RTX/html/sync_off.png new file mode 100644 index 0000000..3b443fc Binary files /dev/null and b/CMSIS/Documentation/RTX/html/sync_off.png differ diff --git a/CMSIS/Documentation/RTX/html/sync_on.png b/CMSIS/Documentation/RTX/html/sync_on.png new file mode 100644 index 0000000..e08320f Binary files /dev/null and b/CMSIS/Documentation/RTX/html/sync_on.png differ diff --git a/CMSIS/Documentation/RTX/html/tab_a.png b/CMSIS/Documentation/RTX/html/tab_a.png new file mode 100644 index 0000000..3b725c4 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/tab_a.png differ diff --git a/CMSIS/Documentation/RTX/html/tab_b.png b/CMSIS/Documentation/RTX/html/tab_b.png new file mode 100644 index 0000000..5f6601a Binary files /dev/null and b/CMSIS/Documentation/RTX/html/tab_b.png differ diff --git a/CMSIS/Documentation/RTX/html/tab_h.png b/CMSIS/Documentation/RTX/html/tab_h.png new file mode 100644 index 0000000..fd5cb70 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/tab_h.png differ diff --git a/CMSIS/Documentation/RTX/html/tab_s.png b/CMSIS/Documentation/RTX/html/tab_s.png new file mode 100644 index 0000000..ab478c9 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/tab_s.png differ diff --git a/CMSIS/Documentation/RTX/html/tab_topnav.png b/CMSIS/Documentation/RTX/html/tab_topnav.png new file mode 100644 index 0000000..b257b77 Binary files /dev/null and b/CMSIS/Documentation/RTX/html/tab_topnav.png differ diff --git a/CMSIS/Documentation/RTX/html/tabs.css b/CMSIS/Documentation/RTX/html/tabs.css new file mode 100644 index 0000000..ffbab50 --- /dev/null +++ b/CMSIS/Documentation/RTX/html/tabs.css @@ -0,0 +1,71 @@ +.tabs, .tabs1, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 10px; +} + +.tabs1 { + background-image: url('tab_topnav.png'); + font-size: 12px; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; + line-height: 24px; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + list-style: none; +} + +.tabs1 .tablist li { + float: left; + display: table-cell; + background-image: url('tab_topnav.png'); + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.png b/CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.png new file mode 100644 index 0000000..841587e Binary files /dev/null and b/CMSIS/Documentation/SVD/html/Access_SVD_DD_Manage.png differ diff --git a/CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png b/CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png new file mode 100644 index 0000000..4a7fc7c Binary files /dev/null and b/CMSIS/Documentation/SVD/html/Access_SVD_Vendor.png differ diff --git a/CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd b/CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd new file mode 100644 index 0000000..f779e68 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/CMSIS-SVD.xsd @@ -0,0 +1,621 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png b/CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png new file mode 100644 index 0000000..2056b7e Binary files /dev/null and b/CMSIS/Documentation/SVD/html/CMSIS_Logo_Final.png differ diff --git a/CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.png b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.png new file mode 100644 index 0000000..cf7aa83 Binary files /dev/null and b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Schema_Gen.png differ diff --git a/CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png new file mode 100644 index 0000000..d62f75b Binary files /dev/null and b/CMSIS/Documentation/SVD/html/CMSIS_SVD_Vendor_DD.png differ diff --git a/CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.png b/CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.png new file mode 100644 index 0000000..1354448 Binary files /dev/null and b/CMSIS/Documentation/SVD/html/CMSIS_SVD_WEB_DATABASE.png differ diff --git a/CMSIS/Documentation/SVD/html/Manage_SVD_DD.png b/CMSIS/Documentation/SVD/html/Manage_SVD_DD.png new file mode 100644 index 0000000..f14f62c Binary files /dev/null and b/CMSIS/Documentation/SVD/html/Manage_SVD_DD.png differ diff --git a/CMSIS/Documentation/SVD/html/SystemViewer_Generated.png b/CMSIS/Documentation/SVD/html/SystemViewer_Generated.png new file mode 100644 index 0000000..e189de7 Binary files /dev/null and b/CMSIS/Documentation/SVD/html/SystemViewer_Generated.png differ diff --git a/CMSIS/Documentation/SVD/html/bc_s.png b/CMSIS/Documentation/SVD/html/bc_s.png new file mode 100644 index 0000000..224b29a Binary files /dev/null and b/CMSIS/Documentation/SVD/html/bc_s.png differ diff --git a/CMSIS/Documentation/SVD/html/bdwn.png b/CMSIS/Documentation/SVD/html/bdwn.png new file mode 100644 index 0000000..940a0b9 Binary files /dev/null and b/CMSIS/Documentation/SVD/html/bdwn.png differ diff --git a/CMSIS/Documentation/SVD/html/closed.png b/CMSIS/Documentation/SVD/html/closed.png new file mode 100644 index 0000000..98cc2c9 Binary files /dev/null and b/CMSIS/Documentation/SVD/html/closed.png differ diff --git a/CMSIS/Documentation/SVD/html/cmsis.css b/CMSIS/Documentation/SVD/html/cmsis.css new file mode 100644 index 0000000..293d0d0 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/cmsis.css @@ -0,0 +1,1269 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 13px; + line-height: 1.3; +} + +/* CMSIS styles */ + +.style1 { + text-align: center; +} +.style2 { + color: #0000FF; + font-weight: normal; +} +.style3 { + text-align: left; +} +.style4 { + color: #008000; +} +.style5 { + color: #0000FF; +} +.style6 { + color: #000000; + font-style:italic; +} +.mand { + color: #0000FF; +} +.opt { + color: #008000; +} +.cond { + color: #990000; +} + +.choice +{ + background-color:#F7F9D0; +} +.seq +{ + background-color:#C9DECB; +} +.group1 +{ + background-color:#F8F1F1; +} +.group2 +{ + background-color:#DCEDEA; +} + + +ul ul { + list-style-type: disc; +} + +ul ul ul { + list-style-type: disc; +} + +ul.hierarchy { + color: green; +} + +em { + color: #000000; + font-style:italic; +} + + + +/* CMSIS Tables */ +table.cmtab1 { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; + text-align: justify; + width:70%; +} + +th.cmtab1 { + background: #EBEFF6; + font-weight: bold; + height: 28px; +} + +td.cmtab1 { + padding:1px; + text-align: left; +} + +table.cmtable { + border-collapse:collapse; + text-align: justify; +} + +table.cmtable td, table.cmtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.cmtable th { + background-color: #EBEFF6; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +td.MonoTxt { + font-family:"Arial monospaced for SAP"; +} + +td.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.XML-Token +{ + azimuth: 180; + font-style:italic; + color:Maroon; + z-index:20; + +} + +span.h2 +{ + font-size: 120%; + font-weight: bold; +} + + + +/* @group Heading Levels */ + +h1 { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3A568E; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4464A5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9AAED5; + color: #ffffff; + border: 1px double #849CCC; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C3CFE6; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; +} + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C3CFE6; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C3CFE6; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EDF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9AAED5; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A2B4D8; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4769AD; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #C3CFE6; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4464A5; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4464A5; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A2B4D8; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 0px 6px 0px; + color: #233456; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A7B8DA; + border-left: 1px solid #A7B8DA; + border-right: 1px solid #A7B8DA; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #708CC4; + border-top:1px solid #5072B7; + border-left:1px solid #5072B7; + border-right:1px solid #C3CFE6; + border-bottom:1px solid #C3CFE6; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3A568E; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #293C63; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2B4069; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #EBEFF6; + color: #000000; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A7B8DA; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A7B8DA; + border-bottom: 1px solid #A7B8DA; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A7B8DA; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E7F3; + font-size: 90%; + color: #233456; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A7B8DA; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + height:30px; + line-height:30px; + color:#889FCE; + border:solid 1px #C1CDE5; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#344D7E; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#6583BF; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#344D7E; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + margin-left: 5px; + font-size: 8pt; + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C3CFE6; +} + +div.headertitle +{ + padding: 5px 5px 5px 7px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5072B7; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #8EA4D0; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#314877; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D7DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4464A5; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/SVD/html/doxygen.css b/CMSIS/Documentation/SVD/html/doxygen.css new file mode 100644 index 0000000..2642e8f --- /dev/null +++ b/CMSIS/Documentation/SVD/html/doxygen.css @@ -0,0 +1,1172 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font: 400 14px/19px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px; + margin: 4px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + width: 100%; + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/CMSIS/Documentation/SVD/html/doxygen.png b/CMSIS/Documentation/SVD/html/doxygen.png new file mode 100644 index 0000000..3ff17d8 Binary files /dev/null and b/CMSIS/Documentation/SVD/html/doxygen.png differ diff --git a/CMSIS/Documentation/SVD/html/dynsections.js b/CMSIS/Documentation/SVD/html/dynsections.js new file mode 100644 index 0000000..116542f --- /dev/null +++ b/CMSIS/Documentation/SVD/html/dynsections.js @@ -0,0 +1,78 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + +Cluster Level +CMSIS-SVD: Cluster Level + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Cluster Level
    +
    +
    +

    Cluster adds an optional sub-level within the CMSIS SVD registers level. A cluster describes a sequence of neighboring registers within a peripheral. A cluster specifies the addressOffset relative to the baseAddress of the peripheral. All register elements within a cluster specify their addressOffset relative to the cluster base address (peripheral:baseAddress + cluster:addressOffset). Multiple <register/> and <cluster> sections may occur in any order. Since version 1.3 of the specification the nesting of <cluster> elements is supported. This means, that within a <cluster> section any number of <register> and <cluster> sections may occur. Nested cluster express hierarchical structures of registers. It is predominantely targeted at the generation of device header files where it allows to create C data structure within the peripheral structure type instead of a flat list of registers. Note that you can also specify an array of a cluster using the <dim> element.

    +
    +
    +<registers> 
        <clusterderivedFrom=identifierType>
    +    
    +        <!-- dimElementGroup --> 
    +        <dim>scaledNonNegativeInteger</dim>
    +        <dimIncrement>scaledNonNegativeInteger</dimIncrement>
    +        <dimIndex>dimIndexType</dimIndex>
    +        <!-- end of dimElementGroup --> 
    +    
    +        <name>identifierType</name>
    +        <description>xs:string</description>
    +    
    +        <headerStructName>identifierType</headerStructName>
    +        <alternateCluster>identifierType</alternateCluster>
    +    
    +        <addressOffset>scaledNonNegativeInteger</addressOffset>
            <cluster> ... </cluster>
    +        <register> ... </register>
    +            ...
    +    </cluster>
    +    ...
    +    <register>
    +        ...
    +    </register>
    +    <cluster>
    +        ...
    +    </cluster>
    +     
    +<registers> 
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Attribute Name Description Type Occurrence
    derivedFrom Specifies the name of the cluster from which to inherit the data. Elements being specified underneath will override the inherited values.
    +Remarks: When deriving a cluster, it is mandatory to specify at least the name, the description, and the addressOffset.
    registerType 0..1
    Element Name Description Type Occurrence
    See dimElementGroup for details.
    dim The value defines the number of elements in an array of clusters. scaledNonNegativeInteger 1..1
    dimIncrement If dim is specified, this element becomes mandatory. The element specifies the address increment in between two neighboring clusters of the cluster array in the address map. scaledNonNegativeInteger 1..1
    dimIndex Specifies the substrings that replaces the [%s] placeholder within the cluster name. By default, the index is a decimal value starting with 0 for the first cluster element. dimIndexType 0..1
    name String that identifies the cluster. Register names are required to be unique within the scope of a peripheral. Specify [%s] for generating an array in the device header file. identifierType 1..1
    description String describing the details of the register. xs:string 0..1
    alternateCluster This tag needs to specify the name of the original description of the register sequence if this cluster provides an alternative description. Otherwise the SVDConv will issue errors. identifierType 0..1
    headerStructName This tag specifies the struct type name in the device header file. If not specified, then the name of the cluster will be used. identifierType 0..1
    addressOffset Value defining the cluster address relative to the baseAddress defined by the peripheral of the register. scaledNonNegativeInteger 1..1
    register register description registerType 0..*
    cluster cluster description clusterType 0..*
    +

    +Example:

    +
    <cluster>
    +
    <dim>4</dim>
    +
    <dimIncrement>8</dimIncrement>
    +
    <dimIndex>0-3</dimIndex>
    +
    <name>TX[%s]</name>
    +
    <description>Grouping of Transfer data and address</description>
    +
    <addressOffset>0x40</addressOffset>
    +
    <register>
    +
    <name>TX_DATA</name>
    +
    ...
    +
    <addressOffset>0x0</addressOffset>
    +
    ...
    +
    </register>
    +
    <register>
    +
    <name>TX_ADDR</name>
    +
    ...
    +
    <addressOffset>0x4</addressOffset>
    +
    ...
    +
    </register>
    +
    </cluster>
    +

    The example above describes an array of type TX with 4 elements. TX is a cluster of two consecutive registers with 4 elements. The device header file looks like this:

    +
    typedef struct {
    +
    ...
    +
    struct {
    +
    __IO uint32_t TX_DATA;
    +
    __IO uint32_t TX_ADDR;
    +
    } TX[4];
    +
    ...
    +
    } ..._Type;
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__cpu_section__gr.html b/CMSIS/Documentation/SVD/html/group__cpu_section__gr.html new file mode 100644 index 0000000..b728a35 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__cpu_section__gr.html @@ -0,0 +1,201 @@ + + + + + +CPU Section +CMSIS-SVD: CPU Section + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    CPU Section
    +
    +
    +

    The CPU section describes the processor included in the microcontroller device. This section is mandatory if the SVD file shall be used for the device header file generation.

    +
    +<cpu>
    +    <name>cpuNameType</name>
    +    <revision>revisionType</revision>
    +    <endian>endianType</endian>
    +    <mpuPresent>xs:boolean</mpuPresent>
    +    <fpuPresent>xs:boolean</fpuPresent>
    +    <fpuDP>xs:boolean</fpuDP>
    +    <icachePresent>xs:boolean</icachePresent>
    +    <dcachePresent>xs:boolean</dcachePresent>
    +    <itcmPresent>xs:boolean</itcmPresent>
    +    <dtcmPresent>xs:boolean</dtcmPresent>
    +    <vtorPresent>xs:boolean</vtorPresent>
    +    <nvicPrioBits>scaledNonNegativeInteger</nvicPrioBits>
    +    <vendorSystickConfig>xs:boolean</vendorSystickConfig>
    +    <deviceNumInterrupts>scaledNonNegativeInteger<deviceNumInterrupts>
    +    <sauNumRegions>scaledNonNegativeInteger</sauRegions>
    +    <sauRegionsConfig>sauRegionsConfigType</sauRegionsConfig>
    +    
    +</cpu>
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Element Name Description Type Occurrence
    name The predefined tokens are:
      +
    • CM0: ARM Cortex-M0
    • +
    • CM0PLUS: ARM Cortex-M0+
    • +
    • CM3: ARM Cortex-M3
    • +
    • CM4: ARM Cortex-M4
    • +
    • CM7: ARM Cortex-M7
    • +
    • SC000: ARM Secure Core SC000
    • +
    • SC300: ARM Secure Core SC300
    • +
    • other: other processor architectures
    • +
    +
    cpuNameType 1..1
    revisionType Defines the HW revision of the processor. The defined version format is rNpM (N,M = [0 - 9]). revisionType 1..1
    endian Defines the endianess of the processor being one of:
      +
    • little: little endian memory (least significant byte gets allocated at the lowest address).
    • +
    • big: byte invariant big endian data organization (most significant byte gets allocated at the lowest address).
    • +
    • selectable: little and big endian are configurable for the device and become active after the next reset.
    • +
    • other: the endianess is neither little nor big endian.
    • +
    +
    endianType 1..1
    mpuPresent Indicates that the processor is equipped with a memory protection unit (MPU). This tag is either set to true or false, 1 or 0. boolean 1..1
    fpuPresent Indicates that the processor is equipped with a hardware floating point unit (FPU). Cortex-M4 and Cortex-M7 are the only available Cortex-M processor with an optional FPU. This tag is either set to true or false, 1 or 0. boolean 1..1
    fpuDP Indicates that the processor is equipped with a double precision floating point unit. Flag is only valid if fpuPresent is set true. Cortex-M7 is currently the only Cortex-M processor available with a double precision floating point unit. boolean 0..1
    icachePresent Indicates that the processor has an instruction cache. Note: only an option for Cortex-M7 based devices. boolean 0..1
    dcachePresent Indicates that the processor has an data cache. Note: only an option for Cortex-M7 based devices. boolean 0..1
    itcmPresent Indicates that the processor has an instruction tightly coupled memory. Note: only an option for Cortex-M7 based devices. boolean 0..1
    dtcmPresent Indicates that the processor has an data tightly coupled memory. Note: only an option for Cortex-M7 based devices. boolean 0..1
    vtorPresent This is an optional flag used for the Cortex-M0+ based devices only. It indicates whether the Vector Table Offset Register (VTOR) is implemented in the Cortex-M0+ device or not. This tag is either set to true or false, 1 or 0. If it is not specified VTOR is assumed to be present. boolean 1..1
    nvicPrioBits Defines the number of bits that are available in the Nested Vectored Interrupt Controller (NVIC) for configuring the priority. scaledNonNegativeInteger 1..1
    vendorSystickConfig Indicates whether the processor implements a vendor-specific System Tick Timer. If false, then the ARM defined System Tick Timer is available. If true, then a vendor-specific System Tick Timer must be implemented. This tag is either set to true or false, 1 or 0. boolean 1..1
    deviceNumInterrupts Specifies the total number of interrupts implemented by the device. This value can be used to validate the number of described interrupts scaledNonNegativeInteger 0..1
    sauNumRegions If set and not zero this flag indicates that the device is equipped with a Security Attribution Unit (SAU) and the maximum number of available address regions. scaledNonNegativeInteger 0..1
    sauRegionsConfig

    If the Secure Attribution Unit is preconfigured by HW or Firmware, the settings are described here.

    +

    <sauRegionsConfig enabled=true protectionWhenDisabled="s">

    +
      +
    • <base>adddress</base>: SAU Region base adddress (type=scaledNonNegativeInteger) [1..1]
    • +
    • <limit>address</limit>: SAU Region limit adddress (type=scaledNonNegativeInteger) [1..1]
    • +
    • <access>flag</access>: one of "n" = non-secure or "c" = secure callable (type=string) [1..1]
    • +
    • attribute: enabled = [true|false]: SAU Region is active (type=boolean) [0..1]
    • +
    • attribute: name = [string]: brief name for identifying the SAU Region(type=string) [0..1]
    • +
    +

    </sauRegionsConfig>

    +
      +
    • attribute: enabled = [true|false]: enable/disable the complete SAU (type=boolean) [0..1]
    • +
    • attribute: protectionWhenDisabled = [s|n]: if the complete SAU is disabled the whole memory is treated either "s" = secure or "n" non-secure - [0..1] (default="s")
    • +
    +
    SauRegionsConfigType

    0..1

    +

    +
    +

    +Example:

    +
    ...
    +
    <cpu>
    +
    <name>CM7</name>
    +
    <revision>r0p0</revision>
    +
    <endian>little</endian>
    +
    <mpuPresent>true</mpuPresent>
    +
    <!-- has double precision FPU -->
    +
    <fpuPresent>true</fpuPresent>
    +
    <fpuDP>true</fpuDP>
    +
    <!-- has instruction and data cache -->
    +
    <icachePresent>true</icachePresent>
    +
    <dcachePresent>true</dcachePresent>
    +
    <!-- has no instruction nor data tighly coupled memory -->
    +
    <itcmPresent>false</itcmPresent>
    +
    <dtcmPresent>false</dtcmPresent>
    +
    <nvicPrioBits>4</nvicPrioBits>
    +
    <vendorSystickConfig>false</vendorSystickConfig>
    +
    </cpu>
    +
    ...
    +

    This example describes a device based on a Cortex-M7 core of HW revision r0p0, with fixed little endian memory scheme, including Memory Protection Unit and double precision hardware Floating Point Unit. It has and instruction and a data cache but no Tightly Coupled Memories. The Nested Vectored Interrupt Controller uses 4 bits for configuring the priority of an interrupt. It is equipped with the standard System Tick Timer as defined by ARM.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html b/CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html new file mode 100644 index 0000000..a4a279e --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__device_section_extensions__gr.html @@ -0,0 +1,150 @@ + + + + + +Extensions to the Device Section +CMSIS-SVD: Extensions to the Device Section + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Extensions to the Device Section
    +
    +
    +

    A number of elements have been added to the device section. These elements are optional but are highly recommended to enable the generation of consistent and CMSIS-compliant device header files from SVD descriptions.

    +
    +<device schemaVersion="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD_Schema_1_1.xsd">
    +    <vendor>stringType</vendor>
    +    <vendorID>stringType</vendorID>
    +    <name>identifierType</name>
    +    <series>stringType</series>
    +    <version>xs:string</version>
    +    <description>xs:string</description>
    +    <licenseText>xs:string</licenseText>
    +    <cpu>cpuType</cpu>
    +    <headerSystemFilename>identifierType</headerSystemFilename>
    +    <headerDefinitionsPrefix>identifierType</headerDefinitionsPrefix>
    +
    +    ...
    +</device>
    +
    +
    + + + + + + + + + + + + + + +
    Element Name Description Type Occurrence
    vendor This specifies the vendor of the device using the full name. stringType 0..1
    vendorID This specifies the vendor of the device using the vendor abbreviation that does not contain any spaces or special characters. This information shall be used for defining the directory. stringType 0..1
    series This element specifies the name of the device series. stringType 0..1
    licenseText The content of this tag will be copied into the header section of the generated device header file and shall contain the legal disclaimer. New lines can be inserted by using "\n". This section is mandatory if the SVD file shall be used for generating the device header file. stringType 0..1
    headerSystemFilename This tag specifies the file name (without extension) of the device-specific system include file (system_<device>.h; See CMSIS-Core description). This tag is used by the header file generator for customizing the include statement referencing the CMSIS system file within the CMSIS device header file. By default, the filename is "<kbd>system_<i>device:name</i>.h". In cases where a device series shares a single system header file, the name of the series shall be used instead of the individual device name. identifierType 0..1
    headerDefinitionsPrefix The element specifies the string being prepended to all type definition names generated in the CMSIS-Core device header file. This is used if the silicon vendor's software requires vendor-specific types in order to avoid name clashes with other definied types. identifierType 0..1
    +

    +Example:

    +
    ...
    +
    <device schemaVersion="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd">
    +
    <vendor>Advanced RISC Machines</vendor>
    +
    <vendorID>ARM</vendorID>
    +
    ...
    +
    <series>ARMCM3</series>
    +
    ...
    +
    <licenseText>
    +
    ARM Limited (ARM) is supplying this software for use with Cortex-M \n
    +
    processor based microcontrollers. This file can be freely distributed \n
    +
    within development tools that are supporting such ARM based processors. \n
    +
    \n
    +
    THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED \n
    +
    OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF \n
    +
    MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. \n
    +
    ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR \n
    +
    CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
    +
    </licenseText>
    +
    ...
    +
    <headerSystemFilename>system_ARMCM4</headeSystemFilename>
    +
    <headerDefinitionsPrefix>ARM_</headerDefinitionsPrefix>
    +
    ...
    +
    </device>
    +
    ...
    +

    This example describes a device from the vendor Advanced RISC Machines using ARM as short name. The device belongs to the device family identified by ARMCM4. The legal disclaimer in the header files generated from this description is captured and formatted in accordance to the standard ARM CMSIS disclaimer. The CMSIS system file included by the generated device header file is named system_ARMCM4.h and all type definitions will be prepended with ARM_.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html b/CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html new file mode 100644 index 0000000..307f9b8 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__dim_element_group__gr.html @@ -0,0 +1,121 @@ + + + + + +dimElementGroup +CMSIS-SVD: dimElementGroup + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    dimElementGroup
    +
    +
    +

    The SVD specification supports the array-of-registers concept. The single register description gets duplicated automatically into an array. The size of the array is specified by the <dim> element. The register names can be composed by the register name and an index-specific substring defined in <dimIndex>. The <dimIncrement> specifies the address offset between two registers. The elements below can be used to generate an array of registers.

    + + + + + + + + + +
    Element Name Description Type Occurrence
    dim The value defines the number of elements in an array of registers. scaledNonNegativeInteger 1..1
    dimIncrement If dim is specified, this element becomes mandatory. The element specifies the address increment in between two neighboring registers of the register array in the address map. scaledNonNegativeInteger 1..1
    dimIndex Specifies the substrings that replaces the %s placeholder within the register name. By default, the index is a decimal value starting with 0 for the first register. dimIndexType 0..1
    +

    +Examples:

    +
    ...
    +
    <register>
    +
    <dim>6</dim>
    +
    <dimIncrement>4</dimIncrement>
    +
    <dimIndex>A,B,C,D,E,Z</dimIndex>
    +
    <name>GPIO_%s_CTRL</name>
    +
    ...
    +
    </register>
    +

    The code above generates: => GPIO_A_CTRL, GPIO_B_CTRL, GPIO_C_CTRL, GPIO_D_CTRL, GPIO_E_CTRL, GPIO_Z_CTRL

    +
    ...
    +
    <register>
    +
    <dim>4</dim>
    +
    <dimIncrement>4</dimIncrement>
    +
    <dimIndex>3-6</dimIndex>
    +
    <name>IRQ%s</name>
    +
    ...
    +
    </register>
    +

    The example above generates: => IRQ3, IRQ4, IRQ5, IRQ6

    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__elem__type__gr.html b/CMSIS/Documentation/SVD/html/group__elem__type__gr.html new file mode 100644 index 0000000..527ca00 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__elem__type__gr.html @@ -0,0 +1,103 @@ + + + + + +Element Groups +CMSIS-SVD: Element Groups + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    Element Groups
    +
    +
    + + + + + + + + +

    +Content

     dimElementGroup
     
     registerPropertiesGroup
     
     protectionStringType_gr
     
    +

    Description

    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__elem__type__gr.js b/CMSIS/Documentation/SVD/html/group__elem__type__gr.js new file mode 100644 index 0000000..f7906f3 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__elem__type__gr.js @@ -0,0 +1,6 @@ +var group__elem__type__gr = +[ + [ "dimElementGroup", "group__dim_element_group__gr.html", null ], + [ "registerPropertiesGroup", "group__register_properties_group__gr.html", null ], + [ "protectionStringType_gr", "group__protection_string_type__gr.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html b/CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html new file mode 100644 index 0000000..5545fe3 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__peripheral_section_extensions__gr.html @@ -0,0 +1,117 @@ + + + + + +Extensions to the Peripheral Section +CMSIS-SVD: Extensions to the Peripheral Section + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Extensions to the Peripheral Section
    +
    +
    +

    The following elements have been added to the peripheral section. All new elements are optional but are highly recommended to enable the generation of consistent and CMSIS-compliant device header files from SVD descriptions.

    + + + + + + + +
    Element Name Description Type Occurrence
    alternatePeripheral All address blocks in the memory space of a device are assigned to a unique peripheral by default. If there are multiple peripherals describing the same address blocks, this needs to be specified explicitly. A peripheral redefining an address block needs to specify the name of the peripheral that is listed first in the description. If no alternate peripheral is specified, then the SVDConv utility will generate errors. identifierType 0..1
    headerStructName The header file generator uses the name of a peripheral as the base name for the C structure type. If this element is specfied, then this string is used instead of the peripheral name. This is particularly useful when multiple peripherals get derived from a peripheral description and a generic type name shall be used. identifierType 0..1
    +

    +Example:

    +
    <peripheral>
    +
    <name>Timer1</name>
    +
    <version>1.0</version>
    +
    <description>Timer 1 is a standard timer ... </description>
    +
    <baseAddress>0x40002000</baseAddress>
    +
    ...
    +
    </peripheral>
    +
    <peripheral>
    +
    <name>Timer1_Alt</name>
    +
    <version>1.0</version>
    +
    <description>Alternate Timer 1 is a special timer execution mode ... </description>
    +
    <baseAddress>0x40002000</baseAddress>
    +
    <alternatePeripheral>Timer1</alternatePeripheral>
    +
    ...
    +
    </peripheral>
    +

    Two timer peripheral descriptions are specified for the same memory block. No redefined addresses will be reported for both peripherals.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html b/CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html new file mode 100644 index 0000000..f4730c7 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__protection_string_type__gr.html @@ -0,0 +1,118 @@ + + + + + +protectionStringType_gr +CMSIS-SVD: protectionStringType_gr + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    protectionStringType_gr
    +
    +
    +

    The protection element specify security priviliges for a successfull access to an address block, individual register or all registers within the given scope (Version 1.3). This information is relevant for both the programmer as well as the debugger if it is not granted universal access permissions. If no specific information is provided a register is accessible in any mode non-secure and secure mode.

    +

    +Example:

    +
    <device schemaVersion="1.3" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd">
    +
    <name>ARM_Cortex_M3</name>
    +
    <version>0.1</version>
    +
    <description>ARM Cortex-M3 based Microcontroller demonstration device</description>
    +
    <addressUnitBits>8</addressUnitBits>
    +
    <width>32</width>
    +
    <size>32</size>
    +
    <access>read-write</access>
    +
    <protection>s</protection>
    +
    ...
    +
    <peripherals>
    +
    ...
    +
    </peripherals>
    +
    </device>
    +

    In the example above the read and write accesses to all registers of the device require to be secure mode accesses. Note that this default can be refined on subsequent levels of the description.

    + + + + + +
    Element Name Description Access Type Occurrence
    secure Specifies the access type that requires "secure" mode access for a successful access to the register(s).
      +
    • "s" = secure permission required for access
    • +
    • "n" = non-secure or secure permission required for access
    • +
    +
    0..1
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html b/CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html new file mode 100644 index 0000000..9b2e93e --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__register_properties_group__gr.html @@ -0,0 +1,114 @@ + + + + + +registerPropertiesGroup +CMSIS-SVD: registerPropertiesGroup + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    registerPropertiesGroup
    +
    +
    +

    Register properties can be set on device, peripheral, and register level. Element values defined on a lower level overwrite element values defined on a more general level. For example, the register-level.<size> will overwrite peripheral-level.<size>. Elements that have not been defined on a more general level, must be defined at register level at the latest.

    + + + + + + + + + + + + + +
    Element Name Description Type Occurrence
    size Defines the default bit-width of any register contained in the device (implicit inheritance). This element can be redefined on any lower level of the description using the size element there. scaledNonNegativeInteger 0..1
    access Defines the default access rights for all registers. Access rights can be redefined on any lower level of the description using the access element there.
    +
    + The predefined tokens are:
      +
    • read-only: read access is permitted. Write operations have an undefined result.
    • +
    • write-only: write access is permitted. Read operations have an undefined result.
    • +
    • read-write: both read and write accesses are permitted. Writes affect the state of the register and reads return a value related to the register.
    • +
    • writeOnce: only the first write after reset has an effect on the register. Read operations deliver undefined results.
    • +
    • read-writeOnce: Read operations deliver a result related to the register content. Only the first write access to this register after a reset will have an effect on the register content.
    • +
    +
    accessType 0..1
    protection Defines the protection settings for a register. A device can have registers protected from access by the programmer and debugger. protectionStringType 0..1
    resetValue Defines the default value for all registers at RESET. The default register value can be redefined on any lower level using the resetValue element there. The actual reset value is calculated from the resetValue and the resetMask. The mask is used to specify bits with an undefined reset value. scaledNonNegativeInteger 0..1
    resetMask Identifies which register bits have a defined reset value. These bit positions are set to one. Bit positions with an undefined reset value are set to zero. scaledNonNegativeInteger 0..1
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html b/CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html new file mode 100644 index 0000000..f62ed8b --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__register_section_extensions__gr.html @@ -0,0 +1,147 @@ + + + + + +Extensions to the Register Section +CMSIS-SVD: Extensions to the Register Section + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Extensions to the Register Section
    +
    +
    +

    The following elements have been added to the register section. All new elements are optional.

    + + + + + + + +
    Element Name Description Type Occurrence
    alternateRegister This tag can reference a register that has been defined above to current location in the description and that describes the memory location already. This tells the SVDConv's address checker that the redefinition of this particular register is intentional. The register name needs to be unique within the scope of the current peripheral. A register description is defined either for a unique address location or could be a redefinition of an already described address. In the latter case, the register can be either marked alternateRegister and needs to have a unique name, or it can have the same register name but is assigned to a register subgroup through the tag alternateGroup (specified in version 1.0). identifierType 0..1
    dataType It can be useful to assign a specific native C datatype to a register. This helps avoiding type casts. For example, if a 32 bit register shall act as a pointer to a 32 bit unsigned data item, then dataType can be set to "uint32_t *". The following simple data types are predefined:
      +
    • uint8_t: unsigned byte
    • +
    • uint16_t: unsigned half word
    • +
    • uint32_t: unsigned word
    • +
    • uint64_t: unsigned double word
    • +
    • int8_t: signed byte
    • +
    • int16_t: signed half word
    • +
    • int32_t: signed world
    • +
    • int64_t: signed double word
    • +
    • uint8_t *: pointer to unsigned byte
    • +
    • uint16_t *: pointer to unsigned half word
    • +
    • uint32_t *: pointer to unsigned word
    • +
    • uint64_t *: pointer to unsigned double word
    • +
    • int8_t *: pointer to signed byte
    • +
    • int16_t *: pointer to signed half word
    • +
    • int32_t *: pointer to signed world
    • +
    • int64_t *: pointer to signed double word
    • +
    +
    dataTypeType 0..1
    +

    +Example:

    +
    ...
    +
    <register>
    +
    <name>TIM_MODEA</name>
    +
    <description>In mode A this register acts as a reload value</description>
    +
    <addressOffset>0xC</addressOffset>
    +
    </register>
    +
    <register>
    +
    <name>TIM_MODEB</name>
    +
    <description>In mode B this register acts as the compare value</description>
    +
    <alternateRegister>TIM_MODEA</alternateRegister>
    +
    <addressOffset>0xC</addressOffset>
    +
    </register>
    +
    <register>
    +
    <name>DMA_DATA</name>
    +
    <description>This register contains the address of the data being transferred</description>
    +
    <dataType>uint32_t *</dataType>
    +
    <addressOffset>0xf0</addressOffset>
    +
    </register>
    +
    ...
    +

    This example describes two registers, TIM_MODEA and TIM_MODEB. Both have the same address offset. Based on the configured operation model being A or B, the register acts as reload or compare value. The register DMA_DATA is specified as a pointer to unsigned word data. The code generated for the device header file is:

    +
    typedef struct {
    +
    union {
    +
    __IO uint32_t TIM_MODEA;
    +
    __IO uint32_t TIM_MODEB;
    +
    };
    +
    __IO uint32_t * DMA_DATA;
    +
    ...
    +
    } <peripheral:name>_Type;
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html b/CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html new file mode 100644 index 0000000..b64cc4a --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__schema__1__2__gr.html @@ -0,0 +1,711 @@ + + + + + +CMSIS-SVD Schema File +CMSIS-SVD: CMSIS-SVD Schema File + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    CMSIS-SVD Schema File
    +
    +
    +
    <?xml version="1.0" encoding="UTF-8"?>
    +<!-- 
    +  date: 22.10.2015
    +
    +  Copyright (C) 2011 - 2015 ARM Limited. All rights reserved.
    +
    +  Redistribution and use in source and binary forms, with or without
    +  modification, are permitted provided that the following conditions are met:
    +   - Redistributions of source code must retain the above copyright
    +     notice, this list of conditions and the following disclaimer.
    +   - Redistributions in binary form must reproduce the above copyright
    +     notice, this list of conditions and the following disclaimer in the
    +     documentation and/or other materials provided with the distribution.
    +   - Neither the name of ARM nor the names of its contributors may be used 
    +     to endorse or promote products derived from this software without 
    +     specific prior written permission.
    +
    +  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
    +  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
    +  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    +  ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
    +  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    +  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
    +  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
    +  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
    +  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
    +  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    +  POSSIBILITY OF SUCH DAMAGE.
    +
    +  This is CMSIS-SVD
    +  
    +  Version 1.3.1:
    +  fixed peripheral name element type to identifierType to support %s for peripheral arrays
    +  added optional protection element to addressBlockType and added p=privileged 
    +
    +  Version 1.3:
    +  added dim to peripherals to describe an array of peripherals.
    +  added nesting of clusters to support hierarchical register structures.
    +  added protection element as part of the registerPropertiesGroup indicating
    +  special permissions are required for accessing a register.
    +  CPU Section extended with description of the Secure Attribution Unit.
    +  
    +  Version 1.2:
    +  Cortex-M7 support items have been added as optional tags for the device header file generation:
    +  fpuDP, icachePresent, dcachePresent, itcmPresent, dtcmPresent
    +  
    +  Version 1.1:
    +  For backward compatibility all additional tags have been made optional.
    +  Extensions may be mandatory for successful device header file generation
    +  Other changes are related to some restructuring of the schema.
    +  
    +  Note that the memory section has been removed since this would limit the
    +  reuse of descriptions for a series of devices.
    + -->
    +
    +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="qualified" version="1.3">
    +  <!-- stringType requires a none empty string of a least one character length -->
    +  <xs:simpleType name="stringType">
    +    <xs:restriction base="xs:string">
    +      <xs:minLength value="1"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- cpuType specifies a selection of Cortex-M and Secure-Cores. This list will get extended as new processors are released -->
    +  <xs:simpleType name="cpuNameType">
    +    <xs:restriction base="xs:token">
    +      <xs:enumeration value="CM0"/>
    +      <xs:enumeration value="CM0PLUS"/>
    +      <xs:enumeration value="CM0+"/>
    +      <xs:enumeration value="CM1"/>
    +      <xs:enumeration value="SC000"/>
    +      <xs:enumeration value="CM3"/>
    +      <xs:enumeration value="SC300"/>
    +      <xs:enumeration value="CM4"/>
    +      <xs:enumeration value="CM7"/>
    +      <xs:enumeration value="CA5"/>
    +      <xs:enumeration value="CA7"/>
    +      <xs:enumeration value="CA8"/>
    +      <xs:enumeration value="CA9"/>
    +      <xs:enumeration value="CA15"/>
    +      <xs:enumeration value="CA17"/>
    +      <xs:enumeration value="CA53"/>
    +      <xs:enumeration value="CA57"/>
    +      <xs:enumeration value="CA72"/>
    +      <xs:enumeration value="other"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- revisionType specifies the CPU revision format as defined by ARM (rNpM) -->
    +  <xs:simpleType name="revisionType">
    +    <xs:restriction base="xs:string">
    +      <xs:pattern value="r[0-9]p[0-9]"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- EndianType pre-defines the tokens for specifying the endianess of the device -->
    +  <xs:simpleType name="endianType">
    +    <xs:restriction base="xs:token">
    +      <xs:enumeration value="little"/>
    +      <xs:enumeration value="big"/>
    +      <xs:enumeration value="selectable"/>
    +      <xs:enumeration value="other"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- dataType pre-defines the tokens in line with CMSIS data type definitions -->
    +  <xs:simpleType name="dataTypeType">
    +    <xs:restriction base="xs:token">
    +      <xs:enumeration value="uint8_t"/>
    +      <xs:enumeration value="uint16_t"/>
    +      <xs:enumeration value="uint32_t"/>
    +      <xs:enumeration value="uint64_t"/>
    +      <xs:enumeration value="int8_t"/>
    +      <xs:enumeration value="int16_t"/>
    +      <xs:enumeration value="int32_t"/>
    +      <xs:enumeration value="int64_t"/>
    +      <xs:enumeration value="uint8_t *"/>
    +      <xs:enumeration value="uint16_t *"/>
    +      <xs:enumeration value="uint32_t *"/>
    +      <xs:enumeration value="uint64_t *"/>
    +      <xs:enumeration value="int8_t *"/>
    +      <xs:enumeration value="int16_t *"/>
    +      <xs:enumeration value="int32_t *"/>
    +      <xs:enumeration value="int64_t *"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- nvicPrioBitsType specifies the integer value range for the number of bits used in NVIC to encode priority levels -->
    +  <xs:simpleType name="nvicPrioBitsType">
    +    <xs:restriction base="xs:integer">
    +      <xs:minInclusive value="2"/>
    +      <xs:maxInclusive value="8"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- identifierType specifies the subset and sequence of characters used for specifying identifiers within the description. -->
    +  <!-- this is particularly important as these are used in ANSI C Structures during the device header file generation -->
    +  <xs:simpleType name="identifierType">
    +    <xs:restriction base="xs:string">
    +      <xs:pattern value="((%s)[_A-Za-z]{1}[_A-Za-z0-9]*)|([_A-Za-z]{1}[_A-Za-z0-9]*(\[%s\])?)|([_A-Za-z]{1}[_A-Za-z0-9]*(%s)?[_A-Za-z0-9]*)"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- enumerationNameType specifies the subset and sequence of characters used for specifying names of enumeratedValues. -->
    +  <!-- this is particularly important as these are used in ANSI C Structures during the device header file generation -->
    +  <xs:simpleType name="enumerationNameType">
    +    <xs:restriction base="xs:string">
    +      <xs:pattern value="[_A-Za-z0-9]*"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- V1.3: Protection Access Attribute Strings -->
    +  <xs:simpleType name="protectionStringType">
    +    <xs:restriction base="xs:string">
    +      <!-- s = Secure                      -->
    +      <!-- n = Non-secure                  -->
    +      <!-- p = Privileged                  -->
    +      <xs:pattern value="[snp]"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- V1.3: SAU Access Type -->
    +  <xs:simpleType name="sauAccessType">
    +    <xs:restriction base="xs:string">
    +      <!-- c = non-secure Callable / Secure -->
    +      <!-- n = Non-secure                   -->
    +      <xs:pattern value="[cn]"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +
    +  <!-- dimIndexType specifies the subset and sequence of characters used for specifying the sequence of indices in register arrays -->
    +  <xs:simpleType name="dimIndexType">
    +    <xs:restriction base="xs:string">
    +      <xs:pattern value="[0-9]+\-[0-9]+|[A-Z]-[A-Z]|[_0-9a-zA-Z]+(,\s*[_0-9a-zA-Z]+)+"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- scaledNonNegativeInteger specifies the format in which numbers are represented in hexadecimal or decimar format -->
    +  <xs:simpleType name="scaledNonNegativeInteger">
    +    <xs:restriction base="xs:string">
    +      <xs:pattern value="[+]?(0x|0X|#)?[0-9a-fA-F]+[kmgtKMGT]?"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- enumeratedValueDataType specifies the number formats for the values in enumeratedValues -->
    +  <xs:simpleType name="enumeratedValueDataType">
    +    <xs:restriction base="xs:string">
    +      <xs:pattern value="[+]?(0x|0X|#)?[0-9a-fxA-FX]+"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- accessType specfies the pre-defined tokens for the available accesses -->
    +  <xs:simpleType name="accessType">
    +    <xs:restriction base="xs:token">
    +      <xs:enumeration value="read-only"/>
    +      <xs:enumeration value="write-only"/>
    +      <xs:enumeration value="read-write"/>
    +      <xs:enumeration value="writeOnce"/>
    +      <xs:enumeration value="read-writeOnce"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- modifiedWriteValuesType specifies the pre-defined tokens for the write side effects -->
    +  <xs:simpleType name="modifiedWriteValuesType">
    +    <xs:restriction base="xs:token">
    +      <xs:enumeration value="oneToClear"/>
    +      <xs:enumeration value="oneToSet"/>
    +      <xs:enumeration value="oneToToggle"/>
    +      <xs:enumeration value="zeroToClear"/>
    +      <xs:enumeration value="zeroToSet"/>
    +      <xs:enumeration value="zeroToToggle"/>
    +      <xs:enumeration value="clear"/>
    +      <xs:enumeration value="set"/>
    +      <xs:enumeration value="modify"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- readAction type specifies the pre-defined tokens for read side effects -->
    +  <xs:simpleType name="readActionType">
    +    <xs:restriction base="xs:token">
    +      <xs:enumeration value="clear"/>
    +      <xs:enumeration value="set"/>
    +      <xs:enumeration value="modify"/>
    +      <xs:enumeration value="modifyExternal"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- enumUsageType specifies the pre-defined tokens for selecting what access types an enumeratedValues set is associated with -->
    +  <xs:simpleType name="enumUsageType">
    +    <xs:restriction base="xs:token">
    +      <xs:enumeration value="read"/>
    +      <xs:enumeration value="write"/>
    +      <xs:enumeration value="read-write"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- bitRangeType specifies the bit numbers to be restricted values from 0 - 69 -->
    +  <xs:simpleType name="bitRangeType">
    +    <xs:restriction base="xs:token">
    +      <xs:pattern value="\[([0-4])?[0-9]:([0-4])?[0-9]\]"/>
    +    </xs:restriction>
    +  </xs:simpleType>
    +  <!-- writeContraintType specifies how to describe the restriction of the allowed values that can be written to a resource -->
    +  <xs:complexType name="writeConstraintType">
    +    <xs:choice>
    +      <xs:element name="writeAsRead" type="xs:boolean"/>
    +      <xs:element name="useEnumeratedValues" type="xs:boolean"/>
    +      <xs:element name="range">
    +        <xs:complexType>
    +          <xs:sequence>
    +            <xs:element name="minimum" type="scaledNonNegativeInteger"/>
    +            <xs:element name="maximum" type="scaledNonNegativeInteger"/>
    +          </xs:sequence>
    +        </xs:complexType>
    +      </xs:element>
    +    </xs:choice>
    +  </xs:complexType>
    +  <!-- addressBlockType specifies the elements to describe an address block -->
    +  <xs:complexType name="addressBlockType">
    +    <xs:sequence>
    +      <xs:element name="offset" type="scaledNonNegativeInteger"/>
    +      <xs:element name="size" type="scaledNonNegativeInteger"/>
    +      <xs:element name="usage">
    +        <xs:simpleType>
    +          <xs:restriction base="xs:token">
    +            <xs:enumeration value="registers"/>
    +            <xs:enumeration value="buffer"/>
    +            <xs:enumeration value="reserved"/>
    +          </xs:restriction>
    +        </xs:simpleType>
    +      </xs:element>
    +      <!-- Version 1.3.2: optional access protection for an address block s=secure n=non-secure p=privileged -->
    +      <xs:element name="protection" type="protectionStringType" minOccurs="0"/>
    +    </xs:sequence>
    +  </xs:complexType>
    +  <!-- interruptType specifies how to describe an interrupt associated with a peripheral -->
    +  <xs:complexType name="interruptType">
    +    <xs:sequence>
    +      <xs:element name="name" type="stringType"/>
    +      <xs:element name="description" type="xs:string" minOccurs="0"/>
    +      <xs:element name="value" type="xs:integer"/>
    +    </xs:sequence>
    +  </xs:complexType>
    +  <!-- register properties group specifies register size, access permission and reset value 
    +       this is used in multiple locations. Settings are inherited downstream. -->  
    +  <xs:group name="registerPropertiesGroup">
    +    <xs:sequence>
    +      <xs:element name="size" type="scaledNonNegativeInteger" minOccurs="0"/>
    +      <xs:element name="access" type="accessType" minOccurs="0"/>
    +      <!-- V 1.3: extended register access protection -->
    +      <xs:element name="protection" type="protectionStringType" minOccurs="0"/>
    +      <xs:element name="resetValue" type="scaledNonNegativeInteger" minOccurs="0"/>
    +      <xs:element name="resetMask" type="scaledNonNegativeInteger" minOccurs="0"/>
    +    </xs:sequence>
    +  </xs:group>
    +  <!-- bitRangeLsbMsbStyle specifies the bit position of a field within a register 
    +       by specifying the least significant and the most significant bit position -->
    +  <xs:group name="bitRangeLsbMsbStyle">
    +    <xs:sequence>
    +      <xs:element name="lsb"  type="scaledNonNegativeInteger"/>
    +      <xs:element name="msb"  type="scaledNonNegativeInteger"/>
    +    </xs:sequence>
    +  </xs:group>
    +  <!-- bitRangeOffsetWidthStyle specifies the bit position of a field within a register
    +       by specifying the least significant bit position and the bitWidth of the field -->
    +  <xs:group name="bitRangeOffsetWidthStyle">
    +    <xs:sequence>
    +      <xs:element name="bitOffset" type="scaledNonNegativeInteger"/>
    +      <xs:element name="bitWidth" type="scaledNonNegativeInteger" minOccurs="0"/>   
    +    </xs:sequence> 
    +  </xs:group>
    +  <!-- dimElementGroup specifies the number of array elements (dim), the address offset
    +       between to consecutive array elements and an a comma seperated list of strings 
    +       being used for identifying each element in the array -->
    +  <xs:group name="dimElementGroup">
    +    <xs:sequence>
    +      <xs:element name="dim" type="scaledNonNegativeInteger"/>
    +      <xs:element name="dimIncrement" type="scaledNonNegativeInteger"/>
    +      <xs:element name="dimIndex" type="dimIndexType" minOccurs="0"/>
    +    </xs:sequence>
    +  </xs:group>
    +
    +  <xs:complexType name="cpuType">
    +    <xs:sequence>
    +      <!-- V1.1: ARM processor name: Cortex-Mx / SCxxx -->
    +      <xs:element name="name" type="cpuNameType"/>
    +      <!-- V1.1: ARM defined revision of the cpu -->
    +      <xs:element name="revision" type="revisionType"/>
    +      <!-- V1.1: Endian specifies the endianess of the processor/device -->
    +      <xs:element name="endian" type="endianType"/>
    +      <!-- V1.1: mpuPresent specifies whether or not a memory protection unit is physically present -->
    +      <xs:element name="mpuPresent" type="xs:boolean"/>
    +      <!-- V1.1: fpuPresent specifies whether or not a floating point hardware unit is physically present -->
    +      <xs:element name="fpuPresent" type="xs:boolean"/>
    +      <!-- V1.2: fpuDP specifies a double precision floating point hardware unit is physically present-->
    +      <xs:element name="fpuDP" type="xs:boolean" minOccurs="0"/>
    +      <!-- V1.2: icachePresent specifies that an instruction cache is physically present-->
    +      <xs:element name="icachePresent" type="xs:boolean" minOccurs="0"/>
    +      <!-- V1.2: dcachePresent specifies that a data cache is physically present-->
    +      <xs:element name="dcachePresent" type="xs:boolean" minOccurs="0"/>
    +      <!-- V1.2: itcmPresent specifies that an instruction tightly coupled memory is physically present-->
    +      <xs:element name="itcmPresent" type="xs:boolean" minOccurs="0"/>
    +      <!-- V1.2: dtcmPresent specifies that an data tightly coupled memory is physically present-->
    +      <xs:element name="dtcmPresent" type="xs:boolean" minOccurs="0"/>
    +      <!-- V1.1: vtorPresent is used for Cortex-M0+ based devices only. It indicates whether the Vector -->
    +      <!--       Table Offset Register is implemented in the device or not                              -->
    +      <xs:element name="vtorPresent" type="xs:boolean" minOccurs="0"/>
    +      <!-- V1.1: nvicPrioBits specifies the number of bits used by the Nested Vectored Interrupt Controller -->
    +      <!--       for defining the priority level = # priority levels                                        -->
    +      <xs:element name="nvicPrioBits" type="scaledNonNegativeInteger"/>
    +      <!-- V1.1: vendorSystickConfig is set true if a custom system timer is implemented in the device -->
    +      <!--       instead of the ARM specified SysTickTimer                                             -->
    +      <xs:element name="vendorSystickConfig" type="xs:boolean"/>
    +      <!-- V1.3: reports the total number of interrupts implemented by the device (optional) -->
    +      <xs:element name="deviceNumInterrupts" type="scaledNonNegativeInteger" minOccurs="0"/>
    +      <!-- V1.3: sauRegions specifies the available number of address regions -->
    +      <!--       if not specified a value of zero is assumed                  -->
    +      <xs:element name="sauNumRegions" type="scaledNonNegativeInteger" minOccurs="0"/>
    +      <!-- V1.3: SAU Regions Configuration (if fully or partially predefined) -->
    +      <xs:element name="sauRegionsConfig" minOccurs="0">
    +        <xs:complexType>
    +          <xs:sequence>
    +            <xs:element name="region" minOccurs="0" maxOccurs="unbounded">
    +              <!-- addressBlockType specifies the elements to describe an address block -->
    +              <xs:complexType>
    +                <xs:sequence minOccurs="1"   maxOccurs="unbounded">
    +                  <xs:element name="base"    type="scaledNonNegativeInteger"/>
    +                  <xs:element name="limit"   type="scaledNonNegativeInteger"/>
    +                  <xs:element name="access"  type="sauAccessType"/>
    +                </xs:sequence>
    +                <xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/>
    +                <xs:attribute name="name"    type="xs:string"  use="optional"/>
    +              </xs:complexType>
    +            </xs:element>
    +          </xs:sequence>
    +          <xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/>
    +          <xs:attribute name="protectionWhenDisabled" type="protectionStringType" use="optional" default="s"/>
    +        </xs:complexType>
    +      </xs:element>
    +     </xs:sequence>
    +  </xs:complexType>
    +  
    +  <xs:complexType name="enumeratedValuesType">
    +    <xs:sequence>
    +      <!-- name specfies a reference to this enumeratedValues section for reuse purposes
    +           this name does not appear in the System Viewer nor the Header File. -->
    +      <xs:element name="name" type="enumerationNameType" minOccurs="0"/>
    +      <!-- usage specifies whether this enumeration is to be used for read or write or 
    +                                                       (read and write) accesses -->
    +      <xs:element name="usage" type="enumUsageType" minOccurs="0"/>
    +      <!-- enumeratedValue derivedFrom=<identifierType> -->
    +      <xs:element name="enumeratedValue" minOccurs="1" maxOccurs="unbounded">
    +        <xs:complexType>
    +          <xs:sequence>
    +            <!-- name is a ANSI C indentifier representing the value (C Enumeration) -->
    +            <xs:element name="name" type="enumerationNameType"/>
    +            <!-- description contains the details about the semantics/behavior specified by this value -->
    +            <xs:element name="description" type="stringType" minOccurs="0"/>
    +            <xs:choice>
    +              <xs:element name="value" type="enumeratedValueDataType"/>
    +              <!-- isDefault specifies the name and description for all values that are not
    +                   specifically described individually -->
    +              <xs:element name="isDefault" type="xs:boolean"/>
    +            </xs:choice>
    +          </xs:sequence>
    +        </xs:complexType>
    +      </xs:element>
    +    </xs:sequence>
    +    <xs:attribute name="derivedFrom" type="enumerationNameType" use="optional"/>
    +  </xs:complexType>
    +
    +  <xs:complexType name="fieldType">
    +    <xs:sequence>
    +      <!-- name specifies a field's name. The System Viewer and the device header file will
    +           use the name of the field as identifier -->
    +      <xs:element name="name" type="identifierType"/>
    +      <!-- description contains reference manual level information about the function and 
    +           options of a field -->
    +      <xs:element name="description" type="stringType" minOccurs="0"/>
    +      <!-- alternative specifications of the bit position of the field within the register -->
    +      <xs:choice minOccurs="1" maxOccurs="1">
    +        <!-- bit field described by lsb followed by msb tag -->
    +        <xs:group ref="bitRangeLsbMsbStyle"/>
    +        <!-- bit field described by bit offset relative to Bit0 + bit width of field -->
    +        <xs:group ref="bitRangeOffsetWidthStyle"/>
    +        <!-- bit field described by [<msb>:<lsb>] -->
    +        <xs:element name="bitRange" type="bitRangeType"/>
    +      </xs:choice>
    +      <!-- access describes the predefined permissions for the field. -->
    +      <xs:element name="access" type="accessType" minOccurs="0"/>
    +      <!-- predefined description of write side effects -->
    +      <xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/>
    +      <!-- writeContstraint specifies the subrange of allowed values -->
    +      <xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/>
    +      <!-- readAction specifies the read side effects. -->
    +      <xs:element name="readAction" type="readActionType" minOccurs="0"/>
    +      <!-- enumeratedValues derivedFrom=<identifierType> -->
    +      <xs:element name="enumeratedValues" type="enumeratedValuesType" minOccurs="0" maxOccurs="2">
    +      </xs:element>
    +    </xs:sequence>
    +    <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
    +  </xs:complexType>
    +
    +  <xs:complexType name="fieldsType">
    +    <xs:sequence>
    +      <!-- field derivedFrom=<identifierType> -->
    +      <xs:element name="field" type="fieldType" minOccurs="1" maxOccurs="unbounded"/>
    +    </xs:sequence>
    +  </xs:complexType>
    +
    +  <xs:complexType name="registerType">
    +    <xs:sequence>
    +      <xs:group    ref="dimElementGroup" minOccurs="0"/>
    +      <!-- name specifies the name of the register. The register name is used by System Viewer and
    +                                     device header file generator to represent a register -->
    +      <xs:element name="name" type="identifierType"/>
    +      <!-- display name specifies a register name without the restritions of an ANSIS C identifier.
    +                                     The use of this tag is discouraged because it does not allow consistency between
    +                                     the System View and the device header file. -->
    +      <xs:element name="displayName" type="stringType" minOccurs="0"/>
    +      <!-- description contains a reference manual level description about the register and it's purpose -->
    +      <xs:element name="description" type="stringType" minOccurs="0"/>
    +      <xs:choice>
    +        <!-- alternateGroup specifies the identifier of the subgroup a register belongs to.
    +                                       This is useful if a register has a different description per mode but a single name -->
    +        <xs:element name="alternateGroup" type="identifierType" minOccurs="0"/>
    +        <!-- V1.1: alternateRegister specifies an alternate register description for an address that is
    +                                       already fully described. In this case the register name must be unique within the peripheral -->
    +        <xs:element name="alternateRegister" type="identifierType" minOccurs="0"/>
    +      </xs:choice>
    +      <!-- addressOffset describes the address of the register relative to the baseOffset of the peripheral -->
    +      <xs:element name="addressOffset" type="scaledNonNegativeInteger"/>
    +      <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
    +                                     reset value. These default values are inherited to all fields contained in this register -->
    +      <xs:group    ref="registerPropertiesGroup" minOccurs="0"/>
    +      <!-- V1.1: dataType specifies a CMSIS compliant native dataType for a register (i.e. signed, unsigned, pointer) -->
    +      <xs:element name="dataType" type="dataTypeType" minOccurs="0"/>
    +      <!-- modifiedWriteValues specifies the write side effects -->
    +      <xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/>
    +      <!-- writeConstraint specifies the subset of allowed write values -->
    +      <xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/>
    +      <!-- readAcction specifies the read side effects -->
    +      <xs:element name="readAction" type="readActionType" minOccurs="0"/>
    +      <!-- fields section contains all fields that belong to this register -->
    +      <xs:element name="fields" type="fieldsType" minOccurs="0" maxOccurs="1"/>
    +    </xs:sequence>
    +    <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
    +  </xs:complexType>
    +
    +  <!-- V1.1: A cluster is a set of registers that are composed into a C data structure in the device header file -->
    +  <xs:complexType name="clusterType">
    +    <xs:sequence>
    +      <xs:group   ref="dimElementGroup" minOccurs="0"/>
    +      <xs:element name="name" type="identifierType"/>
    +      <xs:element name="description" type="xs:string"/>
    +      <!-- V1.1: alternateCluster specifies an alternative description for a cluster address range that is
    +                 already fully described. In this case the cluster name must be unique within the peripheral -->
    +      <xs:element name="alternateCluster" type="identifierType" minOccurs="0"/>
    +      <!-- V1.1: headerStructName specifies the name for the cluster structure typedef
    +                 used in the device header generation instead of the cluster name -->
    +      <xs:element name="headerStructName" type="identifierType" minOccurs="0"/>
    +      <xs:element name="addressOffset" type="scaledNonNegativeInteger"/>
    +      <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
    +                 reset value. These default values are inherited to all registers contained in this peripheral -->
    +      <xs:group ref="registerPropertiesGroup" minOccurs="0"/>
    +      <xs:sequence>
    +        <xs:choice minOccurs="1" maxOccurs="unbounded">
    +          <xs:element name="register" type="registerType" minOccurs="0" maxOccurs="unbounded"/>
    +          <!-- 1.3: nesting of cluster is supported -->
    +          <xs:element name="cluster" type="clusterType" minOccurs="0" maxOccurs="unbounded"/>
    +        </xs:choice>
    +      </xs:sequence>
    +    </xs:sequence>
    +    <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
    +  </xs:complexType>
    +
    +  <!-- the registers section can have an arbitrary list of cluster and register sections -->
    +  <xs:complexType name="registersType">
    +    <xs:choice minOccurs="1" maxOccurs="unbounded">
    +      <xs:element name="cluster" type="clusterType"/>
    +      <xs:element name="register" type="registerType"/>
    +    </xs:choice>
    +  </xs:complexType>
    +
    +  <xs:complexType name="peripheralType">
    +    <xs:sequence>
    +      <!-- 1.3: specify uni-dimensional array of peripheral - requires name="<name>[%s]" -->
    +      <xs:group    ref="dimElementGroup" minOccurs="0"/>
    +      <!-- name specifies the name of a peripheral. This name is used for the System View and device header file -->
    +      <xs:element name="name" type="identifierType"/>
    +      <!-- version specifies the version of the peripheral descriptions -->
    +      <xs:element name="version" type="stringType" minOccurs="0"/>
    +      <!-- description provides a high level functional description of the peripheral -->
    +      <xs:element name="description" type="stringType" minOccurs="0"/>
    +      <!-- V1.1: alternatePeripheral specifies an alternative description for an address range that is
    +           already fully by a peripheral described. In this case the peripheral name must be unique within the device description -->
    +      <xs:element name="alternatePeripheral" type="identifierType" minOccurs="0"/>
    +      <!-- groupName assigns this peripheral to a group of peripherals. This is only used bye the System View -->
    +      <xs:element name="groupName" type="xs:Name" minOccurs="0"/>
    +      <!-- prependToName specifies a prefix that is placed in front of each register name of this peripheral. 
    +                         The device header file will show the registers in a C-Struct of the peripheral without the prefix. -->
    +      <xs:element name="prependToName" type="identifierType" minOccurs="0"/>
    +      <!-- appendToName is a postfix that is appended to each register name of this peripheral. The device header 
    +                         file will sho the registers in a C-Struct of the peripheral without the postfix -->
    +      <xs:element name="appendToName" type="identifierType" minOccurs="0"/>
    +      <!-- V1.1: headerStructName specifies the name for the peripheral structure typedef
    +                         used in the device header generation instead of the peripheral name -->
    +      <xs:element name="headerStructName" type="identifierType" minOccurs="0"/>
    +      <!-- disableCondition contains a logical expression based on constants and register or bit-field values 
    +                         if the condition is evaluated to true, the peripheral display will be disabled -->
    +      <xs:element name="disableCondition" type="stringType" minOccurs="0"/>
    +      <!-- baseAddress specifies the absolute base address of a peripheral. For derived peripherals it is mandatory
    +                         to specify a baseAddress. -->
    +      <xs:element name="baseAddress" type="scaledNonNegativeInteger"/>
    +      <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
    +                         reset value. These default values are inherited to all registers contained in this peripheral -->
    +      <xs:group ref="registerPropertiesGroup" minOccurs="0"/>
    +      <!-- addressBlock specifies one or more address ranges that are assigned exclusively to this peripheral. 
    +                         derived peripherals may have no addressBlock, however none-derived peripherals are required to specify
    +                         at least one address block -->
    +      <xs:element name="addressBlock" type="addressBlockType" minOccurs="0" maxOccurs="unbounded"/>
    +      <!-- interrupt specifies can specify one or more interrtupts by name, description and value -->
    +      <xs:element name="interrupt" type="interruptType" minOccurs="0" maxOccurs="unbounded"/>
    +      <!-- registers section contains all registers owned by the peripheral. In case a peripheral gets derived it does
    +                        not have its own registers section, hence this section is optional. A unique peripheral without a 
    +                        registers section is not allowed -->
    +      <xs:element name="registers" type="registersType" minOccurs="0" maxOccurs="1">
    +      </xs:element>
    +    </xs:sequence>
    +    <xs:attribute name="derivedFrom" type="identifierType" use="optional"/>
    +  </xs:complexType>
    +  
    +  <!-- ==================================================== -->
    +  <!-- The top level element of a description is the device -->
    +  <!-- ==================================================== -->
    +  <xs:element name="device" nillable="true">
    +    <xs:complexType>
    +      <xs:sequence>
    +        <!-- V1.1: Vendor Name -->
    +        <xs:element name="vendor" type="stringType" minOccurs="0"/>
    +        <!-- V1.1: Vendor ID - a short name for referring to the vendor (e.g. Texas Instruments = TI) -->
    +        <xs:element name="vendorID" type="identifierType" minOccurs="0"/>
    +        <!-- name specifies the device name being described -->
    +        <xs:element name="name" type="identifierType"/>
    +        <!-- V1.1: series specifies the device series or family name -->
    +        <xs:element name="series" type="stringType" minOccurs="0"/>
    +        <!-- version specifies the version of the device description -->
    +        <xs:element name="version" type="stringType"/>
    +        <!-- description is a string describing the device features (e.g. memory size, peripherals, etc.) -->
    +        <xs:element name="description" type="stringType"/>
    +        <!-- V1.1: licenseText specifies the file header section to be included in any derived file -->
    +        <xs:element name="licenseText" type="stringType" minOccurs="0"/>
    +        <!-- V1.1: cpu specifies the details of the processor included in the device -->
    +        <xs:element name="cpu" type="cpuType" minOccurs="0"/>
    +        <!-- V1.1: the tag specifies the filename without extension of the CMSIS System Device include file.
    +             This tag is used by the header file generator for customizing the include statement referencing the
    +             CMSIS system file within the CMSIS device header file. By default the filename is "system_<device.name>"
    +             In cases a device series shares a single system header file, the name of the series shall be used 
    +             instead of the individual device name. -->
    +        <xs:element name="headerSystemFilename" type="identifierType" minOccurs="0"/>
    +        <!-- V1.1: headerDefinitionPrefix specifies the string being prepended to all names of types defined in
    +             generated device header file -->
    +        <xs:element name="headerDefinitionsPrefix" type="identifierType" minOccurs="0"/>
    +        <!-- addressUnitBits specifies the size of the minimal addressable unit in bits -->
    +        <xs:element name="addressUnitBits" type="scaledNonNegativeInteger"/>
    +        <!-- width specifies the number of bits for the maximum single transfer size allowed by the bus interface.
    +             This sets the maximum size of a single register that can be defined for an address space -->
    +        <xs:element name="width" type="scaledNonNegativeInteger"/>
    +        <!-- registerPropertiesGroup elements specify the default values for register size, access permission and
    +             reset value -->
    +        <xs:group ref="registerPropertiesGroup" minOccurs="0"/>
    +
    +        <!-- peripherals is containing all peripherals -->
    +        <xs:element name="peripherals">
    +          <xs:complexType>
    +            <xs:sequence>
    +              <xs:element name="peripheral" type="peripheralType" minOccurs="1" maxOccurs="unbounded"/>
    +            </xs:sequence>
    +          </xs:complexType>
    +        </xs:element>
    +
    +        <!-- Vendor Extensions: this section captures custom extensions. This section will be ignored by default -->
    +        <xs:element name="vendorExtensions" minOccurs="0" maxOccurs="1">
    +          <xs:complexType>
    +            <xs:sequence>
    +              <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded">
    +              </xs:any>
    +            </xs:sequence>
    +          </xs:complexType>
    +        </xs:element>
    +      </xs:sequence>
    +      <xs:attribute name="schemaVersion" type="xs:decimal" use="required"/>
    +    </xs:complexType>
    +  </xs:element>
    +</xs:schema>
    +
    +<!-- END OF FILE -->
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html new file mode 100644 index 0000000..c24f8f9 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.html @@ -0,0 +1,111 @@ + + + + + +SVD Extensions +CMSIS-SVD: SVD Extensions + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    SVD Extensions
    +
    +
    + + + + + + + + + + + + +

    +Content

     Extensions to the Device Section
     
     CPU Section
     
     Extensions to the Peripheral Section
     
     Cluster Level
     
     Extensions to the Register Section
     
    +

    Description

    +

    From a schema perspective, CMSIS-SVD Version 1.1,1.2 and 1.3 are fully backward compatible to version 1.0.

    +

    Many of the features added in version 1.1 are required for generating CMSIS-Core device header files from a CMSIS SVD description. It is expected that today all CMSIS-SVD descriptions will comply with version 1.1.

    +

    In version 1.2 Cortex-M7 related extensions have been added to the cpu section exclusively used for device header file generation. These extensions are only mandatory for Cortex-M7 based devices.

    +

    In version 1.3 introduces the ability to describe an arrays of a peripheral as well as nesting clusters. Furthermore the cpu section as well as the register properties have been extended to reflect security extensions optional in future devices. Only those accesses originating from a secure state, have the permission to access resources attributed as secure.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js new file mode 100644 index 0000000..d25ff7a --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd___format__1__1__gr.js @@ -0,0 +1,8 @@ +var group__svd___format__1__1__gr = +[ + [ "Extensions to the Device Section", "group__device_section_extensions__gr.html", null ], + [ "CPU Section", "group__cpu_section__gr.html", null ], + [ "Extensions to the Peripheral Section", "group__peripheral_section_extensions__gr.html", null ], + [ "Cluster Level", "group__cluster_level__gr.html", null ], + [ "Extensions to the Register Section", "group__register_section_extensions__gr.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__gr.html b/CMSIS/Documentation/SVD/html/group__svd___format__gr.html new file mode 100644 index 0000000..f12ebc0 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd___format__gr.html @@ -0,0 +1,140 @@ + + + + + +SVD File Schema Levels +CMSIS-SVD: SVD File Schema Levels + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    SVD File Schema Levels
    +
    +
    + + + + + + + + + + + + +

    +Content

     Device Level
     
     Peripherals Level
     
     Registers Level
     
     Fields Level
     
     Enumerated Values Level
     
    +

    Description

    +

    This section specifies the SVD file format Version 1.0. Each subsection defines one level of hierarchy and lists all mandatory and optional language elements as well as their type. A brief example description snippet demonstrates the usage of the elements.

    +
    Note
      +
    • The sequence of elements in CMSIS-SVD is mandatory.
    • +
    • Optional elements are highlighted in green.
    • +
    • Mandatory elements are highlighted in blue. Optional sections can contain mandatory elements, which must be specified when the optional section is used. In this case the mandatory elements are also highlighted in blue.
    • +
    +
    +

    +Names

    +

    All name tags must comply with the ANSI C identifier naming restrictions (identifierType). In particular they must not contain any spaces or special characters. This is necessary to support the generation of device header files thus providing consistency between the names being shown by the debugger and the symbols being used in the CMSIS compliant target software.

    +

    +Constants

    +

    Number constants shall be entered in hexadecimal, decimal, or binary format.

    +
      +
    • The Hexadecimal format is indicated by a leading "0x".
    • +
    • The Binary format is indicated by a leading "#".
    • +
    • All other formats are interpreted as decimal numbers.
    • +
    • The value tag in enumeratedValue accepts 'do not care' bits represented by "x".
    • +
    +

    +Comments

    +

    Comments have the standard XML format.

    +
      +
    • Start a comment with "<!–".
    • +
    • End a comment with "–>".
    • +
    +

    +Empty Tags

    +
      +
    • Single tags are not supported (for example, <name>).
    • +
    • The tag content must not consist of an empty string (instead, omit optional tags).
    • +
    +
    Remarks
    The latest CMSIS-SVD Schema File is provided alongside this document.
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__svd___format__gr.js b/CMSIS/Documentation/SVD/html/group__svd___format__gr.js new file mode 100644 index 0000000..7ee0675 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd___format__gr.js @@ -0,0 +1,8 @@ +var group__svd___format__gr = +[ + [ "Device Level", "group__svd__xml__device__gr.html", null ], + [ "Peripherals Level", "group__svd__xml__peripherals__gr.html", null ], + [ "Registers Level", "group__svd__xml__registers__gr.html", null ], + [ "Fields Level", "group__svd__xml__fields__gr.html", null ], + [ "Enumerated Values Level", "group__svd__xml__enum__gr.html", null ] +]; \ No newline at end of file diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html new file mode 100644 index 0000000..f38b61c --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd__xml__device__gr.html @@ -0,0 +1,175 @@ + + + + + +Device Level +CMSIS-SVD: Device Level + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Device Level
    +
    +
    +

    The element device provides the outermost frame of the description.

    +
      +
    • Only one device section is allowed per file. All other elements like peripherals, registers, fields, enumerated values, and vendor extensions are described within this scope.
    • +
    • A device contains one or more peripherals.
    • +
    • Optional elements like size, access, resetValue, and resetMask defined on this level are used as default values throughout the device description, unless they get redefined at a lower level.
    • +
    +
    +
    +<device schemaVersion="xs:decimal" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd">
        <name>identifierType</name>
    +    <version>xs:string</version>
    +    <description>xs:string</description>
    +    <addressUnitBits>scaledNonNegativeInteger</addressUnitBits>
    +    <width>scaledNonNegativeInteger</width>
    +
    +    <!-- registerPropertiesGroup -->
    +    <size>scaledNonNegativeInteger</size>
    +    <access>accessType</access>
    +    <resetValue>scaledNonNegativeInteger</resetValue>
    +    <resetMask>scaledNonNegativeInteger</resetMask>
    +    <!-- end of registerPropertiesGroup -->
    +
    +    <peripherals>
    +        ...
    +    </peripherals>
    +
    +    <vendorExtensions>
    +        ...
    +    </vendorExtensions>
    </device>
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Attribute Name Description Type Occurrence
    xmlns:xs Specifies the underlying XML schema to which the CMSIS-SVD schema is compliant. Has to be set to: "http://www.w3.org/2001/XMLSchema-instance". xs:decimal 1..1
    xmlns:xs Specifies the file path and file name of the CMSIS-SVD Schema. For example, CMSIS-SVD.xsd. xs:string 1..1
    schemaVersion Specifies the CMSIS-SVD schema version the description is compliant to (for example, 1.1). xs:decimal 1..1
    Element Name Description Type Occurrence
    name The name string is used to identify the device or device series. Device names are required to be unique. xs:string 1..1
    version The string defines the version of the file. Silicon vendors maintain the description throughout the life-cycle of the device and ensure that all updated and released copies have a unique version string. Higher numbers indicate a more recent version. xs:string 1..1
    description String for describing main features of a device (for example CPU, clock frequency, peripheral overview). xs:string 1..1
    addressUnitBits Defines the number of data bits uniquely selected by each address. The value for Cortex-M based devices is 8 (byte-addressable). scaledNonNegativeInteger 1..1
    width Defines the number of data bit-width of the maximum single data transfer supported by the bus infrastructure. This information is relevant for debuggers when accessing registers, because it might be required to issue multiple accesses for accessing a resource of a bigger size. The expected value for Cortex-M based devices is 32. scaledNonNegativeInteger 1..1
    See registerPropertiesGroup for details.
    size Defines the default bit-width of any register contained in the device (implicit inheritance). scaledNonNegativeInteger 0..1
    access Defines the default access rights for all registers. accessType 0..1
    protection Defines extended access protection for all registers. protectionStringType 0..1
    resetValue Defines the default value for all registers at RESET. scaledNonNegativeInteger 0..1
    resetMask Identifies which register bits have a defined reset value. scaledNonNegativeInteger 0..1
    peripherals Next level of description. see Peripherals Level for details.   1..1
    vendorExtensions The content and format of this section of the description is unspecified. Silicon vendors may choose to provide additional information. By default, this section is ignored for constructing the CMSIS files. It is up to the silicon vendor to specify a schema for this section. xs:anyType (restriction) 0..1
    +

    +Example:

    +
    <device schemaVersion="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd">
    +
    <name>ARM_Cortex_M3</name>
    +
    <version>0.1</version>
    +
    <description>ARM Cortex-M3 based Microcontroller demonstration device</description>
    +
    <addressUnitBits>8</addressUnitBits>
    +
    <width>32</width>
    +
    <size>32</size>
    +
    <access>read-write</access>
    +
    <resetValue>0</resetValue>
    +
    <resetMask>0xffffffff</resetMask>
    +
    +
    <peripherals>
    +
    ...
    +
    </peripherals>
    +
    </device>
    +

    The device description above is at version 0.1 and uniquely identifies the device by the name "ARM_Cortex_M3". The peripherals are memory mapped in a byte-addressable address space with a bus width of 32 bits. The default size of the registers contained in the peripherals is set to 32 bits. Unless redefined for specific peripherals, all registers or fields are read-write accessible. A reset value of 0, valid for all 32 bits as specified by the reset mask, is set for all registers unless redefined at a lower level.

    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html new file mode 100644 index 0000000..f35dd2b --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd__xml__enum__gr.html @@ -0,0 +1,194 @@ + + + + + +Enumerated Values Level +CMSIS-SVD: Enumerated Values Level + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Enumerated Values Level
    +
    +
    +
    Enumerated Values

    The concept of enumerated values creates a map between unsigned integers and an identifier string. In addition, a description string can be associated with each entry in the map.

    +
    +        0 <-> disabled -> "the clock source clk0 is turned off"
    +        1 <-> enabled  -> "the clock source clk1 is running"
    +    

    This information is used for generating an enum in the device header file. The debugger may use this information to display the identifier string as well as the description. Just like symbolic constants making source code more readable, the system view in the debugger becomes more instructive. The detailed description can provide reference manual level details within the debugger.

    +
    +
    +
    +<enumeratedValues derivedFrom="xs:Name">
    +
    +    <name>enumerationNameType</name>
    +    <usage>usageType</usage>
    +
    +    <enumeratedValue>
    +        ...
    +    </enumeratedValue>
    +
    +    ...
    +    <enumeratedValue>
    +        ...
    +    </enumeratedValue>
    +
    +</enumeratedValues>
    +
    +
    + + + + + + + + + + + + +
    Attribute Name Description Type Occurrence
    derivedFrom Makes a copy from a previously defined enumeratedValues section. No modifications are allowed. An enumeratedValues entry is referenced by its name. If the name is not unique throughout the description, it needs to be further qualified by specifying the associated field, register, and peripheral as required. For example:
    +    field:                           clk.dis_en_enum
    +    register + field:                ctrl.clk.dis_en_enum
    +    peripheral + register + field:   timer0.ctrl.clk.dis_en_enum
    +
    xs:Name 0..1
    Element Name Description Type Occurrence
    name Identifier for the whole enumeration section. xs:Name 0..1
    usage Possible values are read, write, or read-write. This allows specifying two different enumerated values depending whether it is to be used for a read or a write access. If not specified, the default value read-write is used. enumUsageType 0..1
    enumeratedValue Describes a single entry in the enumeration. The number of required items depends on the bit width of the associated field. See section below for details.   1..*
    +
    Enumerated Value

    An enumeratedValue defines a map between an unsigned integer and a human readable string.

    +
    +
    +
    +<enumeratedValue>
        <name>identifierType</name>
    +    <description>xs:string</description>
        <choice>
    +        <value>scaledNonNegativeInteger</value>
    +        <isDefault>xs:boolean</isDefault>
    +    </choice>
    </enumeratedValue>
    +
    +
    + + + + + + + + + + + + +
    Element Name Description Type Occurrence
    name String describing the semantics of the value. Can be displayed instead of the value. identifierType 0..1
    description Extended string describing the value. xs:string 0..1
    choice of 1..1
    value Defines the constant of the bit-field that the name corresponds to. scaledNonNegativeInteger 0..1
    isDefault Defines the name and description for all other values that are not listed explicitly. xs:boolean 0..1
    +

    +Example:

    +
    <enumeratedValues>
    +
    +
    <name>TimerIntSelect</name>
    +
    <usage>read-write</usage>
    +
    +
    <enumeratedValue>
    +
    <name>disabled</name>
    +
    <description>The clock source clk0 is turned off.</description>
    +
    <value>0</value>
    +
    </enumeratedValue>
    +
    +
    <enumeratedValue>
    +
    <name>reserved</name>
    +
    <description>Reserved values. Do not use.</description>
    +
    <isDefault>true</isDefault>
    +
    </enumeratedValue>
    +
    +
    </enumeratedValues>
    +
    <enumeratedValues>
    +
    +
    <name>TimerIntSelect</name>
    +
    <usage>read-write</usage>
    +
    +
    <enumeratedValue>
    +
    <name>disabled</name>
    +
    <description>Timer does not generate interrupts.</description>
    +
    <value>0</value>
    +
    </enumeratedValue>
    +
    +
    <enumeratedValue>
    +
    <name>enabled</name>
    +
    <description>Timer generates interrupts.</description>
    +
    <isDefault>true</isDefault>
    +
    </enumeratedValue>
    +
    +
    </enumeratedValues>
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html new file mode 100644 index 0000000..05d033a --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd__xml__fields__gr.html @@ -0,0 +1,211 @@ + + + + + +Fields Level +CMSIS-SVD: Fields Level + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Fields Level
    +
    +
    +

    All fields of a register are enclosed between the <fields> opening and closing tags

    +

    A bit-field has a name that is unique within the register. The position and size within the register is either described by the combination of the least significant bit's position (lsb) and the most significant bit's position (msb), or the lsb and the bit-width of the field. A field may define an enumeratedValue in order to make the display more intuitive to read.


    +
    
    +<fields>
        <field derivedFrom="identifierType">
            <name>xs:Name</name>
    +        <description>xs:string</description>
            <choice>
    +             <!-- bitRangeLsbMsbStyle --> 
    +            <bitOffset>scaledNonNegativeInteger<bitOffset>
    +            <bitWidth>scaledNonNegativeInteger</bitWidth>
    +            or
    +             <!-- bitRangeOffsetWidthStyle --> 
    +            <lsb>scaledNonNegativeInteger</lsb> 
    +            <msb>scaledNonNegativeInteger</msb>
    +            or
    +             <!-- bitRangePattern --> 
    +            <bitRange>pattern</bitRange>
    +        </choice>
    +        
    +        <access>accessType</access>
    +        <modifiedWriteValues>writeValueType</modifiedWriteValues>
    +        <writeConstraint>writeConstraintType</writeConstraint>
    +        <readAction>readActionType</readAction>
            <enumeratedValues>
    +            ...
    +        </enumeratedValues>
        </field>
    +    ...
    +    <field>
    +       ...
    +    </field>
    +    
    +<fields>
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Attribute Name Description Type Occurrence
    derivedFrom The field is cloned from a previously defined field with a unique name. xs:Name 0..1
    Element Name Description Type Occurrence
    name Name string used to identify the field. Field names must be unique within a register. xs:string 1..1
    description String describing the details of the register. xs:string 0..1
    Choice of Three options exist to describe the field's bit-range. The options are to be used mutually exclusive: 1..1
    1. bitRangeLsbMsbStyle
    bitOffset Value defining the position of the least significant bit of the field within the register it belongs to. scaledNonNegativeInteger 1..1
    bitWidth Value defining the bit-width of the bitfield within the register it belongs to. scaledNonNegativeInteger 0..1
    2. bitRangeOffsetWidthStyle
    lsb Value defining the bit position of the least significant bit within the register it belongs to. scaledNonNegativeInteger 1..1
    msb Value defining the bit position of the most significant bit within the register it belongs to. scaledNonNegativeInteger 1..1
    3. bitRangePattern
    bitRange A string in the format: "[<msb>:<lsb>]" bitRangeType 0..1
    access Predefined strings can be used to define the allowed access types for this field: read-only, write-only, read-write, writeOnce, and read-writeOnce. Can be omitted if it matches the access permission set for the parent register. accessType 0..1
    modifiedWriteValues Describe the manipulation of data written to a field. If not specified, the value written to the field is the value stored in the field. The other options are bitwise operations:
      +
    • oneToClear: write data bit of one shall clear (set to zero) the corresponding bit in the field.
    • +
    • oneToSet: write data bit of one shall set (set to one) the corresponding bit in the field.
    • +
    • oneToToggle: write data bit of one shall toggle (invert) the corresponding bit in the field.
    • +
    • zeroToClear: write data bit of zero shall clear (set to zero) the corresponding bit in the field.
    • +
    • zeroToSet: write data bit of zero shall set (set to one) the corresponding bit in the field.
    • +
    • zeroToToggle: write data bit of zero shall toggle (invert) the corresponding bit in the field.
    • +
    • clear: after a write operation all bits in the field are cleared (set to zero).
    • +
    • set: after a write operation all bits in the field are set (set to one).
    • +
    • modify: after a write operation all bit in the field may be modified (default).
    • +
    +
    modifiedWriteValuesType 0..1
    writeConstraint Three options exist to set write-constraints: 0..1
    1. writeAsRead If TRUE, only the last read value can be written. xs:boolean 0..1
    2. useEnumeratedValues If TRUE, only the values listed in the enumeratedValues list are considered valid write values. xs:boolean 0..1
    3. range Consists of the following two elements:   0..1
    minimum Specifies the smallest number to be written to the field. scaledNonNegativeInteger 1..1
    maximum Specifies the largest number to be written to the field. scaledNonNegativeInteger 1..1
    readAction If set, it specifies the side effect following a read operation. If not set, the field is not modified after a read. The defined side effects are:
      +
    • clear: The field is cleared (set to zero) following a read operation.
    • +
    • set: The field is set (set to ones) following a read operation.
    • +
    • modify: The field is modified in some way after a read operation.
    • +
    • modifyExternal: One or more dependent resources other than the current field are immediately affected by a read operation (it is recommended that the field description specifies these dependencies).
    • +
    +Debuggers are not expected to read this field location unless explicitly instructed by the user.
    readActionType 0..1 register
    enumeratedValues Next lower level of description. See section Enumerated Values Level for details.   0..2
    +

    +Example:

    +
    ...
    +
    <field>
    +
    <name>TimerCtrl0_IntSel</name>
    +
    <description>Select interrupt line that is triggered by timer overflow.</description>
    +
    <bitOffset>1</bitOffset>
    +
    <bitWidth>3</bitWidth>
    +
    <access>read-write</access>
    +
    <resetValue>0x0</resetValue>
    +
    <modifiedWriteValues>oneToSet</modifiedWriteValues>
    +
    <writeConstraint>
    +
    <range>
    +
    <minimum>0</minimum>
    +
    <maximum>5</maximum>
    +
    </range>
    +
    </writeConstraint>
    +
    <readAction>clear</readAction>
    +
    +
    <enumeratedValues>
    +
    ...
    +
    </enumeratedValues>
    +
    </field>
    +
    ...
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html new file mode 100644 index 0000000..14407ea --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd__xml__peripherals__gr.html @@ -0,0 +1,225 @@ + + + + + +Peripherals Level +CMSIS-SVD: Peripherals Level + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Peripherals Level
    +
    +
    +

    All peripherals of a device are enclosed within the tag <peripherals>. At least one peripheral has to be defined. Each peripheral is enclosed in the tag <peripheral>.

    +
      +
    • Each peripheral describes all registers belonging to that peripheral.
    • +
    • The address range allocated by a peripheral is defined through one or more address blocks.
    • +
    • An address block and register addresses are specified relative to the base address of a peripheral. The address block information can be used for constructing a memory map for the device peripherals.
    • +
    +

    Starting version 1.3 of the SVD specification arrays of peripherals can be specified. The single peripheral description gets duplicated automatically into an array. The number of array elements is specified by the <dim> element. The peripheral name needs to be of the format myPeripheral[s]. The <dimIncrement> specifies the address offset between two peripherals. The <dimIndex> is ignored. If you want to create copies of a peripheral using different names, please use the derivedFrom attribute.

    +
    Remarks
    The memory map does not contain any information about physical memory. The memories of a device are described as part of the CMSIS-PACK device description.
    +
    +
    + <peripherals> 
        <peripheral derivedFrom=identifierType>
            <name>identifierType</name>
    +        <version>xs:string</version>
    +        <description>xs:string</description>
    +    
    +        <groupName>identifierType</groupName>
    +        <prependToName>identifierType</prependToName>
    +        <appendToName>identifierType</appendToName>
    +        <disableCondition>xs:string</disableCondition>
    +    
    +        <baseAddress>scaledNonNegativeInteger</baseAddress>
    +    
    +         <!-- registerPropertiesGroup -->
    +        <size>scaledNonNegativeInteger</size>
    +        <access>accessType</access>
    +        <resetValue>scaledNonNegativeInteger</resetValue>
    +        <resetMask>scaledNonNegativeInteger</resetMask>
    +         <!-- end of registerPropertiesGroup -->
    +    
    +        <addressBlock>
    +            <offset>scaledNonNegativeInteger</offset>
    +            <size>scaledNonNegativeInteger</size>
    +            <usage>usageType</usage>
    +            <protection>protectionStringType</protection>
    +        </addressBlock>
    +        ...
    +        <addressBlock>
    +            <offset>scaledNonNegativeInteger</offset>
    +            <size>scaledNonNegativeInteger</size>
    +            <usage>usageType</usage>
    +            <protection>protectionStringType</protection>
    +        </addressBlock>
    +    
    +        <interrupt>
    +            <name>identifierType</name>
    +            <value>scaledNonNegativeInteger</value>
    +        </interrupt>
            <registers>
    +            ...
    +        </registers>
        </peripheral>
    +    ...
    +    <peripheral>
    +       ...
    +    </peripheral>
    +    
    +</peripherals>
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Attribute Name Description Type Occurrence
    derivedFrom Specifies the name of a peripheral from which this peripheral will be derived. Values are inherit. Elements specified underneath will override inherited values. xs:Name 0..1
    Element Name Description Type Occurrence
    name The name string is used to identify the peripheral. Peripheral names are required to be unique for a device. The name needs to be an ANSI C identifier to allow header file generation. xs:Name 1..1
    version The string specifies the version of this peripheral description. xs:string 0..1
    description The string provides an overview of the purpose and functionality of the peripheral. xs:string 0..1
    groupName xs:string 0..1
    prependToName All register names of this peripheral have their names prefixed with this string. xs:string 0..1
    appendToName All register names of this peripheral have their names suffixed with this string. xs:string 0..1
    disableCondition Is a C-language compliant logical expression returning a TRUE or FALSE result. If TRUE, refreshing the display for this peripheral is disabled and related accesses by the debugger are suppressed.
    +
    + Only constants and references to other registers contained in the description are allowed: <peripheral>-><register>-><field>, for example, (System->ClockControl->apbEnable == 0). The following operators are allowed in the expression [&&,||, ==, !=, >>, <<, &, |].
    Attention
    Use this feature only in cases where accesses from the debugger to registers of un-clocked peripherals result in severe debugging failures. SVD is intended to provide static information and does not include any run-time computation or functions. Such capabilities can be added by the tools, and is beyond the scope of this description language.
    +
    xs:string 0..1
    baseAddress Lowest address reserved or used by the peripheral. scaledNonNegativeInteger 1..1
    See registerPropertiesGroup for details.
    size Defines the default bit-width of any register contained in the device (implicit inheritance). scaledNonNegativeInteger 0..1
    access Defines the default access rights for all registers. accessType 0..1
    protection Defines the protection rights for all registers. protectionStringType 0..1
    resetValue Defines the default value for all registers at RESET. scaledNonNegativeInteger 0..1
    resetMask Identifies which register bits have a defined reset value. scaledNonNegativeInteger 0..1
    addressBlock Specifies an address range uniquely mapped to this peripheral. A peripheral must have at least one address block, but may allocate multiple distinct address ranges. If a peripheral is derived form another peripheral, the addressBlock is not mandatory. addressBlockType 1..*
    offset Specifies the start address of an address block relative to the peripheral baseAddress. scaledNonNegativeInteger 1..1
    size Specifies the number of addressUnitBits being covered by this address block. The end address of an address block results from the sum of baseAddress, offset, and (size - 1). scaledNonNegativeInteger 1..1
    usage The following predefined values can be used: registers, buffer, or reserved. scaledNonNegativeInteger 1..1
    interrupt A peripheral can have multiple associated interrupts. This entry allows the debugger to show interrupt names instead of interrupt numbers. interruptType 0..*
    name The string represents the interrupt name. XS:string 1..1
    value Is the enumeration index value associated to the interrupt. xs:integer 1..1
    registers See Registers Level for details.   0..1
    +

    +Example:

    +
    ...
    +
    <peripheral>
    +
    <name>Timer0</name>
    +
    <version>1.0.32</version>
    +
    <description>Timer 0 is a simple 16 bit timer counting down ... </description>
    +
    <baseAddress>0x40000000</baseAddress>
    +
    <addressBlock>
    +
    <offset>0x0</offset>
    +
    <size>0x400</size>
    +
    <usage>registers</usage>
    +
    <protection>s</protection>
    +
    </addressBlock>
    +
    <interrupt><name>TIM0_INT</name><value>34</value></interrupt>
    +
    <registers>
    +
    ...
    +
    </registers>
    +
    </peripheral>
    +
    +
    <peripheral derivedFrom="Timer0">
    +
    <name>Timer1</name>
    +
    <baseAddress>0x40000400</baseAddress>
    +
    </peripheral>
    +
    ...
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html b/CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html new file mode 100644 index 0000000..2db59f5 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/group__svd__xml__registers__gr.html @@ -0,0 +1,234 @@ + + + + + +Registers Level +CMSIS-SVD: Registers Level + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    Registers Level
    +
    +
    +

    All registers of a peripheral are enclosed between the <registers> opening and closing tags.

    +

    The description of registers is the most essential part of the SVD description. The register's name, detailed description, and the address-offset relative to the peripheral base address are the mandatory elements. If the size, access, reset value, and reset mask have not been specified on the device or peripheral level, or if the default values need to be redefined locally, these fields become mandatory.

    +

    A register can represent a single value or can be subdivided into individual bit-fields of specific functionality and semantics. In schema-terms the fields section is optional, however, from a specification perspective, fields are mandatory when they are described in the device documentation.

    +

    The SVD specification supports the array-of-registers concept. The single register description gets duplicated automatically into an array. The size of the array is specified by the <dim> element. The register names can be composed by the register name and an index specific substring define in <dimIndex>. The <dimIncrement> specifies the address offset between two registers.

    +
    +
    +<registers> 
        <register derivedFrom=identifierType>
    +    
    +        <!-- dimElementGroup --> 
    +        <dim>scaledNonNegativeInteger</dim>
    +        <dimIncrement>scaledNonNegativeInteger</dimIncrement>
    +        <dimIndex>xs:string</dimIndex>
    +        <!-- end of dimElementGroup --> 
    +   
    +        <name>identifierType</name>
    +    
    +        <displayName>xs:string</displayName>
    +    
    +        <description>xs:string</description>
    +    
    +        <alternateGroup>xs:Name</alternateGroup>
    +    
    +        <addressOffset>scaledNonNegativeInteger</addressOffset>
    +    
    +        <!-- registerPropertiesGroup --> 
    +        <size>scaledNonNegativeInteger</size>
    +        <access>accessType</access>
    +        <resetValue>scaledNonNegativeInteger</resetValue>
    +        <resetMask>scaledNonNegativeInteger</resetMask>
    +        <!-- end of registerPropertiesGroup --> 
    +    
    +        <modifiedWriteValues>writeValueType</modifiedWriteValues>
    +        <writeConstraint>writeConstraintType</writeConstraint>
    +        <readAction>readActionType</readAction>
            <fields>
    +            ...
    +        </fields>
    +    
    +    </register>
    +    ...
    +    <register>
    +        ...
    +    </register>
    +    
    +<registers> 
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Attribute Name Description Type Occurrence
    derivedFrom Specifies the name of the register from which to inherit the data. Elements being specified underneath will override the inherited values.
    +Remarks: When deriving a register, it is mandatory to specify at least the name, the description, and the addressOffset.
    xs:Name 0..1
    Element Name Description Type Occurrence
    See dimElementGroup for details.
    dim The value defines the number of elements in an array of registers. scaledNonNegativeInteger 1..1
    dimIncrement If dim is specified, this element becomes mandatory. The element specifies the address increment in between two neighboring registers of the register array in the address map. scaledNonNegativeInteger 1..1
    dimIndex Specifies the substrings that replaces the %s placeholder within the register name. By default, the index is a decimal value starting with 0 for the first register. dimIndexType 0..1
    name Name string used to identify the register. Register names are required to be unique within the scope of a peripheral. registerNameType 1..1
    displayName When specified, the string is being used by a graphical frontend to visualize the register. Otherwise the name element is displayed. The displayName may contain special characters and white spaces. The place holder s can be used and is replaced by the dimIndex substring. xs:string 0..1
    description String describing the details of the register. xs:string 0..1
    alternateGroup Specifies a group name associated with all alternate register that have the same name. At the same time, it indicates that there is a register definition allocating the same absolute address in the address space. xs:Name 0..1
    addressOffset Value defining the address of the register relative to the baseAddress defined by the peripheral of the register. scaledNonNegativeInteger 1..1
    See registerPropertiesGroup for details.
    size Defines the default bit-width of any register contained in the device (implicit inheritance). scaledNonNegativeInteger 0..1
    access Defines the default access rights for all registers. accessType 0..1
    protection Defines the protection rights for all registers. protectionStringType

    0..1

    +

    +
    resetValue Defines the default value for all registers at RESET. scaledNonNegativeInteger 0..1
    resetMask Identifies which register bits have a defined reset value. scaledNonNegativeInteger 0..1
    modifiedWriteValues Element to describe the manipulation of data written to a register. If not specified, the value written to the field is the value stored in the field. The other options define bitwise operations:
      +
    • oneToClear: write data bits of one shall clear (set to zero) the corresponding bit in the register.
    • +
    • oneToSet: write data bits of one shall set (set to one) the corresponding bit in the register.
    • +
    • oneToToggle: write data bits of one shall toggle (invert) the corresponding bit in the register.
    • +
    • zeroToClear: write data bits of zero shall clear (set to zero) the corresponding bit in the register.
    • +
    • zeroToSet: write data bits of zero shall set (set to one) the corresponding bit in the register.
    • +
    • zeroToToggle: write data bits of zero shall toggle (invert) the corresponding bit in the register.
    • +
    • clear: after a write operation all bits in the field are cleared (set to zero).
    • +
    • set: after a write operation all bits in the field are set (set to one).
    • +
    • modify: after a write operation all bit in the field may be modified (default).
    • +
    +
    modifiedWriteValuesType 0..1
    writeConstraint Three options exist to set write-constraints: 0..1
    1. writeAsRead If TRUE, only the last read value can be written. xs:boolean 0..1
    2. useEnumeratedValues If TRUE, only the values listed in the enumeratedValues list are considered valid write values. xs:boolean 0..1
    3. range Consists of the following two elements:   0..1
    minimum Specifies the smallest number to be written to the field. scaledNonNegativeInteger 1..1
    maximum Specifies the largest number to be written to the field. scaledNonNegativeInteger 1..1
    readAction If set, it specifies the side effect following a read operation. If not set, the register is not modified. The defined side effects are:
      +
    • clear: The register is cleared (set to zero) following a read operation.
    • +
    • set: The register is set (set to ones) following a read operation.
    • +
    • modify: The register is modified in some way after a read operation.
    • +
    • modifyExternal: One or more dependent resources other than the current register are immediately affected by a read operation (it is recommended that the register description specifies these dependencies).
    • +
    +Debuggers are not expected to read this register location unless explicitly instructed by the user.
    readActionType

    0..1

    +

    +
    fields Next lower level of description (see Fields Level for details). Not all registers are further divided into fields, therefore, this level is optional. In case a register is subdivided into bit fields, it should be reflected in the description. The device header file can only contain bit access macros and bit-field structures if this information is contained in the description.   0..1
    +

    +Example:

    +
    ...
    +
    <register>
    +
    <name>TimerCtrl0</name>
    +
    <description>Timer Control Register</description>
    +
    <addressOffset>0x0</addressOffset>
    +
    <access>read-write</access>
    +
    <resetValue>0x00008001</resetValue>
    +
    <resetMask>0x0000ffff</resetMask>
    +
    <size>32</size>
    +
    <fields>
    +
    ...
    +
    </fields>
    +
    </register>
    +
    +
    <register derivedFrom="TimerCtrl0">
    +
    <name>TimerCtrl1</name>
    +
    <description>Derived Timer</description>
    +
    <addressOffset>0x4</addressOffset>
    +
    </register>
    +
    ...
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/index.html b/CMSIS/Documentation/SVD/html/index.html new file mode 100644 index 0000000..e922398 --- /dev/null +++ b/CMSIS/Documentation/SVD/html/index.html @@ -0,0 +1,161 @@ + + + + + +System View Description +CMSIS-SVD: System View Description + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    CMSIS-SVD +  Version 1.3.1 +
    +
    CMSIS System View Description
    +
    +
    + +
    +
      + +
    +
    + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    System View Description
    +
    +
    +

    Introduction

    +

    The CMSIS System View Description format(CMSIS-SVD) formalizes the description of the system contained in ARM Cortex-M processor-based microcontrollers, in particular, the memory mapped registers of peripherals. The detail contained in system view descriptions is comparable to the data in device reference manuals. The information ranges from high level functional descriptions of a peripheral all the way down to the definition and purpose of an individual bit field in a memory mapped register.

    +

    CMSIS-SVD files are developed and maintained by silicon vendors. Silicon vendors manage their descriptions in a central, web-based Device Database. The CMSIS-SVD files are down-loadable via a public web interface once they have been released by the silicon vendor. Tool vendors use CMSIS-SVD files for providing device-specific debug views of peripherals in their debugger. Last but not least, CMSIS-compliant device header files are generated from CMSIS-SVD files.

    +

    CMSIS-SVD Benefits

    +
      +
    • For Software Developers:
        +
      • Consistency between device header file and what is being displayed by the debugger.
      • +
      • Detailed information about peripherals, registers, fields, and bit values from within the debugger, without the need to reference device documentation.
      • +
      • Public access via a web interface to new and updated descriptions as they become available from silicon vendors.
      • +
      • Improved software development efficiency.
      • +
      +
    • +
    +
      +
    • For Silicon Vendors:
        +
      • A tool vendor independent file format enables early device support by a wide range of toolchains with limited effort.
      • +
      • The XML-based format helps ease the integration into in-house design flows.
      • +
      • Automated generation of CMSIS compliant device header files.
      • +
      • Full control throughout the life cycle of the CMSIS-SVD files from creation to maintenance via the web-based Device Database.
      • +
      +
    • +
    +
      +
    • For Tool Vendors:
        +
      • Unified file format across silicon vendors helps the efficiency of supporting a wide range of new devices in a timely manner.
      • +
      • Silicon vendors provide early review access to individuals ahead of the publishing date.
      • +
      • Updated descriptions are available over the web simplifying the maintenance of device support.
      • +
      +
    • +
    +

    The Web Infrastructure

    +
    +CMSIS_SVD_WEB_DATABASE.png +
    +CMSIS-SVD Management Processes
    +

    The diagram illustrates the management process steps for uploading, validating, reviewing, publishing, and downloading CMSIS-SVD files.

    +
      +
    • Managing Files: A CMSIS-SVD file is uploaded by a silicon vendor via the web interface (Device Database). The system performs a check against the CMSIS-SVD Schema and runs the SVDConv consistency checker. Only if both checks were successful the file will be stored in the SVD Storage. Files can be added, replaced, and deleted.
    • +
    +
      +
    • Managing Devices: The silicon vendor creates an entry for each of his devices in the database by defining a name and associating it with a CMSIS-SVD file from the SVD Storage. The publishing date set forth for a device is used by the system to determine when this device becomes visible in the public device database. Prior to the publishing date, the silicon vendor can grant review access to individuals for an individual device. Reviewers get notified by e-mail about a device being made available for review.
    • +
    +
      +
    • Public Download: Public access to the silicon vendor specific CMSIS-SVD download pages is provided from cmsis.arm.com or www.arm.com/cmsis. Select the CMSIS-SVD tab and select the Silicon Vendor of interest from the list. For the public download of the CMSIS-SVD files of published devices it is mandatory to:
        +
      • Be logged in on the ARM web site.
      • +
      • Have accepted a silicon vendor specific End Users License Agreement (EULA).
      • +
      +
    • +
    +

    More information about the web infrastructure can be found in the CMSIS-SVD Web Interface User Guide

    +

    Language Outline

    + +

    Language Specification

    + +

    CMSIS-SVD in ARM::CMSIS Pack

    +

    The following files relevant to CMSIS-SVD are present in the ARM::CMSIS Pack directories:

    + + + + + + + +
    File/Folder Content
    CMSIS\Documentation\SVD This documentation
    CMSIS\SVD Exemplary SVD file (ARM_Example.svd) and generated header file (ARM_Example.h).
    +

     

    +
    +
    +
    + + + + diff --git a/CMSIS/Documentation/SVD/html/jquery.js b/CMSIS/Documentation/SVD/html/jquery.js new file mode 100644 index 0000000..78ad0bd --- /dev/null +++ b/CMSIS/Documentation/SVD/html/jquery.js @@ -0,0 +1,77 @@ +/*! jQuery v1.7.1 jquery.com | jquery.org/license */ +(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
    a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
    "+""+"
    ",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
    t
    ",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
    ",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")), +f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c) +{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,b){function d(b){return!a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;if(!b.href||!g||f.nodeName.toLowerCase()!=="map")return!1;h=a("img[usemap=#"+g+"]")[0];return!!h&&d(h)}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;setTimeout(function(){a(d).focus(),c&&c.call(d)},b)}):this._focus.apply(this,arguments)},scrollParent:function(){var b;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!b.length?a(document):b},zIndex:function(c){if(c!==b)return this.css("zIndex",c);if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);if(!isNaN(f)&&f!==0)return f}d=d.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0)});return c}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){if(c===b)return g["inner"+d].call(this);return this.each(function(){a(this).css(f,h(this,c)+"px")})},a.fn["outer"+d]=function(b,c){if(typeof b!="number")return g["outer"+d].call(this,b);return this.each(function(){a(this).css(f,h(this,b,!0,c)+"px")})}}),a.extend(a.expr[":"],{data:function(b,c,d){return!!a.data(b,d[3])},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")))},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e)}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart"in c,b.removeChild(c).style.display="none"}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d)e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]])},call:function(a,b,c){var d=a.plugins[b];if(!!d&&!!a.element[0].parentNode)for(var e=0;e0)return!0;b[d]=1,e=b[d]>0,b[d]=0;return e},isOverAxis:function(a,b,c){return a>b&&a=9)&&!b.button)return this._mouseUp(b);if(this._mouseStarted){this._mouseDrag(b);return b.preventDefault()}this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b));return!this._mouseStarted},_mouseUp:function(b){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b));return!1},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(a){return this.mouseDelayMet},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return!0}})})(jQuery); +/* + * jQuery UI Resizable 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Resizables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(a,b){a.widget("ui.resizable",a.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1e3},_create:function(){var b=this,c=this.options;this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!c.aspectRatio,aspectRatio:c.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:c.helper||c.ghost||c.animate?c.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(a('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("resizable",this.element.data("resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=c.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se");if(this.handles.constructor==String){this.handles=="all"&&(this.handles="n,e,s,w,se,sw,ne,nw");var d=this.handles.split(",");this.handles={};for(var e=0;e
    ');/sw|se|ne|nw/.test(f)&&h.css({zIndex:++c.zIndex}),"se"==f&&h.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[f]=".ui-resizable-"+f,this.element.append(h)}}this._renderAxis=function(b){b=b||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]=a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var d=a(this.handles[c],this.element),e=0;e=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth();var f=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");b.css(f,e),this._proportionallyResize()}if(!a(this.handles[c]).length)continue}},this._renderAxis(this.element),this._handles=a(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){if(!b.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=a&&a[1]?a[1]:"se"}}),c.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){c.disabled||(a(this).removeClass("ui-resizable-autohide"),b._handles.show())},function(){c.disabled||b.resizing||(a(this).addClass("ui-resizable-autohide"),b._handles.hide())})),this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var c=this.element;c.after(this.originalElement.css({position:c.css("position"),width:c.outerWidth(),height:c.outerHeight(),top:c.css("top"),left:c.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle),b(this.originalElement);return this},_mouseCapture:function(b){var c=!1;for(var d in this.handles)a(this.handles[d])[0]==b.target&&(c=!0);return!this.options.disabled&&c},_mouseStart:function(b){var d=this.options,e=this.element.position(),f=this.element;this.resizing=!0,this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()},(f.is(".ui-draggable")||/absolute/.test(f.css("position")))&&f.css({position:"absolute",top:e.top,left:e.left}),this._renderProxy();var g=c(this.helper.css("left")),h=c(this.helper.css("top"));d.containment&&(g+=a(d.containment).scrollLeft()||0,h+=a(d.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:g,top:h},this.size=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalSize=this._helper?{width:f.outerWidth(),height:f.outerHeight()}:{width:f.width(),height:f.height()},this.originalPosition={left:g,top:h},this.sizeDiff={width:f.outerWidth()-f.width(),height:f.outerHeight()-f.height()},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio=typeof d.aspectRatio=="number"?d.aspectRatio:this.originalSize.width/this.originalSize.height||1;var i=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor",i=="auto"?this.axis+"-resize":i),f.addClass("ui-resizable-resizing"),this._propagate("start",b);return!0},_mouseDrag:function(b){var c=this.helper,d=this.options,e={},f=this,g=this.originalMousePosition,h=this.axis,i=b.pageX-g.left||0,j=b.pageY-g.top||0,k=this._change[h];if(!k)return!1;var l=k.apply(this,[b,i,j]),m=a.browser.msie&&a.browser.version<7,n=this.sizeDiff;this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)l=this._updateRatio(l,b);l=this._respectSize(l,b),this._propagate("resize",b),c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"}),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),this._updateCache(l),this._trigger("resize",b,this.ui());return!1},_mouseStop:function(b){this.resizing=!1;var c=this.options,d=this;if(this._helper){var e=this._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&a.ui.hasScroll(e[0],"left")?0:d.sizeDiff.height,h=f?0:d.sizeDiff.width,i={width:d.helper.width()-h,height:d.helper.height()-g},j=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,k=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;c.animate||this.element.css(a.extend(i,{top:k,left:j})),d.helper.height(d.size.height),d.helper.width(d.size.width),this._helper&&!c.animate&&this._proportionallyResize()}a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var b=this.options,c,e,f,g,h;h={minWidth:d(b.minWidth)?b.minWidth:0,maxWidth:d(b.maxWidth)?b.maxWidth:Infinity,minHeight:d(b.minHeight)?b.minHeight:0,maxHeight:d(b.maxHeight)?b.maxHeight:Infinity};if(this._aspectRatio||a)c=h.minHeight*this.aspectRatio,f=h.minWidth/this.aspectRatio,e=h.maxHeight*this.aspectRatio,g=h.maxWidth/this.aspectRatio,c>h.minWidth&&(h.minWidth=c),f>h.minHeight&&(h.minHeight=f),ea.width,k=d(a.height)&&e.minHeight&&e.minHeight>a.height;j&&(a.width=e.minWidth),k&&(a.height=e.minHeight),h&&(a.width=e.maxWidth),i&&(a.height=e.maxHeight);var l=this.originalPosition.left+this.originalSize.width,m=this.position.top+this.size.height,n=/sw|nw|w/.test(g),o=/nw|ne|n/.test(g);j&&n&&(a.left=l-e.minWidth),h&&n&&(a.left=l-e.maxWidth),k&&o&&(a.top=m-e.minHeight),i&&o&&(a.top=m-e.maxHeight);var p=!a.width&&!a.height;p&&!a.left&&a.top?a.top=null:p&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){var b=this.options;if(!!this._proportionallyResizeElements.length){var c=this.helper||this.element;for(var d=0;d');var d=a.browser.msie&&a.browser.version<7,e=d?1:0,f=d?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+f,height:this.element.outerHeight()+f,position:"absolute",left:this.elementOffset.left-e+"px",top:this.elementOffset.top-e+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,b,c){return{width:this.originalSize.width+b}},w:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{left:f.left+b,width:e.width-b}},n:function(a,b,c){var d=this.options,e=this.originalSize,f=this.originalPosition;return{top:f.top+c,height:e.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),b!="resize"&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.extend(a.ui.resizable,{version:"1.8.18"}),a.ui.plugin.add("resizable","alsoResize",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=function(b){a(b).each(function(){var b=a(this);b.data("resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})};typeof e.alsoResize=="object"&&!e.alsoResize.parentNode?e.alsoResize.length?(e.alsoResize=e.alsoResize[0],f(e.alsoResize)):a.each(e.alsoResize,function(a){f(a)}):f(e.alsoResize)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0},i=function(b,d){a(b).each(function(){var b=a(this),e=a(this).data("resizable-alsoresize"),f={},g=d&&d.length?d:b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(g,function(a,b){var c=(e[b]||0)+(h[b]||0);c&&c>=0&&(f[b]=c||null)}),b.css(f)})};typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?a.each(e.alsoResize,function(a,b){i(a,b)}):i(e.alsoResize)},stop:function(b,c){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","animate",{stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d._proportionallyResizeElements,g=f.length&&/textarea/i.test(f[0].nodeName),h=g&&a.ui.hasScroll(f[0],"left")?0:d.sizeDiff.height,i=g?0:d.sizeDiff.width,j={width:d.size.width-i,height:d.size.height-h},k=parseInt(d.element.css("left"),10)+(d.position.left-d.originalPosition.left)||null,l=parseInt(d.element.css("top"),10)+(d.position.top-d.originalPosition.top)||null;d.element.animate(a.extend(j,l&&k?{top:l,left:k}:{}),{duration:e.animateDuration,easing:e.animateEasing,step:function(){var c={width:parseInt(d.element.css("width"),10),height:parseInt(d.element.css("height"),10),top:parseInt(d.element.css("top"),10),left:parseInt(d.element.css("left"),10)};f&&f.length&&a(f[0]).css({width:c.width,height:c.height}),d._updateCache(c),d._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(b,d){var e=a(this).data("resizable"),f=e.options,g=e.element,h=f.containment,i=h instanceof a?h.get(0):/parent/.test(h)?g.parent().get(0):h;if(!!i){e.containerElement=a(i);if(/document/.test(h)||h==document)e.containerOffset={left:0,top:0},e.containerPosition={left:0,top:0},e.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var j=a(i),k=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){k[a]=c(j.css("padding"+b))}),e.containerOffset=j.offset(),e.containerPosition=j.position(),e.containerSize={height:j.innerHeight()-k[3],width:j.innerWidth()-k[1]};var l=e.containerOffset,m=e.containerSize.height,n=e.containerSize.width,o=a.ui.hasScroll(i,"left")?i.scrollWidth:n,p=a.ui.hasScroll(i)?i.scrollHeight:m;e.parentData={element:i,left:l.left,top:l.top,width:o,height:p}}}},resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.containerSize,g=d.containerOffset,h=d.size,i=d.position,j=d._aspectRatio||b.shiftKey,k={top:0,left:0},l=d.containerElement;l[0]!=document&&/static/.test(l.css("position"))&&(k=g),i.left<(d._helper?g.left:0)&&(d.size.width=d.size.width+(d._helper?d.position.left-g.left:d.position.left-k.left),j&&(d.size.height=d.size.width/e.aspectRatio),d.position.left=e.helper?g.left:0),i.top<(d._helper?g.top:0)&&(d.size.height=d.size.height+(d._helper?d.position.top-g.top:d.position.top),j&&(d.size.width=d.size.height*e.aspectRatio),d.position.top=d._helper?g.top:0),d.offset.left=d.parentData.left+d.position.left,d.offset.top=d.parentData.top+d.position.top;var m=Math.abs((d._helper?d.offset.left-k.left:d.offset.left-k.left)+d.sizeDiff.width),n=Math.abs((d._helper?d.offset.top-k.top:d.offset.top-g.top)+d.sizeDiff.height),o=d.containerElement.get(0)==d.element.parent().get(0),p=/relative|absolute/.test(d.containerElement.css("position"));o&&p +&&(m-=d.parentData.left),m+d.size.width>=d.parentData.width&&(d.size.width=d.parentData.width-m,j&&(d.size.height=d.size.width/d.aspectRatio)),n+d.size.height>=d.parentData.height&&(d.size.height=d.parentData.height-n,j&&(d.size.width=d.size.height*d.aspectRatio))},stop:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.position,g=d.containerOffset,h=d.containerPosition,i=d.containerElement,j=a(d.helper),k=j.offset(),l=j.outerWidth()-d.sizeDiff.width,m=j.outerHeight()-d.sizeDiff.height;d._helper&&!e.animate&&/relative/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m}),d._helper&&!e.animate&&/static/.test(i.css("position"))&&a(this).css({left:k.left-h.left-g.left,width:l,height:m})}}),a.ui.plugin.add("resizable","ghost",{start:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size;d.ghost=d.originalElement.clone(),d.ghost.css({opacity:.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:""),d.ghost.appendTo(d.helper)},resize:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.ghost.css({position:"relative",height:d.size.height,width:d.size.width})},stop:function(b,c){var d=a(this).data("resizable"),e=d.options;d.ghost&&d.helper&&d.helper.get(0).removeChild(d.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(b,c){var d=a(this).data("resizable"),e=d.options,f=d.size,g=d.originalSize,h=d.originalPosition,i=d.axis,j=e._aspectRatio||b.shiftKey;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var k=Math.round((f.width-g.width)/(e.grid[0]||1))*(e.grid[0]||1),l=Math.round((f.height-g.height)/(e.grid[1]||1))*(e.grid[1]||1);/^(se|s|e)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l):/^(ne)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l):/^(sw)$/.test(i)?(d.size.width=g.width+k,d.size.height=g.height+l,d.position.left=h.left-k):(d.size.width=g.width+k,d.size.height=g.height+l,d.position.top=h.top-l,d.position.left=h.left-k)}});var c=function(a){return parseInt(a,10)||0},d=function(a){return!isNaN(parseInt(a,10))}})(jQuery); +/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('