reflow-oven-control-sw/stm-firmware/syscalls.c

73 lines
808 B
C
Raw Normal View History

2020-02-12 21:06:52 +01:00
#include <stm-periph/uart.h>
#include <sys/types.h>
#include <errno.h>
#include <stddef.h>
2020-01-26 15:27:06 +01:00
char* _sbrk(int incr)
{
extern char heap_low; // Defined by the linker
extern char heap_top;
static char *heap_end;
char *prev_heap_end;
if (heap_end == 0) {
heap_end = &heap_low;
}
prev_heap_end = heap_end;
if (heap_end + incr > &heap_top) {
errno = ENOMEM;
return (char *)-1;
}
heap_end += incr;
return (char *) prev_heap_end;
}
int _isatty(int fd)
{
(void)fd;
2020-01-26 15:27:06 +01:00
return 1;
}
int _close(int fd)
{
(void)fd;
2020-01-26 15:27:06 +01:00
return 0;
}
int _open(int fd)
{
(void)fd;
2020-01-26 15:27:06 +01:00
return 0;
}
int _fstat(void)
{
2020-01-26 15:27:06 +01:00
return 0;
}
int _lseek(void)
{
2020-01-26 15:27:06 +01:00
return 0;
}
int _read(void)
{
2020-01-26 15:27:06 +01:00
return 0;
}
int _write(int fd, const void *buf, int count)
{
if (fd == 1)
uart_send_array((char*)buf, count);
2020-01-26 15:27:06 +01:00
return count;
}