From 82527e5a81875f40b14749cc7ed103874e928d8c Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 16 Mar 2012 15:04:34 +0000 Subject: named semaphores and priorities, don't set default values like BAUD --- kernel/Makefile.inc | 5 +---- kernel/adc.c | 4 ++-- kernel/clock.c | 4 ++-- kernel/dmx.c | 2 +- kernel/dmx/Makefile | 7 ++----- kernel/kernel.h | 16 +++------------- kernel/tasks.h | 3 +++ kernel/uart.c | 5 ++--- 8 files changed, 16 insertions(+), 30 deletions(-) (limited to 'kernel') diff --git a/kernel/Makefile.inc b/kernel/Makefile.inc index bcb357b..c57faf4 100644 --- a/kernel/Makefile.inc +++ b/kernel/Makefile.inc @@ -12,10 +12,7 @@ SIZE= avr-size CFLAGS= -mmcu=${MCU} -Wall -Os \ -DF_CPU=${F_CPU} \ -DPRESCALE=${PRESCALE} \ - -DNPRIO=${NPRIO} \ - -DSTACK=${STACK} \ - -DNSEMA=${NSEMA} \ - -DBAUD=${BAUD} + -DSTACK=${STACK} LDFLAGS= -mmcu=${MCU} -Wl,-Map,${PROG}.map .SUFFIXES: .lst .hex .bin .srec .ehex .ebin .esrec diff --git a/kernel/adc.c b/kernel/adc.c index e3223a5..4229c2b 100644 --- a/kernel/adc.c +++ b/kernel/adc.c @@ -42,9 +42,9 @@ adc(void *arg) a->value[i] = ADCH; /* ADLAR: 8-bit */ sei(); } - wait(0); + wait(Display); fprintf(stderr, "\n%8lx%8x", now(), a->value[0]); - signal(0); + signal(Display); sleep(0, 100000); } } diff --git a/kernel/clock.c b/kernel/clock.c index 7368bf0..0e49b6f 100644 --- a/kernel/clock.c +++ b/kernel/clock.c @@ -37,9 +37,9 @@ clock(void *arg) if (m == 60) { m = 0; ++h; } if (h == 24) { h = 0; ++d; } - wait(0); + wait(Display); fprintf(stderr, "\r%4d:%.2d:%.2d:%.2d.%1d ", d, h, m, s, ds); - signal(0); + signal(Display); sleep(0, 100000); } diff --git a/kernel/dmx.c b/kernel/dmx.c index c9567a3..846b6d2 100644 --- a/kernel/dmx.c +++ b/kernel/dmx.c @@ -34,7 +34,7 @@ struct pwmarg pwmargs[] = { int main() { - init(NPRIO, NSEMA); + init(nPrio, nSema); uart_init(); lcd_init(); diff --git a/kernel/dmx/Makefile b/kernel/dmx/Makefile index dd55992..fff9553 100644 --- a/kernel/dmx/Makefile +++ b/kernel/dmx/Makefile @@ -2,11 +2,8 @@ MCU= atmega328p F_CPU= 20000000 -PRESCALE= 8 # res 0.5usec cycle 32.7msec -STACK= 48 # min stack size -NSEMA= 2 -NPRIO= 2 -BAUD= 9600 +PRESCALE= 8 +STACK= 48 PROG= dmx SRCS= dmx.c heartbeat.c rgb.c hsv.c clock.c lcd3.c uart.c adc.c ctrl.c diff --git a/kernel/kernel.h b/kernel/kernel.h index 76b8519..768aea2 100644 --- a/kernel/kernel.h +++ b/kernel/kernel.h @@ -18,24 +18,14 @@ #ifndef __KERNEL_H #define __KERNEL_H -#ifndef NPRIO -#warning NPRIO not set, fallback to default: 2 -#define NPRIO 2 -#endif - -#ifndef NSEMA -#warning NSEMA not set, fallback to default: 4 -#define NSEMA 4 -#endif - #ifndef STACK #warning STACK not set, fallback to default: 48 #define STACK 48 #endif -#define MINSTACK (1 * STACK - 2) -#define DEFSTACK (2 * STACK - 2) -#define BIGSTACK (3 * STACK - 2) +#define MINSTACK (1 * STACK) +#define DEFSTACK (2 * STACK) +#define BIGSTACK (3 * STACK) #ifndef F_CPU #warning F_CPU not set, fallback to default: 16MHz diff --git a/kernel/tasks.h b/kernel/tasks.h index 4c52090..26c4734 100644 --- a/kernel/tasks.h +++ b/kernel/tasks.h @@ -41,6 +41,9 @@ #warning "invalid ADCPRESCALE value" #endif +enum Prio { Low, High, nPrio }; +enum Sema { Display, nSema }; + struct rgbarg { uint8_t r; uint8_t g; diff --git a/kernel/uart.c b/kernel/uart.c index 21389c7..ad9d3e6 100644 --- a/kernel/uart.c +++ b/kernel/uart.c @@ -16,8 +16,7 @@ */ #ifndef BAUD -#warning "BAUD not set, fallback to default" -#define BAUD 9600 +#define BAUD 9600 #endif #define USE_RXCIE 1 @@ -26,7 +25,7 @@ #include #include #include -#include +#include /* depends on BAUD and F_CPU */ #include "kernel.h" #include "tasks.h" -- cgit v1.2.3