From f6b6ac1329c3d2c6755ad51fbb5cfd20aabac441 Mon Sep 17 00:00:00 2001 From: XerolySkinner <63062392+XerolySkinner@users.noreply.github.com> Date: Wed, 23 Nov 2022 23:59:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E5=85=A5=E5=BE=AE=E7=A7=AF=E5=88=86?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Doc/docbook/annotated.xml | 4 +- Doc/docbook/bsp___s_d_8cpp.xml | 26 + Doc/docbook/bsp___s_d_8cpp__incl.md5 | 1 + Doc/docbook/bsp___s_d_8cpp__incl.png | Bin 0 -> 4992 bytes Doc/docbook/bsp___s_d_8cpp_source.xml | 376 ++++++ Doc/docbook/bsp___s_d_8h.xml | 432 ++++++ Doc/docbook/bsp___s_d_8h__dep__incl.md5 | 1 + Doc/docbook/bsp___s_d_8h__dep__incl.png | Bin 0 -> 2265 bytes Doc/docbook/bsp___s_d_8h__incl.md5 | 1 + Doc/docbook/bsp___s_d_8h__incl.png | Bin 0 -> 4034 bytes Doc/docbook/bsp___s_d_8h_source.xml | 189 +++ Doc/docbook/classbsp___s_d.xml | 818 +++++++++++ Doc/docbook/classbsp___s_d__coll__graph.md5 | 1 + Doc/docbook/classbsp___s_d__coll__graph.png | Bin 0 -> 4003 bytes ...64f0bb03133464f2da485f362a52718_cgraph.md5 | 1 + ...64f0bb03133464f2da485f362a52718_cgraph.png | Bin 0 -> 20180 bytes ...c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 | 1 + ...c78e6f5a72f3bdec600a52331dd4d20_cgraph.png | Bin 0 -> 8494 bytes ...e0a3f09367627bcafc8efaaeb90b066_cgraph.md5 | 1 + ...e0a3f09367627bcafc8efaaeb90b066_cgraph.png | Bin 0 -> 9063 bytes ...42ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 | 1 + ...42ec4ccd88203b6691cf4ae1e77fdfe_cgraph.png | Bin 0 -> 3038 bytes ...2ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 | 1 + ...2ec4ccd88203b6691cf4ae1e77fdfe_icgraph.png | Bin 0 -> 10988 bytes ...5bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 | 1 + ...5bc03ff69d0c3c9a73153c71c84a8b0_cgraph.png | Bin 0 -> 7667 bytes ...df843979bb4c764422a37b255c184ea_cgraph.md5 | 1 + ...df843979bb4c764422a37b255c184ea_cgraph.png | Bin 0 -> 1304 bytes ...f843979bb4c764422a37b255c184ea_icgraph.md5 | 1 + ...f843979bb4c764422a37b255c184ea_icgraph.png | Bin 0 -> 1945 bytes ...50f411819ed57543b0326d13faddc6_icgraph.md5 | 1 + ...50f411819ed57543b0326d13faddc6_icgraph.png | Bin 0 -> 35753 bytes ...d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 | 1 + ...d1110bcbe2404ddd5796dc078ce1f5_icgraph.png | Bin 0 -> 26290 bytes ...d95b95b141ee21d83ca70c1b06a31a_icgraph.md5 | 1 + ...d95b95b141ee21d83ca70c1b06a31a_icgraph.png | Bin 0 -> 1281 bytes ...00cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 | 1 + ...00cc886dc5da6d34f75d0bf226c1b92_cgraph.png | Bin 0 -> 8600 bytes ...6f32b50ec777acc0dd819150cd28937_cgraph.md5 | 1 + ...6f32b50ec777acc0dd819150cd28937_cgraph.png | Bin 0 -> 7811 bytes ...f32b50ec777acc0dd819150cd28937_icgraph.md5 | 1 + ...f32b50ec777acc0dd819150cd28937_icgraph.png | Bin 0 -> 2844 bytes ...f2d27cc9275f3ffa71556124f143d12_cgraph.md5 | 1 + ...f2d27cc9275f3ffa71556124f143d12_cgraph.png | Bin 0 -> 6128 bytes ...799d7d8ebaf4c304bf62722ba10ba37_cgraph.md5 | 1 + ...799d7d8ebaf4c304bf62722ba10ba37_cgraph.png | Bin 0 -> 2923 bytes ...99d7d8ebaf4c304bf62722ba10ba37_icgraph.md5 | 1 + ...99d7d8ebaf4c304bf62722ba10ba37_icgraph.png | Bin 0 -> 16346 bytes ...0426f6a4b550e60a926c95724d81665_cgraph.md5 | 1 + ...0426f6a4b550e60a926c95724d81665_cgraph.png | Bin 0 -> 7696 bytes ...426f6a4b550e60a926c95724d81665_icgraph.md5 | 1 + ...426f6a4b550e60a926c95724d81665_icgraph.png | Bin 0 -> 1447 bytes ...203b65e00206d38ef14640f7b7242b6_cgraph.md5 | 1 + ...203b65e00206d38ef14640f7b7242b6_cgraph.png | Bin 0 -> 8148 bytes ...03b65e00206d38ef14640f7b7242b6_icgraph.md5 | 1 + ...03b65e00206d38ef14640f7b7242b6_icgraph.png | Bin 0 -> 1367 bytes .../dir_7d600478d4be1ed73c651a71d29ab217.xml | 6 + Doc/docbook/index.xml | 8 + .../struct_m_s_d___c_a_r_d_i_n_f_o.xml | 104 ++ ...t_m_s_d___c_a_r_d_i_n_f_o__coll__graph.md5 | 1 + ...t_m_s_d___c_a_r_d_i_n_f_o__coll__graph.png | Bin 0 -> 2895 bytes Doc/docbook/struct_m_s_d___c_i_d.xml | 113 ++ Doc/docbook/struct_m_s_d___c_s_d.xml | 356 +++++ Doc/docbook/varint_8h__dep__incl.md5 | 2 +- Doc/docbook/varint_8h__dep__incl.png | Bin 96087 -> 101256 bytes Doc/html/annotated.html | 16 +- Doc/html/bsp___s_d_8cpp.html | 108 ++ Doc/html/bsp___s_d_8cpp__incl.map | 7 + Doc/html/bsp___s_d_8cpp__incl.md5 | 1 + Doc/html/bsp___s_d_8cpp__incl.png | Bin 0 -> 4992 bytes Doc/html/bsp___s_d_8cpp_source.html | 559 ++++++++ Doc/html/bsp___s_d_8h.html | 857 ++++++++++++ Doc/html/bsp___s_d_8h__dep__incl.map | 4 + Doc/html/bsp___s_d_8h__dep__incl.md5 | 1 + Doc/html/bsp___s_d_8h__dep__incl.png | Bin 0 -> 2265 bytes Doc/html/bsp___s_d_8h__incl.map | 6 + Doc/html/bsp___s_d_8h__incl.md5 | 1 + Doc/html/bsp___s_d_8h__incl.png | Bin 0 -> 4034 bytes Doc/html/bsp___s_d_8h_source.html | 360 +++++ Doc/html/classbsp___s_d-members.html | 107 ++ Doc/html/classbsp___s_d.html | 1194 +++++++++++++++++ Doc/html/classbsp___s_d__coll__graph.map | 6 + Doc/html/classbsp___s_d__coll__graph.md5 | 1 + Doc/html/classbsp___s_d__coll__graph.png | Bin 0 -> 4003 bytes ...64f0bb03133464f2da485f362a52718_cgraph.map | 10 + ...64f0bb03133464f2da485f362a52718_cgraph.md5 | 1 + ...64f0bb03133464f2da485f362a52718_cgraph.png | Bin 0 -> 20180 bytes ...c78e6f5a72f3bdec600a52331dd4d20_cgraph.map | 8 + ...c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 | 1 + ...c78e6f5a72f3bdec600a52331dd4d20_cgraph.png | Bin 0 -> 8494 bytes ...e0a3f09367627bcafc8efaaeb90b066_cgraph.map | 7 + ...e0a3f09367627bcafc8efaaeb90b066_cgraph.md5 | 1 + ...e0a3f09367627bcafc8efaaeb90b066_cgraph.png | Bin 0 -> 9063 bytes ...42ec4ccd88203b6691cf4ae1e77fdfe_cgraph.map | 5 + ...42ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 | 1 + ...42ec4ccd88203b6691cf4ae1e77fdfe_cgraph.png | Bin 0 -> 3038 bytes ...2ec4ccd88203b6691cf4ae1e77fdfe_icgraph.map | 10 + ...2ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 | 1 + ...2ec4ccd88203b6691cf4ae1e77fdfe_icgraph.png | Bin 0 -> 10988 bytes ...5bc03ff69d0c3c9a73153c71c84a8b0_cgraph.map | 7 + ...5bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 | 1 + ...5bc03ff69d0c3c9a73153c71c84a8b0_cgraph.png | Bin 0 -> 7667 bytes ...df843979bb4c764422a37b255c184ea_cgraph.map | 4 + ...df843979bb4c764422a37b255c184ea_cgraph.md5 | 1 + ...df843979bb4c764422a37b255c184ea_cgraph.png | Bin 0 -> 1304 bytes ...f843979bb4c764422a37b255c184ea_icgraph.map | 5 + ...f843979bb4c764422a37b255c184ea_icgraph.md5 | 1 + ...f843979bb4c764422a37b255c184ea_icgraph.png | Bin 0 -> 1945 bytes ...50f411819ed57543b0326d13faddc6_icgraph.map | 14 + ...50f411819ed57543b0326d13faddc6_icgraph.md5 | 1 + ...50f411819ed57543b0326d13faddc6_icgraph.png | Bin 0 -> 35753 bytes ...d1110bcbe2404ddd5796dc078ce1f5_icgraph.map | 15 + ...d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 | 1 + ...d1110bcbe2404ddd5796dc078ce1f5_icgraph.png | Bin 0 -> 26290 bytes ...d95b95b141ee21d83ca70c1b06a31a_icgraph.map | 4 + ...d95b95b141ee21d83ca70c1b06a31a_icgraph.md5 | 1 + ...d95b95b141ee21d83ca70c1b06a31a_icgraph.png | Bin 0 -> 1281 bytes ...00cc886dc5da6d34f75d0bf226c1b92_cgraph.map | 8 + ...00cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 | 1 + ...00cc886dc5da6d34f75d0bf226c1b92_cgraph.png | Bin 0 -> 8600 bytes ...6f32b50ec777acc0dd819150cd28937_cgraph.map | 7 + ...6f32b50ec777acc0dd819150cd28937_cgraph.md5 | 1 + ...6f32b50ec777acc0dd819150cd28937_cgraph.png | Bin 0 -> 7811 bytes ...f32b50ec777acc0dd819150cd28937_icgraph.map | 5 + ...f32b50ec777acc0dd819150cd28937_icgraph.md5 | 1 + ...f32b50ec777acc0dd819150cd28937_icgraph.png | Bin 0 -> 2844 bytes ...f2d27cc9275f3ffa71556124f143d12_cgraph.map | 7 + ...f2d27cc9275f3ffa71556124f143d12_cgraph.md5 | 1 + ...f2d27cc9275f3ffa71556124f143d12_cgraph.png | Bin 0 -> 6128 bytes ...799d7d8ebaf4c304bf62722ba10ba37_cgraph.map | 5 + ...799d7d8ebaf4c304bf62722ba10ba37_cgraph.md5 | 1 + ...799d7d8ebaf4c304bf62722ba10ba37_cgraph.png | Bin 0 -> 2923 bytes ...99d7d8ebaf4c304bf62722ba10ba37_icgraph.map | 12 + ...99d7d8ebaf4c304bf62722ba10ba37_icgraph.md5 | 1 + ...99d7d8ebaf4c304bf62722ba10ba37_icgraph.png | Bin 0 -> 16346 bytes ...0426f6a4b550e60a926c95724d81665_cgraph.map | 7 + ...0426f6a4b550e60a926c95724d81665_cgraph.md5 | 1 + ...0426f6a4b550e60a926c95724d81665_cgraph.png | Bin 0 -> 7696 bytes ...426f6a4b550e60a926c95724d81665_icgraph.map | 4 + ...426f6a4b550e60a926c95724d81665_icgraph.md5 | 1 + ...426f6a4b550e60a926c95724d81665_icgraph.png | Bin 0 -> 1447 bytes ...203b65e00206d38ef14640f7b7242b6_cgraph.map | 7 + ...203b65e00206d38ef14640f7b7242b6_cgraph.md5 | 1 + ...203b65e00206d38ef14640f7b7242b6_cgraph.png | Bin 0 -> 8148 bytes ...03b65e00206d38ef14640f7b7242b6_icgraph.map | 4 + ...03b65e00206d38ef14640f7b7242b6_icgraph.md5 | 1 + ...03b65e00206d38ef14640f7b7242b6_icgraph.png | Bin 0 -> 1367 bytes Doc/html/classes.html | 9 +- .../dir_7d600478d4be1ed73c651a71d29ab217.html | 5 + Doc/html/files.html | 4 +- Doc/html/functions.html | 200 --- Doc/html/functions_b.html | 9 +- Doc/html/functions_c.html | 18 +- Doc/html/functions_d.html | 12 +- Doc/html/functions_e.html | 86 ++ Doc/html/functions_f.html | 13 +- Doc/html/functions_func.html | 24 + Doc/html/functions_g.html | 11 +- Doc/html/functions_h.html | 7 +- Doc/html/functions_i.html | 9 +- Doc/html/functions_k.html | 5 +- Doc/html/functions_l.html | 8 +- Doc/html/functions_m.html | 25 +- Doc/html/functions_n.html | 6 +- Doc/html/functions_o.html | 8 +- Doc/html/functions_p.html | 17 +- Doc/html/functions_r.html | 19 +- Doc/html/functions_s.html | 24 +- Doc/html/functions_t.html | 11 +- Doc/html/functions_vars.html | 74 +- Doc/html/functions_w.html | 11 +- Doc/html/functions_~.html | 4 +- Doc/html/globals.html | 57 + Doc/html/globals_defs.html | 48 + Doc/html/globals_enum.html | 1 + Doc/html/globals_eval.html | 2 + Doc/html/globals_type.html | 1 + Doc/html/globals_vars.html | 1 + Doc/html/hierarchy.html | 12 +- Doc/html/inherit_graph_10.map | 2 +- Doc/html/inherit_graph_10.md5 | 2 +- Doc/html/inherit_graph_10.png | Bin 439 -> 511 bytes Doc/html/inherit_graph_11.map | 2 +- Doc/html/inherit_graph_11.md5 | 2 +- Doc/html/inherit_graph_11.png | Bin 442 -> 426 bytes Doc/html/inherit_graph_12.map | 2 +- Doc/html/inherit_graph_12.md5 | 2 +- Doc/html/inherit_graph_12.png | Bin 455 -> 426 bytes Doc/html/inherit_graph_13.map | 2 +- Doc/html/inherit_graph_13.md5 | 2 +- Doc/html/inherit_graph_13.png | Bin 319 -> 426 bytes Doc/html/inherit_graph_14.map | 2 +- Doc/html/inherit_graph_14.md5 | 2 +- Doc/html/inherit_graph_14.png | Bin 434 -> 439 bytes Doc/html/inherit_graph_15.map | 2 +- Doc/html/inherit_graph_15.md5 | 2 +- Doc/html/inherit_graph_15.png | Bin 523 -> 442 bytes Doc/html/inherit_graph_16.map | 2 +- Doc/html/inherit_graph_16.md5 | 2 +- Doc/html/inherit_graph_16.png | Bin 426 -> 455 bytes Doc/html/inherit_graph_9.map | 2 +- Doc/html/inherit_graph_9.md5 | 2 +- Doc/html/inherit_graph_9.png | Bin 426 -> 394 bytes Doc/html/inherits.html | 28 +- Doc/html/menudata.js | 53 +- Doc/html/search/all_0.js | 9 +- Doc/html/search/all_10.js | 15 +- Doc/html/search/all_11.js | 36 +- Doc/html/search/all_12.js | 44 +- Doc/html/search/all_13.js | 16 +- Doc/html/search/all_14.js | 16 +- Doc/html/search/all_15.js | 22 +- Doc/html/search/all_16.js | 20 +- Doc/html/search/all_17.js | 8 +- Doc/html/search/all_18.js | 2 +- Doc/html/search/all_19.js | 2 +- Doc/html/search/all_2.js | 66 +- Doc/html/search/all_3.js | 40 +- Doc/html/search/all_4.js | 13 +- Doc/html/search/all_5.js | 15 +- Doc/html/search/all_6.js | 25 +- Doc/html/search/all_7.js | 15 +- Doc/html/search/all_8.js | 31 +- Doc/html/search/all_9.js | 32 +- Doc/html/search/all_a.js | 6 +- Doc/html/search/all_b.js | 82 +- Doc/html/search/all_c.js | 111 +- Doc/html/search/all_d.js | 7 +- Doc/html/search/all_e.js | 23 +- Doc/html/search/all_f.js | 28 +- Doc/html/search/classes_1.js | 5 +- Doc/html/search/classes_2.js | 7 +- Doc/html/search/classes_3.js | 5 +- Doc/html/search/defines_1.js | 17 +- Doc/html/search/defines_2.js | 63 +- Doc/html/search/defines_3.js | 2 +- Doc/html/search/defines_4.js | 137 +- Doc/html/search/defines_5.js | 4 +- Doc/html/search/enums_0.js | 2 +- Doc/html/search/enums_1.js | 2 +- Doc/html/search/enums_2.js | 2 +- Doc/html/search/enums_3.js | 2 +- Doc/html/search/enumvalues_3.js | 4 +- Doc/html/search/enumvalues_4.js | 7 +- Doc/html/search/enumvalues_5.js | 8 +- Doc/html/search/enumvalues_6.js | 5 +- Doc/html/search/enumvalues_7.js | 7 + Doc/html/search/files_0.js | 4 +- Doc/html/search/functions_1.js | 5 +- Doc/html/search/functions_5.js | 3 +- Doc/html/search/functions_7.js | 14 +- Doc/html/search/functions_8.js | 18 +- Doc/html/search/functions_9.js | 14 +- Doc/html/search/functions_a.js | 26 +- Doc/html/search/functions_b.js | 14 +- Doc/html/search/functions_c.js | 15 +- Doc/html/search/functions_d.js | 15 +- Doc/html/search/searchdata.js | 16 +- Doc/html/search/typedefs_2.js | 5 +- Doc/html/search/typedefs_3.js | 12 +- Doc/html/search/typedefs_4.js | 11 + Doc/html/search/variables_1.js | 3 +- Doc/html/search/variables_10.js | 14 +- Doc/html/search/variables_11.js | 6 +- Doc/html/search/variables_12.js | 7 +- Doc/html/search/variables_2.js | 12 +- Doc/html/search/variables_3.js | 8 +- Doc/html/search/variables_4.js | 5 +- Doc/html/search/variables_5.js | 16 +- Doc/html/search/variables_6.js | 15 +- Doc/html/search/variables_7.js | 9 +- Doc/html/search/variables_8.js | 11 +- Doc/html/search/variables_9.js | 6 +- Doc/html/search/variables_a.js | 2 +- Doc/html/search/variables_b.js | 14 +- Doc/html/search/variables_c.js | 5 +- Doc/html/search/variables_d.js | 9 +- Doc/html/search/variables_e.js | 11 +- Doc/html/search/variables_f.js | 14 +- ...truct_m_s_d___c_a_r_d_i_n_f_o-members.html | 93 ++ Doc/html/struct_m_s_d___c_a_r_d_i_n_f_o.html | 252 ++++ ...t_m_s_d___c_a_r_d_i_n_f_o__coll__graph.map | 5 + ...t_m_s_d___c_a_r_d_i_n_f_o__coll__graph.md5 | 1 + ...t_m_s_d___c_a_r_d_i_n_f_o__coll__graph.png | Bin 0 -> 2895 bytes Doc/html/struct_m_s_d___c_i_d-members.html | 95 ++ Doc/html/struct_m_s_d___c_i_d.html | 278 ++++ Doc/html/struct_m_s_d___c_s_d-members.html | 122 ++ Doc/html/struct_m_s_d___c_s_d.html | 764 +++++++++++ Doc/html/varint_8h.html | 16 +- Doc/html/varint_8h__dep__incl.map | 16 +- Doc/html/varint_8h__dep__incl.md5 | 2 +- Doc/html/varint_8h__dep__incl.png | Bin 96087 -> 101256 bytes Doc/latex/annotated.tex | 4 + Doc/latex/bsp___mod_bus_8cpp.tex | 3 +- Doc/latex/bsp___mod_bus_8h.tex | 6 +- Doc/latex/bsp___mod_bus___s_t_m32_8cpp.tex | 3 +- Doc/latex/bsp___mod_bus___s_t_m32_8h.tex | 3 +- Doc/latex/bsp___s_d_8cpp.tex | 25 + Doc/latex/bsp___s_d_8cpp__incl.md5 | 1 + Doc/latex/bsp___s_d_8cpp__incl.pdf | Bin 0 -> 17770 bytes Doc/latex/bsp___s_d_8cpp_source.tex | 377 ++++++ Doc/latex/bsp___s_d_8h.tex | 527 ++++++++ Doc/latex/bsp___s_d_8h__dep__incl.md5 | 1 + Doc/latex/bsp___s_d_8h__dep__incl.pdf | Bin 0 -> 16085 bytes Doc/latex/bsp___s_d_8h__incl.md5 | 1 + Doc/latex/bsp___s_d_8h__incl.pdf | Bin 0 -> 17686 bytes Doc/latex/bsp___s_d_8h_source.tex | 190 +++ Doc/latex/classbsp___s_d.tex | 641 +++++++++ Doc/latex/classbsp___s_d__coll__graph.md5 | 1 + Doc/latex/classbsp___s_d__coll__graph.pdf | Bin 0 -> 16507 bytes ...64f0bb03133464f2da485f362a52718_cgraph.md5 | 1 + ...64f0bb03133464f2da485f362a52718_cgraph.pdf | Bin 0 -> 20052 bytes ...c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 | 1 + ...c78e6f5a72f3bdec600a52331dd4d20_cgraph.pdf | Bin 0 -> 18475 bytes ...e0a3f09367627bcafc8efaaeb90b066_cgraph.md5 | 1 + ...e0a3f09367627bcafc8efaaeb90b066_cgraph.pdf | Bin 0 -> 16649 bytes ...42ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 | 1 + ...42ec4ccd88203b6691cf4ae1e77fdfe_cgraph.pdf | Bin 0 -> 15945 bytes ...2ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 | 1 + ...2ec4ccd88203b6691cf4ae1e77fdfe_icgraph.pdf | Bin 0 -> 19857 bytes ...5bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 | 1 + ...5bc03ff69d0c3c9a73153c71c84a8b0_cgraph.pdf | Bin 0 -> 18058 bytes ...df843979bb4c764422a37b255c184ea_cgraph.md5 | 1 + ...df843979bb4c764422a37b255c184ea_cgraph.pdf | Bin 0 -> 16368 bytes ...f843979bb4c764422a37b255c184ea_icgraph.md5 | 1 + ...f843979bb4c764422a37b255c184ea_icgraph.pdf | Bin 0 -> 15673 bytes ...50f411819ed57543b0326d13faddc6_icgraph.md5 | 1 + ...50f411819ed57543b0326d13faddc6_icgraph.pdf | Bin 0 -> 21445 bytes ...d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 | 1 + ...d1110bcbe2404ddd5796dc078ce1f5_icgraph.pdf | Bin 0 -> 22698 bytes ...d95b95b141ee21d83ca70c1b06a31a_icgraph.md5 | 1 + ...d95b95b141ee21d83ca70c1b06a31a_icgraph.pdf | Bin 0 -> 12990 bytes ...00cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 | 1 + ...00cc886dc5da6d34f75d0bf226c1b92_cgraph.pdf | Bin 0 -> 18679 bytes ...6f32b50ec777acc0dd819150cd28937_cgraph.md5 | 1 + ...6f32b50ec777acc0dd819150cd28937_cgraph.pdf | Bin 0 -> 17688 bytes ...f32b50ec777acc0dd819150cd28937_icgraph.md5 | 1 + ...f32b50ec777acc0dd819150cd28937_icgraph.pdf | Bin 0 -> 15530 bytes ...f2d27cc9275f3ffa71556124f143d12_cgraph.md5 | 1 + ...f2d27cc9275f3ffa71556124f143d12_cgraph.pdf | Bin 0 -> 19372 bytes ...799d7d8ebaf4c304bf62722ba10ba37_cgraph.md5 | 1 + ...799d7d8ebaf4c304bf62722ba10ba37_cgraph.pdf | Bin 0 -> 15843 bytes ...99d7d8ebaf4c304bf62722ba10ba37_icgraph.md5 | 1 + ...99d7d8ebaf4c304bf62722ba10ba37_icgraph.pdf | Bin 0 -> 20151 bytes ...0426f6a4b550e60a926c95724d81665_cgraph.md5 | 1 + ...0426f6a4b550e60a926c95724d81665_cgraph.pdf | Bin 0 -> 17878 bytes ...426f6a4b550e60a926c95724d81665_icgraph.md5 | 1 + ...426f6a4b550e60a926c95724d81665_icgraph.pdf | Bin 0 -> 14298 bytes ...203b65e00206d38ef14640f7b7242b6_cgraph.md5 | 1 + ...203b65e00206d38ef14640f7b7242b6_cgraph.pdf | Bin 0 -> 18189 bytes ...03b65e00206d38ef14640f7b7242b6_icgraph.md5 | 1 + ...03b65e00206d38ef14640f7b7242b6_icgraph.pdf | Bin 0 -> 13858 bytes .../dir_4bec3308e672b6aafff3731922d88232.tex | 3 +- .../dir_7749ce106eeec8242cf951d623c8d314.tex | 3 +- .../dir_7d600478d4be1ed73c651a71d29ab217.tex | 4 + .../dir_88b6596e025f66b63ada730bce564633.tex | 3 +- Doc/latex/files.tex | 2 + Doc/latex/hierarchy.tex | 4 + Doc/latex/mpu6050_8h.tex | 3 +- Doc/latex/refman.tex | 8 + Doc/latex/struct_m_s_d___c_a_r_d_i_n_f_o.tex | 130 ++ ...t_m_s_d___c_a_r_d_i_n_f_o__coll__graph.md5 | 1 + ...t_m_s_d___c_a_r_d_i_n_f_o__coll__graph.pdf | Bin 0 -> 11965 bytes Doc/latex/struct_m_s_d___c_i_d.tex | 144 ++ Doc/latex/struct_m_s_d___c_s_d.tex | 468 +++++++ Doc/latex/varint_8h__dep__incl.md5 | 2 +- Doc/latex/varint_8h__dep__incl.pdf | Bin 28649 -> 28872 bytes .../man3/D__gitt_MicrochipFor32_bsp_Device_.3 | 7 + Doc/man/man3/MSD_CARDINFO.3 | 79 ++ Doc/man/man3/MSD_CID.3 | 93 ++ Doc/man/man3/MSD_CSD.3 | 282 ++++ Doc/man/man3/bsp_SD.3 | 390 ++++++ Doc/man/man3/bsp_SD.cpp.3 | 22 + Doc/man/man3/bsp_SD.h.3 | 333 +++++ Doc/xml/bsp___s_d_8cpp.xml | 414 ++++++ Doc/xml/bsp___s_d_8h.xml | 695 ++++++++++ Doc/xml/classbsp___s_d.xml | 883 ++++++++++++ .../dir_7d600478d4be1ed73c651a71d29ab217.xml | 2 + Doc/xml/index.xml | 130 ++ Doc/xml/struct_m_s_d___c_a_r_d_i_n_f_o.xml | 161 +++ Doc/xml/struct_m_s_d___c_i_d.xml | 176 +++ Doc/xml/struct_m_s_d___c_s_d.xml | 608 +++++++++ Doc/xml/varint_8h.xml | 45 +- bsp_Device/bsp_Calculus.cpp | 117 ++ bsp_Device/bsp_Calculus.h | 81 ++ bsp_Device/bsp_IIC_STM32.cpp | 1 - bsp_Device/bsp_SD.cpp | 456 +++++++ bsp_Device/bsp_SD.h | 201 +++ bsp_Device/bsp_flash.c | 94 ++ bsp_Device/bsp_flash.h | 46 + 390 files changed, 16565 insertions(+), 994 deletions(-) create mode 100644 Doc/docbook/bsp___s_d_8cpp.xml create mode 100644 Doc/docbook/bsp___s_d_8cpp__incl.md5 create mode 100644 Doc/docbook/bsp___s_d_8cpp__incl.png create mode 100644 Doc/docbook/bsp___s_d_8cpp_source.xml create mode 100644 Doc/docbook/bsp___s_d_8h.xml create mode 100644 Doc/docbook/bsp___s_d_8h__dep__incl.md5 create mode 100644 Doc/docbook/bsp___s_d_8h__dep__incl.png create mode 100644 Doc/docbook/bsp___s_d_8h__incl.md5 create mode 100644 Doc/docbook/bsp___s_d_8h__incl.png create mode 100644 Doc/docbook/bsp___s_d_8h_source.xml create mode 100644 Doc/docbook/classbsp___s_d.xml create mode 100644 Doc/docbook/classbsp___s_d__coll__graph.md5 create mode 100644 Doc/docbook/classbsp___s_d__coll__graph.png create mode 100644 Doc/docbook/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a1e0a3f09367627bcafc8efaaeb90b066_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a1e0a3f09367627bcafc8efaaeb90b066_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_icgraph.png create mode 100644 Doc/docbook/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_cgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_cgraph.png create mode 100644 Doc/docbook/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_icgraph.md5 create mode 100644 Doc/docbook/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_icgraph.png create mode 100644 Doc/docbook/struct_m_s_d___c_a_r_d_i_n_f_o.xml create mode 100644 Doc/docbook/struct_m_s_d___c_a_r_d_i_n_f_o__coll__graph.md5 create mode 100644 Doc/docbook/struct_m_s_d___c_a_r_d_i_n_f_o__coll__graph.png create mode 100644 Doc/docbook/struct_m_s_d___c_i_d.xml create mode 100644 Doc/docbook/struct_m_s_d___c_s_d.xml create mode 100644 Doc/html/bsp___s_d_8cpp.html create mode 100644 Doc/html/bsp___s_d_8cpp__incl.map create mode 100644 Doc/html/bsp___s_d_8cpp__incl.md5 create mode 100644 Doc/html/bsp___s_d_8cpp__incl.png create mode 100644 Doc/html/bsp___s_d_8cpp_source.html create mode 100644 Doc/html/bsp___s_d_8h.html create mode 100644 Doc/html/bsp___s_d_8h__dep__incl.map create mode 100644 Doc/html/bsp___s_d_8h__dep__incl.md5 create mode 100644 Doc/html/bsp___s_d_8h__dep__incl.png create mode 100644 Doc/html/bsp___s_d_8h__incl.map create mode 100644 Doc/html/bsp___s_d_8h__incl.md5 create mode 100644 Doc/html/bsp___s_d_8h__incl.png create mode 100644 Doc/html/bsp___s_d_8h_source.html create mode 100644 Doc/html/classbsp___s_d-members.html create mode 100644 Doc/html/classbsp___s_d.html create mode 100644 Doc/html/classbsp___s_d__coll__graph.map create mode 100644 Doc/html/classbsp___s_d__coll__graph.md5 create mode 100644 Doc/html/classbsp___s_d__coll__graph.png create mode 100644 Doc/html/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a1e0a3f09367627bcafc8efaaeb90b066_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a1e0a3f09367627bcafc8efaaeb90b066_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a1e0a3f09367627bcafc8efaaeb90b066_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.map create mode 100644 Doc/html/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.png create mode 100644 Doc/html/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_icgraph.map create mode 100644 Doc/html/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_icgraph.png create mode 100644 Doc/html/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.map create mode 100644 Doc/html/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.png create mode 100644 Doc/html/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.map create mode 100644 Doc/html/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.png create mode 100644 Doc/html/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.map create mode 100644 Doc/html/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.png create mode 100644 Doc/html/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_cgraph.map create mode 100644 Doc/html/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_cgraph.png create mode 100644 Doc/html/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_icgraph.map create mode 100644 Doc/html/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_icgraph.png create mode 100644 Doc/html/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.map create mode 100644 Doc/html/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.png create mode 100644 Doc/html/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_cgraph.map create mode 100644 Doc/html/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_cgraph.png create mode 100644 Doc/html/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_icgraph.map create mode 100644 Doc/html/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_icgraph.png create mode 100644 Doc/html/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.map create mode 100644 Doc/html/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.png create mode 100644 Doc/html/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_icgraph.map create mode 100644 Doc/html/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_icgraph.png create mode 100644 Doc/html/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_cgraph.map create mode 100644 Doc/html/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_cgraph.md5 create mode 100644 Doc/html/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_cgraph.png create mode 100644 Doc/html/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_icgraph.map create mode 100644 Doc/html/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_icgraph.md5 create mode 100644 Doc/html/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_icgraph.png create mode 100644 Doc/html/functions_e.html create mode 100644 Doc/html/search/enumvalues_7.js create mode 100644 Doc/html/search/typedefs_4.js create mode 100644 Doc/html/struct_m_s_d___c_a_r_d_i_n_f_o-members.html create mode 100644 Doc/html/struct_m_s_d___c_a_r_d_i_n_f_o.html create mode 100644 Doc/html/struct_m_s_d___c_a_r_d_i_n_f_o__coll__graph.map create mode 100644 Doc/html/struct_m_s_d___c_a_r_d_i_n_f_o__coll__graph.md5 create mode 100644 Doc/html/struct_m_s_d___c_a_r_d_i_n_f_o__coll__graph.png create mode 100644 Doc/html/struct_m_s_d___c_i_d-members.html create mode 100644 Doc/html/struct_m_s_d___c_i_d.html create mode 100644 Doc/html/struct_m_s_d___c_s_d-members.html create mode 100644 Doc/html/struct_m_s_d___c_s_d.html create mode 100644 Doc/latex/bsp___s_d_8cpp.tex create mode 100644 Doc/latex/bsp___s_d_8cpp__incl.md5 create mode 100644 Doc/latex/bsp___s_d_8cpp__incl.pdf create mode 100644 Doc/latex/bsp___s_d_8cpp_source.tex create mode 100644 Doc/latex/bsp___s_d_8h.tex create mode 100644 Doc/latex/bsp___s_d_8h__dep__incl.md5 create mode 100644 Doc/latex/bsp___s_d_8h__dep__incl.pdf create mode 100644 Doc/latex/bsp___s_d_8h__incl.md5 create mode 100644 Doc/latex/bsp___s_d_8h__incl.pdf create mode 100644 Doc/latex/bsp___s_d_8h_source.tex create mode 100644 Doc/latex/classbsp___s_d.tex create mode 100644 Doc/latex/classbsp___s_d__coll__graph.md5 create mode 100644 Doc/latex/classbsp___s_d__coll__graph.pdf create mode 100644 Doc/latex/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a1e0a3f09367627bcafc8efaaeb90b066_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a1e0a3f09367627bcafc8efaaeb90b066_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_a96f32b50ec777acc0dd819150cd28937_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_ab799d7d8ebaf4c304bf62722ba10ba37_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_icgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_cgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_cgraph.pdf create mode 100644 Doc/latex/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_icgraph.md5 create mode 100644 Doc/latex/classbsp___s_d_af203b65e00206d38ef14640f7b7242b6_icgraph.pdf create mode 100644 Doc/latex/struct_m_s_d___c_a_r_d_i_n_f_o.tex create mode 100644 Doc/latex/struct_m_s_d___c_a_r_d_i_n_f_o__coll__graph.md5 create mode 100644 Doc/latex/struct_m_s_d___c_a_r_d_i_n_f_o__coll__graph.pdf create mode 100644 Doc/latex/struct_m_s_d___c_i_d.tex create mode 100644 Doc/latex/struct_m_s_d___c_s_d.tex create mode 100644 Doc/man/man3/MSD_CARDINFO.3 create mode 100644 Doc/man/man3/MSD_CID.3 create mode 100644 Doc/man/man3/MSD_CSD.3 create mode 100644 Doc/man/man3/bsp_SD.3 create mode 100644 Doc/man/man3/bsp_SD.cpp.3 create mode 100644 Doc/man/man3/bsp_SD.h.3 create mode 100644 Doc/xml/bsp___s_d_8cpp.xml create mode 100644 Doc/xml/bsp___s_d_8h.xml create mode 100644 Doc/xml/classbsp___s_d.xml create mode 100644 Doc/xml/struct_m_s_d___c_a_r_d_i_n_f_o.xml create mode 100644 Doc/xml/struct_m_s_d___c_i_d.xml create mode 100644 Doc/xml/struct_m_s_d___c_s_d.xml create mode 100644 bsp_Device/bsp_Calculus.cpp create mode 100644 bsp_Device/bsp_Calculus.h create mode 100644 bsp_Device/bsp_SD.cpp create mode 100644 bsp_Device/bsp_SD.h create mode 100644 bsp_Device/bsp_flash.c create mode 100644 bsp_Device/bsp_flash.h diff --git a/Doc/docbook/annotated.xml b/Doc/docbook/annotated.xml index ed03486..72287bf 100644 --- a/Doc/docbook/annotated.xml +++ b/Doc/docbook/annotated.xml @@ -23,11 +23,13 @@ ModBus发送器 bsp_Position_PID 位置法为基础的PID算法 +bsp_SD +一个操作SD卡的类 bsp_STM32_AT24C00 一个AT24设备,基于STM32的IIC总线 bsp_STM32_OLED 一个OLED设备,基于STM32使用IIC总线 -STL_lQueue +MSD_CARDINFOMSD_CIDMSD_CSDSTL_lQueue 一个队列的类 STL_lStack 一个栈的类 diff --git a/Doc/docbook/bsp___s_d_8cpp.xml b/Doc/docbook/bsp___s_d_8cpp.xml new file mode 100644 index 0000000..8a88779 --- /dev/null +++ b/Doc/docbook/bsp___s_d_8cpp.xml @@ -0,0 +1,26 @@ + +
+D:/gitt/MicrochipFor32/bsp_Device/bsp_SD.cpp 文件参考 +D:/gitt/MicrochipFor32/bsp_Device/bsp_SD.cpp + + +操作SD卡的库 + + +#include "bsp_SD.h"bsp_SD.cpp 的引用(Include)关系图: + + + + + + + + +
+详细描述 + +操作SD卡的库 + +在文件 bsp_SD.cpp 中定义. +
+
diff --git a/Doc/docbook/bsp___s_d_8cpp__incl.md5 b/Doc/docbook/bsp___s_d_8cpp__incl.md5 new file mode 100644 index 0000000..486eb97 --- /dev/null +++ b/Doc/docbook/bsp___s_d_8cpp__incl.md5 @@ -0,0 +1 @@ +ba83b3acb6835f6281fb9befa8f81c7d \ No newline at end of file diff --git a/Doc/docbook/bsp___s_d_8cpp__incl.png b/Doc/docbook/bsp___s_d_8cpp__incl.png new file mode 100644 index 0000000000000000000000000000000000000000..3d392f7357dd7550c1e84e570413958476fecd13 GIT binary patch literal 4992 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 literal 0 HcmV?d00001 diff --git a/Doc/docbook/bsp___s_d_8cpp_source.xml b/Doc/docbook/bsp___s_d_8cpp_source.xml new file mode 100644 index 0000000..dc0013b --- /dev/null +++ b/Doc/docbook/bsp___s_d_8cpp_source.xml @@ -0,0 +1,376 @@ + +
+bsp_SD.cpp +D:/gitt/MicrochipFor32/bsp_Device/bsp_SD.cpp +浏览该文件的文档.00001 /*---------------------------------------------------------------------------------------------------- +00002 # +00003 # Copyright (c) 2022 Yuankang Liang(XerolySkinner) +00004 # +00005 # 本软件按原样提供,无任何明示或暗示 +00006 # 在任何情况下,作者都不承担任何损害赔偿责任 +00007 # +00008 # 使用的许可声明: +00009 # 1. 不得歪曲本软件的来源,你不能声称你编写了原始软件. +00010 # 2. 免费授予以任何目的,前提是版权声明出现在所有副本中. +00011 # 并且版权声明和许可声明同时出现. +00012 # 3. 你有使用,复制,修改,分发,和销售本软件的许可. +00013 # 4. 如果你在产品中使用,产品文档中的声明是赞赏的但不是必须的. +00014 # 5. 本通知不得从任何来源删除或更改. +00015 # +00016 # Yuankang Liang(XerolySkinner) +00017 # E-mail:zabbcccbbaz@163.com +00018 # QQ:2715099320 +00019 # Mobile Phone:13005636215 +00020 # +00021 # All rights reserved. +00022 */ +00023 +00034 #include "bsp_SD.h" +00036 //---------------------------------------------------------------------------------------------------- +00037 // 程序 +00038 // +00043 void bsp_SD::SD_CS(u8 p){ +00044 HAL_GPIO_WritePin(GPIOx_CS, GPIO_Pin_CS, p == 0 ? GPIO_PIN_SET: GPIO_PIN_RESET);} +00045 //---------------------------------------------------------------------------------------------------- +00053 u32 bsp_SD::SD_sendcmd(u8 cmd, u32 arg, u8 crc){ +00054 u8 r1; +00055 u8 retry; +00056 SD_CS(0); +00057 __nop(); +00058 SD_CS(1); +00059 do retry = spi_readwrite(DFF);while(retry != 0xFF); +00060 spi_readwrite(cmd | 0x40); +00061 spi_readwrite(arg >> 24); +00062 spi_readwrite(arg >> 16); +00063 spi_readwrite(arg >> 8); +00064 spi_readwrite(arg); +00065 spi_readwrite(crc); +00066 if (cmd == CMD12) spi_readwrite(DFF); +00067 do r1 = spi_readwrite(0xFF);while(r1 & 0X80); +00068 return r1;} +00069 //---------------------------------------------------------------------------------------------------- +00074 u8 bsp_SD::SD_init(void){ +00075 u8 r1; +00076 u8 buff[6] = {0}; +00077 u16 retry; +00078 u8 i; +00079 // MX_SPI3_Init(); +00080 SPI_setspeed(SPI_BAUDRATEPRESCALER_256); +00081 SD_CS(0); +00082 for (retry = 0; retry < 10; retry++) spi_readwrite(DFF); +00083 // SD卡进入IDLE状态 +00084 do r1 = SD_sendcmd(CMD0, 0, 0x95);while(r1 != 0x01); +00085 // 查看SD卡的类型 +00086 SD_TYPE = 0; +00087 r1 = SD_sendcmd(CMD8, 0x1AA, 0x87); +00088 if (r1 == 0x01) { +00089 for (i = 0; i < 4; i++) buff[i] = spi_readwrite(DFF); //Get trailing return value of R7 resp +00090 if (buff[2] == 0X01 && buff[3] == 0XAA) { //卡是否支持2.7~3.6V +00091 retry = 0XFFFE; +00092 do { +00093 SD_sendcmd(CMD55, 0, 0X01); //发送CMD55 +00094 r1 = SD_sendcmd(CMD41, 0x40000000, 0X01); //发送CMD41 +00095 }while(r1 && retry--); +00096 if (retry && SD_sendcmd(CMD58, 0, 0X01) == 0) { //鉴别SD2.0卡版本开始 +00097 for (i = 0; i < 4; i++) buff[i] = spi_readwrite(0XFF); //得到OCR值 +00098 if (buff[0] &0x40) SD_TYPE = V2HC; +00099 else SD_TYPE = V2;}} +00100 else { +00101 SD_sendcmd(CMD55, 0, 0X01); //发送CMD55 +00102 r1 = SD_sendcmd(CMD41, 0, 0X01); //发送CMD41 +00103 if (r1 <= 1) { +00104 SD_TYPE = V1; +00105 retry = 0XFFFE; +00106 do { //等待退出IDLE模式 +00107 SD_sendcmd(CMD55, 0, 0X01); //发送CMD55 +00108 r1 = SD_sendcmd(CMD41, 0, 0X01); //发送CMD41 +00109 }while(r1 && retry--);} +00110 else { //MMC卡不支持CMD55+CMD41识别 +00111 SD_TYPE = MMC; //MMC V3 +00112 retry = 0XFFFE; +00113 do r1 = SD_sendcmd(CMD1, 0, 0X01);while(r1 && retry--);} //等待退出IDLE模式 +00114 if (retry == 0 || SD_sendcmd(CMD16, 512, 0X01) != 0) SD_TYPE = ERR;} //错误的卡 +00115 } +00116 SD_CS(0); +00117 SPI_setspeed(SPI_BAUDRATEPRESCALER_2); +00118 if (SD_TYPE) return 0; +00119 else return 1;} +00120 //---------------------------------------------------------------------------------------------------- +00127 u8 bsp_SD::SD_ReceiveData(u8 * data, u16 len){ +00128 u8 r1; +00129 SD_CS(1); +00130 do { +00131 r1 = spi_readwrite(0xFF); +00132 __nop(); +00133 }while(r1 != 0xFE); +00134 while (len--) { +00135 *data = spi_readwrite(0xFF); +00136 data++;} +00137 spi_readwrite(0xFF); +00138 spi_readwrite(0xFF); +00139 return 0;} +00140 //---------------------------------------------------------------------------------------------------- +00147 u8 bsp_SD::SD_SendBlock(u8 * buf, u8 cmd){ +00148 u16 t; +00149 u8 r1; +00150 do r1 = spi_readwrite(0xFF);while(r1 != 0xFF); +00151 spi_readwrite(cmd); +00152 if (cmd != 0XFD) { //不是结束指令 +00153 for (t = 0; t < 512; t++) spi_readwrite(buf[t]); //提高速度,减少函数传参时间 +00154 spi_readwrite(0xFF); //忽略crc +00155 spi_readwrite(0xFF); +00156 t = spi_readwrite(0xFF); //接收响应 +00157 if ((t & 0x1F) != 0x05) return 2;} //响应错误 +00158 return 0;} //写入成功 +00159 //---------------------------------------------------------------------------------------------------- +00164 u8 bsp_SD::SD_GETCID(u8 * cid_data){ +00165 u8 r1; +00166 r1 = SD_sendcmd(CMD10, 0, 0x01); //读取CID寄存器 +00167 if (r1 == 0x00) r1 = SD_ReceiveData(cid_data, 16); +00168 SD_CS(0); +00169 if (r1) return 1; +00170 else return 0;} +00171 //---------------------------------------------------------------------------------------------------- +00176 u8 bsp_SD::SD_GETCSD(u8 * csd_data){ +00177 u8 r1; +00178 r1 = SD_sendcmd(CMD9, 0, 0x01); //发CMD9命令,读CSD寄存器 +00179 if (r1 == 0) r1 = SD_ReceiveData(csd_data, 16); //接收16个字节的数据 +00180 SD_CS(0); //取消片选 +00181 if (r1) return 1; +00182 else return 0;} +00183 //---------------------------------------------------------------------------------------------------- +00188 u32 bsp_SD::SD_GetSectorCount(void){ +00189 u8 csd[16]; +00190 u32 Capacity; +00191 u8 n; +00192 u16 csize; +00193 //取CSD信息,如果期间出错,返回0 +00194 if (SD_GETCSD(csd) != 0) return 0; +00195 //如果为SDHC卡,按照下面方式计算 +00196 if ((csd[0] &0xC0) == 0x40) { //V2.00的卡 +00197 csize = csd[9] + ((u16) csd[8] << 8) + 1; +00198 Capacity = (u32) +00199 csize << 10;} //得到扇区数 +00200 else { //V1.XX的卡 +00201 n = (csd[5] &15) + ((csd[10] &128) >> 7) + ((csd[9] &3) << 1) + 2; +00202 csize = (csd[8] >> 6) + ((u16) csd[7] << 2) + ((u16) (csd[6] &3) << 10) + 1; +00203 Capacity = (u32) +00204 csize << (n - 9);} //得到扇区数 +00205 return Capacity;} +00206 //---------------------------------------------------------------------------------------------------- +00207 int bsp_SD::MSD0_GetCardInfo(PMSD_CARDINFO SD0_CardInfo){ +00208 u8 r1; +00209 u8 CSD_Tab[16]; +00210 u8 CID_Tab[16]; +00211 /* Send CMD9, Read CSD */ +00212 r1 = SD_sendcmd(CMD9, 0, 0xFF); +00213 if (r1 != 0x00) return r1; +00214 if (SD_ReceiveData(CSD_Tab, 16)) return 1; +00215 /* Send CMD10, Read CID */ +00216 r1 = SD_sendcmd(CMD10, 0, 0xFF); +00217 if (r1 != 0x00) return r1; +00218 if (SD_ReceiveData(CID_Tab, 16)) return 2; +00219 /* Byte 0 */ +00220 SD0_CardInfo->CSD.CSDStruct = (CSD_Tab[0] &0xC0) >> 6; +00221 SD0_CardInfo->CSD.SysSpecVersion = (CSD_Tab[0] &0x3C) >> 2; +00222 SD0_CardInfo->CSD.Reserved1 = CSD_Tab[0] &0x03; +00223 /* Byte 1 */ +00224 SD0_CardInfo->CSD.TAAC = CSD_Tab[1]; +00225 /* Byte 2 */ +00226 SD0_CardInfo->CSD.NSAC = CSD_Tab[2]; +00227 /* Byte 3 */ +00228 SD0_CardInfo->CSD.MaxBusClkFrec = CSD_Tab[3]; +00229 /* Byte 4 */ +00230 SD0_CardInfo->CSD.CardComdClasses = CSD_Tab[4] << 4; +00231 /* Byte 5 */ +00232 SD0_CardInfo->CSD.CardComdClasses |= (CSD_Tab[5] &0xF0) >> 4; +00233 SD0_CardInfo->CSD.RdBlockLen = CSD_Tab[5] &0x0F; +00234 /* Byte 6 */ +00235 SD0_CardInfo->CSD.PartBlockRead = (CSD_Tab[6] &0x80) >> 7; +00236 SD0_CardInfo->CSD.WrBlockMisalign = (CSD_Tab[6] &0x40) >> 6; +00237 SD0_CardInfo->CSD.RdBlockMisalign = (CSD_Tab[6] &0x20) >> 5; +00238 SD0_CardInfo->CSD.DSRImpl = (CSD_Tab[6] &0x10) >> 4; +00239 SD0_CardInfo->CSD.Reserved2 = 0; /* Reserved */ +00240 SD0_CardInfo->CSD.DeviceSize = (CSD_Tab[6] &0x03) << 10; +00241 /* Byte 7 */ +00242 SD0_CardInfo->CSD.DeviceSize |= (CSD_Tab[7]) << 2; +00243 /* Byte 8 */ +00244 SD0_CardInfo->CSD.DeviceSize |= (CSD_Tab[8] &0xC0) >> 6; +00245 SD0_CardInfo->CSD.MaxRdCurrentVDDMin = (CSD_Tab[8] &0x38) >> 3; +00246 SD0_CardInfo->CSD.MaxRdCurrentVDDMax = (CSD_Tab[8] &0x07); +00247 /* Byte 9 */ +00248 SD0_CardInfo->CSD.MaxWrCurrentVDDMin = (CSD_Tab[9] &0xE0) >> 5; +00249 SD0_CardInfo->CSD.MaxWrCurrentVDDMax = (CSD_Tab[9] &0x1C) >> 2; +00250 SD0_CardInfo->CSD.DeviceSizeMul = (CSD_Tab[9] &0x03) << 1; +00251 /* Byte 10 */ +00252 SD0_CardInfo->CSD.DeviceSizeMul |= (CSD_Tab[10] &0x80) >> 7; +00253 SD0_CardInfo->CSD.EraseGrSize = (CSD_Tab[10] &0x7C) >> 2; +00254 SD0_CardInfo->CSD.EraseGrMul = (CSD_Tab[10] &0x03) << 3; +00255 /* Byte 11 */ +00256 SD0_CardInfo->CSD.EraseGrMul |= (CSD_Tab[11] &0xE0) >> 5; +00257 SD0_CardInfo->CSD.WrProtectGrSize = (CSD_Tab[11] &0x1F); +00258 /* Byte 12 */ +00259 SD0_CardInfo->CSD.WrProtectGrEnable = (CSD_Tab[12] &0x80) >> 7; +00260 SD0_CardInfo->CSD.ManDeflECC = (CSD_Tab[12] &0x60) >> 5; +00261 SD0_CardInfo->CSD.WrSpeedFact = (CSD_Tab[12] &0x1C) >> 2; +00262 SD0_CardInfo->CSD.MaxWrBlockLen = (CSD_Tab[12] &0x03) << 2; +00263 /* Byte 13 */ +00264 SD0_CardInfo->CSD.MaxWrBlockLen |= (CSD_Tab[13] &0xc0) >> 6; +00265 SD0_CardInfo->CSD.WriteBlockPaPartial = (CSD_Tab[13] &0x20) >> 5; +00266 SD0_CardInfo->CSD.Reserved3 = 0; +00267 SD0_CardInfo->CSD.ContentProtectAppli = (CSD_Tab[13] &0x01); +00268 /* Byte 14 */ +00269 SD0_CardInfo->CSD.FileFormatGrouop = (CSD_Tab[14] &0x80) >> 7; +00270 SD0_CardInfo->CSD.CopyFlag = (CSD_Tab[14] &0x40) >> 6; +00271 SD0_CardInfo->CSD.PermWrProtect = (CSD_Tab[14] &0x20) >> 5; +00272 SD0_CardInfo->CSD.TempWrProtect = (CSD_Tab[14] &0x10) >> 4; +00273 SD0_CardInfo->CSD.FileFormat = (CSD_Tab[14] &0x0C) >> 2; +00274 SD0_CardInfo->CSD.ECC = (CSD_Tab[14] &0x03); +00275 /* Byte 15 */ +00276 SD0_CardInfo->CSD.CSD_CRC = (CSD_Tab[15] &0xFE) >> 1; +00277 SD0_CardInfo->CSD.Reserved4 = 1; +00278 if (SD0_CardInfo->CardType == V2HC) { +00279 /* Byte 7 */ +00280 SD0_CardInfo->CSD.DeviceSize = (u16) (CSD_Tab[8]) * 256; +00281 /* Byte 8 */ +00282 SD0_CardInfo->CSD.DeviceSize += CSD_Tab[9];} +00283 SD0_CardInfo->Capacity = SD0_CardInfo->CSD.DeviceSize * MSD_BLOCKSIZE * 1024; +00284 SD0_CardInfo->BlockSize = MSD_BLOCKSIZE; +00285 /* Byte 0 */ +00286 SD0_CardInfo->CID.ManufacturerID = CID_Tab[0]; +00287 /* Byte 1 */ +00288 SD0_CardInfo->CID.OEM_AppliID = CID_Tab[1] << 8; +00289 /* Byte 2 */ +00290 SD0_CardInfo->CID.OEM_AppliID |= CID_Tab[2]; +00291 /* Byte 3 */ +00292 SD0_CardInfo->CID.ProdName1 = CID_Tab[3] << 24; +00293 /* Byte 4 */ +00294 SD0_CardInfo->CID.ProdName1 |= CID_Tab[4] << 16; +00295 /* Byte 5 */ +00296 SD0_CardInfo->CID.ProdName1 |= CID_Tab[5] << 8; +00297 /* Byte 6 */ +00298 SD0_CardInfo->CID.ProdName1 |= CID_Tab[6]; +00299 /* Byte 7 */ +00300 SD0_CardInfo->CID.ProdName2 = CID_Tab[7]; +00301 /* Byte 8 */ +00302 SD0_CardInfo->CID.ProdRev = CID_Tab[8]; +00303 /* Byte 9 */ +00304 SD0_CardInfo->CID.ProdSN = CID_Tab[9] << 24; +00305 /* Byte 10 */ +00306 SD0_CardInfo->CID.ProdSN |= CID_Tab[10] << 16; +00307 /* Byte 11 */ +00308 SD0_CardInfo->CID.ProdSN |= CID_Tab[11] << 8; +00309 /* Byte 12 */ +00310 SD0_CardInfo->CID.ProdSN |= CID_Tab[12]; +00311 /* Byte 13 */ +00312 SD0_CardInfo->CID.Reserved1 |= (CID_Tab[13] &0xF0) >> 4; +00313 /* Byte 14 */ +00314 SD0_CardInfo->CID.ManufactDate = (CID_Tab[13] &0x0F) << 8; +00315 /* Byte 15 */ +00316 SD0_CardInfo->CID.ManufactDate |= CID_Tab[14]; +00317 /* Byte 16 */ +00318 SD0_CardInfo->CID.CID_CRC = (CID_Tab[15] &0xFE) >> 1; +00319 SD0_CardInfo->CID.Reserved2 = 1; +00320 return 0;} +00321 //---------------------------------------------------------------------------------------------------- +00329 u8 bsp_SD::SD_WriteDisk(u8 * buf, u32 sector, u8 cnt){ +00330 u8 r1; +00331 if (SD_TYPE != V2HC) sector *= 512; //转换为字节地址 +00332 if (cnt == 1){ +00333 r1 = SD_sendcmd(CMD24, sector, 0X01); //读命令 +00334 if (r1 == 0) //指令发送成功 +00335 r1 = SD_SendBlock(buf, 0xFE);} //写512个字节 +00336 else { +00337 if (SD_TYPE != MMC) { +00338 SD_sendcmd(CMD55, 0, 0X01); +00339 SD_sendcmd(CMD23, cnt, 0X01);} //发送指令 +00340 r1 = SD_sendcmd(CMD25, sector, 0X01); //连续读命令 +00341 if (r1 == 0) { +00342 do { +00343 r1 = SD_SendBlock(buf, 0xFC); //接收512个字节 +00344 buf += 512;}while(--cnt && r1 == 0); +00345 r1 = SD_SendBlock(0, 0xFD);}} //接收512个字节 +00346 SD_CS(0); //取消片选 +00347 return r1;} +00348 //---------------------------------------------------------------------------------------------------- +00356 u8 bsp_SD::SD_ReadDisk(u8 * buf, u32 sector, u8 cnt){ +00357 u8 r1; +00358 if (SD_TYPE != V2HC) sector <<= 9; //转换为字节地址 +00359 if (cnt == 1) { +00360 r1 = SD_sendcmd(CMD17, sector, 0X01); //读命令 +00361 if (r1 == 0) //指令发送成功 +00362 r1 = SD_ReceiveData(buf, 512);} //接收512个字节 +00363 else { +00364 r1 = SD_sendcmd(CMD18, sector, 0X01); //连续读命令 +00365 do { +00366 r1 = SD_ReceiveData(buf, 512); //接收512个字节 +00367 buf += 512;} +00368 while(--cnt && r1 == 0); +00369 SD_sendcmd(CMD12, 0, 0X01);} //发送停止命令 +00370 SD_CS(0); //取消片选 +00371 return r1;} +00372 //---------------------------------------------------------------------------------------------------- +00373 u8 bsp_SD::spi_readwrite(u8 Txdata){ +00374 u8 Rxdata; +00375 HAL_SPI_TransmitReceive(hspi, &Txdata, &Rxdata, 1, 0xFF); +00376 return Rxdata;} +00377 //---------------------------------------------------------------------------------------------------- +00383 void bsp_SD::SPI_setspeed(u8 speed){ +00384 hspi->Init.BaudRatePrescaler = speed;} +00385 //---------------------------------------------------------------------------------------------------- +00393 u8 bsp_SD::offsetWrite(u64 offset,u8* dat,u64 datlen) { +00394 u8 sectorBuff[512] = { 0 }; +00395 u64 sectorBuffptr = 0; +00396 +00397 u64 sectorSour = offset / 512; // 起始扇 +00398 u64 sectorSourlen = offset % 512; // 起始扇内位 +00399 +00400 // 填入数据 +00401 SD_ReadDisk(sectorBuff,sectorSour,1); +00402 sectorBuffptr = sectorSourlen; +00403 for (u64 i = 0; i < datlen; i++) { +00404 // 写入数据 +00405 sectorBuff[sectorBuffptr] = dat[i]; +00406 sectorBuffptr++; +00407 // 扇区回写 +00408 if (sectorBuffptr == 512 || i == datlen - 1) { +00409 SD_WriteDisk(sectorBuff,sectorSour,1); +00410 sectorBuffptr = 0; +00411 sectorSour++; +00412 if (i != datlen - 1)SD_ReadDisk(sectorBuff,sectorSour,1);}} +00413 return 0; +00414 } +00415 //---------------------------------------------------------------------------------------------------- +00423 u8 bsp_SD::offsetRead(u64 offset,u8* dat,u64 datlen) { +00424 u8 sectorBuff[512] = { 0 }; +00425 u64 sectorBuffptr = 0; +00426 +00427 u64 sectorSour = offset / 512; // 起始扇 +00428 u64 sectorSourlen = offset % 512; // 起始扇内位 +00429 +00430 // 填入数据 +00431 SD_ReadDisk(sectorBuff,sectorSour,1); +00432 sectorBuffptr = sectorSourlen; +00433 for (u64 i = 0; i < datlen; i++) { +00434 // 写入数据 +00435 dat[i]=sectorBuff[sectorBuffptr]; +00436 sectorBuffptr++; +00437 // 扇区回写 +00438 if (sectorBuffptr == 512 || i == datlen - 1) { +00439 sectorBuffptr = 0; +00440 sectorSour++; +00441 if (i != datlen - 1)SD_ReadDisk(sectorBuff,sectorSour,1);}} +00442 return 0;} +00444 //---------------------------------------------------------------------------------------------------- +00445 // 构造函数 +00446 // +00447 bsp_SD::bsp_SD( +00448 SPI_HandleTypeDef *hspi, +00449 GPIO_TypeDef *GPIOx_CS, +00450 uint16_t GPIO_Pin_CS){ +00451 bsp_SD::hspi=hspi; +00452 bsp_SD::GPIOx_CS=GPIOx_CS; +00453 bsp_SD::GPIO_Pin_CS=GPIO_Pin_CS; +00454 bsp_SD::DFF=0xFF; +00455 bsp_SD::SD_TYPE=0x00;} +
diff --git a/Doc/docbook/bsp___s_d_8h.xml b/Doc/docbook/bsp___s_d_8h.xml new file mode 100644 index 0000000..693c6d6 --- /dev/null +++ b/Doc/docbook/bsp___s_d_8h.xml @@ -0,0 +1,432 @@ + +
+D:/gitt/MicrochipFor32/bsp_Device/bsp_SD.h 文件参考 +D:/gitt/MicrochipFor32/bsp_Device/bsp_SD.h +#include "spi.h"#include "varint.h"bsp_SD.h 的引用(Include)关系图: + + + + + + + + +此图展示该文件直接或间接的被哪些文件引用了: + + + + + + + + + + + + struct MSD_CSD + + struct MSD_CID + + struct MSD_CARDINFO + + class bsp_SD + +一个操作SD卡的类 + + + + + 宏定义 + + #define ERR   0x00 + + #define MMC   0x01 + + #define V1   0x02 + + #define V2   0x04 + + #define V2HC   0x06 + + #define DUMMY_BYTE   0xFF + + #define MSD_BLOCKSIZE   512 + + #define CMD0   0 + + #define CMD1   1 + + #define CMD8   8 + + #define CMD9   9 + + #define CMD10   10 + + #define CMD12   12 + + #define CMD16   16 + + #define CMD17   17 + + #define CMD18   18 + + #define CMD23   23 + + #define CMD24   24 + + #define CMD25   25 + + #define CMD41   41 + + #define CMD55   55 + + #define CMD58   58 + + #define CMD59   59 + + #define MSD_DATA_OK   0x05 + + #define MSD_DATA_CRC_ERROR   0x0B + + #define MSD_DATA_WRITE_ERROR   0x0D + + #define MSD_DATA_OTHER_ERROR   0xFF + + #define MSD_RESPONSE_NO_ERROR   0x00 + + #define MSD_IN_IDLE_STATE   0x01 + + #define MSD_ERASE_RESET   0x02 + + #define MSD_ILLEGAL_COMMAND   0x04 + + #define MSD_COM_CRC_ERROR   0x08 + + #define MSD_ERASE_SEQUENCE_ERROR   0x10 + + #define MSD_ADDRESS_ERROR   0x20 + + #define MSD_PARAMETER_ERROR   0x40 + + #define MSD_RESPONSE_FAILURE   0xFF + + + + + 类型定义 + + typedef struct MSD_CARDINFO * PMSD_CARDINFO + + + + + 枚举 + + enum _CD_HOLD { HOLD = 0 +, RELEASE = 1 + } + + + + + 变量 + + MSD_CARDINFO SD0_CardInfo + + + +
+宏定义说明 +
+ CMD0 +CMD0bsp_SD.h +bsp_SD.hCMD0 +#define CMD0   0 +在文件 bsp_SD.h 第 57 行定义. +
+
+ CMD1 +CMD1bsp_SD.h +bsp_SD.hCMD1 +#define CMD1   1 +在文件 bsp_SD.h 第 58 行定义. +
+
+ CMD10 +CMD10bsp_SD.h +bsp_SD.hCMD10 +#define CMD10   10 +在文件 bsp_SD.h 第 61 行定义. +
+
+ CMD12 +CMD12bsp_SD.h +bsp_SD.hCMD12 +#define CMD12   12 +在文件 bsp_SD.h 第 62 行定义. +
+
+ CMD16 +CMD16bsp_SD.h +bsp_SD.hCMD16 +#define CMD16   16 +在文件 bsp_SD.h 第 63 行定义. +
+
+ CMD17 +CMD17bsp_SD.h +bsp_SD.hCMD17 +#define CMD17   17 +在文件 bsp_SD.h 第 64 行定义. +
+
+ CMD18 +CMD18bsp_SD.h +bsp_SD.hCMD18 +#define CMD18   18 +在文件 bsp_SD.h 第 65 行定义. +
+
+ CMD23 +CMD23bsp_SD.h +bsp_SD.hCMD23 +#define CMD23   23 +在文件 bsp_SD.h 第 66 行定义. +
+
+ CMD24 +CMD24bsp_SD.h +bsp_SD.hCMD24 +#define CMD24   24 +在文件 bsp_SD.h 第 67 行定义. +
+
+ CMD25 +CMD25bsp_SD.h +bsp_SD.hCMD25 +#define CMD25   25 +在文件 bsp_SD.h 第 68 行定义. +
+
+ CMD41 +CMD41bsp_SD.h +bsp_SD.hCMD41 +#define CMD41   41 +在文件 bsp_SD.h 第 69 行定义. +
+
+ CMD55 +CMD55bsp_SD.h +bsp_SD.hCMD55 +#define CMD55   55 +在文件 bsp_SD.h 第 70 行定义. +
+
+ CMD58 +CMD58bsp_SD.h +bsp_SD.hCMD58 +#define CMD58   58 +在文件 bsp_SD.h 第 71 行定义. +
+
+ CMD59 +CMD59bsp_SD.h +bsp_SD.hCMD59 +#define CMD59   59 +在文件 bsp_SD.h 第 72 行定义. +
+
+ CMD8 +CMD8bsp_SD.h +bsp_SD.hCMD8 +#define CMD8   8 +在文件 bsp_SD.h 第 59 行定义. +
+
+ CMD9 +CMD9bsp_SD.h +bsp_SD.hCMD9 +#define CMD9   9 +在文件 bsp_SD.h 第 60 行定义. +
+
+ DUMMY_BYTE +DUMMY_BYTEbsp_SD.h +bsp_SD.hDUMMY_BYTE +#define DUMMY_BYTE   0xFF +在文件 bsp_SD.h 第 53 行定义. +
+
+ ERR +ERRbsp_SD.h +bsp_SD.hERR +#define ERR   0x00 +在文件 bsp_SD.h 第 48 行定义. +
+
+ MMC +MMCbsp_SD.h +bsp_SD.hMMC +#define MMC   0x01 +在文件 bsp_SD.h 第 49 行定义. +
+
+ MSD_ADDRESS_ERROR +MSD_ADDRESS_ERRORbsp_SD.h +bsp_SD.hMSD_ADDRESS_ERROR +#define MSD_ADDRESS_ERROR   0x20 +在文件 bsp_SD.h 第 86 行定义. +
+
+ MSD_BLOCKSIZE +MSD_BLOCKSIZEbsp_SD.h +bsp_SD.hMSD_BLOCKSIZE +#define MSD_BLOCKSIZE   512 +在文件 bsp_SD.h 第 54 行定义. +
+
+ MSD_COM_CRC_ERROR +MSD_COM_CRC_ERRORbsp_SD.h +bsp_SD.hMSD_COM_CRC_ERROR +#define MSD_COM_CRC_ERROR   0x08 +在文件 bsp_SD.h 第 84 行定义. +
+
+ MSD_DATA_CRC_ERROR +MSD_DATA_CRC_ERRORbsp_SD.h +bsp_SD.hMSD_DATA_CRC_ERROR +#define MSD_DATA_CRC_ERROR   0x0B +在文件 bsp_SD.h 第 76 行定义. +
+
+ MSD_DATA_OK +MSD_DATA_OKbsp_SD.h +bsp_SD.hMSD_DATA_OK +#define MSD_DATA_OK   0x05 +在文件 bsp_SD.h 第 75 行定义. +
+
+ MSD_DATA_OTHER_ERROR +MSD_DATA_OTHER_ERRORbsp_SD.h +bsp_SD.hMSD_DATA_OTHER_ERROR +#define MSD_DATA_OTHER_ERROR   0xFF +在文件 bsp_SD.h 第 78 行定义. +
+
+ MSD_DATA_WRITE_ERROR +MSD_DATA_WRITE_ERRORbsp_SD.h +bsp_SD.hMSD_DATA_WRITE_ERROR +#define MSD_DATA_WRITE_ERROR   0x0D +在文件 bsp_SD.h 第 77 行定义. +
+
+ MSD_ERASE_RESET +MSD_ERASE_RESETbsp_SD.h +bsp_SD.hMSD_ERASE_RESET +#define MSD_ERASE_RESET   0x02 +在文件 bsp_SD.h 第 82 行定义. +
+
+ MSD_ERASE_SEQUENCE_ERROR +MSD_ERASE_SEQUENCE_ERRORbsp_SD.h +bsp_SD.hMSD_ERASE_SEQUENCE_ERROR +#define MSD_ERASE_SEQUENCE_ERROR   0x10 +在文件 bsp_SD.h 第 85 行定义. +
+
+ MSD_ILLEGAL_COMMAND +MSD_ILLEGAL_COMMANDbsp_SD.h +bsp_SD.hMSD_ILLEGAL_COMMAND +#define MSD_ILLEGAL_COMMAND   0x04 +在文件 bsp_SD.h 第 83 行定义. +
+
+ MSD_IN_IDLE_STATE +MSD_IN_IDLE_STATEbsp_SD.h +bsp_SD.hMSD_IN_IDLE_STATE +#define MSD_IN_IDLE_STATE   0x01 +在文件 bsp_SD.h 第 81 行定义. +
+
+ MSD_PARAMETER_ERROR +MSD_PARAMETER_ERRORbsp_SD.h +bsp_SD.hMSD_PARAMETER_ERROR +#define MSD_PARAMETER_ERROR   0x40 +在文件 bsp_SD.h 第 87 行定义. +
+
+ MSD_RESPONSE_FAILURE +MSD_RESPONSE_FAILUREbsp_SD.h +bsp_SD.hMSD_RESPONSE_FAILURE +#define MSD_RESPONSE_FAILURE   0xFF +在文件 bsp_SD.h 第 88 行定义. +
+
+ MSD_RESPONSE_NO_ERROR +MSD_RESPONSE_NO_ERRORbsp_SD.h +bsp_SD.hMSD_RESPONSE_NO_ERROR +#define MSD_RESPONSE_NO_ERROR   0x00 +在文件 bsp_SD.h 第 80 行定义. +
+
+ V1 +V1bsp_SD.h +bsp_SD.hV1 +#define V1   0x02 +在文件 bsp_SD.h 第 50 行定义. +
+
+ V2 +V2bsp_SD.h +bsp_SD.hV2 +#define V2   0x04 +在文件 bsp_SD.h 第 51 行定义. +
+
+ V2HC +V2HCbsp_SD.h +bsp_SD.hV2HC +#define V2HC   0x06 +在文件 bsp_SD.h 第 52 行定义. +
+
+
+类型定义说明 +
+ PMSD_CARDINFO +PMSD_CARDINFObsp_SD.h +bsp_SD.hPMSD_CARDINFO +typedef struct MSD_CARDINFO * PMSD_CARDINFO
+
+
+枚举类型说明 +
+ _CD_HOLD +_CD_HOLDbsp_SD.h +bsp_SD.h_CD_HOLD +enum _CD_HOLD +枚举值 + + + + +HOLDbsp_SD.h +bsp_SD.hHOLD +HOLDRELEASEbsp_SD.h +bsp_SD.hRELEASE +RELEASE + + + +在文件 bsp_SD.h 第 90 行定义. +
+
+
+变量说明 +
+ SD0_CardInfo +SD0_CardInfobsp_SD.h +bsp_SD.hSD0_CardInfo +MSD_CARDINFO SD0_CardInfo[extern]
+
+
diff --git a/Doc/docbook/bsp___s_d_8h__dep__incl.md5 b/Doc/docbook/bsp___s_d_8h__dep__incl.md5 new file mode 100644 index 0000000..5a2d977 --- /dev/null +++ b/Doc/docbook/bsp___s_d_8h__dep__incl.md5 @@ -0,0 +1 @@ +a352825c2443e2cffaad52cb43e5ed6c \ No newline at end of file diff --git a/Doc/docbook/bsp___s_d_8h__dep__incl.png b/Doc/docbook/bsp___s_d_8h__dep__incl.png new file mode 100644 index 0000000000000000000000000000000000000000..32a058b11d57f363a7a05ea1357aec1ebcc8535e GIT binary patch literal 2265 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 literal 0 HcmV?d00001 diff --git a/Doc/docbook/bsp___s_d_8h_source.xml b/Doc/docbook/bsp___s_d_8h_source.xml new file mode 100644 index 0000000..4ac5e29 --- /dev/null +++ b/Doc/docbook/bsp___s_d_8h_source.xml @@ -0,0 +1,189 @@ + +
+bsp_SD.h +D:/gitt/MicrochipFor32/bsp_Device/bsp_SD.h +浏览该文件的文档.00001 /*---------------------------------------------------------------------------------------------------- +00002 # +00003 # Copyright (c) 2022 Yuankang Liang(XerolySkinner) +00004 # +00005 # 本软件按原样提供,无任何明示或暗示 +00006 # 在任何情况下,作者都不承担任何损害赔偿责任 +00007 # +00008 # 使用的许可声明: +00009 # 1. 不得歪曲本软件的来源,你不能声称你编写了原始软件. +00010 # 2. 免费授予以任何目的,前提是版权声明出现在所有副本中. +00011 # 并且版权声明和许可声明同时出现. +00012 # 3. 你有使用,复制,修改,分发,和销售本软件的许可. +00013 # 4. 如果你在产品中使用,产品文档中的声明是赞赏的但不是必须的. +00014 # 5. 本通知不得从任何来源删除或更改. +00015 # +00016 # Yuankang Liang(XerolySkinner) +00017 # E-mail:zabbcccbbaz@163.com +00018 # QQ:2715099320 +00019 # Mobile Phone:13005636215 +00020 # +00021 # All rights reserved. +00022 */ +00023 +00034 #pragma once +00035 #ifdef __cplusplus +00037 //---------------------------------------------------------------------------------------------------- +00038 // 头文件 +00039 // +00040 #include "spi.h" +00041 #include "varint.h" +00043 //---------------------------------------------------------------------------------------------------- +00044 // 数据 +00045 // +00046 //---------------------------------------------------------------------------------------------------- +00047 //SD卡类型 +00048 #define ERR 0x00 +00049 #define MMC 0x01 +00050 #define V1 0x02 +00051 #define V2 0x04 +00052 #define V2HC 0x06 +00053 #define DUMMY_BYTE 0xFF +00054 #define MSD_BLOCKSIZE 512 +00055 //---------------------------------------------------------------------------------------------------- +00056 //CMD定义 +00057 #define CMD0 0 //卡复位 +00058 #define CMD1 1 +00059 #define CMD8 8 //命令8 ,SEND_IF_COND +00060 #define CMD9 9 //命令9 ,读CSD数据 +00061 #define CMD10 10 //命令10,读CID数据 +00062 #define CMD12 12 //命令12,停止数据传输 +00063 #define CMD16 16 //命令16,设置SectorSize 应返回0x00 +00064 #define CMD17 17 //命令17,读sector +00065 #define CMD18 18 //命令18,读Multi sector +00066 #define CMD23 23 //命令23,设置多sector写入前预先擦除N个block +00067 #define CMD24 24 //命令24,写sector +00068 #define CMD25 25 //命令25,写Multi sector +00069 #define CMD41 41 //命令41,应返回0x00 +00070 #define CMD55 55 //命令55,应返回0x01 +00071 #define CMD58 58 //命令58,读OCR信息 +00072 #define CMD59 59 //命令59,使能/禁止CRC,应返回0x00 +00073 //---------------------------------------------------------------------------------------------------- +00074 //数据写入回应字意义 +00075 #define MSD_DATA_OK 0x05 +00076 #define MSD_DATA_CRC_ERROR 0x0B +00077 #define MSD_DATA_WRITE_ERROR 0x0D +00078 #define MSD_DATA_OTHER_ERROR 0xFF +00079 //SD卡回应标记字 +00080 #define MSD_RESPONSE_NO_ERROR 0x00 +00081 #define MSD_IN_IDLE_STATE 0x01 +00082 #define MSD_ERASE_RESET 0x02 +00083 #define MSD_ILLEGAL_COMMAND 0x04 +00084 #define MSD_COM_CRC_ERROR 0x08 +00085 #define MSD_ERASE_SEQUENCE_ERROR 0x10 +00086 #define MSD_ADDRESS_ERROR 0x20 +00087 #define MSD_PARAMETER_ERROR 0x40 +00088 #define MSD_RESPONSE_FAILURE 0xFF +00089 //---------------------------------------------------------------------------------------------------- +00090 enum _CD_HOLD { +00091 HOLD = 0, +00092 RELEASE = 1, +00093 }; +00094 //---------------------------------------------------------------------------------------------------- +00095 typedef struct { /* Card Specific Data */ +00096 u8 CSDStruct; /* CSD structure */ +00097 u8 SysSpecVersion; /* System specification version */ +00098 u8 Reserved1; /* Reserved */ +00099 u8 TAAC; /* Data read access-time 1 */ +00100 u8 NSAC; /* Data read access-time 2 in CLK cycles */ +00101 u8 MaxBusClkFrec; /* Max. bus clock frequency */ +00102 u16 CardComdClasses; /* Card command classes */ +00103 u8 RdBlockLen; /* Max. read data block length */ +00104 u8 PartBlockRead; /* Partial blocks for read allowed */ +00105 u8 WrBlockMisalign; /* Write block misalignment */ +00106 u8 RdBlockMisalign; /* Read block misalignment */ +00107 u8 DSRImpl; /* DSR implemented */ +00108 u8 Reserved2; /* Reserved */ +00109 u32 DeviceSize; /* Device Size */ +00110 u8 MaxRdCurrentVDDMin; /* Max. read current @ VDD min */ +00111 u8 MaxRdCurrentVDDMax; /* Max. read current @ VDD max */ +00112 u8 MaxWrCurrentVDDMin; /* Max. write current @ VDD min */ +00113 u8 MaxWrCurrentVDDMax; /* Max. write current @ VDD max */ +00114 u8 DeviceSizeMul; /* Device size multiplier */ +00115 u8 EraseGrSize; /* Erase group size */ +00116 u8 EraseGrMul; /* Erase group size multiplier */ +00117 u8 WrProtectGrSize; /* Write protect group size */ +00118 u8 WrProtectGrEnable; /* Write protect group enable */ +00119 u8 ManDeflECC; /* Manufacturer default ECC */ +00120 u8 WrSpeedFact; /* Write speed factor */ +00121 u8 MaxWrBlockLen; /* Max. write data block length */ +00122 u8 WriteBlockPaPartial; /* Partial blocks for write allowed */ +00123 u8 Reserved3; /* Reserded */ +00124 u8 ContentProtectAppli; /* Content protection application */ +00125 u8 FileFormatGrouop; /* File format group */ +00126 u8 CopyFlag; /* Copy flag (OTP) */ +00127 u8 PermWrProtect; /* Permanent write protection */ +00128 u8 TempWrProtect; /* Temporary write protection */ +00129 u8 FileFormat; /* File Format */ +00130 u8 ECC; /* ECC code */ +00131 u8 CSD_CRC; /* CSD CRC */ +00132 u8 Reserved4; /* always 1*/ +00133 } MSD_CSD; +00134 +00135 //---------------------------------------------------------------------------------------------------- +00136 typedef struct { /*Card Identification Data*/ +00137 u8 ManufacturerID; /* ManufacturerID */ +00138 u16 OEM_AppliID; /* OEM/Application ID */ +00139 u32 ProdName1; /* Product Name part1 */ +00140 u8 ProdName2; /* Product Name part2*/ +00141 u8 ProdRev; /* Product Revision */ +00142 u32 ProdSN; /* Product Serial Number */ +00143 u8 Reserved1; /* Reserved1 */ +00144 u16 ManufactDate; /* Manufacturing Date */ +00145 u8 CID_CRC; /* CID CRC */ +00146 u8 Reserved2; /* always 1 */ +00147 } MSD_CID; +00148 //---------------------------------------------------------------------------------------------------- +00149 typedef struct { +00150 MSD_CSD CSD; +00151 MSD_CID CID; +00152 u32 Capacity; /* Card Capacity */ +00153 u32 BlockSize; /* Card Block Size */ +00154 u16 RCA; +00155 u8 CardType; +00156 u32 SpaceTotal; /* Total space size in file system */ +00157 u32 SpaceFree; +00158 } /* Free space size in file system */ +00159 //---------------------------------------------------------------------------------------------------- +00160 MSD_CARDINFO, *PMSD_CARDINFO; +00161 extern MSD_CARDINFO SD0_CardInfo; +00163 //---------------------------------------------------------------------------------------------------- +00164 // 类目 +00165 // +00169 class bsp_SD{ +00170 public: +00171 bsp_SD(SPI_HandleTypeDef *hspi,GPIO_TypeDef *GPIOx_CS,uint16_t GPIO_Pin_CS); +00172 public: +00173 u8 SD_init(void); +00174 u8 SD_ReadDisk(u8 * buf, u32 sector, u8 cnt); +00175 u8 SD_WriteDisk(u8 * buf, u32 sector, u8 cnt); +00176 u32 SD_GetSectorCount(void); +00177 u8 offsetWrite(u64 offset,u8* dat,u64 datlen); +00178 u8 offsetRead(u64 offset,u8* dat,u64 datlen); +00179 private: +00180 SPI_HandleTypeDef *hspi; +00181 GPIO_TypeDef *GPIOx_CS; +00182 uint16_t GPIO_Pin_CS; +00183 +00184 u8 DFF; +00185 u8 SD_TYPE; +00186 MSD_CARDINFO SD0_CardInfo; +00187 +00188 void SD_CS(u8 p); +00189 u8 SD_GETCID(u8 * cid_data); +00190 u8 SD_GETCSD(u8 * csd_data); +00191 int MSD0_GetCardInfo(PMSD_CARDINFO SD0_CardInfo); +00192 u8 SD_ReceiveData(u8 * data, u16 len); +00193 u8 SD_SendBlock(u8 * buf, u8 cmd); +00194 u32 SD_sendcmd(u8 cmd, u32 arg, u8 crc); +00195 +00196 void SPI_setspeed(u8 speed); +00197 u8 spi_readwrite(u8 Txdata); +00198 }; +00200 #endif +00201 +
diff --git a/Doc/docbook/classbsp___s_d.xml b/Doc/docbook/classbsp___s_d.xml new file mode 100644 index 0000000..d709855 --- /dev/null +++ b/Doc/docbook/classbsp___s_d.xml @@ -0,0 +1,818 @@ + +
+bsp_SD类 参考 +bsp_SD + + +一个操作SD卡的类 + + + +#include <bsp_SD.h> + +bsp_SD 的协作图: + + + + + + + + + + Public 成员函数 + + bsp_SD (SPI_HandleTypeDef *hspi, GPIO_TypeDef *GPIOx_CS, uint16_t GPIO_Pin_CS) + + u8 SD_init (void) + +初始化SD卡 + + u8 SD_ReadDisk (u8 *buf, u32 sector, u8 cnt) + +读SD卡 + + u8 SD_WriteDisk (u8 *buf, u32 sector, u8 cnt) + +写SD卡 + + u32 SD_GetSectorCount (void) + +获取SD卡的总扇区数 + + u8 offsetWrite (u64 offset, u8 *dat, u64 datlen) + +写入连贯的数据 + + u8 offsetRead (u64 offset, u8 *dat, u64 datlen) + +读取连贯的数据 + + + + + Private 成员函数 + + void SD_CS (u8 p) + +片选信号 + + u8 SD_GETCID (u8 *cid_data) + +获取CID信息 + + u8 SD_GETCSD (u8 *csd_data) + +获取CSD信息 + + int MSD0_GetCardInfo (PMSD_CARDINFO SD0_CardInfo) + + u8 SD_ReceiveData (u8 *data, u16 len) + +读取SD卡指定长度信息 + + u8 SD_SendBlock (u8 *buf, u8 cmd) + +向SD卡写入一个扇区 + + u32 SD_sendcmd (u8 cmd, u32 arg, u8 crc) + +写SD卡 + + void SPI_setspeed (u8 speed) + +设置SPI的速率 + + u8 spi_readwrite (u8 Txdata) + + + + + Private 属性 + + SPI_HandleTypeDef * hspi + + GPIO_TypeDef * GPIOx_CS + + uint16_t GPIO_Pin_CS + + u8 DFF + + u8 SD_TYPE + + MSD_CARDINFO SD0_CardInfo + + + +
+详细描述 + +一个操作SD卡的类 + +在文件 bsp_SD.h 第 169 行定义. +
+
+构造及析构函数说明 +
+ bsp_SD() +bsp_SDbsp_SD +bsp_SDbsp_SD +bsp_SD::bsp_SD (SPI_HandleTypeDef * hspi, GPIO_TypeDef * GPIOx_CS, uint16_t GPIO_Pin_CS) +在文件 bsp_SD.cpp 第 447 行定义. +
+
+
+成员函数说明 +
+ MSD0_GetCardInfo() +MSD0_GetCardInfobsp_SD +bsp_SDMSD0_GetCardInfo +int bsp_SD::MSD0_GetCardInfo (PMSD_CARDINFO SD0_CardInfo)[private] +在文件 bsp_SD.cpp 第 207 行定义. +函数调用图: + + + + + + + + +
+
+ offsetRead() +offsetReadbsp_SD +bsp_SDoffsetRead +u8 bsp_SD::offsetRead (u64 offset, u8 * dat, u64 datlen) + +读取连贯的数据 + + + + + +参数 + + + + + + + +offset +读取位置 + + + +*dat +数据缓冲区 + + + +datlen +读取长度 + + + + +
+
+
+ 返回 + +返回值:0,ok;其他,失败. + +
+ +在文件 bsp_SD.cpp 第 423 行定义. +函数调用图: + + + + + + + + +
+
+ offsetWrite() +offsetWritebsp_SD +bsp_SDoffsetWrite +u8 bsp_SD::offsetWrite (u64 offset, u8 * dat, u64 datlen) + +写入连贯的数据 + + + + + +参数 + + + + + + + +offset +写入位置 + + + +*dat +数据缓冲区 + + + +datlen +写入长度 + + + + +
+
+
+ 返回 + +返回值:0,ok;其他,失败. + +
+ +在文件 bsp_SD.cpp 第 393 行定义. +函数调用图: + + + + + + + + +
+
+ SD_CS() +SD_CSbsp_SD +bsp_SDSD_CS +void bsp_SD::SD_CS (u8 p)[private] + +片选信号 + + +返回 + + + + + +在文件 bsp_SD.cpp 第 43 行定义. +这是这个函数的调用关系图: + + + + + + + + +
+
+ SD_GETCID() +SD_GETCIDbsp_SD +bsp_SDSD_GETCID +u8 bsp_SD::SD_GETCID (u8 * cid_data)[private] + +获取CID信息 + + +返回 + +CID信息 + + + +在文件 bsp_SD.cpp 第 164 行定义. +函数调用图: + + + + + + + + +
+
+ SD_GETCSD() +SD_GETCSDbsp_SD +bsp_SDSD_GETCSD +u8 bsp_SD::SD_GETCSD (u8 * csd_data)[private] + +获取CSD信息 + + +返回 + +CSD信息 + + + +在文件 bsp_SD.cpp 第 176 行定义. +函数调用图: + + + + + + + + +这是这个函数的调用关系图: + + + + + + + + +
+
+ SD_GetSectorCount() +SD_GetSectorCountbsp_SD +bsp_SDSD_GetSectorCount +u32 bsp_SD::SD_GetSectorCount (void ) + +获取SD卡的总扇区数 + + +返回 + +总扇区数 + + + +在文件 bsp_SD.cpp 第 188 行定义. +函数调用图: + + + + + + + + +
+
+ SD_init() +SD_initbsp_SD +bsp_SDSD_init +u8 bsp_SD::SD_init (void ) + +初始化SD卡 + + +返回 + +返回值:0,ok;其他,失败. + + + +在文件 bsp_SD.cpp 第 74 行定义. +函数调用图: + + + + + + + + +
+
+ SD_ReadDisk() +SD_ReadDiskbsp_SD +bsp_SDSD_ReadDisk +u8 bsp_SD::SD_ReadDisk (u8 * buf, u32 sector, u8 cnt) + +读SD卡 + + + + + +参数 + + + + + + + +*buf +数据缓存区 + + + +sector +起始扇区 + + + +cnt +扇区数 + + + + +
+
+
+ 返回 + +返回值:0,ok;其他,失败. + +
+ +在文件 bsp_SD.cpp 第 356 行定义. +函数调用图: + + + + + + + + +这是这个函数的调用关系图: + + + + + + + + +
+
+ SD_ReceiveData() +SD_ReceiveDatabsp_SD +bsp_SDSD_ReceiveData +u8 bsp_SD::SD_ReceiveData (u8 * data, u16 len)[private] + +读取SD卡指定长度信息 + + + + + +参数 + + + + + + + +*data +数据缓存区 + + + +len +长度 + + + + +
+
+
+ 返回 + +返回值:0,ok;其他,失败. + +
+ +在文件 bsp_SD.cpp 第 127 行定义. +函数调用图: + + + + + + + + +这是这个函数的调用关系图: + + + + + + + + +
+
+ SD_SendBlock() +SD_SendBlockbsp_SD +bsp_SDSD_SendBlock +u8 bsp_SD::SD_SendBlock (u8 * buf, u8 cmd)[private] + +向SD卡写入一个扇区 + + + + + +参数 + + + + + + + +*buf +数据缓存区 + + + +cmd +操作指令 + + + + +
+
+
+ 返回 + +返回值:0,ok;其他,失败. + +
+ +在文件 bsp_SD.cpp 第 147 行定义. +函数调用图: + + + + + + + + +这是这个函数的调用关系图: + + + + + + + + +
+
+ SD_sendcmd() +SD_sendcmdbsp_SD +bsp_SDSD_sendcmd +u32 bsp_SD::SD_sendcmd (u8 cmd, u32 arg, u8 crc)[private] + +写SD卡 + + + + + +参数 + + + + + + + +cmd +命令 + + + +arg + + + + +crc +校验码 + + + + +
+
+
+ 返回 + + + +
+ +在文件 bsp_SD.cpp 第 53 行定义. +函数调用图: + + + + + + + + +这是这个函数的调用关系图: + + + + + + + + +
+
+ SD_WriteDisk() +SD_WriteDiskbsp_SD +bsp_SDSD_WriteDisk +u8 bsp_SD::SD_WriteDisk (u8 * buf, u32 sector, u8 cnt) + +写SD卡 + + + + + +参数 + + + + + + + +*buf +数据缓存区 + + + +sector +起始扇区 + + + +cnt +扇区数 + + + + +
+
+
+ 返回 + +返回值:0,ok;其他,失败. + +
+ +在文件 bsp_SD.cpp 第 329 行定义. +函数调用图: + + + + + + + + +这是这个函数的调用关系图: + + + + + + + + +
+
+ spi_readwrite() +spi_readwritebsp_SD +bsp_SDspi_readwrite +u8 bsp_SD::spi_readwrite (u8 Txdata)[private] +在文件 bsp_SD.cpp 第 373 行定义. +这是这个函数的调用关系图: + + + + + + + + +
+
+ SPI_setspeed() +SPI_setspeedbsp_SD +bsp_SDSPI_setspeed +void bsp_SD::SPI_setspeed (u8 speed)[private] + +设置SPI的速率 + + + + + +参数 + + + + + + + +speed +速率 + + + + +
+
+
+ 返回 + + + +
+ +在文件 bsp_SD.cpp 第 383 行定义. +这是这个函数的调用关系图: + + + + + + + + +
+
+
+类成员变量说明 +
+ DFF +DFFbsp_SD +bsp_SDDFF +u8 bsp_SD::DFF[private] +在文件 bsp_SD.h 第 184 行定义. +
+
+ GPIO_Pin_CS +GPIO_Pin_CSbsp_SD +bsp_SDGPIO_Pin_CS +uint16_t bsp_SD::GPIO_Pin_CS[private] +在文件 bsp_SD.h 第 182 行定义. +
+
+ GPIOx_CS +GPIOx_CSbsp_SD +bsp_SDGPIOx_CS +GPIO_TypeDef* bsp_SD::GPIOx_CS[private] +在文件 bsp_SD.h 第 181 行定义. +
+
+ hspi +hspibsp_SD +bsp_SDhspi +SPI_HandleTypeDef* bsp_SD::hspi[private] +在文件 bsp_SD.h 第 180 行定义. +
+
+ SD0_CardInfo +SD0_CardInfobsp_SD +bsp_SDSD0_CardInfo +MSD_CARDINFO bsp_SD::SD0_CardInfo[private] +在文件 bsp_SD.h 第 186 行定义. +
+
+ SD_TYPE +SD_TYPEbsp_SD +bsp_SDSD_TYPE +u8 bsp_SD::SD_TYPE[private] +在文件 bsp_SD.h 第 185 行定义. +
+ +该类的文档由以下文件生成: +D:/gitt/MicrochipFor32/bsp_Device/bsp_SD.hD:/gitt/MicrochipFor32/bsp_Device/bsp_SD.cpp
+
diff --git a/Doc/docbook/classbsp___s_d__coll__graph.md5 b/Doc/docbook/classbsp___s_d__coll__graph.md5 new file mode 100644 index 0000000..45e33c6 --- /dev/null +++ b/Doc/docbook/classbsp___s_d__coll__graph.md5 @@ -0,0 +1 @@ +dca1996e1d0c8023d21a07a31e6ffd87 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d__coll__graph.png b/Doc/docbook/classbsp___s_d__coll__graph.png new file mode 100644 index 0000000000000000000000000000000000000000..257e8676442d93f999e75e3c37e6ce5a84ff105f GIT binary patch literal 4003 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 AmH+?% literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.md5 b/Doc/docbook/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.md5 new file mode 100644 index 0000000..e1da3ca --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.md5 @@ -0,0 +1 @@ +991a157e58b6fe6ea7ad45837f95c4f2 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.png b/Doc/docbook/classbsp___s_d_a164f0bb03133464f2da485f362a52718_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..0f921db8c5cedbd287f218bd314e9fd1f2af5af4 GIT binary patch literal 20180 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 literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 b/Doc/docbook/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 new file mode 100644 index 0000000..fc13efd --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.md5 @@ -0,0 +1 @@ +aad9c2f4c28a90baf6286512906bf62d \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.png b/Doc/docbook/classbsp___s_d_a1c78e6f5a72f3bdec600a52331dd4d20_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..05e461b6586ab25b528d9ac81f811ddcfd67e79c GIT binary patch literal 8494 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 literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 b/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 new file mode 100644 index 0000000..61cf31b --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.md5 @@ -0,0 +1 @@ +74267cb9b43a0beda421263ba8ea725a \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.png b/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..d10988c0ad9f9ec38352bc25feae4e0c089277a1 GIT binary patch literal 3038 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 b^WPWc)_mY|%-K7e1MC2}IRaK~>Ynf~;&j-4 literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 b/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 new file mode 100644 index 0000000..0e7922b --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.md5 @@ -0,0 +1 @@ +21a6fa5f516bfb627b812526b0e627d4 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.png b/Doc/docbook/classbsp___s_d_a242ec4ccd88203b6691cf4ae1e77fdfe_icgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..4097a3902ff5216c5760e6f296b1a80af789f762 GIT binary patch literal 10988 zcma)ibySqy*ES7GNlAksAt>D~5>kScC>@eRr!8x-6!|nXYXrY`$WIid`Wzt?mh+v2C=G&q7DWIRxG<`GUreAP!gz~ zJ)fY$=ZgPJd$xEhDAJFzwaw~04ZX;^!U0mWDiNMvv^YtoT1WUYkt2ku8$d3YAl17dWdQr84 z*IcYXV;@muB$H_Cb3KiLq&d7NhNd8=mFtjsyzxH@M!P6=J-7x2YT-}jk>Cn5mSBZ; zl-`Alred!GFpFg(S4iGmHgBa8)id38BTA8cqn9}rB{Ku@%W@A8n`Gdr!bKOdB8lCs zItag}_E-{^V{-M4=T>Rw#A`)|@4$XCe)kRIeObI5LG4=mo93u7a>IqCGhHg)Q;H-j zG|Y94P6Vv@lXYAOmI-B_N{-Ac)uFi7V@7$2gFknx3KB1`(aG|xH8qU>W8mnjK0#mxqt5QPACo3;?Cds?^QQaVsCTknKi_FwMksQ0G zus?yQF#2B|bp2~pMcA@iqz6ZHm=)4-%@@MnXSMa}% zu;|@(9gaO0U7dCDA?y@z-L{?!K&b{@mT;br#Rri!oo^0_|MfVHTyiv1eAK|_LPZ8{ znD{kEk;vgzC3Qr!CJ_+QHjuy>!b4(22Vdi4^eB~^Q&Y+t1_Ys)XD8-#01-Ypl8^MY zd4^?!B@E1^3to%Iz|N-P*ar3`*g@zxO{>y$&u?rEDASoNk@Un1iOVu z#-p9M`YlTEIv2XvyMRqhW`E%}s@-Q84>72*v2CPRSY(`~E4{(j(rbcBY^?W_Sy^?+ zveyqh;@blV(*_n^pZmg`WAQ_R)fj9+U4l~N9%-yPY=G5}MJs_It&cyIxTaVblQ4)) z?pCr}IIh37YmIGGChNJogMXYm9?J1;+X_^U#-7927HG{MW1jYZh>A2Q|HVJYt;9x; zo~Vf1Dc*M(1~RsXlgE~XLL{3UT$wuq@#oFeC)_`y8osf*bKmuI=r_80L2pj0Nzu7# za~uvIhfRv}!veQbrvAE3Jo$I;3hBY?x;#CCv831@v{yFu`2FXy@Kedu$*gbcl(e;X zLgf%~*}oTSEwFD9mJh>OAoJO+{km8F&VjGf_(%88A82nOvZqUWHrb9D997kqK_B7~ zQrN$7f3dvw^N!haxpv;%oj6VG4fmq&QPgLIaCns4?)!by`aYtBed-B^*e(H`nC?2w z8bbT&y-^3D80B8|5p5yogc<$`_jcbwU|F9VmBD^F=;d->jQD9~xZxQXK2L1(g8Aab zN5W?xR+}QtW0I87UQ9VN`KipL7wsPBKlhN2@sLYZ<2J#9%FoTsb(Rg&H2z`dig!*7 z`w-^DGBf8AaC#E%Ext>q)LZ84ZAZqHz4#h2HAUycrGxLiJJT~>X0*kv_ht0goYr^o z(2|+@9&;8~%E^!+5i6qa!fh`%^%Z7tqf~aj3E67Su&ZQFHh6(%*ppsOxJ%vl#5CcV zl|{sENw092w`VPHJMA9qkq_5;S2@K)^}s4}z|-#vE)= z$=vYmUghFn<+cDzgrePz3a;m~UuIZlzpn?rH$pAfFH*B1Un_nce;{Sq>XbSS^oT}v zn3Sjpd;~%rpd|gifE~-}IcT@6gzS6nP7#Jmrf14$o>%XqHQ=&+_(YAzy5n zG!EVzoqe?z7yIN&v<#1?z>n;5**HM}w=_Ww@YRCF#Q3@Hr}b3Bngv}-CZGl{sww4s z)7BveyAMr->kam~S|G<2E1O@F3;SmyFsHaq2x>=0hZwlMd8HBl)z!qa1zQq-kDFdl zU0jWZB)OOu>-{WNl)4`^wozw&LcTAu0D9_oHO!yaAIornVyNsv6*Evm+Kre2A?>=i=Tx$ioFG2Sw=0hQk`V9QJ$R$O$YjoDT9io z^*ZNrMl0Y%zMsu#jy)*$4+hUY)#K%sSTdJ8-3B0QQ{M$rxpPB+IGMM^Jv41l6wQ`w z$2p5b57q-A5pZ}%oqOlwt8&`lPc3ahjH;JEebGeI{Xt&XMat zaHI!h%{kkkB_=-wZD5F4h9ylIQvQ+Z(baIgs?luE8n_3~fVWh!cMKxSbL)xM56$vZ zRs;Y0NwroV+y~miG9o>4C2VOOoi`RcQk-ucfQ_bs82e=cVE+_Cr*BKiMbw>!fViHd zR9>mQdFT${AytLdpUvM;l*5{JU2BaRnANhLJdj+XSG(`35PXMh%=m^0s+agxB>)S-;%$WWPwzgO&B41WJ456+* zKs50bA+vl#eJe$C(a^<=Ay;pmIRAjgC!suX)*h$e+d&Q0Y>+;Z)xWYjS*`Xp5Fx-Z zgjv&lFx=Z42O%3v4IiuYHYJiHw*uPOd!a3|b{i)KAu=%awWjq>Ci8fy#ut+wXAk@v zQ>G6-KnUQ{i9U6nM~qts6&k_c%Kg$|~HDbYBnTqEP*Qk6t>$s*OF(NQW_1mOzzROJ1<*?OGJW?vc@5*63h9`(gwftl> zXHQT0xk`u|GUnAy9dMbd1*!gX)Z(L414NLy+`e8xSHNMATuCdKkg3W=1TmA|jDfD2ve#r zU%o`hg$?6sMfk~va?!M6vnfkk%T*@k!0h3s0Z#%%t4{~FnkH*!5;mqB=2n7fX|mmD z{D-j~t9HwWx!@3Ad36Q&TdgdOkB^r}iAm|mo*wNXkBjTV;7q9L|yj7<{~O|bz&tngWEw@t3H_+wec(>KoeHWpqQ zdy&)FhQq04dTie~9=3Wf(}Nx&wlHkGXK8ISgV^MT+zy?Dqy+F;O6>r z&!pMUYoztxLEImsm%7Zlc3+G2q|Sel)#^-` z^oklB%CSfS5lm5$72+^f94ix6JE( zncv8$B$dy-BJy;lmanc~Crj=seeF_A`wrQI=@MNCx~W!T>|Mmqk{=)I|Hyp8*+O~I z1ZLsu|Ni6G@$&!>N-A8}DWDD-#7Gt!ZU5!pn zE1HRGu;r7d0eI{oKkAi3dm$Ni)Rrzub6Pk;IkRl~FFoV|d#E{%cs znl2pxngGzBW8{HP`QjeZ*}K0dj3> zZS+)R)^X2sni`cKeY}GL#tS%rKu7OtYy^A{SE}nMy7sF_3z6BuS=X1R^NoI}%>wW# z=uY>FPW0E?TE}Nl0Oyi(0*O9gVs`(4KldYMhL`yk96gY2{B2*n2)Cj2pughd4{i(2g#X!sD5IrPfEB@Qm%!6LEhxrOPxPlqOkceF6%Iw!#l?O`+ef%A*cbcix_ zfy6}TN3Fp$%YsToN9e5)C;aU~vv_tJly9gD)B`nJfcd88Kx=fiM(?`jeZTD)fZ*t2 zThX!L3v?n6goSchgc)poDv!FTHPo80Y+rHvH?yvKs{M3yacPw%Y9Hv-j#a6>_igt3z_z-UQ%cfD-_Ub_R`kc1-&^JRnB{%c`w<52F_ozWiyb) z_)>;de>t4mbOAMC7T*{<`N`tL`ASb>#rJ$tDXy9>=HLu|qQ;PzPrU`Gps7zi8adfT zc)CDLpudoL&&|IY<%X$guJCvm?~>75avMAAeg+TDw%4R>r5M4PzI#XoHgmg5#_-Rf z_z{9*^8Hm2!g^*Qd^-?md4I7zdGa{n!(hm?xg!BjC?_5M9w&@K0WpR3+kF4Dvjtn2 zN$!DGmChS%>B>WF@Fc95yY4^NWg{=IQAg!MS7J_tsZb#9D1giirgqv;YRm}mmi6XJVyT7Qzh4`2o1H;HsH|LK%z0nSflUv zc)|n?#-T>>L_VD4UQq+jVw5*AtA?;)#&-B!*v4>$$O39*$b2%Z?fC;2Q&=$RgFL$Ct zJ~|&haG;6o57@&klVLOnXBpuykPJie(P`ip40WZ!T=$mT%$ea#VX6E~URKmBmkcL3 zn0%Qj@At$~-<=Y6NMADhWl}e$7zyq+=n}IbXxYwMX&~h$ zcK*xdg?c?z0Tns%?IgA|KKqrHYqo?vD(N|5S$@B&{`sGBx$-2Lhq_dgb zn4A@Rn3wvFS;#<#$xA(w+X&ZTMQ;q|_xnwQx->-M+kf89K)X$UI)>{wvEECziSTDD z%%dE&DF%zI7@F?vBwhF^>l;YKmX;YhB-pLLeGn*Bw52iu@9tVN%yO35*eo4A!J32# z1Wag|HC(Gdbr5|$o@nHECFtQSd=^D-yGT1wq#^03&Stmy&BaCUmr9YE2tqe)BkU>a z#uI<}1&N+jEXAbL)fHtuI_lAv>inM);jO&y0^a=IuLu5-@$rjLZQsy){-o zs`@A6GUo(2HT*wPc>&kKOx^{#G84z?NM^{7u8E~mhKu5!wtEtTbv9s*mF^x^;^g*r z7DNPS_}WE$)Uu6Mv^8x;E4&RwIOsCzX-1iOK zG$vOeLWu@&ksZnb>2Hm=57~YuJbWmNFyBi47x$2+h*L$0gFDZTp$LbRwrg48Ifu?$*R!LPS2s^OGcCF^=S?kJ zxvW01v zRX3Q3l`#37$@9L1*pqpb;#eb@tyGay9;o$!_P9y!$(zG=73P3&fvyl`Y<^x`8+=Si zo#&+%!#LtPn``szA1is`YDPltS&w(oJIU*{o|o^1%8$N&=P!4iB%YyVd)Me!BxBUw zfQ4-3h(G!(VlbT}nEcf1pKYYxo2B5U@Dpb}52>_>iM;o*0^+7gTbravlww5PKUkWt9$vFSAX-h631qeAVa!lK8fR)HwKRljd%jXhC=}aBaXm9s)n^KFa@x7i+bmoy>G`a? ze9}rjrx(in=JLkaCB5-_HuPX<7EX*e;^xQL!oUIbpVje~*u8jv9PRl7UipF}F4ov| zy-jTPI?bW?m-KX~NU^uO>V#$v1+MaVmewp{+(69;TG#xwHPYCN>IJhmS8Py*au_nC zmKg5D_}R&ftz^9F(ek13p~S;HP~qUo{aI2W8Qx+K7<=$jru_{j*Rr-(BsH^$oz7G8 zPKW_tCFfGPmNG=;g|)2wkEGRALt9x2++J<}s;!>mZI)VC*7+{ZUhw$zAmax)do z739g0?;`hbI!(0A)Kt1Y4l5xv1uk_YHop$fH1!V7>z77ZaDcuwknKmQ z$bhD|g%VYr`ImEZjx=M0NQF{`2V|mrj#h6^Zvm$?-BLZ`rpV6iMQfFhn(enq(Arecpuymd^0J z_oyBZDV*{0*@A95lqXlI^EDIzm}=uJton9Hc;@yDRA^UFu~-M712n$DR$*~3W8)Vx zLXY@6smnqerI3iH03)ZP+7XD%jEd@hB7A6=ux3n}fiF!wvxW(o_|4v=*sJs}i z{E|RS@Jxv6!&F9jD2`7l+C>{@spzB012WazRm|2uajP}~IQ1AG9@bBj&&*29XGH^) z?j}$%VP(Zya4wteyBD_=0t%hSH5ImM=7fU!$uE)Lo>CS${7YXG2fzA3AB@#R^*Uu$sZDvBx5$Yf4|0NI8wlBcQvqsb~*#^C$M&)xnyudsvzi6(wrNvNm`%%6(H!H z{AWaBMkVhG2I`#Uk0of>Qn8Uj!l3UVaR9L;25`pziheW>4A?8cr3+HBg@rUqJ)Gi0 zQ~RcO;rkUD@u)M{wnQ3R12n7z5w0pB)B~mCFA9uT#=e_f0wTSD#JQKU@C^GQ*0LKD z$3kOt$ewo}1aJUP1gGxmGOynLOHuuP7jYnK4qNP6o0*VyXkVSt%Tejj-0nbfJXOQeVKOe!{O}Oxa z7>%6hq~QN4*l@9~-qk*oXl2EQGkx)n7;dm1U}#|&%|L^9SiQ~H0CJR->TcV5=`!@5G=lzw@oa$Hc z*~|E5hsfX~#r;-69>%u-LP#Z#v)3ytMav27cpHiM6-4ZXxBOsGWM|c5goQQl* zHCEqtRz2wJH^v}bl3Tp#bF1xDGuZcvjK2%vJ=7THL#L`h&cQcGc^;#b$6Cy)ht-!Q z^Bve&{ok+Ls7b5%D&Pv&|E19fiXds|@`Sa@_8ewX>$2ZivHtPNNlG&#Q0{mHRL+5x zcY;MvDWUqW~FRzGAef4I#H*z^s4<|E~{<8wZmxp!H7{Z8?@OtLS%tX;uP9@94up7`Pj zaBFIHi{80o?&uew*3m;ndUjmD6=j%z(xp~QF%gtH;2j;cQexxJ4eIE|c%oy!dzH_5 z)<`vb<4OP_6(01OmcDeF@#@IexwI{_8Ma%T} zy^BMA4Wo^q)EJ>hp`mTk9&4v4up?sSd#D#aX;lsg%E(s~DmlZP>rkjSRyn^)52Jdb zq+9_^dd^hu9_UIrVk&alki0DY_sR5_Z+ewFQL`>)XMp*^pJ;}6L(B6%Z{>iJ)5)Cv z8N_I8>*j5=w}V@&?mv`ZJrPE3p(4e-7dbLdSCc^ggy)ZXAe^j;)e#+Bdq48KP_y&6 z`(Gm%_EeS!TMMO(+SA4$m zDvEsSa;$c8;gXTxsFNDGsLl*#&owIBjd$BV9c!9j^~fkXvC5B1(lUwYHO8-1V>;#@ zdc)$RXrd+1%&jzi$_9Ekb+~R|+-fL#-o`+>VY@Hx`e)(NS)qMit9(xmSv{`eK;v|2 z#XiLaXuQlhT#2kFzd*sdAm^KLyYS=GR6kjra+ZGrIG0w8{AFvYs#}biDT|sp&g+tQ z-8P}6bUit=i>evFD7>bortX_=*iABjb}D?GJhgYfNNV0nw;<~cSy8YEJ+}vArJ9Lp zx!0OdUhn%07~x2_w=m8w+;Dk(hlZ%dOG3kb)36~_qDYytpGp~ zr6QWktCs=<109eg_0)WqiGpaZMQ~}M6B$_#M^qyQ`VB!*;D7FyAUXm7Zwe4Ur2zWu zaN-*4xCINDNrKG4vn9RG5MqMU5jGtEjEW)x{3SRRPD{$ygxM-fa4&2SKiGW#B+t!t z_k(!wRcmt z>adorUV(q<>u@lRe-M3}&}mp?GLNaEB6m6W3+o3skO+%ODj!Bx!S2}#e86En;Fx&8 z2JgPWQHMpj>_0{XhnU2dRuzg$7ZYx(w0wLt$>>AOsw16A#?JZBS=W6j4-P0Un6H_y=&%;`W!!`_Wc$K51@Tu3WC{{DkYAM`Nrn#QHK`zCcm{ z$%mFfu_+)YCZIY+n~%mewwg-`gTC<+dv41zFe6%N-fb)<+#pfU%MyD7%VP?6SlmFF z$$N-?u{SVG77%alb960S0t{ha)QMH+S<#7=fW2KH&M^D%ydvCDD?+;7xu{wCY9_@w zo2aR?r|WZ2L_~u`C-sD>QzUnjDzH~;z!`47J|Yb)K9Ao25Z=BD+aMyblH2Gc$(X}A zE;sES`DUG|H8Q-@7`hSC7%DN%Bkzw4@Grpn4iJPQ&jHF~wEo``w+9xo*LB~x`_!-- z3Jakhz-oq3&uqweMrC{PK$gSnEGpX<{T4(B&yUkPynX(BX931*=IG=_Ty2QTEl&#Y zG6{g!bS~-%_{B~zoADqGHMtfcT~a9sunL_w(_x6gMMA*F7j|#{1TTOyFahdbD#_^g z0;ZeGr&<~K8^)N%zZafu2a+_0j%;BzM=wjy07=ACBLP|AR)9Wc1Aqvad#I^{?|sPA zml}CcN*a8I-@e1xfB^BK=x7Y+0t^PkVae~#`pVAOVL!-RFpR=J%fnWx^9#eJDgMXgFrb;lS||V6B4U;DU+FIah}GvhScSOP;qt;2{7s zMdsk&N8dhw$m>)7i6YUS*V5HYYD2nP;M(!_vcxgC6c=DL6@e!Mc`Ah(d9>1`hcYml z2;L`Oh)Jx(erw%Y3JHRYbx{-D#* zHss*VGqlB1a_2jXl%4)bqwqEARZL$bjA8zBo(gOed$|oBe)3{Q1UTO)KwuZq+w(pN z!gYNZMok$!9LJchf+m`o?kDRcDjUDPx*z#8^pq|`J)JNndsq6RpM9Jf)CL^e3$T>p zxoqbnp)ZWfOG(kfg~qR?h3mwQk6xo6+T8WY{rVzbFS!7f_05$d6$kD=0X}M{01J|w~AhVVC#BS95rM0ypyX1Ll3`E(MA5j)aObwj5drgUDMv%j+ zqk%4?3;<;0>5JsJ!!sn@QXlD;Lm*7aAVZ-r*O?L3%j$MQR{YykW9tv@Q4x(RNh>wp;<$NZYuSmVV==T0iB7&jro90 zAW;ENy{T!RPm2iC^&bXc0Azxvma}3qt6>zmO2^CGk|{})xp%VG*rJnXq}6~zHt+ze z)RqB|=Ci~=#aCp$(Lnd}H)YLE`Hu75Or49U_YJM1Cuk(rGU}*h&7qCrUUR@M&V}$y zoV?LJD=RQW%gE4+nw#a~UH8}nrkb9*<}p1VkuhLi)}dm=;+}>(Dnh>+Qc7;|>+4Pr zYElDfsO(E((^8AZbxuWytX>U;7HCA+XQ=Ck0`=V$ItRE9t7c0rQrC!O>#5Irzo)ZJ z1A3Xfy0P~^`>0g@6E%C-NBpXZ?QKC)*(fUi;5y0s2+_L`<|TH8J{4=SL845u_FwOy zY`+O$xS~6~eopluiy1nw^~6WC0><%w0p))Oy#IbgSL(pAS!!6z4H!*t^Zsu_z$kzz zY5y>BhXFAqVzC)$ZmFyyj|e^j{JlJS{{N-1W!{piR$9xGE%smn&sQ;2l{6L0UzmUV EFWW&|x&QzG literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 b/Doc/docbook/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 new file mode 100644 index 0000000..b36273b --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.md5 @@ -0,0 +1 @@ +53168431946a78c88d11e71d8ccabb23 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.png b/Doc/docbook/classbsp___s_d_a25bc03ff69d0c3c9a73153c71c84a8b0_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..0083bf965fddc80d7efd8c298309abe2873da9be GIT binary patch literal 7667 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 S`2l^4i=nKbE{~8i3I0DUncaf` literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.md5 b/Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.md5 new file mode 100644 index 0000000..9c9064b --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.md5 @@ -0,0 +1 @@ +41eb04d5d3936f449ce425a1c8d7e833 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.png b/Doc/docbook/classbsp___s_d_a2df843979bb4c764422a37b255c184ea_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..591b2df6ed3114dca09521f45b17d689e7c47c6c GIT binary patch literal 1304 zcmV+z1?T#SP)Jz72 zuPvq-H^kpH#s5a`LQrPv=KE?T46|IzoJp}VZGS>ENR9j{~pI44pbBsfAErBT% z40;?q#sYe*B8Ub6KnA-r&b!s1i}83OZaZ@syynl{?)JVRnJ|o zeOmzL2)u3Ez+BGN#tD(T$#-A*&TCt6ZTXk`*>@jw6|A`X9<;84+9qCEr1~npeaGn< zqs<3m)p8*U@X!nUD*5mJOk+_1g3ACdKlc=0-8j^H0QPbCnc{KtI`4acy9#QXcx6HB zyEhyv_crTj^1jvmQ5N5-$ENG=Q|~8KV~u`+{tHNqICZ1pTy@Up8fCj;0O3#m#mL=MH}YPW^96n75#?%` zTraPS5vNHjDp#>Sd^bhtukkUj;D~+YNY(mn?T}RZ+6TQCch>90@ z{SY^=$#%FEwlg`@9{{{s^Op0AM_mH<0PK(Ney;NP(cYW0w}a&1Du^))b<bFaJP z)0f$Tv9)CS$gz!}Csa%3HQ;q^nbrAC`u09216@64*NMPTaq9TQXxrLyU6R@4glb(5 zzWJ5!Tjvj^rW8;CmMR#@68Fs$sC-C5^TdqOSRMBlA9T zuTvM#)=RHiE;QSRgDuC-am)#`*=$=xZpXOg@6Zl(3a`B7@6OIn@&@U}$o(Av5a6i- zV+c+Z*c**;XZNc7WiC@5Pci<_Q~#2)i=1;$sl4T{?fA&@7pg=ls6sCWS-+{`+jHR7 zH`nElv{@0^tz~hqYbE41(jU^cY`PJ!tAbB*yZu02iy^1c@=&%TmZZhKt~WarL)w;2 zxBI@_N}WTUssfio;q(2m75Uq!d&>|JZ3-55BBB9eaVH`gAQpEbq5)!YCn6f4%By8g zPEKOxK{RMN-}sI4^h|MA)gJ+TkRTVL!Qt^lL_|bHL_|bHL_|cCw|@a-AyJBiVA4kb O0000sW4|Kyi zot=OCX5P%~_j6%)XXpKXv%Gop_PsYliv0kr#Wjl`~YPH$}uIt`mI}hqls(NB#V&Vtec_dM-R=3&CfvA(;`LxXY zCK1^vB8Rg}i;B#3-5CH|ZRe4M>$)$9$f)f+sBdit@S*J_lHfIha%jo*-w&y91sa&JPX_wn=A-wn4dd(xvx?!Y) zleMUgU(yCFZVo2O4J)I)Jx(m|#i^`~a`l+rqb}Co=wf!?i2P$aACt1G>o(4*tm|}G z?qxkcg6y2r$F+qsQzLTDb}lA$yJ&h}_r53Y#WssLQDdaRR$Np1YKp3Jq$SVd7uj;X%b+UWh_6 zbgk{2Y^vAmncTvkRh)ij^dcZ4z70nEb?>(J^KSda6}M6BmXG%}Z+?Dxd$-5=Ed0ty z!dp(af1~7CI06N56M!dF@!7@u@zdC>?ybz~hE&3pu&$ekV_KGVI%!!&K7Zu;U$b8) z!0Q;md}U5gR*ve^PkpMlnT}Vh)qF4P?bp5A+RwY~7gw)SLs4_cVuZtQR4B=3XzH^K z${}o|(^1PR{CU$s+t&ld1_|65kmZpJz|N#@Yw>=#r{yJ5~_L(|Lg`K?jt_Ij`JN=X+xJBr%{*aZjAR%Z2r zD5l*(9K_-AWW|=WuBRQR$aT8xof{7UFtGUOJ}5Ta;NY#Dvw9rBp=Ar0!N>8xWk@>D#A{!u)9Qev9jDhANjiny_A}85$!cv+>WhrC_-1Hwv9F0-f{r&&!`VirN;d7@ zP#N8C_4jmCaVG?wqd0yBaqTU4LGTh~L~fje-E_ zFObb5PSB`GQKgl8CU;Spo(jo(qZ@R*dCEIaxs*jw>w4bLsi;hkIJI>i@m2N8jWqn5=mg}sP0f; zI^=B&00ss4Rut2^3@=Zqa=(oC_Bu<{{bkO$HKff!#!kK${Z==z$ zI{G;_r(XiNJK!xX0Yrh83mk{y(7*y_&^++xilHHhfgjrpyQpP(TXI=CMtQ%LJFEPR zE;4TOe$xpW>h0VfXKjPu5OLTra@0k{QFD)yTb%OJZdCo&J#@>Z6a))U3_{?$$hcaq zCM&iN>Uz>RS&LJrbL@>SPBtGA>M_k)!5#^a)Uz&ejfdgpa(Bz}?oz49R5& zC+H3ZehVfq8NhkCc&vy&)ljCoUZ!K|7Ye+iF2;-YQw>3*u03SDck$RbC?~SBiW-5fKp)5fKp)5fKp) f5fKp)5#`l?k`a73&42Gp00000NkvXXu0mjfCa%qh literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.md5 b/Doc/docbook/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.md5 new file mode 100644 index 0000000..6f4e1bc --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.md5 @@ -0,0 +1 @@ +24617004c3ffb7e8ab602bddf81025a0 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.png b/Doc/docbook/classbsp___s_d_a3250f411819ed57543b0326d13faddc6_icgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..849bf38cf5339c12089b37fac92383ae931f202f GIT binary patch literal 35753 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 CCl81K literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 b/Doc/docbook/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 new file mode 100644 index 0000000..5204952 --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.md5 @@ -0,0 +1 @@ +2357bd7c4160acf542ba74c472029a74 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.png b/Doc/docbook/classbsp___s_d_a36d1110bcbe2404ddd5796dc078ce1f5_icgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..132da6215e022332c3d8a35d947a84036512d8e3 GIT binary patch literal 26290 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 literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.md5 b/Doc/docbook/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.md5 new file mode 100644 index 0000000..1e6495d --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.md5 @@ -0,0 +1 @@ +7164567be8177b3f0051c59f734cf22d \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.png b/Doc/docbook/classbsp___s_d_a5ed95b95b141ee21d83ca70c1b06a31a_icgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..e298dcd5e311c6e99241393b6bb40c15d2300a48 GIT binary patch literal 1281 zcmV+c1^)VpP);K~#90?cF_W97Pld@c(R%(B5?vK!HO;NtcL*0x5u?GNF%eIf+!E zp`Zv9Py#}tSf4nFNJ$hDDkO4NYDjfRG!!Aig(VaTVY#5eSo0|CRjj?)kC~g@+1>m9 z8vFL^y&d`9y}j8x14KkbL_|bHL_|dWp|T6cJq54Hpw3j5wgV1@nm`o<; zwbsvt&V$y^bUOVmyKInMpp?3xl)BwaO4Ky1^<4n(gwDf-*7^gb)Mn^BXf2f&&s35m z^`=6NOOgbO#UgYXD;W-l*x1+zod&Im{r!FH?(Q1bMGfadMAQo`oau_Z%dr2V;5qK`(QGeG(Pz`nM{_Joz9_beVuVk+pN>% zu+Q`LQaqcMS4gtUv)kAfpeEwDY}fTddikE5M}*$={30yu(T2q0Dp?{DqkG3N5E0Jmlr z)vvyTrG?4V@uf_cvw8d3vfV%1u~qHh>g@9J#wu@Jy3BMgrsI^2xo!OHI^SdCt$3P> zK=${t$2P?)uOQpV?q_=JBaV%-@kn#(c;N(q^aP$d`S}chs|xsVYc7wJ;D*w;Iek+- zTs6??CvV>GWshx&SJ4x>s_cHI$3EgzWivME<21*rV_bAxm-wdNeeza3UEkyLQTTjy zt|8-?;;o^xCqK_Y;Uj$p*T!>sD8TFta9zHC&*`953rktSa*0=0*Hbl)ugR%8j$t}Z zoi75u-x{fX!l;Sv&9-xGdz@Om^wtYoJKIa2(`}MyoI`{sy{BoLlfO*?UIg%|20p`U z*Z%(Z&j&b){=q;WuAD~`-J5Oa>N}3lB3JdYd6nZ7DT)!|{o+Pu+kMXzH&whkT_mXz z-?!~FHM<;Q7Q1MyY;tiO^P=rS%;?u%Jj)7DlLd-J7r<{n{PE4zw=acEVLX>BBKV?c z8wDH*Fi^nn0?Z=dy4?TdtEWe!&4H&c1}S^u@|K<_Z1OAG*4LP?62lj-6Go}*J&;A0 z?Jl$JdA9-;&GP51FY1bY#i>K93$(jK9KY}R2!b0?X2K|rW2b}WT_%=YLb}Yh=e@61 zc9~mt->0e5tLyztlcKSza!H>qa~*Tn_;ua_wp1D7IKHHmy4^(O?r8yNtt3gXSS;>N zr_-R{=Q*Cs6#>4)@r(C=IG%BT450871^0s(m^aU$o#CM0lf%AI~hh1Z-Q^ zWTUU=Ri~iEGp~5`si^enTzr|mu3G;;l=2EjUkgba&Z`YM*jTI2wi6Ng!s1CpW8J`DIz}ucsD>U)PN|8_Cn|2DvF}d rwbpk+=Rrh7L_|bHL_|bH)HnYFp^rMR00000NkvXXu0mjfS@DpC literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 b/Doc/docbook/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 new file mode 100644 index 0000000..ad08935 --- /dev/null +++ b/Doc/docbook/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.md5 @@ -0,0 +1 @@ +c283c362ecdf1610c54245894b9de52e \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.png b/Doc/docbook/classbsp___s_d_a600cc886dc5da6d34f75d0bf226c1b92_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..e8af0257f41295c615addd4520c8a215c301a50d GIT binary patch literal 8600 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 literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.md5 b/Doc/docbook/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.md5 new file mode 100644 index 0000000..c8a2513 --- /dev/null +++ b/Doc/docbook/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.md5 @@ -0,0 +1 @@ +0a261ac4c4d9a30b51ab5230e94db62f \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.png b/Doc/docbook/classbsp___s_d_aaf2d27cc9275f3ffa71556124f143d12_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..f0dc9af99f030e195e813838c72a2a23ad2cc58e GIT binary patch literal 6128 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
D49Xr4_dyGF@0Kv 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 literal 0 HcmV?d00001 diff --git a/Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.md5 b/Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.md5 new file mode 100644 index 0000000..0bdcf32 --- /dev/null +++ b/Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.md5 @@ -0,0 +1 @@ +4a53e7182b230fcde2addc0b3fb4ea58 \ No newline at end of file diff --git a/Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.png b/Doc/docbook/classbsp___s_d_ad0426f6a4b550e60a926c95724d81665_cgraph.png new file mode 100644 index 0000000000000000000000000000000000000000..8bce63b9c422cfe3854e3af88ac035643cbfba79 GIT binary patch literal 7696 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 - - -

- b -

- - -

- c -

- - -

- d -

- - -

- f -

- - -

- g -

- - -

- h -

- - -

- i -

- - -

- k -

- - -

- l -

- - -

- m -

- - -

- n -

- - -

- o -

- - -

- p -

- - -

- r -

- - -

- s -

- - -

- t -

- - -

- w -

- - -

- ~ -