udoklein / dcf77

Noise resilient DCF77 decoder library for Arduino
http://blog.blinkenlight.net/experiments/dcf77/dcf77-library/
GNU General Public License v3.0
93 stars 28 forks source link

digitalWrite is used to enable pull up #19

Closed udoklein closed 7 years ago

udoklein commented 7 years ago

The current code works properly for AVR based Arduinos because digitalWrite will enable the pullup. This once used to be the proper way but nowadays pinMode can be used to enable the pullups. This is supposed to be the semantically superior approach as it will (hopefully) also work for all non AVR based Arduinos.

~/s/B/0/B/d/examples (master)> grep dcf77_pull_up -r * DCF77_Scope/DCF77_Scope.ino:const uint8_t dcf77_pull_up = 1; DCF77_Scope/DCF77_Scope.ino:const uint8_t dcf77_pull_up = 1; DCF77_Scope/DCF77_Scope.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up); MB_Emulator/MB_Emulator.ino:const uint8_t dcf77_pull_up = 1; MB_Emulator/MB_Emulator.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up); Simple_Clock/Simple_Clock.ino:const uint8_t dcf77_pull_up = 1; Simple_Clock/Simple_Clock.ino:const uint8_t dcf77_pull_up = 1; Simple_Clock/Simple_Clock.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up); Simple_Clock_with_Timezone_Support/Simple_Clock_with_Timezone_Support.ino:const uint8_t dcf77_pull_up = 1; Simple_Clock_with_Timezone_Support/Simple_Clock_with_Timezone_Support.ino:const uint8_t dcf77_pull_up = 1; Simple_Clock_with_Timezone_Support/Simple_Clock_with_Timezone_Support.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up); Superfilter/Superfilter.ino:const uint8_t dcf77_pull_up = 1; Superfilter/Superfilter.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up); Swiss_Army_Debug_Helper/Swiss_Army_Debug_Helper.ino:const uint8_t dcf77_pull_up = 1; Swiss_Army_Debug_Helper/Swiss_Army_Debug_Helper.ino:const uint8_t dcf77_pull_up = 1; Swiss_Army_Debug_Helper/Swiss_Army_Debug_Helper.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up); The_Clock/The_Clock.ino:const uint8_t dcf77_pull_up = 1; The_Clock/The_Clock.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up); Time_Switch/Time_Switch.ino:const uint8_t dcf77_pull_up = 1; Time_Switch/Time_Switch.ino: digitalWrite(dcf77_sample_pin, dcf77_pull_up);

--> Modify the examples accordingly.

udoklein commented 7 years ago

Fixed it with 2c4694a6f2e12c05340a6be2962a6627897a15fa, also fixed bug in development branch where pinmode was hard coded to high with 6422ee6f95d41c08f53b75dec508f63090a1b7c1.