Beispiel #1
0
void AMLCD::init() {
	//this->_lcd = &__am_lcd;
	_lcd = new LiquidCrystal(LCD_PIN_4, LCD_PIN_6, LCD_PIN_11, LCD_PIN_12, LCD_PIN_13, LCD_PIN_14);
	delay(100);

	//_lcd.createChar(1, typeT); delay(10);
	//_lcd->createChar(12, type_SB); delay(10);
	//__am_lcd.createChar(2, type_R); delay(10);
	//__am_lcd.createChar(4, type_C); delay(10);
	//__am_lcd.createChar(5, type_K); delay(10);
	//__am_lcd.createChar(6, type_U); delay(10);
	//__am_lcd.createChar(99, Spacer); delay(10);
	//__am_lcd.createChar(7, type_SB); delay(10);
	//__am_lcd.createChar(8, type_I); delay(10);
	//__am_lcd.createChar(9, type_S); delay(10);
	//__am_lcd.createChar(1, test); delay(10);
	//const byte Spacer[8] = { 0b10101, 0b01110, 0b10101, 0b01110, 0b10101, 0b01110, 0b10101, 0b01110 };
	//_lcd->createChar(100, Spacer);
	delay(100);

	_lcd->begin(16, 2); // 16 x 2 display
	_TEST();
	delay(100);

	//_lcd->println("LCD READY");

	delay(100);
}
Beispiel #2
0
static int wb_printf_run(struct wboxtest *test, struct vmm_chardev *cdev)
{
        char buf[1024];
        int rc = VMM_OK;
        const virtual_addr_t deadbeef = 0xdeadbeef;
        const physical_addr_t babe = 0xbabe;
        const virtual_size_t size = 42;
        const s64 var = 777;
        const u64 feeddeadbabe = (u64)(0x0000feeddeadbabe);

#define _TEST(expect_, fmt_, ...) \
        do { \
                vmm_snprintf(buf, sizeof(buf), fmt_, ## __VA_ARGS__); \
                vmm_cprintf(cdev, "Expecting [%s], wrote [%s]... ", \
                            expect_, buf); \
                if (strcmp(buf, expect_) != 0) { \
                        rc = VMM_EFAIL; \
                        vmm_cprintf(cdev, "FAIL!\n"); \
                } else { \
                        vmm_cprintf(cdev, "ok\n"); \
                } \
        } while (0)
        /*===================================================================*/

        _TEST("1024 = 2^10", "%d = %i^%s", 1024, 2, "10");
        _TEST("0xbad = 0XBAD", "0x%x = 0X%X", 0xbad, 2989); /* 0xbad = 2989 */
        _TEST("1 + 1 + 1 + 777 = 780",
              "%"PRId8" + %"PRId16" + %"PRId32" + %"PRId64" = %d",
              (s8)1, (s16)1, (s32)1, var, 780);
        _TEST("1 + 1 + 1 + 777 = 780",
              "%"PRIi8" + %"PRIi16" + %"PRIi32" + %"PRIi64" = %i",
              (s8)1, (s16)1, (s32)1, var, 780);
        _TEST("1 + 1 + 1 + 777 = 780",
              "%"PRIu8" + %"PRIu16" + %"PRIu32" + %"PRIu64" = %u",
              (u8)1, (u16)1, (u32)1, var, 780);
        _TEST("0xfeeddeadbabe = 280297596631742",
              "%"PRIx64" = %"PRIu64, feeddeadbabe, feeddeadbabe);
        if (sizeof(void *) == sizeof(u32)) {
                _TEST("0xDEADBEEF", "0x%"PRIADDR, deadbeef);
                _TEST("0x0000BABE", "0x%"PRIADDR, babe);
        } else if (sizeof(void *) == sizeof(u64)) {
                _TEST("0x00000000DEADBEEF", "0x%"PRIADDR, deadbeef);
                _TEST("0x000000000000BABE", "0x%"PRIADDR, babe);
        }
        _TEST("42 % 2 = 0", "%"PRISIZE" %% %u = %i", size, 2, 0);
        _TEST("Xvisor", "%c%c%c%c%c%c", 'X', 'v', 'i', 's', 'o', 'r');

        /*===================================================================*/
#undef _TEST
        return rc;
}
Beispiel #3
0
//PERF_FUNCTION_N_R_D_L(ccn_write_uint)
/*
#if CCN_MUL_ASM
PERF_FUNCTION_N_R_X_B(ccn_mul1, 0xFFFFFFFF)
PERF_FUNCTION_N_R_X_B(ccn_addmul1, 0xFFFFFFFF)
#endif
*/

#define CCN_TEST(_op) { .name="ccn_"#_op, .di=&_di, .keylen=_keylen }

#define _TEST(_x) { .name = #_x, .func = perf_ ## _x}
static struct ccn_perf_test {
    const char *name;
    double(*func)(unsigned long loops, cc_size count);
} ccn_perf_tests[] = {
    _TEST(ccn_gcd),

    _TEST(ccn_mul),
    _TEST(ccn_mul_ws),
    _TEST(ccn_sqr),
    _TEST(ccn_add),
    _TEST(ccn_sub),

    _TEST(ccn_shift_left),
    _TEST(ccn_shift_right),
    _TEST(ccn_shift_left_multi),
    _TEST(ccn_shift_right_multi),

    _TEST(ccn_add1),
    _TEST(ccn_set),
    _TEST(ccn_cmp),
Beispiel #4
0
    do {
        status = ccrng_generate((struct ccrng_state *)&nist_ctx, nbytes, results);
        cc_assert(status==0);
    } while (--loops != 0);
    time=perf_time();

    return time;
}


#define _TEST(_x) { .name = #_x, .func = perf_ ## _x}
static struct ccrng_perf_test {
    const char *name;
    double(*func)(unsigned long loops, cc_size nbytes);
} ccrng_perf_tests[] = {
    _TEST(ccrng_CommonCrypto_generate),
    _TEST(ccrng_system_generate),
    _TEST(ccrng_system_oneshot)
};

static double perf_ccrng(unsigned long loops, unsigned long size, const void *arg)
{
    const struct ccrng_perf_test *test=arg;
    return test->func(loops, size);
}

static struct ccperf_family family;


struct ccperf_family *ccperf_family_ccrng(int argc, char *argv[])
{
Beispiel #5
0
    
    perf_start();
    do {
        cced25519_verify(di, sizeof(msg), msg, sig,pk);
    } while (--loops != 0);
    return perf_time();
}

#define _TEST(_x,_di) { .name = #_x"("#_di")", .func = perf_ ## _x, .di = &_di}

static struct ccec25519_perf_test {
    const char *name;
    double(*func)(unsigned long loops, unsigned long size, const struct ccdigest_info *di);
    const struct ccdigest_info *di;
} ccec25519_perf_tests[] = {
    _TEST(cccurve25519_make_pub,ccsha512_ltc_di),
    _TEST(cccurve25519_make_key_pair,ccsha512_ltc_di),
    _TEST(cced25519_make_key_pair,ccsha512_ltc_di),
    _TEST(cced25519_sign,ccsha512_ltc_di),
    _TEST(cced25519_verify,ccsha512_ltc_di),
};

static double perf_ccec25519(unsigned long loops, CC_UNUSED unsigned long size, const void *arg)
{
    const struct ccec25519_perf_test *test=arg;
    // Message size of constant size 32
    return test->func(loops, 32, test->di);
}

static struct ccperf_family family;