Merge branch 'master' into master

df8oe-master
Qyon 2017-06-06 19:33:50 +02:00 zatwierdzone przez GitHub
commit 9aa646d6d9
5 zmienionych plików z 16 dodań i 15 usunięć

Wyświetl plik

@ -9,7 +9,7 @@ if(UNIX)
CMAKE_FORCE_C_COMPILER(${TOOLCHAIN_DIR}/arm-none-eabi-gcc GNU)
CMAKE_FORCE_CXX_COMPILER(${TOOLCHAIN_DIR}/arm-none-eabi-g++ GNU)
else()
set(TOOLCHAIN_DIR D:/Programy/arm_gcc/bin/)
set(TOOLCHAIN_DIR "D:/Programy/GNU Tools ARM Embedded/5.4 2016q3/bin")
CMAKE_FORCE_C_COMPILER(${TOOLCHAIN_DIR}/arm-none-eabi-gcc.exe GNU)
CMAKE_FORCE_CXX_COMPILER(${TOOLCHAIN_DIR}/arm-none-eabi-g++.exe GNU)
endif()
@ -20,15 +20,16 @@ project(STM32_RTTY C ASM CXX)
add_definitions(-DSTM32F100C8)
add_definitions(-DSTM32F10X_MD_VL)
add_definitions(-DUSE_STDPERIPH_DRIVER)
add_definitions(-DSUPPORT_CPLUSPLUS)
add_definitions(-D__ASSEMBLY__)
SET(LINKER_SCRIPT ${PROJECT_SOURCE_DIR}/arm-gcc-link.ld)
SET(COMMON_FLAGS " -mcpu=cortex-m3 -mthumb -Wall -ffunction-sections -g -O3 -g -nostartfiles ")
SET(COMMON_FLAGS " -mcpu=cortex-m3 -mthumb -Wall -ffunction-sections -g -O3 -g -nostartfiles ")
SET(CMAKE_CXX_FLAGS "${COMMON_FLAGS} -std=c++11")
SET(CMAKE_C_FLAGS "${COMMON_FLAGS} -std=gnu99")
SET(CMAKE_EXE_LINKER_FLAGS "-Wl,-Map=${CMAKE_BINARY_DIR}/${PROJECT_NAME}.map -O3 -Wl,--gc-sections -T ${LINKER_SCRIPT}")
SET(CMAKE_EXE_LINKER_FLAGS "-Wl,-Map=${CMAKE_BINARY_DIR}/${PROJECT_NAME}.map -lstdc++ -O3 -Wl,--gc-sections --specs=nano.specs -T ${LINKER_SCRIPT}")
file(GLOB_RECURSE USER_SOURCES "*.c")
file(GLOB_RECURSE USER_SOURCES_CXX "*.cpp")
@ -53,7 +54,9 @@ set(BIN_FILE ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.bin)
add_custom_command(TARGET ${PROJECT_NAME}.elf POST_BUILD
COMMAND ${CMAKE_OBJCOPY} -Oihex $<TARGET_FILE:${PROJECT_NAME}.elf> ${HEX_FILE}
COMMAND ${CMAKE_OBJCOPY} -Obinary $<TARGET_FILE:${PROJECT_NAME}.elf> ${BIN_FILE}
COMMENT "Building ${HEX_FILE} \nBuilding ${BIN_FILE}")
COMMENT "Building ${HEX_FILE} \nBuilding ${BIN_FILE}"
COMMAND ${TOOLCHAIN_DIR}/arm-none-eabi-size ${PROJECT_NAME}.elf)
set(CMAKE_CXX_STANDARD 11)
add_custom_target(program

Wyświetl plik

@ -13,6 +13,7 @@ Have a nice day ;)
* 14.12.2016 - Reverse engineeded connections, initial hard work, resulting in working RTTY by SQ7FJB
* 07.01.2017 - GPS now using proprietiary UBLOX protocol, more elastic code to set working frequency by SQ5RWU
* 23.01.2017 - Test APRS code, small fixes in GPS code by SQ5RWU
* 06.06.2017 - APRS code fix, some code cleanup
#TODO
@ -25,6 +26,7 @@ Shift 450Hz
* ```CALLSIGN``` RTTY callsign
* ```APRS_CALLSIGN``` APRS callsign
* ```APRS_COMMENT``` APRS comment
* ```APRS_SSID``` APRS SSID - '1' -> 1, 'A' -> 10 etc.
* ```RTTY_TO_APRS_RATIO``` number of RTTY frames between each APRS frame
* ```RTTY_FREQUENCY``` RTTY frequency in MHz

Wyświetl plik

@ -61,7 +61,7 @@ void aprs_send_position(GPSEntry gpsData, int8_t temperature, uint16_t voltage)
aprs_packet_counter ++;
sprintf(packet_buffer,
("!%02d%02d.%02u%c/%03d%02u.%02u%cO/A=%06ld/P%dS%dT%dV%d Hello from the sky!"),
("!%02d%02d.%02u%c/%03d%02u.%02u%cO/A=%06ld/P%dS%dT%dV%d%s"),
abs(la_degrees), la_minutes, la_h_minutes,
la_degrees > 0 ? 'N' : 'S',
abs(lo_degrees), lo_minutes, lo_h_minutes,
@ -70,7 +70,8 @@ void aprs_send_position(GPSEntry gpsData, int8_t temperature, uint16_t voltage)
aprs_packet_counter,
gpsData.sats_raw,
temperature,
voltage
voltage,
APRS_COMMENT
);
qaprs.sendData(packet_buffer);
}

Wyświetl plik

@ -14,6 +14,7 @@
#define APRS_CALLSIGN "DF8OE-10"
#define RTTY_GREETING "$$$$$$RS41 modified for amateur radio use by DF8OE, enjoy and see you on the HUB... \n\r"
#define APRS_SSID 'B'
#define APRS_COMMENT " Hello from the sky!"
#define RTTY_TO_APRS_RATIO 5
//*************frequency********************

12
main.c
Wyświetl plik

@ -36,11 +36,9 @@ int napiecie;
volatile char flaga = 0;//((((tx_delay / 1000) & 0x0f) << 3) | Smoc);
uint16_t CRC_rtty = 0x12ab; //checksum
char buf_rtty[200];
char menu[] = RTTY_GREETING;
char init_trx[] = "\n\rPowering up TX\n\r";
volatile unsigned char pun = 0;
volatile unsigned int cun = 10;
unsigned char dev = 0;
volatile unsigned char tx_on = 0;
volatile unsigned int tx_on_delay;
volatile unsigned char tx_enable = 0;
@ -48,8 +46,6 @@ rttyStates send_rtty_status = rttyZero;
volatile char *rtty_buf;
volatile uint16_t button_pressed = 0;
volatile uint8_t disable_armed = 0;
unsigned char cun_off = 0;
void send_rtty_packet();
/**
@ -79,7 +75,7 @@ void TIM2_IRQHandler(void) {
GPIO_SetBits(GPIOB, RED);
if (*(++rtty_buf) == 0) {
tx_on = 0;
tx_on_delay = tx_delay / (1000/RTTY_SPEED);//2500;
tx_on_delay = tx_delay / (1000/RTTY_SPEED);
tx_enable = 0;
radio_disable_tx();
}
@ -172,8 +168,7 @@ int main(void) {
radio_enable_tx();
uint8_t rtty_before_aprs_left = RTTY_TO_APRS_RATIO;
//#pragma clang diagnostic push
//#pragma clang diagnostic ignored "-Wmissing-noreturn"
while (1) {
if (tx_on == 0 && tx_enable) {
if (rtty_before_aprs_left){
@ -197,7 +192,6 @@ int main(void) {
__WFI();
}
}
//#pragma clang diagnostic pop
}
void send_rtty_packet() {