From 554184343e64c9897637685922eefb8ede8722c6 Mon Sep 17 00:00:00 2001 From: Penguin Date: Tue, 5 May 2020 01:15:47 -0500 Subject: [PATCH] started on framework for test projecgt --- .../.vs/project_oracle_test_prj/v14/.atsuo | Bin 16896 -> 49664 bytes .../project_oracle_test_prj/Config/pc_board.h | 36 ++++++++++++++++ .../Config/pc_master.h | 14 +++++++ .../atmel_start_pins.h | 23 ----------- .../project_oracle_test_prj/drivers/p_gpio.h | 6 +++ .../project_oracle_test_prj/drivers/p_i2c.h | 7 ++++ .../project_oracle_test_prj/drivers/p_tcc.h | 6 +++ .../project_oracle_test_prj/drivers/p_usart.c | 18 ++++++++ .../project_oracle_test_prj/drivers/p_usart.h | 11 +++++ .../project_oracle_test_prj/oracle.c | 12 ++++++ .../project_oracle_test_prj/oracle.h | 27 ++++++++++++ .../project_oracle_test_prj.cproj | 39 ++++++++++++++++++ 12 files changed, 176 insertions(+), 23 deletions(-) create mode 100644 software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_board.h create mode 100644 software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_master.h create mode 100644 software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.c create mode 100644 software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.h diff --git a/software/firmware/project_oracle_test_prj/.vs/project_oracle_test_prj/v14/.atsuo b/software/firmware/project_oracle_test_prj/.vs/project_oracle_test_prj/v14/.atsuo index 0adfae42b9d0610e018b33955acb123571a4c6f1..49c6e5ff69738772a5721a495519ce7bb82e15e0 100644 GIT binary patch literal 49664 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 QVuB4pN4@@!`bUxfA3nl9vH$=8 delta 1545 zcmb_cO-vI}5Z<@DmTke(!djG{wk#OYKwU%#p%g1rq)kJMkcbz9i5Eo;NteVl(e^+* zVFI0lTujuP2M$wo)AOyhTOQ|$@YSQI=)26A!yhUJF`RHltuI%Lt94BfmJwHASw|K1m&tm z)F5gRbqFWIg>WNw7lsln#fJ;r)SC4@ZvG177H0zoc_CrGwY8WIo~(}}m~sa#qEbTX zaV9!uvS)`H+KDIaB%Uc*nj2_velj+~2_vKK*i z0Ow1He#B*XYS~O#HP!=@)`)1q5I9d!X)VkLSqu?lBLrG`RH7cfD-VA~avs6tc~<4n-p z5wqS;Yf+RnK-N8I*2P9WHFh%vChLbqYOfKpQz6jT2MLow;tjx8xhcK0=x4Uou9xRO zee9^(*m}Jgy(YZ}o6<Wmz%>H5WV(ix?UrPK*3w_f}7Gs_s89jkrO#J_6hd6;Xl zr7L=WF!(HctB>NpsStE5_o!fy(*=ou$L`^7a2glm?r`_?Eqb)HC<;%=>L%0ibSoUFU?+NO^HgVx*UCWj9^|l)d7k6MsMC&0IhRPB&GZg)J*S}lZP+6 ziyI13V(=iKGX0kyXX%ChE(Q++XW{$6Rb4C_vNydHyw1awa)rm|+8gYFneh;K<~>#v xAJf%{>2CQU6znjT1jYpnKkb=sV{kj{fW-YOcoIHs;^<8aD6SZOFiQRu+AqWcpqu~z diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_board.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_board.h new file mode 100644 index 00000000..3869c0e5 --- /dev/null +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_board.h @@ -0,0 +1,36 @@ +/* + * pc_board.h + * + * Created: 5/3/2020 6:47:40 PM + * Author: Penguin + */ +#ifndef _PC_BOARD_H_ +#define _PC_BOARD_H_ + +#include + +// SAME54 has 14 pin functions +#define GPIO_PIN_FUNCTION_A 0 +#define GPIO_PIN_FUNCTION_B 1 +#define GPIO_PIN_FUNCTION_C 2 +#define GPIO_PIN_FUNCTION_D 3 +#define GPIO_PIN_FUNCTION_E 4 +#define GPIO_PIN_FUNCTION_F 5 +#define GPIO_PIN_FUNCTION_G 6 +#define GPIO_PIN_FUNCTION_H 7 +#define GPIO_PIN_FUNCTION_I 8 +#define GPIO_PIN_FUNCTION_J 9 +#define GPIO_PIN_FUNCTION_K 10 +#define GPIO_PIN_FUNCTION_L 11 +#define GPIO_PIN_FUNCTION_M 12 +#define GPIO_PIN_FUNCTION_N 13 + +// I2C Config +#define I2C_MASTER_SDA (GPIO_PORTA, 22) +#define I2C_MASTER_SCL (GPIO_PORTA, 23) + +// Debug USART Config +#define USART_DEBUG_RX GPIO(GPIO_PORTB, 24) +#define USART_DEBUG_TX GPIO(GPIO_PORTB, 25) + +#endif \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_master.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_master.h new file mode 100644 index 00000000..9ccc9610 --- /dev/null +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/Config/pc_master.h @@ -0,0 +1,14 @@ +/* + * pc_master.h + * + * Created: 5/3/2020 6:47:27 PM + * Author: Penguin + */ +#ifndef _PC_MASTER_H_ +#define _PC_MASTER_H_ + +// usart debug settings +#define DEBUG_MAX_BUFFER_SIZE (128) + + +#endif \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/atmel_start_pins.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/atmel_start_pins.h index 44a1c394..48712d59 100644 --- a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/atmel_start_pins.h +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/atmel_start_pins.h @@ -8,28 +8,5 @@ #ifndef ATMEL_START_PINS_H_INCLUDED #define ATMEL_START_PINS_H_INCLUDED -#include - -// SAME54 has 14 pin functions - -#define GPIO_PIN_FUNCTION_A 0 -#define GPIO_PIN_FUNCTION_B 1 -#define GPIO_PIN_FUNCTION_C 2 -#define GPIO_PIN_FUNCTION_D 3 -#define GPIO_PIN_FUNCTION_E 4 -#define GPIO_PIN_FUNCTION_F 5 -#define GPIO_PIN_FUNCTION_G 6 -#define GPIO_PIN_FUNCTION_H 7 -#define GPIO_PIN_FUNCTION_I 8 -#define GPIO_PIN_FUNCTION_J 9 -#define GPIO_PIN_FUNCTION_K 10 -#define GPIO_PIN_FUNCTION_L 11 -#define GPIO_PIN_FUNCTION_M 12 -#define GPIO_PIN_FUNCTION_N 13 - -#define PA22 GPIO(GPIO_PORTA, 22) -#define PA23 GPIO(GPIO_PORTA, 23) -#define PB24 GPIO(GPIO_PORTB, 24) -#define PB25 GPIO(GPIO_PORTB, 25) #endif // ATMEL_START_PINS_H_INCLUDED diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_gpio.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_gpio.h index e69de29b..79978271 100644 --- a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_gpio.h +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_gpio.h @@ -0,0 +1,6 @@ +#ifndef _P_GPIO_H_ +#define _P_GPIO_H_ + +void p_gpio_init(void); + +#endif \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_i2c.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_i2c.h index e69de29b..5d60dcd5 100644 --- a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_i2c.h +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_i2c.h @@ -0,0 +1,7 @@ +#ifndef _P_I2C_H_ +#define _P_I2C_H_ + +void p_i2c_init(void); + + +#endif \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_tcc.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_tcc.h index e69de29b..49a7bc21 100644 --- a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_tcc.h +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_tcc.h @@ -0,0 +1,6 @@ +#ifndef _P_TCC_H_ +#define _P_TCC_H_ + + + +#endif \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.c b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.c index e69de29b..4c9bcd87 100644 --- a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.c +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.c @@ -0,0 +1,18 @@ +#include "p_usart.h" + +static usart_async_descriptor debug_inst; +static uint8_t debug_buffer[DEBUG_MAX_BUFFER_SIZE] +void p_usart_init(void) +{ + +} + +void p_write(struct usart_async_descriptor* const inst, const uint8_t* data, uint16_t len) +{ + +} + +void p_debug(const char* str, ...) +{ + +} \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.h index e69de29b..16c73d1c 100644 --- a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.h +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/drivers/p_usart.h @@ -0,0 +1,11 @@ +#ifndef _P_USART_H_ +#define _P_USART_H_ + + +void p_usart_init(void); + +void p_write(struct usart_async_descriptor* const inst, const uint8_t* data, uint16_t len); + +void p_debug(const char* str, ...); + +#endif \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.c b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.c new file mode 100644 index 00000000..4310f82e --- /dev/null +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.c @@ -0,0 +1,12 @@ +/* + * oracle.c + * + * Created: 5/3/2020 7:24:09 PM + * Author: Penguin + */ +#include "oracle.h" + +void oracle_init(void) +{ + +} \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.h b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.h new file mode 100644 index 00000000..ffd0d0d2 --- /dev/null +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/oracle.h @@ -0,0 +1,27 @@ +/* + * oracle.h + * + * Created: 5/3/2020 7:05:17 PM + * Author: Penguin + */ +#ifndef _ORACLE_H_ +#define _ORACLE_H_ + +typedef enum p_err +{ + PE_GOOD = 0x0, // + PE_BAD = 0x1 // +}p_err; + +typedef enum p_log_level +{ + +}p_log_level; +void oracle_init(void); + +int p_qprint(const char* str, ...); + +int p_lprint(const char* str, ...); + + +#endif \ No newline at end of file diff --git a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/project_oracle_test_prj.cproj b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/project_oracle_test_prj.cproj index 80080623..af862181 100644 --- a/software/firmware/project_oracle_test_prj/project_oracle_test_prj/project_oracle_test_prj.cproj +++ b/software/firmware/project_oracle_test_prj/project_oracle_test_prj/project_oracle_test_prj.cproj @@ -457,6 +457,12 @@ compile + + compile + + + compile + compile @@ -469,6 +475,30 @@ compile + + compile + + + compile + + + compile + + + compile + + + compile + + + compile + + + compile + + + compile + compile @@ -856,9 +886,16 @@ compile + + compile + + + compile + + @@ -883,6 +920,8 @@ + +