初始化提交
This commit is contained in:
46
arduino-cli/libraries/RF24/utility/ATTiny/RF24_arch_config.h
Normal file
46
arduino-cli/libraries/RF24/utility/ATTiny/RF24_arch_config.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
TMRh20 2015
|
||||
ATTiny Configuration File
|
||||
*/
|
||||
|
||||
#ifndef __RF24_ARCH_CONFIG_H__
|
||||
#define __RF24_ARCH_CONFIG_H__
|
||||
|
||||
/*** USER DEFINES: ***/
|
||||
//#define FAILURE_HANDLING
|
||||
//#define MINIMAL
|
||||
/**********************/
|
||||
|
||||
#define rf24_max(a, b) (a>b?a:b)
|
||||
#define rf24_min(a, b) (a<b?a:b)
|
||||
|
||||
#if ARDUINO < 100
|
||||
|
||||
#include <WProgram.h>
|
||||
|
||||
#else
|
||||
#include <Arduino.h>
|
||||
#endif
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
// Include the header file for SPI functions ( Main SPI code is contained in RF24.cpp for simplicity )
|
||||
#include "spi.h"
|
||||
|
||||
#define _SPI SPI
|
||||
|
||||
#ifdef SERIAL_DEBUG
|
||||
#define IF_SERIAL_DEBUG(x) ({x;})
|
||||
#else
|
||||
#define IF_SERIAL_DEBUG(x)
|
||||
#if defined(RF24_TINY)
|
||||
#define printf_P(...)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <avr/pgmspace.h>
|
||||
|
||||
#define PRIPSTR "%S"
|
||||
|
||||
#endif // __RF24_ARCH_CONFIG_H__
|
||||
|
||||
55
arduino-cli/libraries/RF24/utility/ATTiny/spi.h
Normal file
55
arduino-cli/libraries/RF24/utility/ATTiny/spi.h
Normal file
@@ -0,0 +1,55 @@
|
||||
// ATTiny support code is from https://github.com/jscrane/RF24
|
||||
|
||||
/**
|
||||
* @file spi.h
|
||||
* \cond HIDDEN_SYMBOLS
|
||||
* Class declaration for SPI helper files
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <Arduino.h>
|
||||
#include <avr/pgmspace.h>
|
||||
|
||||
#define SPI_CLOCK_DIV4 0x00
|
||||
#define SPI_CLOCK_DIV16 0x01
|
||||
#define SPI_CLOCK_DIV64 0x02
|
||||
#define SPI_CLOCK_DIV128 0x03
|
||||
#define SPI_CLOCK_DIV2 0x04
|
||||
#define SPI_CLOCK_DIV8 0x05
|
||||
#define SPI_CLOCK_DIV32 0x06
|
||||
//#define SPI_CLOCK_DIV64 0x07
|
||||
|
||||
#define SPI_MODE0 0x00
|
||||
#define SPI_MODE1 0x04
|
||||
#define SPI_MODE2 0x08
|
||||
#define SPI_MODE3 0x0C
|
||||
|
||||
#define SPI_MODE_MASK 0x0C // CPOL = bit 3, CPHA = bit 2 on SPCR
|
||||
#define SPI_CLOCK_MASK 0x03 // SPR1 = bit 1, SPR0 = bit 0 on SPCR
|
||||
#define SPI_2XCLOCK_MASK 0x01 // SPI2X = bit 0 on SPSR
|
||||
|
||||
class SPIClass {
|
||||
public:
|
||||
static byte transfer(byte _data);
|
||||
|
||||
// SPI Configuration methods
|
||||
|
||||
inline static void attachInterrupt();
|
||||
|
||||
inline static void detachInterrupt(); // Default
|
||||
|
||||
static void begin(); // Default
|
||||
static void end();
|
||||
|
||||
static void setBitOrder(uint8_t);
|
||||
|
||||
static void setDataMode(uint8_t);
|
||||
|
||||
static void setClockDivider(uint8_t);
|
||||
};
|
||||
|
||||
extern SPIClass SPI;
|
||||
|
||||
/**
|
||||
* \endcond
|
||||
*/
|
||||
Reference in New Issue
Block a user