Esempio n. 1
0
File: phy.c Progetto: BeeeOn/sensors
bool PHY_set_bitrate(uint8_t bitrate){
  if(bitrate == PHY_STORAGE.bitrate) return true;
  if (set_bitrate(bitrate) == false) return false;
  bool holder = set_chanel_freq_rate (PHY_STORAGE.channel, PHY_STORAGE.band, bitrate);
  send_reload_radio();
  return holder;
}
Esempio n. 2
0
void oggencWidget::quality_changed_by_slider(int quality) {
  
  float q = (float)((float)quality/10.0f);
  
  kdoublenuminput_quality->blockSignals(true);
  kdoublenuminput_quality->setValue(q);
  kdoublenuminput_quality->blockSignals(false);

  set_bitrate(q);

}
Esempio n. 3
0
void oggencWidget::quality_changed_by_spinbox(double quality) {

  int q = (int)((float)quality*10.0f);
  
  horizontalSlider_quality->blockSignals(true);
  horizontalSlider_quality->setValue(q);
  horizontalSlider_quality->blockSignals(false);

  set_bitrate(quality);

}
Esempio n. 4
0
File: phy.c Progetto: BeeeOn/sensors
void PHY_init(PHY_init_t params){
    
    HW_init();
    
    HW_disableConfig();
    HW_disableData();
    
    PHY_STORAGE.send_done = false;
    PHY_STORAGE.cca_noise_treshold = params.cca_noise_treshold;


    //----  configuring the RF link --------------------------------    
    for (uint8_t i = 0; i <= 31; i++) {
        //setup freq
        if((i << 1)== R1CNTREG ){
          set_chanel_freq_rate (params.channel, params.band, params.bitrate);
          //jump over R1CNTREG, P1CNTREG, S1CNTREG
          i+=3;
        }
        
        if((i << 1)== TXPARAMREG ){
          set_power(params.power);
          //jump over TXPARAMREG
          i+=1;
        }

        if((i << 1)== FDEVREG){
          set_bitrate(params.bitrate);
          //jump over FDEVREG, BRREG
          i+=2;
        }
        if((i << 1)== FILCONREG){
          // already done in previous call of set_bitrate(params.bitrate);
          i+=1;
        }
        set_register(i<<1, InitConfigRegs[i]);
    }
    
    for (uint8_t i = 0; i <= 31; i++) {
      uint8_t reg_val = get_register(i<<1);
    }
    
    send_reload_radio();

    HW_clearIRQ0();
    HW_enableIRQ0();

    HW_clearIRQ1();
    HW_enableIRQ1();
}
Esempio n. 5
0
oggencWidget::oggencWidget(Parameters *parameters, QWidget *parent) : oggencWidgetUI(parent) {

  Q_UNUSED(parent);

  this->parameters = parameters;
  if (!parameters) {
    qDebug() << "ParameterString is NULL!";
    return;
  }

  horizontalSlider_quality->setValue((int)(parameters->valueToFloat(ENCODER_OGGENC_QUALITY_KEY, ENCODER_OGGENC_QUALITY)*10));
  
  kdoublenuminput_quality->setValue(parameters->valueToFloat(ENCODER_OGGENC_QUALITY_KEY, ENCODER_OGGENC_QUALITY));
  
  set_bitrate(parameters->valueToInt(ENCODER_OGGENC_QUALITY_KEY, ENCODER_OGGENC_QUALITY));
  
  enable_min_bitrate(parameters->valueToBool(ENCODER_OGGENC_MINBITRATE_KEY));
  checkBox_minbitrate->setChecked(parameters->valueToBool(ENCODER_OGGENC_MINBITRATE_KEY));
  kintspinbox_minbitrate->setValue(parameters->valueToInt(ENCODER_OGGENC_MINBITRATE_VALUE_KEY, ENCODER_OGGENC_MINBITRATE_VALUE));
  set_minbitrate(parameters->valueToInt(ENCODER_OGGENC_MINBITRATE_VALUE_KEY, ENCODER_OGGENC_MINBITRATE_VALUE));
  enable_max_bitrate(parameters->valueToBool(ENCODER_OGGENC_MAXBITRATE_KEY));
  checkBox_maxbitrate->setChecked(parameters->valueToBool(ENCODER_OGGENC_MAXBITRATE_KEY));
  kintspinbox_maxbitrate->setValue(parameters->valueToInt(ENCODER_OGGENC_MAXBITRATE_VALUE_KEY, ENCODER_OGGENC_MAXBITRATE_VALUE));
  set_maxbitrate(parameters->valueToInt(ENCODER_OGGENC_MAXBITRATE_VALUE_KEY, ENCODER_OGGENC_MAXBITRATE_VALUE));
  qlineedit_suffix->setText(parameters->value(ENCODER_OGGENC_SUFFIX_KEY, ENCODER_OGGENC_SUFFIX));

  connect(horizontalSlider_quality, SIGNAL(valueChanged(int)), this, SLOT(quality_changed_by_slider(int)));
  connect(horizontalSlider_quality, SIGNAL(valueChanged(int)), this, SLOT(trigger_changed()));

  connect(kdoublenuminput_quality, SIGNAL(valueChanged(double)), this, SLOT(quality_changed_by_spinbox(double)));
  connect(kdoublenuminput_quality, SIGNAL(valueChanged(double)), this, SLOT(trigger_changed()));

  connect(checkBox_minbitrate, SIGNAL(toggled(bool)), this, SLOT(enable_min_bitrate(bool)));
  connect(checkBox_minbitrate, SIGNAL(toggled(bool)), this, SLOT(trigger_changed()));
  connect(checkBox_maxbitrate, SIGNAL(toggled(bool)), this, SLOT(enable_max_bitrate(bool)));
  connect(checkBox_maxbitrate, SIGNAL(toggled(bool)), this, SLOT(trigger_changed()));

  connect(kintspinbox_minbitrate, SIGNAL(valueChanged(int)), this, SLOT(trigger_changed()));
  connect(kintspinbox_minbitrate, SIGNAL(valueChanged(int)), this, SLOT(set_minbitrate(int)));
  connect(kintspinbox_maxbitrate, SIGNAL(valueChanged(int)), this, SLOT(trigger_changed()));
  connect(kintspinbox_maxbitrate, SIGNAL(valueChanged(int)), this, SLOT(set_maxbitrate(int)));

  connect(qlineedit_suffix, SIGNAL(textEdited(const QString&)), this, SLOT(trigger_changed()));

  changed = false;

}
Esempio n. 6
0
File: linux.c Progetto: OPSF/uClinux
int set_up(void)
{
int ret;
char line[40];

    atexit(clean);

#ifndef SIM
    if(( can_fd = open(device,
			/* O_RDONLY */
			O_RDWR
    				)) < 0 ) {
	fprintf(stderr,"Error opening CAN device %s\n", device);
	exit(1);
    }
    if(o_bitrate != 0) {
	sprintf(line, " %d\n", o_bitrate);
	set_bitrate(line);
    }

#endif

    BDEBUG("message structure canmsg_t has %d bytes\n", sizeof(canmsg_t));


    if(!o_server) {
	/* set terminal mode */
	ret = system("stty cbreak -echo");
	if(ret != 0) {
	    fprintf(stderr, "  system(stty) returns %d\n", ret);
	}
    }
    /* pe-set time structures */
    gettimeofday(&tv_start, &tz);
    return 0;
}
Esempio n. 7
0
int main(int argc,char **argv)
{
int can_fd;
char device[40];
int newbaud = 250;

    printf("usage: %s [dev] [bit_rate]\n", argv[0]);
    printf("   e.g.:\n");
    printf("   ./baud /dev/can0 125\n");
    printf("   sends out a message at /dev/can0 with 125Kbit/s\n");
    printf("   which can be watched at the CAN cable using an scope\n\n");

    sprintf(device, "%s", argv[1]);
    printf("using CAN device %s\n", device);
    
    if(( can_fd = open(device, O_RDWR )) < 0 ) {
	fprintf(stderr,"Error opening CAN device %s\n", device);
        exit(1);
    }
    if(argc == 3) {
    	newbaud = atoi(argv[2]);
    }
    printf("set baudrate to %d Kbit/s\n", newbaud);
    set_bitrate(can_fd, newbaud);


    /* Use the new CAB nit rate to send one message 
     * If no other CAN node is connected, we can see this mesage
     * using an oscilloscope and we can measure the bit rate 
     */
    {
    canmsg_t txmsg;
    int ret;

    	txmsg.id = 0x55;
    	txmsg.flags = 0;
    	txmsg.length = 8;
    	txmsg.data[0] = 0x55;
    	txmsg.data[1] = 0x55;
    	txmsg.data[2] = 0x55;
    	txmsg.data[3] = 0x55;
    	txmsg.data[4] = 0x55;
    	txmsg.data[5] = 0x55;
    	txmsg.data[6] = 0x55;
    	txmsg.data[7] = 0x55;

	ret = write(can_fd, &txmsg, 1);
	if (ret == -1) {
	    /* int e = errno; */
	    perror("write error");
	    /* } */
	} else if (ret == 0) {
	    printf("transmit timed out\n");
	} else {
	}
    }

    sleep(30);    
    close(can_fd);
    return 0;
}