123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- #pragma once
- #include <stdint.h>
- #include "AP_HAL_Linux.h"
- #define LOW 0
- #define HIGH 1
- #define PAGE_SIZE (4*1024)
- #define BLOCK_SIZE (4*1024)
- #define RPI_GPIO_2 2
- #define RPI_GPIO_3 3
- #define RPI_GPIO_4 4
- #define RPI_GPIO_5 5
- #define RPI_GPIO_6 6
- #define RPI_GPIO_7 7
- #define RPI_GPIO_8 8
- #define RPI_GPIO_9 9
- #define RPI_GPIO_10 10
- #define RPI_GPIO_11 11
- #define RPI_GPIO_12 12
- #define RPI_GPIO_13 13
- #define RPI_GPIO_14 14
- #define RPI_GPIO_15 15
- #define RPI_GPIO_16 16
- #define RPI_GPIO_17 17
- #define RPI_GPIO_18 18
- #define RPI_GPIO_19 19
- #define RPI_GPIO_20 20
- #define RPI_GPIO_21 21
- #define RPI_GPIO_22 22
- #define RPI_GPIO_23 23
- #define RPI_GPIO_24 24
- #define RPI_GPIO_25 25
- #define RPI_GPIO_26 26
- #define RPI_GPIO_27 27
- #define RPI_GPIO_28 28
- #define RPI_GPIO_29 29
- #define RPI_GPIO_30 30
- #define RPI_GPIO_31 31
- namespace Linux {
- class GPIO_RPI : public AP_HAL::GPIO {
- public:
- GPIO_RPI();
- void init() override;
- void pinMode(uint8_t pin, uint8_t output) override;
- void pinMode(uint8_t pin, uint8_t output, uint8_t alt) override;
- uint8_t read(uint8_t pin) override;
- void write(uint8_t pin, uint8_t value) override;
- void toggle(uint8_t pin) override;
-
- AP_HAL::DigitalSource* channel(uint16_t n) override;
-
- bool usb_connected(void) override;
- private:
- volatile uint32_t *_gpio;
- };
- }
|