Stefan Schuermans
improve 200ms tick and task processing, get rid of UART output of received ethernet frames
Stefan Schuermans commited e5fcec6 at 2012-03-24 19:05:42
#include "arp.h"
#include "cyc_cnt.h"
#include "eth.h"
#include "ip.h"
#include "lcd.h"
#include "leds.h"
#include "switches.h"
#include "uart.h"
#include "udp.h"
unsigned char leds_val = 0x88;
void switches(void)
{
lcd_chr(1, 0, switches_get_state(sw_0) ? '0' : ' ');
lcd_chr(1, 1, switches_get_state(sw_1) ? '1' : ' ');
lcd_chr(1, 2, switches_get_state(sw_2) ? '2' : ' ');
lcd_chr(1, 3, switches_get_state(sw_3) ? '3' : ' ');
lcd_chr(1, 4, switches_get_state(sw_east) ? 'E' : ' ');
lcd_chr(1, 5, switches_get_state(sw_north) ? 'N' : ' ');
lcd_chr(1, 6, switches_get_state(sw_south) ? 'S' : ' ');
lcd_chr(1, 7, switches_get_state(sw_west) ? 'W' : ' ');
lcd_chr(1, 8, switches_get_state(sw_center) ? 'C' : ' ');
lcd_chr(1, 9, switches_get_state(sw_rot_a) ? 'a' : ' ');
lcd_chr(1, 10, switches_get_state(sw_rot_b) ? 'b' : ' ');
unsigned int cnt = switches_get_rot_cnt();
lcd_chr(1, 12, '0' + (cnt >> 9 & 0x7));
lcd_chr(1, 13, '0' + (cnt >> 6 & 0x7));
lcd_chr(1, 14, '0' + (cnt >> 3 & 0x7));
lcd_chr(1, 15, '0' + (cnt & 0x7));
}
void uart(void)
{
unsigned short chr;
while (uart_can_rx()) {
chr = uart_rx();
if (!uart_is_err(chr))
uart_tx(chr);
}
}
void eth_task(void)
{
void *vptr;
unsigned int sz, i;
while (eth_rx(&vptr, &sz))
ethernet_recv(vptr, sz);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX