示例#1
0
static u16 frsky_cb()
{
    if (state < FRSKY_BIND_DONE) {
        build_bind_packet_1way();
        CC2500_Strobe(CC2500_SIDLE);
        CC2500_WriteReg(CC2500_0A_CHANNR, 0x00);
        CC2500_WriteData(packet, packet[0]+1);
        state++;
        return 53460;
    }
    if (state == FRSKY_BIND_DONE) {
        state++;
        PROTOCOL_SetBindState(0);
    }
    if (state >= FRSKY_DATA1) {
        u8 chan = calc_channel();
        CC2500_Strobe(CC2500_SIDLE);
        CC2500_WriteReg(CC2500_0A_CHANNR, chan * 5 + 6);
        build_data_packet_1way();
        CC2500_WriteData(packet, packet[0]+1);
        state++;
        if (state > FRSKY_DATA5)
            state = FRSKY_DATA1;
        return 9006;
    }
        
    return 0;
}
示例#2
0
文件: effect.c 项目: mommel/backend
struct session* effect_session_start(void)
{
	struct session *sess;
	char *automixv = webapp_options_getv("auto-mix-n-1");

	sess = mem_zalloc(sizeof(*sess), sess_destruct);
	if (!sess)
		return NULL;

	calc_channel(sess);

	sess->run_play = false;
	sess->run_src = false;
	sess->bypass = bypass;
	sess->trev = 0;
	sess->prev = 0;
	lock_alloc(&sess->plock);

	list_append(&sessionl, &sess->le, sess);

	if (0 == str_cmp(automixv, "true")) {
		sess->run_auto_mix = true;
		warning("auto mix enabled\n");
	}
	else {
		sess->run_auto_mix = false;
		warning("auto mix disabled\n");
	}

	return sess;
}