o: ActiveSupport::Cache::Entry :@compressedF:@value"3"û2
| a2dtest.c | ||
|---|---|---|
| 15 | 15 |
|
| 16 | 16 |
//----- Include Files --------------------------------------------------------- |
| 17 | 17 |
#include <avr/io.h> // include I/O definitions (port names, pin names, etc) |
| 18 |
#include <avr/interrupt.h> // include interrupt support |
|
| 18 |
#include <avr/interrupt.h> // include interrupt support |
|
| 19 |
#include <string.h> |
|
| 19 | 20 |
|
| 20 | 21 |
#include "global.h" // include our global settings |
| 21 | 22 |
#include "uart.h" // include uart function library |
| ... | ... | |
| 68 | 69 |
|
| 69 | 70 |
while(1) |
| 70 | 71 |
{
|
| 71 |
u08 c=0; |
|
| 72 |
u08 n; |
|
| 73 |
char radka[100]; |
|
| 72 |
u08 c=0; |
|
| 73 |
u08 n,i; |
|
| 74 |
char radiace[10]; |
|
| 75 |
|
|
| 76 |
char radka[201]; |
|
| 74 | 77 |
|
| 75 |
for(n=0;n<100;n++) radka[n]=0; |
|
| 78 |
for(n=0;n<=100;n++) radka[n]=0; // vynuluj bufferovaci pole |
|
| 79 |
for(n=0;n<10;n++) radiace[n]=0; // vynuluj bufferovaci pole |
|
| 76 | 80 |
|
| 77 |
n=0;
|
|
| 78 |
while(uartReceiveByte(&c))
|
|
| 79 |
{
|
|
| 80 |
radka[n]=c;
|
|
| 81 |
n++;
|
|
| 82 |
} |
|
| 81 |
n=0;
|
|
| 82 |
while(1) // pockej na $ kterym zacina NMEA radka
|
|
| 83 |
{
|
|
| 84 |
uartReceiveByte(&c);
|
|
| 85 |
if(c == '$') break;
|
|
| 86 |
}
|
|
| 83 | 87 |
|
| 84 |
n=0; |
|
| 85 |
while (0!=radka[n]) |
|
| 86 |
{
|
|
| 87 |
uartSendByte(radka[n]); |
|
| 88 |
n++; |
|
| 89 |
timerPause(31); |
|
| 90 |
} |
|
| 88 |
for(i=0;i<100;i++) // nacti maximalne 100 znaku do bufferu |
|
| 89 |
{
|
|
| 90 |
radka[n]=c; |
|
| 91 |
if(c == '\n') break; // kdyz narazis na konec radku zastav nacitani |
|
| 92 |
uartReceiveByte(&c); |
|
| 93 |
n++; |
|
| 94 |
} |
|
| 95 |
|
|
| 96 |
radka[n]=0; // naztav na konec retezce pro zpracovani pomoci strcat |
|
| 97 |
|
|
| 98 |
|
|
| 99 |
itoa(a2dConvert10bit(2),&radiace,10); //a2dConvert8bit(1) |
|
| 100 |
if(n != 0) |
|
| 101 |
{
|
|
| 102 |
strcat(radka, radiace); |
|
| 103 |
strcat(radka,"\r"); |
|
| 104 |
} |
|
| 105 |
n=0; |
|
| 106 |
uartFlushReceiveBuffer(); |
|
| 107 |
|
|
| 108 |
while (0!=radka[n]) |
|
| 109 |
{
|
|
| 110 |
uartSendByte(radka[n]); |
|
| 111 |
n++; |
|
| 112 |
timerPause(35); |
|
| 113 |
} |
|
| 91 | 114 |
|
| 92 |
/* // sample all a2d channels and print them to the terminal |
|
| 93 |
vt100SetCursorPos(2,1); |
|
| 94 |
for(i=0; i<6; i++) |
|
| 95 |
{
|
|
| 96 |
rprintf("Channel %d: %d \r\n", i, a2dConvert8bit(i));
|
|
| 97 |
timerPause(1000); |
|
| 98 |
} |
|
| 99 |
// print the sample number so far |
|
| 100 |
rprintf("Sample # : %d \r\n", a++);*/
|
|
| 101 | 115 |
} |
| 102 | 116 |
|
| 103 | 117 |
return 0; |