Я пытаюсь использовать сдвиговый регистр 74HC595, полученный с помощью набора Arduino, в проекте для моего Raspberry Pi; однако код, поставляемый с набором Arduino, не проясняет, как это будет сделано, поскольку многие из вызываемых функций не существуют в C за пределами ArduinoIDE. Предоставленный код выглядит следующим образом:
//www.elegoo.com
//2016.12.9
int tDelay = 100;
int latchPin = 11; // (11) ST_CP [RCK] on 74HC595
int clockPin = 9; // (9) SH_CP [SCK] on 74HC595
int dataPin = 12; // (12) DS [S1] on 74HC595
byte leds = 0;
void updateShiftRegister()
{
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, LSBFIRST, leds);
digitalWrite(latchPin, HIGH);
}
void setup()
{
pinMode(latchPin, OUTPUT);
pinMode(dataPin, OUTPUT);
pinMode(clockPin, OUTPUT);
}
void loop()
{
leds = 0;
updateShiftRegister();
delay(tDelay);
for (int i = 0; i < 8; i++)
{
bitSet(leds, i);
updateShiftRegister();
delay(tDelay);
}
}
Кажется, что Arduino имеет следующие библиотеки, в то время как сам C этого не делает:
- digitalWrite
- pinMode
- shiftOut
- LSBFIRST
Есть ли способ включить библиотеки, предназначенные для Arduino, в пакет C? Должен ли я написать свои собственные библиотеки для работы устройств?