User manual
mikroPascal PRO for dsPIC30/33 and PIC24
MikroElektronika
494
// get 10 rst bytes only of the request, the rest does not matter here
for i := 0 to 9 do
getRequest[i] := SPI_Ethernet_getByte();
getRequest[i] := 0;
// copy httpMethod to ram for use in memcmp routine
for i := 0 to 4 do
tmp[i] := httpMethod[i];
if(memcmp(@getRequest, @tmp, 5) <> 0) then // only GET method is supported here
begin
result := 0;
exit;
end;
Inc(httpCounter); // one more request done
if(getRequest[5] = ‘s’) then // if request path name starts with s,
store dynamic data in transmit buffer
begin
// the text string replied by this request can be interpreted as javascript
statements
// by browsers
result := SPI_Ethernet_putConstString(@httpHeader); // HTTP
header
result := result + SPI_Ethernet_putConstString(@httpMimeTypeScript); // with
text MIME type
// add AN2 value to reply
WordToStr(ADC1_Get_Sample(0), dyna);
tmp := ‘var AN0=’;
result := result + SPI_Ethernet_putString(@tmp);
result := result + SPI_Ethernet_putString(@dyna);
tmp := ‘;’;
result := result + SPI_Ethernet_putString(@tmp);
// add AN3 value to reply
WordToStr(ADC1_Get_Sample(1), dyna);
tmp := ‘var AN1=’;
result := result + SPI_Ethernet_putString(@tmp);
result := result + SPI_Ethernet_putString(@dyna);
tmp := ‘;’;
result := result + SPI_Ethernet_putString(@tmp);
// add PORTB value (buttons) to reply
tmp := ‘var PORTB= ‘;
result := result + SPI_Ethernet_putString(@tmp);
WordToStr(PORTB, dyna);
result := result + SPI_Ethernet_putString(@dyna);
tmp := ‘;’;
result := result + SPI_Ethernet_putString(@tmp);