bcm2835_bindings 1.46.0
bcm2835_bindings: ^1.46.0 copied to clipboard
Broadcom BCM 2835 bindings to "bcm2835" (Mike McCauley) library for Dart.
example/example.dart
import 'dart:io';
import 'package:binary_interop/binary_interop.dart';
import 'package:libc/headers.dart';
import 'package:bcm2835_bindings/headers.dart';
import 'package:bcm2835_bindings/bcm2835_bindings.dart';
/**
* Example program for bcm2835 library
* Blinks a pin on an off every 0.5 secs
*
* http://www.airspayce.com/mikem/bcm2835/blink_8c-example.html
*/
void main(List<String> args) {
var t = new BinaryTypes();
var h = new BinaryTypeHelper(t);
h.addHeaders(LIBC_HEADERS);
h.addHeaders(BCM2835_HEADERS);
var bcm2835 = loadBcm2835Library(t);
if (!bcm2835.bcm2835_init()) {
return;
}
// Set the pin to be an output
bcm2835.bcm2835_gpio_fsel(PIN, Bcm2835Def.BCM2835_GPIO_FSEL_OUTP);
// Blink
while (true) {
// Turn it on
bcm2835.bcm2835_gpio_write(PIN, Bcm2835Def.HIGH);
// wait a bit
bcm2835.bcm2835_delay(500);
// turn it off
bcm2835.bcm2835_gpio_write(PIN, Bcm2835Def.LOW);
// wait a bit
bcm2835.bcm2835_delay(500);
}
bcm2835.bcm2835_close();
return;
}
// Blinks on RPi Plug P1 pin 11 (which is GPIO pin 17)
const PIN = Bcm2835Def.RPI_GPIO_P1_11;