Skip to content

Commit 6fe8574

Browse files
authored
Merge pull request #207 from sandeepmistry/analog-digital-output-fix
Set full PINCFG register on pinMode(pin, OUTPUT)
2 parents cb9927f + 33efce5 commit 6fe8574

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

cores/arduino/wiring_digital.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,8 @@ void pinMode( uint32_t ulPin, uint32_t ulMode )
5858
break ;
5959

6060
case OUTPUT:
61-
// enable input, to support reading back values
62-
PORT->Group[g_APinDescription[ulPin].ulPort].PINCFG[g_APinDescription[ulPin].ulPin].bit.INEN = 1 ;
63-
64-
// disable pullups
65-
PORT->Group[g_APinDescription[ulPin].ulPort].PINCFG[g_APinDescription[ulPin].ulPin].bit.PULLEN = 0 ;
61+
// enable input, to support reading back values, with pullups disabled
62+
PORT->Group[g_APinDescription[ulPin].ulPort].PINCFG[g_APinDescription[ulPin].ulPin].reg=(uint8_t)(PORT_PINCFG_INEN) ;
6663

6764
// Set pin to output mode
6865
PORT->Group[g_APinDescription[ulPin].ulPort].DIRSET.reg = (uint32_t)(1<<g_APinDescription[ulPin].ulPin) ;

0 commit comments

Comments
 (0)