Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit gpio;
- interface
- procedure setup_input(port : string);
- procedure setup_output(port : string);
- procedure port_write(port : string; value : string);
- function port_read(port : string) : string;
- procedure release(port : string);
- implementation
- procedure write_to_file(filename : string; msg : string);
- var
- f : text;
- begin
- Assign(f, filename);
- Append(f);
- Writeln(f, msg);
- Close(f);
- end;
- function read_from_file(filename : string) : string;
- var
- f : text;
- res : string;
- begin
- Assign(f, filename);
- Reset(f);
- Readln(f, res);
- read_from_file := res;
- end;
- procedure setup_input(port : string);
- begin
- write_to_file ('/sys/class/gpio/export', port);
- write_to_file ('/sys/class/gpio/gpio' + port + '/direction', 'in');
- end;
- procedure setup_output(port : string);
- begin
- write_to_file ('/sys/class/gpio/export', port);
- write_to_file ('/sys/class/gpio/gpio' + port + '/direction', 'out');
- end;
- procedure port_write(port : string; value : string);
- begin
- write_to_file ('/sys/class/gpio/gpio' + port + '/value', value);
- end;
- function port_read(port : string) : string;
- begin
- port_read := read_from_file ('/sys/class/gpio/gpio' + port + '/value');
- end;
- procedure release(port : string);
- begin
- write_to_file ('/sys/class/gpio/unexport', port);
- end;
- begin
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement