RPI i2c Master in Freepascal - Raspberry Pi Forums


he everybody!

possible use rpi 0 i2c master in freepascal?
in example code found somewhere on internet can not compile i2c_master. know change / value of constant.
have more example code in freepascal?

on slave side of bus use mikroe pascal avr. , slave/master parameters hardly described in class framework.

http://www.mikroe.com/mikroprog/avr/

later connected tcp socket example lnet

greets wouter van wegen

code: select all

program i2cexample2;  {$mode objfpc}{$h+}  uses     baseunix,     classes,     {$ifdef unix}{$ifdef usecthreads}     cthreads,     {$endif}{$endif}     sysutils;  const     i2c_slave            = 1795;  var     buf                  : packed array [0..1] of char;     c                    : char;     devpath              : string = '/dev/i2c-1';     handle               : cint;     idevaddr             : cint = $04;  begin  try     handle := fpopen(devpath,o_rdwr);     fpioctl(handle, i2c_slave, pointer(idevaddr)); except     writeln('error initalizing i2c');     halt;     end;  while true begin      write('enter digit 1-9:');     readln(c);     if (not(c in ['1'..'9'])) begin         writeln('oops - try again');         continue;         end;     buf[0] := chr(ord(c) - ord('0'));      try         fpwrite(handle, buf, 1);      except         writeln('error writing');         halt;     end; //try      buf[0] := #99;     sleep(10);      try         fpread(handle, buf, 1);     except         writeln('error reading');         halt;     end; //try      writeln('buf=', ord(buf[0]));     end; //while  fpclose(handle);  end.



raspberrypi



Comments