triface.c

Go to the documentation of this file.
00001 
00044 #include "protocol.h"
00045 #include "hw/hw_input.h"
00046 #include "hw/hw_adc.h"
00047 #include "cfg/cfg_ser.h"
00048 
00049 #include <cfg/macros.h>
00050 
00051 #include <drv/timer.h>
00052 #include <drv/buzzer.h>
00053 #include <drv/ser.h>
00054 
00055 #include <mware/parser.h>
00056 #include <net/keytag.h>
00057 
00058 static Serial fd_ser;
00059 static Serial tag_ser;
00060 
00061 int main(void)
00062 {
00063     kdbg_init();
00064     timer_init();
00065     adc_init();
00066     buz_init();
00067 
00068     IRQ_ENABLE;
00069     INPUT_INIT;
00070 
00071     /* Initialize Tag serial port and data structure */
00072     TagPacket pkt;
00073 
00074     /* Open the main communication port */
00075     ser_init(&fd_ser, CONFIG_TRIFACE_PORT);
00076     ser_setbaudrate(&fd_ser, CONFIG_TRIFACE_BAUDRATE);
00077 
00078     ser_init(&tag_ser, TAG_SER_PORT);
00079     ser_setbaudrate(&tag_ser, TAG_SER_BAUDRATE);
00080 
00081     keytag_init(&pkt, &fd_ser.fd, &tag_ser.fd);
00082 
00083     protocol_init(&fd_ser.fd);
00084 
00085     // Main loop
00086     for(;;)
00087     {
00088         protocol_run(&fd_ser.fd);
00089         keytag_poll(&pkt);
00090     }
00091 
00092     return 0;
00093 }
00094 
00095