Program Listing for File pins.h
↰ Return to documentation for file (microsync/src/pins.h
)
#pragma once
#include <asf.h>
#include <stdio.h>
#include <stdint.h>
#include <string.h>
#include "globals.h"
uint32_t pin_name_to_ioport_id(const char* pin_name);
uint32_t pin_name_to_ioport_id(const uint32_t pin_name);
typedef struct {
const char *pin_name;
uint32_t pin_idx;
} pin_map_t;
extern const pin_map_t pin_map[];
class Pin {
private:
bool level;
bool active;
public:
uint32_t pin_idx;
Pin() : level(false), active(true) {};
void set_level(bool level);
void update();
void toggle();
void enable();
void disable();
bool is_active();
};
extern Pin pins[107];
void init_pins();