mirror of
https://github.com/esp8266/Arduino.git
synced 2025-07-07 06:01:35 +03:00
Fix digitalPinToBitMask(), portOutputRegister(), portInputRegister() … (#4964)
* fix digitalPinToBitMask(), portOutputRegister(), portInputRegister() and portModeRegister() error when the pin is GPIO16.
This commit is contained in:
committed by
Earle F. Philhower, III
parent
03ea61a32a
commit
799193888a
@ -224,12 +224,13 @@ void loop(void);
|
|||||||
void yield(void);
|
void yield(void);
|
||||||
void optimistic_yield(uint32_t interval_us);
|
void optimistic_yield(uint32_t interval_us);
|
||||||
|
|
||||||
#define digitalPinToPort(pin) (0)
|
#define _PORT_GPIO16 1
|
||||||
#define digitalPinToBitMask(pin) (1UL << (pin))
|
#define digitalPinToPort(pin) (((pin)==16)?(_PORT_GPIO16):(0))
|
||||||
|
#define digitalPinToBitMask(pin) (((pin)==16)?(1):(1UL << (pin)))
|
||||||
#define digitalPinToTimer(pin) (0)
|
#define digitalPinToTimer(pin) (0)
|
||||||
#define portOutputRegister(port) ((volatile uint32_t*) &GPO)
|
#define portOutputRegister(port) (((port)==_PORT_GPIO16)?((volatile uint32_t*) &GP16O):((volatile uint32_t*) &GPO))
|
||||||
#define portInputRegister(port) ((volatile uint32_t*) &GPI)
|
#define portInputRegister(port) (((port)==_PORT_GPIO16)?((volatile uint32_t*) &GP16I):((volatile uint32_t*) &GPI))
|
||||||
#define portModeRegister(port) ((volatile uint32_t*) &GPE)
|
#define portModeRegister(port) (((port)==_PORT_GPIO16)?((volatile uint32_t*) &GP16E):((volatile uint32_t*) &GPE))
|
||||||
|
|
||||||
#define NOT_A_PIN -1
|
#define NOT_A_PIN -1
|
||||||
#define NOT_A_PORT -1
|
#define NOT_A_PORT -1
|
||||||
|
Reference in New Issue
Block a user