Signed-off-by: Keith Packard <keithp@keithp.com>
ao_config.c \
ao_task.c \
ao_led.c \
+ ao_beep_stm.c \
ao_dma_stm.c \
ao_stdio.c \
ao_panic.c \
ao_usb_stm.c \
ao_serial_stm.c \
ao_flash_stm.c \
- ao_lisp_lex.c \
- ao_lisp_mem.c \
+ ao_lisp_atom.c \
+ ao_lisp_builtin.c \
ao_lisp_cons.c \
+ ao_lisp_error.c \
ao_lisp_eval.c \
- ao_lisp_string.c \
- ao_lisp_atom.c \
+ ao_lisp_frame.c \
ao_lisp_int.c \
+ ao_lisp_lambda.c \
+ ao_lisp_lex.c \
+ ao_lisp_mem.c \
ao_lisp_poly.c \
- ao_lisp_builtin.c \
ao_lisp_read.c \
ao_lisp_rep.c \
- ao_lisp_frame.c \
- ao_lisp_error.c \
- ao_lisp_lambda.c \
ao_lisp_save.c \
+ ao_lisp_stack.c \
+ ao_lisp_string.c \
ao_lisp_os_save.c
PRODUCT=Nucleo-32
#include <ao.h>
#include <ao_lisp.h>
+#include <ao_beep.h>
static void lisp_cmd() {
ao_lisp_read_eval_print();
}
+static void beep() {
+ ao_beep_for(AO_BEEP_MID, AO_MS_TO_TICKS(200));
+}
+
static const struct ao_cmds blink_cmds[] = {
{ lisp_cmd, "l\0Run lisp interpreter" },
+ { beep, "b\0Beep" },
{ 0, 0 }
};
ao_dma_init();
ao_usb_init();
ao_serial_init();
+ ao_beep_init();
ao_cmd_init();
ao_cmd_register(blink_cmds);
ao_start_scheduler();
#define HAS_USB 1
#define AO_USB_DIRECTIO 0
#define AO_PA11_PA12_RMP 0
-#define HAS_BEEP 0
+#define HAS_BEEP 1
+
+#define BEEPER_TIMER 2
+#define BEEPER_CHANNEL 4
+#define BEEPER_PORT (&stm_gpioa)
+#define BEEPER_PIN 3
#define IS_FLASH_LOADER 0