CircuitPython version
Adafruit CircuitPython 8.1.0 on 2023-05-22; Adafruit Metro M4 Express with samd51j19
Code/REPL
import board
import busio
import digitalio
print("\n")
cs = digitalio.DigitalInOut(board.D5)
cs.direction = digitalio.Direction.OUTPUT
spi = busio.SPI(clock=board.SCK, MOSI=board.MOSI, MISO=board.MISO)
while not spi.try_lock():
pass
baudrates = [1,10,100,1000,5000,10000,25000,50000,100000,500000,1000000,2000000,3000000,4000000,
5000000,6000000,7000000,8000000,9000000,10000000,11000000,12000000,13000000,14000000,15000000,16000000,
17000000,18000000,19000000,20000000,24000000,30000000,40000000,48000000,60000000,75000000,100000000]
for baudrate in baudrates:
spi.configure(baudrate=baudrate, phase=1, polarity=0)
print("GIVEN BAUDRATE:", baudrate, "ACTUAL:", spi.frequency)
Behavior
code.py output:
]0;🐍code.py | 8.1.0\
GIVEN BAUDRATE: 1 ACTUAL: 93750
GIVEN BAUDRATE: 10 ACTUAL: 93750
GIVEN BAUDRATE: 100 ACTUAL: 93750
GIVEN BAUDRATE: 1000 ACTUAL: 93750
GIVEN BAUDRATE: 5000 ACTUAL: 93750
GIVEN BAUDRATE: 10000 ACTUAL: 93750
GIVEN BAUDRATE: 25000 ACTUAL: 93750
GIVEN BAUDRATE: 50000 ACTUAL: 93750
GIVEN BAUDRATE: 100000 ACTUAL: 100000
GIVEN BAUDRATE: 500000 ACTUAL: 500000
GIVEN BAUDRATE: 1000000 ACTUAL: 1000000
GIVEN BAUDRATE: 2000000 ACTUAL: 2000000
GIVEN BAUDRATE: 3000000 ACTUAL: 3000000
GIVEN BAUDRATE: 4000000 ACTUAL: 4000000
GIVEN BAUDRATE: 5000000 ACTUAL: 4800000
GIVEN BAUDRATE: 6000000 ACTUAL: 6000000
GIVEN BAUDRATE: 7000000 ACTUAL: 8000000
GIVEN BAUDRATE: 8000000 ACTUAL: 8000000
GIVEN BAUDRATE: 9000000 ACTUAL: 8000000
GIVEN BAUDRATE: 10000000 ACTUAL: 12000000
GIVEN BAUDRATE: 11000000 ACTUAL: 12000000
GIVEN BAUDRATE: 12000000 ACTUAL: 12000000
GIVEN BAUDRATE: 13000000 ACTUAL: 12000000
GIVEN BAUDRATE: 14000000 ACTUAL: 12000000
GIVEN BAUDRATE: 15000000 ACTUAL: 12000000
GIVEN BAUDRATE: 16000000 ACTUAL: 12000000
GIVEN BAUDRATE: 17000000 ACTUAL: 24000000
GIVEN BAUDRATE: 1800000 ACTUAL: 24000000
GIVEN BAUDRATE: 19000000 ACTUAL: 24000000
GIVEN BAUDRATE: 20000000 ACTUAL: 24000000
GIVEN BAUDRATE: 24000000 ACTUAL: 24000000
GIVEN BAUDRATE: 30000000 ACTUAL: 24000000
GIVEN BAUDRATE: 40000000 ACTUAL: 24000000
GIVEN BAUDRATE: 48000000 ACTUAL: 24000000
GIVEN BAUDRATE: 60000000 ACTUAL: 24000000
GIVEN BAUDRATE: 75000000 ACTUAL: 24000000
GIVEN BAUDRATE: 100000000 ACTUAL: 24000000
]0;🐍Done | 8.1.0
Code done running.
Description
Hello, can someone help me to understand why doesn't the frequency match with the given baudrate?
Additional information
No response
CircuitPython version
Code/REPL
Behavior
code.py output:
]0;🐍code.py | 8.1.0\
GIVEN BAUDRATE: 1 ACTUAL: 93750
GIVEN BAUDRATE: 10 ACTUAL: 93750
GIVEN BAUDRATE: 100 ACTUAL: 93750
GIVEN BAUDRATE: 1000 ACTUAL: 93750
GIVEN BAUDRATE: 5000 ACTUAL: 93750
GIVEN BAUDRATE: 10000 ACTUAL: 93750
GIVEN BAUDRATE: 25000 ACTUAL: 93750
GIVEN BAUDRATE: 50000 ACTUAL: 93750
GIVEN BAUDRATE: 100000 ACTUAL: 100000
GIVEN BAUDRATE: 500000 ACTUAL: 500000
GIVEN BAUDRATE: 1000000 ACTUAL: 1000000
GIVEN BAUDRATE: 2000000 ACTUAL: 2000000
GIVEN BAUDRATE: 3000000 ACTUAL: 3000000
GIVEN BAUDRATE: 4000000 ACTUAL: 4000000
GIVEN BAUDRATE: 5000000 ACTUAL: 4800000
GIVEN BAUDRATE: 6000000 ACTUAL: 6000000
GIVEN BAUDRATE: 7000000 ACTUAL: 8000000
GIVEN BAUDRATE: 8000000 ACTUAL: 8000000
GIVEN BAUDRATE: 9000000 ACTUAL: 8000000
GIVEN BAUDRATE: 10000000 ACTUAL: 12000000
GIVEN BAUDRATE: 11000000 ACTUAL: 12000000
GIVEN BAUDRATE: 12000000 ACTUAL: 12000000
GIVEN BAUDRATE: 13000000 ACTUAL: 12000000
GIVEN BAUDRATE: 14000000 ACTUAL: 12000000
GIVEN BAUDRATE: 15000000 ACTUAL: 12000000
GIVEN BAUDRATE: 16000000 ACTUAL: 12000000
GIVEN BAUDRATE: 17000000 ACTUAL: 24000000
GIVEN BAUDRATE: 1800000 ACTUAL: 24000000
GIVEN BAUDRATE: 19000000 ACTUAL: 24000000
GIVEN BAUDRATE: 20000000 ACTUAL: 24000000
GIVEN BAUDRATE: 24000000 ACTUAL: 24000000
GIVEN BAUDRATE: 30000000 ACTUAL: 24000000
GIVEN BAUDRATE: 40000000 ACTUAL: 24000000
GIVEN BAUDRATE: 48000000 ACTUAL: 24000000
GIVEN BAUDRATE: 60000000 ACTUAL: 24000000
GIVEN BAUDRATE: 75000000 ACTUAL: 24000000
GIVEN BAUDRATE: 100000000 ACTUAL: 24000000
]0;🐍Done | 8.1.0
Code done running.
Description
Hello, can someone help me to understand why doesn't the frequency match with the given baudrate?
Additional information
No response