เชนเซเชฒเซ เชนเซเชฌเซเชฐ.
เชเชฆเชพเช เชเชกเชฟเชฏเชพเชณ เช
เชฅเชตเชพ เชตเซเชงเชฐ เชธเซเชเซเชถเชจ เชเชฐเซเชฆเชจเชพเชฐเชพ เชเชฃเชพ เชฒเซเชเซเช เชชเซเชเซเชเชฟเชเช เชชเชฐ เชฐเซเชกเชฟเชฏเซ เชจเชฟเชฏเชเชคเซเชฐเชฟเชค เชเชกเชฟเชฏเชพเชณ เช
เชฅเชตเชพ เชคเซ เช
เชฃเซ เชเชกเชฟเชฏเชพเชณเชจเซ เชฒเซเชเซ เชเซเชฏเซ เชนเชถเซ. เช เชเซเชฌ เช
เชจเซเชเซเชณ เชเซ, เชเชพเชฐเชฃ เชเซ เชคเชฎเชพเชฐเซ เชซเชเซเชค เชเชกเชฟเชฏเชพเชณเชจเซ เชเซเชฌเชฒ เชชเชฐ เชฎเซเชเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ, เช
เชจเซ เชฅเซเชกเชพ เชธเชฎเชฏ เชชเชเซ เชคเซ เชเซเชเซเชเชธ เชธเชฎเชฏ เชธเชพเชฅเซ เชเชชเชฎเซเชณเซ เชเซเช เชตเชพเช เชเชถเซ.
เชเชพเชฒเซ เชเชเซเชคเชฟ เชเชฐเซเช เชเซ เชคเซ เชเซเชตเซ เชฐเซเชคเซ เชเชพเชฐเซเชฏ เชเชฐเซ เชเซ เช
เชจเซ เชชเชพเชฏเชฅเซเชจเชฎเชพเช เชกเซเชเซเชกเชฐ เชฒเชเซ.
เชคเซเชฏเชพเช เชตเชฟเชตเชฟเชง เชธเชฎเชฏ เชธเชฟเชเชเซเชฐเชจเชพเชเชเซเชถเชจ เชธเชฟเชธเซเชเชฎเซเชธ เชเซ. เชฏเซเชฐเซเชชเชฎเชพเช เชธเซเชฅเซ เชตเชงเซ เชฒเซเชเชชเซเชฐเชฟเชฏ เชเชฐเซเชฎเชจ เชธเชฟเชธเซเชเชฎ เชเซ
เชจเซเชเซ เชฒเชเซเชฒเซเช เชฌเชงเซเช DCF77 เชตเชฟเชถเซ เชนเชถเซ.
เชธเชฟเชเซเชจเชฒ เชฐเชฟเชธเซเชชเซเชถเชจ
DCF77 เช เชเช เชฒเชพเชเชฌเซ เชตเซเชต เชธเซเชเซเชถเชจ เชเซ เชเซ 77.5 kHz เชจเซ เชเชตเชฐเซเชคเชจ เชชเชฐ เชเชพเชฐเซเชฏ เชเชฐเซ เชเซ เช
เชจเซ เชเชเชชเชจเชตเชฟเชธเซเชคเชพเชฐ เชฎเซเชกเซเชฏเซเชฒเซเชถเชจเชฎเชพเช เชธเชเชเซเชคเซ เชชเซเชฐเชธเชพเชฐเชฟเชค เชเชฐเซ เชเซ. 50KW เชธเซเชเซเชถเชจ เชซเซเชฐเซเชจเซเชเชซเชฐเซเชเชฅเซ 25 เชเชฟเชฎเซ เชฆเซเชฐ เชเชตเซเชฒเซเช เชเซ, เชคเซเชฃเซ 1959เชฎเชพเช เชเชพเชฎเชเซเชฐเซ เชถเชฐเซ เชเชฐเซ เชนเชคเซ เช
เชจเซ 1973เชฎเชพเช เชคเชพเชฐเซเชเชจเซ เชฎเชพเชนเชฟเชคเซ เชเซเชเซเชเชธ เชธเชฎเชฏเซ เชเชฎเซเชฐเชตเชพเชฎเชพเช เชเชตเซ เชนเชคเซ. 77 KHz เชจเซ เชเชตเชฐเซเชคเชจ เชชเชฐ เชคเชฐเชเชเชฒเชเชฌเชพเช เชเซเชฌ เชฒเชพเชเชฌเซ เชเซ, เชคเซเชฅเซ เชเชจเซเชเซเชจเชพ เชเซเชทเซเชคเซเชฐเชจเชพ เชชเชฐเชฟเชฎเชพเชฃเซ เชชเชฃ เชเซเชฌ เช เชฏเซเชเซเชฏ เชเซ (เชตเชฟเชเชฟเชชเซเชกเชฟเชฏเชพเชฎเชพเชเชฅเซ เชซเซเชเซ):
เชเชตเชพ เชเชจเซเชเซเชจเชพ เช
เชจเซ เชชเชพเชตเชฐ เชเชจเชชเซเช เชธเชพเชฅเซ, เชธเซเชตเชพเชเชค เชตเชฟเชธเซเชคเชพเชฐ เชฒเชเชญเช เชธเชฎเชเซเชฐ เชฏเซเชฐเซเชช, เชฌเซเชฒเชพเชฐเซเชธ, เชฏเซเชเซเชฐเซเชจ เช
เชจเซ เชฐเชถเชฟเชฏเชพเชจเชพ เชญเชพเชเชจเซ เชเชตเชฐเซ เชฒเซ เชเซ.
เชเซเชเชชเชฃ เชธเชฟเชเซเชจเชฒ เชฐเซเชเซเชฐเซเชก เชเชฐเซ เชถเชเซ เชเซ. เช เชเชฐเชตเชพ เชฎเชพเชเซ, เชซเชเซเชค เชเชจเชฒเชพเชเชจ เชฐเซเชธเซเชตเชฐ เชชเชฐ เชเชพเช
เชคเซเชฏเชพเช เชเชชเชฃเซ เชกเชพเชเชจเชฒเซเชก เชฌเชเชจ เชฆเชฌเชพเชตเซเช เชเซเช เช
เชจเซ เชฅเซเชกเซ เชฎเชฟเชจเชฟเชเซ เชฒเชพเชเชฌเซ เชเซเชเชกเซ เชฐเซเชเซเชฐเซเชก เชเชฐเซเช เชเซเช. เช
เชฒเชฌเชคเซเชค, เชเซ เชคเชฎเชพเชฐเซ เชชเชพเชธเซ 77.5KHz เชเชตเชฐเซเชคเชจ เชฐเซเชเซเชฐเซเชก เชเชฐเชตเชพ เชฎเชพเชเซ เชธเชเซเชทเชฎ "เชตเชพเชธเซเชคเชตเชฟเช" เชฐเซเชธเซเชตเชฐ เชนเซเชฏ, เชคเซ เชคเชฎเซ เชคเซเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ.
เช เชฒเชฌเชคเซเชค, เชเชจเซเชเชฐเชจเซเช เชฆเซเชตเชพเชฐเชพ เชฐเซเชกเชฟเชฏเซ เชเชพเชเชฎ เชธเชฟเชเซเชจเชฒ เชชเซเชฐเชพเชชเซเชค เชเชฐเซเชจเซ, เช เชฎเซ เชเชฐเซเชเชฐ เชเซเชเซเชเชธ เชธเชฎเชฏ เชชเซเชฐเชพเชชเซเชค เชเชฐเซเชถเซเช เชจเชนเซเช - เชธเชฟเชเซเชจเชฒ เชตเชฟเชฒเชเชฌ เชธเชพเชฅเซ เชชเซเชฐเชธเชพเชฐเชฟเชค เชฅเชพเชฏ เชเซ. เชชเชฐเชเชคเซ เช เชฎเชพเชฐเซ เชงเซเชฏเซเชฏ เชซเชเซเชค เชธเชฟเชเซเชจเชฒเชจเซ เชฐเชเชจเชพเชจเซ เชธเชฎเชเชตเชพเชจเซ เชเซ; เช เชฎเชพเชเซ, เชเชจเซเชเชฐเชจเซเช เชฐเซเชเซเชฐเซเชกเชฟเชเช เชชเชฐเซเชฏเชพเชชเซเชค เชเชฐเชคเชพเช เชตเชงเซ เชเซ. เชตเชพเชธเซเชคเชตเชฟเช เชเซเชตเชจเชฎเชพเช, เช เชฒเชฌเชคเซเชค, เชตเชฟเชถเชฟเชทเซเช เชเชชเชเชฐเชฃเซเชจเซ เชเชชเชฏเซเช เชชเซเชฐเชพเชชเซเชค เชเชฐเชตเชพ เช เชจเซ เชกเซเชเซเชก เชเชฐเชตเชพ เชฎเชพเชเซ เชฅเชพเชฏ เชเซ; เชคเซเชเชจเซ เชจเซเชเซ เชเชฐเซเชเชพ เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ.
เชคเซเชฅเซ, เช เชฎเชจเซ เชฐเซเชเซเชฐเซเชกเชฟเชเช เชชเซเชฐเชพเชชเซเชค เชฅเชฏเซเช เชเซ, เชเชพเชฒเซ เชคเซเชจเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชถเชฐเซ เชเชฐเซเช.
เชธเชฟเชเซเชจเชฒ เชกเซเชเซเชกเชฟเชเช
เชเชพเชฒเซ Python เชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชซเชพเชเชฒ เชฒเซเชก เชเชฐเซเช เช เชจเซ เชคเซเชจเซเช เชฌเชเชงเชพเชฐเชฃ เชเซเชเช:
from scipy.io import wavfile
from scipy import signal
import matplotlib.pyplot as plt
import numpy as np
sample_rate, data = wavfile.read("dcf_websdr_2019-03-26T20_25_34Z_76.6kHz.wav")
plt.plot(data[:100000])
plt.show()
เช
เชฎเซ เชฒเชพเชเซเชทเชฃเชฟเช เชเชเชชเชจเชตเชฟเชธเซเชคเชพเชฐ เชฎเซเชกเซเชฏเซเชฒเซเชถเชจ เชเซเชเช เชเซเช:
เชกเซเชเซเชกเชฟเชเชเชจเซ เชธเชฐเชณ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ, เชเชพเชฒเซ เชนเชฟเชฒเซเชฌเชฐเซเช เชเซเชฐเชพเชจเซเชธเชซเซเชฐเซเชฎเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชธเชฟเชเซเชจเชฒ เชชเชฐเชฌเชฟเชกเซเชฏเซเช เชฒเชเช:
analytic_signal = signal.hilbert(data)
A = np.abs(analytic_signal)
plt.plot(A[:100000])
เชตเชฟเชธเซเชคเซเชค เชชเชฐเชฟเชฃเชพเชฎ:
เชเชพเชฒเซ เชเชเชพ-เชชเชพเชธ เชซเชฟเชฒเซเชเชฐเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เช
เชตเชพเช เชเชคเซเชธเชฐเซเชเชจเชจเซ เชธเชฐเชณ เชฌเชจเชพเชตเซเช, เช
เชจเซ เชคเซ เช เชธเชฎเชฏเซ เชธเชฐเซเชฐเชพเชถ เชฎเซเชฒเซเชฏเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซเช, เชเซ เชชเชเซเชฅเซ เชชเชฆเชเซเชเซเชฆเชจ เชฎเชพเชเซ เชเชชเชฏเซเชเซ เชฅเชถเซ.
b, a = signal.butter(2, 20.0/sample_rate)
zi = signal.lfilter_zi(b, a)
A, _ = signal.lfilter(b, a, A, zi=zi*A[0])
avg = (np.amax(A) + np.amin(A))/2
เชชเชฐเชฟเชฃเชพเชฎ (เชชเซเชณเซ เชฐเซเชเชพ): เชฒเชเชญเช เชเซเชฐเชธ เชคเชฐเชเช เชธเชฟเชเซเชจเชฒ เชเซ เชเซเชจเซเช เชชเซเชฅเชเซเชเชฐเชฃ เชเชฐเชตเซเช เชเชเชฆเชฎ เชธเชฐเชณ เชเซ.
เชชเชฆเชเซเชเซเชฆเชจ
เชชเซเชฐเชฅเชฎ เชคเชฎเชพเชฐเซ เชฌเซเช เชธเชฟเชเซเชตเชจเซเชธ เชฎเซเชณเชตเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ. เชธเชฟเชเซเชจเชฒ เชฎเชพเชณเชเซเช เชชเซเชคเซ เชเซเชฌ เช เชธเชฐเชณ เชเซ.
เชเช เซเชณเชจเซ เชฌเซเชเชพ เช
เชเชคเชฐเชพเชฒเชฎเชพเช เชตเชฟเชญเชพเชเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เชเซ เชเช เซเชณ เชตเชเซเชเซเชจเซเช เช
เชเชคเชฐ 0.1 เชธเซ เชเซ (เชเชเชฒเซ โโโโเชเซ เชชเชฒเซเชธเชจเซ เชฒเชเชฌเชพเช เชชเซเชคเซ 0.9 เชธเซ เชเซ), เชคเซ เชฌเซเช เชธเชฟเชเซเชตเชจเซเชธเชฎเชพเช "0" เชเชฎเซเชฐเซ; เชเซ เช
เชเชคเชฐ 0.2 เชธเซ (เชเชเชฒเซ โโโโเชเซ เชฒเชเชฌเชพเช 0.8 เชธเซ เชเซ), เชคเซ "1" เชเชฎเซเชฐเซ. เชฆเชฐเซเช เชฎเชฟเชจเชฟเชเชจเซ เช
เชเชค "เชฒเชพเชเชฌเซ" เชชเชฒเซเชธ เชฆเซเชตเชพเชฐเชพ เชธเซเชเชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ, 2 เชธเซ เชฒเชพเชเชฌเซ, เชฌเซเช เชธเชฟเชเซเชตเชจเซเชธ เชถเซเชจเซเชฏ เชชเชฐ เชฐเซเชธเซเช เชฅเชพเชฏ เชเซ, เช
เชจเซ เชซเชฐเซเชฅเซ เชญเชฐเชตเชพเชจเซเช เชถเชฐเซ เชฅเชพเชฏ เชเซ.
เชชเชพเชฏเชฅเซเชจเชฎเชพเช เชเชชเชฐ เชฒเชเชตเซเช เชธเชฐเชณ เชเซ.
sig_start, sig_stop = 0, 0
pos = 0
bits_str = ""
while pos < cnt - 4:
if A[pos] < avg and A[pos+1] > avg:
# Signal begin
sig_start = pos
if A[pos] > avg and A[pos+1] < avg:
# Signal end
sig_stop = pos
diff = sig_stop - sig_start
if diff < 0.85*sample_rate:
bits_str += "1"
if diff > 0.85*sample_rate and diff < 1.25*sample_rate:
bits_str += "0"
if diff > 1.5*sample_rate:
print(bits_str)
bits_str = ""
pos += 1
เชชเชฐเชฟเชฃเชพเชฎเซ, เช เชฎเชจเซ เชฌเชฟเชเซเชธเชจเซ เชเซเชฐเชฎ เชฎเชณเซ เชเซ, เช เชฎเชพเชฐเชพ เชเชฆเชพเชนเชฐเชฃเชฎเชพเช เชฌเซ เชธเซเชเชจเซเชก เชฎเชพเชเซ เชคเซ เชเชจเชพ เชเซเชตเซ เชฆเซเชเชพเชฏ เชเซ:
0011110110111000001011000001010000100110010101100010011000
0001111100110110001010100001010000100110010101100010011000
เชฎเชพเชฐเซเช เชฆเซเชตเชพเชฐเชพ, เชคเซ เชฐเชธเชชเซเชฐเชฆ เชเซ เชเซ เชธเชฟเชเซเชจเชฒเชฎเชพเช เชกเซเชเชพเชจเซ "เชฌเซเชเซ เชธเซเชคเชฐ" เชชเชฃ เชเซ. เชฌเซเช เชธเชฟเชเซเชตเชจเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชจเซเชเซเชก เชชเชฃ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ
เช
เชฎเชพเชฐเซเช เชเซเชฒเซเชฒเซเช เชชเชเชฒเซเช: เชตเชพเชธเซเชคเชตเชฟเช เชกเซเชเชพ เชฎเซเชณเชตเชตเซ. เชฌเชฟเชเซเชธ เชชเซเชฐเชคเชฟ เชธเซเชเชจเซเชกเชฎเชพเช เชเชเชตเชพเชฐ เชชเซเชฐเชธเชพเชฐเชฟเชค เชฅเชพเชฏ เชเซ, เชคเซเชฅเซ เช
เชฎเชพเชฐเซ เชชเชพเชธเซ เชเซเชฒ 59 เชฌเชฟเชเซเชธ เชเซ, เชเซเชฎเชพเช เชเชฃเซ เชฌเชงเซ เชฎเชพเชนเชฟเชคเซ เชเชจเซเชเซเชก เชเชฐเซเชฒเซ เชเซ:
เชฌเชฟเชเซเชธเชฎเชพเช เชตเชฐเซเชฃเชตเซเชฒ เชเซ
เชเซเช เชชเซเชคเชพเชจเซ เชเชพเชคเซ เชชเซเชฐเชฏเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชเซ เชคเซเชฎเชจเชพ เชฎเชพเชเซ เชกเชฟเชเซเชกเชฟเชเช เชเซเชก เชธเซเชชเซเชเชฒเชฐ เชนเซเช เชณ เชเชชเชตเชพเชฎเชพเช เชเชตเซเชฏเซ เชเซ.
เชธเซเชฐเซเชค
def decode(bits):
if bits[0] != '0' or bits[20] != '1':
return
minutes, hours, day_of_month, weekday, month, year = map(convert_block,
(bits[21:28], bits[29:35], bits[36:42], bits[42:45],
bits[45:50], bits[50:58]))
days = ('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
print('{dow}, {dom:02}.{mon:02}.{y}, {h:02}:{m:02}'.format(h=hours, m=minutes, dow=days[weekday],
dom=day_of_month, mon=month, y=year))
def convert_ones(bits):
return sum(2**i for i, bit in enumerate(bits) if bit == '1')
def convert_tens(bits):
return 10*convert_ones(bits)
def right_parity(bits, parity_bit):
num_of_ones = sum(int(bit) for bit in bits)
return num_of_ones % 2 == int(parity_bit)
def convert_block(bits, parity=False):
if parity and not right_parity(bits[:-1], bits[-1]):
return -1
ones = bits[:4]
tens = bits[4:]
return convert_tens(tens) + convert_ones(ones)
เชเซเชฏเชพเชฐเซ เชเชชเชฃเซ เชชเซเชฐเซเชเซเชฐเชพเชฎ เชเชฒเชพเชตเซเช เชเซเช, เชคเซเชฏเชพเชฐเซ เชเชชเชฃเซ เชเชจเชพ เชเซเชตเซเช เช เชเชเชเชชเซเช เชเซเชถเซเช:
0011110110111000001011000001010000100110010101100010011000
Tuesday, 26.03.19, 21:41
0001111100110110001010100001010000100110010101100010011000
Tuesday, 26.03.19, 21:42
เชเชฐเซเชเชฐ, เชคเซ เชฌเชงเซ เชเชพเชฆเซ เชเซ. เชเชตเซ เชธเชฟเชธเซเชเชฎเชจเซ เชซเชพเชฏเชฆเซ เช เชเซ เชเซ เชกเซเชเซเชกเชฟเชเช เช เชคเซเชฏเชเชค เชธเชฐเชณ เชเซ เช เชจเซ เชเซเชเชชเชฃ, เชธเซเชฅเซ เชธเชฐเชณ เชฎเชพเชเชเซเชฐเซเชเชจเซเชเซเชฐเซเชฒเชฐ เชชเชฐ เชชเชฃ เชเชฐเซ เชถเชเชพเชฏ เชเซ. เช เชฎเซ เชซเชเซเชค เชเช เซเชณเชจเซ เชฒเชเชฌเชพเช เชเชฃเซเช เชเซเช, 60 เชฌเชฟเชเซเชธ เชเชเช เชพ เชเชฐเซเช เชเซเช, เช เชจเซ เชฆเชฐเซเช เชฎเชฟเชจเชฟเชเชจเชพ เช เชเชคเซ เช เชฎเชจเซ เชเซเชเซเชเชธ เชธเชฎเชฏ เชฎเชณเซ เชเซ. เชธเชฎเชฏ เชธเซเชฎเซเชณเชจเซ เช เชจเซเชฏ เชชเชฆเซเชงเชคเชฟเช (เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, GPS, เช เชฅเชตเชพ เชเซเชก เชซเซเชฐเชฌเชฟเชก, เชเชจเซเชเชฐเชจเซเช:) เชจเซ เชคเซเชฒเชจเชพเชฎเชพเช, เชเชตเชพ เชฐเซเชกเชฟเชฏเซ เชธเชฟเชเชเซเชฐเซเชจเชพเชเชเซเชถเชจ เชฎเชพเชเซ เชตเชฐเซเชเซเชฏเซเช เชฒ เชฐเซเชคเซ เชเซเช เชตเซเชเชณเซเชจเซ เชเชฐเซเชฐ เชจเชฅเซ - เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, 2 AA เชฌเซเชเชฐเซ เชชเชฐ เชจเชฟเชฏเชฎเชฟเชค เชนเซเชฎ เชตเซเชงเชฐ เชธเซเชเซเชถเชจ เชฒเชเชญเช เชเช เชตเชฐเซเชท เชธเซเชงเซ เชเชพเชฒเซ เชเซ. เชคเซเชฅเซ, เชเชพเชเชกเชพ เชเชกเชฟเชฏเชพเชณเซ เชชเชฃ เชฐเซเชกเชฟเชฏเซ เชธเชฟเชเชเซเชฐเซเชจเชพเชเชเซเชถเชจ เชธเชพเชฅเซ เชฌเชจเชพเชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เช เชฒเชฌเชคเซเชค, เชฆเชฟเชตเชพเชฒ เชเชกเชฟเชฏเชพเชณเซ เช เชฅเชตเชพ เชธเซเชเซเชฐเซเช เชธเซเชเซเชถเชจ เชเชกเชฟเชฏเชพเชณเซเชจเซ เชเชฒเซเชฒเซเช เชจ เชเชฐเชตเซ.
DCF เชจเซ เชธเชเชตเชกเชคเชพ เช
เชจเซ เชธเชฐเชณเชคเชพ เชชเชฃ DIY เชเชคเซเชธเชพเชนเซเชเชจเซ เชเชเชฐเซเชทเซ เชเซ. เชฎเชพเชคเซเชฐ $10-20 เชฎเชพเช เชคเชฎเซ เชคเซเชฏเชพเชฐ เชฐเซเชธเซเชตเชฐ เช
เชจเซ TTL เชเชเชเชชเซเช เชธเชพเชฅเซ เชคเซเชฏเชพเชฐ เชเชจเซเชเซเชจเชพ เชฎเซเชกเซเชฏเซเชฒ เชเชฐเซเชฆเซ เชถเชเซ เชเซ, เชเซ Arduino เช
เชฅเชตเชพ เช
เชจเซเชฏ เชจเชฟเชฏเชเชคเซเชฐเช เชธเชพเชฅเซ เชเชจเซเชเซเช เชเชฐเซ เชถเชเชพเชฏ เชเซ.
Arduino เชฎเชพเชเซ เชชเชนเซเชฒเซเชฅเซ เช เชฒเชเซเชฏเซเช เชเซ
เชเซเช เชเชเซเชเซ เชเซ เชคเซเช เชฐเซเชกเชฟเชฏเซ เชธเชฟเชเชเซเชฐเซเชจเชพเชเชเซเชถเชจ เชธเชพเชฅเซ เชจเชตเซ เชฎเชฟเชเซเชจเชฟเชเชฎ เชเชจเซเชธเซเชเซเชฒ เชเชฐเซเชจเซ เชคเซเชฎเชจเซ เชเซเชจเซ เชฆเชพเชฆเซเชจเซ เชเชกเชฟเชฏเชพเชณเชจเซ เชชเชฃ เช เชชเชเซเชฐเซเชก เชเชฐเซ เชถเชเซ เชเซ:
เชคเชฎเซ "เชฐเซเชกเชฟเชฏเซ เชเชเชเซเชฐเซเชฒเซเชก เชฎเซเชตเชฎเซเชจเซเช" เชเซเชตเชฐเซเชกเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเชฌเซ เชชเชฐ เชเช เชถเซเชงเซ เชถเชเซ เชเซ.
เช เชจเซ เชเซเชฒเซเชฒเซ, เชเซเชฎเชฃเซ เชเชเชฒเซเช เชตเชพเชเชเซเชฏเซเช เชเซ เชคเซเชฎเชจเชพ เชฎเชพเชเซ เชฒเชพเชเชซ เชนเซเช. เชเซ เชเชเชพเชฎเซ เชฌเซ เชนเชเชพเชฐ เชเชฟเชฎเซเชฎเชพเช เชเช เชชเชฃ เชฐเซเชกเชฟเชฏเซ เชธเชฟเชเซเชจเชฒ เชเซเชฐเชพเชจเซเชธเชฎเซเชเชฐ เชจ เชนเซเชฏ เชคเซ เชชเชฃ เชเชตเชพ เชธเชฟเชเซเชจเชฒ เชเชพเชคเซ เชเชจเชฐเซเช เชเชฐเชตเชพ เชฎเซเชถเซเชเซเชฒ เชจเชฅเซ. เชเซเชเชฒ เชชเซเชฒเซ เชชเชฐ "DCF77 เชเชฎเซเชฏเซเชฒเซเชเชฐ" เชจเชพเชฎเชจเซ เชเช เชชเซเชฐเซเชเซเชฐเชพเชฎ เชเซ เชเซ เชนเซเชกเชซเซเชจ เชชเชฐ เชธเชฟเชเซเชจเชฒ เชเชเชเชชเซเช เชเชฐเซ เชเซ. เชฒเซเชเชเชจเชพ เชฎเชคเซ, เชเซ เชคเชฎเซ เชเชกเชฟเชฏเชพเชณเชจเซ เชเชเซเชฌเชพเชเซ เชนเซเชกเชซเซเชจเซเชธเชจเชพ เชตเชพเชฏเชฐเชจเซ เชฒเชชเซเชเซ เชฒเซ, เชคเซ เชคเซเช เชธเชฟเชเซเชจเชฒเชจเซ เชชเชธเชเชฆ เชเชฐเชถเซ (เชคเซ เชเซเชตเซ เชฐเซเชคเซ เชฐเชธเชชเซเชฐเชฆ เชเซ, เชเชพเชฐเชฃ เชเซ เชธเชพเชฎเชพเชจเซเชฏ เชนเซเชกเชซเซเชจ 77KHz เชธเชฟเชเซเชจเชฒ เชเชคเซเชชเชจเซเชจ เชเชฐเชถเซ เชจเชนเซเช, เชชเชฐเชเชคเซ เชฐเชฟเชธเซเชชเซเชถเชจ เชเชฆเชพเช เชนเชพเชฐเซเชฎเซเชจเชฟเชเซเชธเชจเซ เชเชพเชฐเชฃเซ เชเซ). เชเชจเซเชกเซเชฐเซเชเชก 9 เชชเชฐ, เชชเซเชฐเซเชเซเชฐเชพเชฎ เชฎเชพเชฐเชพ เชฎเชพเชเซ เชฌเชฟเชฒเชเซเชฒ เชเชพเชฎ เชเชฐเชคเซเช เชจ เชนเชคเซเช - เชคเซเชฏเชพเช เชเซเช เช เชตเชพเช เชจ เชนเชคเซ (เช เชฅเชตเชพ เชเชฆเชพเช เชฎเซเช เชคเซ เชธเชพเชเชญเชณเซเชฏเซเช เชจ เชนเชคเซเช - เชคเซ 77KHz เชเซ, เชเซเชตเชเซ:), เชชเชฐเชเชคเซ เชเชฆเชพเช เชเซเชเชจเซ เชตเชงเซ เชธเชพเชฐเซเช เชจเชธเซเชฌ เชนเชถเซ. เชเซ เชเซ, เชเซเชเชฒเชพเช เชชเซเชคเชพเชจเซ เชธเชเชชเซเชฐเซเชฃ DCF เชธเชฟเชเซเชจเชฒ เชเชจเชฐเซเชเชฐ เชฌเชจเชพเชตเซ เชเซ, เชเซ เชธเชฎเชพเชจ Arduino เช เชฅเชตเชพ ESP32 เชชเชฐ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ เชธเชฐเชณ เชเซ:
(เชธเซเชคเซเชฐเซเชค
เชจเชฟเชทเซเชเชฐเซเชท
เชกเซเชธเซเชเชซ เชธเชฟเชธเซเชเชฎ เชเชฐเซเชเชฐ เชเชเชฆเชฎ เชธเชฐเชณ เช
เชจเซ เช
เชจเซเชเซเชณ เชนเซเชตเชพเชจเซเช เชฌเชนเชพเชฐ เชเชตเซเชฏเซเช เชเซ. เชเช เชธเชฐเชณ เช
เชจเซ เชธเชธเซเชคเชพ เชฐเซเชธเซเชตเชฐเชจเซ เชฎเชฆเชฆเชฅเซ, เชคเชฎเซ เชนเชเชฎเซเชถเชพ เช
เชจเซ เชฆเชฐเซเช เชเชเซเชฏเชพเช เชเซเชเซเชเชธ เชธเชฎเชฏ เชฎเซเชณเชตเซ เชถเชเซ เชเซ, เช
เชฒเชฌเชคเซเชค เชฐเชฟเชธเซเชชเซเชถเชจ เชเชฐเชฟเชฏเชพเชฎเชพเช. เชเชตเซเช เชฒเชพเชเซ เชเซ เชเซ เชตเซเชฏเชพเชชเช เชกเชฟเชเชฟเชเชฒเชพเชเชเซเชถเชจ เช
เชจเซ เชตเชธเซเชคเซเชเชจเซเช เชเชจเซเชเชฐเชจเซเช เชนเซเชตเชพ เชเชคเชพเช, เชเชตเชพ เชธเชฐเชณ เชเชเซเชฒเซ เชฒเชพเชเชฌเชพ เชธเชฎเชฏเชฅเซ เชฎเชพเชเชเชฎเชพเช เชฐเชนเซเชถเซ.
เชธเซเชฐเซเชธ: www.habr.com