\doxysection{Dev\+Lab\+\_\+\+ICM20948.\+h}
\hypertarget{DevLab__ICM20948_8h_source}{}\label{DevLab__ICM20948_8h_source}\index{src/DevLab\_ICM20948.h@{src/DevLab\_ICM20948.h}}
\mbox{\hyperlink{DevLab__ICM20948_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00001}00001\ \textcolor{preprocessor}{\#ifndef\ ICM20948\_DEVLAB\_H}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00002}00002\ \textcolor{preprocessor}{\#define\ ICM20948\_DEVLAB\_H}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00003}00003\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00004}00004\ \textcolor{preprocessor}{\#include\ <Arduino.h>}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00005}00005\ \textcolor{preprocessor}{\#include\ <Wire.h>}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00006}00006\ \textcolor{preprocessor}{\#include\ <SPI.h>}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00007}00007\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{ICM20948__regs_8h}{ICM20948\_regs.h}}"{}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00008}00008\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00009}00009\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{7Semi__Interface_8h}{7Semi\_Interface.h}}"{}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00010}00010\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{7Semi__I2C__Interface_8h}{7Semi\_I2C\_Interface.h}}"{}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00011}00011\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{7Semi__SPI__Interface_8h}{7Semi\_SPI\_Interface.h}}"{}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00012}00012\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{BusIO__7Semi_8h}{BusIO\_7Semi.h}}"{}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00013}00013\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00014}\mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bb}{00014}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bb}{ICM20948\_Op\_Mode}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00015}00015\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00016}00016\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bbaeb5ecad776b2d1994801f86a1046bdd4}{MODE\_POWER\_DOWN}}\ =\ 0x00,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00017}00017\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bba7974d706e59ca8d22b8782dfdabce86e}{MODE\_SINGLE\_MEASUREMENT}}\ =\ 0x01,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00018}00018\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bbaf2654418af9eab4757668f4339177c53}{MODE\_CONTINUOUS\_1}}\ =\ 0x02,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00019}00019\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bba2e879cf4786e911224250d6b0194a582}{MODE\_CONTINUOUS\_2}}\ =\ 0x04,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00020}00020\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bba7f0a8ea70bc11d0092f0cd5d87ce6a3f}{MODE\_CONTINUOUS\_3}}\ =\ 0x06,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00021}00021\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bba9a1ea869de47842c32f3676129ee81af}{MODE\_CONTINUOUS\_4}}\ =\ 0x08,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00022}00022\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bba6c83671c670b651f57b5b009b6a2229b}{MODE\_SELF\_TEST}}\ =\ 0x10}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00023}00023\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00024}00024\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00025}\mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879a}{00025}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879a}{ICM20948\_Clock\_Source}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00026}00026\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00027}00027\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aa59e0b75b3c047b4b832b0200d782ddb2}{INTERNAL\_20MHZ\_0}}\ =\ 0x00,\ \textcolor{comment}{//\ Internal\ oscillator}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00028}00028\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aaca6f1905f220d913cfd3c5769e94178d}{AUTO\_PLL\_1}}\ =\ 0x01,\ \ \ \ \ \ \ \textcolor{comment}{//\ Auto\ select\ (PLL\ if\ ready)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00029}00029\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aa8156f3cf9e11a725117e88d4883a803f}{AUTO\_PLL\_2}}\ =\ 0x02,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00030}00030\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aa16768ce535258a7ee3506f317048add4}{AUTO\_PLL\_3}}\ =\ 0x03,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00031}00031\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aabf1e35c8f4cd0c9f0809e187db8d24b7}{AUTO\_PLL\_4}}\ =\ 0x04,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00032}00032\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aa808a0d936ba42cccdd8646ff2f3fc181}{AUTO\_PLL\_5}}\ =\ 0x05,}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00033}00033\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aa366429873bd2a3e635e2f5e9444e8c65}{INTERNAL\_20MHZ\_6}}\ =\ 0x06,\ \textcolor{comment}{//\ Internal\ oscillator}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00034}00034\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879aaa00d9d4605cdcd9e604bdcc6b43188e7}{STOP\_CLOCK}}\ =\ 0x07\ \ \ \ \ \ \ \ \textcolor{comment}{//\ Stops\ clock,\ timing\ generator\ reset}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00035}00035\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00036}00036\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00037}\mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1}{00037}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1}{ICM20948\_Gyro\_DLPF}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00038}00038\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00039}00039\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1a662ccb78ed3b42f60e60feeb4152f02d}{DLPF\_196HZ}}\ =\ 0x00,\ \textcolor{comment}{//\ BW\ ≈\ 196.6\ Hz,\ NBW\ ≈\ 229.8\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00040}00040\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1a28104648b3e4be8f7935c4e33a93f86d}{DLPF\_151HZ}}\ =\ 0x01,\ \textcolor{comment}{//\ BW\ ≈\ 151.8\ Hz,\ NBW\ ≈\ 187.6\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00041}00041\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1a743e10bbb0a9ee5ed323e4730038d0ea}{DLPF\_119HZ}}\ =\ 0x02,\ \textcolor{comment}{//\ BW\ ≈\ 119.5\ Hz,\ NBW\ ≈\ 154.3\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00042}00042\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1aacd670919f63d087c79b5d1768c5f790}{DLPF\_51HZ}}\ =\ 0x03,\ \ \textcolor{comment}{//\ BW\ ≈\ 51.2\ Hz,\ \ NBW\ ≈\ 73.3\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00043}00043\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1af0563928829b8e022a67761651b4ccd3}{DLPF\_23HZ}}\ =\ 0x04,\ \ \textcolor{comment}{//\ BW\ ≈\ 23.9\ Hz,\ \ NBW\ ≈\ 35.9\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00044}00044\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1a42f1efcd8f9af5f24fecd31ca9a61dee}{DLPF\_11HZ}}\ =\ 0x05,\ \ \textcolor{comment}{//\ BW\ ≈\ 11.6\ Hz,\ \ NBW\ ≈\ 17.8\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00045}00045\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1a0a652e865481fdc15eb7b725dec06c16}{DLPF\_5HZ}}\ =\ 0x06,\ \ \ \textcolor{comment}{//\ BW\ ≈\ 5.7\ Hz,\ \ \ NBW\ ≈\ 8.9\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00046}00046\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1ad73ac78850a4c2472ecf9b9d4352193a}{DLPF\_361HZ}}\ =\ 0x07\ \ \textcolor{comment}{//\ BW\ ≈\ 361.4\ Hz,\ NBW\ ≈\ 376.5\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00047}00047\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00048}00048\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00049}\mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088}{00049}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088}{ICM20948\_Gyro\_Average}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00050}00050\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00051}00051\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a0e1dad64ff226da838c42ef470c44130}{AVG\_1}}\ =\ 0x00,\ \ \ \ \ \ \textcolor{comment}{//\ 1x\ Average\ (no\ averaging)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00052}00052\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a88daf0edb8c43762591eb529182359a3}{AVG\_2}}\ =\ 0x01,\ \ \ \ \ \ \textcolor{comment}{//\ 2x\ Average}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00053}00053\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a4f91b71e175d17b54f72111f8a2f448f}{AVG\_4}}\ =\ 0x02,\ \ \ \ \ \ \textcolor{comment}{//\ 4x\ Average}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00054}00054\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a682b1e1305b78c070fc0d38523969924}{AVG\_8}}\ =\ 0x03,\ \ \ \ \ \ \textcolor{comment}{//\ 8x\ Average\ }}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00055}00055\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088ad52a23a3a06614aefd7b8c55510f95f6}{AVG\_16}}\ =\ 0x04,\ \ \ \ \ \textcolor{comment}{//\ Average\ 16\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00056}00056\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a5a625254a69fb541caa23fed503c1e2b}{AVG\_32}}\ =\ 0x05,\ \ \ \ \ \ \textcolor{comment}{//\ Average\ 32\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00057}00057\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088ac36b80b074a6c01ebbb930bce9b15f93}{AVG\_64}}\ =\ 0x06,\ \ \ \ \ \textcolor{comment}{//\ Average\ 64\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00058}00058\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a42196be320909c8dda602c04785329d4}{AVG\_128}}\ =\ 0x07\ \ \ \ \ \textcolor{comment}{//\ Average\ 128\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00059}00059\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00060}\mbox{\hyperlink{DevLab__ICM20948_8h_a409a608f5c864bb503bf1a65b164de7d}{00060}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_a409a608f5c864bb503bf1a65b164de7d}{ICM20948\_Gyro\_FullScale}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00061}00061\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00062}00062\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a409a608f5c864bb503bf1a65b164de7da280ca4444fdadaea21eee0318f1058cd}{DPS\_250}}\ =\ 0x00,\ \ \textcolor{comment}{//\ ±250\ dps}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00063}00063\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a409a608f5c864bb503bf1a65b164de7daa6c595a11edc7bce59747f5b079f2c4e}{DPS\_500}}\ =\ 0x01,\ \ \textcolor{comment}{//\ ±500\ dps}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00064}00064\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a409a608f5c864bb503bf1a65b164de7dafb97ded09a3f4b47d17ccccb847fbe63}{DPS\_1000}}\ =\ 0x02,\ \textcolor{comment}{//\ ±1000\ dps}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00065}00065\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a409a608f5c864bb503bf1a65b164de7da7a03fe4c8dae7b2cc724db90de97f53f}{DPS\_2000}}\ =\ 0x03\ \ \textcolor{comment}{//\ ±2000\ dps}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00066}00066\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00067}00067\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00068}\mbox{\hyperlink{DevLab__ICM20948_8h_a7d56bdd11158e2d05da5c9317fadee05}{00068}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_a7d56bdd11158e2d05da5c9317fadee05}{ICM20948\_Accel\_FullScale}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00069}00069\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00070}00070\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a7d56bdd11158e2d05da5c9317fadee05aade318cc7367b7f1b4127eddc5f4899f}{G\_2}}\ =\ 0x00,\ \textcolor{comment}{//\ ±2g}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00071}00071\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a7d56bdd11158e2d05da5c9317fadee05abda3c606e1ce64e3bda86c1fe6232693}{G\_4}}\ =\ 0x01,\ \textcolor{comment}{//\ ±4g}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00072}00072\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a7d56bdd11158e2d05da5c9317fadee05a7526fbbb8f59b17de642323ac8f156aa}{G\_8}}\ =\ 0x02,\ \textcolor{comment}{//\ ±8g}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00073}00073\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a7d56bdd11158e2d05da5c9317fadee05a0ab58ba0a5550a73055a08e4c20ee549}{G\_16}}\ =\ 0x03\ \textcolor{comment}{//\ ±16g}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00074}00074\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00075}00075\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00076}\mbox{\hyperlink{DevLab__ICM20948_8h_a792c56c75cabcab23c273bd9a48aefa9}{00076}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_a792c56c75cabcab23c273bd9a48aefa9}{ICM20948\_Accel\_Average}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00077}00077\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00078}00078\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a792c56c75cabcab23c273bd9a48aefa9aebd0ae3f26f35e0266d46e0b767eeadc}{AVG\_1\_OR\_4}}\ =\ 0x00,\ \textcolor{comment}{//\ Depends\ on\ ACCEL\_FCHOICE}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00079}00079\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a682b1e1305b78c070fc0d38523969924}{AVG\_8}}\ =\ 0x01,\ \ \ \ \ \ \textcolor{comment}{//\ Average\ 8\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00080}00080\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088ad52a23a3a06614aefd7b8c55510f95f6}{AVG\_16}}\ =\ 0x02,\ \ \ \ \ \textcolor{comment}{//\ Average\ 16\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00081}00081\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088a5a625254a69fb541caa23fed503c1e2b}{AVG\_32}}\ =\ 0x03\ \ \ \ \ \ \textcolor{comment}{//\ Average\ 32\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00082}00082\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00083}00083\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00084}\mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833}{00084}}\ \textcolor{keyword}{enum\ class}\ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833}{ICM20948\_Accel\_DLPFCFG}}\ :\ uint8\_t}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00085}00085\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00086}00086\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833a13cbb7979b56e04b08ae1fce52de8920}{DLPF0\_246HZ}}\ =\ 0x00,\ \textcolor{comment}{//\ BW\ ≈\ 246\ Hz,\ NBW\ ≈\ 265\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00087}00087\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833aeeb64eacdc3d03767db5a3801123bfb4}{DLPF\_246HZ}}\ =\ 0x01,\ \textcolor{comment}{//\ BW\ ≈\ 246\ Hz,\ NBW\ ≈\ 265\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00088}00088\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833afe0dbe8c5c9de890080dc391ebe993c9}{DLPF\_111HZ}}\ =\ 0x02,\ \textcolor{comment}{//\ BW\ ≈\ 111\ Hz,\ NBW\ ≈\ 136\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00089}00089\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833a1b0dedc13cdfd5d62bb48c2ad2fa704b}{DLPF\_50HZ}}\ =\ 0x03,\ \ \textcolor{comment}{//\ BW\ ≈\ 50\ Hz,\ \ NBW\ ≈\ 68.8\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00090}00090\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833a4b000385ff347b34dfec18d96059bd64}{DLPF\_24HZ}}\ =\ 0x04,\ \ \textcolor{comment}{//\ BW\ ≈\ 24\ Hz,\ \ NBW\ ≈\ 34.4\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00091}00091\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833aa94e8735e478a9c88792525ccbcc679a}{DLPF\_12HZ}}\ =\ 0x05,\ \ \textcolor{comment}{//\ BW\ ≈\ 12\ Hz,\ \ NBW\ ≈\ 17\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00092}00092\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833afc7f83a30afbfee6d61610e4089ac326}{DLPF\_6HZ}}\ =\ 0x06,\ \ \ \textcolor{comment}{//\ BW\ ≈\ 6\ Hz,\ \ \ NBW\ ≈\ 8.3\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00093}00093\ \ \ \mbox{\hyperlink{DevLab__ICM20948_8h_a62506f4660c8cca0e4f2d55cc6cea833af80e05f16aaf83801216cef7d6a5446f}{DLPF\_473HZ}}\ =\ 0x07,\ \textcolor{comment}{//\ BW\ ≈\ 473\ Hz,\ NBW\ ≈\ 499\ Hz}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00094}00094\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00095}00095\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00096}00096\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00097}00097\ \textcolor{comment}{\ *\ ICM20948\_IntPinConfig}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00098}00098\ \textcolor{comment}{\ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00099}00099\ \textcolor{comment}{\ *\ -\/\ Physical\ configuration\ of\ the\ INT\ pin\ (INT\_PIN\_CFG\ register,\ BANK\ 0)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00100}00100\ \textcolor{comment}{\ *\ -\/\ Controls\ electrical\ behavior\ and\ clear\ condition\ of\ the\ interrupt\ line}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00101}00101\ \textcolor{comment}{\ *\ -\/\ Pass\ to\ intInit()\ to\ apply\ settings}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00102}00102\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00103}\mbox{\hyperlink{structICM20948__IntPinConfig}{00103}}\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structICM20948__IntPinConfig}{ICM20948\_IntPinConfig}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00104}00104\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00105}\mbox{\hyperlink{structICM20948__IntPinConfig_a5bab37898a5ad12279ae46748d5400cf}{00105}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntPinConfig_a5bab37898a5ad12279ae46748d5400cf}{activeLevel}}\ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ bit\ 7\ |\ 0\ =\ active\ high,\ \ \ \ \ \ \ 1\ =\ active\ low}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00106}\mbox{\hyperlink{structICM20948__IntPinConfig_af8cd3194154cbe96ee8042e0feebbc39}{00106}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntPinConfig_af8cd3194154cbe96ee8042e0feebbc39}{driveMode}}\ \ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ bit\ 6\ |\ 0\ =\ push-\/pull,\ \ \ \ \ \ \ \ \ 1\ =\ open-\/drain}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00107}\mbox{\hyperlink{structICM20948__IntPinConfig_ae1451bd05cabcea7fcada08028553753}{00107}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntPinConfig_ae1451bd05cabcea7fcada08028553753}{latchMode}}\ \ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ bit\ 5\ |\ 0\ =\ pulse\ 50µs,\ \ \ \ \ \ \ \ 1\ =\ latch\ held}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00108}\mbox{\hyperlink{structICM20948__IntPinConfig_a6dd7d0d00d7f06c42cf51752d57e13dd}{00108}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntPinConfig_a6dd7d0d00d7f06c42cf51752d57e13dd}{clearMode}}\ \ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ bit\ 4\ |\ 0\ =\ read\ INT\_STATUS,\ \ \ 1\ =\ any\ read}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00109}\mbox{\hyperlink{structICM20948__IntPinConfig_a31e303e6779d760cab50e5302930d1a2}{00109}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntPinConfig_a31e303e6779d760cab50e5302930d1a2}{fsyncActLevel}}\ \ :\ 1;\ \ \textcolor{comment}{//\ bit\ 3\ |\ 0\ =\ FSYNC\ active\ high,\ 1\ =\ FSYNC\ active\ low}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00110}\mbox{\hyperlink{structICM20948__IntPinConfig_a6eb25bd804e5571506469674bf924323}{00110}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntPinConfig_a6eb25bd804e5571506469674bf924323}{fsyncIntEn}}\ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ bit\ 2\ |\ 0\ =\ FSYNC\ disabled,\ \ \ \ 1\ =\ FSYNC\ as\ interrupt}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00111}\mbox{\hyperlink{structICM20948__IntPinConfig_a395907b185a1d0bfe2526f4931c7138e}{00111}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntPinConfig_a395907b185a1d0bfe2526f4931c7138e}{bypassEn}}\ \ \ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ bit\ 1\ |\ 0\ =\ normal,\ \ \ \ \ \ \ \ \ \ \ \ 1\ =\ I2C\ bypass\ mode}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00112}00112\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00113}00113\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00114}00114\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00115}00115\ \textcolor{comment}{\ *\ ICM20948\_IntEnableConfig}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00116}00116\ \textcolor{comment}{\ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00117}00117\ \textcolor{comment}{\ *\ -\/\ Selects\ which\ interrupt\ sources\ are\ routed\ to\ the\ INT\ pin}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00118}00118\ \textcolor{comment}{\ *\ -\/\ Covers\ INT\_ENABLE\ (0x10),\ INT\_ENABLE\_1\ (0x11),\ INT\_ENABLE\_2\ (0x12),\ INT\_ENABLE\_3\ (0x13)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00119}00119\ \textcolor{comment}{\ *\ -\/\ FIFO\ overflow\ and\ watermark\ fields\ are\ per-\/channel\ arrays\ [0]–[4]}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00120}00120\ \textcolor{comment}{\ *\ -\/\ Pass\ to\ intEnableConfig()\ to\ write\ all\ four\ registers\ in\ one\ call}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00121}00121\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00122}\mbox{\hyperlink{structICM20948__IntEnableConfig}{00122}}\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structICM20948__IntEnableConfig}{ICM20948\_IntEnableConfig}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00123}00123\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00124}00124\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_ENABLE\ (0x10)\ -\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00125}\mbox{\hyperlink{structICM20948__IntEnableConfig_ad8e41ee5fb54f5f168e2429d09ea900e}{00125}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_ad8e41ee5fb54f5f168e2429d09ea900e}{wofEn}}\ \ \ \ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ Wake\ on\ FSYNC}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00126}\mbox{\hyperlink{structICM20948__IntEnableConfig_a2c13cfee0f9e9e73a152599540dc8e0f}{00126}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_a2c13cfee0f9e9e73a152599540dc8e0f}{womIntEn}}\ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ Wake\ on\ motion}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00127}\mbox{\hyperlink{structICM20948__IntEnableConfig_ad5823eddb88b1463692d7fe5363ca6f9}{00127}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_ad5823eddb88b1463692d7fe5363ca6f9}{pllRdyEn}}\ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ PLL\ ready}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00128}\mbox{\hyperlink{structICM20948__IntEnableConfig_a5640acb7eedb2bf36876d7b3651988da}{00128}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_a5640acb7eedb2bf36876d7b3651988da}{dmpInt1En}}\ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ DMP\ interrupt}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00129}\mbox{\hyperlink{structICM20948__IntEnableConfig_aff622326c928640c8f9576a7c9834be7}{00129}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_aff622326c928640c8f9576a7c9834be7}{i2cMstIntEn}}\ \ :\ 1;\ \ \textcolor{comment}{//\ I2C\ master\ interrupt}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00130}00130\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00131}00131\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_ENABLE\_1\ (0x11)\ -\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00132}\mbox{\hyperlink{structICM20948__IntEnableConfig_a6764938aee3f8d6c6e070851872cc388}{00132}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_a6764938aee3f8d6c6e070851872cc388}{rawDataRdyEn}}\ :\ 1;\ \ \textcolor{comment}{//\ Raw\ data\ ready}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00133}00133\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00134}00134\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_ENABLE\_2\ (0x12)\ -\/-\/-\/\ canal\ por\ canal}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00135}\mbox{\hyperlink{structICM20948__IntEnableConfig_a1254a7bd92a17da57b81a91338c145bc}{00135}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_a1254a7bd92a17da57b81a91338c145bc}{fifoOvfEn}}[5];\ \ \ \ \ \ \textcolor{comment}{//\ [0]–[4]:\ 1\ =\ overflow\ interrupt\ ON\ para\ ese\ canal}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00136}00136\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00137}00137\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_ENABLE\_3\ (0x13)\ -\/-\/-\/\ canal\ por\ canal}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00138}\mbox{\hyperlink{structICM20948__IntEnableConfig_aaac07304191025a3f3da9b0a619b3f6f}{00138}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntEnableConfig_aaac07304191025a3f3da9b0a619b3f6f}{fifoWmEn}}[5];\ \ \ \ \ \ \ \textcolor{comment}{//\ [0]–[4]:\ 1\ =\ watermark\ interrupt\ ON\ para\ ese\ canal}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00139}00139\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00140}00140\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00141}00141\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00142}00142\ \textcolor{comment}{\ *\ ICM20948\_IntStatus}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00143}00143\ \textcolor{comment}{\ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00144}00144\ \textcolor{comment}{\ *\ -\/\ Holds\ the\ parsed\ state\ of\ the\ four\ interrupt\ status\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00145}00145\ \textcolor{comment}{\ *\ -\/\ Covers\ INT\_STATUS\ (0x19),\ INT\_STATUS\_1\ (0x1A),\ INT\_STATUS\_2\ (0x1B),\ INT\_STATUS\_3\ (0x1C)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00146}00146\ \textcolor{comment}{\ *\ -\/\ Populated\ by\ checkIntStatus()\ via\ a\ single\ 4-\/byte\ burst\ read}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00147}00147\ \textcolor{comment}{\ *\ -\/\ Reading\ these\ registers\ clears\ the\ interrupt\ flags\ (when\ clearMode\ =\ 0\ in\ IntPinConfig)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00148}00148\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00149}\mbox{\hyperlink{structICM20948__IntStatus}{00149}}\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structICM20948__IntStatus}{ICM20948\_IntStatus}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00150}00150\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00151}00151\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_STATUS\ (0x19)\ -\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00152}\mbox{\hyperlink{structICM20948__IntStatus_a2438eb5d73069cbb931b12879679c756}{00152}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntStatus_a2438eb5d73069cbb931b12879679c756}{womInt}}\ \ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ Wake\ on\ motion\ ocurrió}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00153}\mbox{\hyperlink{structICM20948__IntStatus_a0e14602a7e105da494b79056fc1a6ac4}{00153}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntStatus_a0e14602a7e105da494b79056fc1a6ac4}{pllRdyInt}}\ \ :\ 1;\ \ \textcolor{comment}{//\ PLL\ listo}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00154}\mbox{\hyperlink{structICM20948__IntStatus_a0b7a43a154fb62938d5b72f6c4e7589b}{00154}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntStatus_a0b7a43a154fb62938d5b72f6c4e7589b}{dmpInt1}}\ \ \ \ :\ 1;\ \ \textcolor{comment}{//\ DMP\ generó\ interrupción}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00155}\mbox{\hyperlink{structICM20948__IntStatus_a76967ffcc1f2f78af326ec5997c4e46e}{00155}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntStatus_a76967ffcc1f2f78af326ec5997c4e46e}{i2cMstInt}}\ \ :\ 1;\ \ \textcolor{comment}{//\ I2C\ master\ generó\ interrupción}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00156}00156\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00157}00157\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_STATUS\_1\ (0x1A)\ -\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00158}\mbox{\hyperlink{structICM20948__IntStatus_a8662cbb6f261e560d0571467f4957bf0}{00158}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntStatus_a8662cbb6f261e560d0571467f4957bf0}{rawDataRdy}}\ :\ 1;\ \ \textcolor{comment}{//\ Datos\ de\ sensores\ listos\ para\ leer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00159}00159\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00160}00160\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_STATUS\_2\ (0x1B)\ -\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00161}\mbox{\hyperlink{structICM20948__IntStatus_a91ea9622426177697ad95043338f2096}{00161}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntStatus_a91ea9622426177697ad95043338f2096}{fifoOvf}}[5];\ \ \ \ \ \ \textcolor{comment}{//\ [0]–[4]:\ FIFO\ overflow\ por\ canal}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00162}00162\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00163}00163\ \ \ \textcolor{comment}{//\ -\/-\/-\/\ INT\_STATUS\_3\ (0x1C)\ -\/-\/-\/}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00164}\mbox{\hyperlink{structICM20948__IntStatus_ac11c6bb5cb949a957d5ae12de13039bf}{00164}}\ \ \ uint8\_t\ \mbox{\hyperlink{structICM20948__IntStatus_ac11c6bb5cb949a957d5ae12de13039bf}{fifoWm}}[5];\ \ \ \ \ \ \ \textcolor{comment}{//\ [0]–[4]:\ FIFO\ watermark\ por\ canal}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00165}00165\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00166}00166\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00167}00167\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00168}00168\ \textcolor{comment}{\ *\ Class}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00169}00169\ \textcolor{comment}{\ *\ -\/\ Manages\ ICM-\/20948\ over\ I2C\ (SPI\ path\ disabled\ in\ this\ cut)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00170}00170\ \textcolor{comment}{\ *\ -\/\ Caches\ scale\ factors\ for\ LSB-\/>physical\ conversions}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00171}00171\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00172}\mbox{\hyperlink{classDevLab__ICM20948}{00172}}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{classDevLab__ICM20948}{DevLab\_ICM20948}}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00173}00173\ \{}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00174}00174\ \textcolor{keyword}{public}:}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00175}00175\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00176}00176\ \ \ \mbox{\hyperlink{classDevLab__ICM20948_ad71f3c89c3edb515b8cfb3f4b3073e95}{DevLab\_ICM20948}}();}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00177}00177\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00178}00178\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00179}00179\ \textcolor{comment}{\ \ \ *\ beginI2C}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00180}00180\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00181}00181\ \textcolor{comment}{\ \ \ *\ -\/\ Initialize\ ICM20948\ using\ I2C\ interface}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00182}00182\ \textcolor{comment}{\ \ \ *\ -\/\ Sets\ up\ communication\ layer\ (Interface\ +\ BusIO)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00183}00183\ \textcolor{comment}{\ \ \ *\ -\/\ Verifies\ device\ identity\ (WHO\_AM\_I)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00184}00184\ \textcolor{comment}{\ \ \ *\ -\/\ Configures\ basic\ power\ and\ clock\ settings}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00185}00185\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00186}00186\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00187}00187\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Device\ initialized\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00188}00188\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Communication\ or\ configuration\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00189}00189\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00190}00190\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a91147b3cd4c45bffc8e024f985be7b21}{beginI2C}}(uint8\_t\ address\ =\ 0x69,\ TwoWire\ \&i2cPort\ =\ Wire,\ uint32\_t\ i2cSpeed\ =\ 400000);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00191}00191\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00192}00192\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a4386f310503153f3e28935cbdda75b18}{beginSPI}}(uint8\_t\ csPin,\ SPIClass\ \&spiPort\ =\ SPI,\ uint32\_t\ spiSpeed\ =\ 1000000);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00193}00193\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00194}00194\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00195}00195\ \textcolor{comment}{\ \ \ *\ readWhoAmI}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00196}00196\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00197}00197\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ WHO\_AM\_I\ register\ (device\ ID)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00198}00198\ \textcolor{comment}{\ \ \ *\ -\/\ Used\ during\ initialization\ to\ verify\ ICM20948}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00199}00199\ \textcolor{comment}{\ \ \ *\ -\/\ Expected\ value:\ 0xEA}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00200}00200\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00201}00201\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00202}00202\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00203}00203\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00204}00204\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00205}00205\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a8bef7eafb3b67eb736f491d0df453b9e}{readWhoAmI}}(uint8\_t\ \&whoAmI);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00206}00206\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00207}00207\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00208}00208\ \textcolor{comment}{\ \ \ *\ selectBank}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00209}00209\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00210}00210\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ (0–3)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00211}00211\ \textcolor{comment}{\ \ \ *\ -\/\ Used\ to\ access\ different\ register\ groups\ inside\ ICM20948}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00212}00212\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00213}00213\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00214}00214\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Bank\ switch\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00215}00215\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Write\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00216}00216\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00217}00217\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_aaa26fcbfea0e67d45cb1c3ae39654c55}{selectBank}}(uint8\_t\ bank);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00218}00218\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00219}00219\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00220}00220\ \textcolor{comment}{\ \ \ *\ softReset}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00221}00221\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00222}00222\ \textcolor{comment}{\ \ \ *\ -\/\ Perform\ software\ reset\ of\ ICM20948}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00223}00223\ \textcolor{comment}{\ \ \ *\ -\/\ Resets\ all\ internal\ registers\ to\ default\ state}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00224}00224\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00225}00225\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00226}00226\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 0}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00227}00227\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ DEVICE\_RESET\ bit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00228}00228\ \textcolor{comment}{\ \ \ *\ -\/\ Wait\ for\ device\ to\ restart}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00229}00229\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00230}00230\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00231}00231\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Reset\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00232}00232\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00233}00233\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00234}00234\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a0d6774b76298645ee45ec0e9065a8891}{softReset}}();}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00235}00235\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00236}00236\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00237}00237\ \textcolor{comment}{\ \ \ *\ sleep}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00238}00238\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00239}00239\ \textcolor{comment}{\ \ \ *\ -\/\ Enable\ or\ disable\ sleep\ mode}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00240}00240\ \textcolor{comment}{\ \ \ *\ -\/\ Maintains\ clock\ source\ (CLKSEL\ =\ 1)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00241}00241\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00242}00242\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00243}00243\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 0}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00244}00244\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ or\ clear\ SLEEP\ bit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00245}00245\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00246}00246\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00247}00247\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00248}00248\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00249}00249\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00250}00250\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a4210e842050486637a5967b2a9ef7b57}{sleep}}(\textcolor{keywordtype}{bool}\ en);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00251}00251\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00252}00252\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00253}00253\ \textcolor{comment}{\ \ \ *\ applyBasicDefaults}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00254}00254\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00255}00255\ \textcolor{comment}{\ \ \ *\ -\/\ Apply\ basic\ sensor\ configuration}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00256}00256\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ power,\ filters,\ ranges,\ and\ sampling\ rates}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00257}00257\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00258}00258\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00259}00259\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Configuration\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00260}00260\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Any\ register\ write\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00261}00261\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00262}00262\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a31460c48549b1d3081e253706f8b15e6}{applyBasicDefaults}}();}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00263}00263\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00264}00264\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00265}00265\ \textcolor{comment}{\ \ \ *\ readAccel}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00266}00266\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00267}00267\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ accelerometer\ data\ (X,\ Y,\ Z)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00268}00268\ \textcolor{comment}{\ \ \ *\ -\/\ Convert\ raw\ values\ to\ g\ using\ LSB\ scale}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00269}00269\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00270}00270\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00271}00271\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00272}00272\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Read\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00273}00273\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00274}00274\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a3b58edd0915cff118ca81daa6944a27b}{readAccel}}(\textcolor{keywordtype}{float}\ \&x,\ \textcolor{keywordtype}{float}\ \&y,\ \textcolor{keywordtype}{float}\ \&z);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00275}00275\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00276}00276\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00277}00277\ \textcolor{comment}{\ \ \ *\ readGyro}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00278}00278\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00279}00279\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ gyroscope\ data\ (X,\ Y,\ Z)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00280}00280\ \textcolor{comment}{\ \ \ *\ -\/\ Convert\ raw\ values\ to\ dps\ using\ LSB\ scale}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00281}00281\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00282}00282\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00283}00283\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00284}00284\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Read\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00285}00285\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00286}00286\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a006c131f860f1fc81c587b3d8a77522d}{readGyro}}(\textcolor{keywordtype}{float}\ \&x,\ \textcolor{keywordtype}{float}\ \&y,\ \textcolor{keywordtype}{float}\ \&z);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00287}00287\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00288}00288\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00289}00289\ \textcolor{comment}{\ \ \ *\ readTemperature}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00290}00290\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00291}00291\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ temperature\ sensor}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00292}00292\ \textcolor{comment}{\ \ \ *\ -\/\ Convert\ raw\ values\ to\ °C}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00293}00293\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00294}00294\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00295}00295\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00296}00296\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Read\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00297}00297\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00298}00298\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_aa5c2ecd855cebb1934bbbe020128ab5e}{readTemperature}}(\textcolor{keywordtype}{float}\ \&temperature);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00299}00299\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00300}00300\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00301}00301\ \textcolor{comment}{\ \ \ *\ readMag}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00302}00302\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00303}00303\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ magnetometer\ data\ via\ internal\ I2C\ master}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00304}00304\ \textcolor{comment}{\ \ \ *\ -\/\ Data\ comes\ from\ EXT\_SLV\_SENS\_DATA\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00305}00305\ \textcolor{comment}{\ \ \ *\ -\/\ Convert\ raw\ values\ to\ µT}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00306}00306\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00307}00307\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00308}00308\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00309}00309\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Read\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00310}00310\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00311}00311\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a9f9b29867c2b78efef3ef9688f886314}{readMag}}(\textcolor{keywordtype}{float}\ \&x,\ \textcolor{keywordtype}{float}\ \&y,\ \textcolor{keywordtype}{float}\ \&z);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00312}00312\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00313}00313\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00314}00314\ \textcolor{comment}{\ \ \ *\ initMag}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00315}00315\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00316}00316\ \textcolor{comment}{\ \ \ *\ -\/\ Initialize\ AK09916\ magnetometer\ using\ internal\ I2C\ master}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00317}00317\ \textcolor{comment}{\ \ \ *\ -\/\ Verifies\ WHO\_AM\_I\ and\ enables\ continuous\ mode}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00318}00318\ \textcolor{comment}{\ \ \ *\ -\/\ Configures\ SLV0\ for\ automatic\ data\ read}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00319}00319\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00320}00320\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00321}00321\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Initialization\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00322}00322\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00323}00323\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00324}00324\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a7b137192f8eb987cd221808c2c6c3561}{initMag}}();}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00325}00325\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00326}00326\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00327}00327\ \textcolor{comment}{\ \ \ *\ setMagOpMode}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00328}00328\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00329}00329\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ magnetometer\ operation\ mode}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00330}00330\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00331}00331\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00332}00332\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Mode\ set\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00333}00333\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Write\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00334}00334\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00335}00335\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a0882a30454b0716953f5f375613d24b3}{setMagOpMode}}(\mbox{\hyperlink{DevLab__ICM20948_8h_ad14b8d7e0be37ca0ccaf45ccc31c18bb}{ICM20948\_Op\_Mode}}\ \mbox{\hyperlink{mag__test_8ino_aab69c51478cd4dd7461938611ebc08bf}{opMode}});}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00336}00336\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00337}00337\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00338}00338\ \textcolor{comment}{\ \ \ *\ setLowPower}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00339}00339\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00340}00340\ \textcolor{comment}{\ \ \ *\ -\/\ Enable\ or\ disable\ low\ power\ mode}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00341}00341\ \textcolor{comment}{\ \ \ *\ -\/\ Controls\ LP\_EN\ bit\ in\ PWR\_MGMT\_1}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00342}00342\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00343}00343\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00344}00344\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00345}00345\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00346}00346\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00347}00347\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a6c9c09f8b2ab39f5de7f48c6c743ffc4}{setLowPower}}(\textcolor{keywordtype}{bool}\ enable);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00348}00348\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00349}00349\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00350}00350\ \textcolor{comment}{\ \ \ *\ getLowPower}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00351}00351\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00352}00352\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ low\ power\ mode\ status}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00353}00353\ \textcolor{comment}{\ \ \ *\ -\/\ Returns\ state\ of\ LP\_EN\ bit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00354}00354\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00355}00355\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00356}00356\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00357}00357\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00358}00358\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00359}00359\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a9832c13228e84e8ef74a631bfe1fdcd7}{getLowPower}}(\textcolor{keywordtype}{bool}\ \&enable);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00360}00360\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00361}00361\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00362}00362\ \textcolor{comment}{\ \ \ *\ setClock}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00363}00363\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00364}00364\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ clock\ source\ (CLKSEL\ [2:0])}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00365}00365\ \textcolor{comment}{\ \ \ *\ -\/\ Selects\ internal\ clock\ for\ sensor\ operation}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00366}00366\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00367}00367\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00368}00368\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00369}00369\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00370}00370\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00371}00371\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a18de038f48173c77483f4be1c04204d6}{setClock}}(\mbox{\hyperlink{DevLab__ICM20948_8h_a4f34ad1572aec922143a5ffa9420879a}{ICM20948\_Clock\_Source}}\ clock);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00372}00372\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00373}00373\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00374}00374\ \textcolor{comment}{\ \ \ *\ getClock}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00375}00375\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00376}00376\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ current\ clock\ source\ (CLKSEL\ [2:0])}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00377}00377\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00378}00378\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00379}00379\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00380}00380\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00381}00381\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00382}00382\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ac4585d35fd7444eee47ea7accd162b6d}{getClock}}(uint8\_t\ \&clock);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00383}00383\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00384}00384\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00385}00385\ \textcolor{comment}{\ \ \ *\ setGyroSampleRate}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00386}00386\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00387}00387\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ gyroscope\ sample\ rate}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00388}00388\ \textcolor{comment}{\ \ \ *\ -\/\ Uses\ internal\ divider\ (SRD)\ based\ on\ 1100\ Hz\ base\ rate}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00389}00389\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00390}00390\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00391}00391\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00392}00392\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Invalid\ input\ or\ write\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00393}00393\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00394}00394\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a70bbcf97fd1c211e2bea203a5039b1bb}{setGyroSampleRate}}(\textcolor{keywordtype}{float}\ sampleRate);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00395}00395\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00396}00396\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00397}00397\ \textcolor{comment}{\ \ \ *\ getGyroSampleRate}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00398}00398\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00399}00399\ \textcolor{comment}{\ \ \ *\ -\/\ Get\ current\ gyroscope\ sample\ rate}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00400}00400\ \textcolor{comment}{\ \ \ *\ -\/\ Computes\ value\ from\ divider\ register}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00401}00401\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00402}00402\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00403}00403\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00404}00404\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00405}00405\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00406}00406\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a721c6c8151230452abfc6c36814f63a7}{getGyroSampleRate}}(\textcolor{keywordtype}{float}\ \&sampleRate);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00407}00407\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a16cc9db132bb7a2b706275c9f5a03773}{setGyroDivRate}}(uint8\_t\ divisor);\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00408}00408\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00409}00409\ \textcolor{comment}{\ \ \ *\ setDLPF}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00410}00410\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00411}00411\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ gyroscope\ digital\ low-\/pass\ filter\ (DLPF)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00412}00412\ \textcolor{comment}{\ \ \ *\ -\/\ Option\ to\ bypass\ filter\ (full\ bandwidth)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00413}00413\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00414}00414\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00415}00415\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00416}00416\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00417}00417\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00418}00418\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a0bea2c662c285120253851c80289e077}{setDLPF}}(\mbox{\hyperlink{DevLab__ICM20948_8h_a9f4d08566440cf9c577724b075c59aa1}{ICM20948\_Gyro\_DLPF}}\ dlpf,\ \textcolor{keywordtype}{bool}\ bypass);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00419}00419\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00420}00420\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00421}00421\ \textcolor{comment}{\ \ \ *\ getDLPF}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00422}00422\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00423}00423\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ gyroscope\ DLPF\ configuration}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00424}00424\ \textcolor{comment}{\ \ \ *\ -\/\ Returns\ filter\ setting\ and\ bypass\ state}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00425}00425\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00426}00426\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00427}00427\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00428}00428\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00429}00429\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00430}00430\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ab5ef83d7268ee07da27e9cce74c94e46}{getDLPF}}(uint8\_t\ \&dlpf,\ \textcolor{keywordtype}{bool}\ \&bypass);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00431}00431\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00432}00432\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00433}00433\ \textcolor{comment}{\ \ \ *\ setGyroScale}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00434}00434\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00435}00435\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ gyroscope\ full-\/scale\ range\ (FS\_SEL)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00436}00436\ \textcolor{comment}{\ \ \ *\ -\/\ Controls\ sensitivity\ (dps\ range)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00437}00437\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00438}00438\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00439}00439\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00440}00440\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00441}00441\ \textcolor{comment}{\ \ \ *\ -\/\ Write\ FS\_SEL\ bits\ [2:1]}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00442}00442\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00443}00443\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00444}00444\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00445}00445\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00446}00446\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00447}00447\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a6a06dbd14558e50d40595de82502d632}{setGyroScale}}(\mbox{\hyperlink{DevLab__ICM20948_8h_a409a608f5c864bb503bf1a65b164de7d}{ICM20948\_Gyro\_FullScale}}\ fullScale);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00448}00448\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a7ae5665d5e835f8024df82f43bae46e7}{setGyroAveraging}}(\mbox{\hyperlink{DevLab__ICM20948_8h_a6b88764d5f92bd1ed524fdc1f8b87088}{ICM20948\_Gyro\_Average}}\ avg);\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00449}00449\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00450}00450\ \textcolor{comment}{\ \ \ *\ getGyroScale}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00451}00451\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00452}00452\ \textcolor{comment}{\ \ \ *\ -\/\ Get\ current\ gyroscope\ full-\/scale\ range\ (FS\_SEL}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00453}00453\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00454}00454\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00455}00455\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00456}00456\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00457}00457\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00458}00458\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a5e21409c747b1345884dd0d05720f37f}{getGyroScale}}(uint8\_t\ \&fullScale);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00459}00459\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00460}00460\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00461}00461\ \textcolor{comment}{\ \ \ *\ selfTestGyro}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00462}00462\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00463}00463\ \textcolor{comment}{\ \ \ *\ -\/\ Enable\ or\ disable\ gyroscope\ self-\/test\ per\ axis}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00464}00464\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00465}00465\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00466}00466\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00467}00467\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00468}00468\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00469}00469\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a9d7602ece2c3908e7bbb2acd45dff156}{selfTestGyro}}(\textcolor{keywordtype}{bool}\ x,\ \textcolor{keywordtype}{bool}\ y,\ \textcolor{keywordtype}{bool}\ z);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00470}00470\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00471}00471\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_aca0cb8da36b8e9128299b9aeb5bb60ec}{setAccelDivRate}}(uint16\_t\ divisor);\textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00472}00472\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00473}00473\ \textcolor{comment}{\ \ \ *\ setAccelSampleRate}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00474}00474\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00475}00475\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ accelerometer\ output\ data\ rate\ (ODR)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00476}00476\ \textcolor{comment}{\ \ \ *\ -\/\ Uses\ 1125\ Hz\ base\ rate\ with\ 12-\/bit\ divider}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00477}00477\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00478}00478\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00479}00479\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00480}00480\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00481}00481\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00482}00482\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_afe657b6e9d21f02dad2599ea04feefe2}{setAccelSampleRate}}(uint16\_t\ sampleRate);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00483}00483\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00484}00484\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00485}00485\ \textcolor{comment}{\ \ \ *\ getAccelSampleRate}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00486}00486\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00487}00487\ \textcolor{comment}{\ \ \ *\ -\/\ Get\ accelerometer\ output\ data\ rate\ (ODR)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00488}00488\ \textcolor{comment}{\ \ \ *\ -\/\ Computes\ value\ from\ divider\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00489}00489\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00490}00490\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00491}00491\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00492}00492\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00493}00493\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00494}00494\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a9f2da1c80e24d06ae0a0561eb850d8d9}{getAccelSampleRate}}(\textcolor{keywordtype}{float}\ \&sampleRate);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00495}00495\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00496}00496\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00497}00497\ \textcolor{comment}{\ \ \ *\ selfTestAccel}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00498}00498\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00499}00499\ \textcolor{comment}{\ \ \ *\ -\/\ Enable\ or\ disable\ accelerometer\ self-\/test\ per\ axis}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00500}00500\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00501}00501\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00502}00502\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00503}00503\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00504}00504\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00505}00505\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_adfbd409c7723007d208c82550098a649}{selfTestAccel}}(\textcolor{keywordtype}{bool}\ x,\ \textcolor{keywordtype}{bool}\ y,\ \textcolor{keywordtype}{bool}\ z);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00506}00506\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00507}00507\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00508}00508\ \textcolor{comment}{\ \ \ *\ setAccelScale}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00509}00509\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00510}00510\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ accelerometer\ full-\/scale\ range\ (FS\_SEL)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00511}00511\ \textcolor{comment}{\ \ \ *\ -\/\ Controls\ measurement\ range\ (±2g,\ ±4g,\ ±8g,\ ±16g)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00512}00512\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00513}00513\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00514}00514\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00515}00515\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00516}00516\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00517}00517\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a1a2aa0019d5e1c6ba8ce4a3c1d9fcb43}{setAccelScale}}(\mbox{\hyperlink{DevLab__ICM20948_8h_a7d56bdd11158e2d05da5c9317fadee05}{ICM20948\_Accel\_FullScale}}\ fullScale);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00518}00518\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00519}00519\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00520}00520\ \textcolor{comment}{\ \ \ *\ getAccelScale}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00521}00521\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00522}00522\ \textcolor{comment}{\ \ \ *\ -\/\ Get\ current\ accelerometer\ full-\/scale\ range\ (FS\_SEL)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00523}00523\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00524}00524\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00525}00525\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00526}00526\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00527}00527\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00528}00528\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ace42a35300e82402626ce89eb8958e5f}{getAccelScale}}(uint8\_t\ \&fullScale);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00529}00529\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00530}00530\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00531}00531\ \textcolor{comment}{\ \ \ *\ setAccelDLPF}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00532}00532\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00533}00533\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ accelerometer\ digital\ low-\/pass\ filter\ (DLPF)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00534}00534\ \textcolor{comment}{\ \ \ *\ -\/\ Option\ to\ bypass\ filter\ (full\ bandwidth)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00535}00535\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00536}00536\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00537}00537\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00538}00538\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00539}00539\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ or\ clear\ bypass\ bit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00540}00540\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ DLPF\ bits\ if\ not\ bypassed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00541}00541\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00542}00542\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00543}00543\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00544}00544\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00545}00545\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00546}00546\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ac52d80aad738b90aa0f05e9d6404bb85}{setAccelDLPF}}(uint8\_t\ dlpf,\ \textcolor{keywordtype}{bool}\ bypass);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00547}00547\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00548}00548\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00549}00549\ \textcolor{comment}{\ \ \ *\ getAccelDLPF}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00550}00550\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00551}00551\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ accelerometer\ DLPF\ configuration}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00552}00552\ \textcolor{comment}{\ \ \ *\ -\/\ Returns\ filter\ setting\ and\ bypass\ state}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00553}00553\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00554}00554\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00555}00555\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00556}00556\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00557}00557\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ ACCEL\_CONFIG\ register}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00558}00558\ \textcolor{comment}{\ \ \ *\ -\/\ Extract\ bypass\ and\ DLPF\ bits}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00559}00559\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00560}00560\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00561}00561\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00562}00562\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00563}00563\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00564}00564\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a95dae0d8f84175c0175e65b9981d86f9}{getAccelDLPF}}(uint8\_t\ \&dlpf,\ \textcolor{keywordtype}{bool}\ \&bypass);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00565}00565\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00566}00566\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00567}00567\ \textcolor{comment}{\ \ \ *\ setAccelAveraging}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00568}00568\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00569}00569\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ accelerometer\ averaging\ /\ decimation\ (DEC3)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00570}00570\ \textcolor{comment}{\ \ \ *\ -\/\ Controls\ internal\ averaging\ of\ accel\ samples}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00571}00571\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00572}00572\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00573}00573\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00574}00574\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00575}00575\ \textcolor{comment}{\ \ \ *\ -\/\ Write\ DEC3\ bits\ [1:0]}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00576}00576\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00577}00577\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00578}00578\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00579}00579\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00580}00580\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00581}00581\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a619f82390347cc173d1604d4d711b537}{setAccelAveraging}}(\mbox{\hyperlink{DevLab__ICM20948_8h_a792c56c75cabcab23c273bd9a48aefa9}{ICM20948\_Accel\_Average}}\ avg);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00582}00582\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00583}00583\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00584}00584\ \textcolor{comment}{\ \ \ *\ getAccelAveraging}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00585}00585\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00586}00586\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ accelerometer\ averaging\ /\ decimation\ setting\ (DEC3)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00587}00587\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00588}00588\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00589}00589\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00590}00590\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00591}00591\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ DEC3\ bits\ [1:0]}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00592}00592\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00593}00593\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00594}00594\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00595}00595\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00596}00596\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00597}00597\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ae356f6810b038f90e706bd288bb79d19}{getAccelAveraging}}(uint8\_t\ \&avg);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00598}00598\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00599}00599\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00600}00600\ \textcolor{comment}{\ \ \ *\ setSensors}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00601}00601\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00602}00602\ \textcolor{comment}{\ \ \ *\ -\/\ Enable\ or\ disable\ accel,\ gyro,\ and\ temperature\ sensor}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00603}00603\ \textcolor{comment}{\ \ \ *\ -\/\ Controls\ power\ gating\ via\ PWR\_MGMT\_2\ and\ TEMP\_DIS}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00604}00604\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00605}00605\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00606}00606\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00607}00607\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 0}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00608}00608\ \textcolor{comment}{\ \ \ *\ -\/\ Build\ PWR\_MGMT\_2\ mask}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00609}00609\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ temperature\ enable/disable}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00610}00610\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00611}00611\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00612}00612\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00613}00613\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00614}00614\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00615}00615\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ae9c088334d6ec706bb08b47ef29bd186}{setSensors}}(\textcolor{keywordtype}{bool}\ accel\_on,\ \textcolor{keywordtype}{bool}\ gyro\_on,\ \textcolor{keywordtype}{bool}\ temp\_on);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00616}00616\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00617}00617\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00618}00618\ \textcolor{comment}{\ \ \ *\ getSensors}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00619}00619\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00620}00620\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ accel,\ gyro,\ and\ temperature\ enable\ state}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00621}00621\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00622}00622\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00623}00623\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00624}00624\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 0}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00625}00625\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ PWR\_MGMT\_2\ register}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00626}00626\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ TEMP\_DIS\ bit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00627}00627\ \textcolor{comment}{\ \ \ *\ -\/\ Decode\ enable\ states}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00628}00628\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00629}00629\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00630}00630\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00631}00631\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00632}00632\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00633}00633\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a8b3768ede281b8aa65900b1db8a7a7c7}{getSensors}}(\textcolor{keywordtype}{bool}\ \&accel\_on,\ \textcolor{keywordtype}{bool}\ \&gyro\_on,\ \textcolor{keywordtype}{bool}\ \&temp\_on);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00634}00634\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00635}00635\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00636}00636\ \textcolor{comment}{\ \ \ *\ setGyroOffset}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00637}00637\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00638}00638\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ gyroscope\ offset\ values\ for\ X,\ Y,\ Z\ axes}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00639}00639\ \textcolor{comment}{\ \ \ *\ -\/\ Writes\ offset\ registers\ in\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00640}00640\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00641}00641\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00642}00642\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00643}00643\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00644}00644\ \textcolor{comment}{\ \ \ *\ -\/\ Pack\ offsets\ into\ byte\ array}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00645}00645\ \textcolor{comment}{\ \ \ *\ -\/\ Write\ to\ offset\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00646}00646\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00647}00647\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00648}00648\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00649}00649\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00650}00650\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00651}00651\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a631e6298058a3c54f1c02bae5cf8db54}{setGyroOffset}}(uint16\_t\ offsetX,\ uint16\_t\ offsetY,\ uint16\_t\ offsetZ);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00652}00652\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00653}00653\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00654}00654\ \textcolor{comment}{\ \ \ *\ getGyroOffset}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00655}00655\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00656}00656\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ gyroscope\ offset\ values\ for\ X,\ Y,\ Z\ axes}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00657}00657\ \textcolor{comment}{\ \ \ *\ -\/\ Reads\ offset\ registers\ from\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00658}00658\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00659}00659\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00660}00660\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00661}00661\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 2}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00662}00662\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ offset\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00663}00663\ \textcolor{comment}{\ \ \ *\ -\/\ Convert\ to\ signed\ values}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00664}00664\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00665}00665\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00666}00666\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00667}00667\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00668}00668\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00669}00669\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a3d407a299b73a9d6da88f724bcca0a36}{getGyroOffset}}(int16\_t\ \&offsetX,\ int16\_t\ \&offsetY,\ int16\_t\ \&offsetZ);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00670}00670\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00671}00671\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00672}00672\ \textcolor{comment}{\ \ \ *\ setAccelOffset}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00673}00673\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00674}00674\ \textcolor{comment}{\ \ \ *\ -\/\ Set\ accelerometer\ offset\ values\ for\ X,\ Y,\ Z\ axes}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00675}00675\ \textcolor{comment}{\ \ \ *\ -\/\ Writes\ offset\ registers\ in\ USER\ BANK\ 1}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00676}00676\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00677}00677\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00678}00678\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00679}00679\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 1}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00680}00680\ \textcolor{comment}{\ \ \ *\ -\/\ Pack\ offsets\ into\ byte\ array}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00681}00681\ \textcolor{comment}{\ \ \ *\ -\/\ Write\ to\ offset\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00682}00682\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00683}00683\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00684}00684\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Operation\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00685}00685\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00686}00686\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00687}00687\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a7c150c665140086d7937fa4b2f39cd45}{setAccelOffset}}(int16\_t\ offsetX,\ int16\_t\ offsetY,\ int16\_t\ offsetZ);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00688}00688\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00689}00689\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00690}00690\ \textcolor{comment}{\ \ \ *\ getAccelOffset}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00691}00691\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00692}00692\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ accelerometer\ offset\ values\ for\ X,\ Y,\ Z\ axes}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00693}00693\ \textcolor{comment}{\ \ \ *\ -\/\ Reads\ offset\ registers\ from\ USER\ BANK\ 1}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00694}00694\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00695}00695\ \textcolor{comment}{\ \ \ *\ Flow:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00696}00696\ \textcolor{comment}{\ \ \ *\ -\/\ Validate\ bus\ pointer}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00697}00697\ \textcolor{comment}{\ \ \ *\ -\/\ Select\ USER\ BANK\ 1}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00698}00698\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ offset\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00699}00699\ \textcolor{comment}{\ \ \ *\ -\/\ Convert\ to\ signed\ values}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00700}00700\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00701}00701\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00702}00702\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00703}00703\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00704}00704\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00705}00705\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ae4beff71dc469940c9ba561d57f04ec7}{getAccelOffset}}(int16\_t\ \&offsetX,\ int16\_t\ \&offsetY,\ int16\_t\ \&offsetZ);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00706}00706\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00707}00707\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00708}00708\ \textcolor{comment}{\ \ \ *\ intInit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00709}00709\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00710}00710\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ the\ physical\ behavior\ of\ the\ INT\ pin\ (INT\_PIN\_CFG\ register,\ BANK\ 0)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00711}00711\ \textcolor{comment}{\ \ \ *\ -\/\ Sets\ active\ level,\ drive\ mode\ (push-\/pull\ /\ open-\/drain),\ latch\ vs\ pulse\ mode,}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00712}00712\ \textcolor{comment}{\ \ \ *\ \ \ clear\ condition,\ FSYNC\ level,\ FSYNC\ interrupt\ enable,\ and\ I2C\ bypass}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00713}00713\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00714}00714\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00715}00715\ \textcolor{comment}{\ \ \ *\ -\/\ cfg:\ ICM20948\_IntPinConfig\ struct\ with\ the\ desired\ pin\ settings}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00716}00716\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00717}00717\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00718}00718\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Configuration\ written\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00719}00719\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00720}00720\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00721}00721\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ab011f71e9466a0e1e8245638f81b0f43}{intInit}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{structICM20948__IntPinConfig}{ICM20948\_IntPinConfig}}\ \&cfg);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00722}00722\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00723}00723\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00724}00724\ \textcolor{comment}{\ \ \ *\ intEnableConfig}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00725}00725\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00726}00726\ \textcolor{comment}{\ \ \ *\ -\/\ Enable\ or\ disable\ individual\ interrupt\ sources\ routed\ to\ the\ INT\ pin}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00727}00727\ \textcolor{comment}{\ \ \ *\ -\/\ Writes\ INT\_ENABLE\ (0x10),\ INT\_ENABLE\_1\ (0x11),\ INT\_ENABLE\_2\ (0x12),}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00728}00728\ \textcolor{comment}{\ \ \ *\ \ \ and\ INT\_ENABLE\_3\ (0x13)\ in\ BANK\ 0}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00729}00729\ \textcolor{comment}{\ \ \ *\ -\/\ Must\ call\ intInit()\ first\ to\ configure\ the\ pin\ electrical\ behavior}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00730}00730\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00731}00731\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00732}00732\ \textcolor{comment}{\ \ \ *\ -\/\ cfg:\ ICM20948\_IntEnableConfig\ struct\ with\ the\ desired\ interrupt\ sources\ enabled}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00733}00733\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00734}00734\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00735}00735\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ All\ four\ registers\ written\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00736}00736\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00737}00737\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00738}00738\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a3c5db22058479806072167f2c15319c7}{intEnableConfig}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{structICM20948__IntEnableConfig}{ICM20948\_IntEnableConfig}}\ \&cfg);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00739}00739\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00740}00740\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00741}00741\ \textcolor{comment}{\ \ \ *\ checkIntStatus}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00742}00742\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00743}00743\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ and\ parse\ all\ four\ interrupt\ status\ registers\ in\ a\ single\ burst\ read}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00744}00744\ \textcolor{comment}{\ \ \ *\ -\/\ Covers\ INT\_STATUS\ (0x19),\ INT\_STATUS\_1\ (0x1A),\ INT\_STATUS\_2\ (0x1B),}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00745}00745\ \textcolor{comment}{\ \ \ *\ \ \ INT\_STATUS\_3\ (0x1C)\ from\ BANK\ 0}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00746}00746\ \textcolor{comment}{\ \ \ *\ -\/\ Reading\ clears\ the\ interrupt\ flags\ when\ clearMode\ =\ 0\ in\ ICM20948\_IntPinConfig}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00747}00747\ \textcolor{comment}{\ \ \ *\ -\/\ Typically\ called\ inside\ the\ INT\ pin\ ISR\ or\ polled\ in\ the\ main\ loop}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00748}00748\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00749}00749\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00750}00750\ \textcolor{comment}{\ \ \ *\ -\/\ status:\ ICM20948\_IntStatus\ struct\ populated\ with\ the\ current\ interrupt\ flags}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00751}00751\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00752}00752\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00753}00753\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Status\ read\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00754}00754\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00755}00755\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00756}00756\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a61f65c00baf13e2cd69eee7cb6688720}{checkIntStatus}}(\mbox{\hyperlink{structICM20948__IntStatus}{ICM20948\_IntStatus}}\ \&status);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00757}00757\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00758}00758\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00759}00759\ \textcolor{comment}{\ \ \ *\ auxMasterEnable}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00760}00760\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00761}00761\ \textcolor{comment}{\ \ \ *\ -\/\ Enable\ the\ ICM20948\ internal\ I2C\ master\ for\ auxiliary\ bus}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00762}00762\ \textcolor{comment}{\ \ \ *\ -\/\ Clears\ BYPASS\_EN\ so\ the\ aux\ bus\ is\ controlled\ by\ the\ ICM}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00763}00763\ \textcolor{comment}{\ \ \ *\ -\/\ Sets\ I2C\_MST\_EN\ in\ USER\_CTRL}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00764}00764\ \textcolor{comment}{\ \ \ *\ -\/\ Configures\ auxiliary\ master\ clock\ frequency}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00765}00765\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00766}00766\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00767}00767\ \textcolor{comment}{\ \ \ *\ -\/\ clkFreq:\ clock\ divider\ value\ (e.g.\ 0x07\ ≈\ 345.6\ kHz,\ 0x0D\ ≈\ 400\ kHz)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00768}00768\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00769}00769\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00770}00770\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Master\ enabled\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00771}00771\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00772}00772\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00773}00773\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_aab027c72832d1c7ec722187e6a64796a}{auxMasterEnable}}(uint8\_t\ clkFreq);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00774}00774\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00775}00775\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00776}00776\ \textcolor{comment}{\ \ \ *\ auxWriteByte}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00777}00777\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00778}00778\ \textcolor{comment}{\ \ \ *\ -\/\ Write\ a\ single\ byte\ to\ a\ register\ of\ an\ auxiliary\ I2C\ slave\ via\ SLV4}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00779}00779\ \textcolor{comment}{\ \ \ *\ -\/\ Uses\ one-\/shot\ SLV4\ transaction:\ polls\ SLV4\_DONE,\ checks\ for\ NACK}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00780}00780\ \textcolor{comment}{\ \ \ *\ -\/\ Suitable\ for\ configuration\ writes\ (not\ continuous\ streaming)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00781}00781\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00782}00782\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00783}00783\ \textcolor{comment}{\ \ \ *\ -\/\ slaveAddr:\ 7-\/bit\ I2C\ address\ of\ the\ auxiliary\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00784}00784\ \textcolor{comment}{\ \ \ *\ -\/\ reg:\ \ \ \ \ \ \ target\ register\ address\ on\ the\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00785}00785\ \textcolor{comment}{\ \ \ *\ -\/\ data:\ \ \ \ \ \ byte\ to\ write}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00786}00786\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00787}00787\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00788}00788\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Write\ acknowledged\ by\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00789}00789\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Timeout\ or\ NACK}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00790}00790\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00791}00791\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a1079d6d89e4bda1f496cce90a820e102}{auxWriteByte}}(uint8\_t\ slaveAddr,\ uint8\_t\ reg,\ uint8\_t\ data);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00792}00792\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00793}00793\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00794}00794\ \textcolor{comment}{\ \ \ *\ auxReadByte}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00795}00795\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00796}00796\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ a\ single\ byte\ from\ a\ register\ of\ an\ auxiliary\ I2C\ slave\ via\ SLV4}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00797}00797\ \textcolor{comment}{\ \ \ *\ -\/\ Generates\ a\ combined\ write-\/then-\/read\ transaction\ (reg\ byte\ +\ repeated\ START)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00798}00798\ \textcolor{comment}{\ \ \ *\ -\/\ Suitable\ for\ slaves\ that\ follow\ standard\ I2C\ register-\/read\ protocol}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00799}00799\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00800}00800\ \textcolor{comment}{\ \ \ *\ Note:\ slaves\ that\ need\ separate\ write/read\ transactions\ (e.g.\ command-\/response}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00801}00801\ \textcolor{comment}{\ \ \ *\ firmware)\ should\ use\ auxWriteCommand\ +\ auxReadResponse\ instead.}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00802}00802\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00803}00803\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00804}00804\ \textcolor{comment}{\ \ \ *\ -\/\ slaveAddr:\ 7-\/bit\ I2C\ address\ of\ the\ auxiliary\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00805}00805\ \textcolor{comment}{\ \ \ *\ -\/\ reg:\ \ \ \ \ \ \ register\ address\ to\ read\ from}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00806}00806\ \textcolor{comment}{\ \ \ *\ -\/\ data:\ \ \ \ \ \ output\ byte\ received\ from\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00807}00807\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00808}00808\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00809}00809\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00810}00810\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Timeout\ or\ NACK}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00811}00811\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00812}00812\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a1b8cce13fe757b1b3a61f8437766d7eb}{auxReadByte}}(uint8\_t\ slaveAddr,\ uint8\_t\ reg,\ uint8\_t\ \&data);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00813}00813\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00814}00814\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00815}00815\ \textcolor{comment}{\ \ \ *\ auxWriteCommand}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00816}00816\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00817}00817\ \textcolor{comment}{\ \ \ *\ -\/\ Send\ a\ single\ command\ byte\ to\ an\ auxiliary\ I2C\ slave\ via\ SLV4}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00818}00818\ \textcolor{comment}{\ \ \ *\ -\/\ Uses\ REG\_DIS:\ generates\ [START,\ addr+W,\ cmd\_byte,\ STOP]\ with\ no\ register\ prefix}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00819}00819\ \textcolor{comment}{\ \ \ *\ -\/\ Designed\ for\ slaves\ that\ use\ a\ command-\/response\ protocol\ (no\ register\ addressing)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00820}00820\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00821}00821\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00822}00822\ \textcolor{comment}{\ \ \ *\ -\/\ slaveAddr:\ 7-\/bit\ I2C\ address\ of\ the\ auxiliary\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00823}00823\ \textcolor{comment}{\ \ \ *\ -\/\ cmd:\ \ \ \ \ \ \ command\ byte\ to\ send}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00824}00824\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00825}00825\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00826}00826\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Command\ acknowledged\ by\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00827}00827\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Timeout\ or\ NACK}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00828}00828\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00829}00829\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ac2a1cdaf078cac71e14e0629925a7808}{auxWriteCommand}}(uint8\_t\ slaveAddr,\ uint8\_t\ cmd);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00830}00830\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00831}00831\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00832}00832\ \textcolor{comment}{\ \ \ *\ auxConfigSlave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00833}00833\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00834}00834\ \textcolor{comment}{\ \ \ *\ -\/\ Configure\ SLV0\ for\ automatic\ periodic\ reads\ from\ an\ auxiliary\ I2C\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00835}00835\ \textcolor{comment}{\ \ \ *\ -\/\ The\ ICM20948\ master\ will\ read\ numBytes\ starting\ at\ reg\ on\ every\ ODR\ cycle}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00836}00836\ \textcolor{comment}{\ \ \ *\ -\/\ Data\ is\ deposited\ into\ EXT\_SLV\_SENS\_DATA\_00\ and\ subsequent\ registers}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00837}00837\ \textcolor{comment}{\ \ \ *\ -\/\ Call\ once\ during\ initialization;\ read\ results\ with\ auxReadSensorData}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00838}00838\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00839}00839\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00840}00840\ \textcolor{comment}{\ \ \ *\ -\/\ slaveAddr:\ 7-\/bit\ I2C\ address\ of\ the\ auxiliary\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00841}00841\ \textcolor{comment}{\ \ \ *\ -\/\ reg:\ \ \ \ \ \ \ starting\ register\ address\ to\ read\ from\ on\ the\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00842}00842\ \textcolor{comment}{\ \ \ *\ -\/\ numBytes:\ \ number\ of\ bytes\ to\ read\ per\ cycle\ (1–15)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00843}00843\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00844}00844\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00845}00845\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ SLV0\ configured\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00846}00846\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Operation\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00847}00847\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00848}00848\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_ab8336307b4096237d701d989d1f5e619}{auxConfigSlave}}(uint8\_t\ slaveAddr,\ uint8\_t\ reg,\ uint8\_t\ numBytes);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00849}00849\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00850}00850\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00851}00851\ \textcolor{comment}{\ \ \ *\ auxReadSensorData}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00852}00852\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00853}00853\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ bytes\ from\ EXT\_SLV\_SENS\_DATA\ registers\ (BANK\ 0)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00854}00854\ \textcolor{comment}{\ \ \ *\ -\/\ Returns\ data\ collected\ by\ the\ ICM20948\ master\ from\ SLV0–SLV3\ on\ the\ last\ cycle}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00855}00855\ \textcolor{comment}{\ \ \ *\ -\/\ Must\ call\ auxConfigSlave\ first\ to\ set\ up\ the\ automatic\ read}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00856}00856\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00857}00857\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00858}00858\ \textcolor{comment}{\ \ \ *\ -\/\ buf:\ output\ buffer\ to\ store\ the\ received\ bytes}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00859}00859\ \textcolor{comment}{\ \ \ *\ -\/\ len:\ number\ of\ bytes\ to\ read\ (must\ match\ numBytes\ configured\ in\ auxConfigSlave)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00860}00860\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00861}00861\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00862}00862\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00863}00863\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Bus\ error}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00864}00864\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00865}00865\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a8f47c9f63642c35e5b5656e720667566}{auxReadSensorData}}(uint8\_t\ *buf,\ uint8\_t\ len);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00866}00866\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00867}00867\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00868}00868\ \textcolor{comment}{\ \ \ *\ auxReadResponse}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00869}00869\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00870}00870\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ a\ single\ response\ byte\ from\ an\ auxiliary\ I2C\ slave\ via\ SLV4}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00871}00871\ \textcolor{comment}{\ \ \ *\ -\/\ Generates\ a\ pure\ read\ transaction:\ [START,\ addr+R,\ 1\ byte,\ STOP]}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00872}00872\ \textcolor{comment}{\ \ \ *\ -\/\ No\ register\ byte\ is\ sent\ (REG\_DIS);\ slave\ must\ already\ be\ ready\ to\ transmit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00873}00873\ \textcolor{comment}{\ \ \ *\ -\/\ Use\ after\ auxWriteCommand\ to\ complete\ a\ command-\/response\ exchange\ with\ slaves}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00874}00874\ \textcolor{comment}{\ \ \ *\ \ \ that\ require\ separate\ write\ and\ read\ transactions\ (e.g.\ PY32F0\ firmware\ slaves)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00875}00875\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00876}00876\ \textcolor{comment}{\ \ \ *\ Parameters:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00877}00877\ \textcolor{comment}{\ \ \ *\ -\/\ slaveAddr:\ 7-\/bit\ I2C\ address\ of\ the\ auxiliary\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00878}00878\ \textcolor{comment}{\ \ \ *\ -\/\ data:\ \ \ \ \ \ output\ byte\ received\ from\ slave}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00879}00879\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00880}00880\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00881}00881\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Response\ received\ successfully}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00882}00882\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Timeout\ or\ NACK}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00883}00883\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00884}00884\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a57d37173d6d5c54ab4c7027dfdd3a78f}{auxReadResponse}}(uint8\_t\ slaveAddr,\ uint8\_t\ \&data);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00885}00885\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00886}00886\ \textcolor{comment}{\ \ /**}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00887}00887\ \textcolor{comment}{\ \ \ *\ auxRead12bit}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00888}00888\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00889}00889\ \textcolor{comment}{\ \ \ *\ -\/\ Read\ a\ 12-\/bit\ value\ previously\ configured\ via\ auxConfigSlave\ (SLV0,\ numBytes\ =\ 2)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00890}00890\ \textcolor{comment}{\ \ \ *\ -\/\ Assumes\ little-\/endian\ packing:\ first\ byte\ =\ LSB,\ second\ byte\ =\ MSB}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00891}00891\ \textcolor{comment}{\ \ \ *\ -\/\ Result\ is\ masked\ to\ 12\ bits\ (0-\/4095)}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00892}00892\ \textcolor{comment}{\ \ \ *}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00893}00893\ \textcolor{comment}{\ \ \ *\ Returns:}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00894}00894\ \textcolor{comment}{\ \ \ *\ -\/\ true\ \ →\ Read\ successful}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00895}00895\ \textcolor{comment}{\ \ \ *\ -\/\ false\ →\ Read\ failed}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00896}00896\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00897}00897\ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{classDevLab__ICM20948_a357d1315ecc5a649ac4ce6b31cb47e7a}{auxRead12bit}}(uint16\_t\ \&raw);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00898}00898\ \textcolor{keyword}{private}:}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00899}00899\ \ \ \mbox{\hyperlink{classI2C__Interface}{I2C\_Interface}}\ i2c;}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00900}00900\ \ \ \mbox{\hyperlink{classSPI__Interface}{SPI\_Interface}}\ spi;}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00901}00901\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00902}00902\ \ \ \mbox{\hyperlink{classInterface__7Semi}{Interface\_7Semi}}\ *iface\ =\ \textcolor{keyword}{nullptr};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00903}00903\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00904}00904\ \ \ \mbox{\hyperlink{classBusIO__7Semi}{BusIO\_7Semi<Interface\_7Semi>}}\ *bus\ =\ \textcolor{keyword}{nullptr};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00905}00905\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00906}00906\ \ \ \textcolor{keywordtype}{float}\ mg\_per\_lsb\ =\ 16384.0f;\ \ \ \ \ \ \ \ \textcolor{comment}{//\ LSB/g\ at\ ±16g}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00907}00907\ \ \ \textcolor{keywordtype}{float}\ degree\_per\_second\ =\ 131.072f;\ \textcolor{comment}{//\ LSB/dps\ at\ ±2000\ dps}}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00908}00908\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00909}00909\ \ \ \textcolor{keywordtype}{bool}\ writeSlave4(uint8\_t\ reg,\ uint8\_t\ value);\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00910}00910\ \ \ \textcolor{keywordtype}{bool}\ readSlave4(uint8\_t\ reg,\ uint8\_t\ \&value);}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00911}00911\ \};}
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00912}00912\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00913}00913\ }
\DoxyCodeLine{\Hypertarget{DevLab__ICM20948_8h_source_l00914}00914\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*\ ICM20948\_DEVLAB\_H\ */}\textcolor{preprocessor}{}}

\end{DoxyCode}
