void bz_bluetooth_init(void)
{
    bt_fw_stack_init();
    hci_td_init();    
    lc_init();  
    lmp_init();    
    
#ifdef LE_MODE_EN
    //--- ll module init---
    if (IS_BT40)
    {
        ll_init();
    }
#endif      

#if defined (_3DD_FUNCTION_SUPPORT_) || defined (_DAPE_TEST_USE_GPIO1_AS_FRAME_SYNC)
#ifdef _3DD_FUNCTION_SUPPORT_
    if (IS_SUPPORT_3DG_APP)
#endif        
    {
        bt_3dd_driver_init();
    }
#endif

    init_hci();
}
Exemple #2
0
PROCESS_THREAD(nodetest_process, ev, data)
{
	uint16_t tmp;
	char tempstr[32];
	uint32_t adc = 0;
	const uint8_t gain = 32;

	static struct etimer et;
	PROCESS_BEGIN();
	
	broadcast_open(&broadcast, 129, &broadcast_call);
	printf("Initiating stcn75\r\n");
	stcn75_init();
	lmp_init();
	lmp_setup();
	
	while(1) {
		/* Delay 2-4 seconds */
    		etimer_set(&et, CLOCK_SECOND * 2 + random_rand() % (CLOCK_SECOND * 2));
		//etimer_set(&et, CLOCK_SECOND);		
		PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));

		
		//Reading ic temp
		stcn75_read(&tmp);

		//Reading probe temp
		if(lmp_read_data(ADC_DONE, 1) == 0xFF){
				printf("ADC data NOT Avlaiable\r\n");
			}else	{
				adc = lmp_read_data(ADC_DOUT, 3);	
			}

		//Converting ic tmp and RAWadc/gain data to string
		adc = adc/gain;
		adc = adc << 8;
		adc |= tmp;	
		snprintf(tempstr, sizeof(tempstr), "%d", adc);

		//Transmitting string
		packetbuf_copyfrom(tempstr, strlen(tempstr)+1);
    		broadcast_send(&broadcast);
    		printf("broadcast message sent, data: %s\n\r",tempstr);

// playing with RADIO settings...
//		printf("power: %d\r\n",rf230_get_txpower());		
	//printf("return: %d\r\n",rf230_cw_on());
		//rf230_cw_off();


		
	}
	
  PROCESS_END();
}
Exemple #3
0
PROCESS_THREAD(lmptest_process, ev, data)
{
	static struct etimer et;
	const int bits = 16777216; //2^24
	const int bits2 = bits/1000;
	uint32_t ADC = 0;
	long RTD = 0;
	uint32_t temp = 0;
	uint32_t hel = 0;
	uint32_t dec = 0;
	char tkn = ' ';
	const uint8_t gain = 32;
	

	PROCESS_BEGIN();

	printf("Initierar & testar\r\n");
	lmp_init();
	lmp_setup();

	while(1) {
		etimer_set(&et, CLOCK_SECOND);
		PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));
	
			// read adress and nr of bytes to receve
			printf("CH_STS: %x",lmp_read_data(CH_STS, 1));
			printf(", ADC data: ");
			if(lmp_read_data(ADC_DONE, 1) == 0xFF){
				printf("NOT Avlaiable\r\n");
			}else	{
				ADC = lmp_read_data(ADC_DOUT, 3);
				printf("%u ",ADC);		
			}
			

			/*/OBS Massa trunkeringsfel...
			RTD = (8000*ADC)/(bits);
			temp = (RTD-100)*2.59699787; 			
			printf("ADC_Hex: %x, RTD: %d, temp: %dC\r\n ",ADC,RTD,temp);
		
			RTD = 0;
			temp = 0;
*/

			//mindre trunkfel
			ADC = ADC/gain;
			RTD = (4*2020*ADC)/(bits2);
			if(RTD<100000) {
				temp = (100000-RTD)*25430;
				tkn = '-';
			}else{ 
				temp = (RTD-100000)*25700;
				tkn = ' ';
			}			
			hel = (temp/10000000);
			dec = ((temp-hel*10000000)/100000);
			printf("RTD: %d temp: %d => %c%d.%02dC\r\n",RTD,temp,tkn,hel,dec);

	

			//printf(" %x, %x, %x\r\n",lmp_read_data(ADC_DOUTH,1),lmp_read_data(ADC_DOUTM,1),lmp_read_data(ADC_DOUTL,1));

	/*		printf("CH0_INPUTCH:%x, CH0_CONFIG:%x, SCALCN:%x, BGCALCN:%x, ",lmp_read_data(CH0_INPUTCN,1),lmp_read_data(CH0_CONFIG,1),lmp_read_data(SCALCN,1),lmp_read_data(BGCALCN,1));
			printf("ADC_AUXCN:%x, CH_STS:%x, CH_SCAN:%x\r\n",lmp_read_data(ADC_AUXCN,1),lmp_read_data(CH_STS,1),lmp_read_data(CH_SCAN,1));
	*/
			/*printf("SENSOR diag flags: %x",lmp_read_data(SENDIAG_FLAGS,1));
			printf(" adc restart\r\n");
			lmp_write_data(ADC_RESTART,0x01);*/
	}
	
  PROCESS_END();
}