mirror of
https://github.com/iNavFlight/inav.git
synced 2025-07-23 16:25:26 +03:00
Add ZeroFArray Macro and make use of it in some parts
This commit is contained in:
parent
c30025b9fc
commit
59d81d6f6f
8 changed files with 13 additions and 12 deletions
|
@ -22,6 +22,7 @@
|
|||
|
||||
#define ARRAYLEN(x) (sizeof(x) / sizeof((x)[0]))
|
||||
#define ARRAYEND(x) (&(x)[ARRAYLEN(x)])
|
||||
#define ZERO_FARRAY(a) memset(a, 0, sizeof(a))
|
||||
|
||||
#define CONST_CAST(type, value) ((type)(value))
|
||||
|
||||
|
@ -92,9 +93,9 @@ static inline int32_t cmp32(uint32_t a, uint32_t b) { return a-b; }
|
|||
#ifdef UNIT_TEST
|
||||
// Call memcpy when building unittest - this is easier that asm symbol name mangling (symbols start with _underscore on win32)
|
||||
#include <string.h>
|
||||
static inline void memcpy_fn ( void * destination, const void * source, size_t num ) { memcpy(destination, source, num); };
|
||||
static inline void memcpy_fn(void *destination, const void *source, size_t num) { memcpy(destination, source, num); };
|
||||
#else
|
||||
void * memcpy_fn ( void * destination, const void * source, size_t num ) asm("memcpy");
|
||||
void *memcpy_fn(void *destination, const void *source, size_t num) asm("memcpy");
|
||||
#endif
|
||||
|
||||
#if __GNUC__ > 6
|
||||
|
|
|
@ -41,7 +41,7 @@ int config_streamer_impl_write_word(config_streamer_t *c, config_streamer_buffer
|
|||
}
|
||||
|
||||
if (c->address == (uintptr_t)&eepromData[0]) {
|
||||
memset(eepromData, 0, sizeof(eepromData));
|
||||
ZERO_FARRAY(eepromData);
|
||||
}
|
||||
|
||||
config_streamer_buffer_align_type_t *destAddr = (config_streamer_buffer_align_type_t *)c->address;
|
||||
|
|
|
@ -261,7 +261,7 @@ static pwmOutputPort_t * motorConfigDshot(const timerHardware_t * timerHardware,
|
|||
// Configure timer DMA
|
||||
if (timerPWMConfigChannelDMA(port->tch, port->dmaBuffer, sizeof(port->dmaBuffer[0]), DSHOT_DMA_BUFFER_SIZE)) {
|
||||
// Only mark as DSHOT channel if DMA was set successfully
|
||||
memset(port->dmaBuffer, 0, sizeof(port->dmaBuffer));
|
||||
ZERO_FARRAY(port->dmaBuffer);
|
||||
port->configured = true;
|
||||
}
|
||||
|
||||
|
|
|
@ -4059,7 +4059,7 @@ void cliProcess(void)
|
|||
bufferIndex = 0;
|
||||
}
|
||||
|
||||
memset(cliBuffer, 0, sizeof(cliBuffer));
|
||||
ZERO_FARRAY(cliBuffer);
|
||||
|
||||
// 'exit' will reset this flag, so we don't need to print prompt again
|
||||
if (!cliMode)
|
||||
|
|
|
@ -350,7 +350,7 @@ void initActiveBoxIds(void)
|
|||
void packBoxModeFlags(boxBitmask_t * mspBoxModeFlags)
|
||||
{
|
||||
uint8_t activeBoxes[CHECKBOX_ITEM_COUNT];
|
||||
memset(activeBoxes, 0, sizeof(activeBoxes));
|
||||
ZERO_FARRAY(activeBoxes);
|
||||
|
||||
// Serialize the flags in the order we delivered them, ignoring BOXNAMES and BOXINDEXES
|
||||
// Requires new Multiwii protocol version to fix
|
||||
|
|
|
@ -203,7 +203,7 @@ static void vtxProtoSend(uint8_t cmd, const uint8_t * data)
|
|||
memcpy(vtxState.sendPkt.data, data, sizeof(vtxState.sendPkt.data));
|
||||
}
|
||||
else {
|
||||
memset(vtxState.sendPkt.data, 0, sizeof(vtxState.sendPkt.data));
|
||||
ZERO_FARRAY(vtxState.sendPkt.data);
|
||||
}
|
||||
|
||||
vtxState.sendPkt.checksum = vtxCalcChecksum(&vtxState.sendPkt);
|
||||
|
|
|
@ -346,7 +346,7 @@ static void sendSMS(void)
|
|||
uint16_t avgSpeed = lrintf(10 * calculateAverageSpeed());
|
||||
uint32_t now = millis();
|
||||
|
||||
memset(pluscode_url, 0, sizeof(pluscode_url));
|
||||
ZERO_FARRAY(pluscode_url);
|
||||
|
||||
if (sensors(SENSOR_GPS) && STATE(GPS_FIX)) {
|
||||
groundSpeed = gpsSol.groundSpeed / 100;
|
||||
|
|
|
@ -10,7 +10,7 @@ extern "C" {
|
|||
TEST(BitArrayTest, TestGetSet)
|
||||
{
|
||||
BITARRAY_DECLARE(p, 32);
|
||||
memset(p, 0, sizeof(p));
|
||||
ZERO_FARRAY(p);
|
||||
|
||||
bitArraySet(p, 14);
|
||||
EXPECT_EQ(bitArrayGet(p, 14), true);
|
||||
|
@ -25,7 +25,7 @@ TEST(BitArrayTest, TestGetSet)
|
|||
TEST(BitArrayTest, TestClr)
|
||||
{
|
||||
BITARRAY_DECLARE(p, 32);
|
||||
memset(p, 0, sizeof(p));
|
||||
ZERO_FARRAY(p);
|
||||
|
||||
bitArraySet(p, 31);
|
||||
EXPECT_EQ(bitArrayGet(p, 31), true);
|
||||
|
@ -37,8 +37,8 @@ TEST(BitArrayTest, TestClr)
|
|||
|
||||
TEST(BitArrayTest, TestFind)
|
||||
{
|
||||
BITARRAY_DECLARE(p, 32*4);
|
||||
memset(p, 0, sizeof(p));
|
||||
BITARRAY_DECLARE(p, 32 * 4);
|
||||
ZERO_FARRAY(p);
|
||||
|
||||
EXPECT_EQ(bitArrayFindFirstSet(p, 0, sizeof(p)), -1);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue