kopia lustrzana https://github.com/Qyon/STM32_RTTY
Add files via upload
rodzic
3a233fcc7e
commit
b8e2d5f0d6
|
@ -0,0 +1,35 @@
|
|||
volatile unsigned char nr_bit =0;
|
||||
|
||||
unsigned char send_rtty(char *znak)
|
||||
{
|
||||
nr_bit++;
|
||||
if (nr_bit ==1)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
if (nr_bit >1 && nr_bit <10)
|
||||
{
|
||||
if ((*(znak) >> (nr_bit-2)) & 0x01)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (nr_bit == 10)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
if (nr_bit == 11)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
nr_bit =0;
|
||||
return 2;
|
||||
|
||||
}
|
||||
;
|
|
@ -0,0 +1 @@
|
|||
unsigned char send_rtty( char *znak);
|
|
@ -0,0 +1,155 @@
|
|||
#include <stm32f10x_usart.h>
|
||||
#include <stm32f10x_spi.h>
|
||||
#include <stm32f10x_gpio.h>
|
||||
const char ascii[] = "0123456789ABCDEF";
|
||||
int srednia_u[5]={0,0,0,0,0};
|
||||
|
||||
int HexCharToInt(char ch)
|
||||
{
|
||||
if (ch < 48 || (ch > 57 && ch < 65) || ch > 70) return 0;
|
||||
return (ch < 58) ? ch - 48 : ch - 55;
|
||||
}
|
||||
|
||||
void print( char* s)
|
||||
{
|
||||
while (*s)
|
||||
{
|
||||
while(USART_GetFlagStatus(USART3, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
USART_SendData(USART3, *(s++));
|
||||
}
|
||||
}
|
||||
|
||||
void sendtogps(char* s, unsigned char cun)
|
||||
{
|
||||
unsigned char CK_A=0;
|
||||
unsigned char CK_B=0;
|
||||
while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
USART_SendData(USART1, *(s++));
|
||||
while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
USART_SendData(USART1, *(s++));
|
||||
cun--;
|
||||
cun--;
|
||||
while (cun-- != 0)
|
||||
{
|
||||
while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
CK_A += *(s);
|
||||
CK_B += CK_A;
|
||||
USART_SendData(USART1, *(s++));
|
||||
}
|
||||
while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
USART_SendData(USART1, CK_A);
|
||||
while(USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
USART_SendData(USART1, CK_B);
|
||||
}
|
||||
|
||||
void send_hex(unsigned char data)
|
||||
{
|
||||
while(USART_GetFlagStatus(USART3, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
USART_SendData(USART3, ascii[data >> 4 ]);
|
||||
while(USART_GetFlagStatus(USART3, USART_FLAG_TC) == RESET)
|
||||
{
|
||||
}
|
||||
USART_SendData(USART3, ascii[data & 0x0f ]);
|
||||
}
|
||||
|
||||
uint8_t spi_sendrecv(uint16_t byte)
|
||||
{
|
||||
GPIO_ResetBits(GPIOC, GPIO_Pin_13);
|
||||
// wait for tx buffer
|
||||
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET);
|
||||
SPI_I2S_SendData(SPI2, byte);
|
||||
|
||||
// wait for data in rx buffer
|
||||
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET);
|
||||
GPIO_SetBits(GPIOC, GPIO_Pin_13);
|
||||
return SPI_I2S_ReceiveData(SPI2);
|
||||
}
|
||||
|
||||
unsigned char czytaj_GPS(unsigned char pos,unsigned char len, char *source, char * destination)
|
||||
{
|
||||
char *wyn;
|
||||
char pet = 0;
|
||||
wyn=source;
|
||||
while( pos-- !=0)
|
||||
{
|
||||
while (*(wyn++) != ',');
|
||||
}
|
||||
if (*(wyn) == 0)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
while((*(wyn) !=',') && (*(wyn) != 0)&& (len-- !=0))
|
||||
{
|
||||
*(destination++) = *(wyn++);
|
||||
pet = 1;
|
||||
}
|
||||
if (pet == 0)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
*(destination) = 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
uint16_t gps_CRC16_checksum (char *string)
|
||||
{
|
||||
uint16_t crc = 0xffff;
|
||||
char i;
|
||||
while (*(string) != 0)
|
||||
{
|
||||
crc = crc ^ (*(string++) << 8);
|
||||
for (i=0; i<8; i++)
|
||||
{
|
||||
if (crc & 0x8000)
|
||||
crc = (crc << 1) ^ 0x1021;
|
||||
else
|
||||
crc <<= 1;
|
||||
}
|
||||
}
|
||||
return crc;
|
||||
}
|
||||
|
||||
int srednia (int dana)
|
||||
{
|
||||
volatile char nr_pom=0;
|
||||
volatile char first=1;
|
||||
char i;
|
||||
int sr=0;
|
||||
if(first)
|
||||
{
|
||||
for (i=0; i<5; i++)
|
||||
{
|
||||
srednia_u[i] = dana;
|
||||
}
|
||||
first =0;
|
||||
|
||||
}
|
||||
srednia_u[nr_pom] = dana;
|
||||
if (++nr_pom >4)
|
||||
{
|
||||
nr_pom=0;
|
||||
}
|
||||
for (i=0; i<5; i++)
|
||||
{
|
||||
sr += srednia_u[i];
|
||||
}
|
||||
sr = sr/5;
|
||||
return sr;
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
int HexCharToInt(char ch);
|
||||
void print( char* s);
|
||||
void sendtogps(char* s, unsigned char cun);
|
||||
void send_hex(unsigned char data);
|
||||
uint8_t spi_sendrecv(uint16_t byte);
|
||||
unsigned char czytaj_GPS(unsigned char pos,unsigned char len, char *source, char * destination);
|
||||
uint16_t gps_CRC16_checksum (char *string);
|
||||
int srednia (int dana);
|
|
@ -0,0 +1,176 @@
|
|||
#include <stm32f10x_flash.h>
|
||||
#include <stm32f10x_rcc.h>
|
||||
#include <stm32f10x_gpio.h>
|
||||
#include <stm32f10x_tim.h>
|
||||
#include <stm32f10x_usart.h>
|
||||
#include <stm32f10x_adc.h>
|
||||
#include <stm32f10x.h>
|
||||
#include <stm32f10x_dma.h>
|
||||
#include <stm32f10x_spi.h>
|
||||
#include <misc.h>
|
||||
#include "init.h"
|
||||
SPI_InitTypeDef SPI_InitStructure;
|
||||
USART_InitTypeDef USART_InitStructure;
|
||||
GPIO_InitTypeDef GPIO_Conf;
|
||||
ADC_InitTypeDef ADC_InitStructure;
|
||||
DMA_InitTypeDef DMA_InitStructure;
|
||||
#define ADC1_DR_Address ((uint32_t)0x4001244C)
|
||||
|
||||
void NVIC_Conf(void)
|
||||
{
|
||||
#ifdef VECT_TAB_RAM
|
||||
NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0);
|
||||
#else // VECT_TAB_FLASH
|
||||
NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);
|
||||
#endif
|
||||
}
|
||||
|
||||
void RCC_Conf(void)
|
||||
{
|
||||
ErrorStatus HSEStartUpStatus;
|
||||
RCC_DeInit();
|
||||
RCC_HSEConfig(RCC_HSE_ON);
|
||||
HSEStartUpStatus = RCC_WaitForHSEStartUp();
|
||||
if(HSEStartUpStatus == SUCCESS)
|
||||
{
|
||||
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
|
||||
FLASH_SetLatency(FLASH_Latency_2);
|
||||
RCC_HCLKConfig(RCC_SYSCLK_Div4);
|
||||
RCC_PCLK2Config(RCC_HCLK_Div4);
|
||||
RCC_PCLK1Config(RCC_HCLK_Div2);
|
||||
RCC_SYSCLKConfig(RCC_SYSCLKSource_HSE);
|
||||
while(RCC_GetSYSCLKSource() != 0x04);
|
||||
}
|
||||
}
|
||||
|
||||
void init_port(void)
|
||||
{
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_12;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_Out_PP;
|
||||
GPIO_Conf.GPIO_Speed = GPIO_Speed_10MHz;
|
||||
GPIO_Init(GPIOA, &GPIO_Conf);
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 ;//| GPIO_Pin_10;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_Out_PP;
|
||||
GPIO_Conf.GPIO_Speed = GPIO_Speed_10MHz;
|
||||
GPIO_Init(GPIOB, &GPIO_Conf);
|
||||
TIM_TimeBaseInitTypeDef TIM2_TimeBaseInitStruct;
|
||||
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);
|
||||
RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM2,DISABLE);
|
||||
TIM2_TimeBaseInitStruct.TIM_Prescaler = 1000;
|
||||
TIM2_TimeBaseInitStruct.TIM_CounterMode = TIM_CounterMode_Up;
|
||||
TIM2_TimeBaseInitStruct.TIM_Period = 6;
|
||||
TIM2_TimeBaseInitStruct.TIM_ClockDivision = TIM_CKD_DIV1;
|
||||
TIM2_TimeBaseInitStruct.TIM_RepetitionCounter = 0;
|
||||
TIM_TimeBaseInit(TIM2,&TIM2_TimeBaseInitStruct);
|
||||
TIM_ClearITPendingBit(TIM2,TIM_IT_Update);
|
||||
TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE);
|
||||
NVIC_InitTypeDef NVIC_InitStructure; //create NVIC structure
|
||||
NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;
|
||||
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
|
||||
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
|
||||
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
|
||||
NVIC_Init(&NVIC_InitStructure);
|
||||
TIM_Cmd(TIM2,ENABLE);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_13 |GPIO_Pin_15;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_AF_PP;
|
||||
GPIO_Conf.GPIO_Speed = GPIO_Speed_10MHz;
|
||||
GPIO_Init(GPIOB, &GPIO_Conf);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_14;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_IN_FLOATING;
|
||||
GPIO_Init(GPIOB, &GPIO_Conf);
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_13;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_Out_PP;
|
||||
GPIO_Conf.GPIO_Speed = GPIO_Speed_10MHz;
|
||||
GPIO_Init(GPIOC,&GPIO_Conf);
|
||||
RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2, ENABLE);
|
||||
SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
|
||||
SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
|
||||
SPI_InitStructure.SPI_DataSize = SPI_DataSize_16b;
|
||||
SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;
|
||||
SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;
|
||||
SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_16;
|
||||
SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;
|
||||
SPI_InitStructure.SPI_CRCPolynomial = 7;
|
||||
SPI_Init(SPI2, &SPI_InitStructure);
|
||||
SPI_SSOutputCmd(SPI2, ENABLE);
|
||||
SPI_Cmd(SPI2, ENABLE);
|
||||
SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
|
||||
SPI_Init(SPI2, &SPI_InitStructure);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_9;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_AF_PP;
|
||||
GPIO_Conf.GPIO_Speed = GPIO_Speed_10MHz;
|
||||
GPIO_Init(GPIOA, &GPIO_Conf);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_10;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_IN_FLOATING;
|
||||
GPIO_Init(GPIOA, &GPIO_Conf);
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);// | RCC_APB2Periph_AFIO, ENABLE);
|
||||
USART_InitStructure.USART_BaudRate = 9600; //0x9c4;
|
||||
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
|
||||
USART_InitStructure.USART_StopBits = USART_StopBits_1;
|
||||
USART_InitStructure.USART_Parity = USART_Parity_No;
|
||||
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
|
||||
USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;
|
||||
USART_Init(USART1, &USART_InitStructure);
|
||||
USART_Cmd(USART1, ENABLE);
|
||||
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
|
||||
NVIC_EnableIRQ(USART1_IRQn);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_10;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_AF_PP;
|
||||
GPIO_Conf.GPIO_Speed = GPIO_Speed_10MHz;
|
||||
GPIO_Init(GPIOB, &GPIO_Conf);
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_11;
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_IN_FLOATING;
|
||||
GPIO_Init(GPIOB, &GPIO_Conf);
|
||||
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE);// | RCC_APB2Periph_AFIO, ENABLE);
|
||||
USART_InitStructure.USART_BaudRate = 19200; //0x9c4;
|
||||
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
|
||||
USART_InitStructure.USART_StopBits = USART_StopBits_1;
|
||||
USART_InitStructure.USART_Parity = USART_Parity_No;
|
||||
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
|
||||
USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx;
|
||||
USART_Init(USART3, &USART_InitStructure);
|
||||
USART_Cmd(USART3, ENABLE);
|
||||
RCC_AHBPeriphClockCmd ( RCC_AHBPeriph_DMA1 , ENABLE ) ;
|
||||
DMA_DeInit(DMA1_Channel1);
|
||||
DMA_InitStructure.DMA_BufferSize = 2;
|
||||
DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC;
|
||||
DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;
|
||||
DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t) &ADCVal;
|
||||
ADC_DMACmd(ADC1, ENABLE);
|
||||
DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;
|
||||
DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;
|
||||
DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;
|
||||
DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR_Address;
|
||||
DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;
|
||||
DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;
|
||||
DMA_InitStructure.DMA_Priority = DMA_Priority_High;
|
||||
DMA_Init(DMA1_Channel1, &DMA_InitStructure);
|
||||
DMA_Cmd(DMA1_Channel1, ENABLE);
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_AIN;
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_6 ; // that's ADC1 (PA5 on STM32)
|
||||
GPIO_Init(GPIOA, &GPIO_Conf);
|
||||
GPIO_Conf.GPIO_Mode = GPIO_Mode_AIN;
|
||||
GPIO_Conf.GPIO_Pin = GPIO_Pin_5 ; // that's ADC1 (PA3 on STM32)
|
||||
GPIO_Init(GPIOA, &GPIO_Conf);
|
||||
RCC_ADCCLKConfig (RCC_PCLK2_Div2);
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);
|
||||
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
|
||||
ADC_InitStructure.ADC_ScanConvMode = ENABLE;
|
||||
ADC_InitStructure.ADC_ContinuousConvMode = ENABLE; // we work in continuous sampling mode
|
||||
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
|
||||
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
|
||||
ADC_InitStructure.ADC_NbrOfChannel = 2;
|
||||
ADC_Init ( ADC1, &ADC_InitStructure); //set config of ADC1
|
||||
ADC_RegularChannelConfig(ADC1,ADC_Channel_5, 1,ADC_SampleTime_28Cycles5); // define regular conversion config
|
||||
ADC_RegularChannelConfig(ADC1,ADC_Channel_6, 2,ADC_SampleTime_28Cycles5); // define regular conversion config
|
||||
ADC_DMACmd(ADC1, ENABLE);
|
||||
ADC_Cmd (ADC1,ENABLE); //enable ADC
|
||||
ADC_ResetCalibration(ADC1); // Reset previous calibration
|
||||
while(ADC_GetResetCalibrationStatus(ADC1));
|
||||
ADC_StartCalibration(ADC1); // Start new calibration (ADC must be off at that time)
|
||||
while(ADC_GetCalibrationStatus(ADC1));
|
||||
ADC_SoftwareStartConvCmd(ADC1, ENABLE); // start conversion (will be endless as we are in continuous mode)
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
__IO uint16_t ADCVal[2];
|
||||
void NVIC_Conf(void);
|
||||
void RCC_Conf(void);
|
||||
void init_port(void);
|
|
@ -0,0 +1,467 @@
|
|||
// STM32F100 and SI4032 RTTY transmitter
|
||||
// released under GPL v.2 by anonymous developer
|
||||
// enjoy and have a nice day
|
||||
// ver 1.5a
|
||||
#include <stm32f10x_gpio.h>
|
||||
#include <stm32f10x_tim.h>
|
||||
#include <stm32f10x_spi.h>
|
||||
#include <stm32f10x_tim.h>
|
||||
#include <stm32f10x_usart.h>
|
||||
#include <stm32f10x_adc.h>
|
||||
#include <stm32f10x_rcc.h>
|
||||
#include "stdlib.h"
|
||||
#include "misc.h"
|
||||
#include <stdio.h>
|
||||
#include "f_rtty.h"
|
||||
#include "init.h"
|
||||
#include "fun.h"
|
||||
|
||||
//**************config**************
|
||||
char callsign[15]={"NO1LIC-1"}; // put your callsign here
|
||||
|
||||
//************band select******************
|
||||
#define fb 1
|
||||
#define fbsel 1
|
||||
//fb fbsel 0 1
|
||||
// 0 208,0000 415,9992
|
||||
// 1 216,6675 433,3325
|
||||
// 2 225,3342 450,6658
|
||||
|
||||
//*************frequency********************
|
||||
#define freq 434.150 //Mhz middle frequency
|
||||
//*****************************************************
|
||||
|
||||
//********* power definition**************************
|
||||
#define Smoc 0 // PWR 0...7 0- MIN ... 7 - MAX
|
||||
//***************************************************
|
||||
|
||||
//********** frame delay in msec**********
|
||||
#define tx_delay 100 // 2500 ~2,5 w polu flaga wpisywany jest tx_delay/1000 modulo 16 czyl;i dla 16000 bedzie 0 póki co.
|
||||
|
||||
//**************end config**************
|
||||
|
||||
//************ do not touch bellow this line;) *********************
|
||||
#define gen_div 3 //Sta³a nie zmieniac
|
||||
#define gen ((26.0/gen_div) *(fbsel+1)) //26 ->26MHZ kwarc napedzajacy nadajnik
|
||||
#define fc (((freq/gen) - fb - 24) * 64000)
|
||||
|
||||
///////////////////////////// test mode /////////////
|
||||
unsigned char test =0; // 0 - normal, 1 - short frame only cunter, height, flag
|
||||
|
||||
#define WR 0x8000
|
||||
#define gps_RMC_dlugosc 5
|
||||
#define gps_RMC_dlugosc_len 10
|
||||
#define gps_RMC_dlugosc_kier 6
|
||||
#define gps_RMC_dlugosc_kier_len 1
|
||||
#define gps_RMC_szerokosc 3
|
||||
#define gps_RMC_szerokosc_len 9
|
||||
#define gps_RMC_szerokosc_kier 4
|
||||
#define gps_RMC_szerokosc_kier_len 1
|
||||
#define gps_RMC_status 2
|
||||
#define gps_RMC_status_len 1
|
||||
#define gps_RMC_data 9
|
||||
#define gps_RMC_data_len 6
|
||||
#define gps_RMC_czas 1
|
||||
#define gps_RMC_czas_len 6
|
||||
#define gps_RMC_predkosc 7
|
||||
#define gps_RMC_predkosc_len 5
|
||||
#define gps_RMC_kierunek 8
|
||||
#define gps_RMC_kierunek_len 5
|
||||
#define gps_GGA_wysokosc 9
|
||||
#define gps_GGA_wysokosc_len 5 //*
|
||||
#define gps_GGA_use_sat 7
|
||||
#define gps_GGA_use_sat_len 2 //*
|
||||
#define gps_VTG_predkosc 7
|
||||
#define gps_VTG_predkosc_len 5
|
||||
#define GREEN GPIO_Pin_7
|
||||
#define RED GPIO_Pin_8
|
||||
#define GPS_START '$'
|
||||
#define GPS_STOP 0x0a // LF
|
||||
#define OFF GPIO_Pin_12
|
||||
unsigned int send_cun; //frame counter
|
||||
char czas[7]={"000000"};
|
||||
char status[2]={'N'};
|
||||
char dlugosc[14]={"0.00000"};
|
||||
char dlugosc_kier = 0;//'W';
|
||||
char szerokosc[13]={"0.00000"};
|
||||
char szerokosc_kier = 0;// 'S';s
|
||||
char wysokosc[6]={"0"};
|
||||
char predkosc[6]={"0"};
|
||||
char kierunek[6]={"0"};
|
||||
char temperatura;
|
||||
char FixOk =0;
|
||||
int napiecie;
|
||||
unsigned int czest;
|
||||
float fdlugosc=0;
|
||||
float fszerokosc=0;
|
||||
float deg = 0;
|
||||
float fbuf=0;
|
||||
char use_sat[3]={'0'};
|
||||
char flaga= ((((tx_delay/1000) & 0x0f)<< 3) | Smoc);
|
||||
int32_t CRC_rtty=0x12ab; //checksum
|
||||
char buf[512];
|
||||
char buf_rtty[200];
|
||||
char menu[] = "$$$$$$STM32 RTTY tracker by Blasiu, enjoy and see you on the HUB... \n\r";
|
||||
char init_trx[] = "\n\rPowering up TX\n\r";
|
||||
char powitanie[]= "greetings from earth";
|
||||
unsigned char pun = 0;
|
||||
unsigned int cun =10;
|
||||
char temp;
|
||||
unsigned char dev = 0;
|
||||
unsigned char tx_on =0;
|
||||
unsigned int tx_on_delay;
|
||||
unsigned char tx_enable=0;
|
||||
char send_rtty_status=0;
|
||||
unsigned char cun_rtty =0;
|
||||
char *rtty_buf;
|
||||
unsigned char GPS_temp;
|
||||
char GPS_buf[200];
|
||||
char *wsk_GPS_buf;
|
||||
char GPS_rec = 0;
|
||||
char new_GPS_msg = 0;
|
||||
unsigned char crc_GPS = 0;
|
||||
char crc_GPS_start =0 ;
|
||||
char crc_GPS_rec = 0;
|
||||
char crc_GPS_cun=0;
|
||||
char confGPSNAV[]= {0xB5, 0x62, 0x06, 0x24, 0x24, 0x00, 0xFF, 0xFF, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x05, 0x00, 0xFA, 0x00, 0xFA, 0x00, 0x64, 0x00, 0x2C, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||
char GPSon[] = {0xB5, 0x62, 0x02, 0x41, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x4C, 0x37};
|
||||
char GPSoff[] = {0xB5, 0x62, 0x02, 0x41, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00};//, 0x4D, 0x3B};
|
||||
char GPS_ZDA_OFF[]={0xb5, 0x62, 0x06,0x01, 0x08, 0x00, 0xf0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||
char GPS_GLL_OFF[]={0xb5, 0x62, 0x06,0x01, 0x08, 0x00, 0xf0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||
char GPS_GSA_OFF[]={0xb5, 0x62, 0x06,0x01, 0x08, 0x00, 0xf0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||
char GPS_GSV_OFF[]={0xb5, 0x62, 0x06,0x01, 0x08, 0x00, 0xf0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||
int Button=0;
|
||||
unsigned char cun_off = 0;
|
||||
unsigned char bOFF=0;
|
||||
unsigned char bCheckKay=0;
|
||||
unsigned char GPSConf=0;
|
||||
|
||||
void USART1_IRQHandler(void)
|
||||
{
|
||||
if ((USART1->SR & USART_FLAG_RXNE) != (u16)RESET)
|
||||
{
|
||||
|
||||
GPS_temp = USART_ReceiveData(USART1);
|
||||
USART_SendData(USART3, GPS_temp);
|
||||
if (GPS_temp == '*')
|
||||
{
|
||||
crc_GPS_start = 0;
|
||||
crc_GPS_cun = 0;
|
||||
crc_GPS_rec = 0;
|
||||
}
|
||||
if (crc_GPS_start)
|
||||
{
|
||||
crc_GPS ^= GPS_temp;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (GPS_rec)
|
||||
{
|
||||
if (crc_GPS_cun < 3 && crc_GPS_cun > 0 )
|
||||
{
|
||||
crc_GPS_rec *= 16;
|
||||
crc_GPS_rec += HexCharToInt(GPS_temp);
|
||||
}
|
||||
crc_GPS_cun++;
|
||||
}
|
||||
|
||||
}
|
||||
if(GPS_temp == GPS_START)
|
||||
{
|
||||
wsk_GPS_buf = GPS_buf;
|
||||
GPS_rec = 1;
|
||||
crc_GPS=0;
|
||||
crc_GPS_start =1;
|
||||
}
|
||||
if (GPS_rec)
|
||||
{
|
||||
*(wsk_GPS_buf++) = GPS_temp;
|
||||
}
|
||||
|
||||
if(GPS_temp == GPS_STOP)
|
||||
{
|
||||
GPS_rec = 0;
|
||||
*(wsk_GPS_buf) = 0x00;
|
||||
|
||||
if(crc_GPS_rec == crc_GPS)
|
||||
{
|
||||
new_GPS_msg =1;
|
||||
GPS_rec = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void TIM2_IRQHandler(void){
|
||||
if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET)
|
||||
{
|
||||
TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
|
||||
}
|
||||
if (tx_on && ++cun_rtty ==17)
|
||||
{
|
||||
cun_rtty = 0;
|
||||
send_rtty_status = send_rtty(rtty_buf);
|
||||
if (send_rtty_status ==2)
|
||||
{
|
||||
GPIO_SetBits(GPIOB, RED);
|
||||
if (*(++rtty_buf) == 0)
|
||||
{
|
||||
tx_on=0;
|
||||
tx_on_delay =tx_delay ;//2500;
|
||||
tx_enable=0;
|
||||
temp = spi_sendrecv(0x0740 | WR);
|
||||
}
|
||||
}
|
||||
if (send_rtty_status ==1)
|
||||
{
|
||||
temp = spi_sendrecv(0x7302 | WR);
|
||||
GPIO_SetBits(GPIOB, RED);
|
||||
}
|
||||
if (send_rtty_status ==0)
|
||||
{
|
||||
temp = spi_sendrecv(0x7300 | WR);
|
||||
GPIO_ResetBits(GPIOB, RED);
|
||||
}
|
||||
}
|
||||
if(!tx_on && --tx_on_delay == 0)
|
||||
{
|
||||
tx_enable=1;
|
||||
tx_on_delay--;
|
||||
}
|
||||
if(--cun == 0 )
|
||||
{
|
||||
cun_off++;
|
||||
if (pun)
|
||||
{
|
||||
GPIO_ResetBits(GPIOB, GREEN);
|
||||
pun =0;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (flaga & 0x80)
|
||||
{
|
||||
GPIO_SetBits(GPIOB, GREEN);
|
||||
}
|
||||
pun = 1;
|
||||
}
|
||||
cun = 200;
|
||||
}
|
||||
bCheckKay =1;
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
#ifdef DEBUG
|
||||
debug();
|
||||
#endif
|
||||
RCC_Conf();
|
||||
NVIC_Conf();
|
||||
init_port();
|
||||
|
||||
wsk_GPS_buf = GPS_buf;
|
||||
|
||||
|
||||
GPIO_SetBits(GPIOB, RED);
|
||||
USART_SendData(USART3, 0xc);
|
||||
print(menu);
|
||||
temp = spi_sendrecv(0x02ff);
|
||||
//send_hex(temp);
|
||||
|
||||
temp = spi_sendrecv(0x03ff);
|
||||
temp = spi_sendrecv(0x04ff);
|
||||
temp = spi_sendrecv(0x0780 | WR);
|
||||
print(init_trx);
|
||||
// programowanie czestotliwosci nadawania
|
||||
napiecie = fc;
|
||||
temp = spi_sendrecv(0x7561 | WR);
|
||||
temp = spi_sendrecv(0x7600 | (((uint16_t)fc>>8) & 0x00ff) | WR);
|
||||
temp = spi_sendrecv(0x7700 | ( (uint16_t)fc & 0x00ff) | WR);
|
||||
|
||||
// Programowanie mocy nadajnika
|
||||
temp = spi_sendrecv(0x6D00 | (Smoc & 0x0007) | WR);
|
||||
temp = spi_sendrecv(0x7100 | WR);
|
||||
temp = spi_sendrecv(0x8708);
|
||||
temp = spi_sendrecv(0x02ff);
|
||||
temp = spi_sendrecv(0x75ff);
|
||||
temp = spi_sendrecv(0x76ff);
|
||||
temp = spi_sendrecv(0x77ff);
|
||||
temp = spi_sendrecv(0x1220 | WR);
|
||||
temp = spi_sendrecv(0x1300 | WR);
|
||||
temp = spi_sendrecv(0x1200 | WR);
|
||||
temp = spi_sendrecv(0x0f80 | WR);
|
||||
rtty_buf = buf_rtty;
|
||||
tx_on = 0;
|
||||
tx_enable =1;
|
||||
//tx_enable =0;
|
||||
Button = ADCVal[1];
|
||||
|
||||
while(1)
|
||||
{
|
||||
if (status[0] == 'A')
|
||||
{
|
||||
flaga |= 0x80;
|
||||
}
|
||||
else
|
||||
{
|
||||
flaga &= ~0x80;
|
||||
}
|
||||
|
||||
if (bCheckKay)
|
||||
{
|
||||
if ((ADCVal[1]- Button ) >= 100)
|
||||
{
|
||||
if (cun_off> 2)
|
||||
{
|
||||
bOFF =1;
|
||||
cun_off = 2;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Button = ADCVal[1];
|
||||
cun_off = 0;
|
||||
if (bOFF)
|
||||
{
|
||||
GPIO_SetBits(GPIOA, OFF);
|
||||
}
|
||||
|
||||
}
|
||||
bCheckKay = 0;
|
||||
}
|
||||
|
||||
if (tx_on == 0 && tx_enable)
|
||||
{
|
||||
temperatura = spi_sendrecv(0x11ff); //odczyt ADC
|
||||
temp = spi_sendrecv(0x0f80 |WR);
|
||||
temperatura = -64 +( temperatura *5 /10) -16;
|
||||
napiecie = srednia(ADCVal[0]*600/4096);
|
||||
|
||||
fdlugosc = atof(dlugosc);
|
||||
deg = (int)(fdlugosc/100);
|
||||
fbuf = fdlugosc -(deg * 100);
|
||||
fdlugosc = deg + fbuf/60;
|
||||
if (dlugosc_kier == 'W')
|
||||
{
|
||||
fdlugosc *= -1;
|
||||
}
|
||||
fszerokosc = atof(szerokosc);
|
||||
deg = (int)(fszerokosc/100);
|
||||
fbuf = fszerokosc -(deg * 100);
|
||||
fszerokosc = deg + fbuf/60;
|
||||
if (szerokosc_kier == 'S')
|
||||
{
|
||||
fszerokosc *= -1;
|
||||
}
|
||||
if (test)
|
||||
{
|
||||
sprintf(buf_rtty,"$$$$$$$%d,%d,%02x",send_cun,atoi(wysokosc),flaga);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(buf_rtty,"$$$$$$$%s,%d,%s,%.5f,%.5f,%d,%d,%s,%d,%d,%d,%02x",callsign,send_cun,czas,fszerokosc,fdlugosc,atoi(wysokosc),atoi(predkosc),kierunek,temperatura,napiecie,atoi(use_sat),flaga);
|
||||
}
|
||||
CRC_rtty=0xffff; //napiecie flaga
|
||||
CRC_rtty=gps_CRC16_checksum(buf_rtty+7);
|
||||
sprintf(buf_rtty,"%s*%04X\n",buf_rtty,CRC_rtty & 0xffff);
|
||||
rtty_buf = buf_rtty;
|
||||
tx_on = 1;
|
||||
temp = spi_sendrecv(0x0748 | WR);
|
||||
send_cun++;
|
||||
}
|
||||
|
||||
if (new_GPS_msg)
|
||||
{
|
||||
//print(GPS_buf);
|
||||
new_GPS_msg = 0;
|
||||
if (strncmp(GPS_buf,"$GPRMC",6) == 0)
|
||||
{
|
||||
if (czytaj_GPS(gps_RMC_czas,gps_RMC_czas_len,GPS_buf,czas) == 0)
|
||||
{
|
||||
strcpy(czas,"000000");
|
||||
}
|
||||
|
||||
if (czytaj_GPS(gps_RMC_kierunek,gps_RMC_kierunek_len,GPS_buf,kierunek) == 0)
|
||||
{
|
||||
strcpy(kierunek,"0");
|
||||
}
|
||||
if (czytaj_GPS(gps_RMC_szerokosc,gps_RMC_szerokosc_len,GPS_buf,szerokosc) == 0)
|
||||
{
|
||||
strcpy(szerokosc,"0.00000");
|
||||
}
|
||||
|
||||
if (czytaj_GPS(gps_RMC_szerokosc_kier,gps_RMC_szerokosc_kier_len,GPS_buf,&szerokosc_kier) == 0)
|
||||
{
|
||||
szerokosc_kier=0;
|
||||
}
|
||||
|
||||
if (czytaj_GPS(gps_RMC_dlugosc,gps_RMC_dlugosc_len,GPS_buf,dlugosc) == 0)
|
||||
{
|
||||
strcpy(dlugosc,"0.00000");
|
||||
}
|
||||
|
||||
if (czytaj_GPS(gps_RMC_dlugosc_kier,gps_RMC_dlugosc_kier_len,GPS_buf,&dlugosc_kier) == 0)
|
||||
{
|
||||
dlugosc_kier=0;
|
||||
}
|
||||
|
||||
|
||||
if (czytaj_GPS(gps_RMC_status,gps_RMC_status_len,GPS_buf,status) == 0)
|
||||
{
|
||||
strcpy(status,"-");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
if (strncmp(GPS_buf,"$GPGGA",6) == 0)
|
||||
{
|
||||
if (czytaj_GPS(gps_GGA_wysokosc,gps_GGA_wysokosc_len,GPS_buf,wysokosc) == 0)
|
||||
{
|
||||
strcpy(wysokosc,"0");
|
||||
}
|
||||
if (czytaj_GPS(gps_GGA_use_sat,gps_GGA_use_sat_len,GPS_buf,use_sat) == 0)
|
||||
{
|
||||
strcpy(use_sat,"0");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (strncmp(GPS_buf,"$GPVTG",6) == 0)
|
||||
{
|
||||
if (czytaj_GPS(gps_VTG_predkosc,gps_VTG_predkosc_len,GPS_buf,predkosc) == 0)
|
||||
{
|
||||
strcpy(predkosc,"0");
|
||||
}
|
||||
}
|
||||
if(strncmp(GPS_buf,"$GPZDA",6 )== 0 )
|
||||
{
|
||||
switch (GPSConf)
|
||||
{
|
||||
case 0:
|
||||
sendtogps(confGPSNAV, sizeof(confGPSNAV)/sizeof(uint8_t));
|
||||
break;
|
||||
case 1:
|
||||
sendtogps(GPS_GSV_OFF,sizeof(GPS_GSV_OFF)/sizeof(uint8_t));
|
||||
break;
|
||||
case 2:
|
||||
sendtogps(GPS_GSA_OFF,sizeof(GPS_GSA_OFF)/sizeof(uint8_t));
|
||||
break;
|
||||
case 3:
|
||||
sendtogps(GPS_GLL_OFF,sizeof(GPS_GLL_OFF)/sizeof(uint8_t));
|
||||
break;
|
||||
case 4:
|
||||
sendtogps(GPS_ZDA_OFF,sizeof(GPS_ZDA_OFF)/sizeof(uint8_t));
|
||||
break;
|
||||
}
|
||||
GPSConf++;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef DEBUG
|
||||
void assert_failed(uint8_t* file, uint32_t line)
|
||||
{
|
||||
while (1);
|
||||
}
|
||||
#endif
|
|
@ -0,0 +1,531 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<workbench version="2.0">
|
||||
<workbenchAdvisor/>
|
||||
<window>
|
||||
<fastViewData fastViewLocation="1024"/>
|
||||
<perspectiveBar/>
|
||||
<page focus="true" label="Workspace - CooCox CoBuilder">
|
||||
<editors>
|
||||
<editorArea activeWorkbook="DefaultEditorWorkbook">
|
||||
<info part="DefaultEditorWorkbook">
|
||||
<folder appearance="1" expanded="2">
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
<part id="1"/>
|
||||
<part id="2"/>
|
||||
<part id="3"/>
|
||||
<part id="4"/>
|
||||
<part id="5"/>
|
||||
<part id="6"/>
|
||||
<part id="7"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
</editorArea>
|
||||
<editor activePart="true" focus="true" id="org.eclipse.cdt.ui.editor.CEditor" name="main.c" partName="main.c" path="C:/Users/rysiek/Desktop/rtty_v1.4/main.c" title="main.c" tooltip="C:/Users/rysiek/Desktop/rtty_v1.4/main.c" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/rtty/main.c"/>
|
||||
<editorState selectionHorizontalPixel="0" selectionLength="0" selectionOffset="133" selectionTopPixel="0"/>
|
||||
</editor>
|
||||
<editor id="org.eclipse.cdt.ui.editor.CEditor" name="f_rtty.c" partName="f_rtty.c" path="C:/Users/rysiek/Desktop/rtty_v1.4/f_rtty.c" title="f_rtty.c" tooltip="C:/Users/rysiek/Desktop/rtty_v1.4/f_rtty.c" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/rtty/f_rtty.c"/>
|
||||
<editorState selectionHorizontalPixel="0" selectionLength="0" selectionOffset="365" selectionTopPixel="212"/>
|
||||
</editor>
|
||||
<editor id="org.eclipse.cdt.ui.editor.CEditor" name="fun.c" partName="fun.c" path="C:/Users/rysiek/Desktop/rtty_v1.4/fun.c" title="fun.c" tooltip="C:/Users/rysiek/Desktop/rtty_v1.4/fun.c" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/rtty/fun.c"/>
|
||||
<editorState selectionHorizontalPixel="0" selectionLength="0" selectionOffset="3269" selectionTopPixel="2235"/>
|
||||
</editor>
|
||||
<editor id="org.eclipse.cdt.ui.editor.CEditor" name="fun.h" partName="fun.h" path="C:/Users/rysiek/Desktop/rtty_v1.4/fun.h" title="fun.h" tooltip="C:/Users/rysiek/Desktop/rtty_v1.4/fun.h" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/rtty/fun.h"/>
|
||||
<editorState selectionHorizontalPixel="0" selectionLength="0" selectionOffset="339" selectionTopPixel="0"/>
|
||||
</editor>
|
||||
<editor id="org.coocox.builder.ui.editors.repository.RepositoryBrowser" name="Repository" partName="Repository" title="Repository" tooltip="Repository" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.coocox.component.ui.editors.repository.RepositoryElementFactory">
<subPage horizontalPosition="0" selectedItemId="0" subPageIndex="0" verticalPosition="0"/>
|
||||
</input>
|
||||
</editor>
|
||||
<editor id="org.eclipse.cdt.ui.editor.CEditor" name="init.c" partName="init.c" path="C:/Users/rysiek/Desktop/rtty_v1.4/init.c" title="init.c" tooltip="C:/Users/rysiek/Desktop/rtty_v1.4/init.c" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/rtty/init.c"/>
|
||||
<editorState selectionHorizontalPixel="0" selectionLength="0" selectionOffset="223" selectionTopPixel="180"/>
|
||||
</editor>
|
||||
<editor id="org.eclipse.cdt.ui.editor.CEditor" name="stm32f10x_adc.c" partName="stm32f10x_adc.c" path="C:/Users/rysiek/Desktop/rtty_v1.4/stm_lib/src/stm32f10x_adc.c" title="stm32f10x_adc.c" tooltip="C:/Users/rysiek/Desktop/rtty_v1.4/stm_lib/src/stm32f10x_adc.c" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/rtty/stm_lib/src/stm32f10x_adc.c"/>
|
||||
<editorState selectionHorizontalPixel="0" selectionLength="0" selectionOffset="0" selectionTopPixel="21836"/>
|
||||
</editor>
|
||||
<editor id="org.eclipse.cdt.ui.editor.CEditor" name="init.h" partName="init.h" path="C:/Users/rysiek/Desktop/rtty_v1.4/init.h" title="init.h" tooltip="C:/Users/rysiek/Desktop/rtty_v1.4/init.h" workbook="DefaultEditorWorkbook">
|
||||
<input factoryID="org.eclipse.ui.part.FileEditorInputFactory" path="/rtty/init.h"/>
|
||||
<editorState selectionHorizontalPixel="0" selectionLength="0" selectionOffset="94" selectionTopPixel="0"/>
|
||||
</editor>
|
||||
</editors>
|
||||
<views>
|
||||
<view id="org.coocox.builder.ui.views.ProjectView" partName="Project">
|
||||
<viewState CommonNavigator.LINKING_ENABLED="0" horizontalPosition="0" org.eclipse.ui.navigator.resources.workingSets.showTopLevelWorkingSets="0" verticalPosition="19">
|
||||
<expanded>
|
||||
<element path="/rtty"/>
|
||||
<element path="/rtty/cmsis"/>
|
||||
<element path="/rtty/cmsis_boot"/>
|
||||
<element path="/rtty/cmsis_boot/startup"/>
|
||||
<element path="/rtty/stm_lib"/>
|
||||
<element path="/rtty/stm_lib/inc"/>
|
||||
<element path="/rtty/stm_lib/src"/>
|
||||
<element path="/rtty/syscalls"/>
|
||||
</expanded>
|
||||
<selection>
|
||||
<element path="/rtty/f_rtty.c"/>
|
||||
</selection>
|
||||
</viewState>
|
||||
</view>
|
||||
<view id="org.coocox.codebugger.trace.ui.traceview" partName="Semihosting">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.eclipse.debug.ui.RegisterView" partName="Registers">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.eclipse.search.ui.views.SearchView" partName="Search">
|
||||
<viewState isPinned="false">
|
||||
<view IMemento.internal.id="" org.eclipse.search.lastActivation="0"/>
|
||||
</viewState>
|
||||
</view>
|
||||
<view id="org.eclipse.debug.ui.DebugView" partName="Debug">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.eclipse.ui.console.ConsoleView" partName="Console">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.eclipse.cdt.debug.ui.memory.memorybrowser.MemoryBrowser" partName="Memory Browser">
|
||||
<viewState>
|
||||
<MemoryBroser ComboItemsValue="20000bb00;" FocuseTabIndex="0" TabsValue="" TextValue="20000bb00" horizontalPosition="0" verticalPosition="0"/>
|
||||
</viewState>
|
||||
</view>
|
||||
<view id="org.coocox.coassistant.view.CoAssistantView_debug" partName="Peripherals">
|
||||
<viewState horizontalPosition="0" verticalPosition="0"/>
|
||||
</view>
|
||||
<view id="org.eclipse.debug.ui.VariableView" partName="Variables">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.eclipse.cdt.dsf.debug.ui.disassembly.view" partName="Disassembly">
|
||||
<viewState disassembly.syncActiveContext="true" disassembly.trackExpression="false"/>
|
||||
</view>
|
||||
<view id="org.coocox.component.ui.Help" partName="Help">
|
||||
<viewState/>
|
||||
</view>
|
||||
<view id="org.coocox.coassistant.view.CoAssistantView" partName="Peripherals">
|
||||
<viewState horizontalPosition="0" verticalPosition="0"/>
|
||||
</view>
|
||||
</views>
|
||||
<perspectives activePart="org.eclipse.cdt.ui.editor.CEditor" activePerspective="org.coocox.builder.perspective.CoBuilder">
|
||||
<perspective editorAreaTrimState="2" editorAreaVisible="1" fixed="0" version="0.016">
|
||||
<descriptor class="org.coocox.builder.ui.PerspectiveCoBuilder" id="org.coocox.builder.perspective.CoBuilder" label="CooCox CoBuilder"/>
|
||||
<alwaysOnActionSet id="org.coocox.component.ui.actionSet"/>
|
||||
<alwaysOnActionSet id="org.coocox.welcome.ui.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.search.searchActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.annotationNavigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.navigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.keyBindings"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.openFiles"/>
|
||||
<alwaysOnActionSet id="org.eclipse.debug.ui.breakpointActionSet"/>
|
||||
<alwaysOnActionSet id="org.coocox.userspace.actionSet"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.showMemoryAction"/>
|
||||
<hide_menu_item_id id="org.eclipse.jdt.ui.refactoring.menu"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.ShowDisassemblyAction"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.showExpressionsAction"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.showDebugAction"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.showConsoleAction"/>
|
||||
<hide_menu_item_id id="org.eclipse.cdt.debug.internal.ui.actions.ToggleInstructionStepModeAction"/>
|
||||
<hide_menu_item_id id="org.eclipse.jdt.ui.source.menu"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.showMemoryBrowserAction"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.showVariablesAction"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.openProjectExplorerAction"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.trace.actions.ShowTraceControlAction"/>
|
||||
<hide_menu_item_id id="org.eclipse.debug.ui.commands.TerminateAndRelaunch"/>
|
||||
<hide_menu_item_id id="org.coocox.codebugger.configuration.showRegistersAction"/>
|
||||
<hide_toolbar_item_id id="org.eclipse.cdt.debug.internal.ui.actions.ToggleInstructionStepModeAction"/>
|
||||
<hide_toolbar_item_id id="org.eclipse.ui.edit.text.toggleShowSelectedElementOnly"/>
|
||||
<hide_toolbar_item_id id="org.eclipse.debug.ui.commands.TerminateAndRelaunch"/>
|
||||
<view id="org.eclipse.ui.console.ConsoleView"/>
|
||||
<view id="org.coocox.builder.ui.views.ProjectView"/>
|
||||
<view id="org.coocox.component.ui.Help"/>
|
||||
<view id="org.coocox.coassistant.view.CoAssistantView"/>
|
||||
<view id="org.eclipse.search.ui.views.SearchView"/>
|
||||
<fastViewBars/>
|
||||
<layout>
|
||||
<mainWindow>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@1865b28">
|
||||
<folder appearance="2" expanded="2">
|
||||
<page content="org.coocox.component.ui.ComponentView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory"/>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@1966108" ratio="0.7482993" ratioLeft="660" ratioRight="222" relationship="4" relative="org.eclipse.ui.internal.ViewStack@1865b28">
|
||||
<folder activePageID="org.eclipse.ui.console.ConsoleView" appearance="2" expanded="2">
|
||||
<page content="org.eclipse.ui.console.ConsoleView" label="Console"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="stickyFolderRight" ratio="0.75" ratioLeft="954" ratioRight="318" relationship="2" relative="org.eclipse.ui.internal.ViewStack@1865b28">
|
||||
<folder appearance="2" expanded="2">
|
||||
<page content="org.eclipse.help.ui.HelpView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.internal.introview" label="LabelNotFound"/>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@79745e" ratio="0.18203309" ratioLeft="231" ratioRight="1038" relationship="2" relative="org.eclipse.ui.internal.ViewStack@1865b28">
|
||||
<folder appearance="2" expanded="2">
|
||||
<page content="org.coocox.builder.ui.exampleView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory"/>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@13eba88" ratio="0.89758456" ratioLeft="929" ratioRight="106" relationship="2" relative="org.eclipse.ui.internal.ViewStack@79745e">
|
||||
<folder activePageID="org.coocox.component.ui.Help" appearance="2" expanded="2">
|
||||
<page content="org.coocox.component.ui.Help" label="Help"/>
|
||||
<page content="org.coocox.coassistant.view.CoAssistantView" label="Peripherals"/>
|
||||
<page content="org.eclipse.search.ui.views.SearchView" label="Search"/>
|
||||
<page content="org.eclipse.debug.ui.BreakpointView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.views.ContentOutline" label="LabelNotFound"/>
|
||||
<page content="org.coocox.builder.ui.MoreExampleView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
<part id="1"/>
|
||||
<part id="2"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info part="org.eclipse.ui.editorss" ratio="0.28874388" ratioLeft="177" ratioRight="436" relationship="4" relative="org.eclipse.ui.internal.ViewStack@79745e"/>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@1cac4ce" ratio="0.36949152" ratioLeft="327" ratioRight="558" relationship="4" relative="org.eclipse.ui.internal.ViewStack@1865b28">
|
||||
<folder activePageID="org.coocox.builder.ui.views.ProjectView" appearance="2" expanded="2">
|
||||
<page content="org.coocox.builder.ui.views.ProjectView" label="Project"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
|
||||
<part id="0"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
</mainWindow>
|
||||
</layout>
|
||||
</perspective>
|
||||
<perspective editorAreaTrimState="2" editorAreaVisible="1" fixed="0" version="0.016">
|
||||
<descriptor class="org.coocox.codebugger.configuration.ui.Perspective" id="org.coocox.codebugger.configuration.perspective" label="CoDebugger"/>
|
||||
<alwaysOnActionSet id="org.coocox.component.ui.actionSet"/>
|
||||
<alwaysOnActionSet id="org.coocox.welcome.ui.actionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.search.searchActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.annotationNavigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.navigation"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.keyBindings"/>
|
||||
<alwaysOnActionSet id="org.eclipse.ui.actionSet.openFiles"/>
|
||||
<alwaysOnActionSet id="org.eclipse.debug.ui.breakpointActionSet"/>
|
||||
<alwaysOnActionSet id="org.eclipse.debug.ui.debugActionSet"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.newFolder"/>
|
||||
<hide_menu_item_id id="org.coocox.welcome.ui.action.repository"/>
|
||||
<hide_menu_item_id id="org.eclipse.ui.file.save"/>
|
||||
<hide_menu_item_id id="org.eclipse.jdt.ui.refactoring.menu"/>
|
||||
<hide_menu_item_id id="org.eclipse.ui.file.saveAll"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.rebuild"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.openFile"/>
|
||||
<hide_menu_item_id id="org.eclipse.ui.file.saveAs"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.rcp.projectMenu"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.rcp.flashMenu"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.debug"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.showHelpViewAction"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.newFile"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.actions.ConfigurationAction"/>
|
||||
<hide_menu_item_id id="org.eclipse.jdt.ui.source.menu"/>
|
||||
<hide_menu_item_id id="org.coocox.builder.ui.build"/>
|
||||
<hide_menu_item_id id="org.coocox.welcome.ui.action.welcome"/>
|
||||
<hide_menu_item_id id="org.coocox.component.ui.ShowRepositoryAction"/>
|
||||
<hide_toolbar_item_id id="org.coocox.builder.ui.actions.TargetManageAction"/>
|
||||
<hide_toolbar_item_id id="org.coocox.builder.ui.newProject"/>
|
||||
<hide_toolbar_item_id id="org.coocox.welcome.ui.action.repository"/>
|
||||
<hide_toolbar_item_id id="org.eclipse.ui.file.save"/>
|
||||
<hide_toolbar_item_id id="org.coocox.builder.ui.rebuild"/>
|
||||
<hide_toolbar_item_id id="org.coocox.codebugger.configuration.coideFlashEraseAction"/>
|
||||
<hide_toolbar_item_id id="org.coocox.builder.ui.debug"/>
|
||||
<hide_toolbar_item_id id="org.coocox.builder.ui.newFile"/>
|
||||
<hide_toolbar_item_id id="org.coocox.builder.ui.actions.ConfigurationAction"/>
|
||||
<hide_toolbar_item_id id="org.eclipse.ui.edit.text.toggleShowSelectedElementOnly"/>
|
||||
<hide_toolbar_item_id id="org.coocox.builder.ui.build"/>
|
||||
<hide_toolbar_item_id id="org.coocox.welcome.ui.action.welcome"/>
|
||||
<hide_toolbar_item_id id="org.coocox.component.ui.ShowRepositoryAction"/>
|
||||
<hide_toolbar_item_id id="org.coocox.codebugger.configuration.coideProgramDownloadAction"/>
|
||||
<view id="org.eclipse.ui.console.ConsoleView"/>
|
||||
<view id="org.eclipse.debug.ui.DebugView"/>
|
||||
<view id="org.eclipse.cdt.dsf.debug.ui.disassembly.view"/>
|
||||
<view id="org.eclipse.debug.ui.RegisterView"/>
|
||||
<view id="org.coocox.coassistant.view.CoAssistantView_debug"/>
|
||||
<view id="org.coocox.codebugger.trace.ui.traceview"/>
|
||||
<view id="org.eclipse.debug.ui.VariableView"/>
|
||||
<view id="org.coocox.component.ui.Help"/>
|
||||
<view id="org.eclipse.search.ui.views.SearchView"/>
|
||||
<view id="org.eclipse.cdt.debug.ui.memory.memorybrowser.MemoryBrowser"/>
|
||||
<view id="org.coocox.builder.ui.views.ProjectView"/>
|
||||
<fastViewBars/>
|
||||
<viewLayoutRec closeable="false" id="org.eclipse.debug.ui.DebugView"/>
|
||||
<layout>
<mainWindow>
<info folder="true" part="org.eclipse.ui.internal.ViewStack@14e392b">
<folder activePageID="org.coocox.builder.ui.views.ProjectView" appearance="2" expanded="2">
<page content="org.coocox.builder.ui.views.ProjectView" label="Project"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
<part id="0"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="stickyFolderRight" ratio="0.75" ratioLeft="954" ratioRight="318" relationship="2" relative="org.eclipse.ui.internal.ViewStack@14e392b">
<folder appearance="2" expanded="2">
<page content="org.eclipse.help.ui.HelpView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.ui.internal.introview" label="LabelNotFound"/>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@ff3a9e" ratio="0.69945943" ratioLeft="647" ratioRight="278" relationship="4" relative="org.eclipse.ui.internal.ViewStack@14e392b">
<folder activePageID="org.eclipse.debug.ui.DebugView" appearance="2" expanded="2">
<page content="org.eclipse.ui.console.ConsoleView" label="Console"/>
|
||||
<page content="org.eclipse.debug.ui.DebugView" label="Debug"/>
|
||||
<page content="org.eclipse.debug.ui.BreakpointView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
<part id="0"/>
|
||||
<part id="1"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@13c0e64" ratio="0.5" ratioLeft="636" ratioRight="636" relationship="2" relative="org.eclipse.ui.internal.ViewStack@ff3a9e">
<folder activePageID="org.eclipse.debug.ui.VariableView" appearance="2" expanded="2">
<page content="org.coocox.codebugger.trace.ui.traceview" label="Semihosting"/>
|
||||
<page content="org.eclipse.debug.ui.VariableView" label="Variables"/>
|
||||
<page content="org.coocox.component.ui.Help" label="Help"/>
|
||||
<page content="org.eclipse.search.ui.views.SearchView" label="Search"/>
|
||||
<page content="org.eclipse.cdt.debug.ui.memory.memorybrowser.MemoryBrowser" label="Memory Browser"/>
|
||||
<page content="org.eclipse.debug.ui.ExpressionView" label="LabelNotFound"/>
|
||||
<page content="org.eclipse.debug.ui.MemoryView" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
<part id="0"/>
|
||||
<part id="1"/>
|
||||
<part id="2"/>
|
||||
<part id="3"/>
|
||||
<part id="4"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info folder="true" part="org.eclipse.ui.internal.ViewStack@121eb7c" ratio="0.8597321" ratioLeft="1091" ratioRight="178" relationship="2" relative="org.eclipse.ui.internal.ViewStack@14e392b">
<folder activePageID="org.eclipse.cdt.dsf.debug.ui.disassembly.view" appearance="2" expanded="2">
<page content="org.eclipse.cdt.dsf.debug.ui.disassembly.view" label="Disassembly"/>
|
||||
<page content="org.eclipse.debug.ui.RegisterView" label="Registers"/>
|
||||
<page content="org.coocox.coassistant.view.CoAssistantView_debug" label="Peripherals"/>
|
||||
<page content="org.eclipse.ui.views.ContentOutline" label="LabelNotFound"/>
|
||||
<presentation id="org.eclipse.ui.presentations.WorkbenchPresentationFactory">
<part id="0"/>
|
||||
<part id="1"/>
|
||||
<part id="2"/>
|
||||
</presentation>
|
||||
</folder>
|
||||
</info>
|
||||
<info part="org.eclipse.ui.editorss" ratio="0.29979035" ratioLeft="286" ratioRight="668" relationship="2" relative="org.eclipse.ui.internal.ViewStack@14e392b"/>
|
||||
</mainWindow>
|
||||
</layout>
|
||||
</perspective>
|
||||
</perspectives>
|
||||
<workingSets/>
|
||||
<navigationHistory>
|
||||
<editors>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/main.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/cmsis_boot/startup/startup_stm32f10x_md_vl.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/init.h"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/init.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/f_rtty.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/fun.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/fun.h"/>
|
||||
<editor factoryID="org.coocox.component.ui.editors.repository.RepositoryElementFactory" id="org.coocox.builder.ui.editors.repository.RepositoryBrowser">
|
||||
<subPage horizontalPosition="0" selectedItemId="0" subPageIndex="0" verticalPosition="0"/>
|
||||
</editor>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/init.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/f_rtty.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/fun.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/init.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/stm_lib/src/stm32f10x_adc.c"/>
|
||||
<editor factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" path="/rtty/init.h"/>
|
||||
</editors>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10788" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="11202" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="startup_stm32f10x_md_vl.c" index="1">
|
||||
<position info="not_deleted" x="14205" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="init.h" index="2">
|
||||
<position info="not_deleted" x="94" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="init.c" index="3">
|
||||
<position info="not_deleted" x="6655" y="15"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7803" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7794" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7803" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7794" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="1281" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7794" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="342" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7407" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7922" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10102" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10101" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10136" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10188" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10224" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10273" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10319" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10348" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10378" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="10412" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="3981" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="f_rtty.c" index="4">
|
||||
<position info="not_deleted" x="0" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="13763" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="f_rtty.c" index="4">
|
||||
<position info="not_deleted" x="0" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="fun.c" index="5">
|
||||
<position info="not_deleted" x="1034" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="fun.h" index="6">
|
||||
<position info="not_deleted" x="339" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="Repository" index="7"/>
|
||||
<item historyLabel="init.c" index="8">
|
||||
<position info="not_deleted" x="6655" y="15"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="13763" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="f_rtty.c" index="9">
|
||||
<position info="not_deleted" x="0" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="fun.c" index="10">
|
||||
<position info="not_deleted" x="1022" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="init.c" index="11">
|
||||
<position info="not_deleted" x="4763" y="15"/>
|
||||
</item>
|
||||
<item historyLabel="stm32f10x_adc.c" index="12">
|
||||
<position info="not_deleted" x="0" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="init.h" index="13">
|
||||
<position info="not_deleted" x="94" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="519" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="init.c" index="11">
|
||||
<position info="not_deleted" x="223" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="519" y="0"/>
|
||||
</item>
|
||||
<item historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="5568" y="0"/>
|
||||
</item>
|
||||
<item active="true" historyLabel="main.c" index="0">
|
||||
<position info="not_deleted" x="7554" y="37"/>
|
||||
</item>
|
||||
</navigationHistory>
|
||||
<input factoryID="org.eclipse.ui.internal.model.ResourceFactory" path="/" type="8"/>
|
||||
</page>
|
||||
<workbenchWindowAdvisor/>
|
||||
<actionBarAdvisor/>
|
||||
</window>
|
||||
<mruList>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="main.c" tooltip="takie-tam/main.c">
|
||||
<persistable path="/takie-tam/main.c"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="main.c" tooltip="takie-tam/main.c">
|
||||
<persistable path="/takie-tam/main.c"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="startup_stm32f10x_md_vl.c" tooltip="rtty/cmsis_boot/startup/startup_stm32f10x_md_vl.c">
|
||||
<persistable path="/rtty/cmsis_boot/startup/startup_stm32f10x_md_vl.c"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="init.h" tooltip="rtty/init.h">
|
||||
<persistable path="/rtty/init.h"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="stm32f10x_adc.c" tooltip="rtty/stm_lib/src/stm32f10x_adc.c">
|
||||
<persistable path="/rtty/stm_lib/src/stm32f10x_adc.c"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="stm32f10x_gpio.c" tooltip="rtty/stm_lib/src/stm32f10x_gpio.c">
|
||||
<persistable path="/rtty/stm_lib/src/stm32f10x_gpio.c"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="stm32f10x_adc.h" tooltip="rtty/stm_lib/inc/stm32f10x_adc.h">
|
||||
<persistable path="/rtty/stm_lib/inc/stm32f10x_adc.h"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="stm32f10x_rcc.h" tooltip="rtty/stm_lib/inc/stm32f10x_rcc.h">
|
||||
<persistable path="/rtty/stm_lib/inc/stm32f10x_rcc.h"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="stm32f10x_rcc.c" tooltip="rtty/stm_lib/src/stm32f10x_rcc.c">
|
||||
<persistable path="/rtty/stm_lib/src/stm32f10x_rcc.c"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="init.c" tooltip="rtty/init.c">
|
||||
<persistable path="/rtty/init.c"/>
|
||||
</file>
|
||||
<file factoryID="org.coocox.component.ui.editors.repository.RepositoryElementFactory" id="org.coocox.builder.ui.editors.repository.RepositoryBrowser" name="Repository" tooltip="Repository">
|
||||
<persistable>
<subPage/>
|
||||
</persistable>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="fun.h" tooltip="rtty/fun.h">
|
||||
<persistable path="/rtty/fun.h"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="startup_stm32f10x_md_vl.c" tooltip="rtty/cmsis_boot/startup/startup_stm32f10x_md_vl.c">
|
||||
<persistable path="/rtty/cmsis_boot/startup/startup_stm32f10x_md_vl.c"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="init.h" tooltip="rtty/init.h">
|
||||
<persistable path="/rtty/init.h"/>
|
||||
</file>
|
||||
<file factoryID="org.eclipse.ui.part.FileEditorInputFactory" id="org.eclipse.cdt.ui.editor.CEditor" name="stm32f10x_gpio.c" tooltip="rtty/stm_lib/src/stm32f10x_gpio.c">
|
||||
<persistable path="/rtty/stm_lib/src/stm32f10x_gpio.c"/>
|
||||
</file>
|
||||
</mruList>
|
||||
</workbench>
|
|
@ -0,0 +1,23 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<breakpoints>
|
||||
<breakpoint enabled="true" persistant="true" registered="true">
|
||||
<resource path="/rtty/main.c" type="1"/>
|
||||
<marker lineNumber="277" type="org.eclipse.cdt.debug.core.cLineBreakpointMarker">
|
||||
<attrib name="enabled" value="true"/>
|
||||
<attrib name="org.eclipse.cdt.debug.core.condition" value=""/>
|
||||
<attrib name="org.eclipse.debug.core.id" value="org.eclipse.cdt.debug.core"/>
|
||||
<attrib name="workingset_name" value=""/>
|
||||
<attrib name="org.eclipse.cdt.debug.core.installCount" value="0"/>
|
||||
<attrib name="type" value="org.eclipse.cdt.debug.core.cLineBreakpointMarker"/>
|
||||
<attrib name="persistant" value="true"/>
|
||||
<attrib name="org.eclipse.cdt.debug.core.breakpointType" value="0"/>
|
||||
<attrib name="workingset_id" value="org.eclipse.debug.ui.breakpointWorkingSet"/>
|
||||
<attrib name="message" value="Line breakpoint: main.c [line: 327]"/>
|
||||
<attrib name="registered" value="true"/>
|
||||
<attrib name="path" value="/rtty/main.c"/>
|
||||
<attrib name="org.eclipse.cdt.debug.core.sourceHandle" value="F:\Hams\sondy\soft_pbl\rtty\main.c"/>
|
||||
<attrib name="org.eclipse.cdt.debug.core.ignoreCount" value="0"/>
|
||||
<attrib name="org.eclipse.debug.core.enabled" value="true"/>
|
||||
</marker>
|
||||
</breakpoint>
|
||||
</breakpoints>
|
|
@ -0,0 +1,2 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MBs>
<MemoryBroser ComboItemsValue="20000bb00;" FocuseTabIndex="0" TabsValue="" TextValue="20000bb00"/>
</MBs>
|
|
@ -0,0 +1,132 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<Project version="2G - 1.7.8" name="rtty">
|
||||
<Target name="rtty" isCurrent="1">
|
||||
<Device manufacturerId="9" manufacturerName="ST" chipId="252" chipName="STM32F100C8" boardId="" boardName=""/>
|
||||
<BuildOption>
|
||||
<Compile>
|
||||
<Option name="OptimizationLevel" value="0"/>
|
||||
<Option name="UseFPU" value="0"/>
|
||||
<Option name="UserEditCompiler" value=""/>
|
||||
<Option name="SupportCPlusplus" value="0"/>
|
||||
<Includepaths>
|
||||
<Includepath path="."/>
|
||||
</Includepaths>
|
||||
<DefinedSymbols>
|
||||
<Define name="STM32F100C8"/>
|
||||
<Define name="STM32F10X_MD_VL"/>
|
||||
<Define name="USE_STDPERIPH_DRIVER"/>
|
||||
<Define name="__ASSEMBLY__"/>
|
||||
</DefinedSymbols>
|
||||
</Compile>
|
||||
<Link useDefault="0">
|
||||
<Option name="DiscardUnusedSection" value="0"/>
|
||||
<Option name="UserEditLinkder" value=""/>
|
||||
<Option name="UseMemoryLayout" value="1"/>
|
||||
<Option name="nostartfiles" value="1"/>
|
||||
<Option name="LTO" value="0"/>
|
||||
<Option name="IsNewStartupCode" value="1"/>
|
||||
<Option name="Library" value="Not use C Library"/>
|
||||
<LinkedLibraries/>
|
||||
<MemoryAreas debugInFlashNotRAM="1">
|
||||
<Memory name="IROM1" type="ReadOnly" size="0x00010000" startValue="0x08000000"/>
|
||||
<Memory name="IRAM1" type="ReadWrite" size="0x00002000" startValue="0x20000000"/>
|
||||
<Memory name="IROM2" type="ReadOnly" size="" startValue=""/>
|
||||
<Memory name="IRAM2" type="ReadWrite" size="" startValue=""/>
|
||||
</MemoryAreas>
|
||||
<LocateLinkFile path="c:/coocox/coide/configuration/programdata/rtty/arm-gcc-link.ld" type="0"/>
|
||||
</Link>
|
||||
<Output>
|
||||
<Option name="OutputFileType" value="0"/>
|
||||
<Option name="Path" value="./"/>
|
||||
<Option name="Name" value="rtty"/>
|
||||
<Option name="HEX" value="1"/>
|
||||
<Option name="BIN" value="1"/>
|
||||
</Output>
|
||||
<User>
|
||||
<UserRun name="Run#1" type="Before" checked="0" value=""/>
|
||||
<UserRun name="Run#1" type="After" checked="0" value=""/>
|
||||
</User>
|
||||
</BuildOption>
|
||||
<DebugOption>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.adapter" value="ST-Link"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.debugMode" value="SWD"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.clockDiv" value="1M"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.corerunToMain" value="1"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.jlinkgdbserver" value=""/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.userDefineGDBScript" value=""/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.targetEndianess" value="0"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.jlinkResetMode" value="Type 0: Normal"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.resetMode" value="SYSRESETREQ"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.ifSemihost" value="0"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.ifCacheRom" value="1"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.ipAddress" value="127.0.0.1"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.portNumber" value="2009"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.autoDownload" value="1"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.verify" value="1"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.downloadFuction" value="Erase Effected"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.core.defaultAlgorithm" value="STM32F10x_MD_64.elf"/>
|
||||
<Option name="org.coocox.codebugger.gdbjtag.coredebugInRamInitCommands" value="cd F:/Hams/sondy/soft_pbl/rtty/rtty/Debug/bin restore rtty.elf set {unsigned int*}0xE000ED08 = 0x20000000 set $sp = {unsigned int*}0x20000000 set $pc = {unsigned int*}0x20000004 "/>
|
||||
</DebugOption>
|
||||
<ExcludeFile/>
|
||||
</Target>
|
||||
<Components path="./">
|
||||
<Component id="30" name="C Library" path="" type="2"/>
|
||||
<Component id="50" name="CMSIS core" path="" type="2"/>
|
||||
<Component id="440" name="RCC" path="" type="2"/>
|
||||
<Component id="442" name="PWR" path="" type="2"/>
|
||||
<Component id="444" name="GPIO" path="" type="2"/>
|
||||
<Component id="446" name="DMA" path="" type="2"/>
|
||||
<Component id="452" name="SPI" path="" type="2"/>
|
||||
<Component id="455" name="FLASH" path="" type="2"/>
|
||||
<Component id="456" name="TIM" path="" type="2"/>
|
||||
<Component id="457" name="ADC" path="" type="2"/>
|
||||
<Component id="458" name="USART" path="" type="2"/>
|
||||
<Component id="464" name="CMSIS Boot" path="" type="2"/>
|
||||
<Component id="467" name="MISC" path="" type="2"/>
|
||||
</Components>
|
||||
<Files>
|
||||
<File name="cmsis_boot/startup/startup_stm32f10x_md_vl.c" path="cmsis_boot/startup/startup_stm32f10x_md_vl.c" type="1"/>
|
||||
<File name="cmsis_boot/system_stm32f10x.c" path="cmsis_boot/system_stm32f10x.c" type="1"/>
|
||||
<File name="stm_lib/inc/misc.h" path="stm_lib/inc/misc.h" type="1"/>
|
||||
<File name="cmsis/core_cmInstr.h" path="cmsis/core_cmInstr.h" type="1"/>
|
||||
<File name="stm_lib/inc/stm32f10x_tim.h" path="stm_lib/inc/stm32f10x_tim.h" type="1"/>
|
||||
<File name="cmsis/core_cm3.h" path="cmsis/core_cm3.h" type="1"/>
|
||||
<File name="cmsis_boot" path="" type="2"/>
|
||||
<File name="stm_lib/src/stm32f10x_rcc.c" path="stm_lib/src/stm32f10x_rcc.c" type="1"/>
|
||||
<File name="init.h" path="init.h" type="1"/>
|
||||
<File name="stm_lib/src/stm32f10x_tim.c" path="stm_lib/src/stm32f10x_tim.c" type="1"/>
|
||||
<File name="fun.c" path="fun.c" type="1"/>
|
||||
<File name="stm_lib/inc/stm32f10x_pwr.h" path="stm_lib/inc/stm32f10x_pwr.h" type="1"/>
|
||||
<File name="cmsis_boot/startup" path="" type="2"/>
|
||||
<File name="cmsis/core_cmFunc.h" path="cmsis/core_cmFunc.h" type="1"/>
|
||||
<File name="stm_lib/src/misc.c" path="stm_lib/src/misc.c" type="1"/>
|
||||
<File name="stm_lib/src/stm32f10x_spi.c" path="stm_lib/src/stm32f10x_spi.c" type="1"/>
|
||||
<File name="cmsis_boot/stm32f10x.h" path="cmsis_boot/stm32f10x.h" type="1"/>
|
||||
<File name="cmsis_boot/stm32f10x_conf.h" path="cmsis_boot/stm32f10x_conf.h" type="1"/>
|
||||
<File name="stm_lib/src/stm32f10x_dma.c" path="stm_lib/src/stm32f10x_dma.c" type="1"/>
|
||||
<File name="f_rtty.h" path="f_rtty.h" type="1"/>
|
||||
<File name="stm_lib/src" path="" type="2"/>
|
||||
<File name="cmsis" path="" type="2"/>
|
||||
<File name="stm_lib/inc/stm32f10x_flash.h" path="stm_lib/inc/stm32f10x_flash.h" type="1"/>
|
||||
<File name="stm_lib" path="" type="2"/>
|
||||
<File name="syscalls/syscalls.c" path="syscalls/syscalls.c" type="1"/>
|
||||
<File name="stm_lib/src/stm32f10x_flash.c" path="stm_lib/src/stm32f10x_flash.c" type="1"/>
|
||||
<File name="stm_lib/inc/stm32f10x_spi.h" path="stm_lib/inc/stm32f10x_spi.h" type="1"/>
|
||||
<File name="init.c" path="init.c" type="1"/>
|
||||
<File name="stm_lib/inc/stm32f10x_dma.h" path="stm_lib/inc/stm32f10x_dma.h" type="1"/>
|
||||
<File name="stm_lib/src/stm32f10x_adc.c" path="stm_lib/src/stm32f10x_adc.c" type="1"/>
|
||||
<File name="stm_lib/inc/stm32f10x_adc.h" path="stm_lib/inc/stm32f10x_adc.h" type="1"/>
|
||||
<File name="cmsis_boot/system_stm32f10x.h" path="cmsis_boot/system_stm32f10x.h" type="1"/>
|
||||
<File name="fun.h" path="fun.h" type="1"/>
|
||||
<File name="stm_lib/inc/stm32f10x_rcc.h" path="stm_lib/inc/stm32f10x_rcc.h" type="1"/>
|
||||
<File name="syscalls" path="" type="2"/>
|
||||
<File name="stm_lib/src/stm32f10x_usart.c" path="stm_lib/src/stm32f10x_usart.c" type="1"/>
|
||||
<File name="f_rtty.c" path="f_rtty.c" type="1"/>
|
||||
<File name="stm_lib/src/stm32f10x_pwr.c" path="stm_lib/src/stm32f10x_pwr.c" type="1"/>
|
||||
<File name="stm_lib/src/stm32f10x_gpio.c" path="stm_lib/src/stm32f10x_gpio.c" type="1"/>
|
||||
<File name="stm_lib/inc" path="" type="2"/>
|
||||
<File name="stm_lib/inc/stm32f10x_gpio.h" path="stm_lib/inc/stm32f10x_gpio.h" type="1"/>
|
||||
<File name="stm_lib/inc/stm32f10x_usart.h" path="stm_lib/inc/stm32f10x_usart.h" type="1"/>
|
||||
<File name="main.c" path="main.c" type="1"/>
|
||||
</Files>
|
||||
</Project>
|
Ładowanie…
Reference in New Issue