Update cubesatsim.ino

pull/153/head
alanbjohnston 4 years ago committed by GitHub
parent 4cdc43c671
commit a053d5b4d4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -75,6 +75,84 @@ void setup() {
mode = FSK; // AFSK;
config_telem();
// configure ina219s
start_ina219();
// configure STEM Payload sensors
start_payload();
// program Transceiver board
configure_radio();
// start pwm
start_pwm();
transmit_on();
}
void loop() {
loop_count++;
// query INA219 sensors and Payload sensors
read_ina219();
read_payload();
// encode as digits (APRS or CW mode) or binary (DUV FSK)
if ((mode == BPSK) || (mode == FSK))
get_tlm_fox();
else if (mode == AFSK)
send_packet();
// delay(2000);
// test_radio();
digitalWrite(LED_BUILTIN, LOW);
// delay(3000);
sleep(3.0);
digitalWrite(LED_BUILTIN, HIGH);
// send telemetry
// delay some time
}
void send_packet() {
// encode telemetry
get_tlm_ao7();
// digitalWrite(LED_BUILTIN, LOW);
Serial.println("Sending APRS packet!");
transmit_on()
send_packet(_FIXPOS_STATUS);
transmit_off()
// delay(1000);
// digitalWrite(LED_BUILTIN, HIGH);
}
void transmit_on() {
digitalWrite(MAIN_LED_BLUE, HIGH);
digitalWrite(PTT_PIN, LOW);
}
void transmit_off() {
digitalWrite(PTT_PIN, HIGH);
digitalWrite(MAIN_LED_BLUE, LOW);
}
void config_telem() {
frameCnt = 1;
Serial.println("v1 Present with UHF BPF\n");
@ -159,74 +237,8 @@ void setup() {
char sym_tab_default = 'a';
char icon[] = "Ha";
set_lat_lon_icon(lat_default, lon_default, icon);
}
// configure ina219s
start_ina219();
// configure STEM Payload sensors
start_payload();
// program Transceiver board
configure_radio();
// start pwm
start_pwm();
digitalWrite(MAIN_LED_BLUE, HIGH);
digitalWrite(PTT_PIN, LOW);
}
void loop() {
loop_count++;
// query INA219 sensors and Payload sensors
read_ina219();
read_payload();
// encode as digits (APRS or CW mode) or binary (DUV FSK)
if ((mode == BPSK) || (mode == FSK))
get_tlm_fox();
else if (mode == AFSK)
send_packet();
// delay(2000);
// test_radio();
digitalWrite(LED_BUILTIN, LOW);
// delay(3000);
sleep(3.0);
digitalWrite(LED_BUILTIN, HIGH);
// send telemetry
// delay some time
}
void send_packet() {
// encode telemetry
get_tlm_ao7();
// digitalWrite(LED_BUILTIN, LOW);
Serial.println("Sending APRS packet!");
digitalWrite(MAIN_LED_BLUE, HIGH);
digitalWrite(PTT_PIN, LOW);
send_packet(_FIXPOS_STATUS);
digitalWrite(PTT_PIN, HIGH);
digitalWrite(MAIN_LED_BLUE, LOW);
// delay(1000);
// digitalWrite(LED_BUILTIN, HIGH);
firstTime = ON;
}
void get_tlm_ao7() {
@ -356,8 +368,10 @@ void get_tlm_fox() {
// fflush(stdout);
sampleTime = (unsigned int) millis();
} else
} else {
Serial.println("first time - no sleep\n");
firstTime = OFF;
}
// if (mode == FSK)
{ // just moved
@ -806,6 +820,8 @@ void write_wave(int i, short int *buffer)
buffer[ctr++] = (short int)(0.25 * amplitude * phase);
// Serial.print(buffer[ctr - 1]);
// Serial.print(" ");
if (ctr > BUFFER_SIZE)
ctr = ctr - BUFFER_SIZE;
}
else
{
@ -2065,12 +2081,12 @@ void pwm_interrupt_handler() {
pwm_value = 128 - pwm_amplitude;
// Serial.print("_");
}
pwm_set_gpio_level(AUDIO_OUT_PIN, pwm_value);
// Serial.println("wav_position: ");
// Serial.println(wav_position);
if (wav_position++ > 300) {
wav_position = 0;
// Serial.println("Reset wav_position");
pwm_set_gpio_level(AUDIO_OUT_PIN, pwm_value);
// Serial.println("wav_position: ");
// Serial.println(wav_position);
if (wav_position++ > BUFFER_SIZE) { // 300) {
wav_position = wav_position - BUFFER_SIZE;
// Serial.println("Reset wav_position");
}
}

Loading…
Cancel
Save

Powered by TurnKey Linux.