aboutsummaryrefslogtreecommitdiffhomepage
path: root/pyecsca/codegen/hal
diff options
context:
space:
mode:
authorJ08nY2020-03-02 00:03:57 +0100
committerJ08nY2020-03-02 00:03:57 +0100
commitb3e45bf773cec6ecf3f2a702c0b48c9dbfab0c04 (patch)
tree8a232cf9298772e88bfee7f39b973f0e9009cae3 /pyecsca/codegen/hal
parent0341d359dc67ced3f1e65d1d11af3590c1f0992f (diff)
downloadpyecsca-codegen-b3e45bf773cec6ecf3f2a702c0b48c9dbfab0c04.tar.gz
pyecsca-codegen-b3e45bf773cec6ecf3f2a702c0b48c9dbfab0c04.tar.zst
pyecsca-codegen-b3e45bf773cec6ecf3f2a702c0b48c9dbfab0c04.zip
Add reduction functions, add global trigger for whole cmd.
Diffstat (limited to 'pyecsca/codegen/hal')
-rw-r--r--pyecsca/codegen/hal/host/host_hal.h3
-rw-r--r--pyecsca/codegen/hal/stm32f0/stm32f0_hal.c8
-rw-r--r--pyecsca/codegen/hal/stm32f0/stm32f0_hal.h1
-rw-r--r--pyecsca/codegen/hal/stm32f3/stm32f3_hal.c8
-rw-r--r--pyecsca/codegen/hal/stm32f3/stm32f3_hal.h1
5 files changed, 21 insertions, 0 deletions
diff --git a/pyecsca/codegen/hal/host/host_hal.h b/pyecsca/codegen/hal/host/host_hal.h
index ba2fbbe..17b7ff7 100644
--- a/pyecsca/codegen/hal/host/host_hal.h
+++ b/pyecsca/codegen/hal/host/host_hal.h
@@ -1,10 +1,13 @@
#ifndef HOST_HAL_H_
#define HOST_HAL_H_
+#include <stdbool.h>
#include "uart.h"
#define trigger_setup()
#define trigger_high()
+#define trigger_status() false
+#define trigger_flip()
#define trigger_low()
#define init_uart init_uart0
diff --git a/pyecsca/codegen/hal/stm32f0/stm32f0_hal.c b/pyecsca/codegen/hal/stm32f0/stm32f0_hal.c
index 613a20a..f08a340 100644
--- a/pyecsca/codegen/hal/stm32f0/stm32f0_hal.c
+++ b/pyecsca/codegen/hal/stm32f0/stm32f0_hal.c
@@ -107,6 +107,14 @@ bool trigger_status(void)
return trig;
}
+void trigger_flip(void) {
+ if (trig) {
+ trigger_low();
+ } else {
+ trigger_high();
+ }
+}
+
void trigger_low(void)
{
trig = false;
diff --git a/pyecsca/codegen/hal/stm32f0/stm32f0_hal.h b/pyecsca/codegen/hal/stm32f0/stm32f0_hal.h
index d432304..00df927 100644
--- a/pyecsca/codegen/hal/stm32f0/stm32f0_hal.h
+++ b/pyecsca/codegen/hal/stm32f0/stm32f0_hal.h
@@ -10,6 +10,7 @@ char getch(void);
void trigger_setup(void);
void trigger_low(void);
bool trigger_status(void);
+void trigger_flip(void);
void trigger_high(void);
void led_error(unsigned int status);
diff --git a/pyecsca/codegen/hal/stm32f3/stm32f3_hal.c b/pyecsca/codegen/hal/stm32f3/stm32f3_hal.c
index c07fe87..9f40104 100644
--- a/pyecsca/codegen/hal/stm32f3/stm32f3_hal.c
+++ b/pyecsca/codegen/hal/stm32f3/stm32f3_hal.c
@@ -109,6 +109,14 @@ bool trigger_status(void)
return trig;
}
+void trigger_flip(void) {
+ if (trig) {
+ trigger_low();
+ } else {
+ trigger_high();
+ }
+}
+
void trigger_low(void)
{
trig = false;
diff --git a/pyecsca/codegen/hal/stm32f3/stm32f3_hal.h b/pyecsca/codegen/hal/stm32f3/stm32f3_hal.h
index 156a012..fb13792 100644
--- a/pyecsca/codegen/hal/stm32f3/stm32f3_hal.h
+++ b/pyecsca/codegen/hal/stm32f3/stm32f3_hal.h
@@ -30,6 +30,7 @@ char getch(void);
void trigger_setup(void);
void trigger_low(void);
bool trigger_status(void);
+void trigger_flip(void);
void trigger_high(void);
void led_error(unsigned int x);