Merge remote-tracking branch 'upstream/main' into stm32-timer-allocator
This commit is contained in:
commit
c72e3536f1
|
@ -238,6 +238,8 @@ jobs:
|
|||
- "pyruler"
|
||||
- "robohatmm1_m4"
|
||||
- "sam32"
|
||||
- "same54_xplained"
|
||||
- "seeeduino_wio_terminal"
|
||||
- "seeeduino_xiao"
|
||||
- "serpente"
|
||||
- "shirtty"
|
||||
|
@ -368,6 +370,7 @@ jobs:
|
|||
board:
|
||||
- "espressif_saola_1_wroom"
|
||||
- "espressif_saola_1_wrover"
|
||||
- "unexpectedmaker_feathers2"
|
||||
|
||||
steps:
|
||||
- name: Set up Python 3.8
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Contributing
|
||||
Please note that this project is released with a
|
||||
[Contributor Code of Conduct](https://github.com/adafruit/circuitpython/blob/master/CODE_OF_CONDUCT.md).
|
||||
[Contributor Code of Conduct](https://github.com/adafruit/circuitpython/blob/main/CODE_OF_CONDUCT.md).
|
||||
By participating in this project you agree to abide by its terms. Participation
|
||||
covers any forum used to converse about CircuitPython including unofficial and official spaces. Failure to do
|
||||
so will result in corrective actions such as time out or ban from the project.
|
||||
|
|
46
Makefile
46
Makefile
|
@ -243,3 +243,49 @@ stubs:
|
|||
update-frozen-libraries:
|
||||
@echo "Updating all frozen libraries to latest tagged version."
|
||||
cd frozen; for library in *; do cd $$library; ../../tools/git-checkout-latest-tag.sh; cd ..; done
|
||||
|
||||
one-of-each: samd21 samd51 esp32s2 litex mimxrt10xx nrf stm
|
||||
|
||||
samd21:
|
||||
$(MAKE) -C ports/atmel-samd BOARD=trinket_m0
|
||||
|
||||
samd51:
|
||||
$(MAKE) -C ports/atmel-samd BOARD=feather_m4_express
|
||||
|
||||
esp32s2:
|
||||
$(MAKE) -C ports/esp32s2 BOARD=espressif_saola_1_wroom
|
||||
|
||||
litex:
|
||||
$(MAKE) -C ports/litex BOARD=fomu
|
||||
|
||||
mimxrt10xx:
|
||||
$(MAKE) -C ports/mimxrt10xx BOARD=feather_mimxrt1011
|
||||
|
||||
nrf:
|
||||
$(MAKE) -C ports/nrf BOARD=feather_nrf52840_express
|
||||
|
||||
stm:
|
||||
$(MAKE) -C ports/stm BOARD=feather_stm32f405_express
|
||||
|
||||
clean-one-of-each: clean-samd21 clean-samd51 clean-esp32s2 clean-litex clean-mimxrt10xx clean-nrf clean-stm
|
||||
|
||||
clean-samd21:
|
||||
$(MAKE) -C ports/atmel-samd BOARD=trinket_m0 clean
|
||||
|
||||
clean-samd51:
|
||||
$(MAKE) -C ports/atmel-samd BOARD=feather_m4_express clean
|
||||
|
||||
clean-esp32s2:
|
||||
$(MAKE) -C ports/esp32s2 BOARD=espressif_saola_1_wroom clean
|
||||
|
||||
clean-litex:
|
||||
$(MAKE) -C ports/litex BOARD=fomu clean
|
||||
|
||||
clean-mimxrt10xx:
|
||||
$(MAKE) -C ports/mimxrt10xx BOARD=feather_mimxrt1011 clean
|
||||
|
||||
clean-nrf:
|
||||
$(MAKE) -C ports/nrf BOARD=feather_nrf52840_express clean
|
||||
|
||||
clean-stm:
|
||||
$(MAKE) -C ports/stm BOARD=feather_stm32f405_express clean
|
||||
|
|
11
README.rst
11
README.rst
|
@ -55,12 +55,12 @@ Contributing
|
|||
------------
|
||||
|
||||
See
|
||||
`CONTRIBUTING.md <https://github.com/adafruit/circuitpython/blob/master/CONTRIBUTING.md>`__
|
||||
`CONTRIBUTING.md <https://github.com/adafruit/circuitpython/blob/main/CONTRIBUTING.md>`__
|
||||
for full guidelines but please be aware that by contributing to this
|
||||
project you are agreeing to the `Code of
|
||||
Conduct <https://github.com/adafruit/circuitpython/blob/master/CODE_OF_CONDUCT.md>`__.
|
||||
Conduct <https://github.com/adafruit/circuitpython/blob/main/CODE_OF_CONDUCT.md>`__.
|
||||
Contributors who follow the `Code of
|
||||
Conduct <https://github.com/adafruit/circuitpython/blob/master/CODE_OF_CONDUCT.md>`__
|
||||
Conduct <https://github.com/adafruit/circuitpython/blob/main/CODE_OF_CONDUCT.md>`__
|
||||
are welcome to submit pull requests and they will be promptly reviewed
|
||||
by project admins. Please join the
|
||||
`Discord <https://adafru.it/discord>`__ too.
|
||||
|
@ -96,7 +96,6 @@ CircuitPython:
|
|||
|
||||
- Supports native USB on all boards, allowing file editing without special tools.
|
||||
- Supports only SAMD21, SAMD51, nRF52840, CXD56, STM32F4 and i.MX RT ports.
|
||||
- Tracks MicroPython's releases (not master).
|
||||
- Floats (aka decimals) are enabled for all builds.
|
||||
- Error messages are translated into 10+ languages.
|
||||
- Does not support concurrency within Python (including interrupts and threading). Some concurrency
|
||||
|
@ -211,8 +210,8 @@ The remaining port directories not listed above are in the repo to maintain comp
|
|||
|
||||
`back to top <#circuitpython>`__
|
||||
|
||||
.. |Build Status| image:: https://travis-ci.com/adafruit/circuitpython.svg?branch=master
|
||||
:target: https://travis-ci.org/adafruit/circuitpython
|
||||
.. |Build Status| image:: https://github.com/adafruit/circuitpython/workflows/Build%20CI/badge.svg
|
||||
:target: https://github.com/adafruit/circuitpython/actions?query=branch%3Amain
|
||||
.. |Doc Status| image:: https://readthedocs.org/projects/circuitpython/badge/?version=latest
|
||||
:target: http://circuitpython.readthedocs.io/
|
||||
.. |Discord| image:: https://img.shields.io/discord/327254708534116352.svg
|
||||
|
|
7
conf.py
7
conf.py
|
@ -391,12 +391,13 @@ TEMPLATE = """<html>
|
|||
def generate_redirects(app):
|
||||
path = os.path.join(app.srcdir, app.config.redirects_file)
|
||||
if not os.path.exists(path):
|
||||
app.info("Could not find redirects file at '%s'" % path)
|
||||
logging.error("Could not find redirects file at '%s'" % path)
|
||||
return
|
||||
|
||||
if not type(app.builder) == builders.StandaloneHTMLBuilder:
|
||||
if not isinstance(app.builder, builders.StandaloneHTMLBuilder):
|
||||
logging.warn("The 'sphinxcontib-redirects' plugin is only supported "
|
||||
"by the 'html' builder. Skipping...")
|
||||
"by the 'html' builder and subclasses. Skipping...")
|
||||
logging.warn(f"Builder is {app.builder.name} ({type(app.builder)})")
|
||||
return
|
||||
|
||||
with open(path) as redirects:
|
||||
|
|
|
@ -5,7 +5,7 @@ The latest documentation can be found at:
|
|||
http://circuitpython.readthedocs.io/en/latest/
|
||||
|
||||
The documentation you see there is generated from the files in the whole tree:
|
||||
https://github.com/adafruit/circuitpython/tree/master
|
||||
https://github.com/adafruit/circuitpython/tree/main
|
||||
|
||||
Building the documentation locally
|
||||
----------------------------------
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
.. role:: strike
|
||||
|
||||
Design Guide
|
||||
============
|
||||
|
||||
This guide covers a variety of development practices for CircuitPython core and library APIs. These
|
||||
APIs are both `built-into CircuitPython
|
||||
<https://github.com/adafruit/circuitpython/tree/master/shared-bindings>`_ and those that are
|
||||
<https://github.com/adafruit/circuitpython/tree/main/shared-bindings>`_ and those that are
|
||||
`distributed on GitHub <https://github.com/search?utf8=%E2%9C%93&q=topic%3Acircuitpython&type=>`_
|
||||
and in the `Adafruit <https://github.com/adafruit/Adafruit_CircuitPython_Bundle>`_ and `Community
|
||||
<https://github.com/adafruit/CircuitPython_Community_Bundle/>`_ bundles. Consistency with these
|
||||
|
@ -46,6 +48,41 @@ not have the ``adafruit_`` module or package prefix.
|
|||
|
||||
Both should have the CircuitPython repository topic on GitHub.
|
||||
|
||||
Terminology
|
||||
-----------
|
||||
|
||||
As our Code of Conduct states, we strive to use "welcoming and inclusive
|
||||
language." Whether it is in documentation or in code, the words we use matter.
|
||||
This means we disfavor language that due to historical and social context can
|
||||
make community members and potential community members feel unwelcome.
|
||||
|
||||
There are specific terms to avoid except where technical limitations require it.
|
||||
While specific cases may call for other terms, consider using these suggested
|
||||
terms first:
|
||||
|
||||
+--------------------+---------------------+
|
||||
| Preferred | Deprecated |
|
||||
+====================+=====================+
|
||||
| Main (device) | :strike:`Master` |
|
||||
+--------------------+---------------------+
|
||||
| Peripheral | :strike:`Slave` |
|
||||
+--------------------+ +
|
||||
| Sensor | |
|
||||
+--------------------+ +
|
||||
| Secondary (device) | |
|
||||
+--------------------+---------------------+
|
||||
| Denylist | :strike:`Blacklist` |
|
||||
+--------------------+---------------------+
|
||||
| Allowlist | :strike:`Whitelist` |
|
||||
+--------------------+---------------------+
|
||||
|
||||
Note that "technical limitations" refers e.g., to the situation where an
|
||||
upstream library or URL has to contain those substrings in order to work.
|
||||
However, when it comes to documentation and the names of parameters and
|
||||
properties in CircuitPython, we will use alternate terms even if this breaks
|
||||
tradition with past practice.
|
||||
|
||||
|
||||
.. _lifetime-and-contextmanagers:
|
||||
|
||||
Lifetime and ContextManagers
|
||||
|
|
|
@ -64,7 +64,7 @@ as a natural "TODO" list. An example minimal build list is shown below:
|
|||
CIRCUITPY_ROTARYIO = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_DISPLAYIO = 0 # Requires SPI, PulseIO (stub ok)
|
||||
|
||||
# These modules are implemented in shared-module/ - they can be included in
|
||||
|
|
|
@ -1,15 +1,67 @@
|
|||
shared-bindings/frequencyio/FrequencyIn.rst shared-bindings/frequencyio/#frequencyio.FrequencyIn
|
||||
shared-bindings/fontio/BuiltinFont.rst shared-bindings/fontio/#fontio.BuiltinFont
|
||||
shared-bindings/fontio/Glyph.rst shared-bindings/fontio/#fontio.Glyph
|
||||
shared-bindings//__init__.rst shared-bindings//
|
||||
shared-bindings/_bleio/Adapter.rst shared-bindings/_bleio/#_bleio.Adapter
|
||||
shared-bindings/_bleio/Address.rst shared-bindings/_bleio/#_bleio.Address
|
||||
shared-bindings/_bleio/Attribute.rst shared-bindings/_bleio/#_bleio.Attribute
|
||||
shared-bindings/_bleio/BluetoothError.rst shared-bindings/_bleio/#_bleio.BluetoothError
|
||||
shared-bindings/_bleio/Characteristic.rst shared-bindings/_bleio/#_bleio.Characteristic
|
||||
shared-bindings/_bleio/CharacteristicBuffer.rst shared-bindings/_bleio/#_bleio.CharacteristicBuffer
|
||||
shared-bindings/_bleio/Connection.rst shared-bindings/_bleio/#_bleio.Connection
|
||||
shared-bindings/_bleio/ConnectionError.rst shared-bindings/_bleio/#_bleio.ConnectionError
|
||||
shared-bindings/_bleio/Descriptor.rst shared-bindings/_bleio/#_bleio.Descriptor
|
||||
shared-bindings/_bleio/PacketBuffer.rst shared-bindings/_bleio/#_bleio.PacketBuffer
|
||||
shared-bindings/_bleio/RoleError.rst shared-bindings/_bleio/#_bleio.RoleError
|
||||
shared-bindings/_bleio/ScanEntry.rst shared-bindings/_bleio/#_bleio.ScanEntry
|
||||
shared-bindings/_bleio/ScanResults.rst shared-bindings/_bleio/#_bleio.ScanResults
|
||||
shared-bindings/_bleio/SecurityError.rst shared-bindings/_bleio/#_bleio.SecurityError
|
||||
shared-bindings/_bleio/Service.rst shared-bindings/_bleio/#_bleio.Service
|
||||
shared-bindings/_bleio/UUID.rst shared-bindings/_bleio/#_bleio.UUID
|
||||
shared-bindings/_bleio/__init__.rst shared-bindings/_bleio/
|
||||
shared-bindings/_eve/__init__.rst shared-bindings/_eve/
|
||||
shared-bindings/_pew/PewPew.rst shared-bindings/_pew/#_pew.PewPew
|
||||
shared-bindings/_pew/__init__.rst shared-bindings/_pew/
|
||||
shared-bindings/_pixelbuf/PixelBuf.rst shared-bindings/_pixelbuf/#_pixelbuf.PixelBuf
|
||||
shared-bindings/_pixelbuf/__init__.rst shared-bindings/_pixelbuf/
|
||||
shared-bindings/_stage/Layer.rst shared-bindings/_stage/#_stage.Layer
|
||||
shared-bindings/_stage/Text.rst shared-bindings/_stage/#_stage.Text
|
||||
shared-bindings/_stage/__init__.rst shared-bindings/_stage/
|
||||
shared-bindings/aesio/AES.rst shared-bindings/aesio/#aesio.AES
|
||||
shared-bindings/supervisor/Runtime.rst shared-bindings/supervisor/#supervisor.Runtime
|
||||
shared-bindings/terminalio/Terminal.rst shared-bindings/terminalio/#terminalio.Terminal
|
||||
shared-bindings/aesio/__init__.rst shared-bindings/aesio/
|
||||
shared-bindings/analogio/AnalogIn.rst shared-bindings/analogio/#analogio.AnalogIn
|
||||
shared-bindings/analogio/AnalogOut.rst shared-bindings/analogio/#analogio.AnalogOut
|
||||
shared-bindings/analogio/__init__.rst shared-bindings/analogio/
|
||||
shared-bindings/audiobusio/I2SOut.rst shared-bindings/audiobusio/#audiobusio.I2SOut
|
||||
shared-bindings/audiobusio/PDMIn.rst shared-bindings/audiobusio/#audiobusio.PDMIn
|
||||
shared-bindings/audiobusio/__init__.rst shared-bindings/audiobusio/
|
||||
shared-bindings/audiocore/RawSample.rst shared-bindings/audiocore/#audiocore.RawSample
|
||||
shared-bindings/audiocore/WaveFile.rst shared-bindings/audiocore/#audiocore.WaveFile
|
||||
shared-bindings/audiocore/__init__.rst shared-bindings/audiocore/
|
||||
shared-bindings/audioio/AudioOut.rst shared-bindings/audioio/#audioio.AudioOut
|
||||
shared-bindings/audioio/__init__.rst shared-bindings/audioio/
|
||||
shared-bindings/audiomixer/Mixer.rst shared-bindings/audiomixer/#audiomixer.Mixer
|
||||
shared-bindings/audiomixer/MixerVoice.rst shared-bindings/audiomixer/#audiomixer.MixerVoice
|
||||
shared-bindings/audiomixer/__init__.rst shared-bindings/audiomixer/
|
||||
shared-bindings/audiomp3/MP3.rst shared-bindings/audiomp3/#audiomp3.MP3
|
||||
shared-bindings/audiomp3/__init__.rst shared-bindings/audiomp3/
|
||||
shared-bindings/audiopwmio/PWMAudioOut.rst shared-bindings/audiopwmio/#audiopwmio.PWMAudioOut
|
||||
shared-bindings/gamepadshift/GamePadShift.rst shared-bindings/gamepadshift/#gamepadshift.GamePadShift
|
||||
shared-bindings/vectorio/Circle.rst shared-bindings/vectorio/#vectorio.Circle
|
||||
shared-bindings/vectorio/Polygon.rst shared-bindings/vectorio/#vectorio.Polygon
|
||||
shared-bindings/vectorio/Rectangle.rst shared-bindings/vectorio/#vectorio.Rectangle
|
||||
shared-bindings/vectorio/VectorShape.rst shared-bindings/vectorio/#vectorio.VectorShape
|
||||
shared-bindings/audiopwmio/__init__.rst shared-bindings/audiopwmio/
|
||||
shared-bindings/bitbangio/I2C.rst shared-bindings/bitbangio/#bitbangio.I2C
|
||||
shared-bindings/bitbangio/OneWire.rst shared-bindings/bitbangio/#bitbangio.OneWire
|
||||
shared-bindings/bitbangio/SPI.rst shared-bindings/bitbangio/#bitbangio.SPI
|
||||
shared-bindings/bitbangio/__init__.rst shared-bindings/bitbangio/
|
||||
shared-bindings/board/__init__.rst shared-bindings/board/
|
||||
shared-bindings/busio/I2C.rst shared-bindings/busio/#busio.I2C
|
||||
shared-bindings/busio/OneWire.rst shared-bindings/busio/#busio.OneWire
|
||||
shared-bindings/busio/Parity.rst shared-bindings/busio/#busio.Parity
|
||||
shared-bindings/busio/SPI.rst shared-bindings/busio/#busio.SPI
|
||||
shared-bindings/busio/UART.rst shared-bindings/busio/#busio.UART
|
||||
shared-bindings/busio/__init__.rst shared-bindings/busio/
|
||||
shared-bindings/countio/Counter.rst shared-bindings/countio/#countio.Counter
|
||||
shared-bindings/countio/__init__.rst shared-bindings/countio/
|
||||
shared-bindings/digitalio/DigitalInOut.rst shared-bindings/digitalio/#digitalio.DigitalInOut
|
||||
shared-bindings/digitalio/Direction.rst shared-bindings/digitalio/#digitalio.Direction
|
||||
shared-bindings/digitalio/DriveMode.rst shared-bindings/digitalio/#digitalio.DriveMode
|
||||
shared-bindings/digitalio/Pull.rst shared-bindings/digitalio/#digitalio.Pull
|
||||
shared-bindings/digitalio/__init__.rst shared-bindings/digitalio/
|
||||
shared-bindings/displayio/Bitmap.rst shared-bindings/displayio/#displayio.Bitmap
|
||||
shared-bindings/displayio/ColorConverter.rst shared-bindings/displayio/#displayio.ColorConverter
|
||||
shared-bindings/displayio/Display.rst shared-bindings/displayio/#displayio.Display
|
||||
|
@ -22,73 +74,88 @@ shared-bindings/displayio/Palette.rst shared-bindings/displayio/#displayio.Palet
|
|||
shared-bindings/displayio/ParallelBus.rst shared-bindings/displayio/#displayio.ParallelBus
|
||||
shared-bindings/displayio/Shape.rst shared-bindings/displayio/#displayio.Shape
|
||||
shared-bindings/displayio/TileGrid.rst shared-bindings/displayio/#displayio.TileGrid
|
||||
shared-bindings/_pixelbuf/PixelBuf.rst shared-bindings/_pixelbuf/#_pixelbuf.PixelBuf
|
||||
shared-bindings/displayio/__init__.rst shared-bindings/displayio/
|
||||
shared-bindings/fontio/BuiltinFont.rst shared-bindings/fontio/#fontio.BuiltinFont
|
||||
shared-bindings/fontio/Glyph.rst shared-bindings/fontio/#fontio.Glyph
|
||||
shared-bindings/fontio/__init__.rst shared-bindings/fontio/
|
||||
shared-bindings/framebufferio/FramebufferDisplay.rst shared-bindings/framebufferio/#framebufferio.FramebufferDisplay
|
||||
shared-bindings/framebufferio/__init__.rst shared-bindings/framebufferio/
|
||||
shared-bindings/frequencyio/FrequencyIn.rst shared-bindings/frequencyio/#frequencyio.FrequencyIn
|
||||
shared-bindings/frequencyio/__init__.rst shared-bindings/frequencyio/
|
||||
shared-bindings/gamepad/GamePad.rst shared-bindings/gamepad/#gamepad.GamePad
|
||||
shared-bindings/_pew/PewPew.rst shared-bindings/_pew/#_pew.PewPew
|
||||
shared-bindings/rotaryio/IncrementalEncoder.rst shared-bindings/rotaryio/#rotaryio.IncrementalEncoder
|
||||
shared-bindings/audiomixer/Mixer.rst shared-bindings/audiomixer/#audiomixer.Mixer
|
||||
shared-bindings/audiomixer/MixerVoice.rst shared-bindings/audiomixer/#audiomixer.MixerVoice
|
||||
shared-bindings/pulseio/PWMOut.rst shared-bindings/pulseio/#pulseio.PWMOut
|
||||
shared-bindings/pulseio/PulseIn.rst shared-bindings/pulseio/#pulseio.PulseIn
|
||||
shared-bindings/pulseio/PulseOut.rst shared-bindings/pulseio/#pulseio.PulseOut
|
||||
shared-bindings/time/struct_time.rst shared-bindings/time/#time.struct_time
|
||||
shared-bindings/i2cslave/I2CSlave.rst shared-bindings/i2cslave/#i2cslave.I2CSlave
|
||||
shared-bindings/i2cslave/I2CSlaveRequest.rst shared-bindings/i2cslave/#i2cslave.I2CSlaveRequest
|
||||
shared-bindings/nvm/ByteArray.rst shared-bindings/nvm/#nvm.ByteArray
|
||||
shared-bindings/busio/I2C.rst shared-bindings/busio/#busio.I2C
|
||||
shared-bindings/busio/OneWire.rst shared-bindings/busio/#busio.OneWire
|
||||
shared-bindings/busio/SPI.rst shared-bindings/busio/#busio.SPI
|
||||
shared-bindings/busio/UART.rst shared-bindings/busio/#busio.UART
|
||||
shared-bindings/busio/Parity.rst shared-bindings/busio/#busio.Parity
|
||||
shared-bindings/ulab/array.rst shared-bindings/ulab/#ulab.array
|
||||
shared-bindings/watchdog/WatchDogMode.rst shared-bindings/watchdog/#watchdog.WatchDogMode
|
||||
shared-bindings/watchdog/WatchDogTimer.rst shared-bindings/watchdog/#watchdog.WatchDogTimer
|
||||
shared-bindings/audioio/AudioOut.rst shared-bindings/audioio/#audioio.AudioOut
|
||||
shared-bindings/ps2io/Ps2.rst shared-bindings/ps2io/#ps2io.Ps2
|
||||
shared-bindings/touchio/TouchIn.rst shared-bindings/touchio/#touchio.TouchIn
|
||||
shared-bindings/rgbmatrix/RGBMatrix.rst shared-bindings/rgbmatrix/#rgbmatrix.RGBMatrix
|
||||
shared-bindings/audiomp3/MP3.rst shared-bindings/audiomp3/#audiomp3.MP3
|
||||
shared-bindings/usb_midi/PortIn.rst shared-bindings/usb_midi/#usb_midi.PortIn
|
||||
shared-bindings/usb_midi/PortOut.rst shared-bindings/usb_midi/#usb_midi.PortOut
|
||||
shared-bindings/usb_hid/Device.rst shared-bindings/usb_hid/#usb_hid.Device
|
||||
shared-bindings/wiznet/WIZNET5K.rst shared-bindings/wiznet/#wiznet.WIZNET5K
|
||||
shared-bindings/_bleio/BluetoothError.rst shared-bindings/_bleio/#_bleio.BluetoothError
|
||||
shared-bindings/_bleio/ConnectionError.rst shared-bindings/_bleio/#_bleio.ConnectionError
|
||||
shared-bindings/_bleio/RoleError.rst shared-bindings/_bleio/#_bleio.RoleError
|
||||
shared-bindings/_bleio/SecurityError.rst shared-bindings/_bleio/#_bleio.SecurityError
|
||||
shared-bindings/_bleio/Adapter.rst shared-bindings/_bleio/#_bleio.Adapter
|
||||
shared-bindings/_bleio/Address.rst shared-bindings/_bleio/#_bleio.Address
|
||||
shared-bindings/_bleio/Attribute.rst shared-bindings/_bleio/#_bleio.Attribute
|
||||
shared-bindings/_bleio/Characteristic.rst shared-bindings/_bleio/#_bleio.Characteristic
|
||||
shared-bindings/_bleio/CharacteristicBuffer.rst shared-bindings/_bleio/#_bleio.CharacteristicBuffer
|
||||
shared-bindings/_bleio/Connection.rst shared-bindings/_bleio/#_bleio.Connection
|
||||
shared-bindings/_bleio/Descriptor.rst shared-bindings/_bleio/#_bleio.Descriptor
|
||||
shared-bindings/_bleio/PacketBuffer.rst shared-bindings/_bleio/#_bleio.PacketBuffer
|
||||
shared-bindings/_bleio/ScanEntry.rst shared-bindings/_bleio/#_bleio.ScanEntry
|
||||
shared-bindings/_bleio/ScanResults.rst shared-bindings/_bleio/#_bleio.ScanResults
|
||||
shared-bindings/_bleio/Service.rst shared-bindings/_bleio/#_bleio.Service
|
||||
shared-bindings/_bleio/UUID.rst shared-bindings/_bleio/#_bleio.UUID
|
||||
shared-bindings/socket/socket.rst shared-bindings/socket/#socket.socket
|
||||
shared-bindings/gamepad/__init__.rst shared-bindings/gamepad/
|
||||
shared-bindings/gamepadshift/GamePadShift.rst shared-bindings/gamepadshift/#gamepadshift.GamePadShift
|
||||
shared-bindings/gamepadshift/__init__.rst shared-bindings/gamepadshift/
|
||||
shared-bindings/gnss/__init__.rst shared-bindings/gnss/
|
||||
shared-bindings/i2cperipheral/__init__.rst shared-bindings/i2cperipheral/
|
||||
shared-bindings/i2csecondary/__init__.rst shared-bindings/i2csecondary/
|
||||
shared-bindings/i2cslave/I2CSlave.rst shared-bindings/i2cperipheral/#i2cperipheral.I2CPeripheral
|
||||
shared-bindings/i2cslave/I2CSlaveRequest.rst shared-bindings/i2cperipheral/#i2cperipheral.I2CPeripheralRequest
|
||||
shared-bindings/math/__init__.rst shared-bindings/math/
|
||||
shared-bindings/microcontroller/Pin.rst shared-bindings/microcontroller/#microcontroller.Pin
|
||||
shared-bindings/microcontroller/Processor.rst shared-bindings/microcontroller/#microcontroller.Processor
|
||||
shared-bindings/microcontroller/RunMode.rst shared-bindings/microcontroller/#microcontroller.RunMode
|
||||
shared-bindings/audiocore/RawSample.rst shared-bindings/audiocore/#audiocore.RawSample
|
||||
shared-bindings/audiocore/WaveFile.rst shared-bindings/audiocore/#audiocore.WaveFile
|
||||
shared-bindings/framebufferio/FramebufferDisplay.rst shared-bindings/framebufferio/#framebufferio.FramebufferDisplay
|
||||
shared-bindings/audiobusio/I2SOut.rst shared-bindings/audiobusio/#audiobusio.I2SOut
|
||||
shared-bindings/audiobusio/PDMIn.rst shared-bindings/audiobusio/#audiobusio.PDMIn
|
||||
shared-bindings/countio/Counter.rst shared-bindings/countio/#countio.Counter
|
||||
shared-bindings/storage/VfsFat.rst shared-bindings/storage/#storage.VfsFat
|
||||
shared-bindings/digitalio/DigitalInOut.rst shared-bindings/digitalio/#digitalio.DigitalInOut
|
||||
shared-bindings/digitalio/Direction.rst shared-bindings/digitalio/#digitalio.Direction
|
||||
shared-bindings/digitalio/DriveMode.rst shared-bindings/digitalio/#digitalio.DriveMode
|
||||
shared-bindings/digitalio/Pull.rst shared-bindings/digitalio/#digitalio.Pull
|
||||
shared-bindings/bitbangio/I2C.rst shared-bindings/bitbangio/#bitbangio.I2C
|
||||
shared-bindings/bitbangio/OneWire.rst shared-bindings/bitbangio/#bitbangio.OneWire
|
||||
shared-bindings/bitbangio/SPI.rst shared-bindings/bitbangio/#bitbangio.SPI
|
||||
shared-bindings/microcontroller/__init__.rst shared-bindings/microcontroller/
|
||||
shared-bindings/multiterminal/__init__.rst shared-bindings/multiterminal/
|
||||
shared-bindings/neopixel_write/__init__.rst shared-bindings/neopixel_write/
|
||||
shared-bindings/network/__init__.rst shared-bindings/network/
|
||||
shared-bindings/nvm/ByteArray.rst shared-bindings/nvm/#nvm.ByteArray
|
||||
shared-bindings/nvm/__init__.rst shared-bindings/nvm/
|
||||
shared-bindings/os/__init__.rst shared-bindings/os/
|
||||
shared-bindings/protomatter/__init__.rst shared-bindings/protomatter/
|
||||
shared-bindings/ps2io/Ps2.rst shared-bindings/ps2io/#ps2io.Ps2
|
||||
shared-bindings/ps2io/__init__.rst shared-bindings/ps2io/
|
||||
shared-bindings/pulseio/PWMOut.rst shared-bindings/pulseio/#pulseio.PWMOut
|
||||
shared-bindings/pulseio/PulseIn.rst shared-bindings/pulseio/#pulseio.PulseIn
|
||||
shared-bindings/pulseio/PulseOut.rst shared-bindings/pulseio/#pulseio.PulseOut
|
||||
shared-bindings/pulseio/__init__.rst shared-bindings/pulseio/
|
||||
shared-bindings/random/__init__.rst shared-bindings/random/
|
||||
shared-bindings/rgbmatrix/RGBMatrix.rst shared-bindings/rgbmatrix/#rgbmatrix.RGBMatrix
|
||||
shared-bindings/rgbmatrix/__init__.rst shared-bindings/rgbmatrix/
|
||||
shared-bindings/rotaryio/IncrementalEncoder.rst shared-bindings/rotaryio/#rotaryio.IncrementalEncoder
|
||||
shared-bindings/rotaryio/__init__.rst shared-bindings/rotaryio/
|
||||
shared-bindings/rtc/RTC.rst shared-bindings/rtc/#rtc.RTC
|
||||
shared-bindings/analogio/AnalogIn.rst shared-bindings/analogio/#analogio.AnalogIn
|
||||
shared-bindings/analogio/AnalogOut.rst shared-bindings/analogio/#analogio.AnalogOut
|
||||
shared-bindings/_stage/Layer.rst shared-bindings/_stage/#_stage.Layer
|
||||
shared-bindings/_stage/Text.rst shared-bindings/_stage/#_stage.Text
|
||||
shared-bindings/rtc/__init__.rst shared-bindings/rtc/
|
||||
shared-bindings/samd/Clock.rst shared-bindings/samd/#samd.Clock
|
||||
shared-bindings/samd/__init__.rst shared-bindings/samd/
|
||||
shared-bindings/socket/__init__.rst shared-bindings/socket/
|
||||
shared-bindings/socket/socket.rst shared-bindings/socket/#socket.socket
|
||||
shared-bindings/storage/VfsFat.rst shared-bindings/storage/#storage.VfsFat
|
||||
shared-bindings/storage/__init__.rst shared-bindings/storage/
|
||||
shared-bindings/struct/__init__.rst shared-bindings/struct/
|
||||
shared-bindings/supervisor/Runtime.rst shared-bindings/supervisor/#supervisor.Runtime
|
||||
shared-bindings/supervisor/__init__.rst shared-bindings/supervisor/
|
||||
shared-bindings/terminalio/Terminal.rst shared-bindings/terminalio/#terminalio.Terminal
|
||||
shared-bindings/terminalio/__init__.rst shared-bindings/terminalio/
|
||||
shared-bindings/time/__init__.rst shared-bindings/time/
|
||||
shared-bindings/time/struct_time.rst shared-bindings/time/#time.struct_time
|
||||
shared-bindings/touchio/TouchIn.rst shared-bindings/touchio/#touchio.TouchIn
|
||||
shared-bindings/touchio/__init__.rst shared-bindings/touchio/
|
||||
shared-bindings/uheap/__init__.rst shared-bindings/uheap/
|
||||
shared-bindings/ulab/__init__.rst shared-bindings/ulab/
|
||||
shared-bindings/ulab/approx/__init__.rst shared-bindings/ulab/approx/
|
||||
shared-bindings/ulab/array.rst shared-bindings/ulab/#ulab.array
|
||||
shared-bindings/ulab/compare/__init__.rst shared-bindings/ulab/compare/
|
||||
shared-bindings/ulab/extras/__init__.rst shared-bindings/ulab/extras/
|
||||
shared-bindings/ulab/fft/__init__.rst shared-bindings/ulab/fft/
|
||||
shared-bindings/ulab/filter/__init__.rst shared-bindings/ulab/filter/
|
||||
shared-bindings/ulab/linalg/__init__.rst shared-bindings/ulab/linalg/
|
||||
shared-bindings/ulab/numerical/__init__.rst shared-bindings/ulab/numerical/
|
||||
shared-bindings/ulab/poly/__init__.rst shared-bindings/ulab/poly/
|
||||
shared-bindings/ulab/vector/__init__.rst shared-bindings/ulab/vector/
|
||||
shared-bindings/usb_hid/Device.rst shared-bindings/usb_hid/#usb_hid.Device
|
||||
shared-bindings/usb_hid/__init__.rst shared-bindings/usb_hid/
|
||||
shared-bindings/usb_midi/PortIn.rst shared-bindings/usb_midi/#usb_midi.PortIn
|
||||
shared-bindings/usb_midi/PortOut.rst shared-bindings/usb_midi/#usb_midi.PortOut
|
||||
shared-bindings/usb_midi/__init__.rst shared-bindings/usb_midi/
|
||||
shared-bindings/ustack/__init__.rst shared-bindings/ustack/
|
||||
shared-bindings/vectorio/Circle.rst shared-bindings/vectorio/#vectorio.Circle
|
||||
shared-bindings/vectorio/Polygon.rst shared-bindings/vectorio/#vectorio.Polygon
|
||||
shared-bindings/vectorio/Rectangle.rst shared-bindings/vectorio/#vectorio.Rectangle
|
||||
shared-bindings/vectorio/VectorShape.rst shared-bindings/vectorio/#vectorio.VectorShape
|
||||
shared-bindings/vectorio/__init__.rst shared-bindings/vectorio/
|
||||
shared-bindings/watchdog/WatchDogMode.rst shared-bindings/watchdog/#watchdog.WatchDogMode
|
||||
shared-bindings/watchdog/WatchDogTimer.rst shared-bindings/watchdog/#watchdog.WatchDogTimer
|
||||
shared-bindings/watchdog/__init__.rst shared-bindings/watchdog/
|
||||
shared-bindings/wiznet/WIZNET5K.rst shared-bindings/wiznet/#wiznet.WIZNET5K
|
||||
shared-bindings/wiznet/__init__.rst shared-bindings/wiznet/
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
|
||||
import json
|
||||
import os
|
||||
import pathlib
|
||||
import re
|
||||
import subprocess
|
||||
import sys
|
||||
|
@ -30,17 +31,27 @@ import sys
|
|||
|
||||
SUPPORTED_PORTS = ['atmel-samd', 'esp32s2', 'litex', 'mimxrt10xx', 'nrf', 'stm']
|
||||
|
||||
def get_circuitpython_root_dir():
|
||||
""" The path to the root './circuitpython' directory
|
||||
"""
|
||||
file_path = pathlib.Path(__file__).resolve()
|
||||
root_dir = file_path.parent.parent
|
||||
|
||||
return root_dir
|
||||
|
||||
def get_shared_bindings():
|
||||
""" Get a list of modules in shared-bindings based on folder names
|
||||
"""
|
||||
return [item for item in os.listdir("./shared-bindings")]
|
||||
shared_bindings_dir = get_circuitpython_root_dir() / "shared-bindings"
|
||||
return [item.name for item in shared_bindings_dir.iterdir()]
|
||||
|
||||
|
||||
def read_mpconfig():
|
||||
""" Open 'circuitpy_mpconfig.mk' and return the contents.
|
||||
"""
|
||||
configs = []
|
||||
with open("py/circuitpy_mpconfig.mk") as mpconfig:
|
||||
cpy_mpcfg = get_circuitpython_root_dir() / "py" / "circuitpy_mpconfig.mk"
|
||||
with open(cpy_mpcfg) as mpconfig:
|
||||
configs = mpconfig.read()
|
||||
|
||||
return configs
|
||||
|
@ -120,7 +131,7 @@ def lookup_setting(settings, key, default=''):
|
|||
key = value[2:-1]
|
||||
return value
|
||||
|
||||
def support_matrix_by_board():
|
||||
def support_matrix_by_board(use_branded_name=True):
|
||||
""" Compiles a list of the available core modules available for each
|
||||
board.
|
||||
"""
|
||||
|
@ -129,20 +140,22 @@ def support_matrix_by_board():
|
|||
boards = dict()
|
||||
for port in SUPPORTED_PORTS:
|
||||
|
||||
port_dir = "ports/{}/boards".format(port)
|
||||
for entry in os.scandir(port_dir):
|
||||
port_dir = get_circuitpython_root_dir() / "ports" / port
|
||||
for entry in (port_dir / "boards").iterdir():
|
||||
if not entry.is_dir():
|
||||
continue
|
||||
board_modules = []
|
||||
board_name = entry.name
|
||||
|
||||
settings = get_settings_from_makefile(f'ports/{port}', entry.name)
|
||||
settings = get_settings_from_makefile(str(port_dir), entry.name)
|
||||
|
||||
with open(os.path.join(entry.path, "mpconfigboard.h")) as get_name:
|
||||
board_contents = get_name.read()
|
||||
board_name_re = re.search("(?<=MICROPY_HW_BOARD_NAME)\s+(.+)",
|
||||
board_contents)
|
||||
if board_name_re:
|
||||
board_name = board_name_re.group(1).strip('"')
|
||||
if use_branded_name:
|
||||
with open(entry / "mpconfigboard.h") as get_name:
|
||||
board_contents = get_name.read()
|
||||
board_name_re = re.search(r"(?<=MICROPY_HW_BOARD_NAME)\s+(.+)",
|
||||
board_contents)
|
||||
if board_name_re:
|
||||
board_name = board_name_re.group(1).strip('"')
|
||||
|
||||
board_modules = []
|
||||
for module in base:
|
||||
|
|
|
@ -9,7 +9,19 @@
|
|||
margin: 4px;
|
||||
}
|
||||
|
||||
/* custom CSS to sticky the ' viewing outdated version'
|
||||
warning
|
||||
*/
|
||||
.document > .admonition {
|
||||
position: sticky;
|
||||
top: 0px;
|
||||
background-color: salmon;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
body {
|
||||
overflow-x: unset!important;
|
||||
}
|
||||
|
||||
/* override table width restrictions */
|
||||
@media screen and (min-width: 767px) {
|
||||
|
@ -24,3 +36,7 @@
|
|||
overflow: visible !important;
|
||||
}
|
||||
}
|
||||
|
||||
.strike {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
|
|
@ -1,641 +0,0 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2016 Damien P. George
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "py/mperrno.h"
|
||||
#include "py/mphal.h"
|
||||
#include "py/runtime.h"
|
||||
#include "extmod/machine_i2c.h"
|
||||
|
||||
#include "supervisor/shared/translate.h"
|
||||
|
||||
#if MICROPY_PY_MACHINE_I2C
|
||||
|
||||
typedef mp_machine_soft_i2c_obj_t machine_i2c_obj_t;
|
||||
|
||||
STATIC void mp_hal_i2c_delay(machine_i2c_obj_t *self) {
|
||||
// We need to use an accurate delay to get acceptable I2C
|
||||
// speeds (eg 1us should be not much more than 1us).
|
||||
mp_hal_delay_us_fast(self->us_delay);
|
||||
}
|
||||
|
||||
STATIC void mp_hal_i2c_scl_low(machine_i2c_obj_t *self) {
|
||||
mp_hal_pin_od_low(self->scl);
|
||||
}
|
||||
|
||||
STATIC int mp_hal_i2c_scl_release(machine_i2c_obj_t *self) {
|
||||
uint32_t count = self->us_timeout;
|
||||
|
||||
mp_hal_pin_od_high(self->scl);
|
||||
mp_hal_i2c_delay(self);
|
||||
// For clock stretching, wait for the SCL pin to be released, with timeout.
|
||||
for (; mp_hal_pin_read(self->scl) == 0 && count; --count) {
|
||||
mp_hal_delay_us_fast(1);
|
||||
}
|
||||
if (count == 0) {
|
||||
return -MP_ETIMEDOUT;
|
||||
}
|
||||
return 0; // success
|
||||
}
|
||||
|
||||
STATIC void mp_hal_i2c_sda_low(machine_i2c_obj_t *self) {
|
||||
mp_hal_pin_od_low(self->sda);
|
||||
}
|
||||
|
||||
STATIC void mp_hal_i2c_sda_release(machine_i2c_obj_t *self) {
|
||||
mp_hal_pin_od_high(self->sda);
|
||||
}
|
||||
|
||||
STATIC int mp_hal_i2c_sda_read(machine_i2c_obj_t *self) {
|
||||
return mp_hal_pin_read(self->sda);
|
||||
}
|
||||
|
||||
STATIC int mp_hal_i2c_start(machine_i2c_obj_t *self) {
|
||||
mp_hal_i2c_sda_release(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
int ret = mp_hal_i2c_scl_release(self);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
mp_hal_i2c_sda_low(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
return 0; // success
|
||||
}
|
||||
|
||||
STATIC int mp_hal_i2c_stop(machine_i2c_obj_t *self) {
|
||||
mp_hal_i2c_delay(self);
|
||||
mp_hal_i2c_sda_low(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
int ret = mp_hal_i2c_scl_release(self);
|
||||
mp_hal_i2c_sda_release(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
return ret;
|
||||
}
|
||||
|
||||
STATIC void mp_hal_i2c_init(machine_i2c_obj_t *self, uint32_t freq) {
|
||||
self->us_delay = 500000 / freq;
|
||||
if (self->us_delay == 0) {
|
||||
self->us_delay = 1;
|
||||
}
|
||||
mp_hal_pin_open_drain(self->scl);
|
||||
mp_hal_pin_open_drain(self->sda);
|
||||
mp_hal_i2c_stop(self); // ignore error
|
||||
}
|
||||
|
||||
// return value:
|
||||
// 0 - byte written and ack received
|
||||
// 1 - byte written and nack received
|
||||
// <0 - error, with errno being the negative of the return value
|
||||
STATIC int mp_hal_i2c_write_byte(machine_i2c_obj_t *self, uint8_t val) {
|
||||
mp_hal_i2c_delay(self);
|
||||
mp_hal_i2c_scl_low(self);
|
||||
|
||||
for (int i = 7; i >= 0; i--) {
|
||||
if ((val >> i) & 1) {
|
||||
mp_hal_i2c_sda_release(self);
|
||||
} else {
|
||||
mp_hal_i2c_sda_low(self);
|
||||
}
|
||||
mp_hal_i2c_delay(self);
|
||||
int ret = mp_hal_i2c_scl_release(self);
|
||||
if (ret != 0) {
|
||||
mp_hal_i2c_sda_release(self);
|
||||
return ret;
|
||||
}
|
||||
mp_hal_i2c_scl_low(self);
|
||||
}
|
||||
|
||||
mp_hal_i2c_sda_release(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
int ret = mp_hal_i2c_scl_release(self);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
int ack = mp_hal_i2c_sda_read(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
mp_hal_i2c_scl_low(self);
|
||||
|
||||
return ack;
|
||||
}
|
||||
|
||||
// return value:
|
||||
// 0 - success
|
||||
// <0 - error, with errno being the negative of the return value
|
||||
STATIC int mp_hal_i2c_read_byte(machine_i2c_obj_t *self, uint8_t *val, int nack) {
|
||||
mp_hal_i2c_delay(self);
|
||||
mp_hal_i2c_scl_low(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
|
||||
uint8_t data = 0;
|
||||
for (int i = 7; i >= 0; i--) {
|
||||
int ret = mp_hal_i2c_scl_release(self);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
data = (data << 1) | mp_hal_i2c_sda_read(self);
|
||||
mp_hal_i2c_scl_low(self);
|
||||
mp_hal_i2c_delay(self);
|
||||
}
|
||||
*val = data;
|
||||
|
||||
// send ack/nack bit
|
||||
if (!nack) {
|
||||
mp_hal_i2c_sda_low(self);
|
||||
}
|
||||
mp_hal_i2c_delay(self);
|
||||
int ret = mp_hal_i2c_scl_release(self);
|
||||
if (ret != 0) {
|
||||
mp_hal_i2c_sda_release(self);
|
||||
return ret;
|
||||
}
|
||||
mp_hal_i2c_scl_low(self);
|
||||
mp_hal_i2c_sda_release(self);
|
||||
|
||||
return 0; // success
|
||||
}
|
||||
|
||||
// return value:
|
||||
// >=0 - number of acks received
|
||||
// <0 - error, with errno being the negative of the return value
|
||||
int mp_machine_soft_i2c_writeto(mp_obj_base_t *self_in, uint16_t addr, const uint8_t *src, size_t len, bool stop) {
|
||||
machine_i2c_obj_t *self = (machine_i2c_obj_t*)self_in;
|
||||
|
||||
// start the I2C transaction
|
||||
int ret = mp_hal_i2c_start(self);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
// write the slave address
|
||||
ret = mp_hal_i2c_write_byte(self, addr << 1);
|
||||
if (ret < 0) {
|
||||
return ret;
|
||||
} else if (ret != 0) {
|
||||
// nack received, release the bus cleanly
|
||||
mp_hal_i2c_stop(self);
|
||||
return -MP_ENODEV;
|
||||
}
|
||||
|
||||
// write the buffer to the I2C memory
|
||||
int num_acks = 0;
|
||||
while (len--) {
|
||||
ret = mp_hal_i2c_write_byte(self, *src++);
|
||||
if (ret < 0) {
|
||||
return ret;
|
||||
} else if (ret != 0) {
|
||||
// nack received, stop sending
|
||||
break;
|
||||
}
|
||||
++num_acks;
|
||||
}
|
||||
|
||||
// finish the I2C transaction
|
||||
if (stop) {
|
||||
ret = mp_hal_i2c_stop(self);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
return num_acks;
|
||||
}
|
||||
|
||||
// return value:
|
||||
// 0 - success
|
||||
// <0 - error, with errno being the negative of the return value
|
||||
int mp_machine_soft_i2c_readfrom(mp_obj_base_t *self_in, uint16_t addr, uint8_t *dest, size_t len, bool stop) {
|
||||
machine_i2c_obj_t *self = (machine_i2c_obj_t*)self_in;
|
||||
|
||||
// start the I2C transaction
|
||||
int ret = mp_hal_i2c_start(self);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
// write the slave address
|
||||
ret = mp_hal_i2c_write_byte(self, (addr << 1) | 1);
|
||||
if (ret < 0) {
|
||||
return ret;
|
||||
} else if (ret != 0) {
|
||||
// nack received, release the bus cleanly
|
||||
mp_hal_i2c_stop(self);
|
||||
return -MP_ENODEV;
|
||||
}
|
||||
|
||||
// read the bytes from the slave
|
||||
while (len--) {
|
||||
ret = mp_hal_i2c_read_byte(self, dest++, len == 0);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
// finish the I2C transaction
|
||||
if (stop) {
|
||||
ret = mp_hal_i2c_stop(self);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
return 0; // success
|
||||
}
|
||||
|
||||
/******************************************************************************/
|
||||
// MicroPython bindings for I2C
|
||||
|
||||
STATIC void machine_i2c_obj_init_helper(machine_i2c_obj_t *self, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
||||
enum { ARG_scl, ARG_sda, ARG_freq, ARG_timeout };
|
||||
static const mp_arg_t allowed_args[] = {
|
||||
{ MP_QSTR_scl, MP_ARG_REQUIRED | MP_ARG_OBJ },
|
||||
{ MP_QSTR_sda, MP_ARG_REQUIRED | MP_ARG_OBJ },
|
||||
{ MP_QSTR_freq, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 400000} },
|
||||
{ MP_QSTR_timeout, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 255} },
|
||||
};
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
|
||||
mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
|
||||
self->scl = mp_hal_get_pin_obj(args[ARG_scl].u_obj);
|
||||
self->sda = mp_hal_get_pin_obj(args[ARG_sda].u_obj);
|
||||
self->us_timeout = args[ARG_timeout].u_int;
|
||||
mp_hal_i2c_init(self, args[ARG_freq].u_int);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t machine_i2c_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
// check the id argument, if given
|
||||
if (n_args > 0) {
|
||||
if (args[0] != MP_OBJ_NEW_SMALL_INT(-1)) {
|
||||
#if defined(MICROPY_PY_MACHINE_I2C_MAKE_NEW)
|
||||
// dispatch to port-specific constructor
|
||||
extern mp_obj_t MICROPY_PY_MACHINE_I2C_MAKE_NEW(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *all_args, mp_map_t *kw_args);
|
||||
return MICROPY_PY_MACHINE_I2C_MAKE_NEW(type, n_args, args, kw_args);
|
||||
#else
|
||||
mp_raise_ValueError(translate("invalid I2C peripheral"));
|
||||
#endif
|
||||
}
|
||||
--n_args;
|
||||
++args;
|
||||
}
|
||||
|
||||
// create new soft I2C object
|
||||
machine_i2c_obj_t *self = m_new_obj(machine_i2c_obj_t);
|
||||
self->base.type = &machine_i2c_type;
|
||||
machine_i2c_obj_init_helper(self, n_args, args, kw_args);
|
||||
return (mp_obj_t)self;
|
||||
}
|
||||
|
||||
STATIC mp_obj_t machine_i2c_obj_init(size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
machine_i2c_obj_init_helper(args[0], n_args - 1, args + 1, kw_args);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_KW(machine_i2c_init_obj, 1, machine_i2c_obj_init);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_scan(mp_obj_t self_in) {
|
||||
mp_obj_base_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
mp_obj_t list = mp_obj_new_list(0, NULL);
|
||||
// 7-bit addresses 0b0000xxx and 0b1111xxx are reserved
|
||||
for (int addr = 0x08; addr < 0x78; ++addr) {
|
||||
int ret = i2c_p->writeto(self, addr, NULL, 0, true);
|
||||
if (ret == 0) {
|
||||
mp_obj_list_append(list, MP_OBJ_NEW_SMALL_INT(addr));
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_1(machine_i2c_scan_obj, machine_i2c_scan);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_start(mp_obj_t self_in) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(self_in);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
if (i2c_p->start == NULL) {
|
||||
mp_raise_msg(&mp_type_OSError, translate("I2C operation not supported"));
|
||||
}
|
||||
int ret = i2c_p->start(self);
|
||||
if (ret != 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_1(machine_i2c_start_obj, machine_i2c_start);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_stop(mp_obj_t self_in) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(self_in);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
if (i2c_p->stop == NULL) {
|
||||
mp_raise_msg(&mp_type_OSError, translate("I2C operation not supported"));
|
||||
}
|
||||
int ret = i2c_p->stop(self);
|
||||
if (ret != 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_1(machine_i2c_stop_obj, machine_i2c_stop);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_readinto(size_t n_args, const mp_obj_t *args) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(args[0]);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
if (i2c_p->read == NULL) {
|
||||
mp_raise_msg(&mp_type_OSError, translate("I2C operation not supported"));
|
||||
}
|
||||
|
||||
// get the buffer to read into
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(args[1], &bufinfo, MP_BUFFER_WRITE);
|
||||
|
||||
// work out if we want to send a nack at the end
|
||||
bool nack = (n_args == 2) ? true : mp_obj_is_true(args[2]);
|
||||
|
||||
// do the read
|
||||
int ret = i2c_p->read(self, bufinfo.buf, bufinfo.len, nack);
|
||||
if (ret != 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(machine_i2c_readinto_obj, 2, 3, machine_i2c_readinto);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_write(mp_obj_t self_in, mp_obj_t buf_in) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(self_in);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
if (i2c_p->write == NULL) {
|
||||
mp_raise_msg(&mp_type_OSError, translate("I2C operation not supported"));
|
||||
}
|
||||
|
||||
// get the buffer to write from
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(buf_in, &bufinfo, MP_BUFFER_READ);
|
||||
|
||||
// do the write
|
||||
int ret = i2c_p->write(self, bufinfo.buf, bufinfo.len);
|
||||
if (ret < 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
|
||||
// return number of acks received
|
||||
return MP_OBJ_NEW_SMALL_INT(ret);
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_2(machine_i2c_write_obj, machine_i2c_write);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_readfrom(size_t n_args, const mp_obj_t *args) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(args[0]);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
mp_int_t addr = mp_obj_get_int(args[1]);
|
||||
vstr_t vstr;
|
||||
vstr_init_len(&vstr, mp_obj_get_int(args[2]));
|
||||
bool stop = (n_args == 3) ? true : mp_obj_is_true(args[3]);
|
||||
int ret = i2c_p->readfrom(self, addr, (uint8_t*)vstr.buf, vstr.len, stop);
|
||||
if (ret < 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
return mp_obj_new_str_from_vstr(&mp_type_bytes, &vstr);
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(machine_i2c_readfrom_obj, 3, 4, machine_i2c_readfrom);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_readfrom_into(size_t n_args, const mp_obj_t *args) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(args[0]);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
mp_int_t addr = mp_obj_get_int(args[1]);
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(args[2], &bufinfo, MP_BUFFER_WRITE);
|
||||
bool stop = (n_args == 3) ? true : mp_obj_is_true(args[3]);
|
||||
int ret = i2c_p->readfrom(self, addr, bufinfo.buf, bufinfo.len, stop);
|
||||
if (ret < 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(machine_i2c_readfrom_into_obj, 3, 4, machine_i2c_readfrom_into);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_writeto(size_t n_args, const mp_obj_t *args) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(args[0]);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
mp_int_t addr = mp_obj_get_int(args[1]);
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(args[2], &bufinfo, MP_BUFFER_READ);
|
||||
bool stop = (n_args == 3) ? true : mp_obj_is_true(args[3]);
|
||||
int ret = i2c_p->writeto(self, addr, bufinfo.buf, bufinfo.len, stop);
|
||||
if (ret < 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
// return number of acks received
|
||||
return MP_OBJ_NEW_SMALL_INT(ret);
|
||||
}
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(machine_i2c_writeto_obj, 3, 4, machine_i2c_writeto);
|
||||
|
||||
STATIC int read_mem(mp_obj_t self_in, uint16_t addr, uint32_t memaddr, uint8_t addrsize, uint8_t *buf, size_t len) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(self_in);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
uint8_t memaddr_buf[4];
|
||||
size_t memaddr_len = 0;
|
||||
for (int16_t i = addrsize - 8; i >= 0; i -= 8) {
|
||||
memaddr_buf[memaddr_len++] = memaddr >> i;
|
||||
}
|
||||
int ret = i2c_p->writeto(self, addr, memaddr_buf, memaddr_len, false);
|
||||
if (ret != memaddr_len) {
|
||||
// must generate STOP
|
||||
i2c_p->writeto(self, addr, NULL, 0, true);
|
||||
return ret;
|
||||
}
|
||||
return i2c_p->readfrom(self, addr, buf, len, true);
|
||||
}
|
||||
|
||||
#define MAX_MEMADDR_SIZE (4)
|
||||
#define BUF_STACK_SIZE (12)
|
||||
|
||||
STATIC int write_mem(mp_obj_t self_in, uint16_t addr, uint32_t memaddr, uint8_t addrsize, const uint8_t *buf, size_t len) {
|
||||
mp_obj_base_t *self = (mp_obj_base_t*)MP_OBJ_TO_PTR(self_in);
|
||||
mp_machine_i2c_p_t *i2c_p = (mp_machine_i2c_p_t*)mp_proto_get(self, QSTR_protocol_i2c);
|
||||
|
||||
// need some memory to create the buffer to send; try to use stack if possible
|
||||
uint8_t buf2_stack[MAX_MEMADDR_SIZE + BUF_STACK_SIZE];
|
||||
uint8_t *buf2;
|
||||
size_t buf2_alloc = 0;
|
||||
if (len <= BUF_STACK_SIZE) {
|
||||
buf2 = buf2_stack;
|
||||
} else {
|
||||
buf2_alloc = MAX_MEMADDR_SIZE + len;
|
||||
buf2 = m_new(uint8_t, buf2_alloc);
|
||||
}
|
||||
|
||||
// create the buffer to send
|
||||
size_t memaddr_len = 0;
|
||||
for (int16_t i = addrsize - 8; i >= 0; i -= 8) {
|
||||
buf2[memaddr_len++] = memaddr >> i;
|
||||
}
|
||||
memcpy(buf2 + memaddr_len, buf, len);
|
||||
|
||||
int ret = i2c_p->writeto(self, addr, buf2, memaddr_len + len, true);
|
||||
if (buf2_alloc != 0) {
|
||||
m_del(uint8_t, buf2, buf2_alloc);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
STATIC const mp_arg_t machine_i2c_mem_allowed_args[] = {
|
||||
{ MP_QSTR_addr, MP_ARG_REQUIRED | MP_ARG_INT, {.u_int = 0} },
|
||||
{ MP_QSTR_memaddr, MP_ARG_REQUIRED | MP_ARG_INT, {.u_int = 0} },
|
||||
{ MP_QSTR_arg, MP_ARG_REQUIRED | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
{ MP_QSTR_addrsize, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 8} },
|
||||
};
|
||||
|
||||
STATIC mp_obj_t machine_i2c_readfrom_mem(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
||||
enum { ARG_addr, ARG_memaddr, ARG_n, ARG_addrsize };
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(machine_i2c_mem_allowed_args)];
|
||||
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args,
|
||||
MP_ARRAY_SIZE(machine_i2c_mem_allowed_args), machine_i2c_mem_allowed_args, args);
|
||||
|
||||
// create the buffer to store data into
|
||||
vstr_t vstr;
|
||||
vstr_init_len(&vstr, mp_obj_get_int(args[ARG_n].u_obj));
|
||||
|
||||
// do the transfer
|
||||
int ret = read_mem(pos_args[0], args[ARG_addr].u_int, args[ARG_memaddr].u_int,
|
||||
args[ARG_addrsize].u_int, (uint8_t*)vstr.buf, vstr.len);
|
||||
if (ret < 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
|
||||
return mp_obj_new_str_from_vstr(&mp_type_bytes, &vstr);
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_KW(machine_i2c_readfrom_mem_obj, 1, machine_i2c_readfrom_mem);
|
||||
|
||||
|
||||
STATIC mp_obj_t machine_i2c_readfrom_mem_into(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
||||
enum { ARG_addr, ARG_memaddr, ARG_buf, ARG_addrsize };
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(machine_i2c_mem_allowed_args)];
|
||||
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args,
|
||||
MP_ARRAY_SIZE(machine_i2c_mem_allowed_args), machine_i2c_mem_allowed_args, args);
|
||||
|
||||
// get the buffer to store data into
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(args[ARG_buf].u_obj, &bufinfo, MP_BUFFER_WRITE);
|
||||
|
||||
// do the transfer
|
||||
int ret = read_mem(pos_args[0], args[ARG_addr].u_int, args[ARG_memaddr].u_int,
|
||||
args[ARG_addrsize].u_int, bufinfo.buf, bufinfo.len);
|
||||
if (ret < 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_KW(machine_i2c_readfrom_mem_into_obj, 1, machine_i2c_readfrom_mem_into);
|
||||
|
||||
STATIC mp_obj_t machine_i2c_writeto_mem(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
||||
enum { ARG_addr, ARG_memaddr, ARG_buf, ARG_addrsize };
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(machine_i2c_mem_allowed_args)];
|
||||
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args,
|
||||
MP_ARRAY_SIZE(machine_i2c_mem_allowed_args), machine_i2c_mem_allowed_args, args);
|
||||
|
||||
// get the buffer to write the data from
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(args[ARG_buf].u_obj, &bufinfo, MP_BUFFER_READ);
|
||||
|
||||
// do the transfer
|
||||
int ret = write_mem(pos_args[0], args[ARG_addr].u_int, args[ARG_memaddr].u_int,
|
||||
args[ARG_addrsize].u_int, bufinfo.buf, bufinfo.len);
|
||||
if (ret < 0) {
|
||||
mp_raise_OSError(-ret);
|
||||
}
|
||||
|
||||
return mp_const_none;
|
||||
}
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(machine_i2c_writeto_mem_obj, 1, machine_i2c_writeto_mem);
|
||||
|
||||
STATIC const mp_rom_map_elem_t machine_i2c_locals_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_init), MP_ROM_PTR(&machine_i2c_init_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_scan), MP_ROM_PTR(&machine_i2c_scan_obj) },
|
||||
|
||||
// primitive I2C operations
|
||||
{ MP_ROM_QSTR(MP_QSTR_start), MP_ROM_PTR(&machine_i2c_start_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_stop), MP_ROM_PTR(&machine_i2c_stop_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_readinto), MP_ROM_PTR(&machine_i2c_readinto_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_write), MP_ROM_PTR(&machine_i2c_write_obj) },
|
||||
|
||||
// standard bus operations
|
||||
{ MP_ROM_QSTR(MP_QSTR_readfrom), MP_ROM_PTR(&machine_i2c_readfrom_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_readfrom_into), MP_ROM_PTR(&machine_i2c_readfrom_into_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_writeto), MP_ROM_PTR(&machine_i2c_writeto_obj) },
|
||||
|
||||
// memory operations
|
||||
{ MP_ROM_QSTR(MP_QSTR_readfrom_mem), MP_ROM_PTR(&machine_i2c_readfrom_mem_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_readfrom_mem_into), MP_ROM_PTR(&machine_i2c_readfrom_mem_into_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_writeto_mem), MP_ROM_PTR(&machine_i2c_writeto_mem_obj) },
|
||||
};
|
||||
|
||||
MP_DEFINE_CONST_DICT(mp_machine_soft_i2c_locals_dict, machine_i2c_locals_dict_table);
|
||||
|
||||
int mp_machine_soft_i2c_read(mp_obj_base_t *self_in, uint8_t *dest, size_t len, bool nack) {
|
||||
machine_i2c_obj_t *self = (machine_i2c_obj_t*)self_in;
|
||||
while (len--) {
|
||||
int ret = mp_hal_i2c_read_byte(self, dest++, nack && (len == 0));
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
return 0; // success
|
||||
}
|
||||
|
||||
int mp_machine_soft_i2c_write(mp_obj_base_t *self_in, const uint8_t *src, size_t len) {
|
||||
machine_i2c_obj_t *self = (machine_i2c_obj_t*)self_in;
|
||||
int num_acks = 0;
|
||||
while (len--) {
|
||||
int ret = mp_hal_i2c_write_byte(self, *src++);
|
||||
if (ret < 0) {
|
||||
return ret;
|
||||
} else if (ret != 0) {
|
||||
// nack received, stop sending
|
||||
break;
|
||||
}
|
||||
++num_acks;
|
||||
}
|
||||
return num_acks;
|
||||
}
|
||||
|
||||
STATIC const mp_machine_i2c_p_t mp_machine_soft_i2c_p = {
|
||||
MP_PROTO_IMPLEMENT(MP_QSTR_protocol_i2c)
|
||||
.start = (int(*)(mp_obj_base_t*))mp_hal_i2c_start,
|
||||
.stop = (int(*)(mp_obj_base_t*))mp_hal_i2c_stop,
|
||||
.read = mp_machine_soft_i2c_read,
|
||||
.write = mp_machine_soft_i2c_write,
|
||||
.readfrom = mp_machine_soft_i2c_readfrom,
|
||||
.writeto = mp_machine_soft_i2c_writeto,
|
||||
};
|
||||
|
||||
const mp_obj_type_t machine_i2c_type = {
|
||||
{ &mp_type_type },
|
||||
.name = MP_QSTR_I2C,
|
||||
.make_new = machine_i2c_make_new,
|
||||
.protocol = &mp_machine_soft_i2c_p,
|
||||
.locals_dict = (mp_obj_dict_t*)&mp_machine_soft_i2c_locals_dict,
|
||||
};
|
||||
|
||||
#endif // MICROPY_PY_MACHINE_I2C
|
|
@ -1,58 +0,0 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2016 Damien P. George
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
#ifndef MICROPY_INCLUDED_EXTMOD_MACHINE_I2C_H
|
||||
#define MICROPY_INCLUDED_EXTMOD_MACHINE_I2C_H
|
||||
|
||||
#include "py/obj.h"
|
||||
#include "py/proto.h"
|
||||
|
||||
// I2C protocol
|
||||
// the first 4 methods can be NULL, meaning operation is not supported
|
||||
typedef struct _mp_machine_i2c_p_t {
|
||||
MP_PROTOCOL_HEAD
|
||||
int (*start)(mp_obj_base_t *obj);
|
||||
int (*stop)(mp_obj_base_t *obj);
|
||||
int (*read)(mp_obj_base_t *obj, uint8_t *dest, size_t len, bool nack);
|
||||
int (*write)(mp_obj_base_t *obj, const uint8_t *src, size_t len);
|
||||
int (*readfrom)(mp_obj_base_t *obj, uint16_t addr, uint8_t *dest, size_t len, bool stop);
|
||||
int (*writeto)(mp_obj_base_t *obj, uint16_t addr, const uint8_t *src, size_t len, bool stop);
|
||||
} mp_machine_i2c_p_t;
|
||||
|
||||
typedef struct _mp_machine_soft_i2c_obj_t {
|
||||
mp_obj_base_t base;
|
||||
uint32_t us_delay;
|
||||
uint32_t us_timeout;
|
||||
mp_hal_pin_obj_t scl;
|
||||
mp_hal_pin_obj_t sda;
|
||||
} mp_machine_soft_i2c_obj_t;
|
||||
|
||||
extern const mp_obj_type_t machine_i2c_type;
|
||||
extern const mp_obj_dict_t mp_machine_soft_i2c_locals_dict;
|
||||
|
||||
int mp_machine_soft_i2c_readfrom(mp_obj_base_t *self_in, uint16_t addr, uint8_t *dest, size_t len, bool stop);
|
||||
int mp_machine_soft_i2c_writeto(mp_obj_base_t *self_in, uint16_t addr, const uint8_t *src, size_t len, bool stop);
|
||||
|
||||
#endif // MICROPY_INCLUDED_EXTMOD_MACHINE_I2C_H
|
|
@ -1,286 +0,0 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2016 Damien P. George
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "py/runtime.h"
|
||||
#include "extmod/machine_spi.h"
|
||||
|
||||
#include "supervisor/shared/translate.h"
|
||||
|
||||
#if MICROPY_PY_MACHINE_SPI
|
||||
|
||||
// if a port didn't define MSB/LSB constants then provide them
|
||||
#ifndef MICROPY_PY_MACHINE_SPI_MSB
|
||||
#define MICROPY_PY_MACHINE_SPI_MSB (0)
|
||||
#define MICROPY_PY_MACHINE_SPI_LSB (1)
|
||||
#endif
|
||||
|
||||
/******************************************************************************/
|
||||
// MicroPython bindings for generic machine.SPI
|
||||
|
||||
STATIC mp_obj_t mp_machine_soft_spi_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
||||
|
||||
mp_obj_t mp_machine_spi_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
// check the id argument, if given
|
||||
if (n_args > 0) {
|
||||
if (args[0] != MP_OBJ_NEW_SMALL_INT(-1)) {
|
||||
#if defined(MICROPY_PY_MACHINE_SPI_MAKE_NEW)
|
||||
// dispatch to port-specific constructor
|
||||
extern mp_obj_t MICROPY_PY_MACHINE_SPI_MAKE_NEW(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args);
|
||||
return MICROPY_PY_MACHINE_SPI_MAKE_NEW(type, n_args, args, kw_args);
|
||||
#else
|
||||
mp_raise_ValueError(translate("invalid SPI peripheral"));
|
||||
#endif
|
||||
}
|
||||
--n_args;
|
||||
++args;
|
||||
}
|
||||
|
||||
// software SPI
|
||||
return mp_machine_soft_spi_make_new(type, n_args, args, kw_args);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t machine_spi_init(size_t n_args, const mp_obj_t *args, mp_map_t *kw_args) {
|
||||
mp_obj_base_t *s = (mp_obj_base_t*)MP_OBJ_TO_PTR(args[0]);
|
||||
mp_machine_spi_p_t *spi_p = (mp_machine_spi_p_t*)mp_proto_get(QSTR_protocol_spi, s);
|
||||
spi_p->init(s, n_args - 1, args + 1, kw_args);
|
||||
return mp_const_none;
|
||||
}
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(machine_spi_init_obj, 1, machine_spi_init);
|
||||
|
||||
STATIC mp_obj_t machine_spi_deinit(mp_obj_t self) {
|
||||
mp_obj_base_t *s = (mp_obj_base_t*)MP_OBJ_TO_PTR(self);
|
||||
mp_machine_spi_p_t *spi_p = (mp_machine_spi_p_t*)mp_proto_get(QSTR_protocol_spi, s);
|
||||
if (spi_p->deinit != NULL) {
|
||||
spi_p->deinit(s);
|
||||
}
|
||||
return mp_const_none;
|
||||
}
|
||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(machine_spi_deinit_obj, machine_spi_deinit);
|
||||
|
||||
STATIC void mp_machine_spi_transfer(mp_obj_t self, size_t len, const void *src, void *dest) {
|
||||
mp_obj_base_t *s = (mp_obj_base_t*)MP_OBJ_TO_PTR(self);
|
||||
mp_machine_spi_p_t *spi_p = (mp_machine_spi_p_t*)mp_proto_get(QSTR_protocol_spi, s);
|
||||
spi_p->transfer(s, len, src, dest);
|
||||
}
|
||||
|
||||
STATIC mp_obj_t mp_machine_spi_read(size_t n_args, const mp_obj_t *args) {
|
||||
vstr_t vstr;
|
||||
vstr_init_len(&vstr, mp_obj_get_int(args[1]));
|
||||
memset(vstr.buf, n_args == 3 ? mp_obj_get_int(args[2]) : 0, vstr.len);
|
||||
mp_machine_spi_transfer(args[0], vstr.len, vstr.buf, vstr.buf);
|
||||
return mp_obj_new_str_from_vstr(&mp_type_bytes, &vstr);
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_machine_spi_read_obj, 2, 3, mp_machine_spi_read);
|
||||
|
||||
STATIC mp_obj_t mp_machine_spi_readinto(size_t n_args, const mp_obj_t *args) {
|
||||
mp_buffer_info_t bufinfo;
|
||||
mp_get_buffer_raise(args[1], &bufinfo, MP_BUFFER_WRITE);
|
||||
memset(bufinfo.buf, n_args == 3 ? mp_obj_get_int(args[2]) : 0, bufinfo.len);
|
||||
mp_machine_spi_transfer(args[0], bufinfo.len, bufinfo.buf, bufinfo.buf);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mp_machine_spi_readinto_obj, 2, 3, mp_machine_spi_readinto);
|
||||
|
||||
STATIC mp_obj_t mp_machine_spi_write(mp_obj_t self, mp_obj_t wr_buf) {
|
||||
mp_buffer_info_t src;
|
||||
mp_get_buffer_raise(wr_buf, &src, MP_BUFFER_READ);
|
||||
mp_machine_spi_transfer(self, src.len, (const uint8_t*)src.buf, NULL);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_2(mp_machine_spi_write_obj, mp_machine_spi_write);
|
||||
|
||||
STATIC mp_obj_t mp_machine_spi_write_readinto(mp_obj_t self, mp_obj_t wr_buf, mp_obj_t rd_buf) {
|
||||
mp_buffer_info_t src;
|
||||
mp_get_buffer_raise(wr_buf, &src, MP_BUFFER_READ);
|
||||
mp_buffer_info_t dest;
|
||||
mp_get_buffer_raise(rd_buf, &dest, MP_BUFFER_WRITE);
|
||||
if (src.len != dest.len) {
|
||||
mp_raise_ValueError(translate("buffers must be the same length"));
|
||||
}
|
||||
mp_machine_spi_transfer(self, src.len, src.buf, dest.buf);
|
||||
return mp_const_none;
|
||||
}
|
||||
MP_DEFINE_CONST_FUN_OBJ_3(mp_machine_spi_write_readinto_obj, mp_machine_spi_write_readinto);
|
||||
|
||||
STATIC const mp_rom_map_elem_t machine_spi_locals_dict_table[] = {
|
||||
{ MP_ROM_QSTR(MP_QSTR_init), MP_ROM_PTR(&machine_spi_init_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_deinit), MP_ROM_PTR(&machine_spi_deinit_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_read), MP_ROM_PTR(&mp_machine_spi_read_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_readinto), MP_ROM_PTR(&mp_machine_spi_readinto_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_write), MP_ROM_PTR(&mp_machine_spi_write_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_write_readinto), MP_ROM_PTR(&mp_machine_spi_write_readinto_obj) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_MSB), MP_ROM_INT(MICROPY_PY_MACHINE_SPI_MSB) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_LSB), MP_ROM_INT(MICROPY_PY_MACHINE_SPI_LSB) },
|
||||
};
|
||||
|
||||
MP_DEFINE_CONST_DICT(mp_machine_spi_locals_dict, machine_spi_locals_dict_table);
|
||||
|
||||
/******************************************************************************/
|
||||
// Implementation of soft SPI
|
||||
|
||||
STATIC uint32_t baudrate_from_delay_half(uint32_t delay_half) {
|
||||
#ifdef MICROPY_HW_SOFTSPI_MIN_DELAY
|
||||
if (delay_half == MICROPY_HW_SOFTSPI_MIN_DELAY) {
|
||||
return MICROPY_HW_SOFTSPI_MAX_BAUDRATE;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
return 500000 / delay_half;
|
||||
}
|
||||
}
|
||||
|
||||
STATIC uint32_t baudrate_to_delay_half(uint32_t baudrate) {
|
||||
#ifdef MICROPY_HW_SOFTSPI_MIN_DELAY
|
||||
if (baudrate >= MICROPY_HW_SOFTSPI_MAX_BAUDRATE) {
|
||||
return MICROPY_HW_SOFTSPI_MIN_DELAY;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
uint32_t delay_half = 500000 / baudrate;
|
||||
// round delay_half up so that: actual_baudrate <= requested_baudrate
|
||||
if (500000 % baudrate != 0) {
|
||||
delay_half += 1;
|
||||
}
|
||||
return delay_half;
|
||||
}
|
||||
}
|
||||
|
||||
STATIC void mp_machine_soft_spi_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) {
|
||||
mp_machine_soft_spi_obj_t *self = MP_OBJ_TO_PTR(self_in);
|
||||
mp_printf(print, "SoftSPI(baudrate=%u, polarity=%u, phase=%u,"
|
||||
" sck=" MP_HAL_PIN_FMT ", mosi=" MP_HAL_PIN_FMT ", miso=" MP_HAL_PIN_FMT ")",
|
||||
baudrate_from_delay_half(self->spi.delay_half), self->spi.polarity, self->spi.phase,
|
||||
mp_hal_pin_name(self->spi.sck), mp_hal_pin_name(self->spi.mosi), mp_hal_pin_name(self->spi.miso));
|
||||
}
|
||||
|
||||
STATIC mp_obj_t mp_machine_soft_spi_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *all_args, mp_map_t *kw_args) {
|
||||
enum { ARG_baudrate, ARG_polarity, ARG_phase, ARG_bits, ARG_firstbit, ARG_sck, ARG_mosi, ARG_miso };
|
||||
static const mp_arg_t allowed_args[] = {
|
||||
{ MP_QSTR_baudrate, MP_ARG_INT, {.u_int = 500000} },
|
||||
{ MP_QSTR_polarity, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 0} },
|
||||
{ MP_QSTR_phase, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 0} },
|
||||
{ MP_QSTR_bits, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 8} },
|
||||
{ MP_QSTR_firstbit, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = MICROPY_PY_MACHINE_SPI_MSB} },
|
||||
{ MP_QSTR_sck, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
{ MP_QSTR_mosi, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
{ MP_QSTR_miso, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
};
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
|
||||
mp_arg_parse_all(n_args, all_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
|
||||
|
||||
// create new object
|
||||
mp_machine_soft_spi_obj_t *self = m_new_obj(mp_machine_soft_spi_obj_t);
|
||||
self->base.type = &mp_machine_soft_spi_type;
|
||||
|
||||
// set parameters
|
||||
self->spi.delay_half = baudrate_to_delay_half(args[ARG_baudrate].u_int);
|
||||
self->spi.polarity = args[ARG_polarity].u_int;
|
||||
self->spi.phase = args[ARG_phase].u_int;
|
||||
if (args[ARG_bits].u_int != 8) {
|
||||
mp_raise_ValueError(translate("bits must be 8"));
|
||||
}
|
||||
if (args[ARG_firstbit].u_int != MICROPY_PY_MACHINE_SPI_MSB) {
|
||||
mp_raise_ValueError(translate("firstbit must be MSB"));
|
||||
}
|
||||
if (args[ARG_sck].u_obj == MP_OBJ_NULL
|
||||
|| args[ARG_mosi].u_obj == MP_OBJ_NULL
|
||||
|| args[ARG_miso].u_obj == MP_OBJ_NULL) {
|
||||
mp_raise_ValueError(translate("must specify all of sck/mosi/miso"));
|
||||
}
|
||||
self->spi.sck = mp_hal_get_pin_obj(args[ARG_sck].u_obj);
|
||||
self->spi.mosi = mp_hal_get_pin_obj(args[ARG_mosi].u_obj);
|
||||
self->spi.miso = mp_hal_get_pin_obj(args[ARG_miso].u_obj);
|
||||
|
||||
// configure bus
|
||||
mp_soft_spi_ioctl(&self->spi, MP_SPI_IOCTL_INIT);
|
||||
|
||||
return MP_OBJ_FROM_PTR(self);
|
||||
}
|
||||
|
||||
STATIC void mp_machine_soft_spi_init(mp_obj_base_t *self_in, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
||||
mp_machine_soft_spi_obj_t *self = (mp_machine_soft_spi_obj_t*)self_in;
|
||||
|
||||
enum { ARG_baudrate, ARG_polarity, ARG_phase, ARG_sck, ARG_mosi, ARG_miso };
|
||||
static const mp_arg_t allowed_args[] = {
|
||||
{ MP_QSTR_baudrate, MP_ARG_INT, {.u_int = -1} },
|
||||
{ MP_QSTR_polarity, MP_ARG_INT, {.u_int = -1} },
|
||||
{ MP_QSTR_phase, MP_ARG_INT, {.u_int = -1} },
|
||||
{ MP_QSTR_sck, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
{ MP_QSTR_mosi, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
{ MP_QSTR_miso, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NULL} },
|
||||
};
|
||||
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
|
||||
mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
|
||||
|
||||
if (args[ARG_baudrate].u_int != -1) {
|
||||
self->spi.delay_half = baudrate_to_delay_half(args[ARG_baudrate].u_int);
|
||||
}
|
||||
if (args[ARG_polarity].u_int != -1) {
|
||||
self->spi.polarity = args[ARG_polarity].u_int;
|
||||
}
|
||||
if (args[ARG_phase].u_int != -1) {
|
||||
self->spi.phase = args[ARG_phase].u_int;
|
||||
}
|
||||
if (args[ARG_sck].u_obj != MP_OBJ_NULL) {
|
||||
self->spi.sck = mp_hal_get_pin_obj(args[ARG_sck].u_obj);
|
||||
}
|
||||
if (args[ARG_mosi].u_obj != MP_OBJ_NULL) {
|
||||
self->spi.mosi = mp_hal_get_pin_obj(args[ARG_mosi].u_obj);
|
||||
}
|
||||
if (args[ARG_miso].u_obj != MP_OBJ_NULL) {
|
||||
self->spi.miso = mp_hal_get_pin_obj(args[ARG_miso].u_obj);
|
||||
}
|
||||
|
||||
// configure bus
|
||||
mp_soft_spi_ioctl(&self->spi, MP_SPI_IOCTL_INIT);
|
||||
}
|
||||
|
||||
STATIC void mp_machine_soft_spi_transfer(mp_obj_base_t *self_in, size_t len, const uint8_t *src, uint8_t *dest) {
|
||||
mp_machine_soft_spi_obj_t *self = (mp_machine_soft_spi_obj_t*)self_in;
|
||||
mp_soft_spi_transfer(&self->spi, len, src, dest);
|
||||
}
|
||||
|
||||
const mp_machine_spi_p_t mp_machine_soft_spi_p = {
|
||||
MP_PROTO_IMPLEMENT(MP_QSTR_protocol_spi)
|
||||
.init = mp_machine_soft_spi_init,
|
||||
.deinit = NULL,
|
||||
.transfer = mp_machine_soft_spi_transfer,
|
||||
};
|
||||
|
||||
const mp_obj_type_t mp_machine_soft_spi_type = {
|
||||
{ &mp_type_type },
|
||||
.name = MP_QSTR_SoftSPI,
|
||||
.print = mp_machine_soft_spi_print,
|
||||
.make_new = mp_machine_spi_make_new, // delegate to master constructor
|
||||
.protocol = &mp_machine_soft_spi_p,
|
||||
.locals_dict = (mp_obj_dict_t*)&mp_machine_spi_locals_dict,
|
||||
};
|
||||
|
||||
#endif // MICROPY_PY_MACHINE_SPI
|
|
@ -1 +1 @@
|
|||
Subproject commit 0394801933f6e68a5bc7cdb0da76c7884e8cf70a
|
||||
Subproject commit 48cb939839fcf091fcdcdf742530b1b650066a15
|
156
locale/ID.po
156
locale/ID.po
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -58,6 +58,10 @@ msgstr ""
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr ""
|
||||
|
@ -86,6 +90,10 @@ msgstr "buffers harus mempunyai panjang yang sama"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr ""
|
||||
|
@ -293,6 +301,7 @@ msgstr "Semua channel event yang disinkronisasi sedang digunakan"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Semua timer untuk pin ini sedang digunakan"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -300,7 +309,7 @@ msgstr "Semua timer untuk pin ini sedang digunakan"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Semua timer sedang digunakan"
|
||||
|
||||
|
@ -339,7 +348,7 @@ msgstr ""
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -420,6 +429,11 @@ msgstr ""
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
@ -582,6 +596,14 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Tidak dapat menginisialisasi UART"
|
||||
|
@ -704,7 +726,8 @@ msgstr "Channel EXTINT sedang digunakan"
|
|||
msgid "Error in regex"
|
||||
msgstr "Error pada regex"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -828,10 +851,6 @@ msgstr "operasi I/O pada file tertutup"
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "operasi I2C tidak didukung"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -868,6 +887,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -973,9 +996,10 @@ msgstr "Pin untuk channel kanan tidak valid"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1373,6 +1397,10 @@ msgid "Running in safe mode! Not running saved code.\n"
|
|||
msgstr ""
|
||||
"Berjalan di mode aman(safe mode)! tidak menjalankan kode yang tersimpan.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1441,6 +1469,10 @@ msgstr ""
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1627,6 +1659,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Baudrate tidak didukung"
|
||||
|
||||
|
@ -1743,11 +1776,11 @@ msgstr "abort() dipanggil"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "alamat %08x tidak selaras dengan %d bytes"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1828,10 +1861,6 @@ msgstr ""
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bits harus memilki nilai 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
@ -1858,10 +1887,6 @@ msgstr ""
|
|||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "buffers harus mempunyai panjang yang sama"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1937,7 +1962,7 @@ msgstr ""
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2005,6 +2030,10 @@ msgstr ""
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
@ -2131,6 +2160,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2291,10 +2324,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "bit pertama(firstbit) harus berupa MSB"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2479,14 +2508,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "perangkat I2C tidak valid"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "perangkat SPI tidak valid"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "argumen-argumen tidak valid"
|
||||
|
@ -2663,10 +2684,6 @@ msgstr ""
|
|||
msgid "must raise an object"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "harus menentukan semua pin sck/mosi/miso"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr ""
|
||||
|
@ -2704,6 +2721,10 @@ msgstr ""
|
|||
msgid "negative shift count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr ""
|
||||
|
@ -2725,6 +2746,10 @@ msgstr "tidak ada modul yang bernama '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr ""
|
||||
|
@ -3015,6 +3040,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr ""
|
||||
|
@ -3031,6 +3060,18 @@ msgstr "memulai ulang software(soft reboot)\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr ""
|
||||
|
@ -3117,6 +3158,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "bits harus memilki nilai 8"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr ""
|
||||
|
@ -3314,6 +3363,18 @@ msgstr ""
|
|||
msgid "zero step"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "AP required"
|
||||
#~ msgstr "AP dibutuhkan"
|
||||
|
||||
|
@ -3455,6 +3516,9 @@ msgstr ""
|
|||
#~ msgid "GPIO16 does not support pull up."
|
||||
#~ msgstr "GPIO16 tidak mendukung pull up"
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "operasi I2C tidak didukung"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Bit clock pada pin tidak valid"
|
||||
|
||||
|
@ -3546,9 +3610,15 @@ msgstr ""
|
|||
#~ msgid "[addrinfo error %d]"
|
||||
#~ msgstr "[addrinfo error %d]"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits harus memilki nilai 8"
|
||||
|
||||
#~ msgid "buffer too long"
|
||||
#~ msgstr "buffer terlalu panjang"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "buffers harus mempunyai panjang yang sama"
|
||||
|
||||
#~ msgid "can query only one param"
|
||||
#~ msgstr "hanya bisa melakukan query satu param"
|
||||
|
||||
|
@ -3573,6 +3643,9 @@ msgstr ""
|
|||
#~ msgid "ffi_prep_closure_loc"
|
||||
#~ msgstr "ffi_prep_closure_loc"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "bit pertama(firstbit) harus berupa MSB"
|
||||
|
||||
#~ msgid "flash location must be below 1MByte"
|
||||
#~ msgstr "alokasi flash harus dibawah 1MByte"
|
||||
|
||||
|
@ -3582,6 +3655,12 @@ msgstr ""
|
|||
#~ msgid "impossible baudrate"
|
||||
#~ msgstr "baudrate tidak memungkinkan"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "perangkat I2C tidak valid"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "perangkat SPI tidak valid"
|
||||
|
||||
#~ msgid "invalid alarm"
|
||||
#~ msgstr "alarm tidak valid"
|
||||
|
||||
|
@ -3603,6 +3682,9 @@ msgstr ""
|
|||
#~ msgid "memory allocation failed, allocating %u bytes for native code"
|
||||
#~ msgstr "alokasi memori gagal, mengalokasikan %u byte untuk kode native"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "harus menentukan semua pin sck/mosi/miso"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "keyword harus berupa string"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -58,6 +58,10 @@ msgstr ""
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr ""
|
||||
|
@ -85,6 +89,10 @@ msgstr ""
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr ""
|
||||
|
@ -291,6 +299,7 @@ msgstr ""
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -298,7 +307,7 @@ msgstr ""
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr ""
|
||||
|
||||
|
@ -337,7 +346,7 @@ msgstr ""
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -416,6 +425,11 @@ msgstr ""
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
@ -572,6 +586,14 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr ""
|
||||
|
@ -693,7 +715,8 @@ msgstr ""
|
|||
msgid "Error in regex"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -817,10 +840,6 @@ msgstr ""
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -857,6 +876,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -962,9 +985,10 @@ msgstr ""
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1357,6 +1381,10 @@ msgstr ""
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1425,6 +1453,10 @@ msgstr ""
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1611,6 +1643,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1720,11 +1753,11 @@ msgstr ""
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1805,10 +1838,6 @@ msgstr ""
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
@ -1834,10 +1863,6 @@ msgstr ""
|
|||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1913,7 +1938,7 @@ msgstr ""
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1981,6 +2006,10 @@ msgstr ""
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
@ -2107,6 +2136,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2267,10 +2300,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2455,14 +2484,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr ""
|
||||
|
@ -2639,10 +2660,6 @@ msgstr ""
|
|||
msgid "must raise an object"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr ""
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr ""
|
||||
|
@ -2680,6 +2697,10 @@ msgstr ""
|
|||
msgid "negative shift count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr ""
|
||||
|
@ -2701,6 +2722,10 @@ msgstr ""
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr ""
|
||||
|
@ -2990,6 +3015,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr ""
|
||||
|
@ -3006,6 +3035,18 @@ msgstr ""
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr ""
|
||||
|
@ -3091,6 +3132,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr ""
|
||||
|
@ -3287,3 +3336,15 @@ msgstr ""
|
|||
#: py/objrange.c
|
||||
msgid "zero step"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
|
135
locale/cs.po
135
locale/cs.po
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2020-05-24 03:22+0000\n"
|
||||
"Last-Translator: dronecz <mzuzelka@gmail.com>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -66,6 +66,10 @@ msgstr "%% c vyžaduje int nebo char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr "%d adresní piny a %d rgb piny označují výšku %d, nikoli %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q se nyní používá"
|
||||
|
@ -93,6 +97,10 @@ msgstr "% q musí být > = 1"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr "% q musí být n-tice délky 2"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "% q by měl být int"
|
||||
|
@ -299,6 +307,7 @@ msgstr ""
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -306,7 +315,7 @@ msgstr ""
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr ""
|
||||
|
||||
|
@ -345,7 +354,7 @@ msgstr ""
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -424,6 +433,11 @@ msgstr ""
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr ""
|
||||
|
@ -580,6 +594,14 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr ""
|
||||
|
@ -701,7 +723,8 @@ msgstr ""
|
|||
msgid "Error in regex"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -825,10 +848,6 @@ msgstr ""
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -865,6 +884,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -970,9 +993,10 @@ msgstr ""
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1365,6 +1389,10 @@ msgstr ""
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1433,6 +1461,10 @@ msgstr ""
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1619,6 +1651,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1728,11 +1761,11 @@ msgstr ""
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1813,10 +1846,6 @@ msgstr ""
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
@ -1842,10 +1871,6 @@ msgstr ""
|
|||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1921,7 +1946,7 @@ msgstr ""
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1989,6 +2014,10 @@ msgstr ""
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
@ -2115,6 +2144,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2275,10 +2308,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2463,14 +2492,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr ""
|
||||
|
@ -2647,10 +2668,6 @@ msgstr ""
|
|||
msgid "must raise an object"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr ""
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr ""
|
||||
|
@ -2688,6 +2705,10 @@ msgstr ""
|
|||
msgid "negative shift count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr ""
|
||||
|
@ -2709,6 +2730,10 @@ msgstr ""
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr ""
|
||||
|
@ -2998,6 +3023,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr ""
|
||||
|
@ -3014,6 +3043,18 @@ msgstr ""
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr ""
|
||||
|
@ -3099,6 +3140,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr ""
|
||||
|
@ -3295,3 +3344,15 @@ msgstr ""
|
|||
#: py/objrange.c
|
||||
msgid "zero step"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
|
158
locale/de_DE.po
158
locale/de_DE.po
|
@ -7,11 +7,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2020-06-16 18:24+0000\n"
|
||||
"Last-Translator: Andreas Buchen <andreas.buchen@gmail.com>\n"
|
||||
"Language-Team: German <https://later.unpythonic.net/projects/circuitpython/"
|
||||
"circuitpython-master/de/>\n"
|
||||
"Language: de_DE\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -67,6 +65,10 @@ msgstr "%%c erwartet int oder char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr "%d Adress-Pins und %d rgb-Pins zeigen eine Höhe von %d, nicht von %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q in Benutzung"
|
||||
|
@ -94,6 +96,10 @@ msgstr "%q muss >= 1 sein"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr "%q muss ein Tupel der Länge 2 sein"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q sollte ein integer sein"
|
||||
|
@ -300,6 +306,7 @@ msgstr "Alle sync event Kanäle werden benutzt"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Alle timer für diesen Pin werden bereits benutzt"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -307,7 +314,7 @@ msgstr "Alle timer für diesen Pin werden bereits benutzt"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Alle timer werden benutzt"
|
||||
|
||||
|
@ -346,7 +353,7 @@ msgstr "Array muss Halbwörter enthalten (type 'H')"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Array-Werte sollten aus Einzelbytes bestehen."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr "Es darf höchstens %d %q spezifiziert werden (nicht %d)"
|
||||
|
||||
|
@ -429,6 +436,11 @@ msgstr "Der Puffer ist zu klein"
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr "Die Pufferlänge %d ist zu groß. Sie muss kleiner als %d sein"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Der Puffer muss eine Mindestenslänge von 1 haben"
|
||||
|
@ -592,6 +604,14 @@ msgstr "Beschädigte .mpy Datei"
|
|||
msgid "Corrupt raw code"
|
||||
msgstr "Beschädigter raw code"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Konnte UART nicht initialisieren"
|
||||
|
@ -713,7 +733,8 @@ msgstr "EXTINT Kanal ist schon in Benutzung"
|
|||
msgid "Error in regex"
|
||||
msgstr "Fehler in regex"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -842,10 +863,6 @@ msgstr "Lese/Schreibe-operation an geschlossener Datei"
|
|||
msgid "I2C Init Error"
|
||||
msgstr "I2C-Init-Fehler"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "I2C-operation nicht unterstützt"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -884,6 +901,10 @@ msgstr "Interner Definitionsfehler"
|
|||
msgid "Internal error #%d"
|
||||
msgstr "Interner Fehler #%d"
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -989,9 +1010,10 @@ msgstr "Ungültiger Pin für rechten Kanal"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1397,6 +1419,10 @@ msgstr "Sicherheitsmodus aktiv! Automatisches Neuladen ist deaktiviert.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Sicherheitsmodus aktiv! Gespeicherter Code wird nicht ausgeführt\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1465,6 +1491,10 @@ msgstr "Stream fehlt readinto() oder write() Methode."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr "Geben Sie mindestens einen UART-Pin an"
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr "Zeitüberschreitung beim Auslesen der Temperatur"
|
||||
|
@ -1669,6 +1699,7 @@ msgstr ""
|
|||
"Eingabeaufforderung auf dem anderen Gerät abgelehnt oder ignoriert."
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Baudrate wird nicht unterstützt"
|
||||
|
||||
|
@ -1787,11 +1818,11 @@ msgstr "abort() wurde aufgerufen"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "Addresse %08x ist nicht an %d bytes ausgerichtet"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "Adresse außerhalb der Grenzen"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "adresses ist leer"
|
||||
|
||||
|
@ -1872,10 +1903,6 @@ msgstr "Der binäre Operator %q ist nicht implementiert"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits muss 7, 8 oder 9 sein"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bits müssen 8 sein"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "Es müssen 8 oder 16 bits_per_sample sein"
|
||||
|
@ -1901,10 +1928,6 @@ msgstr "Puffersegmente müssen gleich lang sein"
|
|||
msgid "buffer too small"
|
||||
msgstr "Der Puffer ist zu klein"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "Buffer müssen gleich lang sein"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "Tasten müssen digitalio.DigitalInOut sein"
|
||||
|
@ -1982,7 +2005,7 @@ msgstr "Kann '%q' Objekt nicht implizit nach %q konvertieren"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "kann NaN nicht nach int konvertieren"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "kann Adresse nicht in int konvertieren"
|
||||
|
||||
|
@ -2052,6 +2075,10 @@ msgstr ""
|
|||
"Nicht \"None\" Werte können nicht an einen gerade gestarteten Generator "
|
||||
"gesendet werden"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "kann Attribut nicht setzen"
|
||||
|
@ -2185,6 +2212,10 @@ msgstr "Eingabearray konnte nicht aus der Form übertragen werden"
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "Vandermonde-Matrix konnte nicht invertiert werden"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2347,10 +2378,6 @@ msgstr "Das erste Argument muss ein Ndarray sein"
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr "Das erste Argument für super() muss type sein"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "Erstes Bit muss das höchstwertigste Bit (MSB) sein"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr "Die Abflachungsreihenfolge muss entweder \"C\" oder \"F\" sein"
|
||||
|
@ -2536,14 +2563,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr "Das Intervall muss im Bereich %s-%s sein"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "ungültige I2C Schnittstelle"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "ungültige SPI Schnittstelle"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "ungültige argumente"
|
||||
|
@ -2726,10 +2745,6 @@ msgstr "Mehrfache Vererbung nicht unterstützt"
|
|||
msgid "must raise an object"
|
||||
msgstr "muss ein Objekt verursachen (raise)"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "sck/mosi/miso müssen alle spezifiziert sein"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "muss Schlüsselwortargument für key function verwenden"
|
||||
|
@ -2767,6 +2782,10 @@ msgstr "negative Potenz ohne Gleitkomma (float) Unterstützung"
|
|||
msgid "negative shift count"
|
||||
msgstr "Negative shift Anzahl"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "Keine aktive Ausnahme zu verusachen (raise)"
|
||||
|
@ -2788,6 +2807,10 @@ msgstr "Kein Modul mit dem Namen '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr "kein Reset Pin verfügbar"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "kein solches Attribut"
|
||||
|
@ -3083,6 +3106,10 @@ msgstr "Größe ist nur für ndarrays definiert"
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "Die Schlafdauer darf nicht negativ sein"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "Der Slice-Schritt kann nicht Null sein"
|
||||
|
@ -3099,6 +3126,18 @@ msgstr "weicher reboot\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr "sortierungs Argument muss ein ndarray sein"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "start/end Indizes"
|
||||
|
@ -3185,6 +3224,14 @@ msgstr "Das Zeitlimit muss 0,0-100,0 Sekunden betragen"
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "timeout muss >= 0.0 sein"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "Zeitstempel außerhalb des Bereichs für Plattform time_t"
|
||||
|
@ -3386,6 +3433,18 @@ msgstr "y Wert außerhalb der Grenzen"
|
|||
msgid "zero step"
|
||||
msgstr "Nullschritt"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "AP required"
|
||||
#~ msgstr "AP erforderlich"
|
||||
|
||||
|
@ -3562,6 +3621,9 @@ msgstr "Nullschritt"
|
|||
#~ msgid "GPIO16 does not support pull up."
|
||||
#~ msgstr "GPIO16 unterstützt pull up nicht"
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "I2C-operation nicht unterstützt"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Ungültiges bit clock pin"
|
||||
|
||||
|
@ -3711,12 +3773,18 @@ msgstr "Nullschritt"
|
|||
#~ "Sie laufen im abgesicherten Modus, was bedeutet, dass etwas Unerwartetes "
|
||||
#~ "passiert ist.\n"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits müssen 8 sein"
|
||||
|
||||
#~ msgid "buf is too small. need %d bytes"
|
||||
#~ msgstr "buf ist zu klein. brauche %d Bytes"
|
||||
|
||||
#~ msgid "buffer too long"
|
||||
#~ msgstr "Buffer zu lang"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "Buffer müssen gleich lang sein"
|
||||
|
||||
#~ msgid "byteorder is not an instance of ByteOrder (got a %s)"
|
||||
#~ msgstr "byteorder ist keine Instanz von ByteOrder (%s erhalten)"
|
||||
|
||||
|
@ -3732,6 +3800,9 @@ msgstr "Nullschritt"
|
|||
#~ msgid "ffi_prep_closure_loc"
|
||||
#~ msgstr "ffi_prep_closure_loc"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "Erstes Bit muss das höchstwertigste Bit (MSB) sein"
|
||||
|
||||
#~ msgid "flash location must be below 1MByte"
|
||||
#~ msgstr "flash location muss unter 1MByte sein"
|
||||
|
||||
|
@ -3744,6 +3815,12 @@ msgstr "Nullschritt"
|
|||
#~ msgid "interval not in range 0.0020 to 10.24"
|
||||
#~ msgstr "Das Interval ist nicht im Bereich 0.0020 bis 10.24"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "ungültige I2C Schnittstelle"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "ungültige SPI Schnittstelle"
|
||||
|
||||
#~ msgid "invalid alarm"
|
||||
#~ msgstr "ungültiger Alarm"
|
||||
|
||||
|
@ -3766,6 +3843,9 @@ msgstr "Nullschritt"
|
|||
#~ msgstr ""
|
||||
#~ "Speicherallozierung fehlgeschlagen, alloziere %u Bytes für nativen Code"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "sck/mosi/miso müssen alle spezifiziert sein"
|
||||
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "name muss ein String sein"
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 08:56-0500\n"
|
||||
"POT-Creation-Date: 2020-06-25 11:44-0500\n"
|
||||
"PO-Revision-Date: 2018-07-27 11:55-0700\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
|
@ -291,6 +291,7 @@ msgstr ""
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -298,7 +299,7 @@ msgstr ""
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr ""
|
||||
|
||||
|
@ -572,6 +573,10 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr ""
|
||||
|
@ -817,10 +822,6 @@ msgstr ""
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -962,7 +963,7 @@ msgstr ""
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
|
@ -1425,6 +1426,10 @@ msgstr ""
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1611,6 +1616,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1652,6 +1658,26 @@ msgstr ""
|
|||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
|
@ -1700,11 +1726,11 @@ msgstr ""
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1785,10 +1811,6 @@ msgstr ""
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
@ -1814,10 +1836,6 @@ msgstr ""
|
|||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1893,7 +1911,7 @@ msgstr ""
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2247,10 +2265,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2435,14 +2449,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr ""
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr ""
|
||||
|
@ -2619,10 +2625,6 @@ msgstr ""
|
|||
msgid "must raise an object"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr ""
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr ""
|
||||
|
@ -3059,6 +3061,10 @@ msgstr ""
|
|||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
|
@ -3212,6 +3218,10 @@ msgstr ""
|
|||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
|
|
|
@ -7,11 +7,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 08:56-0500\n"
|
||||
"POT-Creation-Date: 2020-06-25 11:44-0500\n"
|
||||
"PO-Revision-Date: 2020-03-30 22:11+0000\n"
|
||||
"Last-Translator: Tannewt <devnull@unpythonic.net>\n"
|
||||
"Language-Team: English <https://later.unpythonic.net/projects/circuitpython/"
|
||||
"circuitpython-master/en_X@pirate/>\n"
|
||||
"Language: en_x_pirate\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -298,6 +296,7 @@ msgstr ""
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -305,7 +304,7 @@ msgstr ""
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr ""
|
||||
|
||||
|
@ -581,6 +580,10 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr ""
|
||||
|
@ -826,10 +829,6 @@ msgstr ""
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -971,7 +970,7 @@ msgstr "Belay that! Invalid pin for starboard-side channel"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
|
@ -1434,6 +1433,10 @@ msgstr ""
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1620,6 +1623,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1661,6 +1665,26 @@ msgstr ""
|
|||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
msgstr "Blimey! Yer code filename has two extensions\n"
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer cannot be deinitialized once mode is set to RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer is not currently running"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.mode cannot be changed once set to WatchDogMode.RESET"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "WatchDogTimer.timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Watchdog timer expired."
|
||||
msgstr ""
|
||||
|
||||
#: py/builtinhelp.c
|
||||
#, c-format
|
||||
msgid ""
|
||||
|
@ -1709,11 +1733,11 @@ msgstr ""
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1794,10 +1818,6 @@ msgstr ""
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "pieces must be of 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr ""
|
||||
|
@ -1823,10 +1843,6 @@ msgstr ""
|
|||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "yer buffers must be of the same length"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1902,7 +1918,7 @@ msgstr ""
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
|
@ -2256,10 +2272,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2444,14 +2456,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "Belay that! I2C peripheral be invalid"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "Arr! SPI peripheral be invalid"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr ""
|
||||
|
@ -2628,10 +2632,6 @@ msgstr ""
|
|||
msgid "must raise an object"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr ""
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr ""
|
||||
|
@ -3068,6 +3068,10 @@ msgstr ""
|
|||
msgid "time.struct_time() takes a 9-sequence"
|
||||
msgstr ""
|
||||
|
||||
#: ports/nrf/common-hal/watchdog/WatchDogTimer.c
|
||||
msgid "timeout duration exceeded the maximum supported value"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/busio/UART.c
|
||||
msgid "timeout must be 0.0-100.0 seconds"
|
||||
msgstr ""
|
||||
|
@ -3221,6 +3225,10 @@ msgstr ""
|
|||
msgid "value_count must be > 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/watchdog/WatchDogTimer.c
|
||||
msgid "watchdog timeout must be greater than 0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_bleio/Adapter.c
|
||||
msgid "window must be <= interval"
|
||||
msgstr ""
|
||||
|
@ -3283,3 +3291,15 @@ msgstr ""
|
|||
|
||||
#~ msgid "Invalid clock pin"
|
||||
#~ msgstr "Avast! Clock pin be invalid"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "pieces must be of 8"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "yer buffers must be of the same length"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "Belay that! I2C peripheral be invalid"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "Arr! SPI peripheral be invalid"
|
||||
|
|
339
locale/es.po
339
locale/es.po
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2020-06-22 10:35+0000\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2020-06-29 13:13+0000\n"
|
||||
"Last-Translator: Alvaro Figueroa <alvaro@greencore.co.cr>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: es\n"
|
||||
|
@ -67,6 +67,10 @@ msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
|||
msgstr ""
|
||||
"%d pines de dirección y %d pines rgb indican una altura de %d, no de %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q está siendo utilizado"
|
||||
|
@ -94,6 +98,10 @@ msgstr "%q debe ser >= 1"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr "%q debe ser una tupla de longitud 2"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q debe ser un int"
|
||||
|
@ -302,6 +310,7 @@ msgstr ""
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Todos los timers para este pin están siendo utilizados"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -309,7 +318,7 @@ msgstr "Todos los timers para este pin están siendo utilizados"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Todos los timers en uso"
|
||||
|
||||
|
@ -348,7 +357,7 @@ msgstr "Array debe contener media palabra (type 'H')"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Valores del array deben ser bytes individuales."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr "Como máximo %d %q se puede especificar (no %d)"
|
||||
|
||||
|
@ -429,6 +438,11 @@ msgstr "El buffer es muy pequeño"
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr "La longitud del buffer %d es muy grande. Debe ser menor a %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Buffer debe ser de longitud 1 como minimo"
|
||||
|
@ -440,7 +454,7 @@ msgstr "Buffer demasiado grande e incapaz de asignar"
|
|||
#: shared-bindings/_bleio/PacketBuffer.c
|
||||
#, c-format
|
||||
msgid "Buffer too short by %d bytes"
|
||||
msgstr ""
|
||||
msgstr "Búfer muy corto por %d bytes"
|
||||
|
||||
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c
|
||||
#: ports/nrf/common-hal/displayio/ParallelBus.c
|
||||
|
@ -589,6 +603,14 @@ msgstr "Archivo .mpy corrupto"
|
|||
msgid "Corrupt raw code"
|
||||
msgstr "Código crudo corrupto"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr "No se pudo inicializar el GNSS"
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "No se puede inicializar la UART"
|
||||
|
@ -623,7 +645,7 @@ msgstr "No se pudo iniciar la interrupción, RX ocupado"
|
|||
|
||||
#: shared-module/audiomp3/MP3Decoder.c
|
||||
msgid "Couldn't allocate decoder"
|
||||
msgstr ""
|
||||
msgstr "No se pudo encontrar el decodificador"
|
||||
|
||||
#: shared-module/audiocore/WaveFile.c shared-module/audiomixer/Mixer.c
|
||||
#: shared-module/audiomp3/MP3Decoder.c
|
||||
|
@ -632,7 +654,7 @@ msgstr "No se pudo asignar el primer buffer"
|
|||
|
||||
#: shared-module/audiomp3/MP3Decoder.c
|
||||
msgid "Couldn't allocate input buffer"
|
||||
msgstr ""
|
||||
msgstr "No se pudo encontrar el búfer de entrada"
|
||||
|
||||
#: shared-module/audiocore/WaveFile.c shared-module/audiomixer/Mixer.c
|
||||
#: shared-module/audiomp3/MP3Decoder.c
|
||||
|
@ -697,7 +719,7 @@ msgstr "Modo Drive no se usa cuando la dirección es input."
|
|||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "ECB only operates on 16 bytes at a time"
|
||||
msgstr ""
|
||||
msgstr "ECB solo opera sobre 16 bytes a la vez"
|
||||
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/ps2io/Ps2.c
|
||||
|
@ -710,7 +732,8 @@ msgstr "El canal EXTINT ya está siendo utilizado"
|
|||
msgid "Error in regex"
|
||||
msgstr "Error en regex"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -835,10 +858,6 @@ msgstr "Operación I/O en archivo cerrado"
|
|||
msgid "I2C Init Error"
|
||||
msgstr "Error de inicio de I2C"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "operación I2C no soportada"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -877,6 +896,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr "Error interno #%d"
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -954,7 +977,7 @@ msgstr "Frecuencia suministrada no válida"
|
|||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Invalid memory access."
|
||||
msgstr ""
|
||||
msgstr "Acceso a memoria no válido"
|
||||
|
||||
#: shared-bindings/bitbangio/SPI.c shared-bindings/busio/SPI.c
|
||||
msgid "Invalid number of bits"
|
||||
|
@ -982,9 +1005,10 @@ msgstr "Pin inválido para canal derecho"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1013,7 +1037,7 @@ msgstr ""
|
|||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "Invalid voice"
|
||||
msgstr ""
|
||||
msgstr "Voz inválida"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "Invalid voice count"
|
||||
|
@ -1025,11 +1049,11 @@ msgstr "Archivo wave inválido"
|
|||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "Invalid word/bit length"
|
||||
msgstr ""
|
||||
msgstr "Tamaño no válido de palabra/bit"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "Key must be 16, 24, or 32 bytes long"
|
||||
msgstr ""
|
||||
msgstr "La llave debe tener 16, 24 o 32 bytes de longitud"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "LHS of keyword arg must be an id"
|
||||
|
@ -1162,7 +1186,7 @@ msgstr "Sin soporte de hardware en pin"
|
|||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "No key was specified"
|
||||
msgstr ""
|
||||
msgstr "No se especificó ninguna llave"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "No long integer support"
|
||||
|
@ -1251,7 +1275,7 @@ msgstr ""
|
|||
#: ports/mimxrt10xx/common-hal/displayio/ParallelBus.c
|
||||
#: ports/stm/common-hal/displayio/ParallelBus.c
|
||||
msgid "ParallelBus not yet supported"
|
||||
msgstr ""
|
||||
msgstr "ParallelBus no soportado aún"
|
||||
|
||||
#: py/moduerrno.c
|
||||
msgid "Permission denied"
|
||||
|
@ -1284,6 +1308,8 @@ msgid ""
|
|||
"bytes. If this cannot be avoided, pass allow_inefficient=True to the "
|
||||
"constructor"
|
||||
msgstr ""
|
||||
"El pinout utiliza %d bytes por elemento, lo que consume más del ideal de %d "
|
||||
"bytes. Si esto no se puede evitar, pase allow_inefficient=True al constructor"
|
||||
|
||||
#: py/builtinhelp.c
|
||||
msgid "Plus any modules on the filesystem\n"
|
||||
|
@ -1312,23 +1338,23 @@ msgstr "Pull no se usa cuando la dirección es output."
|
|||
|
||||
#: ports/stm/common-hal/pulseio/PulseIn.c
|
||||
msgid "PulseIn not supported on this chip"
|
||||
msgstr ""
|
||||
msgstr "PulseIn no es compatible con este chip"
|
||||
|
||||
#: ports/stm/common-hal/pulseio/PulseOut.c
|
||||
msgid "PulseOut not supported on this chip"
|
||||
msgstr ""
|
||||
msgstr "PulseOut no es compatible con este chip"
|
||||
|
||||
#: ports/stm/common-hal/os/__init__.c
|
||||
msgid "RNG DeInit Error"
|
||||
msgstr ""
|
||||
msgstr "Error de desinicializado del RNG"
|
||||
|
||||
#: ports/stm/common-hal/os/__init__.c
|
||||
msgid "RNG Init Error"
|
||||
msgstr ""
|
||||
msgstr "Error de inicialización de RNG"
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c
|
||||
msgid "RS485 inversion specified when not in RS485 mode"
|
||||
msgstr ""
|
||||
msgstr "Se especifica inversión de RS485 sin estar en modo RS485"
|
||||
|
||||
#: ports/cxd56/common-hal/rtc/RTC.c ports/mimxrt10xx/common-hal/rtc/RTC.c
|
||||
#: ports/nrf/common-hal/rtc/RTC.c
|
||||
|
@ -1342,11 +1368,11 @@ msgstr "RTC no soportado en esta placa"
|
|||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
#: ports/nrf/common-hal/busio/UART.c ports/stm/common-hal/busio/UART.c
|
||||
msgid "RTS/CTS/RS485 Not yet supported on this device"
|
||||
msgstr ""
|
||||
msgstr "Sin capacidad de RTS/CTS/RS485 para este dispositivo"
|
||||
|
||||
#: ports/stm/common-hal/os/__init__.c
|
||||
msgid "Random number generation error"
|
||||
msgstr ""
|
||||
msgstr "Error de generación de números aleatorios"
|
||||
|
||||
#: shared-bindings/pulseio/PulseIn.c
|
||||
msgid "Read-only"
|
||||
|
@ -1357,17 +1383,16 @@ msgid "Read-only filesystem"
|
|||
msgstr "Sistema de archivos de solo-Lectura"
|
||||
|
||||
#: shared-module/displayio/Bitmap.c
|
||||
#, fuzzy
|
||||
msgid "Read-only object"
|
||||
msgstr "Solo-lectura"
|
||||
msgstr "Objeto de solo-lectura"
|
||||
|
||||
#: shared-bindings/displayio/EPaperDisplay.c
|
||||
msgid "Refresh too soon"
|
||||
msgstr ""
|
||||
msgstr "Actualizando demasiado pronto"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "Requested AES mode is unsupported"
|
||||
msgstr ""
|
||||
msgstr "El modo AES solicitado no es compatible"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
msgid "Right channel unsupported"
|
||||
|
@ -1385,6 +1410,10 @@ msgstr "Ejecutando en modo seguro! La auto-recarga esta deshabilitada.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Ejecutando en modo seguro! No se esta ejecutando el código guardado.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1392,11 +1421,11 @@ msgstr "SDA o SCL necesitan una pull up"
|
|||
|
||||
#: ports/stm/common-hal/busio/SPI.c
|
||||
msgid "SPI Init Error"
|
||||
msgstr ""
|
||||
msgstr "Error de inicio de SPI"
|
||||
|
||||
#: ports/stm/common-hal/busio/SPI.c
|
||||
msgid "SPI Re-initialization error"
|
||||
msgstr ""
|
||||
msgstr "Error de reinicialización de SPI"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "Sample rate must be positive"
|
||||
|
@ -1409,15 +1438,15 @@ msgstr "Frecuencia de muestreo demasiado alta. Debe ser menor a %d"
|
|||
|
||||
#: ports/nrf/common-hal/_bleio/Adapter.c
|
||||
msgid "Scan already in progess. Stop with stop_scan."
|
||||
msgstr ""
|
||||
msgstr "Escaneo en progreso. Use stop_scan para detener."
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c
|
||||
msgid "Selected CTS pin not valid"
|
||||
msgstr ""
|
||||
msgstr "Pin CTS seleccionado no válido"
|
||||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c
|
||||
msgid "Selected RTS pin not valid"
|
||||
msgstr ""
|
||||
msgstr "Pin RTS seleccionado no válido"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -1435,7 +1464,7 @@ msgstr "Rebanadas no soportadas"
|
|||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
msgid "Source and destination buffers must be the same length"
|
||||
msgstr ""
|
||||
msgstr "Los búferes de fuente y destino deben ser del mismo tamaño"
|
||||
|
||||
#: extmod/modure.c
|
||||
msgid "Splitting with sub-captures"
|
||||
|
@ -1451,11 +1480,15 @@ msgstr "A Stream le falta el método readinto() o write()."
|
|||
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/stm/common-hal/busio/UART.c
|
||||
msgid "Supply at least one UART pin"
|
||||
msgstr "Suministre al menos un pin UART"
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
msgstr "Lectura de temperatura expirada"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
|
@ -1468,6 +1501,8 @@ msgid ""
|
|||
"The `microcontroller` module was used to boot into safe mode. Press reset to "
|
||||
"exit safe mode.\n"
|
||||
msgstr ""
|
||||
"El módulo de `microcontroller` fue utilizado para bootear en modo seguro. "
|
||||
"Presione reset para salir del modo seguro.\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid ""
|
||||
|
@ -1475,6 +1510,11 @@ msgid ""
|
|||
"enough power for the whole circuit and press reset (after ejecting "
|
||||
"CIRCUITPY).\n"
|
||||
msgstr ""
|
||||
"La alimentación de la microntroladora bajó. Asegúrate que tu fuente de "
|
||||
"poder\n"
|
||||
"pueda suplir suficiente energía para todo el circuito y presione reset "
|
||||
"(luego de\n"
|
||||
"expulsar CIRCUITPY)\n"
|
||||
|
||||
#: shared-module/audiomixer/MixerVoice.c
|
||||
msgid "The sample's bits_per_sample does not match the mixer's"
|
||||
|
@ -1498,11 +1538,11 @@ msgstr "La altura del Tile debe dividir exacto la altura del bitmap"
|
|||
|
||||
#: shared-bindings/displayio/TileGrid.c shared-module/displayio/TileGrid.c
|
||||
msgid "Tile index out of bounds"
|
||||
msgstr ""
|
||||
msgstr "Índice de mosaico fuera de límites"
|
||||
|
||||
#: shared-bindings/displayio/TileGrid.c
|
||||
msgid "Tile value out of bounds"
|
||||
msgstr ""
|
||||
msgstr "Valor de mosaico fuera de límites"
|
||||
|
||||
#: shared-bindings/displayio/TileGrid.c
|
||||
msgid "Tile width must exactly divide bitmap width"
|
||||
|
@ -1512,6 +1552,8 @@ msgstr "Ancho del Tile debe dividir exactamente el ancho de mapa de bits"
|
|||
#, c-format
|
||||
msgid "Timeout is too long: Maximum timeout length is %d seconds"
|
||||
msgstr ""
|
||||
"Tiempo de espera demasiado largo: El tiempo máximo de espera es de %d "
|
||||
"segundos"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
msgid "Too many channels in sample."
|
||||
|
@ -1528,6 +1570,7 @@ msgstr "Muchos displays"
|
|||
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
|
||||
msgid "Total data to write is larger than outgoing_packet_length"
|
||||
msgstr ""
|
||||
"Los datos totales a escribir son más grandes que outgoing_packet_length"
|
||||
|
||||
#: py/obj.c
|
||||
msgid "Traceback (most recent call last):\n"
|
||||
|
@ -1539,23 +1582,23 @@ msgstr "Argumento tuple o struct_time requerido"
|
|||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART Buffer allocation error"
|
||||
msgstr ""
|
||||
msgstr "No se pudo encontrar el búfer para UART"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART De-init error"
|
||||
msgstr ""
|
||||
msgstr "Error de desinicialización de UARL"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART Init Error"
|
||||
msgstr ""
|
||||
msgstr "Error de inicialización de UARL"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART Re-init error"
|
||||
msgstr ""
|
||||
msgstr "Error de reinicialización de UARL"
|
||||
|
||||
#: ports/stm/common-hal/busio/UART.c
|
||||
msgid "UART write error"
|
||||
msgstr ""
|
||||
msgstr "Error de escritura UART"
|
||||
|
||||
#: shared-module/usb_hid/Device.c
|
||||
msgid "USB Busy"
|
||||
|
@ -1567,7 +1610,7 @@ msgstr "Error USB"
|
|||
|
||||
#: shared-bindings/_bleio/UUID.c
|
||||
msgid "UUID integer value must be 0-0xffff"
|
||||
msgstr ""
|
||||
msgstr "El valor entero del UUID debe ser 0-0xffff"
|
||||
|
||||
#: shared-bindings/_bleio/UUID.c
|
||||
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
|
||||
|
@ -1585,7 +1628,7 @@ msgstr "No se pudieron asignar buffers para la conversión con signo"
|
|||
#: shared-module/displayio/I2CDisplay.c
|
||||
#, c-format
|
||||
msgid "Unable to find I2C Display at %x"
|
||||
msgstr ""
|
||||
msgstr "No se puede encontrar la pantalla I2C en %x"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
|
@ -1615,17 +1658,17 @@ msgstr ""
|
|||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "Unknown reason."
|
||||
msgstr ""
|
||||
msgstr "Razón desconocida."
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown security error: 0x%04x"
|
||||
msgstr ""
|
||||
msgstr "Error de seguridad desconocido: 0x%04x"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/__init__.c
|
||||
#, c-format
|
||||
msgid "Unknown soft device error: %04x"
|
||||
msgstr ""
|
||||
msgstr "Error suave desconocido en dispositivo: %04x"
|
||||
|
||||
#: shared-bindings/_pixelbuf/PixelBuf.c
|
||||
#, c-format
|
||||
|
@ -1637,15 +1680,17 @@ msgid ""
|
|||
"Unspecified issue. Can be that the pairing prompt on the other device was "
|
||||
"declined or ignored."
|
||||
msgstr ""
|
||||
"Problema no especificado. Puede ser que la señal de emparejamiento del otro "
|
||||
"dispositivo fue declinada o ignorada."
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Baudrate no soportado"
|
||||
|
||||
#: shared-module/displayio/display_core.c
|
||||
#, fuzzy
|
||||
msgid "Unsupported display bus type"
|
||||
msgstr "tipo de bitmap no soportado"
|
||||
msgstr "Sin capacidad de bus tipo display"
|
||||
|
||||
#: shared-module/audiocore/WaveFile.c
|
||||
msgid "Unsupported format"
|
||||
|
@ -1662,12 +1707,12 @@ msgstr "valor pull no soportado."
|
|||
#: ports/nrf/common-hal/_bleio/Characteristic.c
|
||||
#: ports/nrf/common-hal/_bleio/Descriptor.c
|
||||
msgid "Value length != required fixed length"
|
||||
msgstr ""
|
||||
msgstr "Tamaño del valor != del tamaño fijo requerido"
|
||||
|
||||
#: ports/nrf/common-hal/_bleio/Characteristic.c
|
||||
#: ports/nrf/common-hal/_bleio/Descriptor.c
|
||||
msgid "Value length > max_length"
|
||||
msgstr ""
|
||||
msgstr "Tamaño de valor > max_length"
|
||||
|
||||
#: py/emitnative.c
|
||||
msgid "Viper functions don't currently support more than 4 arguments"
|
||||
|
@ -1675,7 +1720,7 @@ msgstr "funciones Viper actualmente no soportan más de 4 argumentos."
|
|||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Voltage read timed out"
|
||||
msgstr ""
|
||||
msgstr "Tiempo de espera agotado para lectura de voltaje"
|
||||
|
||||
#: main.c
|
||||
msgid "WARNING: Your code filename has two extensions\n"
|
||||
|
@ -1723,7 +1768,7 @@ msgstr ""
|
|||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "You are in safe mode: something unanticipated happened.\n"
|
||||
msgstr ""
|
||||
msgstr "Estás en modo seguro: algo inesperado ha sucedido.\n"
|
||||
|
||||
#: supervisor/shared/safe_mode.c
|
||||
msgid "You requested starting safe mode by "
|
||||
|
@ -1755,17 +1800,17 @@ msgstr "se llamó abort()"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "la dirección %08x no esta alineada a %d bytes"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "address fuera de límites"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "addresses esta vacío"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "arctan2 is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
msgstr "arctan2 se encuentra implementado solo para escalares y ndarrays"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "arg is an empty sequence"
|
||||
|
@ -1773,7 +1818,7 @@ msgstr "argumento es una secuencia vacía"
|
|||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "argsort argument must be an ndarray"
|
||||
msgstr ""
|
||||
msgstr "El argumento para argsort debe ser un ndarray"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "argument has wrong type"
|
||||
|
@ -1790,7 +1835,7 @@ msgstr "argumento deberia ser un '%q' no un '%q'"
|
|||
|
||||
#: extmod/ulab/code/linalg.c
|
||||
msgid "arguments must be ndarrays"
|
||||
msgstr ""
|
||||
msgstr "argumentos deben ser ndarrays"
|
||||
|
||||
#: py/objarray.c shared-bindings/nvm/ByteArray.c
|
||||
msgid "array/bytes required on right side"
|
||||
|
@ -1798,7 +1843,7 @@ msgstr "array/bytes requeridos en el lado derecho"
|
|||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "attempt to get argmin/argmax of an empty sequence"
|
||||
msgstr ""
|
||||
msgstr "se trató de traer argmin/argmax de una secuencia vacía"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "attributes not supported yet"
|
||||
|
@ -1806,15 +1851,15 @@ msgstr "atributos aún no soportados"
|
|||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "axis must be -1, 0, None, or 1"
|
||||
msgstr ""
|
||||
msgstr "eje debe ser -1, 0, None o 1"
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "axis must be -1, 0, or 1"
|
||||
msgstr ""
|
||||
msgstr "eje debe ser -1, 0, o 1"
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "axis must be None, 0, or 1"
|
||||
msgstr ""
|
||||
msgstr "eje debe ser None, 0, o 1"
|
||||
|
||||
#: py/builtinevex.c
|
||||
msgid "bad compile mode"
|
||||
|
@ -1840,18 +1885,13 @@ msgstr "operacion binaria %q no implementada"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits deben ser 7, 8 ó 9"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bits debe ser 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample debe ser 8 ó 16"
|
||||
|
||||
#: py/emitinlinethumb.c
|
||||
#, fuzzy
|
||||
msgid "branch not in range"
|
||||
msgstr "El argumento de chr() no esta en el rango(256)"
|
||||
msgstr "la rama no está dentro del rango"
|
||||
|
||||
#: shared-bindings/audiocore/RawSample.c
|
||||
msgid "buffer must be a bytes-like object"
|
||||
|
@ -1870,10 +1910,6 @@ msgstr "Las secciones del buffer necesitan tener longitud igual"
|
|||
msgid "buffer too small"
|
||||
msgstr "buffer demasiado pequeño"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "los buffers deben de tener la misma longitud"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "los botones necesitan ser digitalio.DigitalInOut"
|
||||
|
@ -1884,7 +1920,7 @@ msgstr "codigo byte no implementado"
|
|||
|
||||
#: shared-bindings/_pixelbuf/PixelBuf.c
|
||||
msgid "byteorder is not a string"
|
||||
msgstr ""
|
||||
msgstr "byteorder no es una cadena"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
msgid "bytes > 8 bits not supported"
|
||||
|
@ -1949,7 +1985,7 @@ msgstr "no se puede convertir el objeto '%q' a %q implícitamente"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "no se puede convertir Nan a int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "no se puede convertir address a int"
|
||||
|
||||
|
@ -2018,6 +2054,10 @@ msgid "can't send non-None value to a just-started generator"
|
|||
msgstr ""
|
||||
"no se puede enviar un valor que no sea None a un generador recién iniciado"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "no se puede asignar el atributo"
|
||||
|
@ -2066,7 +2106,7 @@ msgstr "no se puedo realizar importación relativa"
|
|||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "cannot reshape array (incompatible input/output shape)"
|
||||
msgstr ""
|
||||
msgstr "no se puede reformar el arreglo (forma de entrada/salida incompatible)"
|
||||
|
||||
#: py/emitnative.c
|
||||
msgid "casting"
|
||||
|
@ -2086,7 +2126,7 @@ msgstr "El argumento de chr() no esta en el rango(256)"
|
|||
|
||||
#: shared-module/vectorio/Circle.c
|
||||
msgid "circle can only be registered in one parent"
|
||||
msgstr ""
|
||||
msgstr "circle solo puede ser registrado con un pariente"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c
|
||||
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
|
||||
|
@ -2094,7 +2134,7 @@ msgstr "color buffer debe ser 3 bytes (RGB) ó 4 bytes (RGB + pad byte)"
|
|||
|
||||
#: shared-bindings/displayio/Palette.c
|
||||
msgid "color buffer must be a buffer, tuple, list, or int"
|
||||
msgstr ""
|
||||
msgstr "el búfer de color debe ser un búfer, una tupla, una lista o un entero"
|
||||
|
||||
#: shared-bindings/displayio/Palette.c
|
||||
msgid "color buffer must be a bytearray or array of type 'b' or 'B'"
|
||||
|
@ -2148,13 +2188,17 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr "los datos deben permitir iteración"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be of equal length"
|
||||
msgstr ""
|
||||
msgstr "los datos deben ser de igual tamaño"
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "ddof must be smaller than length of data set"
|
||||
|
@ -2292,28 +2336,24 @@ msgstr "sistema de archivos debe proporcionar método de montaje"
|
|||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be a callable"
|
||||
msgstr ""
|
||||
msgstr "se debe poder llamar al primer argumento"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "first argument must be a function"
|
||||
msgstr ""
|
||||
msgstr "el primer argumento debe ser una función"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "first argument must be an iterable"
|
||||
msgstr ""
|
||||
msgstr "el primer argumento debe permitir iteración"
|
||||
|
||||
#: extmod/ulab/code/vectorise.c
|
||||
msgid "first argument must be an ndarray"
|
||||
msgstr ""
|
||||
msgstr "el primer argumento debe ser ndarray"
|
||||
|
||||
#: py/objtype.c
|
||||
msgid "first argument to super() must be type"
|
||||
msgstr "primer argumento para super() debe ser de tipo"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "firstbit debe ser MSB"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2324,7 +2364,7 @@ msgstr ""
|
|||
|
||||
#: py/objint.c
|
||||
msgid "float too big"
|
||||
msgstr ""
|
||||
msgstr "punto flotante muy grande"
|
||||
|
||||
#: shared-bindings/_stage/Text.c
|
||||
msgid "font must be 2048 bytes long"
|
||||
|
@ -2357,7 +2397,7 @@ msgstr ""
|
|||
|
||||
#: extmod/ulab/code/compare.c
|
||||
msgid "function is implemented for scalars and ndarrays only"
|
||||
msgstr ""
|
||||
msgstr "la función está implementada solo para escalares y ndarrays"
|
||||
|
||||
#: py/argcheck.c
|
||||
#, c-format
|
||||
|
@ -2416,7 +2456,7 @@ msgstr "formato incompleto"
|
|||
|
||||
#: py/objstr.c
|
||||
msgid "incomplete format key"
|
||||
msgstr ""
|
||||
msgstr "formato de llave incompleto"
|
||||
|
||||
#: extmod/modubinascii.c
|
||||
msgid "incorrect padding"
|
||||
|
@ -2424,7 +2464,7 @@ msgstr "relleno (padding) incorrecto"
|
|||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "index is out of bounds"
|
||||
msgstr ""
|
||||
msgstr "el índice está fuera de límites"
|
||||
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
#: ports/cxd56/common-hal/pulseio/PulseIn.c
|
||||
|
@ -2439,11 +2479,11 @@ msgstr "indices deben ser enteros"
|
|||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "indices must be integers, slices, or Boolean lists"
|
||||
msgstr ""
|
||||
msgstr "los índices deben ser enteros, particiones o listas de booleanos"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "initial values must be iterable"
|
||||
msgstr ""
|
||||
msgstr "los valores iniciales deben permitir iteración"
|
||||
|
||||
#: py/compile.c
|
||||
msgid "inline assembler must be a function"
|
||||
|
@ -2451,35 +2491,35 @@ msgstr "ensamblador en línea debe ser una función"
|
|||
|
||||
#: extmod/ulab/code/create.c
|
||||
msgid "input argument must be an integer or a 2-tuple"
|
||||
msgstr ""
|
||||
msgstr "el argumento de entrada debe ser un entero o una tupla de par"
|
||||
|
||||
#: extmod/ulab/code/fft.c
|
||||
msgid "input array length must be power of 2"
|
||||
msgstr ""
|
||||
msgstr "el tamaño del arreglo de entrada debe ser potencia de 2"
|
||||
|
||||
#: extmod/ulab/code/poly.c
|
||||
msgid "input data must be an iterable"
|
||||
msgstr ""
|
||||
msgstr "los datos de entrada deben permitir iteración"
|
||||
|
||||
#: extmod/ulab/code/linalg.c
|
||||
msgid "input matrix is asymmetric"
|
||||
msgstr ""
|
||||
msgstr "la matriz de entrada es asimétrica"
|
||||
|
||||
#: extmod/ulab/code/linalg.c
|
||||
msgid "input matrix is singular"
|
||||
msgstr ""
|
||||
msgstr "la matriz de entrada es singular"
|
||||
|
||||
#: extmod/ulab/code/linalg.c
|
||||
msgid "input must be square matrix"
|
||||
msgstr ""
|
||||
msgstr "la entrada debe ser una matriz cuadrada"
|
||||
|
||||
#: extmod/ulab/code/numerical.c
|
||||
msgid "input must be tuple, list, range, or ndarray"
|
||||
msgstr ""
|
||||
msgstr "la entrada debe ser una tupla, lista, rango o ndarray"
|
||||
|
||||
#: extmod/ulab/code/poly.c
|
||||
msgid "input vectors must be of equal length"
|
||||
msgstr ""
|
||||
msgstr "los vectores de entrada deben ser de igual tamaño"
|
||||
|
||||
#: py/parsenum.c
|
||||
msgid "int() arg 2 must be >= 2 and <= 36"
|
||||
|
@ -2496,15 +2536,7 @@ msgstr ""
|
|||
#: shared-bindings/_bleio/Adapter.c
|
||||
#, c-format
|
||||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "periférico I2C inválido"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "periférico SPI inválido"
|
||||
msgstr "el intervalo debe ser der rango %s-%s"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
|
@ -2536,7 +2568,7 @@ msgstr "decorador de micropython inválido"
|
|||
|
||||
#: shared-bindings/random/__init__.c
|
||||
msgid "invalid step"
|
||||
msgstr ""
|
||||
msgstr "paso inválido"
|
||||
|
||||
#: py/compile.c py/parse.c
|
||||
msgid "invalid syntax"
|
||||
|
@ -2565,11 +2597,11 @@ msgstr "issubclass() arg 2 debe ser una clase o tuple de clases"
|
|||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "iterables are not of the same length"
|
||||
msgstr ""
|
||||
msgstr "los iterables no son del mismo tamaño"
|
||||
|
||||
#: extmod/ulab/code/linalg.c
|
||||
msgid "iterations did not converge"
|
||||
msgstr ""
|
||||
msgstr "las iteraciones no convergen"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "join expects a list of str/bytes objects consistent with self object"
|
||||
|
@ -2600,7 +2632,7 @@ msgstr "argumento length no permitido para este tipo"
|
|||
|
||||
#: shared-bindings/audiomixer/MixerVoice.c
|
||||
msgid "level must be between 0 and 1"
|
||||
msgstr ""
|
||||
msgstr "el nivel debe ser entre 0 y 1"
|
||||
|
||||
#: py/objarray.c
|
||||
msgid "lhs and rhs should be compatible"
|
||||
|
@ -2685,10 +2717,6 @@ msgstr "herencia multiple no soportada"
|
|||
msgid "must raise an object"
|
||||
msgstr "debe hacer un raise de un objeto"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "se deben de especificar sck/mosi/miso"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "debe utilizar argumento de palabra clave para la función clave"
|
||||
|
@ -2726,6 +2754,10 @@ msgstr "potencia negativa sin float support"
|
|||
msgid "negative shift count"
|
||||
msgstr "cuenta de corrimientos negativo"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "exception no activa para reraise"
|
||||
|
@ -2747,6 +2779,10 @@ msgstr "ningún módulo se llama '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "no hay tal atributo"
|
||||
|
@ -3042,6 +3078,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "la longitud de sleep no puede ser negativa"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "slice step no puede ser cero"
|
||||
|
@ -3058,6 +3098,18 @@ msgstr "reinicio suave\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "índices inicio/final"
|
||||
|
@ -3144,6 +3196,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "tiempo muerto debe ser >= 0.0"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "timestamp fuera de rango para plataform time_t"
|
||||
|
@ -3343,6 +3403,18 @@ msgstr "address fuera de límites"
|
|||
msgid "zero step"
|
||||
msgstr "paso cero"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "AP required"
|
||||
#~ msgstr "AP requerido"
|
||||
|
||||
|
@ -3525,6 +3597,9 @@ msgstr "paso cero"
|
|||
#~ msgid "GPIO16 does not support pull up."
|
||||
#~ msgstr "GPIO16 no soporta pull up."
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "operación I2C no soportada"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Pin bit clock inválido"
|
||||
|
||||
|
@ -3694,12 +3769,18 @@ msgstr "paso cero"
|
|||
#~ msgid "bad GATT role"
|
||||
#~ msgstr "mal GATT role"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits debe ser 8"
|
||||
|
||||
#~ msgid "buf is too small. need %d bytes"
|
||||
#~ msgstr "buf es demasiado pequeño. necesita %d bytes"
|
||||
|
||||
#~ msgid "buffer too long"
|
||||
#~ msgstr "buffer demasiado largo"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "los buffers deben de tener la misma longitud"
|
||||
|
||||
#~ msgid "byteorder is not an instance of ByteOrder (got a %s)"
|
||||
#~ msgstr "byteorder no es instancia de ByteOrder (encontarmos un %s)"
|
||||
|
||||
|
@ -3736,6 +3817,9 @@ msgstr "paso cero"
|
|||
#~ msgid "ffi_prep_closure_loc"
|
||||
#~ msgstr "ffi_prep_closure_loc"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "firstbit debe ser MSB"
|
||||
|
||||
#~ msgid "flash location must be below 1MByte"
|
||||
#~ msgstr "la ubicación de la flash debe estar debajo de 1MByte"
|
||||
|
||||
|
@ -3748,6 +3832,12 @@ msgstr "paso cero"
|
|||
#~ msgid "interval not in range 0.0020 to 10.24"
|
||||
#~ msgstr "El intervalo está fuera del rango de 0.0020 a 10.24"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "periférico I2C inválido"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "periférico SPI inválido"
|
||||
|
||||
#~ msgid "invalid alarm"
|
||||
#~ msgstr "alarma inválida"
|
||||
|
||||
|
@ -3770,6 +3860,9 @@ msgstr "paso cero"
|
|||
#~ msgstr ""
|
||||
#~ "falló la asignación de memoria, asignando %u bytes para código nativo"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "se deben de especificar sck/mosi/miso"
|
||||
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "name debe de ser un string"
|
||||
|
||||
|
|
156
locale/fil.po
156
locale/fil.po
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
|
||||
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
|
||||
"Language-Team: fil\n"
|
||||
|
@ -58,6 +58,10 @@ msgstr "%%c nangangailangan ng int o char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q ay ginagamit"
|
||||
|
@ -86,6 +90,10 @@ msgstr "aarehas na haba dapat ang buffer slices"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
#, fuzzy
|
||||
msgid "%q should be an int"
|
||||
|
@ -295,6 +303,7 @@ msgstr "Lahat ng sync event channels ay ginagamit"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Lahat ng timers para sa pin na ito ay ginagamit"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -302,7 +311,7 @@ msgstr "Lahat ng timers para sa pin na ito ay ginagamit"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Lahat ng timer ginagamit"
|
||||
|
||||
|
@ -341,7 +350,7 @@ msgstr "May halfwords (type 'H') dapat ang array"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Array values ay dapat single bytes."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -422,6 +431,11 @@ msgstr ""
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Buffer dapat ay hindi baba sa 1 na haba"
|
||||
|
@ -581,6 +595,14 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Hindi ma-initialize ang UART"
|
||||
|
@ -705,7 +727,8 @@ msgstr "Ginagamit na ang EXTINT channel"
|
|||
msgid "Error in regex"
|
||||
msgstr "May pagkakamali sa REGEX"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -831,10 +854,6 @@ msgstr "I/O operasyon sa saradong file"
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "Hindi supportado ang operasyong I2C"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -873,6 +892,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -978,9 +1001,10 @@ msgstr "Mali ang pin para sa kanang channel"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1380,6 +1404,10 @@ msgstr "Tumatakbo sa safe mode! Awtomatikong pag re-reload ay OFF.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Tumatakbo sa safe mode! Hindi tumatakbo ang nai-save na code.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1448,6 +1476,10 @@ msgstr "Stream kulang ng readinto() o write() method."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1635,6 +1667,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Hindi supportadong baudrate"
|
||||
|
||||
|
@ -1753,11 +1786,11 @@ msgstr "abort() tinawag"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "address %08x ay hindi pantay sa %d bytes"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "wala sa sakop ang address"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "walang laman ang address"
|
||||
|
||||
|
@ -1838,10 +1871,6 @@ msgstr "binary op %q hindi implemented"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits ay dapat 7, 8 o 9"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bits ay dapat walo (8)"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample ay dapat 8 o 16"
|
||||
|
@ -1868,10 +1897,6 @@ msgstr "aarehas na haba dapat ang buffer slices"
|
|||
msgid "buffer too small"
|
||||
msgstr "masyadong maliit ang buffer"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "ang buffers ay dapat parehas sa haba"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1948,7 +1973,7 @@ msgstr "hindi maaaring i-convert ang '%q' na bagay sa %q nang walang pahiwatig"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "hindi ma i-convert NaN sa int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "hindi ma i-convert ang address sa INT"
|
||||
|
||||
|
@ -2017,6 +2042,10 @@ msgstr "hindi mapadala ang send throw sa isang kaka umpisang generator"
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr "hindi mapadala ang non-None value sa isang kaka umpisang generator"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "hindi ma i-set ang attribute"
|
||||
|
@ -2147,6 +2176,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2312,10 +2345,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr "unang argument ng super() ay dapat type"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "firstbit ay dapat MSB"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2501,14 +2530,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "maling I2C peripheral"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "hindi wastong SPI peripheral"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "mali ang mga argumento"
|
||||
|
@ -2689,10 +2710,6 @@ msgstr "maraming inhertance hindi sinusuportahan"
|
|||
msgid "must raise an object"
|
||||
msgstr "dapat itaas ang isang object"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "dapat tukuyin lahat ng SCK/MOSI/MISO"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "dapat gumamit ng keyword argument para sa key function"
|
||||
|
@ -2730,6 +2747,10 @@ msgstr "negatibong power na walang float support"
|
|||
msgid "negative shift count"
|
||||
msgstr "negative shift count"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "walang aktibong exception para i-reraise"
|
||||
|
@ -2751,6 +2772,10 @@ msgstr "walang module na '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "walang ganoon na attribute"
|
||||
|
@ -3044,6 +3069,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "sleep length ay dapat hindi negatibo"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "slice step ay hindi puedeng 0"
|
||||
|
@ -3060,6 +3089,18 @@ msgstr "malambot na reboot\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "start/end indeks"
|
||||
|
@ -3147,6 +3188,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "bits ay dapat walo (8)"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "wala sa sakop ng timestamp ang platform time_t"
|
||||
|
@ -3346,6 +3395,18 @@ msgstr "wala sa sakop ang address"
|
|||
msgid "zero step"
|
||||
msgstr "zero step"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "AP required"
|
||||
#~ msgstr "AP kailangan"
|
||||
|
||||
|
@ -3506,6 +3567,9 @@ msgstr "zero step"
|
|||
#~ msgid "GPIO16 does not support pull up."
|
||||
#~ msgstr "Walang pull down support ang GPI016."
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "Hindi supportado ang operasyong I2C"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Mali ang bit clock pin"
|
||||
|
||||
|
@ -3647,9 +3711,15 @@ msgstr "zero step"
|
|||
#~ msgid "[addrinfo error %d]"
|
||||
#~ msgstr "[addrinfo error %d]"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits ay dapat walo (8)"
|
||||
|
||||
#~ msgid "buffer too long"
|
||||
#~ msgstr "masyadong mahaba ng buffer"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "ang buffers ay dapat parehas sa haba"
|
||||
|
||||
#~ msgid "can query only one param"
|
||||
#~ msgstr "maaaring i-query lamang ang isang param"
|
||||
|
||||
|
@ -3680,6 +3750,9 @@ msgstr "zero step"
|
|||
#~ msgid "ffi_prep_closure_loc"
|
||||
#~ msgstr "ffi_prep_closure_loc"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "firstbit ay dapat MSB"
|
||||
|
||||
#~ msgid "flash location must be below 1MByte"
|
||||
#~ msgstr "dapat na mas mababa sa 1MB ang lokasyon ng flash"
|
||||
|
||||
|
@ -3689,6 +3762,12 @@ msgstr "zero step"
|
|||
#~ msgid "impossible baudrate"
|
||||
#~ msgstr "impossibleng baudrate"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "maling I2C peripheral"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "hindi wastong SPI peripheral"
|
||||
|
||||
#~ msgid "invalid alarm"
|
||||
#~ msgstr "mali ang alarm"
|
||||
|
||||
|
@ -3711,6 +3790,9 @@ msgstr "zero step"
|
|||
#~ msgstr ""
|
||||
#~ "nabigo ang paglalaan ng memorya, naglalaan ng %u bytes para sa native code"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "dapat tukuyin lahat ng SCK/MOSI/MISO"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "ang keywords dapat strings"
|
||||
|
|
158
locale/fr.po
158
locale/fr.po
|
@ -8,11 +8,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 0.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2020-06-05 17:29+0000\n"
|
||||
"Last-Translator: aberwag <aberwag@gmail.com>\n"
|
||||
"Language-Team: French <https://later.unpythonic.net/projects/circuitpython/"
|
||||
"circuitpython-master/fr/>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
|
@ -71,6 +69,10 @@ msgstr ""
|
|||
"Les broches d'adresse %d et les broches RVB %d indiquent une hauteur de %d, "
|
||||
"pas %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q utilisé"
|
||||
|
@ -98,6 +100,10 @@ msgstr "%q doit être >=1"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr "%q doit être un tuple de longueur 2"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q doit être un entier (int)"
|
||||
|
@ -304,6 +310,7 @@ msgstr "Tous les canaux d'événements de synchro sont utilisés"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Tous les timers pour cette broche sont utilisés"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -311,7 +318,7 @@ msgstr "Tous les timers pour cette broche sont utilisés"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Tous les timers sont utilisés"
|
||||
|
||||
|
@ -351,7 +358,7 @@ msgstr "Le tableau doit contenir des demi-mots (type 'H')"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Les valeurs du tableau doivent être des octets simples 'bytes'."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr "Au plus %d %q peut être spécifié (pas %d)"
|
||||
|
||||
|
@ -434,6 +441,11 @@ msgstr "Le tampon est trop petit"
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr "La longueur du tampon %d est trop grande. Il doit être inférieur à %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Le tampon doit être de longueur au moins 1"
|
||||
|
@ -599,6 +611,14 @@ msgstr "Fichier .mpy corrompu"
|
|||
msgid "Corrupt raw code"
|
||||
msgstr "Code brut corrompu"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "L'UART n'a pu être initialisé"
|
||||
|
@ -720,7 +740,8 @@ msgstr "Canal EXTINT déjà utilisé"
|
|||
msgid "Error in regex"
|
||||
msgstr "Erreur dans l'expression régulière"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -846,10 +867,6 @@ msgstr "opération d'E/S sur un fichier fermé"
|
|||
msgid "I2C Init Error"
|
||||
msgstr "Erreur d'initialisation I2C"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "opération sur I2C non supportée"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -888,6 +905,10 @@ msgstr "Erreur de définition interne"
|
|||
msgid "Internal error #%d"
|
||||
msgstr "Erreur interne #%d"
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -993,9 +1014,10 @@ msgstr "Broche invalide pour le canal droit"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1401,6 +1423,10 @@ msgstr "Mode sans-échec ! Auto-chargement désactivé.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Mode sans-échec ! Le code sauvegardé n'est pas éxecuté.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1469,6 +1495,10 @@ msgstr "Il manque une méthode readinto() ou write() au flux."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr "Fournissez au moins une broche UART"
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr "Temporisation de lecture dépassée"
|
||||
|
@ -1671,6 +1701,7 @@ msgstr ""
|
|||
"appareil ait été refusée ou ignorée."
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Débit non supporté"
|
||||
|
||||
|
@ -1790,11 +1821,11 @@ msgstr "abort() appelé"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "l'adresse %08x n'est pas alignée sur %d octets"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "adresse hors limites"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "adresses vides"
|
||||
|
||||
|
@ -1875,10 +1906,6 @@ msgstr "opération binaire '%q' non implémentée"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits doivent être 7, 8 ou 9"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "les bits doivent être 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "'bits_per_sample' doivent être 8 ou 16"
|
||||
|
@ -1904,10 +1931,6 @@ msgstr "les tranches de tampon doivent être de longueurs égales"
|
|||
msgid "buffer too small"
|
||||
msgstr "tampon trop petit"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "les tampons doivent être de la même longueur"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "les boutons doivent être des digitalio.DigitalInOut"
|
||||
|
@ -1984,7 +2007,7 @@ msgstr "impossible de convertir l'objet '%q' en '%q' implicitement"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "on ne peut convertir NaN en entier 'int'"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "ne peut convertir l'adresse en entier 'int'"
|
||||
|
||||
|
@ -2056,6 +2079,10 @@ msgstr ""
|
|||
"on ne peut envoyer une valeur autre que 'None' à un générateur fraîchement "
|
||||
"démarré"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "attribut non modifiable"
|
||||
|
@ -2189,6 +2216,10 @@ msgstr "n'a pas pu diffuser le tableau d'entrée à partir de la forme"
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "n'a pas pu inverser la matrice Vandermonde"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr "les données doivent être les objets iterables"
|
||||
|
@ -2353,10 +2384,6 @@ msgstr "le premier argument doit être un ndarray"
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr "le premier argument de super() doit être un type"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "le 1er bit doit être le MSB"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr "l'ordre d'aplatissement doit être «C» ou «F»"
|
||||
|
@ -2543,14 +2570,6 @@ msgstr "interp est défini pour les tableaux 1D de longueur égale"
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr "l'intervalle doit être dans la plage %s-%s"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "périphérique I2C invalide"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "périphérique SPI invalide"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "arguments invalides"
|
||||
|
@ -2731,10 +2750,6 @@ msgstr "héritages multiples non supportés"
|
|||
msgid "must raise an object"
|
||||
msgstr "doit lever un objet"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "sck, mosi et miso doivent tous être spécifiés"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "doit utiliser un argument nommé pour une fonction key"
|
||||
|
@ -2772,6 +2787,10 @@ msgstr "puissance négative sans support des nombres à virgule flottante"
|
|||
msgid "negative shift count"
|
||||
msgstr "compte de décalage négatif"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "aucune exception active à relever"
|
||||
|
@ -2793,6 +2812,10 @@ msgstr "pas de module '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr "pas de broche de réinitialisation disponible"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "pas de tel attribut"
|
||||
|
@ -3089,6 +3112,10 @@ msgstr "la taille est définie pour les ndarrays uniquement"
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "la longueur de sleep ne doit pas être négative"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "le pas 'step' de la tranche ne peut être zéro"
|
||||
|
@ -3105,6 +3132,18 @@ msgstr "redémarrage logiciel\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr "l'argument de «sort» doit être un ndarray"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "indices de début/fin"
|
||||
|
@ -3191,6 +3230,14 @@ msgstr "le délai doit être compris entre 0.0 et 100.0 secondes"
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "'timeout' doit être >= 0.0"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "'timestamp' hors bornes pour 'time_t' de la plateforme"
|
||||
|
@ -3388,6 +3435,18 @@ msgstr "valeur y hors limites"
|
|||
msgid "zero step"
|
||||
msgstr "'step' nul"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "AP required"
|
||||
#~ msgstr "'AP' requis"
|
||||
|
||||
|
@ -3581,6 +3640,9 @@ msgstr "'step' nul"
|
|||
#~ msgid "GPIO16 does not support pull up."
|
||||
#~ msgstr "Le GPIO16 ne supporte pas le tirage (pull-up)"
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "opération sur I2C non supportée"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Broche invalide pour 'bit clock'"
|
||||
|
||||
|
@ -3750,12 +3812,18 @@ msgstr "'step' nul"
|
|||
#~ msgid "bad GATT role"
|
||||
#~ msgstr "mauvais rôle GATT"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "les bits doivent être 8"
|
||||
|
||||
#~ msgid "buf is too small. need %d bytes"
|
||||
#~ msgstr "'buf' est trop petit. Besoin de %d octets"
|
||||
|
||||
#~ msgid "buffer too long"
|
||||
#~ msgstr "tampon trop long"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "les tampons doivent être de la même longueur"
|
||||
|
||||
#~ msgid "byteorder is not an instance of ByteOrder (got a %s)"
|
||||
#~ msgstr "'byteorder' n'est pas une instance de ByteOrder (reçu un %s)"
|
||||
|
||||
|
@ -3794,6 +3862,9 @@ msgstr "'step' nul"
|
|||
#~ msgid "expecting a pin"
|
||||
#~ msgstr "une broche (Pin) est attendue"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "le 1er bit doit être le MSB"
|
||||
|
||||
#~ msgid "flash location must be below 1MByte"
|
||||
#~ msgstr "l'emplacement en mémoire flash doit être inférieur à 1Mo"
|
||||
|
||||
|
@ -3806,6 +3877,12 @@ msgstr "'step' nul"
|
|||
#~ msgid "interval not in range 0.0020 to 10.24"
|
||||
#~ msgstr "intervalle hors bornes 0.0020 à 10.24"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "périphérique I2C invalide"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "périphérique SPI invalide"
|
||||
|
||||
#~ msgid "invalid alarm"
|
||||
#~ msgstr "alarme invalide"
|
||||
|
||||
|
@ -3828,6 +3905,9 @@ msgstr "'step' nul"
|
|||
#~ msgstr ""
|
||||
#~ "l'allocation de mémoire a échoué en allouant %u octets pour un code natif"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "sck, mosi et miso doivent tous être spécifiés"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "les noms doivent être des chaînes de caractère"
|
||||
|
|
156
locale/it_IT.po
156
locale/it_IT.po
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
|
||||
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -58,6 +58,10 @@ msgstr "%%c necessita di int o char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q in uso"
|
||||
|
@ -86,6 +90,10 @@ msgstr "slice del buffer devono essere della stessa lunghezza"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
#, fuzzy
|
||||
msgid "%q should be an int"
|
||||
|
@ -294,6 +302,7 @@ msgstr "Tutti i canali di eventi sincronizzati in uso"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Tutti i timer per questo pin sono in uso"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -301,7 +310,7 @@ msgstr "Tutti i timer per questo pin sono in uso"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Tutti i timer utilizzati"
|
||||
|
||||
|
@ -340,7 +349,7 @@ msgstr "Array deve avere mezzoparole (typo 'H')"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Valori di Array dovrebbero essere bytes singulari"
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -422,6 +431,11 @@ msgstr ""
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Il buffer deve essere lungo almeno 1"
|
||||
|
@ -582,6 +596,14 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Impossibile inizializzare l'UART"
|
||||
|
@ -705,7 +727,8 @@ msgstr "Canale EXTINT già in uso"
|
|||
msgid "Error in regex"
|
||||
msgstr "Errore nella regex"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -831,10 +854,6 @@ msgstr "operazione I/O su file chiuso"
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "operazione I2C non supportata"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -873,6 +892,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -980,9 +1003,10 @@ msgstr "Pin non valido per il canale destro"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1389,6 +1413,10 @@ msgstr "Modalità sicura in esecuzione! Auto-reload disattivato.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Modalità sicura in esecuzione! Codice salvato non in esecuzione.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1459,6 +1487,10 @@ msgstr "Metodi mancanti readinto() o write() allo stream."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1646,6 +1678,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "baudrate non supportato"
|
||||
|
||||
|
@ -1756,11 +1789,11 @@ msgstr "abort() chiamato"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "l'indirizzo %08x non è allineato a %d bytes"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "indirizzo fuori limite"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "gli indirizzi sono vuoti"
|
||||
|
||||
|
@ -1841,10 +1874,6 @@ msgstr "operazione binaria %q non implementata"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "i bit devono essere 7, 8 o 9"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "i bit devono essere 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
#, fuzzy
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
|
@ -1873,10 +1902,6 @@ msgstr "slice del buffer devono essere della stessa lunghezza"
|
|||
msgid "buffer too small"
|
||||
msgstr "buffer troppo piccolo"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "i buffer devono essere della stessa lunghezza"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1953,7 +1978,7 @@ msgstr "impossibile convertire l'oggetto '%q' implicitamente in %q"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "impossibile convertire NaN in int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "impossible convertire indirizzo in int"
|
||||
|
||||
|
@ -2021,6 +2046,10 @@ msgstr ""
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "impossibile impostare attributo"
|
||||
|
@ -2149,6 +2178,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2313,10 +2346,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "il primo bit deve essere il più significativo (MSB)"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2502,14 +2531,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "periferica I2C invalida"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "periferica SPI invalida"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "argomenti non validi"
|
||||
|
@ -2691,10 +2712,6 @@ msgstr "ereditarietà multipla non supportata"
|
|||
msgid "must raise an object"
|
||||
msgstr "deve lanciare un oggetto"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "è necessario specificare tutte le sck/mosi/miso"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr ""
|
||||
|
@ -2732,6 +2749,10 @@ msgstr "potenza negativa senza supporto per float"
|
|||
msgid "negative shift count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "nessuna eccezione attiva da rilanciare"
|
||||
|
@ -2754,6 +2775,10 @@ msgstr "nessun modulo chiamato '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "attributo inesistente"
|
||||
|
@ -3051,6 +3076,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "la lunghezza di sleed deve essere non negativa"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "la step della slice non può essere zero"
|
||||
|
@ -3067,6 +3096,18 @@ msgstr "soft reboot\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr ""
|
||||
|
@ -3154,6 +3195,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "i bit devono essere 8"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "timestamp è fuori intervallo per il time_t della piattaforma"
|
||||
|
@ -3353,6 +3402,18 @@ msgstr "indirizzo fuori limite"
|
|||
msgid "zero step"
|
||||
msgstr "zero step"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "AP required"
|
||||
#~ msgstr "AP richiesto"
|
||||
|
||||
|
@ -3529,6 +3590,9 @@ msgstr "zero step"
|
|||
#~ msgid "GPIO16 does not support pull up."
|
||||
#~ msgstr "GPIO16 non supporta pull-up"
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "operazione I2C non supportata"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Pin del clock di bit non valido"
|
||||
|
||||
|
@ -3636,9 +3700,15 @@ msgstr "zero step"
|
|||
#~ msgid "[addrinfo error %d]"
|
||||
#~ msgstr "[errore addrinfo %d]"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "i bit devono essere 8"
|
||||
|
||||
#~ msgid "buffer too long"
|
||||
#~ msgstr "buffer troppo lungo"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "i buffer devono essere della stessa lunghezza"
|
||||
|
||||
#~ msgid "can query only one param"
|
||||
#~ msgstr "è possibile interrogare solo un parametro"
|
||||
|
||||
|
@ -3669,6 +3739,9 @@ msgstr "zero step"
|
|||
#~ msgid "ffi_prep_closure_loc"
|
||||
#~ msgstr "ffi_prep_closure_loc"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "il primo bit deve essere il più significativo (MSB)"
|
||||
|
||||
#~ msgid "flash location must be below 1MByte"
|
||||
#~ msgstr "Locazione della flash deve essere inferiore a 1mb"
|
||||
|
||||
|
@ -3678,6 +3751,12 @@ msgstr "zero step"
|
|||
#~ msgid "impossible baudrate"
|
||||
#~ msgstr "baudrate impossibile"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "periferica I2C invalida"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "periferica SPI invalida"
|
||||
|
||||
#~ msgid "invalid alarm"
|
||||
#~ msgstr "alarm non valido"
|
||||
|
||||
|
@ -3700,6 +3779,9 @@ msgstr "zero step"
|
|||
#~ msgstr ""
|
||||
#~ "allocazione di memoria fallita, allocazione di %d byte per codice nativo"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "è necessario specificare tutte le sck/mosi/miso"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "argomenti nominati devono essere stringhe"
|
||||
|
|
144
locale/ko.po
144
locale/ko.po
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2019-05-06 14:22-0700\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -60,6 +60,10 @@ msgstr "%%c 전수(int)또는 캐릭터(char)필요합니다"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q 사용 중입니다"
|
||||
|
@ -87,6 +91,10 @@ msgstr "%q 는 >=1이어야합니다"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q 는 정수(int) 여야합니다"
|
||||
|
@ -293,6 +301,7 @@ msgstr ""
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "핀의 모든 타이머가 사용 중입니다"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -300,7 +309,7 @@ msgstr "핀의 모든 타이머가 사용 중입니다"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "모든 타이머가 사용 중입니다"
|
||||
|
||||
|
@ -339,7 +348,7 @@ msgstr ""
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -420,6 +429,11 @@ msgstr ""
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "잘못된 크기의 버퍼. >1 여야합니다"
|
||||
|
@ -576,6 +590,14 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr ""
|
||||
|
@ -697,7 +719,8 @@ msgstr ""
|
|||
msgid "Error in regex"
|
||||
msgstr "Regex에 오류가 있습니다."
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -821,10 +844,6 @@ msgstr ""
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -861,6 +880,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -966,9 +989,10 @@ msgstr "오른쪽 채널 핀이 잘못되었습니다"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1361,6 +1385,10 @@ msgstr ""
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1429,6 +1457,10 @@ msgstr ""
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1616,6 +1648,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1725,11 +1758,11 @@ msgstr ""
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1810,10 +1843,6 @@ msgstr ""
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "비트(bits)는 7, 8 또는 9 여야합니다"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "비트(bits)는 8이어야합니다"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample은 8 또는 16이어야합니다."
|
||||
|
@ -1839,10 +1868,6 @@ msgstr ""
|
|||
msgid "buffer too small"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr ""
|
||||
|
@ -1918,7 +1943,7 @@ msgstr ""
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1986,6 +2011,10 @@ msgstr ""
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr ""
|
||||
|
@ -2112,6 +2141,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2272,10 +2305,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2460,14 +2489,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "ICT주변 기기가 유효하지 않습니다"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "SPI주변 기기가 유효하지 않습니다"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr ""
|
||||
|
@ -2644,10 +2665,6 @@ msgstr ""
|
|||
msgid "must raise an object"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr ""
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr ""
|
||||
|
@ -2685,6 +2702,10 @@ msgstr ""
|
|||
msgid "negative shift count"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr ""
|
||||
|
@ -2706,6 +2727,10 @@ msgstr ""
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr ""
|
||||
|
@ -2995,6 +3020,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr ""
|
||||
|
@ -3011,6 +3040,18 @@ msgstr ""
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr ""
|
||||
|
@ -3096,6 +3137,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr ""
|
||||
|
@ -3293,6 +3342,18 @@ msgstr ""
|
|||
msgid "zero step"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Can't add services in Central mode"
|
||||
#~ msgstr "센트랄(중앙) 모드에서는 서비스를 추가 할 수 없습니다"
|
||||
|
||||
|
@ -3319,3 +3380,12 @@ msgstr ""
|
|||
|
||||
#~ msgid "Failed to continue scanning, err 0x%04x"
|
||||
#~ msgstr "스캔을 계속할 수 없습니다, 오류 0x%04x"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "비트(bits)는 8이어야합니다"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "ICT주변 기기가 유효하지 않습니다"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "SPI주변 기기가 유효하지 않습니다"
|
||||
|
|
160
locale/nl.po
160
locale/nl.po
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"PO-Revision-Date: 2020-06-02 19:50+0000\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2020-07-02 20:42+0000\n"
|
||||
"Last-Translator: _fonzlate <vooralfred@gmail.com>\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: nl\n"
|
||||
|
@ -16,7 +16,7 @@ msgstr ""
|
|||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 4.1-dev\n"
|
||||
"X-Generator: Weblate 4.2-dev\n"
|
||||
|
||||
#: main.c
|
||||
msgid ""
|
||||
|
@ -66,6 +66,10 @@ msgstr "%%c vereist een int of char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr "%d adres pins en %d RGB pins geven een hoogte van %d aan, niet %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr "%q fout: %d"
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q in gebruik"
|
||||
|
@ -93,6 +97,10 @@ msgstr "%q moet >= 1 zijn"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr "%q moet een tuple van lengte 2 zijn"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr "%q pin onjuist"
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q moet een int zijn"
|
||||
|
@ -299,6 +307,7 @@ msgstr "Alle sync event kanalen zijn in gebruik"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Alle timers voor deze pin zijn in gebruik"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -306,7 +315,7 @@ msgstr "Alle timers voor deze pin zijn in gebruik"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Alle timers zijn in gebruik"
|
||||
|
||||
|
@ -345,7 +354,7 @@ msgstr "Array moet halfwords (type 'H') bevatten"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Array waardes moet enkele bytes zijn."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr "Op zijn meest %d %q mogen worden gespecificeerd (niet %d)"
|
||||
|
||||
|
@ -426,6 +435,11 @@ msgstr "Buffer is te klein"
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr "Buffer lengte %d te groot. Het moet kleiner zijn dan %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr "Buffer lengte moet een veelvoud van 512 zijn"
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Buffer moet op zijn minst lengte 1 zijn"
|
||||
|
@ -588,6 +602,14 @@ msgstr "Corrupt .mpy bestand"
|
|||
msgid "Corrupt raw code"
|
||||
msgstr "Corrupt raw code"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr "Kan GNSS niet initialiseren"
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr "Kan SDCard niet initialiseren"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Kan UART niet initialiseren"
|
||||
|
@ -709,7 +731,8 @@ msgstr "EXTINT kanaal al in gebruik"
|
|||
msgid "Error in regex"
|
||||
msgstr "Fout in regex"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -835,10 +858,6 @@ msgstr "I/O actie op gesloten bestand"
|
|||
msgid "I2C Init Error"
|
||||
msgstr "I2C Init Fout"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "I2C actie niet ondersteund"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -877,6 +896,10 @@ msgstr "Interne define fout"
|
|||
msgid "Internal error #%d"
|
||||
msgstr "Interne fout #%d"
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr "Ongeldige %q"
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -982,9 +1005,10 @@ msgstr "Ongeldige pin voor rechter kanaal"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1391,6 +1415,10 @@ msgstr "Draaiende in veilige modus! Auto-herlaad is uit.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Draaiende in veilige modus! Opgeslagen code wordt niet uitgevoerd.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr "SD kaart CSD formaat niet ondersteund"
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1459,6 +1487,10 @@ msgstr "Stream mist readinto() of write() methode."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr "Geef op zijn minst 1 UART pin op"
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr "Systeem invoer moet gnss.SatelliteSystem zijn"
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr "Temperatuur lees time-out"
|
||||
|
@ -1655,6 +1687,7 @@ msgstr ""
|
|||
"apparaat geweigerd of genegeerd werd."
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Niet-ondersteunde baudsnelheid"
|
||||
|
||||
|
@ -1773,11 +1806,11 @@ msgstr "abort() aangeroepen"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "adres %08x is niet afgestemd op %d bytes"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "adres buiten bereik"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "adressen zijn leeg"
|
||||
|
||||
|
@ -1858,10 +1891,6 @@ msgstr "binaire op %q niet geïmplementeerd"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits moet 7, 8, of 9 zijn"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bits moet 8 zijn"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample moet 8 of 16 zijn"
|
||||
|
@ -1887,10 +1916,6 @@ msgstr "buffer slices moeten van gelijke grootte zijn"
|
|||
msgid "buffer too small"
|
||||
msgstr "buffer te klein"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "buffers moeten dezelfde lengte hebben"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "buttons moeten digitalio.DigitalInOut zijn"
|
||||
|
@ -1967,7 +1992,7 @@ msgstr "kan '%q' object niet omzetten naar %q impliciet"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "kan NaN niet omzetten naar int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "kan adres niet omzetten naar int"
|
||||
|
||||
|
@ -2035,6 +2060,10 @@ msgstr "kan throw niet aan net gestartte generator toevoegen"
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr "kan geen niet-'None' waarde naar een net gestartte generator sturen"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr "kan geen 512 blokgrootte instellen"
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "kan attribute niet instellen"
|
||||
|
@ -2162,6 +2191,10 @@ msgstr "kon de invoerarray niet vanuit vorm uitzenden"
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "kon de Vandermonde matrix niet omkeren"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr "kon SD kaart versie niet bepalen"
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr "data moet itereerbaar zijn"
|
||||
|
@ -2324,10 +2357,6 @@ msgstr "eerst argument moet een ndarray zijn"
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr "eerste argument voor super() moet een type zijn"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "het eerste bit moet het MSB zijn"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr "De afvlakkingsvolgorde moet ofwel \"C\", ofwel \"F\" zijn"
|
||||
|
@ -2513,14 +2542,6 @@ msgstr "interp is gedefinieerd for eendimensionale arrays van gelijke lengte"
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr "interval moet binnen bereik %s-%s vallen"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "onjuist I2C randapparaat"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "onjuist SPI randapparaat"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "ongeldige argumenten"
|
||||
|
@ -2700,10 +2721,6 @@ msgstr "meervoudige overerving niet ondersteund"
|
|||
msgid "must raise an object"
|
||||
msgstr "moet een object oproepen (raise)"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "sck/mosi/miso moeten alle gespecificeerd worden"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "voor sleutelfunctie moet een trefwoordargument gebruikt worden"
|
||||
|
@ -2741,6 +2758,10 @@ msgstr "negatieve macht terwijl er geen ondersteuning is voor float"
|
|||
msgid "negative shift count"
|
||||
msgstr "negatieve verschuivingstelling (shift count)"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr "geen SD kaart"
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "geen actieve uitzondering om opnieuw op te werpen (raise)"
|
||||
|
@ -2762,6 +2783,10 @@ msgstr "geen module met naam '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr "geen reset pin beschikbaar"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr "geen antwoord van SD kaart"
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "niet zo'n attribuut"
|
||||
|
@ -3054,6 +3079,10 @@ msgstr "omvang is alleen voor ndarrays gedefinieerd"
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "de slaapduur mag niet negatief zijn"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr "segmentstap mag niet nul zijn"
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "segmentstap mag niet nul zijn"
|
||||
|
@ -3070,6 +3099,18 @@ msgstr "zachte herstart\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr "sorteerargument moet een ndarray zijn"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr "sos array moet vorm (n_section, 6) hebben"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr "sos[:, 3] moeten allemaal 1 zijn"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr "sosfilt vereist itereerbare argumenten"
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "start/stop indices"
|
||||
|
@ -3155,6 +3196,14 @@ msgstr "timeout moet tussen 0.0 en 100.0 seconden zijn"
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "timeout moet groter dan 0.0 zijn"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr "timeout bij wachten op v1 kaart"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr "timeout bij wachten op v2 kaart"
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "timestamp buiten bereik voor platform time_t"
|
||||
|
@ -3352,5 +3401,38 @@ msgstr "y-waarde buiten bereik"
|
|||
msgid "zero step"
|
||||
msgstr "nul-stap"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr "zi moet een ndarray zijn"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr "zi moet van type float zijn"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr "zi moet vorm (n_section, 2) hebben"
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "I2C actie niet ondersteund"
|
||||
|
||||
#~ msgid "Negative step not supported"
|
||||
#~ msgstr "Negatieve stappen niet ondersteund"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits moet 8 zijn"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "buffers moeten dezelfde lengte hebben"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "het eerste bit moet het MSB zijn"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "onjuist I2C randapparaat"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "onjuist SPI randapparaat"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "sck/mosi/miso moeten alle gespecificeerd worden"
|
||||
|
|
156
locale/pl.po
156
locale/pl.po
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2019-03-19 18:37-0700\n"
|
||||
"Last-Translator: Radomir Dopieralski <circuitpython@sheep.art.pl>\n"
|
||||
"Language-Team: pl\n"
|
||||
|
@ -59,6 +59,10 @@ msgstr "%%c wymaga int lub char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q w użyciu"
|
||||
|
@ -86,6 +90,10 @@ msgstr "%q musi być >= 1"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q powinno być typu int"
|
||||
|
@ -292,6 +300,7 @@ msgstr "Wszystkie kanały zdarzeń synchronizacji w użyciu"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Wszystkie timery tej nóżki w użyciu"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -299,7 +308,7 @@ msgstr "Wszystkie timery tej nóżki w użyciu"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Wszystkie timery w użyciu"
|
||||
|
||||
|
@ -338,7 +347,7 @@ msgstr "Tablica musi zawierać pół-słowa (typ 'H')"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Wartości powinny być bajtami."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -419,6 +428,11 @@ msgstr ""
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Bufor musi mieć długość 1 lub więcej"
|
||||
|
@ -575,6 +589,14 @@ msgstr ""
|
|||
msgid "Corrupt raw code"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Ustawienie UART nie powiodło się"
|
||||
|
@ -696,7 +718,8 @@ msgstr "Kanał EXTINT w użyciu"
|
|||
msgid "Error in regex"
|
||||
msgstr "Błąd w regex"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -820,10 +843,6 @@ msgstr "Operacja I/O na zamkniętym pliku"
|
|||
msgid "I2C Init Error"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "Operacja I2C nieobsługiwana"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -862,6 +881,10 @@ msgstr ""
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -967,9 +990,10 @@ msgstr "Zła nóżka dla prawego kanału"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1362,6 +1386,10 @@ msgstr "Uruchomiony tryb bezpieczeństwa! Samo-przeładowanie wyłączone.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Uruchomiony tryb bezpieczeństwa! Zapisany kod nie jest uruchamiany.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1430,6 +1458,10 @@ msgstr "Strumień nie ma metod readinto() lub write()."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1616,6 +1648,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Zła szybkość transmisji"
|
||||
|
||||
|
@ -1728,11 +1761,11 @@ msgstr "Wywołano abort()"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "adres %08x nie jest wyrównany do %d bajtów"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "adres poza zakresem"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "adres jest pusty"
|
||||
|
||||
|
@ -1813,10 +1846,6 @@ msgstr "brak dwu-argumentowego operatora %q"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits musi być 7, 8 lub 9"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bits musi być 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample musi być 8 lub 16"
|
||||
|
@ -1842,10 +1871,6 @@ msgstr "fragmenty bufora muszą mieć tę samą długość"
|
|||
msgid "buffer too small"
|
||||
msgstr "zbyt mały bufor"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "bufory muszą mieć tę samą długość"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "buttons musi być digitalio.DigitalInOut"
|
||||
|
@ -1921,7 +1946,7 @@ msgstr "nie można automatycznie skonwertować '%q' do '%q'"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "nie można skonwertować NaN do int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "nie można skonwertować adresu do int"
|
||||
|
||||
|
@ -1989,6 +2014,10 @@ msgstr "nie można skoczyć do świeżo stworzonego generatora"
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr "świeżo stworzony generator może tylko przyjąć None"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "nie można ustawić atrybutu"
|
||||
|
@ -2115,6 +2144,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2276,10 +2309,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr "pierwszy argument super() musi być typem"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "firstbit musi być MSB"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2464,14 +2493,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "złe I2C"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "złe SPI"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "złe arguemnty"
|
||||
|
@ -2648,10 +2669,6 @@ msgstr "wielokrotne dziedzicznie niewspierane"
|
|||
msgid "must raise an object"
|
||||
msgstr "wyjątek musi być obiektem"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "sck/mosi/miso muszą być podane"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "funkcja key musi być podana jako argument nazwany"
|
||||
|
@ -2689,6 +2706,10 @@ msgstr "ujemna potęga, ale brak obsługi liczb zmiennoprzecinkowych"
|
|||
msgid "negative shift count"
|
||||
msgstr "ujemne przesunięcie"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "brak wyjątku do ponownego rzucenia"
|
||||
|
@ -2710,6 +2731,10 @@ msgstr "brak modułu o nazwie '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "nie ma takiego atrybutu"
|
||||
|
@ -3001,6 +3026,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "okres snu musi być nieujemny"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "zerowy krok"
|
||||
|
@ -3017,6 +3046,18 @@ msgstr "programowy reset\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "początkowe/końcowe indeksy"
|
||||
|
@ -3102,6 +3143,14 @@ msgstr ""
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "timeout musi być >= 0.0"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "timestamp poza zakresem dla time_t na tej platformie"
|
||||
|
@ -3299,6 +3348,18 @@ msgstr "y poza zakresem"
|
|||
msgid "zero step"
|
||||
msgstr "zerowy krok"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Address is not %d bytes long or is in wrong format"
|
||||
#~ msgstr "Adres nie ma długości %d bajtów lub zły format"
|
||||
|
||||
|
@ -3426,6 +3487,9 @@ msgstr "zerowy krok"
|
|||
#~ msgid "Flash write failed to start, err 0x%04x"
|
||||
#~ msgstr "Nie udało się rozpocząć zapisu do flash, błąd 0x%04x"
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "Operacja I2C nieobsługiwana"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Zła nóżka zegara"
|
||||
|
||||
|
@ -3523,9 +3587,15 @@ msgstr "zerowy krok"
|
|||
#~ msgid "bad GATT role"
|
||||
#~ msgstr "zła rola GATT"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits musi być 8"
|
||||
|
||||
#~ msgid "buf is too small. need %d bytes"
|
||||
#~ msgstr "buf zbyt mały. Wymagane %d bajtów"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "bufory muszą mieć tę samą długość"
|
||||
|
||||
#~ msgid "byteorder is not an instance of ByteOrder (got a %s)"
|
||||
#~ msgstr "byteorder musi być typu ByteOrder (jest %s)"
|
||||
|
||||
|
@ -3536,9 +3606,21 @@ msgstr "zerowy krok"
|
|||
#~ msgid "color buffer must be a buffer or int"
|
||||
#~ msgstr "bufor kolorów musi być typu buffer lub int"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "firstbit musi być MSB"
|
||||
|
||||
#~ msgid "interval not in range 0.0020 to 10.24"
|
||||
#~ msgstr "przedział poza zakresem 0.0020 do 10.24"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "złe I2C"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "złe SPI"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "sck/mosi/miso muszą być podane"
|
||||
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "nazwa musi być łańcuchem"
|
||||
|
||||
|
|
1408
locale/pt_BR.po
1408
locale/pt_BR.po
File diff suppressed because it is too large
Load Diff
156
locale/sv.po
156
locale/sv.po
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2020-06-03 18:59+0000\n"
|
||||
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -66,6 +66,10 @@ msgstr "%%c kräver int eller char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr "%d adresspinnar och %d RGB-pinnar indikerar en höjd av %d, inte %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q används redan"
|
||||
|
@ -93,6 +97,10 @@ msgstr "%q måste vara >= 1"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr "%q måste vara en tuple av längd 2"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q ska vara en int"
|
||||
|
@ -299,6 +307,7 @@ msgstr "Alla händelsekanaler används"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Alla timers för denna pinne är i bruk"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -306,7 +315,7 @@ msgstr "Alla timers för denna pinne är i bruk"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Alla timers används"
|
||||
|
||||
|
@ -345,7 +354,7 @@ msgstr "Matrisen måste innehålla halfwords (typ \"H\")"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Matrisvärden ska bestå av enstaka bytes."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr "Högst %d %q kan anges (inte %d)"
|
||||
|
||||
|
@ -426,6 +435,11 @@ msgstr "Bufferten är för liten"
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr "Buffertlängd %d för stor. Den måste vara mindre än %d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Bufferten måste ha minst längd 1"
|
||||
|
@ -588,6 +602,14 @@ msgstr "Skadad .mpy-fil"
|
|||
msgid "Corrupt raw code"
|
||||
msgstr "Korrupt rå kod"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Det gick inte att initiera UART"
|
||||
|
@ -709,7 +731,8 @@ msgstr "EXTINT-kanalen används redan"
|
|||
msgid "Error in regex"
|
||||
msgstr "Fel i regex"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -833,10 +856,6 @@ msgstr "I/O-operation på stängd fil"
|
|||
msgid "I2C Init Error"
|
||||
msgstr "I2C init-fel"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "I2C-åtgärd stöds inte"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -875,6 +894,10 @@ msgstr "Internt define-fel"
|
|||
msgid "Internal error #%d"
|
||||
msgstr "Internt fel #%d"
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -980,9 +1003,10 @@ msgstr "Ogiltig pinne för höger kanal"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1387,6 +1411,10 @@ msgstr "Kör i säkert läge! Autoladdning är avstängd.\n"
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Kör i säkert läge! Sparad kod körs inte.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1455,6 +1483,10 @@ msgstr "Stream saknar readinto() eller write() metod."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr "Ange minst en UART-pinne"
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr "Temperaturavläsning tog för lång tid"
|
||||
|
@ -1651,6 +1683,7 @@ msgstr ""
|
|||
"eller ignorerades."
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Baudrate stöd inte"
|
||||
|
||||
|
@ -1766,11 +1799,11 @@ msgstr "abort() anropad"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "adressen %08x är inte justerad till %d byte"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "adress utanför gränsen"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "adresserna är tomma"
|
||||
|
||||
|
@ -1851,10 +1884,6 @@ msgstr "binär op %q är inte implementerad"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bits måste vara 7, 8 eller 9"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bits måste vara 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "bits_per_sample måste vara 8 eller 16"
|
||||
|
@ -1880,10 +1909,6 @@ msgstr "buffertsegmenten måste vara lika långa"
|
|||
msgid "buffer too small"
|
||||
msgstr "buffert för liten"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "buffertar måste vara samma längd"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "buttons måste vara digitalio.DigitalInOut"
|
||||
|
@ -1959,7 +1984,7 @@ msgstr "kan inte konvertera '%q' objekt implicit till %q"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "kan inte konvertera NaN till int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "kan inte konvertera address till int"
|
||||
|
||||
|
@ -2027,6 +2052,10 @@ msgstr "kan inte 'pend throw' för nystartad generator"
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr "kan inte skicka icke-None värde till nystartad generator"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "kan inte att ange attribut"
|
||||
|
@ -2155,6 +2184,10 @@ msgstr "Kan inte sända indatamatris från form"
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr "kan inte invertera Vandermonde-matris"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr "data måste vara itererbar"
|
||||
|
@ -2318,10 +2351,6 @@ msgstr "första argumentet måste vara en ndarray"
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr "första argumentet till super() måste vara typ"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "firstbit måste vara MSB"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr "förenklingsordningen måste vara antingen \"C\" eller \"F\""
|
||||
|
@ -2506,14 +2535,6 @@ msgstr "interp är definierad för 1D-matriser med samma längd"
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr "interval måste vara i intervallet %s-%s"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "ogiltig I2C-kringutrustning"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "ogiltig SPI-kringutrustning"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "ogiltiga argument"
|
||||
|
@ -2693,10 +2714,6 @@ msgstr "multipelt arv stöds inte"
|
|||
msgid "must raise an object"
|
||||
msgstr "måste ge ett objekt"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "måste ange alla av sck/mosi/miso"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "måste använda nyckelordsargument för nyckelfunktion"
|
||||
|
@ -2734,6 +2751,10 @@ msgstr "negativ exponent utan stöd för flyttal"
|
|||
msgid "negative shift count"
|
||||
msgstr "negativt skiftantal"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "ingen aktiv exception för reraise"
|
||||
|
@ -2755,6 +2776,10 @@ msgstr "ingen modul med namnet '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr "ingen reset-pinne tillgänglig"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "inget sådant attribut"
|
||||
|
@ -3047,6 +3072,10 @@ msgstr "storlek är enbart definierad ndarrays"
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "värdet för sleep måste vara positivt"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "segmentsteg får inte vara noll"
|
||||
|
@ -3063,6 +3092,18 @@ msgstr "mjuk omstart\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr "argumentet sort måste vara en ndarray"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "start-/slutindex"
|
||||
|
@ -3148,6 +3189,14 @@ msgstr "timeout måste vara 0.0-100.0 sekunder"
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "timeout måste vara >= 0.0"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "timestamp utom räckvidd för plattformens \"time_t\""
|
||||
|
@ -3345,8 +3394,41 @@ msgstr "y-värde utanför intervall"
|
|||
msgid "zero step"
|
||||
msgstr "noll steg"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "I2C-åtgärd stöds inte"
|
||||
|
||||
#~ msgid "Negative step not supported"
|
||||
#~ msgstr "Negativt step stöds inte"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bits måste vara 8"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "buffertar måste vara samma längd"
|
||||
|
||||
#~ msgid "empty %q list"
|
||||
#~ msgstr "tom %q-lista"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "firstbit måste vara MSB"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "ogiltig I2C-kringutrustning"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "ogiltig SPI-kringutrustning"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "måste ange alla av sck/mosi/miso"
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: circuitpython-cn\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-06-01 17:10-0700\n"
|
||||
"POT-Creation-Date: 2020-07-02 15:29+0200\n"
|
||||
"PO-Revision-Date: 2019-04-13 10:10-0700\n"
|
||||
"Last-Translator: hexthat\n"
|
||||
"Language-Team: Chinese Hanyu Pinyin\n"
|
||||
|
@ -65,6 +65,10 @@ msgstr "%%c xūyào zhěngshù huò char"
|
|||
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q failure: %d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "%q in use"
|
||||
msgstr "%q zhèngzài shǐyòng"
|
||||
|
@ -92,6 +96,10 @@ msgstr "%q bìxū dàyú huò děngyú 1"
|
|||
msgid "%q must be a tuple of length 2"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
msgid "%q pin invalid"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/fontio/BuiltinFont.c
|
||||
msgid "%q should be an int"
|
||||
msgstr "%q yīnggāi shì yīgè int"
|
||||
|
@ -298,6 +306,7 @@ msgstr "Suǒyǒu tóngbù shìjiàn píndào shǐyòng"
|
|||
msgid "All timers for this pin are in use"
|
||||
msgstr "Cǐ yǐn jiǎo de suǒyǒu jìshí qì zhèngzài shǐyòng"
|
||||
|
||||
#: ports/atmel-samd/common-hal/_pew/PewPew.c
|
||||
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
|
||||
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
|
||||
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
|
||||
|
@ -305,7 +314,7 @@ msgstr "Cǐ yǐn jiǎo de suǒyǒu jìshí qì zhèngzài shǐyòng"
|
|||
#: ports/cxd56/common-hal/pulseio/PulseOut.c
|
||||
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
|
||||
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
|
||||
#: shared-bindings/pulseio/PWMOut.c shared-module/_pew/PewPew.c
|
||||
#: shared-bindings/pulseio/PWMOut.c
|
||||
msgid "All timers in use"
|
||||
msgstr "Suǒyǒu jìshí qì shǐyòng"
|
||||
|
||||
|
@ -344,7 +353,7 @@ msgstr "Shùzǔ bìxū bāohán bàn zìshù (type 'H')"
|
|||
msgid "Array values should be single bytes."
|
||||
msgstr "Shùzǔ zhí yīnggāi shì dāngè zì jié."
|
||||
|
||||
#: shared-bindings/rgbmatrix/RGBMatrix.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
msgid "At most %d %q may be specified (not %d)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -425,6 +434,11 @@ msgstr "Huǎnchōng qū tài xiǎo"
|
|||
msgid "Buffer length %d too big. It must be less than %d"
|
||||
msgstr "Huǎnchōng qū chángdù%d tài dà. Tā bìxū xiǎoyú%d"
|
||||
|
||||
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
|
||||
msgid "Buffer length must be a multiple of 512"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
|
||||
msgid "Buffer must be at least length 1"
|
||||
msgstr "Huǎnchōng qū bìxū zhìshǎo chángdù 1"
|
||||
|
@ -583,6 +597,14 @@ msgstr "Fǔbài de .mpy wénjiàn"
|
|||
msgid "Corrupt raw code"
|
||||
msgstr "Sǔnhuài de yuánshǐ dàimǎ"
|
||||
|
||||
#: ports/cxd56/common-hal/gnss/GNSS.c
|
||||
msgid "Could not initialize GNSS"
|
||||
msgstr ""
|
||||
|
||||
#: ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
msgid "Could not initialize SDCard"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
|
||||
msgid "Could not initialize UART"
|
||||
msgstr "Wúfǎ chūshǐhuà UART"
|
||||
|
@ -704,7 +726,8 @@ msgstr "EXTINT píndào yǐjīng shǐyòng"
|
|||
msgid "Error in regex"
|
||||
msgstr "Zhèngzé biǎodá shì cuòwù"
|
||||
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
|
||||
#: shared-bindings/microcontroller/Pin.c
|
||||
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
|
||||
#: shared-bindings/terminalio/Terminal.c
|
||||
msgid "Expected a %q"
|
||||
|
@ -828,10 +851,6 @@ msgstr "Wénjiàn shàng de I/ O cāozuò"
|
|||
msgid "I2C Init Error"
|
||||
msgstr "I2C chūshǐhuà cuòwù"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "I2C operation not supported"
|
||||
msgstr "I2C cāozuò bù zhīchí"
|
||||
|
||||
#: shared-bindings/aesio/aes.c
|
||||
#, c-format
|
||||
msgid "IV must be %d bytes long"
|
||||
|
@ -870,6 +889,10 @@ msgstr "Nèibù dìngyì cuòwù"
|
|||
msgid "Internal error #%d"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/sdioio/SDCard.c
|
||||
msgid "Invalid %q"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
|
||||
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
|
||||
msgid "Invalid %q pin"
|
||||
|
@ -975,9 +998,10 @@ msgstr "Yòuxián tōngdào yǐn jiǎo wúxiào"
|
|||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/atmel-samd/common-hal/busio/SPI.c
|
||||
#: ports/atmel-samd/common-hal/busio/UART.c
|
||||
#: ports/atmel-samd/common-hal/i2cslave/I2CSlave.c
|
||||
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
|
||||
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/SPI.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "Invalid pins"
|
||||
|
@ -1376,6 +1400,10 @@ msgstr "Zài ānquán móshì xià yùnxíng! Zìdòng chóngxīn jiāzài yǐ g
|
|||
msgid "Running in safe mode! Not running saved code.\n"
|
||||
msgstr "Zài ānquán móshì xià yùnxíng! Bù yùnxíng yǐ bǎocún de dàimǎ.\n"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "SD card CSD format not supported"
|
||||
msgstr ""
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c
|
||||
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
|
||||
msgid "SDA or SCL needs a pull up"
|
||||
|
@ -1444,6 +1472,10 @@ msgstr "Liú quēshǎo readinto() huò write() fāngfǎ."
|
|||
msgid "Supply at least one UART pin"
|
||||
msgstr "Dìngyì zhìshǎo yīgè UART yǐn jiǎo"
|
||||
|
||||
#: shared-bindings/gnss/GNSS.c
|
||||
msgid "System entry must be gnss.SatelliteSystem"
|
||||
msgstr ""
|
||||
|
||||
#: ports/stm/common-hal/microcontroller/Processor.c
|
||||
msgid "Temperature read timed out"
|
||||
msgstr ""
|
||||
|
@ -1639,6 +1671,7 @@ msgstr ""
|
|||
"huò hūlüè."
|
||||
|
||||
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
|
||||
#: ports/stm/common-hal/busio/I2C.c
|
||||
msgid "Unsupported baudrate"
|
||||
msgstr "Bù zhīchí de baudrate"
|
||||
|
||||
|
@ -1753,11 +1786,11 @@ msgstr "zhōngzhǐ () diàoyòng"
|
|||
msgid "address %08x is not aligned to %d bytes"
|
||||
msgstr "wèi zhǐ %08x wèi yǔ %d wèi yuán zǔ duìqí"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "address out of bounds"
|
||||
msgstr "dìzhǐ chāochū biānjiè"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "addresses is empty"
|
||||
msgstr "dìzhǐ wèi kōng"
|
||||
|
||||
|
@ -1838,10 +1871,6 @@ msgstr "èrjìnzhì bǎn qián bǎn %q wèi zhíxíng"
|
|||
msgid "bits must be 7, 8 or 9"
|
||||
msgstr "bǐtè bìxū shì 7,8 huò 9"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "bits must be 8"
|
||||
msgstr "bǐtè bìxū shì 8"
|
||||
|
||||
#: shared-bindings/audiomixer/Mixer.c
|
||||
msgid "bits_per_sample must be 8 or 16"
|
||||
msgstr "měi jiàn yàngběn bìxū wèi 8 huò 16"
|
||||
|
@ -1867,10 +1896,6 @@ msgstr "huǎnchōng qū qiēpiàn bìxū chángdù xiāngděng"
|
|||
msgid "buffer too small"
|
||||
msgstr "huǎnchōng qū tài xiǎo"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "buffers must be the same length"
|
||||
msgstr "huǎnchōng qū bìxū shì chángdù xiāngtóng"
|
||||
|
||||
#: shared-bindings/_pew/PewPew.c
|
||||
msgid "buttons must be digitalio.DigitalInOut"
|
||||
msgstr "ànniǔ bìxū shì digitalio.DigitalInOut"
|
||||
|
@ -1946,7 +1971,7 @@ msgstr "wúfǎ jiāng '%q' duìxiàng zhuǎnhuàn wèi %q yǐn hán"
|
|||
msgid "can't convert NaN to int"
|
||||
msgstr "wúfǎ jiāng dǎoháng zhuǎnhuàn wèi int"
|
||||
|
||||
#: shared-bindings/i2cslave/I2CSlave.c
|
||||
#: shared-bindings/i2cperipheral/I2CPeripheral.c
|
||||
msgid "can't convert address to int"
|
||||
msgstr "wúfǎ jiāng dìzhǐ zhuǎnhuàn wèi int"
|
||||
|
||||
|
@ -2014,6 +2039,10 @@ msgstr "bùnéng bǎ tā rēng dào gāng qǐdòng de fā diànjī shàng"
|
|||
msgid "can't send non-None value to a just-started generator"
|
||||
msgstr "wúfǎ xiàng gānggāng qǐdòng de shēngchéng qì fāsòng fēi zhí"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "can't set 512 block size"
|
||||
msgstr ""
|
||||
|
||||
#: py/objnamedtuple.c
|
||||
msgid "can't set attribute"
|
||||
msgstr "wúfǎ shèzhì shǔxìng"
|
||||
|
@ -2143,6 +2172,10 @@ msgstr ""
|
|||
msgid "could not invert Vandermonde matrix"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "couldn't determine SD card version"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/approx.c
|
||||
msgid "data must be iterable"
|
||||
msgstr ""
|
||||
|
@ -2304,10 +2337,6 @@ msgstr ""
|
|||
msgid "first argument to super() must be type"
|
||||
msgstr "chāojí () de dì yī gè cānshù bìxū shì lèixíng"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "firstbit must be MSB"
|
||||
msgstr "dì yī wèi bìxū shì MSB"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "flattening order must be either 'C', or 'F'"
|
||||
msgstr ""
|
||||
|
@ -2492,14 +2521,6 @@ msgstr ""
|
|||
msgid "interval must be in range %s-%s"
|
||||
msgstr "Jiàngé bìxū zài %s-%s fànwéi nèi"
|
||||
|
||||
#: extmod/machine_i2c.c
|
||||
msgid "invalid I2C peripheral"
|
||||
msgstr "wúxiào de I2C wàiwéi qì"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "invalid SPI peripheral"
|
||||
msgstr "wúxiào de SPI wàiwéi qì"
|
||||
|
||||
#: lib/netutils/netutils.c
|
||||
msgid "invalid arguments"
|
||||
msgstr "wúxiào de cānshù"
|
||||
|
@ -2677,10 +2698,6 @@ msgstr "bù zhīchí duō gè jìchéng"
|
|||
msgid "must raise an object"
|
||||
msgstr "bìxū tíchū duìxiàng"
|
||||
|
||||
#: extmod/machine_spi.c
|
||||
msgid "must specify all of sck/mosi/miso"
|
||||
msgstr "bìxū zhǐdìng suǒyǒu sck/mosi/misco"
|
||||
|
||||
#: py/modbuiltins.c
|
||||
msgid "must use keyword argument for key function"
|
||||
msgstr "bìxū shǐyòng guānjiàn cí cānshù"
|
||||
|
@ -2719,6 +2736,10 @@ msgstr "méiyǒu fú diǎn zhīchí de xiāojí gōnglǜ"
|
|||
msgid "negative shift count"
|
||||
msgstr "fù zhuǎnyí jìshù"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/vm.c
|
||||
msgid "no active exception to reraise"
|
||||
msgstr "méiyǒu jīhuó de yìcháng lái chóngxīn píngjià"
|
||||
|
@ -2740,6 +2761,10 @@ msgstr "méiyǒu mókuài '%q'"
|
|||
msgid "no reset pin available"
|
||||
msgstr "Méiyǒu kěyòng de fùwèi yǐn jiǎo"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "no response from SD card"
|
||||
msgstr ""
|
||||
|
||||
#: py/runtime.c
|
||||
msgid "no such attribute"
|
||||
msgstr "méiyǒu cǐ shǔxìng"
|
||||
|
@ -3031,6 +3056,10 @@ msgstr ""
|
|||
msgid "sleep length must be non-negative"
|
||||
msgstr "shuìmián chángdù bìxū shìfēi fùshù"
|
||||
|
||||
#: extmod/ulab/code/ndarray.c
|
||||
msgid "slice step can't be zero"
|
||||
msgstr ""
|
||||
|
||||
#: py/objslice.c py/sequence.c
|
||||
msgid "slice step cannot be zero"
|
||||
msgstr "qiēpiàn bù bùnéng wéi líng"
|
||||
|
@ -3047,6 +3076,18 @@ msgstr "ruǎn chóngqǐ\n"
|
|||
msgid "sort argument must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos array must be of shape (n_section, 6)"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sos[:, 3] should be all ones"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "sosfilt requires iterable arguments"
|
||||
msgstr ""
|
||||
|
||||
#: py/objstr.c
|
||||
msgid "start/end indices"
|
||||
msgstr "kāishǐ/jiéshù zhǐshù"
|
||||
|
@ -3132,6 +3173,14 @@ msgstr "Chāo shí shíjiān bìxū wèi 0.0 Dào 100.0 Miǎo"
|
|||
msgid "timeout must be >= 0.0"
|
||||
msgstr "chāoshí bìxū shì >= 0.0"
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v1 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-module/sdcardio/SDCard.c
|
||||
msgid "timeout waiting for v2 card"
|
||||
msgstr ""
|
||||
|
||||
#: shared-bindings/time/__init__.c
|
||||
msgid "timestamp out of range for platform time_t"
|
||||
msgstr "time_t shíjiān chuō chāochū píngtái fànwéi"
|
||||
|
@ -3329,6 +3378,18 @@ msgstr "y zhí chāochū biānjiè"
|
|||
msgid "zero step"
|
||||
msgstr "líng bù"
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be an ndarray"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of float type"
|
||||
msgstr ""
|
||||
|
||||
#: extmod/ulab/code/filter.c
|
||||
msgid "zi must be of shape (n_section, 2)"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Address is not %d bytes long or is in wrong format"
|
||||
#~ msgstr "Dìzhǐ bùshì %d zì jié zhǎng, huòzhě géshì cuòwù"
|
||||
|
||||
|
@ -3485,6 +3546,9 @@ msgstr "líng bù"
|
|||
#~ msgid "Flash write failed to start, err 0x%04x"
|
||||
#~ msgstr "Flash xiě rù shībài, err 0x%04x"
|
||||
|
||||
#~ msgid "I2C operation not supported"
|
||||
#~ msgstr "I2C cāozuò bù zhīchí"
|
||||
|
||||
#~ msgid "Invalid bit clock pin"
|
||||
#~ msgstr "Wúxiào de wèi shízhōng yǐn jiǎo"
|
||||
|
||||
|
@ -3605,9 +3669,15 @@ msgstr "líng bù"
|
|||
#~ msgid "bad GATT role"
|
||||
#~ msgstr "zǒng xiédìng de bùliáng juésè"
|
||||
|
||||
#~ msgid "bits must be 8"
|
||||
#~ msgstr "bǐtè bìxū shì 8"
|
||||
|
||||
#~ msgid "buf is too small. need %d bytes"
|
||||
#~ msgstr "huǎnchōng tài xiǎo. Xūyào%d zì jié"
|
||||
|
||||
#~ msgid "buffers must be the same length"
|
||||
#~ msgstr "huǎnchōng qū bìxū shì chángdù xiāngtóng"
|
||||
|
||||
#~ msgid "byteorder is not an instance of ByteOrder (got a %s)"
|
||||
#~ msgstr "zì jié bùshì zì jié xù shílì (yǒu %s)"
|
||||
|
||||
|
@ -3620,9 +3690,21 @@ msgstr "líng bù"
|
|||
#~ msgid "expected a DigitalInOut"
|
||||
#~ msgstr "qídài de DigitalInOut"
|
||||
|
||||
#~ msgid "firstbit must be MSB"
|
||||
#~ msgstr "dì yī wèi bìxū shì MSB"
|
||||
|
||||
#~ msgid "interval not in range 0.0020 to 10.24"
|
||||
#~ msgstr "jùlí 0.0020 Zhì 10.24 Zhī jiān de jiàngé shíjiān"
|
||||
|
||||
#~ msgid "invalid I2C peripheral"
|
||||
#~ msgstr "wúxiào de I2C wàiwéi qì"
|
||||
|
||||
#~ msgid "invalid SPI peripheral"
|
||||
#~ msgstr "wúxiào de SPI wàiwéi qì"
|
||||
|
||||
#~ msgid "must specify all of sck/mosi/miso"
|
||||
#~ msgstr "bìxū zhǐdìng suǒyǒu sck/mosi/misco"
|
||||
|
||||
#~ msgid "name must be a string"
|
||||
#~ msgstr "míngchēng bìxū shì yīgè zìfú chuàn"
|
||||
|
||||
|
|
|
@ -86,17 +86,27 @@ INC += -I. \
|
|||
# NDEBUG disables assert() statements. This reduces code size pretty dramatically, per tannewt.
|
||||
|
||||
ifeq ($(CHIP_FAMILY), samd21)
|
||||
PERIPHERALS_CHIP_FAMILY=samd21
|
||||
CFLAGS += -Os -DNDEBUG
|
||||
# TinyUSB defines
|
||||
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAMD21 -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=128 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=128 -DCFG_TUD_MSC_BUFSIZE=512
|
||||
endif
|
||||
|
||||
ifeq ($(CHIP_FAMILY), samd51)
|
||||
PERIPHERALS_CHIP_FAMILY=sam_d5x_e5x
|
||||
CFLAGS += -Os -DNDEBUG
|
||||
# TinyUSB defines
|
||||
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAMD51 -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
|
||||
endif
|
||||
|
||||
ifeq ($(CHIP_FAMILY), same54)
|
||||
PERIPHERALS_CHIP_FAMILY=sam_d5x_e5x
|
||||
CFLAGS += -Os -DNDEBUG
|
||||
# TinyUSB defines
|
||||
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAMD51 -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
|
||||
endif
|
||||
|
||||
$(echo PERIPHERALS_CHIP_FAMILY=$(PERIPHERALS_CHIP_FAMILY))
|
||||
#Debugging/Optimization
|
||||
ifeq ($(DEBUG), 1)
|
||||
CFLAGS += -ggdb
|
||||
|
@ -152,7 +162,16 @@ CFLAGS += \
|
|||
-mcpu=cortex-m4 \
|
||||
-mfloat-abi=hard \
|
||||
-mfpu=fpv4-sp-d16 \
|
||||
-DSAMD51
|
||||
-DSAM_D5X_E5X -DSAMD51
|
||||
endif
|
||||
ifeq ($(CHIP_FAMILY), same54)
|
||||
CFLAGS += \
|
||||
-mthumb \
|
||||
-mabi=aapcs-linux \
|
||||
-mcpu=cortex-m4 \
|
||||
-mfloat-abi=hard \
|
||||
-mfpu=fpv4-sp-d16 \
|
||||
-DSAM_D5X_E5X -DSAME54
|
||||
endif
|
||||
|
||||
|
||||
|
@ -171,6 +190,9 @@ BOOTLOADER_SIZE := 0x2000
|
|||
else ifeq ($(CHIP_FAMILY), samd51)
|
||||
LDFLAGS += -mthumb -mcpu=cortex-m4
|
||||
BOOTLOADER_SIZE := 0x4000
|
||||
else ifeq ($(CHIP_FAMILY), same54)
|
||||
LDFLAGS += -mthumb -mcpu=cortex-m4
|
||||
BOOTLOADER_SIZE := 0x4000
|
||||
endif
|
||||
|
||||
SRC_ASF := \
|
||||
|
@ -213,6 +235,23 @@ SRC_ASF += \
|
|||
hpl/oscctrl/hpl_oscctrl.c \
|
||||
hpl/trng/hpl_trng.c \
|
||||
|
||||
else ifeq ($(CHIP_FAMILY), same54)
|
||||
SRC_ASF += \
|
||||
hal/src/hal_rand_sync.c \
|
||||
hpl/core/hpl_core_m4.c \
|
||||
hpl/mclk/hpl_mclk.c \
|
||||
hpl/osc32kctrl/hpl_osc32kctrl.c \
|
||||
hpl/oscctrl/hpl_oscctrl.c \
|
||||
hpl/trng/hpl_trng.c \
|
||||
|
||||
endif
|
||||
|
||||
ifeq ($(CIRCUITPY_SDIOIO),1)
|
||||
SRC_ASF += \
|
||||
hal/src/hal_mci_sync.c \
|
||||
hpl/sdhc/hpl_sdhc.c \
|
||||
|
||||
$(BUILD)/asf4/$(CHIP_FAMILY)/hpl/sdhc/hpl_sdhc.o: CFLAGS += -Wno-cast-align
|
||||
endif
|
||||
|
||||
SRC_ASF := $(addprefix asf4/$(CHIP_FAMILY)/, $(SRC_ASF))
|
||||
|
@ -240,15 +279,15 @@ SRC_C = \
|
|||
lib/utils/stdout_helpers.c \
|
||||
lib/utils/sys_stdio_mphal.c \
|
||||
mphalport.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/adc.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/cache.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/clocks.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/dma.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/events.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/external_interrupts.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/pins.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/sercom.c \
|
||||
peripherals/samd/$(CHIP_FAMILY)/timers.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/adc.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/cache.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/clocks.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/dma.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/events.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/external_interrupts.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/pins.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/sercom.c \
|
||||
peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/timers.c \
|
||||
peripherals/samd/clocks.c \
|
||||
peripherals/samd/dma.c \
|
||||
peripherals/samd/events.c \
|
||||
|
@ -259,6 +298,9 @@ SRC_C = \
|
|||
supervisor/shared/memory.c \
|
||||
timer_handler.c \
|
||||
|
||||
ifeq ($(CIRCUITPY_SDIOIO),1)
|
||||
SRC_C += ports/atmel-samd/sd_mmc/sd_mmc.c
|
||||
endif
|
||||
|
||||
ifeq ($(CIRCUITPY_NETWORK),1)
|
||||
CFLAGS += -DMICROPY_PY_NETWORK=1
|
||||
|
@ -288,7 +330,7 @@ endif
|
|||
|
||||
# The smallest SAMD51 packages don't have I2S. Everything else does.
|
||||
ifeq ($(CIRCUITPY_AUDIOBUSIO),1)
|
||||
SRC_C += peripherals/samd/i2s.c peripherals/samd/$(CHIP_FAMILY)/i2s.c
|
||||
SRC_C += peripherals/samd/i2s.c peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/i2s.c
|
||||
endif
|
||||
|
||||
SRC_COMMON_HAL_EXPANDED = $(addprefix shared-bindings/, $(SRC_COMMON_HAL)) \
|
||||
|
@ -315,9 +357,13 @@ endif
|
|||
OBJ += $(addprefix $(BUILD)/, $(SRC_S:.s=.o))
|
||||
OBJ += $(addprefix $(BUILD)/, $(SRC_MOD:.c=.o))
|
||||
|
||||
SRC_QSTR += $(HEADER_BUILD)/sdiodata.h
|
||||
$(HEADER_BUILD)/sdiodata.h: $(TOP)/tools/mksdiodata.py | $(HEADER_BUILD)
|
||||
$(Q)$(PYTHON3) $< > $@
|
||||
|
||||
SRC_QSTR += $(SRC_C) $(SRC_SUPERVISOR) $(SRC_COMMON_HAL_EXPANDED) $(SRC_SHARED_MODULE_EXPANDED)
|
||||
# Sources that only hold QSTRs after pre-processing.
|
||||
SRC_QSTR_PREPROCESSOR += peripherals/samd/$(CHIP_FAMILY)/clocks.c
|
||||
SRC_QSTR_PREPROCESSOR += peripherals/samd/$(PERIPHERALS_CHIP_FAMILY)/clocks.c
|
||||
|
||||
all: $(BUILD)/firmware.bin $(BUILD)/firmware.uf2
|
||||
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 039b5f3bbc3f4ba4421e581db290560d59fef625
|
||||
Subproject commit 35a1525796c7ef8a3893d90befdad2f267fca20e
|
|
@ -0,0 +1,24 @@
|
|||
/* Auto-generated config file hpl_sdhc_config.h */
|
||||
#ifndef HPL_SDHC_CONFIG_H
|
||||
#define HPL_SDHC_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
#include "peripheral_clk_config.h"
|
||||
|
||||
#ifndef CONF_BASE_FREQUENCY
|
||||
#define CONF_BASE_FREQUENCY CONF_SDHC0_FREQUENCY
|
||||
#endif
|
||||
|
||||
// <o> Clock Generator Select
|
||||
// <0=> Divided Clock mode
|
||||
// <1=> Programmable Clock mode
|
||||
// <i> This defines the clock generator mode in the SDCLK Frequency Select field
|
||||
// <id> sdhc_clk_gsel
|
||||
#ifndef CONF_SDHC0_CLK_GEN_SEL
|
||||
#define CONF_SDHC0_CLK_GEN_SEL 0
|
||||
#endif
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_SDHC_CONFIG_H
|
|
@ -1001,6 +1001,170 @@
|
|||
#define CONF_GCLK_USB_FREQUENCY 48000000
|
||||
#endif
|
||||
|
||||
// <h> SDHC Clock Settings
|
||||
// <y> SDHC Clock source
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK1_Val"> Generic clock generator 1
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK2_Val"> Generic clock generator 2
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK3_Val"> Generic clock generator 3
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK4_Val"> Generic clock generator 4
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK5_Val"> Generic clock generator 5
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK6_Val"> Generic clock generator 6
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK7_Val"> Generic clock generator 7
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK8_Val"> Generic clock generator 8
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK9_Val"> Generic clock generator 9
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK10_Val"> Generic clock generator 10
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK11_Val"> Generic clock generator 11
|
||||
|
||||
// <i> Select the clock source for SDHC.
|
||||
// <id> sdhc_gclk_selection
|
||||
#ifndef CONF_GCLK_SDHC0_SRC
|
||||
#define CONF_GCLK_SDHC0_SRC GCLK_GENCTRL_SRC_DFLL_Val
|
||||
#endif
|
||||
|
||||
// <y> SDHC clock slow source
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK1_Val"> Generic clock generator 1
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK2_Val"> Generic clock generator 2
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK3_Val"> Generic clock generator 3
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK4_Val"> Generic clock generator 4
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK5_Val"> Generic clock generator 5
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK6_Val"> Generic clock generator 6
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK7_Val"> Generic clock generator 7
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK8_Val"> Generic clock generator 8
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK9_Val"> Generic clock generator 9
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK10_Val"> Generic clock generator 10
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK11_Val"> Generic clock generator 11
|
||||
|
||||
// <i> Select the clock source for SDHC.
|
||||
// <id> sdhc_slow_gclk_selection
|
||||
#ifndef CONF_GCLK_SDHC0_SLOW_SRC
|
||||
#define CONF_GCLK_SDHC0_SLOW_SRC GCLK_GENCTRL_SRC_DFLL_Val
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
/**
|
||||
* \def SDHC FREQUENCY
|
||||
* \brief SDHC's Clock frequency
|
||||
*/
|
||||
#ifndef CONF_SDHC0_FREQUENCY
|
||||
#define CONF_SDHC0_FREQUENCY 12000000
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \def SDHC FREQUENCY
|
||||
* \brief SDHC's Clock slow frequency
|
||||
*/
|
||||
#ifndef CONF_SDHC0_SLOW_FREQUENCY
|
||||
#define CONF_SDHC0_SLOW_FREQUENCY 12000000
|
||||
#endif
|
||||
|
||||
// <h> SDHC Clock Settings
|
||||
// <y> SDHC Clock source
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK1_Val"> Generic clock generator 1
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK2_Val"> Generic clock generator 2
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK3_Val"> Generic clock generator 3
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK4_Val"> Generic clock generator 4
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK5_Val"> Generic clock generator 5
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK6_Val"> Generic clock generator 6
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK7_Val"> Generic clock generator 7
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK8_Val"> Generic clock generator 8
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK9_Val"> Generic clock generator 9
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK10_Val"> Generic clock generator 10
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK11_Val"> Generic clock generator 11
|
||||
|
||||
// <i> Select the clock source for SDHC.
|
||||
// <id> sdhc_gclk_selection
|
||||
#ifndef CONF_GCLK_SDHC1_SRC
|
||||
#define CONF_GCLK_SDHC1_SRC GCLK_GENCTRL_SRC_DFLL_Val
|
||||
#endif
|
||||
|
||||
// <y> SDHC clock slow source
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK1_Val"> Generic clock generator 1
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK2_Val"> Generic clock generator 2
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK3_Val"> Generic clock generator 3
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK4_Val"> Generic clock generator 4
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK5_Val"> Generic clock generator 5
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK6_Val"> Generic clock generator 6
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK7_Val"> Generic clock generator 7
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK8_Val"> Generic clock generator 8
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK9_Val"> Generic clock generator 9
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK10_Val"> Generic clock generator 10
|
||||
|
||||
// <GCLK_PCHCTRL_GEN_GCLK11_Val"> Generic clock generator 11
|
||||
|
||||
// <i> Select the clock source for SDHC.
|
||||
// <id> sdhc_slow_gclk_selection
|
||||
#ifndef CONF_GCLK_SDHC1_SLOW_SRC
|
||||
#define CONF_GCLK_SDHC1_SLOW_SRC GCLK_GENCTRL_SRC_DFLL_Val
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
/**
|
||||
* \def SDHC FREQUENCY
|
||||
* \brief SDHC's Clock frequency
|
||||
*/
|
||||
#ifndef CONF_SDHC1_FREQUENCY
|
||||
#define CONF_SDHC1_FREQUENCY 12000000
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \def SDHC FREQUENCY
|
||||
* \brief SDHC's Clock slow frequency
|
||||
*/
|
||||
#ifndef CONF_SDHC1_SLOW_FREQUENCY
|
||||
#define CONF_SDHC1_SLOW_FREQUENCY 12000000
|
||||
#endif
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // PERIPHERAL_CLK_CONFIG_H
|
||||
|
|
|
@ -0,0 +1,303 @@
|
|||
/* Auto-generated config file hpl_adc_config.h */
|
||||
#ifndef HPL_ADC_CONFIG_H
|
||||
#define HPL_ADC_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
#ifndef CONF_ADC_0_ENABLE
|
||||
#define CONF_ADC_0_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <h> Basic Configuration
|
||||
|
||||
// <o> Conversion Result Resolution
|
||||
// <0x0=>12-bit
|
||||
// <0x1=>16-bit (averaging must be enabled)
|
||||
// <0x2=>10-bit
|
||||
// <0x3=>8-bit
|
||||
// <i> Defines the bit resolution for the ADC sample values (RESSEL)
|
||||
// <id> adc_resolution
|
||||
#ifndef CONF_ADC_0_RESSEL
|
||||
#define CONF_ADC_0_RESSEL 0x0
|
||||
#endif
|
||||
|
||||
// <o> Reference Selection
|
||||
// <0x0=>Internal bandgap reference
|
||||
// <0x2=>1/2 VDDANA (only for VDDANA > 2.0V)
|
||||
// <0x3=>VDDANA
|
||||
// <0x4=>External reference A
|
||||
// <0x5=>External reference B
|
||||
// <0x6=>External reference C
|
||||
// <i> Select the reference for the ADC (REFSEL)
|
||||
// <id> adc_reference
|
||||
#ifndef CONF_ADC_0_REFSEL
|
||||
#define CONF_ADC_0_REFSEL 0x0
|
||||
#endif
|
||||
|
||||
// <o> Prescaler configuration
|
||||
// <0x0=>Peripheral clock divided by 2
|
||||
// <0x1=>Peripheral clock divided by 4
|
||||
// <0x2=>Peripheral clock divided by 8
|
||||
// <0x3=>Peripheral clock divided by 16
|
||||
// <0x4=>Peripheral clock divided by 32
|
||||
// <0x5=>Peripheral clock divided by 64
|
||||
// <0x6=>Peripheral clock divided by 128
|
||||
// <0x7=>Peripheral clock divided by 256
|
||||
// <i> These bits define the ADC clock relative to the peripheral clock (PRESCALER)
|
||||
// <id> adc_prescaler
|
||||
#ifndef CONF_ADC_0_PRESCALER
|
||||
#define CONF_ADC_0_PRESCALER 0x3
|
||||
#endif
|
||||
|
||||
// <q> Free Running Mode
|
||||
// <i> When enabled, the ADC is in free running mode and a new conversion will be initiated when a previous conversion completes. (FREERUN)
|
||||
// <id> adc_freerunning_mode
|
||||
#ifndef CONF_ADC_0_FREERUN
|
||||
#define CONF_ADC_0_FREERUN 0
|
||||
#endif
|
||||
|
||||
// <q> Differential Mode
|
||||
// <i> In differential mode, the voltage difference between the MUXPOS and MUXNEG inputs will be converted by the ADC. (DIFFMODE)
|
||||
// <id> adc_differential_mode
|
||||
#ifndef CONF_ADC_0_DIFFMODE
|
||||
#define CONF_ADC_0_DIFFMODE 0
|
||||
#endif
|
||||
|
||||
// <o> Positive Mux Input Selection
|
||||
// <0x00=>ADC AIN0 pin
|
||||
// <0x01=>ADC AIN1 pin
|
||||
// <0x02=>ADC AIN2 pin
|
||||
// <0x03=>ADC AIN3 pin
|
||||
// <0x04=>ADC AIN4 pin
|
||||
// <0x05=>ADC AIN5 pin
|
||||
// <0x06=>ADC AIN6 pin
|
||||
// <0x07=>ADC AIN7 pin
|
||||
// <0x08=>ADC AIN8 pin
|
||||
// <0x09=>ADC AIN9 pin
|
||||
// <0x0A=>ADC AIN10 pin
|
||||
// <0x0B=>ADC AIN11 pin
|
||||
// <0x0C=>ADC AIN12 pin
|
||||
// <0x0D=>ADC AIN13 pin
|
||||
// <0x0E=>ADC AIN14 pin
|
||||
// <0x0F=>ADC AIN15 pin
|
||||
// <0x18=>1/4 scaled core supply
|
||||
// <0x19=>1/4 Scaled VBAT Supply
|
||||
// <0x1A=>1/4 scaled I/O supply
|
||||
// <0x1B=>Bandgap voltage
|
||||
// <0x1C=>Temperature reference (PTAT)
|
||||
// <0x1D=>Temperature reference (CTAT)
|
||||
// <0x1E=>DAC Output
|
||||
// <i> These bits define the Mux selection for the positive ADC input. (MUXPOS)
|
||||
// <id> adc_pinmux_positive
|
||||
#ifndef CONF_ADC_0_MUXPOS
|
||||
#define CONF_ADC_0_MUXPOS 0x0
|
||||
#endif
|
||||
|
||||
// <o> Negative Mux Input Selection
|
||||
// <0x00=>ADC AIN0 pin
|
||||
// <0x01=>ADC AIN1 pin
|
||||
// <0x02=>ADC AIN2 pin
|
||||
// <0x03=>ADC AIN3 pin
|
||||
// <0x04=>ADC AIN4 pin
|
||||
// <0x05=>ADC AIN5 pin
|
||||
// <0x06=>ADC AIN6 pin
|
||||
// <0x07=>ADC AIN7 pin
|
||||
// <0x18=>Internal ground
|
||||
// <0x19=>I/O ground
|
||||
// <i> These bits define the Mux selection for the negative ADC input. (MUXNEG)
|
||||
// <id> adc_pinmux_negative
|
||||
#ifndef CONF_ADC_0_MUXNEG
|
||||
#define CONF_ADC_0_MUXNEG 0x0
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <e> Advanced Configuration
|
||||
// <id> adc_advanced_settings
|
||||
#ifndef CONF_ADC_0_ADVANCED
|
||||
#define CONF_ADC_0_ADVANCED 0
|
||||
#endif
|
||||
|
||||
// <q> Run in standby
|
||||
// <i> Indicates whether the ADC will continue running in standby sleep mode or not (RUNSTDBY)
|
||||
// <id> adc_arch_runstdby
|
||||
#ifndef CONF_ADC_0_RUNSTDBY
|
||||
#define CONF_ADC_0_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q>Debug Run
|
||||
// <i> If enabled, the ADC is running if the CPU is halted by an external debugger. (DBGRUN)
|
||||
// <id> adc_arch_dbgrun
|
||||
#ifndef CONF_ADC_0_DBGRUN
|
||||
#define CONF_ADC_0_DBGRUN 0
|
||||
#endif
|
||||
|
||||
// <q> On Demand Control
|
||||
// <i> Will keep the ADC peripheral running if requested by other peripherals (ONDEMAND)
|
||||
// <id> adc_arch_ondemand
|
||||
#ifndef CONF_ADC_0_ONDEMAND
|
||||
#define CONF_ADC_0_ONDEMAND 0
|
||||
#endif
|
||||
|
||||
// <q> Left-Adjusted Result
|
||||
// <i> When enabled, the ADC conversion result is left-adjusted in the RESULT register. The high byte of the 12-bit result will be present in the upper part of the result register. (LEFTADJ)
|
||||
// <id> adc_arch_leftadj
|
||||
#ifndef CONF_ADC_0_LEFTADJ
|
||||
#define CONF_ADC_0_LEFTADJ 0
|
||||
#endif
|
||||
|
||||
// <q> Reference Buffer Offset Compensation Enable
|
||||
// <i> The accuracy of the gain stage can be increased by enabling the reference buffer offset compensation. This will decrease the input impedance and thus increase the start-up time of the reference. (REFCOMP)
|
||||
// <id> adc_arch_refcomp
|
||||
#ifndef CONF_ADC_0_REFCOMP
|
||||
#define CONF_ADC_0_REFCOMP 0
|
||||
#endif
|
||||
|
||||
// <q>Comparator Offset Compensation Enable
|
||||
// <i> This bit indicates whether the Comparator Offset Compensation is enabled or not (OFFCOMP)
|
||||
// <id> adc_arch_offcomp
|
||||
#ifndef CONF_ADC_0_OFFCOMP
|
||||
#define CONF_ADC_0_OFFCOMP 0
|
||||
#endif
|
||||
|
||||
// <q> Digital Correction Logic Enabled
|
||||
// <i> When enabled, the ADC conversion result in the RESULT register is then corrected for gain and offset based on the values in the GAINCAL and OFFSETCAL registers. (CORREN)
|
||||
// <id> adc_arch_corren
|
||||
#ifndef CONF_ADC_0_CORREN
|
||||
#define CONF_ADC_0_CORREN 0
|
||||
#endif
|
||||
|
||||
// <o> Offset Correction Value <0-4095>
|
||||
// <i> If the digital correction logic is enabled (CTRLB.CORREN = 1), these bits define how the ADC conversion result is compensated for offset error before being written to the Result register. (OFFSETCORR)
|
||||
// <id> adc_arch_offsetcorr
|
||||
#ifndef CONF_ADC_0_OFFSETCORR
|
||||
#define CONF_ADC_0_OFFSETCORR 0
|
||||
#endif
|
||||
|
||||
// <o> Gain Correction Value <0-4095>
|
||||
// <i> If the digital correction logic is enabled (CTRLB.CORREN = 1), these bits define how the ADC conversion result is compensated for gain error before being written to the result register. (GAINCORR)
|
||||
// <id> adc_arch_gaincorr
|
||||
#ifndef CONF_ADC_0_GAINCORR
|
||||
#define CONF_ADC_0_GAINCORR 0
|
||||
#endif
|
||||
|
||||
// <o> Adjusting Result / Division Coefficient <0-7>
|
||||
// <i> These bits define the division coefficient in 2n steps. (ADJRES)
|
||||
// <id> adc_arch_adjres
|
||||
#ifndef CONF_ADC_0_ADJRES
|
||||
#define CONF_ADC_0_ADJRES 0x0
|
||||
#endif
|
||||
|
||||
// <o.0..10> Number of Samples to be Collected
|
||||
// <0x0=>1 sample
|
||||
// <0x1=>2 samples
|
||||
// <0x2=>4 samples
|
||||
// <0x3=>8 samples
|
||||
// <0x4=>16 samples
|
||||
// <0x5=>32 samples
|
||||
// <0x6=>64 samples
|
||||
// <0x7=>128 samples
|
||||
// <0x8=>256 samples
|
||||
// <0x9=>512 samples
|
||||
// <0xA=>1024 samples
|
||||
// <i> Define how many samples should be added together.The result will be available in the Result register (SAMPLENUM)
|
||||
// <id> adc_arch_samplenum
|
||||
#ifndef CONF_ADC_0_SAMPLENUM
|
||||
#define CONF_ADC_0_SAMPLENUM 0x0
|
||||
#endif
|
||||
|
||||
// <o> Sampling Time Length <0-63>
|
||||
// <i> These bits control the ADC sampling time in number of half CLK_ADC cycles, depending of the prescaler value, thus controlling the ADC input impedance. (SAMPLEN)
|
||||
// <id> adc_arch_samplen
|
||||
#ifndef CONF_ADC_0_SAMPLEN
|
||||
#define CONF_ADC_0_SAMPLEN 0
|
||||
#endif
|
||||
|
||||
// <o> Window Monitor Mode
|
||||
// <0x0=>No window mode
|
||||
// <0x1=>Mode 1: RESULT above lower threshold
|
||||
// <0x2=>Mode 2: RESULT beneath upper threshold
|
||||
// <0x3=>Mode 3: RESULT inside lower and upper threshold
|
||||
// <0x4=>Mode 4: RESULT outside lower and upper threshold
|
||||
// <i> These bits enable and define the window monitor mode. (WINMODE)
|
||||
// <id> adc_arch_winmode
|
||||
#ifndef CONF_ADC_0_WINMODE
|
||||
#define CONF_ADC_0_WINMODE 0x0
|
||||
#endif
|
||||
|
||||
// <o> Window Monitor Lower Threshold <0-65535>
|
||||
// <i> If the window monitor is enabled, these bits define the lower threshold value. (WINLT)
|
||||
// <id> adc_arch_winlt
|
||||
#ifndef CONF_ADC_0_WINLT
|
||||
#define CONF_ADC_0_WINLT 0
|
||||
#endif
|
||||
|
||||
// <o> Window Monitor Upper Threshold <0-65535>
|
||||
// <i> If the window monitor is enabled, these bits define the lower threshold value. (WINUT)
|
||||
// <id> adc_arch_winut
|
||||
#ifndef CONF_ADC_0_WINUT
|
||||
#define CONF_ADC_0_WINUT 0
|
||||
#endif
|
||||
|
||||
// <o> Bitmask for positive input sequence <0-4294967295>
|
||||
// <i> Use this parameter to input the bitmask for positive input sequence control (refer to datasheet for the device).
|
||||
// <id> adc_arch_seqen
|
||||
#ifndef CONF_ADC_0_SEQEN
|
||||
#define CONF_ADC_0_SEQEN 0x0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> Event Control
|
||||
// <id> adc_arch_event_settings
|
||||
#ifndef CONF_ADC_0_EVENT_CONTROL
|
||||
#define CONF_ADC_0_EVENT_CONTROL 0
|
||||
#endif
|
||||
|
||||
// <q> Window Monitor Event Out
|
||||
// <i> Enables event output on window event (WINMONEO)
|
||||
// <id> adc_arch_winmoneo
|
||||
#ifndef CONF_ADC_0_WINMONEO
|
||||
#define CONF_ADC_0_WINMONEO 0
|
||||
#endif
|
||||
|
||||
// <q> Result Ready Event Out
|
||||
// <i> Enables event output on result ready event (RESRDEO)
|
||||
// <id> adc_arch_resrdyeo
|
||||
#ifndef CONF_ADC_0_RESRDYEO
|
||||
#define CONF_ADC_0_RESRDYEO 0
|
||||
#endif
|
||||
|
||||
// <q> Invert flush Event Signal
|
||||
// <i> Invert the flush event input signal (FLUSHINV)
|
||||
// <id> adc_arch_flushinv
|
||||
#ifndef CONF_ADC_0_FLUSHINV
|
||||
#define CONF_ADC_0_FLUSHINV 0
|
||||
#endif
|
||||
|
||||
// <q> Trigger Flush On Event
|
||||
// <i> Trigger an ADC pipeline flush on event (FLUSHEI)
|
||||
// <id> adc_arch_flushei
|
||||
#ifndef CONF_ADC_0_FLUSHEI
|
||||
#define CONF_ADC_0_FLUSHEI 0
|
||||
#endif
|
||||
|
||||
// <q> Invert Start Conversion Event Signal
|
||||
// <i> Invert the start conversion event input signal (STARTINV)
|
||||
// <id> adc_arch_startinv
|
||||
#ifndef CONF_ADC_0_STARTINV
|
||||
#define CONF_ADC_0_STARTINV 0
|
||||
#endif
|
||||
|
||||
// <q> Trigger Conversion On Event
|
||||
// <i> Trigger a conversion on event. (STARTEI)
|
||||
// <id> adc_arch_startei
|
||||
#ifndef CONF_ADC_0_STARTEI
|
||||
#define CONF_ADC_0_STARTEI 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_ADC_CONFIG_H
|
|
@ -0,0 +1,169 @@
|
|||
/* Auto-generated config file hpl_dac_config.h */
|
||||
#ifndef HPL_DAC_CONFIG_H
|
||||
#define HPL_DAC_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <h> Basic configuration
|
||||
// <o> Reference Selection
|
||||
// <0x00=> Unbuffered external voltage reference
|
||||
// <0x01=> Voltage supply
|
||||
// <0x02=> Buffered external voltage reference
|
||||
// <0x03=> Internal bandgap reference
|
||||
// <id> dac_arch_refsel
|
||||
#ifndef CONF_DAC_REFSEL
|
||||
#define CONF_DAC_REFSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Differential mode
|
||||
// <i> Indicates whether the differential mode is enabled or not
|
||||
// <id> dac_arch_diff
|
||||
#ifndef CONF_DAC_DIFF
|
||||
#define CONF_DAC_DIFF 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <e> Advanced Configuration
|
||||
// <id> dac_advanced_settings
|
||||
#ifndef CONF_DAC_ADVANCED_CONFIG
|
||||
#define CONF_DAC_ADVANCED_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <q> Debug Run
|
||||
// <i> Indicate whether running when CPU is halted
|
||||
// <id> adc_arch_dbgrun
|
||||
#ifndef CONF_DAC_DBGRUN
|
||||
#define CONF_DAC_DBGRUN 1
|
||||
#endif
|
||||
|
||||
// <h> Channel 0 configuration
|
||||
// <q> Left Adjusted Data
|
||||
// <i> Indicate how the data is adjusted in the Data and Data Buffer register
|
||||
// <id> dac0_arch_leftadj
|
||||
#ifndef CONF_DAC0_LEFTADJ
|
||||
#define CONF_DAC0_LEFTADJ 1
|
||||
#endif
|
||||
|
||||
// <o> Current control
|
||||
// <0=> GCLK_DAC <= 1.2MHz (100kSPS)
|
||||
// <1=> 1.2MHz < GCLK_DAC <= 6MHz (500kSPS)
|
||||
// <2=> 6MHz < GCLK_DAC <= 12MHz (1MSPS)
|
||||
// <i> This defines the current in output buffer according to conversion rate
|
||||
// <id> dac0_arch_cctrl
|
||||
#ifndef CONF_DAC0_CCTRL
|
||||
#define CONF_DAC0_CCTRL 0
|
||||
#endif
|
||||
|
||||
// <q> Run in standby
|
||||
// <i> Indicates whether the DAC channel will continue running in standby sleep mode or not
|
||||
// <id> dac0_arch_runstdby
|
||||
#ifndef CONF_DAC0_RUNSTDBY
|
||||
#define CONF_DAC0_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Dithering Mode
|
||||
// <i> Indicate whether dithering mode is enabled
|
||||
// <id> dac0_arch_ditrher
|
||||
#ifndef CONF_DAC0_DITHER
|
||||
#define CONF_DAC0_DITHER 0
|
||||
#endif
|
||||
|
||||
// <o> Refresh period <0x00-0xFF>
|
||||
// <i> This defines the refresh period. If it is 0, the refresh mode is disabled, else the refresh period is: value * 500us
|
||||
// <id> dac0_arch_refresh
|
||||
#ifndef CONF_DAC0_REFRESH
|
||||
#define CONF_DAC0_REFRESH 2
|
||||
#endif
|
||||
// </h>
|
||||
// <h> Channel 1 configuration
|
||||
// <q> Left Adjusted Data
|
||||
// <i> Indicate how the data is adjusted in the Data and Data Buffer register
|
||||
// <id> dac1_arch_leftadj
|
||||
#ifndef CONF_DAC1_LEFTADJ
|
||||
#define CONF_DAC1_LEFTADJ 1
|
||||
#endif
|
||||
|
||||
// <o> Current control
|
||||
// <0=> GCLK_DAC <= 1.2MHz (100kSPS)
|
||||
// <1=> 1.2MHz < GCLK_DAC <= 6MHz (500kSPS)
|
||||
// <2=> 6MHz < GCLK_DAC <= 12MHz (1MSPS)
|
||||
// <i> This defines the current in output buffer according to conversion rate
|
||||
// <id> dac1_arch_cctrl
|
||||
#ifndef CONF_DAC1_CCTRL
|
||||
#define CONF_DAC1_CCTRL 0
|
||||
#endif
|
||||
|
||||
// <q> Run in standby
|
||||
// <i> Indicates whether the DAC channel will continue running in standby sleep mode or not
|
||||
// <id> dac1_arch_runstdby
|
||||
#ifndef CONF_DAC1_RUNSTDBY
|
||||
#define CONF_DAC1_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Dithering Mode
|
||||
// <i> Indicate whether dithering mode is enabled
|
||||
// <id> dac1_arch_ditrher
|
||||
#ifndef CONF_DAC1_DITHER
|
||||
#define CONF_DAC1_DITHER 0
|
||||
#endif
|
||||
|
||||
// <o> Refresh period <0x00-0xFF>
|
||||
// <i> This defines the refresh period. If it is 0, the refresh mode is disabled, else the refresh period is: value * 500us
|
||||
// <id> dac1_arch_refresh
|
||||
#ifndef CONF_DAC1_REFRESH
|
||||
#define CONF_DAC1_REFRESH 2
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Event configuration
|
||||
// <o> Inversion of DAC 0 event
|
||||
// <0=> Detection on rising edge pf the input event
|
||||
// <1=> Detection on falling edge pf the input event
|
||||
// <i> This defines the edge detection of the input event
|
||||
// <id> dac_arch_invei0
|
||||
#ifndef CONF_DAC_INVEI0
|
||||
#define CONF_DAC_INVEI0 0
|
||||
#endif
|
||||
|
||||
// <q> Data Buffer of DAC 0 Empty Event Output
|
||||
// <i> Indicate whether Data Buffer Empty Event is enabled and generated when the Data Buffer register is empty or not
|
||||
// <id> dac_arch_emptyeo_0
|
||||
#ifndef CONF_DAC_EMPTYEO0
|
||||
#define CONF_DAC_EMPTYEO0 0
|
||||
#endif
|
||||
|
||||
// <q> Start Conversion Event Input DAC 0
|
||||
// <i> Indicate whether Start input event is enabled
|
||||
// <id> dac_arch_startei_0
|
||||
#ifndef CONF_DAC_STARTEI0
|
||||
#define CONF_DAC_STARTEI0 0
|
||||
#endif
|
||||
// <o> Inversion of DAC 1 event
|
||||
// <0=> Detection on rising edge pf the input event
|
||||
// <1=> Detection on falling edge pf the input event
|
||||
// <i> This defines the edge detection of the input event
|
||||
// <id> dac_arch_invei1
|
||||
#ifndef CONF_DAC_INVEI1
|
||||
#define CONF_DAC_INVEI1 0
|
||||
#endif
|
||||
|
||||
// <q> Data Buffer of DAC 1 Empty Event Output
|
||||
// <i> Indicate whether Data Buffer Empty Event is enabled and generated when the Data Buffer register is empty or not
|
||||
// <id> dac_arch_emptyeo_1
|
||||
#ifndef CONF_DAC_EMPTYEO1
|
||||
#define CONF_DAC_EMPTYEO1 0
|
||||
#endif
|
||||
|
||||
// <q> Start Conversion Event Input DAC 1
|
||||
// <i> Indicate whether Start input event is enabled
|
||||
// <id> dac_arch_startei_1
|
||||
#ifndef CONF_DAC_STARTEI1
|
||||
#define CONF_DAC_STARTEI1 0
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_DAC_CONFIG_H
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,924 @@
|
|||
// Circuit Python SAMD51 clock tree:
|
||||
// DFLL48M (with USBCRM on to sync with external USB ref) -> GCLK1, GCLK5, GCLK6
|
||||
// GCLK1 (48MHz) -> 48 MHz peripherals
|
||||
// GCLK5 (48 MHz divided down to 2 MHz) -> DPLL0
|
||||
// DPLL0 (multiplied up to 120 MHz) -> GCLK0, GCLK4 (output for monitoring)
|
||||
// GCLK6 (48 MHz divided down to 12 MHz) -> DAC
|
||||
|
||||
// We'd like to use XOSC32K as a ref for DFLL48M on boards with a 32kHz crystal,
|
||||
// but haven't figured that out yet.
|
||||
|
||||
// Used in hpl/core/hpl_init.c to define which clocks should be initialized first.
|
||||
// Not clear why all these need to be specified, but it doesn't work properly otherwise.
|
||||
|
||||
//#define CIRCUITPY_GCLK_INIT_1ST (1 << 0 | 1 << 1 | 1 << 3 | 1 <<5)
|
||||
#define CIRCUITPY_GCLK_INIT_1ST 0xffff
|
||||
|
||||
/* Auto-generated config file hpl_gclk_config.h */
|
||||
#ifndef HPL_GCLK_CONFIG_H
|
||||
#define HPL_GCLK_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <e> Generic clock generator 0 configuration
|
||||
// <i> Indicates whether generic clock 0 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_0
|
||||
#ifndef CONF_GCLK_GENERATOR_0_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_0_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 0 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 0
|
||||
// <id> gclk_gen_0_oscillator
|
||||
#ifndef CONF_GCLK_GEN_0_SOURCE
|
||||
#define CONF_GCLK_GEN_0_SOURCE GCLK_GENCTRL_SRC_DPLL0
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_0_runstdby
|
||||
#ifndef CONF_GCLK_GEN_0_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_0_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_0_div_sel
|
||||
#ifndef CONF_GCLK_GEN_0_DIVSEL
|
||||
#define CONF_GCLK_GEN_0_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_0_oe
|
||||
#ifndef CONF_GCLK_GEN_0_OE
|
||||
#define CONF_GCLK_GEN_0_OE 1
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_0_oov
|
||||
#ifndef CONF_GCLK_GEN_0_OOV
|
||||
#define CONF_GCLK_GEN_0_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_0_idc
|
||||
#ifndef CONF_GCLK_GEN_0_IDC
|
||||
#define CONF_GCLK_GEN_0_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_0_enable
|
||||
#ifndef CONF_GCLK_GEN_0_GENEN
|
||||
#define CONF_GCLK_GEN_0_GENEN 1
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 0 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_0_div
|
||||
#ifndef CONF_GCLK_GEN_0_DIV
|
||||
#define CONF_GCLK_GEN_0_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 1 configuration
|
||||
// <i> Indicates whether generic clock 1 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_1
|
||||
#ifndef CONF_GCLK_GENERATOR_1_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_1_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 1 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 1
|
||||
// <id> gclk_gen_1_oscillator
|
||||
#ifndef CONF_GCLK_GEN_1_SOURCE
|
||||
#define CONF_GCLK_GEN_1_SOURCE GCLK_GENCTRL_SRC_DFLL
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_1_runstdby
|
||||
#ifndef CONF_GCLK_GEN_1_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_1_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_1_div_sel
|
||||
#ifndef CONF_GCLK_GEN_1_DIVSEL
|
||||
#define CONF_GCLK_GEN_1_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_1_oe
|
||||
#ifndef CONF_GCLK_GEN_1_OE
|
||||
#define CONF_GCLK_GEN_1_OE 1
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_1_oov
|
||||
#ifndef CONF_GCLK_GEN_1_OOV
|
||||
#define CONF_GCLK_GEN_1_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_1_idc
|
||||
#ifndef CONF_GCLK_GEN_1_IDC
|
||||
#define CONF_GCLK_GEN_1_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_1_enable
|
||||
#ifndef CONF_GCLK_GEN_1_GENEN
|
||||
#define CONF_GCLK_GEN_1_GENEN 1
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 1 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_1_div
|
||||
#ifndef CONF_GCLK_GEN_1_DIV
|
||||
#define CONF_GCLK_GEN_1_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 2 configuration
|
||||
// <i> Indicates whether generic clock 2 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_2
|
||||
#ifndef CONF_GCLK_GENERATOR_2_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_2_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 2 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 2
|
||||
// <id> gclk_gen_2_oscillator
|
||||
#ifndef CONF_GCLK_GEN_2_SOURCE
|
||||
#define CONF_GCLK_GEN_2_SOURCE GCLK_GENCTRL_SRC_OSCULP32K
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_2_runstdby
|
||||
#ifndef CONF_GCLK_GEN_2_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_2_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_2_div_sel
|
||||
#ifndef CONF_GCLK_GEN_2_DIVSEL
|
||||
#define CONF_GCLK_GEN_2_DIVSEL 1
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_2_oe
|
||||
#ifndef CONF_GCLK_GEN_2_OE
|
||||
#define CONF_GCLK_GEN_2_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_2_oov
|
||||
#ifndef CONF_GCLK_GEN_2_OOV
|
||||
#define CONF_GCLK_GEN_2_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_2_idc
|
||||
#ifndef CONF_GCLK_GEN_2_IDC
|
||||
#define CONF_GCLK_GEN_2_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_2_enable
|
||||
#ifndef CONF_GCLK_GEN_2_GENEN
|
||||
#define CONF_GCLK_GEN_2_GENEN 1
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 2 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_2_div
|
||||
#ifndef CONF_GCLK_GEN_2_DIV
|
||||
#define CONF_GCLK_GEN_2_DIV 4
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 3 configuration
|
||||
// <i> Indicates whether generic clock 3 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_3
|
||||
#ifndef CONF_GCLK_GENERATOR_3_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_3_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 3 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 3
|
||||
// <id> gclk_gen_3_oscillator
|
||||
#ifndef CONF_GCLK_GEN_3_SOURCE
|
||||
#define CONF_GCLK_GEN_3_SOURCE GCLK_GENCTRL_SRC_XOSC32K
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_3_runstdby
|
||||
#ifndef CONF_GCLK_GEN_3_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_3_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_3_div_sel
|
||||
#ifndef CONF_GCLK_GEN_3_DIVSEL
|
||||
#define CONF_GCLK_GEN_3_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_3_oe
|
||||
#ifndef CONF_GCLK_GEN_3_OE
|
||||
#define CONF_GCLK_GEN_3_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_3_oov
|
||||
#ifndef CONF_GCLK_GEN_3_OOV
|
||||
#define CONF_GCLK_GEN_3_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_3_idc
|
||||
#ifndef CONF_GCLK_GEN_3_IDC
|
||||
#define CONF_GCLK_GEN_3_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_3_enable
|
||||
#ifndef CONF_GCLK_GEN_3_GENEN
|
||||
#define CONF_GCLK_GEN_3_GENEN 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 3 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_3_div
|
||||
#ifndef CONF_GCLK_GEN_3_DIV
|
||||
#define CONF_GCLK_GEN_3_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 4 configuration
|
||||
// <i> Indicates whether generic clock 4 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_4
|
||||
#ifndef CONF_GCLK_GENERATOR_4_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_4_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 4 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 4
|
||||
// <id> gclk_gen_4_oscillator
|
||||
#ifndef CONF_GCLK_GEN_4_SOURCE
|
||||
#define CONF_GCLK_GEN_4_SOURCE GCLK_GENCTRL_SRC_DPLL0
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_4_runstdby
|
||||
#ifndef CONF_GCLK_GEN_4_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_4_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_4_div_sel
|
||||
#ifndef CONF_GCLK_GEN_4_DIVSEL
|
||||
#define CONF_GCLK_GEN_4_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_4_oe
|
||||
#ifndef CONF_GCLK_GEN_4_OE
|
||||
#define CONF_GCLK_GEN_4_OE 1
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_4_oov
|
||||
#ifndef CONF_GCLK_GEN_4_OOV
|
||||
#define CONF_GCLK_GEN_4_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_4_idc
|
||||
#ifndef CONF_GCLK_GEN_4_IDC
|
||||
#define CONF_GCLK_GEN_4_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_4_enable
|
||||
#ifndef CONF_GCLK_GEN_4_GENEN
|
||||
#define CONF_GCLK_GEN_4_GENEN 1
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 4 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_4_div
|
||||
#ifndef CONF_GCLK_GEN_4_DIV
|
||||
#define CONF_GCLK_GEN_4_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 5 configuration
|
||||
// <i> Indicates whether generic clock 5 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_5
|
||||
#ifndef CONF_GCLK_GENERATOR_5_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_5_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 5 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 5
|
||||
// <id> gclk_gen_5_oscillator
|
||||
#ifndef CONF_GCLK_GEN_5_SOURCE
|
||||
#define CONF_GCLK_GEN_5_SOURCE GCLK_GENCTRL_SRC_DFLL
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_5_runstdby
|
||||
#ifndef CONF_GCLK_GEN_5_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_5_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_5_div_sel
|
||||
#ifndef CONF_GCLK_GEN_5_DIVSEL
|
||||
#define CONF_GCLK_GEN_5_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_5_oe
|
||||
#ifndef CONF_GCLK_GEN_5_OE
|
||||
#define CONF_GCLK_GEN_5_OE 1
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_5_oov
|
||||
#ifndef CONF_GCLK_GEN_5_OOV
|
||||
#define CONF_GCLK_GEN_5_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_5_idc
|
||||
#ifndef CONF_GCLK_GEN_5_IDC
|
||||
#define CONF_GCLK_GEN_5_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_5_enable
|
||||
#ifndef CONF_GCLK_GEN_5_GENEN
|
||||
#define CONF_GCLK_GEN_5_GENEN 1
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 5 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_5_div
|
||||
#ifndef CONF_GCLK_GEN_5_DIV
|
||||
#define CONF_GCLK_GEN_5_DIV 24
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 6 configuration
|
||||
// <i> Indicates whether generic clock 6 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_6
|
||||
#ifndef CONF_GCLK_GENERATOR_6_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_6_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 6 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 6
|
||||
// <id> gclk_gen_6_oscillator
|
||||
#ifndef CONF_GCLK_GEN_6_SOURCE
|
||||
#define CONF_GCLK_GEN_6_SOURCE GCLK_GENCTRL_SRC_DFLL
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_6_runstdby
|
||||
#ifndef CONF_GCLK_GEN_6_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_6_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_6_div_sel
|
||||
#ifndef CONF_GCLK_GEN_6_DIVSEL
|
||||
#define CONF_GCLK_GEN_6_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_6_oe
|
||||
#ifndef CONF_GCLK_GEN_6_OE
|
||||
#define CONF_GCLK_GEN_6_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_6_oov
|
||||
#ifndef CONF_GCLK_GEN_6_OOV
|
||||
#define CONF_GCLK_GEN_6_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_6_idc
|
||||
#ifndef CONF_GCLK_GEN_6_IDC
|
||||
#define CONF_GCLK_GEN_6_IDC 1
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_6_enable
|
||||
#ifndef CONF_GCLK_GEN_6_GENEN
|
||||
#define CONF_GCLK_GEN_6_GENEN 1
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 6 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_6_div
|
||||
#ifndef CONF_GCLK_GEN_6_DIV
|
||||
#define CONF_GCLK_GEN_6_DIV 4
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 7 configuration
|
||||
// <i> Indicates whether generic clock 7 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_7
|
||||
#ifndef CONF_GCLK_GENERATOR_7_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_7_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 7 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 7
|
||||
// <id> gclk_gen_7_oscillator
|
||||
#ifndef CONF_GCLK_GEN_7_SOURCE
|
||||
#define CONF_GCLK_GEN_7_SOURCE GCLK_GENCTRL_SRC_XOSC1
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_7_runstdby
|
||||
#ifndef CONF_GCLK_GEN_7_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_7_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_7_div_sel
|
||||
#ifndef CONF_GCLK_GEN_7_DIVSEL
|
||||
#define CONF_GCLK_GEN_7_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_7_oe
|
||||
#ifndef CONF_GCLK_GEN_7_OE
|
||||
#define CONF_GCLK_GEN_7_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_7_oov
|
||||
#ifndef CONF_GCLK_GEN_7_OOV
|
||||
#define CONF_GCLK_GEN_7_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_7_idc
|
||||
#ifndef CONF_GCLK_GEN_7_IDC
|
||||
#define CONF_GCLK_GEN_7_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_7_enable
|
||||
#ifndef CONF_GCLK_GEN_7_GENEN
|
||||
#define CONF_GCLK_GEN_7_GENEN 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 7 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_7_div
|
||||
#ifndef CONF_GCLK_GEN_7_DIV
|
||||
#define CONF_GCLK_GEN_7_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 8 configuration
|
||||
// <i> Indicates whether generic clock 8 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_8
|
||||
#ifndef CONF_GCLK_GENERATOR_8_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_8_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 8 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 8
|
||||
// <id> gclk_gen_8_oscillator
|
||||
#ifndef CONF_GCLK_GEN_8_SOURCE
|
||||
#define CONF_GCLK_GEN_8_SOURCE GCLK_GENCTRL_SRC_XOSC1
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_8_runstdby
|
||||
#ifndef CONF_GCLK_GEN_8_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_8_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_8_div_sel
|
||||
#ifndef CONF_GCLK_GEN_8_DIVSEL
|
||||
#define CONF_GCLK_GEN_8_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_8_oe
|
||||
#ifndef CONF_GCLK_GEN_8_OE
|
||||
#define CONF_GCLK_GEN_8_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_8_oov
|
||||
#ifndef CONF_GCLK_GEN_8_OOV
|
||||
#define CONF_GCLK_GEN_8_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_8_idc
|
||||
#ifndef CONF_GCLK_GEN_8_IDC
|
||||
#define CONF_GCLK_GEN_8_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_8_enable
|
||||
#ifndef CONF_GCLK_GEN_8_GENEN
|
||||
#define CONF_GCLK_GEN_8_GENEN 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 8 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_8_div
|
||||
#ifndef CONF_GCLK_GEN_8_DIV
|
||||
#define CONF_GCLK_GEN_8_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 9 configuration
|
||||
// <i> Indicates whether generic clock 9 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_9
|
||||
#ifndef CONF_GCLK_GENERATOR_9_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_9_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 9 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 9
|
||||
// <id> gclk_gen_9_oscillator
|
||||
#ifndef CONF_GCLK_GEN_9_SOURCE
|
||||
#define CONF_GCLK_GEN_9_SOURCE GCLK_GENCTRL_SRC_XOSC1
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_9_runstdby
|
||||
#ifndef CONF_GCLK_GEN_9_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_9_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_9_div_sel
|
||||
#ifndef CONF_GCLK_GEN_9_DIVSEL
|
||||
#define CONF_GCLK_GEN_9_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_9_oe
|
||||
#ifndef CONF_GCLK_GEN_9_OE
|
||||
#define CONF_GCLK_GEN_9_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_9_oov
|
||||
#ifndef CONF_GCLK_GEN_9_OOV
|
||||
#define CONF_GCLK_GEN_9_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_9_idc
|
||||
#ifndef CONF_GCLK_GEN_9_IDC
|
||||
#define CONF_GCLK_GEN_9_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_9_enable
|
||||
#ifndef CONF_GCLK_GEN_9_GENEN
|
||||
#define CONF_GCLK_GEN_9_GENEN 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 9 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_9_div
|
||||
#ifndef CONF_GCLK_GEN_9_DIV
|
||||
#define CONF_GCLK_GEN_9_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 10 configuration
|
||||
// <i> Indicates whether generic clock 10 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_10
|
||||
#ifndef CONF_GCLK_GENERATOR_10_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_10_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 10 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 10
|
||||
// <id> gclk_gen_10_oscillator
|
||||
#ifndef CONF_GCLK_GEN_10_SOURCE
|
||||
#define CONF_GCLK_GEN_10_SOURCE GCLK_GENCTRL_SRC_XOSC1
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_10_runstdby
|
||||
#ifndef CONF_GCLK_GEN_10_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_10_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_10_div_sel
|
||||
#ifndef CONF_GCLK_GEN_10_DIVSEL
|
||||
#define CONF_GCLK_GEN_10_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_10_oe
|
||||
#ifndef CONF_GCLK_GEN_10_OE
|
||||
#define CONF_GCLK_GEN_10_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_10_oov
|
||||
#ifndef CONF_GCLK_GEN_10_OOV
|
||||
#define CONF_GCLK_GEN_10_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_10_idc
|
||||
#ifndef CONF_GCLK_GEN_10_IDC
|
||||
#define CONF_GCLK_GEN_10_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_10_enable
|
||||
#ifndef CONF_GCLK_GEN_10_GENEN
|
||||
#define CONF_GCLK_GEN_10_GENEN 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 10 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_10_div
|
||||
#ifndef CONF_GCLK_GEN_10_DIV
|
||||
#define CONF_GCLK_GEN_10_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> Generic clock generator 11 configuration
|
||||
// <i> Indicates whether generic clock 11 configuration is enabled or not
|
||||
// <id> enable_gclk_gen_11
|
||||
#ifndef CONF_GCLK_GENERATOR_11_CONFIG
|
||||
#define CONF_GCLK_GENERATOR_11_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <h> Generic Clock Generator Control
|
||||
// <y> Generic clock generator 11 source// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_GENCTRL_SRC_GCLKIN"> Generic clock generator input pad
|
||||
// <GCLK_GENCTRL_SRC_GCLKGEN1"> Generic clock generator 1
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_DFLL"> Digital Frequency Locked Loop (DFLL48M)
|
||||
// <GCLK_GENCTRL_SRC_DPLL0"> Digital Phase Locked Loop (DPLL0)
|
||||
// <GCLK_GENCTRL_SRC_DPLL1"> Digital Phase Locked Loop (DPLL1)
|
||||
// <i> This defines the clock source for generic clock generator 11
|
||||
// <id> gclk_gen_11_oscillator
|
||||
#ifndef CONF_GCLK_GEN_11_SOURCE
|
||||
#define CONF_GCLK_GEN_11_SOURCE GCLK_GENCTRL_SRC_XOSC1
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> gclk_arch_gen_11_runstdby
|
||||
#ifndef CONF_GCLK_GEN_11_RUNSTDBY
|
||||
#define CONF_GCLK_GEN_11_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Divide Selection
|
||||
// <i> Indicates whether Divide Selection is enabled or not
|
||||
//<id> gclk_gen_11_div_sel
|
||||
#ifndef CONF_GCLK_GEN_11_DIVSEL
|
||||
#define CONF_GCLK_GEN_11_DIVSEL 0
|
||||
#endif
|
||||
|
||||
// <q> Output Enable
|
||||
// <i> Indicates whether Output Enable is enabled or not
|
||||
// <id> gclk_arch_gen_11_oe
|
||||
#ifndef CONF_GCLK_GEN_11_OE
|
||||
#define CONF_GCLK_GEN_11_OE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Off Value
|
||||
// <i> Indicates whether Output Off Value is enabled or not
|
||||
// <id> gclk_arch_gen_11_oov
|
||||
#ifndef CONF_GCLK_GEN_11_OOV
|
||||
#define CONF_GCLK_GEN_11_OOV 0
|
||||
#endif
|
||||
|
||||
// <q> Improve Duty Cycle
|
||||
// <i> Indicates whether Improve Duty Cycle is enabled or not
|
||||
// <id> gclk_arch_gen_11_idc
|
||||
#ifndef CONF_GCLK_GEN_11_IDC
|
||||
#define CONF_GCLK_GEN_11_IDC 0
|
||||
#endif
|
||||
|
||||
// <q> Generic Clock Generator Enable
|
||||
// <i> Indicates whether Generic Clock Generator Enable is enabled or not
|
||||
// <id> gclk_arch_gen_11_enable
|
||||
#ifndef CONF_GCLK_GEN_11_GENEN
|
||||
#define CONF_GCLK_GEN_11_GENEN 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
//<h> Generic Clock Generator Division
|
||||
//<o> Generic clock generator 11 division <0x0000-0xFFFF>
|
||||
// <id> gclk_gen_11_div
|
||||
#ifndef CONF_GCLK_GEN_11_DIV
|
||||
#define CONF_GCLK_GEN_11_DIV 1
|
||||
#endif
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_GCLK_CONFIG_H
|
|
@ -0,0 +1,104 @@
|
|||
/* Auto-generated config file hpl_mclk_config.h */
|
||||
#ifndef HPL_MCLK_CONFIG_H
|
||||
#define HPL_MCLK_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
#include <peripheral_clk_config.h>
|
||||
|
||||
// <e> System Configuration
|
||||
// <i> Indicates whether configuration for system is enabled or not
|
||||
// <id> enable_cpu_clock
|
||||
#ifndef CONF_SYSTEM_CONFIG
|
||||
#define CONF_SYSTEM_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> Basic settings
|
||||
// <y> CPU Clock source
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
// <i> This defines the clock source for the CPU
|
||||
// <id> cpu_clock_source
|
||||
#ifndef CONF_CPU_SRC
|
||||
#define CONF_CPU_SRC GCLK_PCHCTRL_GEN_GCLK0_Val
|
||||
#endif
|
||||
|
||||
// <y> CPU Clock Division Factor
|
||||
// <MCLK_CPUDIV_DIV_DIV1_Val"> 1
|
||||
// <MCLK_CPUDIV_DIV_DIV2_Val"> 2
|
||||
// <MCLK_CPUDIV_DIV_DIV4_Val"> 4
|
||||
// <MCLK_CPUDIV_DIV_DIV8_Val"> 8
|
||||
// <MCLK_CPUDIV_DIV_DIV16_Val"> 16
|
||||
// <MCLK_CPUDIV_DIV_DIV32_Val"> 32
|
||||
// <MCLK_CPUDIV_DIV_DIV64_Val"> 64
|
||||
// <MCLK_CPUDIV_DIV_DIV128_Val"> 128
|
||||
// <i> Prescalar for CPU clock
|
||||
// <id> cpu_div
|
||||
#ifndef CONF_MCLK_CPUDIV
|
||||
#define CONF_MCLK_CPUDIV MCLK_CPUDIV_DIV_DIV1_Val
|
||||
#endif
|
||||
// <y> Low Power Clock Division
|
||||
// <MCLK_LPDIV_LPDIV_DIV1_Val"> Divide by 1
|
||||
// <MCLK_LPDIV_LPDIV_DIV2_Val"> Divide by 2
|
||||
// <MCLK_LPDIV_LPDIV_DIV4_Val"> Divide by 4
|
||||
// <MCLK_LPDIV_LPDIV_DIV8_Val"> Divide by 8
|
||||
// <MCLK_LPDIV_LPDIV_DIV16_Val"> Divide by 16
|
||||
// <MCLK_LPDIV_LPDIV_DIV32_Val"> Divide by 32
|
||||
// <MCLK_LPDIV_LPDIV_DIV64_Val"> Divide by 64
|
||||
// <MCLK_LPDIV_LPDIV_DIV128_Val"> Divide by 128
|
||||
// <id> mclk_arch_lpdiv
|
||||
#ifndef CONF_MCLK_LPDIV
|
||||
#define CONF_MCLK_LPDIV MCLK_LPDIV_LPDIV_DIV4_Val
|
||||
#endif
|
||||
|
||||
// <y> Backup Clock Division
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV1_Val"> Divide by 1
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV2_Val"> Divide by 2
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV4_Val"> Divide by 4
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV8_Val"> Divide by 8
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV16_Val"> Divide by 16
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV32_Val"> Divide by 32
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV64_Val"> Divide by 64
|
||||
// <MCLK_BUPDIV_BUPDIV_DIV128_Val"> Divide by 128
|
||||
// <id> mclk_arch_bupdiv
|
||||
#ifndef CONF_MCLK_BUPDIV
|
||||
#define CONF_MCLK_BUPDIV MCLK_BUPDIV_BUPDIV_DIV8_Val
|
||||
#endif
|
||||
// <y> High-Speed Clock Division
|
||||
// <MCLK_HSDIV_DIV_DIV1_Val"> Divide by 1
|
||||
// <id> mclk_arch_hsdiv
|
||||
#ifndef CONF_MCLK_HSDIV
|
||||
#define CONF_MCLK_HSDIV MCLK_HSDIV_DIV_DIV1_Val
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> NVM Settings
|
||||
// <o> NVM Wait States
|
||||
// <i> These bits select the number of wait states for a read operation.
|
||||
// <0=> 0
|
||||
// <1=> 1
|
||||
// <2=> 2
|
||||
// <3=> 3
|
||||
// <4=> 4
|
||||
// <5=> 5
|
||||
// <6=> 6
|
||||
// <7=> 7
|
||||
// <8=> 8
|
||||
// <9=> 9
|
||||
// <10=> 10
|
||||
// <11=> 11
|
||||
// <12=> 12
|
||||
// <13=> 13
|
||||
// <14=> 14
|
||||
// <15=> 15
|
||||
// <id> nvm_wait_states
|
||||
#ifndef CONF_NVM_WAIT_STATE
|
||||
#define CONF_NVM_WAIT_STATE 0
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// </e>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_MCLK_CONFIG_H
|
|
@ -0,0 +1,36 @@
|
|||
/* Auto-generated config file hpl_nvmctrl_config.h */
|
||||
#ifndef HPL_NVMCTRL_CONFIG_H
|
||||
#define HPL_NVMCTRL_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <h> Basic Settings
|
||||
|
||||
// <o> Power Reduction Mode During Sleep
|
||||
// <0x00=> Wake On Access
|
||||
// <0x01=> Wake Up Instant
|
||||
// <0x03=> Disabled
|
||||
// <id> nvm_arch_sleepprm
|
||||
#ifndef CONF_NVM_SLEEPPRM
|
||||
#define CONF_NVM_SLEEPPRM 0
|
||||
#endif
|
||||
|
||||
// <q> AHB0 Cache Disable
|
||||
// <i> Indicate whether AHB0 cache is disable or not
|
||||
// <id> nvm_arch_cache0
|
||||
#ifndef CONF_NVM_CACHE0
|
||||
#define CONF_NVM_CACHE0 1
|
||||
#endif
|
||||
|
||||
// <q> AHB1 Cache Disable
|
||||
// <i> Indicate whether AHB1 cache is disable or not
|
||||
// <id> nvm_arch_cache1
|
||||
#ifndef CONF_NVM_CACHE1
|
||||
#define CONF_NVM_CACHE1 1
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_NVMCTRL_CONFIG_H
|
|
@ -0,0 +1,163 @@
|
|||
/* Auto-generated config file hpl_osc32kctrl_config.h */
|
||||
#ifndef HPL_OSC32KCTRL_CONFIG_H
|
||||
#define HPL_OSC32KCTRL_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <e> RTC Source configuration
|
||||
// <id> enable_rtc_source
|
||||
#ifndef CONF_RTCCTRL_CONFIG
|
||||
#define CONF_RTCCTRL_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <h> RTC source control
|
||||
// <y> RTC Clock Source Selection
|
||||
// <GCLK_GENCTRL_SRC_OSCULP32K"> 32kHz Ultra Low Power Internal Oscillator (OSCULP32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <i> This defines the clock source for RTC
|
||||
// <id> rtc_source_oscillator
|
||||
#ifndef CONF_RTCCTRL_SRC
|
||||
#define CONF_RTCCTRL_SRC GCLK_GENCTRL_SRC_OSCULP32K
|
||||
#endif
|
||||
|
||||
// <q> Use 1 kHz output
|
||||
// <id> rtc_1khz_selection
|
||||
#ifndef CONF_RTCCTRL_1KHZ
|
||||
#define CONF_RTCCTRL_1KHZ 1
|
||||
#endif
|
||||
|
||||
#if CONF_RTCCTRL_SRC == GCLK_GENCTRL_SRC_OSCULP32K
|
||||
#define CONF_RTCCTRL (CONF_RTCCTRL_1KHZ ? OSC32KCTRL_RTCCTRL_RTCSEL_ULP1K_Val : OSC32KCTRL_RTCCTRL_RTCSEL_ULP32K_Val)
|
||||
#elif CONF_RTCCTRL_SRC == GCLK_GENCTRL_SRC_XOSC32K
|
||||
#define CONF_RTCCTRL (CONF_RTCCTRL_1KHZ ? OSC32KCTRL_RTCCTRL_RTCSEL_XOSC1K_Val : OSC32KCTRL_RTCCTRL_RTCSEL_XOSC32K_Val)
|
||||
#else
|
||||
#error unexpected CONF_RTCCTRL_SRC
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> 32kHz External Crystal Oscillator Configuration
|
||||
// <i> Indicates whether configuration for External 32K Osc is enabled or not
|
||||
// <id> enable_xosc32k
|
||||
#ifndef CONF_XOSC32K_CONFIG
|
||||
#define CONF_XOSC32K_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> 32kHz External Crystal Oscillator Control
|
||||
// <q> Oscillator enable
|
||||
// <i> Indicates whether 32kHz External Crystal Oscillator is enabled or not
|
||||
// <id> xosc32k_arch_enable
|
||||
#ifndef CONF_XOSC32K_ENABLE
|
||||
#define CONF_XOSC32K_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <o> Start-Up Time
|
||||
// <0x0=>62592us
|
||||
// <0x1=>125092us
|
||||
// <0x2=>500092us
|
||||
// <0x3=>1000092us
|
||||
// <0x4=>2000092us
|
||||
// <0x5=>4000092us
|
||||
// <0x6=>8000092us
|
||||
// <id> xosc32k_arch_startup
|
||||
#ifndef CONF_XOSC32K_STARTUP
|
||||
#define CONF_XOSC32K_STARTUP 0x0
|
||||
#endif
|
||||
|
||||
// <q> On Demand Control
|
||||
// <i> Indicates whether On Demand Control is enabled or not
|
||||
// <id> xosc32k_arch_ondemand
|
||||
#ifndef CONF_XOSC32K_ONDEMAND
|
||||
#define CONF_XOSC32K_ONDEMAND 1
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> xosc32k_arch_runstdby
|
||||
#ifndef CONF_XOSC32K_RUNSTDBY
|
||||
#define CONF_XOSC32K_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> 1kHz Output Enable
|
||||
// <i> Indicates whether 1kHz Output is enabled or not
|
||||
// <id> xosc32k_arch_en1k
|
||||
#ifndef CONF_XOSC32K_EN1K
|
||||
#define CONF_XOSC32K_EN1K 0
|
||||
#endif
|
||||
|
||||
// <q> 32kHz Output Enable
|
||||
// <i> Indicates whether 32kHz Output is enabled or not
|
||||
// <id> xosc32k_arch_en32k
|
||||
#ifndef CONF_XOSC32K_EN32K
|
||||
#define CONF_XOSC32K_EN32K 0
|
||||
#endif
|
||||
|
||||
// <q> Clock Switch Back
|
||||
// <i> Indicates whether Clock Switch Back is enabled or not
|
||||
// <id> xosc32k_arch_swben
|
||||
#ifndef CONF_XOSC32K_SWBEN
|
||||
#define CONF_XOSC32K_SWBEN 0
|
||||
#endif
|
||||
|
||||
// <q> Clock Failure Detector
|
||||
// <i> Indicates whether Clock Failure Detector is enabled or not
|
||||
// <id> xosc32k_arch_cfden
|
||||
#ifndef CONF_XOSC32K_CFDEN
|
||||
#define CONF_XOSC32K_CFDEN 0
|
||||
#endif
|
||||
|
||||
// <q> Clock Failure Detector Event Out
|
||||
// <i> Indicates whether Clock Failure Detector Event Out is enabled or not
|
||||
// <id> xosc32k_arch_cfdeo
|
||||
#ifndef CONF_XOSC32K_CFDEO
|
||||
#define CONF_XOSC32K_CFDEO 0
|
||||
#endif
|
||||
|
||||
// <q> Crystal connected to XIN32/XOUT32 Enable
|
||||
// <i> Indicates whether the connections between the I/O pads and the external clock or crystal oscillator is enabled or not
|
||||
// <id> xosc32k_arch_xtalen
|
||||
#ifndef CONF_XOSC32K_XTALEN
|
||||
#define CONF_XOSC32K_XTALEN 0
|
||||
#endif
|
||||
|
||||
// <o> Control Gain Mode
|
||||
// <0x0=>Low Power mode
|
||||
// <0x1=>Standard mode
|
||||
// <0x2=>High Speed mode
|
||||
// <id> xosc32k_arch_cgm
|
||||
#ifndef CONF_XOSC32K_CGM
|
||||
#define CONF_XOSC32K_CGM 0x1
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <e> 32kHz Ultra Low Power Internal Oscillator Configuration
|
||||
// <i> Indicates whether configuration for OSCULP32K is enabled or not
|
||||
// <id> enable_osculp32k
|
||||
#ifndef CONF_OSCULP32K_CONFIG
|
||||
#define CONF_OSCULP32K_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <h> 32kHz Ultra Low Power Internal Oscillator Control
|
||||
|
||||
// <q> Oscillator Calibration Control
|
||||
// <i> Indicates whether Oscillator Calibration is enabled or not
|
||||
// <id> osculp32k_calib_enable
|
||||
#ifndef CONF_OSCULP32K_CALIB_ENABLE
|
||||
#define CONF_OSCULP32K_CALIB_ENABLE 0
|
||||
#endif
|
||||
|
||||
// <o> Oscillator Calibration <0x0-0x3F>
|
||||
// <id> osculp32k_calib
|
||||
#ifndef CONF_OSCULP32K_CALIB
|
||||
#define CONF_OSCULP32K_CALIB 0x0
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
// </e>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_OSC32KCTRL_CONFIG_H
|
|
@ -0,0 +1,634 @@
|
|||
/* Auto-generated config file hpl_oscctrl_config.h */
|
||||
#ifndef HPL_OSCCTRL_CONFIG_H
|
||||
#define HPL_OSCCTRL_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <e> External Multipurpose Crystal Oscillator Configuration
|
||||
// <i> Indicates whether configuration for XOSC0 is enabled or not
|
||||
// <id> enable_xosc0
|
||||
#ifndef CONF_XOSC0_CONFIG
|
||||
#define CONF_XOSC0_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <o> Frequency <8000000-48000000>
|
||||
// <i> Oscillation frequency of the resonator connected to the External Multipurpose Crystal Oscillator.
|
||||
// <id> xosc0_frequency
|
||||
#ifndef CONF_XOSC_FREQUENCY
|
||||
#define CONF_XOSC0_FREQUENCY 12000000
|
||||
#endif
|
||||
|
||||
// <h> External Multipurpose Crystal Oscillator Control
|
||||
// <q> Oscillator enable
|
||||
// <i> Indicates whether External Multipurpose Crystal Oscillator is enabled or not
|
||||
// <id> xosc0_arch_enable
|
||||
#ifndef CONF_XOSC0_ENABLE
|
||||
#define CONF_XOSC0_ENABLE 0
|
||||
#endif
|
||||
|
||||
// <o> Start-Up Time
|
||||
// <0x0=>31us
|
||||
// <0x1=>61us
|
||||
// <0x2=>122us
|
||||
// <0x3=>244us
|
||||
// <0x4=>488us
|
||||
// <0x5=>977us
|
||||
// <0x6=>1953us
|
||||
// <0x7=>3906us
|
||||
// <0x8=>7813us
|
||||
// <0x9=>15625us
|
||||
// <0xA=>31250us
|
||||
// <0xB=>62500us
|
||||
// <0xC=>125000us
|
||||
// <0xD=>250000us
|
||||
// <0xE=>500000us
|
||||
// <0xF=>1000000us
|
||||
// <id> xosc0_arch_startup
|
||||
#ifndef CONF_XOSC0_STARTUP
|
||||
#define CONF_XOSC0_STARTUP 0
|
||||
#endif
|
||||
|
||||
// <q> Clock Switch Back
|
||||
// <i> Indicates whether Clock Switch Back is enabled or not
|
||||
// <id> xosc0_arch_swben
|
||||
#ifndef CONF_XOSC0_SWBEN
|
||||
#define CONF_XOSC0_SWBEN 0
|
||||
#endif
|
||||
|
||||
// <q> Clock Failure Detector
|
||||
// <i> Indicates whether Clock Failure Detector is enabled or not
|
||||
// <id> xosc0_arch_cfden
|
||||
#ifndef CONF_XOSC0_CFDEN
|
||||
#define CONF_XOSC0_CFDEN 0
|
||||
#endif
|
||||
|
||||
// <q> Automatic Loop Control Enable
|
||||
// <i> Indicates whether Automatic Loop Control is enabled or not
|
||||
// <id> xosc0_arch_enalc
|
||||
#ifndef CONF_XOSC0_ENALC
|
||||
#define CONF_XOSC0_ENALC 0
|
||||
#endif
|
||||
|
||||
// <q> Low Buffer Gain Enable
|
||||
// <i> Indicates whether Low Buffer Gain is enabled or not
|
||||
// <id> xosc0_arch_lowbufgain
|
||||
#ifndef CONF_XOSC0_LOWBUFGAIN
|
||||
#define CONF_XOSC0_LOWBUFGAIN 0
|
||||
#endif
|
||||
|
||||
// <q> On Demand Control
|
||||
// <i> Indicates whether On Demand Control is enabled or not
|
||||
// <id> xosc0_arch_ondemand
|
||||
#ifndef CONF_XOSC0_ONDEMAND
|
||||
#define CONF_XOSC0_ONDEMAND 0
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> xosc0_arch_runstdby
|
||||
#ifndef CONF_XOSC0_RUNSTDBY
|
||||
#define CONF_XOSC0_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Crystal connected to XIN/XOUT Enable
|
||||
// <i> Indicates whether the connections between the I/O pads and the external clock or crystal oscillator is enabled or not
|
||||
// <id> xosc0_arch_xtalen
|
||||
#ifndef CONF_XOSC0_XTALEN
|
||||
#define CONF_XOSC0_XTALEN 0
|
||||
#endif
|
||||
//</h>
|
||||
//</e>
|
||||
|
||||
#if CONF_XOSC0_FREQUENCY >= 32000000
|
||||
#define CONF_XOSC0_CFDPRESC 0x0
|
||||
#define CONF_XOSC0_IMULT 0x7
|
||||
#define CONF_XOSC0_IPTAT 0x3
|
||||
#elif CONF_XOSC0_FREQUENCY >= 24000000
|
||||
#define CONF_XOSC0_CFDPRESC 0x1
|
||||
#define CONF_XOSC0_IMULT 0x6
|
||||
#define CONF_XOSC0_IPTAT 0x3
|
||||
#elif CONF_XOSC0_FREQUENCY >= 16000000
|
||||
#define CONF_XOSC0_CFDPRESC 0x2
|
||||
#define CONF_XOSC0_IMULT 0x5
|
||||
#define CONF_XOSC0_IPTAT 0x3
|
||||
#elif CONF_XOSC0_FREQUENCY >= 8000000
|
||||
#define CONF_XOSC0_CFDPRESC 0x3
|
||||
#define CONF_XOSC0_IMULT 0x4
|
||||
#define CONF_XOSC0_IPTAT 0x3
|
||||
#endif
|
||||
|
||||
// <e> External Multipurpose Crystal Oscillator Configuration
|
||||
// <i> Indicates whether configuration for XOSC1 is enabled or not
|
||||
// <id> enable_xosc1
|
||||
#ifndef CONF_XOSC1_CONFIG
|
||||
#define CONF_XOSC1_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <o> Frequency <8000000-48000000>
|
||||
// <i> Oscillation frequency of the resonator connected to the External Multipurpose Crystal Oscillator.
|
||||
// <id> xosc1_frequency
|
||||
#ifndef CONF_XOSC_FREQUENCY
|
||||
#define CONF_XOSC1_FREQUENCY 12000000
|
||||
#endif
|
||||
|
||||
// <h> External Multipurpose Crystal Oscillator Control
|
||||
// <q> Oscillator enable
|
||||
// <i> Indicates whether External Multipurpose Crystal Oscillator is enabled or not
|
||||
// <id> xosc1_arch_enable
|
||||
#ifndef CONF_XOSC1_ENABLE
|
||||
#define CONF_XOSC1_ENABLE 0
|
||||
#endif
|
||||
|
||||
// <o> Start-Up Time
|
||||
// <0x0=>31us
|
||||
// <0x1=>61us
|
||||
// <0x2=>122us
|
||||
// <0x3=>244us
|
||||
// <0x4=>488us
|
||||
// <0x5=>977us
|
||||
// <0x6=>1953us
|
||||
// <0x7=>3906us
|
||||
// <0x8=>7813us
|
||||
// <0x9=>15625us
|
||||
// <0xA=>31250us
|
||||
// <0xB=>62500us
|
||||
// <0xC=>125000us
|
||||
// <0xD=>250000us
|
||||
// <0xE=>500000us
|
||||
// <0xF=>1000000us
|
||||
// <id> xosc1_arch_startup
|
||||
#ifndef CONF_XOSC1_STARTUP
|
||||
#define CONF_XOSC1_STARTUP 0
|
||||
#endif
|
||||
|
||||
// <q> Clock Switch Back
|
||||
// <i> Indicates whether Clock Switch Back is enabled or not
|
||||
// <id> xosc1_arch_swben
|
||||
#ifndef CONF_XOSC1_SWBEN
|
||||
#define CONF_XOSC1_SWBEN 0
|
||||
#endif
|
||||
|
||||
// <q> Clock Failure Detector
|
||||
// <i> Indicates whether Clock Failure Detector is enabled or not
|
||||
// <id> xosc1_arch_cfden
|
||||
#ifndef CONF_XOSC1_CFDEN
|
||||
#define CONF_XOSC1_CFDEN 0
|
||||
#endif
|
||||
|
||||
// <q> Automatic Loop Control Enable
|
||||
// <i> Indicates whether Automatic Loop Control is enabled or not
|
||||
// <id> xosc1_arch_enalc
|
||||
#ifndef CONF_XOSC1_ENALC
|
||||
#define CONF_XOSC1_ENALC 0
|
||||
#endif
|
||||
|
||||
// <q> Low Buffer Gain Enable
|
||||
// <i> Indicates whether Low Buffer Gain is enabled or not
|
||||
// <id> xosc1_arch_lowbufgain
|
||||
#ifndef CONF_XOSC1_LOWBUFGAIN
|
||||
#define CONF_XOSC1_LOWBUFGAIN 0
|
||||
#endif
|
||||
|
||||
// <q> On Demand Control
|
||||
// <i> Indicates whether On Demand Control is enabled or not
|
||||
// <id> xosc1_arch_ondemand
|
||||
#ifndef CONF_XOSC1_ONDEMAND
|
||||
#define CONF_XOSC1_ONDEMAND 0
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> xosc1_arch_runstdby
|
||||
#ifndef CONF_XOSC1_RUNSTDBY
|
||||
#define CONF_XOSC1_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Crystal connected to XIN/XOUT Enable
|
||||
// <i> Indicates whether the connections between the I/O pads and the external clock or crystal oscillator is enabled or not
|
||||
// <id> xosc1_arch_xtalen
|
||||
#ifndef CONF_XOSC1_XTALEN
|
||||
#define CONF_XOSC1_XTALEN 0
|
||||
#endif
|
||||
//</h>
|
||||
//</e>
|
||||
|
||||
#if CONF_XOSC1_FREQUENCY >= 32000000
|
||||
#define CONF_XOSC1_CFDPRESC 0x0
|
||||
#define CONF_XOSC1_IMULT 0x7
|
||||
#define CONF_XOSC1_IPTAT 0x3
|
||||
#elif CONF_XOSC1_FREQUENCY >= 24000000
|
||||
#define CONF_XOSC1_CFDPRESC 0x1
|
||||
#define CONF_XOSC1_IMULT 0x6
|
||||
#define CONF_XOSC1_IPTAT 0x3
|
||||
#elif CONF_XOSC1_FREQUENCY >= 16000000
|
||||
#define CONF_XOSC1_CFDPRESC 0x2
|
||||
#define CONF_XOSC1_IMULT 0x5
|
||||
#define CONF_XOSC1_IPTAT 0x3
|
||||
#elif CONF_XOSC1_FREQUENCY >= 8000000
|
||||
#define CONF_XOSC1_CFDPRESC 0x3
|
||||
#define CONF_XOSC1_IMULT 0x4
|
||||
#define CONF_XOSC1_IPTAT 0x3
|
||||
#endif
|
||||
|
||||
// <e> DFLL Configuration
|
||||
// <i> Indicates whether configuration for DFLL is enabled or not
|
||||
// <id> enable_dfll
|
||||
#ifndef CONF_DFLL_CONFIG
|
||||
#define CONF_DFLL_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <y> Reference Clock Source
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
// <GCLK_PCHCTRL_GEN_GCLK1_Val"> Generic clock generator 1
|
||||
// <GCLK_PCHCTRL_GEN_GCLK2_Val"> Generic clock generator 2
|
||||
// <GCLK_PCHCTRL_GEN_GCLK3_Val"> Generic clock generator 3
|
||||
// <GCLK_PCHCTRL_GEN_GCLK4_Val"> Generic clock generator 4
|
||||
// <GCLK_PCHCTRL_GEN_GCLK5_Val"> Generic clock generator 5
|
||||
// <GCLK_PCHCTRL_GEN_GCLK6_Val"> Generic clock generator 6
|
||||
// <GCLK_PCHCTRL_GEN_GCLK7_Val"> Generic clock generator 7
|
||||
// <GCLK_PCHCTRL_GEN_GCLK8_Val"> Generic clock generator 8
|
||||
// <GCLK_PCHCTRL_GEN_GCLK9_Val"> Generic clock generator 9
|
||||
// <GCLK_PCHCTRL_GEN_GCLK10_Val"> Generic clock generator 10
|
||||
// <GCLK_PCHCTRL_GEN_GCLK11_Val"> Generic clock generator 11
|
||||
// <i> Select the clock source
|
||||
// <id> dfll_ref_clock
|
||||
#ifndef CONF_DFLL_GCLK
|
||||
#define CONF_DFLL_GCLK GCLK_PCHCTRL_GEN_GCLK3_Val
|
||||
#endif
|
||||
|
||||
// <h> Digital Frequency Locked Loop Control
|
||||
// <q> DFLL Enable
|
||||
// <i> Indicates whether DFLL is enabled or not
|
||||
// <id> dfll_arch_enable
|
||||
#ifndef CONF_DFLL_ENABLE
|
||||
#define CONF_DFLL_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <q> On Demand Control
|
||||
// <i> Indicates whether On Demand Control is enabled or not
|
||||
// <id> dfll_arch_ondemand
|
||||
#ifndef CONF_DFLL_ONDEMAND
|
||||
#define CONF_DFLL_ONDEMAND 0
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> dfll_arch_runstdby
|
||||
#ifndef CONF_DFLL_RUNSTDBY
|
||||
#define CONF_DFLL_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> USB Clock Recovery Mode
|
||||
// <i> Indicates whether USB Clock Recovery Mode is enabled or not
|
||||
// <id> dfll_arch_usbcrm
|
||||
#ifndef CONF_DFLL_USBCRM
|
||||
#define CONF_DFLL_USBCRM 1
|
||||
#endif
|
||||
|
||||
// <q> Wait Lock
|
||||
// <i> Indicates whether Wait Lock is enabled or not
|
||||
// <id> dfll_arch_waitlock
|
||||
#ifndef CONF_DFLL_WAITLOCK
|
||||
#define CONF_DFLL_WAITLOCK 1
|
||||
#endif
|
||||
|
||||
// <q> Bypass Coarse Lock
|
||||
// <i> Indicates whether Bypass Coarse Lock is enabled or not
|
||||
// <id> dfll_arch_bplckc
|
||||
#ifndef CONF_DFLL_BPLCKC
|
||||
#define CONF_DFLL_BPLCKC 0
|
||||
#endif
|
||||
|
||||
// <q> Quick Lock Disable
|
||||
// <i> Indicates whether Quick Lock Disable is enabled or not
|
||||
// <id> dfll_arch_qldis
|
||||
#ifndef CONF_DFLL_QLDIS
|
||||
#define CONF_DFLL_QLDIS 0
|
||||
#endif
|
||||
|
||||
// <q> Chill Cycle Disable
|
||||
// <i> Indicates whether Chill Cycle Disable is enabled or not
|
||||
// <id> dfll_arch_ccdis
|
||||
#ifndef CONF_DFLL_CCDIS
|
||||
#define CONF_DFLL_CCDIS 1
|
||||
#endif
|
||||
|
||||
// <q> Lose Lock After Wake
|
||||
// <i> Indicates whether Lose Lock After Wake is enabled or not
|
||||
// <id> dfll_arch_llaw
|
||||
#ifndef CONF_DFLL_LLAW
|
||||
#define CONF_DFLL_LLAW 0
|
||||
#endif
|
||||
|
||||
// <q> Stable DFLL Frequency
|
||||
// <i> Indicates whether Stable DFLL Frequency is enabled or not
|
||||
// <id> dfll_arch_stable
|
||||
#ifndef CONF_DFLL_STABLE
|
||||
#define CONF_DFLL_STABLE 0
|
||||
#endif
|
||||
|
||||
// <o> Operating Mode Selection
|
||||
// <0=>Open Loop Mode
|
||||
// <1=>Closed Loop Mode
|
||||
// <id> dfll_mode
|
||||
#ifndef CONF_DFLL_MODE
|
||||
#define CONF_DFLL_MODE 0x0
|
||||
#endif
|
||||
|
||||
// <o> Coarse Maximum Step <0x0-0x1F>
|
||||
// <id> dfll_arch_cstep
|
||||
#ifndef CONF_DFLL_CSTEP
|
||||
#define CONF_DFLL_CSTEP 0x1
|
||||
#endif
|
||||
|
||||
// <o> Fine Maximum Step <0x0-0xFF>
|
||||
// <id> dfll_arch_fstep
|
||||
#ifndef CONF_DFLL_FSTEP
|
||||
#define CONF_DFLL_FSTEP 0x1
|
||||
#endif
|
||||
|
||||
// <o> DFLL Multiply Factor <0x0-0xFFFF>
|
||||
// <id> dfll_mul
|
||||
#ifndef CONF_DFLL_MUL
|
||||
#define CONF_DFLL_MUL 0x0
|
||||
#endif
|
||||
|
||||
// <e> DFLL Calibration Overwrite
|
||||
// <i> Indicates whether Overwrite Calibration value of DFLL
|
||||
// <id> dfll_arch_calibration
|
||||
#ifndef CONF_DFLL_OVERWRITE_CALIBRATION
|
||||
#define CONF_DFLL_OVERWRITE_CALIBRATION 0
|
||||
#endif
|
||||
|
||||
// <o> Coarse Value <0x0-0x3F>
|
||||
// <id> dfll_arch_coarse
|
||||
#ifndef CONF_DFLL_COARSE
|
||||
#define CONF_DFLL_COARSE (0x1f / 4)
|
||||
#endif
|
||||
|
||||
// <o> Fine Value <0x0-0xFF>
|
||||
// <id> dfll_arch_fine
|
||||
#ifndef CONF_DFLL_FINE
|
||||
#define CONF_DFLL_FINE (0x80)
|
||||
#endif
|
||||
|
||||
//</e>
|
||||
|
||||
//</h>
|
||||
|
||||
//</e>
|
||||
|
||||
// <e> FDPLL0 Configuration
|
||||
// <i> Indicates whether configuration for FDPLL0 is enabled or not
|
||||
// <id> enable_fdpll0
|
||||
#ifndef CONF_FDPLL0_CONFIG
|
||||
#define CONF_FDPLL0_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <y> Reference Clock Source
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
// <GCLK_PCHCTRL_GEN_GCLK1_Val"> Generic clock generator 1
|
||||
// <GCLK_PCHCTRL_GEN_GCLK2_Val"> Generic clock generator 2
|
||||
// <GCLK_PCHCTRL_GEN_GCLK3_Val"> Generic clock generator 3
|
||||
// <GCLK_PCHCTRL_GEN_GCLK4_Val"> Generic clock generator 4
|
||||
// <GCLK_PCHCTRL_GEN_GCLK5_Val"> Generic clock generator 5
|
||||
// <GCLK_PCHCTRL_GEN_GCLK6_Val"> Generic clock generator 6
|
||||
// <GCLK_PCHCTRL_GEN_GCLK7_Val"> Generic clock generator 7
|
||||
// <GCLK_PCHCTRL_GEN_GCLK8_Val"> Generic clock generator 8
|
||||
// <GCLK_PCHCTRL_GEN_GCLK9_Val"> Generic clock generator 9
|
||||
// <GCLK_PCHCTRL_GEN_GCLK10_Val"> Generic clock generator 10
|
||||
// <GCLK_PCHCTRL_GEN_GCLK11_Val"> Generic clock generator 11
|
||||
// <i> Select the clock source.
|
||||
// <id> fdpll0_ref_clock
|
||||
#ifndef CONF_FDPLL0_GCLK
|
||||
#define CONF_FDPLL0_GCLK GCLK_PCHCTRL_GEN_GCLK5_Val
|
||||
#endif
|
||||
|
||||
// <h> Digital Phase Locked Loop Control
|
||||
// <q> Enable
|
||||
// <i> Indicates whether Digital Phase Locked Loop is enabled or not
|
||||
// <id> fdpll0_arch_enable
|
||||
#ifndef CONF_FDPLL0_ENABLE
|
||||
#define CONF_FDPLL0_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <q> On Demand Control
|
||||
// <i> Indicates whether On Demand Control is enabled or not
|
||||
// <id> fdpll0_arch_ondemand
|
||||
#ifndef CONF_FDPLL0_ONDEMAND
|
||||
#define CONF_FDPLL0_ONDEMAND 0
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> fdpll0_arch_runstdby
|
||||
#ifndef CONF_FDPLL0_RUNSTDBY
|
||||
#define CONF_FDPLL0_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <o> Loop Divider Ratio Fractional Part <0x0-0x1F>
|
||||
// <id> fdpll0_ldrfrac
|
||||
#ifndef CONF_FDPLL0_LDRFRAC
|
||||
#define CONF_FDPLL0_LDRFRAC 0x0
|
||||
#endif
|
||||
|
||||
// <o> Loop Divider Ratio Integer Part <0x0-0x1FFF>
|
||||
// <id> fdpll0_ldr
|
||||
#ifndef CONF_FDPLL0_LDR
|
||||
#define CONF_FDPLL0_LDR 59
|
||||
#endif
|
||||
|
||||
// <o> Clock Divider <0x0-0x7FF>
|
||||
// <id> fdpll0_clock_div
|
||||
#ifndef CONF_FDPLL0_DIV
|
||||
#define CONF_FDPLL0_DIV 0x0
|
||||
#endif
|
||||
|
||||
// <q> DCO Filter Enable
|
||||
// <i> Indicates whether DCO Filter Enable is enabled or not
|
||||
// <id> fdpll0_arch_dcoen
|
||||
#ifndef CONF_FDPLL0_DCOEN
|
||||
#define CONF_FDPLL0_DCOEN 0
|
||||
#endif
|
||||
|
||||
// <o> Sigma-Delta DCO Filter Selection <0x0-0x7>
|
||||
// <id> fdpll0_clock_dcofilter
|
||||
#ifndef CONF_FDPLL0_DCOFILTER
|
||||
#define CONF_FDPLL0_DCOFILTER 0x0
|
||||
#endif
|
||||
|
||||
// <q> Lock Bypass
|
||||
// <i> Indicates whether Lock Bypass is enabled or not
|
||||
// <id> fdpll0_arch_lbypass
|
||||
#ifndef CONF_FDPLL0_LBYPASS
|
||||
#define CONF_FDPLL0_LBYPASS 0
|
||||
#endif
|
||||
|
||||
// <o> Lock Time
|
||||
// <0x0=>No time-out, automatic lock
|
||||
// <0x4=>The Time-out if no lock within 800 us
|
||||
// <0x5=>The Time-out if no lock within 900 us
|
||||
// <0x6=>The Time-out if no lock within 1 ms
|
||||
// <0x7=>The Time-out if no lock within 11 ms
|
||||
// <id> fdpll0_arch_ltime
|
||||
#ifndef CONF_FDPLL0_LTIME
|
||||
#define CONF_FDPLL0_LTIME 0x0
|
||||
#endif
|
||||
|
||||
// <o> Reference Clock Selection
|
||||
// <0x0=>GCLK clock reference
|
||||
// <0x1=>XOSC32K clock reference
|
||||
// <0x2=>XOSC0 clock reference
|
||||
// <0x3=>XOSC1 clock reference
|
||||
// <id> fdpll0_arch_refclk
|
||||
#ifndef CONF_FDPLL0_REFCLK
|
||||
#define CONF_FDPLL0_REFCLK 0x0
|
||||
#endif
|
||||
|
||||
// <q> Wake Up Fast
|
||||
// <i> Indicates whether Wake Up Fast is enabled or not
|
||||
// <id> fdpll0_arch_wuf
|
||||
#ifndef CONF_FDPLL0_WUF
|
||||
#define CONF_FDPLL0_WUF 0
|
||||
#endif
|
||||
|
||||
// <o> Proportional Integral Filter Selection <0x0-0xF>
|
||||
// <id> fdpll0_arch_filter
|
||||
#ifndef CONF_FDPLL0_FILTER
|
||||
#define CONF_FDPLL0_FILTER 0x0
|
||||
#endif
|
||||
|
||||
//</h>
|
||||
//</e>
|
||||
// <e> FDPLL1 Configuration
|
||||
// <i> Indicates whether configuration for FDPLL1 is enabled or not
|
||||
// <id> enable_fdpll1
|
||||
#ifndef CONF_FDPLL1_CONFIG
|
||||
#define CONF_FDPLL1_CONFIG 0
|
||||
#endif
|
||||
|
||||
// <y> Reference Clock Source
|
||||
// <GCLK_GENCTRL_SRC_XOSC32K"> 32kHz External Crystal Oscillator (XOSC32K)
|
||||
// <GCLK_GENCTRL_SRC_XOSC0"> External Crystal Oscillator 8-48MHz (XOSC0)
|
||||
// <GCLK_GENCTRL_SRC_XOSC1"> External Crystal Oscillator 8-48MHz (XOSC1)
|
||||
// <GCLK_PCHCTRL_GEN_GCLK0_Val"> Generic clock generator 0
|
||||
// <GCLK_PCHCTRL_GEN_GCLK1_Val"> Generic clock generator 1
|
||||
// <GCLK_PCHCTRL_GEN_GCLK2_Val"> Generic clock generator 2
|
||||
// <GCLK_PCHCTRL_GEN_GCLK3_Val"> Generic clock generator 3
|
||||
// <GCLK_PCHCTRL_GEN_GCLK4_Val"> Generic clock generator 4
|
||||
// <GCLK_PCHCTRL_GEN_GCLK5_Val"> Generic clock generator 5
|
||||
// <GCLK_PCHCTRL_GEN_GCLK6_Val"> Generic clock generator 6
|
||||
// <GCLK_PCHCTRL_GEN_GCLK7_Val"> Generic clock generator 7
|
||||
// <GCLK_PCHCTRL_GEN_GCLK8_Val"> Generic clock generator 8
|
||||
// <GCLK_PCHCTRL_GEN_GCLK9_Val"> Generic clock generator 9
|
||||
// <GCLK_PCHCTRL_GEN_GCLK10_Val"> Generic clock generator 10
|
||||
// <GCLK_PCHCTRL_GEN_GCLK11_Val"> Generic clock generator 11
|
||||
// <i> Select the clock source.
|
||||
// <id> fdpll1_ref_clock
|
||||
#ifndef CONF_FDPLL1_GCLK
|
||||
#define CONF_FDPLL1_GCLK GCLK_GENCTRL_SRC_XOSC32K
|
||||
#endif
|
||||
|
||||
// <h> Digital Phase Locked Loop Control
|
||||
// <q> Enable
|
||||
// <i> Indicates whether Digital Phase Locked Loop is enabled or not
|
||||
// <id> fdpll1_arch_enable
|
||||
#ifndef CONF_FDPLL1_ENABLE
|
||||
#define CONF_FDPLL1_ENABLE 0
|
||||
#endif
|
||||
|
||||
// <q> On Demand Control
|
||||
// <i> Indicates whether On Demand Control is enabled or not
|
||||
// <id> fdpll1_arch_ondemand
|
||||
#ifndef CONF_FDPLL1_ONDEMAND
|
||||
#define CONF_FDPLL1_ONDEMAND 0
|
||||
#endif
|
||||
|
||||
// <q> Run in Standby
|
||||
// <i> Indicates whether Run in Standby is enabled or not
|
||||
// <id> fdpll1_arch_runstdby
|
||||
#ifndef CONF_FDPLL1_RUNSTDBY
|
||||
#define CONF_FDPLL1_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <o> Loop Divider Ratio Fractional Part <0x0-0x1F>
|
||||
// <id> fdpll1_ldrfrac
|
||||
#ifndef CONF_FDPLL1_LDRFRAC
|
||||
#define CONF_FDPLL1_LDRFRAC 0xd
|
||||
#endif
|
||||
|
||||
// <o> Loop Divider Ratio Integer Part <0x0-0x1FFF>
|
||||
// <id> fdpll1_ldr
|
||||
#ifndef CONF_FDPLL1_LDR
|
||||
#define CONF_FDPLL1_LDR 0x5b7
|
||||
#endif
|
||||
|
||||
// <o> Clock Divider <0x0-0x7FF>
|
||||
// <id> fdpll1_clock_div
|
||||
#ifndef CONF_FDPLL1_DIV
|
||||
#define CONF_FDPLL1_DIV 0x0
|
||||
#endif
|
||||
|
||||
// <q> DCO Filter Enable
|
||||
// <i> Indicates whether DCO Filter Enable is enabled or not
|
||||
// <id> fdpll1_arch_dcoen
|
||||
#ifndef CONF_FDPLL1_DCOEN
|
||||
#define CONF_FDPLL1_DCOEN 0
|
||||
#endif
|
||||
|
||||
// <o> Sigma-Delta DCO Filter Selection <0x0-0x7>
|
||||
// <id> fdpll1_clock_dcofilter
|
||||
#ifndef CONF_FDPLL1_DCOFILTER
|
||||
#define CONF_FDPLL1_DCOFILTER 0x0
|
||||
#endif
|
||||
|
||||
// <q> Lock Bypass
|
||||
// <i> Indicates whether Lock Bypass is enabled or not
|
||||
// <id> fdpll1_arch_lbypass
|
||||
#ifndef CONF_FDPLL1_LBYPASS
|
||||
#define CONF_FDPLL1_LBYPASS 0
|
||||
#endif
|
||||
|
||||
// <o> Lock Time
|
||||
// <0x0=>No time-out, automatic lock
|
||||
// <0x4=>The Time-out if no lock within 800 us
|
||||
// <0x5=>The Time-out if no lock within 900 us
|
||||
// <0x6=>The Time-out if no lock within 1 ms
|
||||
// <0x7=>The Time-out if no lock within 11 ms
|
||||
// <id> fdpll1_arch_ltime
|
||||
#ifndef CONF_FDPLL1_LTIME
|
||||
#define CONF_FDPLL1_LTIME 0x0
|
||||
#endif
|
||||
|
||||
// <o> Reference Clock Selection
|
||||
// <0x0=>GCLK clock reference
|
||||
// <0x1=>XOSC32K clock reference
|
||||
// <0x2=>XOSC0 clock reference
|
||||
// <0x3=>XOSC1 clock reference
|
||||
// <id> fdpll1_arch_refclk
|
||||
#ifndef CONF_FDPLL1_REFCLK
|
||||
#define CONF_FDPLL1_REFCLK 0x1
|
||||
#endif
|
||||
|
||||
// <q> Wake Up Fast
|
||||
// <i> Indicates whether Wake Up Fast is enabled or not
|
||||
// <id> fdpll1_arch_wuf
|
||||
#ifndef CONF_FDPLL1_WUF
|
||||
#define CONF_FDPLL1_WUF 0
|
||||
#endif
|
||||
|
||||
// <o> Proportional Integral Filter Selection <0x0-0xF>
|
||||
// <id> fdpll1_arch_filter
|
||||
#ifndef CONF_FDPLL1_FILTER
|
||||
#define CONF_FDPLL1_FILTER 0x0
|
||||
#endif
|
||||
|
||||
//</h>
|
||||
//</e>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_OSCCTRL_CONFIG_H
|
|
@ -0,0 +1,145 @@
|
|||
/* Auto-generated config file hpl_rtc_config.h */
|
||||
#ifndef HPL_RTC_CONFIG_H
|
||||
#define HPL_RTC_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <h> Basic settings
|
||||
|
||||
#ifndef CONF_RTC_ENABLE
|
||||
#define CONF_RTC_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <q> Force reset RTC on initialization
|
||||
// <i> Force RTC to reset on initialization.
|
||||
// <i> Note that the previous power down data in RTC is lost if it's enabled.
|
||||
// <id> rtc_arch_init_reset
|
||||
#ifndef CONF_RTC_INIT_RESET
|
||||
#define CONF_RTC_INIT_RESET 0
|
||||
#endif
|
||||
|
||||
// <o> Prescaler configuration
|
||||
// <0x0=>OFF(Peripheral clock divided by 1)
|
||||
// <0x1=>Peripheral clock divided by 1
|
||||
// <0x2=>Peripheral clock divided by 2
|
||||
// <0x3=>Peripheral clock divided by 4
|
||||
// <0x4=>Peripheral clock divided by 8
|
||||
// <0x5=>Peripheral clock divided by 16
|
||||
// <0x6=>Peripheral clock divided by 32
|
||||
// <0x7=>Peripheral clock divided by 64
|
||||
// <0x8=>Peripheral clock divided by 128
|
||||
// <0x9=>Peripheral clock divided by 256
|
||||
// <0xA=>Peripheral clock divided by 512
|
||||
// <0xB=>Peripheral clock divided by 1024
|
||||
// <i> These bits define the RTC clock relative to the peripheral clock
|
||||
// <id> rtc_arch_prescaler
|
||||
#ifndef CONF_RTC_PRESCALER
|
||||
#define CONF_RTC_PRESCALER 0xb
|
||||
|
||||
#endif
|
||||
|
||||
// <o> Compare Value <1-4294967295>
|
||||
// <i> These bits define the RTC Compare value, the ticks period is equal to reciprocal of (rtc clock/prescaler/compare value),
|
||||
// <i> by default 1K clock input, 1 prescaler, 1 compare value, the ticks period equals to 1ms.
|
||||
// <id> rtc_arch_comp_val
|
||||
|
||||
#ifndef CONF_RTC_COMP_VAL
|
||||
#define CONF_RTC_COMP_VAL 1
|
||||
|
||||
#endif
|
||||
|
||||
// <e> Event control
|
||||
// <id> rtc_event_control
|
||||
#ifndef CONF_RTC_EVENT_CONTROL_ENABLE
|
||||
#define CONF_RTC_EVENT_CONTROL_ENABLE 0
|
||||
#endif
|
||||
|
||||
// <q> Periodic Interval 0 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 0 event is enabled and will be generated
|
||||
// <id> rtc_pereo0
|
||||
#ifndef CONF_RTC_PEREO0
|
||||
#define CONF_RTC_PEREO0 0
|
||||
#endif
|
||||
// <q> Periodic Interval 1 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 1 event is enabled and will be generated
|
||||
// <id> rtc_pereo1
|
||||
#ifndef CONF_RTC_PEREO1
|
||||
#define CONF_RTC_PEREO1 0
|
||||
#endif
|
||||
// <q> Periodic Interval 2 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 2 event is enabled and will be generated
|
||||
// <id> rtc_pereo2
|
||||
#ifndef CONF_RTC_PEREO2
|
||||
#define CONF_RTC_PEREO2 0
|
||||
#endif
|
||||
// <q> Periodic Interval 3 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 3 event is enabled and will be generated
|
||||
// <id> rtc_pereo3
|
||||
#ifndef CONF_RTC_PEREO3
|
||||
#define CONF_RTC_PEREO3 0
|
||||
#endif
|
||||
// <q> Periodic Interval 4 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 4 event is enabled and will be generated
|
||||
// <id> rtc_pereo4
|
||||
#ifndef CONF_RTC_PEREO4
|
||||
#define CONF_RTC_PEREO4 0
|
||||
#endif
|
||||
// <q> Periodic Interval 5 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 5 event is enabled and will be generated
|
||||
// <id> rtc_pereo5
|
||||
#ifndef CONF_RTC_PEREO5
|
||||
#define CONF_RTC_PEREO5 0
|
||||
#endif
|
||||
// <q> Periodic Interval 6 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 6 event is enabled and will be generated
|
||||
// <id> rtc_pereo6
|
||||
#ifndef CONF_RTC_PEREO6
|
||||
#define CONF_RTC_PEREO6 0
|
||||
#endif
|
||||
// <q> Periodic Interval 7 Event Output
|
||||
// <i> This bit indicates whether Periodic interval 7 event is enabled and will be generated
|
||||
// <id> rtc_pereo7
|
||||
#ifndef CONF_RTC_PEREO7
|
||||
#define CONF_RTC_PEREO7 0
|
||||
#endif
|
||||
|
||||
// <q> Compare 0 Event Output
|
||||
// <i> This bit indicates whether Compare O event is enabled and will be generated
|
||||
// <id> rtc_cmpeo0
|
||||
#ifndef CONF_RTC_COMPE0
|
||||
#define CONF_RTC_COMPE0 0
|
||||
#endif
|
||||
|
||||
// <q> Compare 1 Event Output
|
||||
// <i> This bit indicates whether Compare 1 event is enabled and will be generated
|
||||
// <id> rtc_cmpeo1
|
||||
#ifndef CONF_RTC_COMPE1
|
||||
#define CONF_RTC_COMPE1 0
|
||||
#endif
|
||||
// <q> Overflow Event Output
|
||||
// <i> This bit indicates whether Overflow event is enabled and will be generated
|
||||
// <id> rtc_ovfeo
|
||||
#ifndef CONF_RTC_OVFEO
|
||||
#define CONF_RTC_OVFEO 0
|
||||
#endif
|
||||
|
||||
// <q> Tamper Event Output
|
||||
// <i> This bit indicates whether Tamper event output is enabled and will be generated
|
||||
// <id> rtc_tampereo
|
||||
#ifndef CONF_RTC_TAMPEREO
|
||||
#define CONF_RTC_TAMPEREO 0
|
||||
#endif
|
||||
|
||||
// <q> Tamper Event Input
|
||||
// <i> This bit indicates whether Tamper event input is enabled and will be generated
|
||||
// <id> rtc_tampevei
|
||||
#ifndef CONF_RTC_TAMPEVEI
|
||||
#define CONF_RTC_TAMPEVEI 0
|
||||
#endif
|
||||
// </e>
|
||||
|
||||
// </h>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_RTC_CONFIG_H
|
|
@ -0,0 +1,24 @@
|
|||
/* Auto-generated config file hpl_sdhc_config.h */
|
||||
#ifndef HPL_SDHC_CONFIG_H
|
||||
#define HPL_SDHC_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
#include "peripheral_clk_config.h"
|
||||
|
||||
#ifndef CONF_BASE_FREQUENCY
|
||||
#define CONF_BASE_FREQUENCY CONF_SDHC0_FREQUENCY
|
||||
#endif
|
||||
|
||||
// <o> Clock Generator Select
|
||||
// <0=> Divided Clock mode
|
||||
// <1=> Programmable Clock mode
|
||||
// <i> This defines the clock generator mode in the SDCLK Frequency Select field
|
||||
// <id> sdhc_clk_gsel
|
||||
#ifndef CONF_SDHC0_CLK_GEN_SEL
|
||||
#define CONF_SDHC0_CLK_GEN_SEL 0
|
||||
#endif
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_SDHC_CONFIG_H
|
|
@ -0,0 +1,751 @@
|
|||
// For CircuitPython, use SERCOM settings as prototypes to set
|
||||
// the default settings. This file defines these SERCOMs
|
||||
//
|
||||
// SERCOM0: SPI with hal_spi_m_sync.c driver: spi master synchronous
|
||||
// SERCOM1: I2C with hal_i2c_m_sync.c driver: i2c master synchronous
|
||||
// SERCOM2: USART with hal_usart_async.c driver: usart asynchronous
|
||||
// SERCOM3: SPI with hal_spi_m_dma.c: spi master DMA
|
||||
|
||||
#define PROTOTYPE_SERCOM_SPI_M_SYNC SERCOM0
|
||||
#define PROTOTYPE_SERCOM_SPI_M_SYNC_CLOCK_FREQUENCY CONF_GCLK_SERCOM0_CORE_FREQUENCY
|
||||
|
||||
#define PROTOTYPE_SERCOM_I2CM_SYNC SERCOM1
|
||||
|
||||
#define PROTOTYPE_SERCOM_USART_ASYNC SERCOM2
|
||||
#define PROTOTYPE_SERCOM_USART_ASYNC_CLOCK_FREQUENCY CONF_GCLK_SERCOM2_CORE_FREQUENCY
|
||||
|
||||
/* Auto-generated config file hpl_sercom_config.h */
|
||||
#ifndef HPL_SERCOM_CONFIG_H
|
||||
#define HPL_SERCOM_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
#include <peripheral_clk_config.h>
|
||||
|
||||
// Enable configuration of module
|
||||
#ifndef CONF_SERCOM_0_SPI_ENABLE
|
||||
#define CONF_SERCOM_0_SPI_ENABLE 1
|
||||
#endif
|
||||
|
||||
// Set module in SPI Master mode
|
||||
#ifndef CONF_SERCOM_0_SPI_MODE
|
||||
#define CONF_SERCOM_0_SPI_MODE 0x03
|
||||
#endif
|
||||
|
||||
// <h> Basic Configuration
|
||||
|
||||
// <q> Receive buffer enable
|
||||
// <i> Enable receive buffer to receive data from slave (RXEN)
|
||||
// <id> spi_master_rx_enable
|
||||
#ifndef CONF_SERCOM_0_SPI_RXEN
|
||||
#define CONF_SERCOM_0_SPI_RXEN 0x1
|
||||
#endif
|
||||
|
||||
// <o> Character Size
|
||||
// <i> Bit size for all characters sent over the SPI bus (CHSIZE)
|
||||
// <0x0=>8 bits
|
||||
// <0x1=>9 bits
|
||||
// <id> spi_master_character_size
|
||||
#ifndef CONF_SERCOM_0_SPI_CHSIZE
|
||||
#define CONF_SERCOM_0_SPI_CHSIZE 0x0
|
||||
#endif
|
||||
|
||||
// <o> Baud rate <1-12000000>
|
||||
// <i> The SPI data transfer rate
|
||||
// <id> spi_master_baud_rate
|
||||
#ifndef CONF_SERCOM_0_SPI_BAUD
|
||||
#define CONF_SERCOM_0_SPI_BAUD 50000
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <e> Advanced Configuration
|
||||
// <id> spi_master_advanced
|
||||
#ifndef CONF_SERCOM_0_SPI_ADVANCED
|
||||
#define CONF_SERCOM_0_SPI_ADVANCED 1
|
||||
#endif
|
||||
|
||||
// <o> Dummy byte <0x00-0x1ff>
|
||||
// <id> spi_master_dummybyte
|
||||
// <i> Dummy byte used when reading data from the slave without sending any data
|
||||
#ifndef CONF_SERCOM_0_SPI_DUMMYBYTE
|
||||
#define CONF_SERCOM_0_SPI_DUMMYBYTE 0x1ff
|
||||
#endif
|
||||
|
||||
// <o> Data Order
|
||||
// <0=>MSB first
|
||||
// <1=>LSB first
|
||||
// <i> I least significant or most significant bit is shifted out first (DORD)
|
||||
// <id> spi_master_arch_dord
|
||||
#ifndef CONF_SERCOM_0_SPI_DORD
|
||||
#define CONF_SERCOM_0_SPI_DORD 0x0
|
||||
#endif
|
||||
|
||||
// <o> Clock Polarity
|
||||
// <0=>SCK is low when idle
|
||||
// <1=>SCK is high when idle
|
||||
// <i> Determines if the leading edge is rising or falling with a corresponding opposite edge at the trailing edge. (CPOL)
|
||||
// <id> spi_master_arch_cpol
|
||||
#ifndef CONF_SERCOM_0_SPI_CPOL
|
||||
#define CONF_SERCOM_0_SPI_CPOL 0x0
|
||||
#endif
|
||||
|
||||
// <o> Clock Phase
|
||||
// <0x0=>Sample input on leading edge
|
||||
// <0x1=>Sample input on trailing edge
|
||||
// <i> Determines if input data is sampled on leading or trailing SCK edge. (CPHA)
|
||||
// <id> spi_master_arch_cpha
|
||||
#ifndef CONF_SERCOM_0_SPI_CPHA
|
||||
#define CONF_SERCOM_0_SPI_CPHA 0x0
|
||||
#endif
|
||||
|
||||
// <o> Immediate Buffer Overflow Notification
|
||||
// <i> Controls when OVF is asserted (IBON)
|
||||
// <0x0=>In data stream
|
||||
// <0x1=>On buffer overflow
|
||||
// <id> spi_master_arch_ibon
|
||||
#ifndef CONF_SERCOM_0_SPI_IBON
|
||||
#define CONF_SERCOM_0_SPI_IBON 0x0
|
||||
#endif
|
||||
|
||||
// <q> Run in stand-by
|
||||
// <i> Module stays active in stand-by sleep mode. (RUNSTDBY)
|
||||
// <id> spi_master_arch_runstdby
|
||||
#ifndef CONF_SERCOM_0_SPI_RUNSTDBY
|
||||
#define CONF_SERCOM_0_SPI_RUNSTDBY 0x0
|
||||
#endif
|
||||
|
||||
// <o> Debug Stop Mode
|
||||
// <i> Behavior of the baud-rate generator when CPU is halted by external debugger. (DBGSTOP)
|
||||
// <0=>Keep running
|
||||
// <1=>Halt
|
||||
// <id> spi_master_arch_dbgstop
|
||||
#ifndef CONF_SERCOM_0_SPI_DBGSTOP
|
||||
#define CONF_SERCOM_0_SPI_DBGSTOP 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// Address mode disabled in master mode
|
||||
#ifndef CONF_SERCOM_0_SPI_AMODE_EN
|
||||
#define CONF_SERCOM_0_SPI_AMODE_EN 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_0_SPI_AMODE
|
||||
#define CONF_SERCOM_0_SPI_AMODE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_0_SPI_ADDR
|
||||
#define CONF_SERCOM_0_SPI_ADDR 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_0_SPI_ADDRMASK
|
||||
#define CONF_SERCOM_0_SPI_ADDRMASK 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_0_SPI_SSDE
|
||||
#define CONF_SERCOM_0_SPI_SSDE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_0_SPI_MSSEN
|
||||
#define CONF_SERCOM_0_SPI_MSSEN 0x0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_0_SPI_PLOADEN
|
||||
#define CONF_SERCOM_0_SPI_PLOADEN 0
|
||||
#endif
|
||||
|
||||
// <o> Receive Data Pinout
|
||||
// <0x0=>PAD[0]
|
||||
// <0x1=>PAD[1]
|
||||
// <0x2=>PAD[2]
|
||||
// <0x3=>PAD[3]
|
||||
// <id> spi_master_rxpo
|
||||
#ifndef CONF_SERCOM_0_SPI_RXPO
|
||||
#define CONF_SERCOM_0_SPI_RXPO 2
|
||||
#endif
|
||||
|
||||
// <o> Transmit Data Pinout
|
||||
// <0x0=>PAD[0,1]_DO_SCK
|
||||
// <0x1=>PAD[2,3]_DO_SCK
|
||||
// <0x2=>PAD[3,1]_DO_SCK
|
||||
// <0x3=>PAD[0,3]_DO_SCK
|
||||
// <id> spi_master_txpo
|
||||
#ifndef CONF_SERCOM_0_SPI_TXPO
|
||||
#define CONF_SERCOM_0_SPI_TXPO 0
|
||||
#endif
|
||||
|
||||
// Calculate baud register value from requested baudrate value
|
||||
#ifndef CONF_SERCOM_0_SPI_BAUD_RATE
|
||||
#define CONF_SERCOM_0_SPI_BAUD_RATE ((float)CONF_GCLK_SERCOM0_CORE_FREQUENCY / (float)(2 * CONF_SERCOM_0_SPI_BAUD)) - 1
|
||||
#endif
|
||||
|
||||
#include <peripheral_clk_config.h>
|
||||
|
||||
#ifndef SERCOM_I2CM_CTRLA_MODE_I2C_MASTER
|
||||
#define SERCOM_I2CM_CTRLA_MODE_I2C_MASTER (5 << 2)
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_1_I2CM_ENABLE
|
||||
#define CONF_SERCOM_1_I2CM_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <h> Basic
|
||||
|
||||
// <o> I2C Bus clock speed (Hz) <1-400000>
|
||||
// <i> I2C Bus clock (SCL) speed measured in Hz
|
||||
// <id> i2c_master_baud_rate
|
||||
#ifndef CONF_SERCOM_1_I2CM_BAUD
|
||||
#define CONF_SERCOM_1_I2CM_BAUD 100000
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <e> Advanced
|
||||
// <id> i2c_master_advanced
|
||||
#ifndef CONF_SERCOM_1_I2CM_ADVANCED_CONFIG
|
||||
#define CONF_SERCOM_1_I2CM_ADVANCED_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <o> TRise (ns) <0-300>
|
||||
// <i> Determined by the bus impedance, check electric characteristics in the datasheet
|
||||
// <i> Standard Fast Mode: typical 215ns, max 300ns
|
||||
// <i> Fast Mode +: typical 60ns, max 100ns
|
||||
// <i> High Speed Mode: typical 20ns, max 40ns
|
||||
// <id> i2c_master_arch_trise
|
||||
|
||||
#ifndef CONF_SERCOM_1_I2CM_TRISE
|
||||
#define CONF_SERCOM_1_I2CM_TRISE 215
|
||||
#endif
|
||||
|
||||
// <q> Master SCL Low Extended Time-Out (MEXTTOEN)
|
||||
// <i> This enables the master SCL low extend time-out
|
||||
// <id> i2c_master_arch_mexttoen
|
||||
#ifndef CONF_SERCOM_1_I2CM_MEXTTOEN
|
||||
#define CONF_SERCOM_1_I2CM_MEXTTOEN 0
|
||||
#endif
|
||||
|
||||
// <q> Slave SCL Low Extend Time-Out (SEXTTOEN)
|
||||
// <i> Enables the slave SCL low extend time-out. If SCL is cumulatively held low for greater than 25ms from the initial START to a STOP, the slave will release its clock hold if enabled and reset the internal state machine
|
||||
// <id> i2c_master_arch_sexttoen
|
||||
#ifndef CONF_SERCOM_1_I2CM_SEXTTOEN
|
||||
#define CONF_SERCOM_1_I2CM_SEXTTOEN 0
|
||||
#endif
|
||||
|
||||
// <q> SCL Low Time-Out (LOWTOUT)
|
||||
// <i> Enables SCL low time-out. If SCL is held low for 25ms-35ms, the master will release it's clock hold
|
||||
// <id> i2c_master_arch_lowtout
|
||||
#ifndef CONF_SERCOM_1_I2CM_LOWTOUT
|
||||
#define CONF_SERCOM_1_I2CM_LOWTOUT 0
|
||||
#endif
|
||||
|
||||
// <o> Inactive Time-Out (INACTOUT)
|
||||
// <0x0=>Disabled
|
||||
// <0x1=>5-6 SCL cycle time-out(50-60us)
|
||||
// <0x2=>10-11 SCL cycle time-out(100-110us)
|
||||
// <0x3=>20-21 SCL cycle time-out(200-210us)
|
||||
// <i> Defines if inactivity time-out should be enabled, and how long the time-out should be
|
||||
// <id> i2c_master_arch_inactout
|
||||
#ifndef CONF_SERCOM_1_I2CM_INACTOUT
|
||||
#define CONF_SERCOM_1_I2CM_INACTOUT 0x0
|
||||
#endif
|
||||
|
||||
// <o> SDA Hold Time (SDAHOLD)
|
||||
// <0=>Disabled
|
||||
// <1=>50-100ns hold time
|
||||
// <2=>300-600ns hold time
|
||||
// <3=>400-800ns hold time
|
||||
// <i> Defines the SDA hold time with respect to the negative edge of SCL
|
||||
// <id> i2c_master_arch_sdahold
|
||||
#ifndef CONF_SERCOM_1_I2CM_SDAHOLD
|
||||
#define CONF_SERCOM_1_I2CM_SDAHOLD 0x2
|
||||
#endif
|
||||
|
||||
// <q> Run in stand-by
|
||||
// <i> Determine if the module shall run in standby sleep mode
|
||||
// <id> i2c_master_arch_runstdby
|
||||
#ifndef CONF_SERCOM_1_I2CM_RUNSTDBY
|
||||
#define CONF_SERCOM_1_I2CM_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <o> Debug Stop Mode
|
||||
// <i> Behavior of the baud-rate generator when CPU is halted by external debugger.
|
||||
// <0=>Keep running
|
||||
// <1=>Halt
|
||||
// <id> i2c_master_arch_dbgstop
|
||||
#ifndef CONF_SERCOM_1_I2CM_DEBUG_STOP_MODE
|
||||
#define CONF_SERCOM_1_I2CM_DEBUG_STOP_MODE 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
#ifndef CONF_SERCOM_1_I2CM_SPEED
|
||||
#define CONF_SERCOM_1_I2CM_SPEED 0x00 // Speed: Standard/Fast mode
|
||||
#endif
|
||||
#if CONF_SERCOM_1_I2CM_TRISE < 215 || CONF_SERCOM_1_I2CM_TRISE > 300
|
||||
#warning Bad I2C Rise time for Standard/Fast mode, reset to 215ns
|
||||
#undef CONF_SERCOM_1_I2CM_TRISE
|
||||
#define CONF_SERCOM_1_I2CM_TRISE 215
|
||||
#endif
|
||||
|
||||
// gclk_freq - (i2c_scl_freq * 10) - (gclk_freq * i2c_scl_freq * Trise)
|
||||
// BAUD + BAUDLOW = --------------------------------------------------------------------
|
||||
// i2c_scl_freq
|
||||
// BAUD: register value low [7:0]
|
||||
// BAUDLOW: register value high [15:8], only used for odd BAUD + BAUDLOW
|
||||
#define CONF_SERCOM_1_I2CM_BAUD_BAUDLOW \
|
||||
(((CONF_GCLK_SERCOM1_CORE_FREQUENCY - (CONF_SERCOM_1_I2CM_BAUD * 10) \
|
||||
- (CONF_SERCOM_1_I2CM_TRISE * (CONF_SERCOM_1_I2CM_BAUD / 100) * (CONF_GCLK_SERCOM1_CORE_FREQUENCY / 10000) \
|
||||
/ 1000)) \
|
||||
* 10 \
|
||||
+ 5) \
|
||||
/ (CONF_SERCOM_1_I2CM_BAUD * 10))
|
||||
#ifndef CONF_SERCOM_1_I2CM_BAUD_RATE
|
||||
#if CONF_SERCOM_1_I2CM_BAUD_BAUDLOW > (0xFF * 2)
|
||||
#warning Requested I2C baudrate too low, please check
|
||||
#define CONF_SERCOM_1_I2CM_BAUD_RATE 0xFF
|
||||
#elif CONF_SERCOM_1_I2CM_BAUD_BAUDLOW <= 1
|
||||
#warning Requested I2C baudrate too high, please check
|
||||
#define CONF_SERCOM_1_I2CM_BAUD_RATE 1
|
||||
#else
|
||||
#define CONF_SERCOM_1_I2CM_BAUD_RATE \
|
||||
((CONF_SERCOM_1_I2CM_BAUD_BAUDLOW & 0x1) \
|
||||
? (CONF_SERCOM_1_I2CM_BAUD_BAUDLOW / 2) + ((CONF_SERCOM_1_I2CM_BAUD_BAUDLOW / 2 + 1) << 8) \
|
||||
: (CONF_SERCOM_1_I2CM_BAUD_BAUDLOW / 2))
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <peripheral_clk_config.h>
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_ENABLE
|
||||
#define CONF_SERCOM_2_USART_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <h> Basic Configuration
|
||||
|
||||
// <q> Receive buffer enable
|
||||
// <i> Enable input buffer in SERCOM module
|
||||
// <id> usart_rx_enable
|
||||
#ifndef CONF_SERCOM_2_USART_RXEN
|
||||
#define CONF_SERCOM_2_USART_RXEN 1
|
||||
#endif
|
||||
|
||||
// <q> Transmitt buffer enable
|
||||
// <i> Enable output buffer in SERCOM module
|
||||
// <id> usart_tx_enable
|
||||
#ifndef CONF_SERCOM_2_USART_TXEN
|
||||
#define CONF_SERCOM_2_USART_TXEN 1
|
||||
#endif
|
||||
|
||||
// <o> Frame parity
|
||||
// <0x0=>No parity
|
||||
// <0x1=>Even parity
|
||||
// <0x2=>Odd parity
|
||||
// <i> Parity bit mode for USART frame
|
||||
// <id> usart_parity
|
||||
#ifndef CONF_SERCOM_2_USART_PARITY
|
||||
#define CONF_SERCOM_2_USART_PARITY 0x0
|
||||
#endif
|
||||
|
||||
// <o> Character Size
|
||||
// <0x0=>8 bits
|
||||
// <0x1=>9 bits
|
||||
// <0x5=>5 bits
|
||||
// <0x6=>6 bits
|
||||
// <0x7=>7 bits
|
||||
// <i> Data character size in USART frame
|
||||
// <id> usart_character_size
|
||||
#ifndef CONF_SERCOM_2_USART_CHSIZE
|
||||
#define CONF_SERCOM_2_USART_CHSIZE 0x0
|
||||
#endif
|
||||
|
||||
// <o> Stop Bit
|
||||
// <0=>One stop bit
|
||||
// <1=>Two stop bits
|
||||
// <i> Number of stop bits in USART frame
|
||||
// <id> usart_stop_bit
|
||||
#ifndef CONF_SERCOM_2_USART_SBMODE
|
||||
#define CONF_SERCOM_2_USART_SBMODE 0
|
||||
#endif
|
||||
|
||||
// <o> Baud rate <1-3000000>
|
||||
// <i> USART baud rate setting
|
||||
// <id> usart_baud_rate
|
||||
#ifndef CONF_SERCOM_2_USART_BAUD
|
||||
#define CONF_SERCOM_2_USART_BAUD 9600
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <e> Advanced configuration
|
||||
// <id> usart_advanced
|
||||
#ifndef CONF_SERCOM_2_USART_ADVANCED_CONFIG
|
||||
#define CONF_SERCOM_2_USART_ADVANCED_CONFIG 1
|
||||
#endif
|
||||
|
||||
// <q> Run in stand-by
|
||||
// <i> Keep the module running in standby sleep mode
|
||||
// <id> usart_arch_runstdby
|
||||
#ifndef CONF_SERCOM_2_USART_RUNSTDBY
|
||||
#define CONF_SERCOM_2_USART_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Immediate Buffer Overflow Notification
|
||||
// <i> Controls when the BUFOVF status bit is asserted
|
||||
// <id> usart_arch_ibon
|
||||
#ifndef CONF_SERCOM_2_USART_IBON
|
||||
#define CONF_SERCOM_2_USART_IBON 0
|
||||
#endif
|
||||
|
||||
// <q> Start of Frame Detection Enable
|
||||
// <i> Will wake the device from any sleep mode if usart_init and usart_enable was run priort to going to sleep. (receive buffer must be enabled)
|
||||
// <id> usart_arch_sfde
|
||||
#ifndef CONF_SERCOM_2_USART_SFDE
|
||||
#define CONF_SERCOM_2_USART_SFDE 0
|
||||
#endif
|
||||
|
||||
// <q> Collision Detection Enable
|
||||
// <i> Collision detection enable
|
||||
// <id> usart_arch_cloden
|
||||
#ifndef CONF_SERCOM_2_USART_CLODEN
|
||||
#define CONF_SERCOM_2_USART_CLODEN 0
|
||||
#endif
|
||||
|
||||
// <o> Operating Mode
|
||||
// <0x0=>USART with external clock
|
||||
// <0x1=>USART with internal clock
|
||||
// <i> Drive the shift register by an internal clock generated by the baud rate generator or an external clock supplied on the XCK pin.
|
||||
// <id> usart_arch_clock_mode
|
||||
#ifndef CONF_SERCOM_2_USART_MODE
|
||||
#define CONF_SERCOM_2_USART_MODE 0x1
|
||||
#endif
|
||||
|
||||
// <o> Sample Rate
|
||||
// <0x0=>16x arithmetic
|
||||
// <0x1=>16x fractional
|
||||
// <0x2=>8x arithmetic
|
||||
// <0x3=>8x fractional
|
||||
// <0x3=>3x
|
||||
// <i> How many over-sampling bits used when samling data state
|
||||
// <id> usart_arch_sampr
|
||||
#ifndef CONF_SERCOM_2_USART_SAMPR
|
||||
#define CONF_SERCOM_2_USART_SAMPR 0x0
|
||||
#endif
|
||||
|
||||
// <o> Sample Adjustment
|
||||
// <0x0=>7-8-9 (3-4-5 8-bit over-sampling)
|
||||
// <0x1=>9-10-11 (4-5-6 8-bit over-sampling)
|
||||
// <0x2=>11-12-13 (5-6-7 8-bit over-sampling)
|
||||
// <0x3=>13-14-15 (6-7-8 8-bit over-sampling)
|
||||
// <i> Adjust which samples to use for data sampling in asynchronous mode
|
||||
// <id> usart_arch_sampa
|
||||
#ifndef CONF_SERCOM_2_USART_SAMPA
|
||||
#define CONF_SERCOM_2_USART_SAMPA 0x0
|
||||
#endif
|
||||
|
||||
// <o> Fractional Part <0-7>
|
||||
// <i> Fractional part of the baud rate if baud rate generator is in fractional mode
|
||||
// <id> usart_arch_fractional
|
||||
#ifndef CONF_SERCOM_2_USART_FRACTIONAL
|
||||
#define CONF_SERCOM_2_USART_FRACTIONAL 0x0
|
||||
#endif
|
||||
|
||||
// <o> Data Order
|
||||
// <0=>MSB is transmitted first
|
||||
// <1=>LSB is transmitted first
|
||||
// <i> Data order of the data bits in the frame
|
||||
// <id> usart_arch_dord
|
||||
#ifndef CONF_SERCOM_2_USART_DORD
|
||||
#define CONF_SERCOM_2_USART_DORD 1
|
||||
#endif
|
||||
|
||||
// Does not do anything in UART mode
|
||||
#define CONF_SERCOM_2_USART_CPOL 0
|
||||
|
||||
// <o> Encoding Format
|
||||
// <0=>No encoding
|
||||
// <1=>IrDA encoded
|
||||
// <id> usart_arch_enc
|
||||
#ifndef CONF_SERCOM_2_USART_ENC
|
||||
#define CONF_SERCOM_2_USART_ENC 0
|
||||
#endif
|
||||
|
||||
// <o> Debug Stop Mode
|
||||
// <i> Behavior of the baud-rate generator when CPU is halted by external debugger.
|
||||
// <0=>Keep running
|
||||
// <1=>Halt
|
||||
// <id> usart_arch_dbgstop
|
||||
#ifndef CONF_SERCOM_2_USART_DEBUG_STOP_MODE
|
||||
#define CONF_SERCOM_2_USART_DEBUG_STOP_MODE 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_INACK
|
||||
#define CONF_SERCOM_2_USART_INACK 0x0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_DSNACK
|
||||
#define CONF_SERCOM_2_USART_DSNACK 0x0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_MAXITER
|
||||
#define CONF_SERCOM_2_USART_MAXITER 0x7
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_GTIME
|
||||
#define CONF_SERCOM_2_USART_GTIME 0x2
|
||||
#endif
|
||||
|
||||
#define CONF_SERCOM_2_USART_RXINV 0x0
|
||||
#define CONF_SERCOM_2_USART_TXINV 0x0
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_CMODE
|
||||
#define CONF_SERCOM_2_USART_CMODE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_RXPO
|
||||
#define CONF_SERCOM_2_USART_RXPO 1 /* RX is on PIN_PA08 */
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_2_USART_TXPO
|
||||
#define CONF_SERCOM_2_USART_TXPO 0 /* TX is on PIN_PA09 */
|
||||
#endif
|
||||
|
||||
/* Set correct parity settings in register interface based on PARITY setting */
|
||||
#if CONF_SERCOM_2_USART_PARITY == 0
|
||||
#define CONF_SERCOM_2_USART_PMODE 0
|
||||
#define CONF_SERCOM_2_USART_FORM 0
|
||||
#else
|
||||
#define CONF_SERCOM_2_USART_PMODE CONF_SERCOM_2_USART_PARITY - 1
|
||||
#define CONF_SERCOM_2_USART_FORM 1
|
||||
#endif
|
||||
|
||||
// Calculate BAUD register value in UART mode
|
||||
#if CONF_SERCOM_2_USART_SAMPR == 0
|
||||
#ifndef CONF_SERCOM_2_USART_BAUD_RATE
|
||||
#define CONF_SERCOM_2_USART_BAUD_RATE \
|
||||
65536 - ((65536 * 16.0f * CONF_SERCOM_2_USART_BAUD) / CONF_GCLK_SERCOM2_CORE_FREQUENCY)
|
||||
#endif
|
||||
#ifndef CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH
|
||||
#define CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH 0
|
||||
#endif
|
||||
#elif CONF_SERCOM_2_USART_SAMPR == 1
|
||||
#ifndef CONF_SERCOM_2_USART_BAUD_RATE
|
||||
#define CONF_SERCOM_2_USART_BAUD_RATE \
|
||||
((CONF_GCLK_SERCOM2_CORE_FREQUENCY) / (CONF_SERCOM_2_USART_BAUD * 16)) - (CONF_SERCOM_2_USART_FRACTIONAL / 8)
|
||||
#endif
|
||||
#ifndef CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH
|
||||
#define CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH 0
|
||||
#endif
|
||||
#elif CONF_SERCOM_2_USART_SAMPR == 2
|
||||
#ifndef CONF_SERCOM_2_USART_BAUD_RATE
|
||||
#define CONF_SERCOM_2_USART_BAUD_RATE \
|
||||
65536 - ((65536 * 8.0f * CONF_SERCOM_2_USART_BAUD) / CONF_GCLK_SERCOM2_CORE_FREQUENCY)
|
||||
#endif
|
||||
#ifndef CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH
|
||||
#define CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH 0
|
||||
#endif
|
||||
#elif CONF_SERCOM_2_USART_SAMPR == 3
|
||||
#ifndef CONF_SERCOM_2_USART_BAUD_RATE
|
||||
#define CONF_SERCOM_2_USART_BAUD_RATE \
|
||||
((CONF_GCLK_SERCOM2_CORE_FREQUENCY) / (CONF_SERCOM_2_USART_BAUD * 8)) - (CONF_SERCOM_2_USART_FRACTIONAL / 8)
|
||||
#endif
|
||||
#ifndef CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH
|
||||
#define CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH 0
|
||||
#endif
|
||||
#elif CONF_SERCOM_2_USART_SAMPR == 4
|
||||
#ifndef CONF_SERCOM_2_USART_BAUD_RATE
|
||||
#define CONF_SERCOM_2_USART_BAUD_RATE \
|
||||
65536 - ((65536 * 3.0f * CONF_SERCOM_2_USART_BAUD) / CONF_GCLK_SERCOM2_CORE_FREQUENCY)
|
||||
#endif
|
||||
#ifndef CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH
|
||||
#define CONF_SERCOM_2_USART_RECEIVE_PULSE_LENGTH 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <peripheral_clk_config.h>
|
||||
|
||||
// Enable configuration of module
|
||||
#ifndef CONF_SERCOM_3_SPI_ENABLE
|
||||
#define CONF_SERCOM_3_SPI_ENABLE 1
|
||||
#endif
|
||||
|
||||
//<o> SPI DMA TX Channel <0-32>
|
||||
//<i> This defines DMA channel to be used
|
||||
//<id> spi_master_dma_tx_channel
|
||||
#ifndef CONF_SERCOM_3_SPI_M_DMA_TX_CHANNEL
|
||||
#define CONF_SERCOM_3_SPI_M_DMA_TX_CHANNEL 0
|
||||
#endif
|
||||
|
||||
// <e> SPI RX Channel Enable
|
||||
// <id> spi_master_rx_channel
|
||||
#ifndef CONF_SERCOM_3_SPI_RX_CHANNEL
|
||||
#define CONF_SERCOM_3_SPI_RX_CHANNEL 1
|
||||
#endif
|
||||
|
||||
//<o> DMA Channel <0-32>
|
||||
//<i> This defines DMA channel to be used
|
||||
//<id> spi_master_dma_rx_channel
|
||||
#ifndef CONF_SERCOM_3_SPI_M_DMA_RX_CHANNEL
|
||||
#define CONF_SERCOM_3_SPI_M_DMA_RX_CHANNEL 1
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// Set module in SPI Master mode
|
||||
#ifndef CONF_SERCOM_3_SPI_MODE
|
||||
#define CONF_SERCOM_3_SPI_MODE 0x03
|
||||
#endif
|
||||
|
||||
// <h> Basic Configuration
|
||||
|
||||
// <q> Receive buffer enable
|
||||
// <i> Enable receive buffer to receive data from slave (RXEN)
|
||||
// <id> spi_master_rx_enable
|
||||
#ifndef CONF_SERCOM_3_SPI_RXEN
|
||||
#define CONF_SERCOM_3_SPI_RXEN 0x1
|
||||
#endif
|
||||
|
||||
// <o> Character Size
|
||||
// <i> Bit size for all characters sent over the SPI bus (CHSIZE)
|
||||
// <0x0=>8 bits
|
||||
// <0x1=>9 bits
|
||||
// <id> spi_master_character_size
|
||||
#ifndef CONF_SERCOM_3_SPI_CHSIZE
|
||||
#define CONF_SERCOM_3_SPI_CHSIZE 0x0
|
||||
#endif
|
||||
|
||||
// <o> Baud rate <1-12000000>
|
||||
// <i> The SPI data transfer rate
|
||||
// <id> spi_master_baud_rate
|
||||
#ifndef CONF_SERCOM_3_SPI_BAUD
|
||||
#define CONF_SERCOM_3_SPI_BAUD 50000
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <e> Advanced Configuration
|
||||
// <id> spi_master_advanced
|
||||
#ifndef CONF_SERCOM_3_SPI_ADVANCED
|
||||
#define CONF_SERCOM_3_SPI_ADVANCED 0
|
||||
#endif
|
||||
|
||||
// <o> Dummy byte <0x00-0x1ff>
|
||||
// <id> spi_master_dummybyte
|
||||
// <i> Dummy byte used when reading data from the slave without sending any data
|
||||
#ifndef CONF_SERCOM_3_SPI_DUMMYBYTE
|
||||
#define CONF_SERCOM_3_SPI_DUMMYBYTE 0x1ff
|
||||
#endif
|
||||
|
||||
// <o> Data Order
|
||||
// <0=>MSB first
|
||||
// <1=>LSB first
|
||||
// <i> I least significant or most significant bit is shifted out first (DORD)
|
||||
// <id> spi_master_arch_dord
|
||||
#ifndef CONF_SERCOM_3_SPI_DORD
|
||||
#define CONF_SERCOM_3_SPI_DORD 0x0
|
||||
#endif
|
||||
|
||||
// <o> Clock Polarity
|
||||
// <0=>SCK is low when idle
|
||||
// <1=>SCK is high when idle
|
||||
// <i> Determines if the leading edge is rising or falling with a corresponding opposite edge at the trailing edge. (CPOL)
|
||||
// <id> spi_master_arch_cpol
|
||||
#ifndef CONF_SERCOM_3_SPI_CPOL
|
||||
#define CONF_SERCOM_3_SPI_CPOL 0x0
|
||||
#endif
|
||||
|
||||
// <o> Clock Phase
|
||||
// <0x0=>Sample input on leading edge
|
||||
// <0x1=>Sample input on trailing edge
|
||||
// <i> Determines if input data is sampled on leading or trailing SCK edge. (CPHA)
|
||||
// <id> spi_master_arch_cpha
|
||||
#ifndef CONF_SERCOM_3_SPI_CPHA
|
||||
#define CONF_SERCOM_3_SPI_CPHA 0x0
|
||||
#endif
|
||||
|
||||
// <o> Immediate Buffer Overflow Notification
|
||||
// <i> Controls when OVF is asserted (IBON)
|
||||
// <0x0=>In data stream
|
||||
// <0x1=>On buffer overflow
|
||||
// <id> spi_master_arch_ibon
|
||||
#ifndef CONF_SERCOM_3_SPI_IBON
|
||||
#define CONF_SERCOM_3_SPI_IBON 0x0
|
||||
#endif
|
||||
|
||||
// <q> Run in stand-by
|
||||
// <i> Module stays active in stand-by sleep mode. (RUNSTDBY)
|
||||
// <id> spi_master_arch_runstdby
|
||||
#ifndef CONF_SERCOM_3_SPI_RUNSTDBY
|
||||
#define CONF_SERCOM_3_SPI_RUNSTDBY 0x0
|
||||
#endif
|
||||
|
||||
// <o> Debug Stop Mode
|
||||
// <i> Behavior of the baud-rate generator when CPU is halted by external debugger. (DBGSTOP)
|
||||
// <0=>Keep running
|
||||
// <1=>Halt
|
||||
// <id> spi_master_arch_dbgstop
|
||||
#ifndef CONF_SERCOM_3_SPI_DBGSTOP
|
||||
#define CONF_SERCOM_3_SPI_DBGSTOP 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// Address mode disabled in master mode
|
||||
#ifndef CONF_SERCOM_3_SPI_AMODE_EN
|
||||
#define CONF_SERCOM_3_SPI_AMODE_EN 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_3_SPI_AMODE
|
||||
#define CONF_SERCOM_3_SPI_AMODE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_3_SPI_ADDR
|
||||
#define CONF_SERCOM_3_SPI_ADDR 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_3_SPI_ADDRMASK
|
||||
#define CONF_SERCOM_3_SPI_ADDRMASK 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_3_SPI_SSDE
|
||||
#define CONF_SERCOM_3_SPI_SSDE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_3_SPI_MSSEN
|
||||
#define CONF_SERCOM_3_SPI_MSSEN 0x0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_SERCOM_3_SPI_PLOADEN
|
||||
#define CONF_SERCOM_3_SPI_PLOADEN 0
|
||||
#endif
|
||||
|
||||
// <o> Receive Data Pinout
|
||||
// <0x0=>PAD[0]
|
||||
// <0x1=>PAD[1]
|
||||
// <0x2=>PAD[2]
|
||||
// <0x3=>PAD[3]
|
||||
// <id> spi_master_rxpo
|
||||
#ifndef CONF_SERCOM_3_SPI_RXPO
|
||||
#define CONF_SERCOM_3_SPI_RXPO 2
|
||||
#endif
|
||||
|
||||
// <o> Transmit Data Pinout
|
||||
// <0x0=>PAD[0,1]_DO_SCK
|
||||
// <0x1=>PAD[2,3]_DO_SCK
|
||||
// <0x2=>PAD[3,1]_DO_SCK
|
||||
// <0x3=>PAD[0,3]_DO_SCK
|
||||
// <id> spi_master_txpo
|
||||
#ifndef CONF_SERCOM_3_SPI_TXPO
|
||||
#define CONF_SERCOM_3_SPI_TXPO 0
|
||||
#endif
|
||||
|
||||
// Calculate baud register value from requested baudrate value
|
||||
#ifndef CONF_SERCOM_3_SPI_BAUD_RATE
|
||||
#define CONF_SERCOM_3_SPI_BAUD_RATE ((float)CONF_GCLK_SERCOM3_CORE_FREQUENCY / (float)(2 * CONF_SERCOM_3_SPI_BAUD)) - 1
|
||||
#endif
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_SERCOM_CONFIG_H
|
|
@ -0,0 +1,18 @@
|
|||
/* Auto-generated config file hpl_systick_config.h */
|
||||
#ifndef HPL_SYSTICK_CONFIG_H
|
||||
#define HPL_SYSTICK_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <h> Advanced settings
|
||||
// <q> SysTick exception request
|
||||
// <i> Indicates whether the generation of SysTick exception is enabled or not
|
||||
// <id> systick_arch_tickint
|
||||
#ifndef CONF_SYSTICK_TICKINT
|
||||
#define CONF_SYSTICK_TICKINT 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_SYSTICK_CONFIG_H
|
|
@ -0,0 +1,209 @@
|
|||
/* Auto-generated config file hpl_tc_config.h */
|
||||
#ifndef HPL_TC_CONFIG_H
|
||||
#define HPL_TC_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
#include <peripheral_clk_config.h>
|
||||
|
||||
#ifndef CONF_TC0_ENABLE
|
||||
#define CONF_TC0_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <h> Basic settings
|
||||
// <o> Prescaler
|
||||
// <0=> No division
|
||||
// <1=> Divide by 2
|
||||
// <2=> Divide by 4
|
||||
// <3=> Divide by 8
|
||||
// <4=> Divide by 16
|
||||
// <5=> Divide by 64
|
||||
// <6=> Divide by 256
|
||||
// <7=> Divide by 1024
|
||||
// <i> This defines the prescaler value
|
||||
// <id> tc_prescaler
|
||||
#ifndef CONF_TC0_PRESCALER
|
||||
#define CONF_TC0_PRESCALER 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> PWM Waveform Output settings
|
||||
// <o> Waveform Period Value (uS) <0x00-0xFFFFFFFF>
|
||||
// <i> The unit of this value is us.
|
||||
// <id> tc_arch_wave_per_val
|
||||
#ifndef CONF_TC0_WAVE_PER_VAL
|
||||
#define CONF_TC0_WAVE_PER_VAL 0x3e8
|
||||
#endif
|
||||
|
||||
// <o> Waveform Duty Value (0.1%) <0x00-0x03E8>
|
||||
// <i> The unit of this value is 1/1000.
|
||||
// <id> tc_arch_wave_duty_val
|
||||
#ifndef CONF_TC0_WAVE_DUTY_VAL
|
||||
#define CONF_TC0_WAVE_DUTY_VAL 0x1f4
|
||||
#endif
|
||||
|
||||
/* Caculate pwm ccx register value based on WAVE_PER_VAL and Waveform Duty Value */
|
||||
#if CONF_TC0_PRESCALER < TC_CTRLA_PRESCALER_DIV64_Val
|
||||
#define CONF_TC0_CC0 \
|
||||
((uint32_t)(((double)CONF_TC0_WAVE_PER_VAL * CONF_GCLK_TC0_FREQUENCY) / 1000000 / (1 << CONF_TC0_PRESCALER) - 1))
|
||||
#define CONF_TC0_CC1 ((CONF_TC0_CC0 * CONF_TC0_WAVE_DUTY_VAL) / 1000)
|
||||
|
||||
#elif CONF_TC0_PRESCALER == TC_CTRLA_PRESCALER_DIV64_Val
|
||||
#define CONF_TC0_CC0 ((uint32_t)(((double)CONF_TC0_WAVE_PER_VAL * CONF_GCLK_TC0_FREQUENCY) / 64000000 - 1))
|
||||
#define CONF_TC0_CC1 ((CONF_TC0_CC0 * CONF_TC0_WAVE_DUTY_VAL) / 1000)
|
||||
|
||||
#elif CONF_TC0_PRESCALER == TC_CTRLA_PRESCALER_DIV256_Val
|
||||
#define CONF_TC0_CC0 ((uint32_t)(((double)CONF_TC0_WAVE_PER_VAL * CONF_GCLK_TC0_FREQUENCY) / 256000000 - 1))
|
||||
#define CONF_TC0_CC1 ((CONF_TC0_CC0 * CONF_TC0_WAVE_DUTY_VAL) / 1000)
|
||||
|
||||
#elif CONF_TC0_PRESCALER == TC_CTRLA_PRESCALER_DIV1024_Val
|
||||
#define CONF_TC0_CC0 ((uint32_t)(((double)CONF_TC0_WAVE_PER_VAL * CONF_GCLK_TC0_FREQUENCY) / 1024000000 - 1))
|
||||
#define CONF_TC0_CC1 ((CONF_TC0_CC0 * CONF_TC0_WAVE_DUTY_VAL) / 1000)
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <h> Advanced settings
|
||||
// <y> Mode
|
||||
// <TC_CTRLA_MODE_COUNT16_Val"> Counter in 16-bit mode
|
||||
// <TC_CTRLA_MODE_COUNT32_Val"> Counter in 32-bit mode
|
||||
// <i> These bits mode
|
||||
// <id> tc_mode
|
||||
#ifndef CONF_TC0_MODE
|
||||
#define CONF_TC0_MODE TC_CTRLA_MODE_COUNT16_Val
|
||||
#endif
|
||||
|
||||
// <o> Period Value <0x00000000-0xFFFFFFFF>
|
||||
// <id> tc_per
|
||||
#ifndef CONF_TC0_PER
|
||||
#define CONF_TC0_PER 0x32
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Advanced settings
|
||||
// <y> Prescaler and Counter Synchronization Selection
|
||||
// <TC_CTRLA_PRESCSYNC_GCLK_Val"> Reload or reset counter on next GCLK
|
||||
// <TC_CTRLA_PRESCSYNC_PRESC_Val"> Reload or reset counter on next prescaler clock
|
||||
// <TC_CTRLA_PRESCSYNC_RESYNC_Val"> Reload or reset counter on next GCLK and reset prescaler counter
|
||||
// <i> These bits select if on retrigger event, the Counter should be cleared or reloaded on the next GCLK_TCx clock or on the next prescaled GCLK_TCx clock.
|
||||
// <id> tc_arch_presync
|
||||
#ifndef CONF_TC0_PRESCSYNC
|
||||
#define CONF_TC0_PRESCSYNC TC_CTRLA_PRESCSYNC_GCLK_Val
|
||||
#endif
|
||||
|
||||
// <q> Run in standby
|
||||
// <i> Indicates whether the will continue running in standby sleep mode or not
|
||||
// <id> tc_arch_runstdby
|
||||
#ifndef CONF_TC0_RUNSTDBY
|
||||
#define CONF_TC0_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> On-Demand
|
||||
// <i> Indicates whether the TC0's on-demand mode is on or not
|
||||
// <id> tc_arch_ondemand
|
||||
#ifndef CONF_TC0_ONDEMAND
|
||||
#define CONF_TC0_ONDEMAND 0
|
||||
#endif
|
||||
|
||||
// <o> Auto Lock
|
||||
// <0x0=>The Lock Update bit is not affected on overflow/underflow and re-trigger event
|
||||
// <0x1=>The Lock Update bit is set on each overflow/underflow or re-trigger event
|
||||
// <id> tc_arch_alock
|
||||
#ifndef CONF_TC0_ALOCK
|
||||
#define CONF_TC0_ALOCK 0
|
||||
#endif
|
||||
|
||||
/* Commented intentionally. Timer uses fixed value. May be used by other abstractions based on TC. */
|
||||
//#define CONF_TC0_CAPTEN0 0
|
||||
//#define CONF_TC0_CAPTEN1 0
|
||||
//#define CONF_TC0_COPEN0 0
|
||||
//#define CONF_TC0_COPEN1 0
|
||||
|
||||
/* Commented intentionally. Timer uses fixed value. May be used by other abstractions based on TC. */
|
||||
//#define CONF_TC0_DIR 0
|
||||
//#define CONF_TC0_ONESHOT 0
|
||||
//#define CONF_TC0_LUPD 0
|
||||
|
||||
// <q> Debug Running Mode
|
||||
// <i> Indicates whether the Debug Running Mode is enabled or not
|
||||
// <id> tc_arch_dbgrun
|
||||
#ifndef CONF_TC0_DBGRUN
|
||||
#define CONF_TC0_DBGRUN 0
|
||||
#endif
|
||||
|
||||
// <e> Event control
|
||||
// <id> timer_event_control
|
||||
#ifndef CONF_TC0_EVENT_CONTROL_ENABLE
|
||||
#define CONF_TC0_EVENT_CONTROL_ENABLE 0
|
||||
#endif
|
||||
|
||||
// <q> Output Event On Match or Capture on Channel 0
|
||||
// <i> Enable output of event on timer tick
|
||||
// <id> tc_arch_mceo0
|
||||
#ifndef CONF_TC0_MCEO0
|
||||
#define CONF_TC0_MCEO0 0
|
||||
#endif
|
||||
|
||||
// <q> Output Event On Match or Capture on Channel 1
|
||||
// <i> Enable output of event on timer tick
|
||||
// <id> tc_arch_mceo1
|
||||
#ifndef CONF_TC0_MCEO1
|
||||
#define CONF_TC0_MCEO1 0
|
||||
#endif
|
||||
|
||||
// <q> Output Event On Timer Tick
|
||||
// <i> Enable output of event on timer tick
|
||||
// <id> tc_arch_ovfeo
|
||||
#ifndef CONF_TC0_OVFEO
|
||||
#define CONF_TC0_OVFEO 0
|
||||
#endif
|
||||
|
||||
// <q> Event Input
|
||||
// <i> Enable asynchronous input events
|
||||
// <id> tc_arch_tcei
|
||||
#ifndef CONF_TC0_TCEI
|
||||
#define CONF_TC0_TCEI 0
|
||||
#endif
|
||||
|
||||
// <q> Inverted Event Input
|
||||
// <i> Invert the asynchronous input events
|
||||
// <id> tc_arch_tcinv
|
||||
#ifndef CONF_TC0_TCINV
|
||||
#define CONF_TC0_TCINV 0
|
||||
#endif
|
||||
|
||||
// <o> Event action
|
||||
// <0=> Event action disabled
|
||||
// <1=> Start, restart or re-trigger TC on event
|
||||
// <2=> Count on event
|
||||
// <3=> Start on event
|
||||
// <4=> Time stamp capture
|
||||
// <5=> Period captured in CC0, pulse width in CC1
|
||||
// <6=> Period captured in CC1, pulse width in CC0
|
||||
// <7=> Pulse width capture
|
||||
// <i> Event which will be performed on an event
|
||||
//<id> tc_arch_evact
|
||||
#ifndef CONF_TC0_EVACT
|
||||
#define CONF_TC0_EVACT 0
|
||||
#endif
|
||||
// </e>
|
||||
|
||||
/* Commented intentionally. Timer uses fixed value. May be used by other abstractions based on TC. */
|
||||
//#define CONF_TC0_WAVEGEN TC_CTRLA_WAVEGEN_MFRQ_Val
|
||||
|
||||
/* Commented intentionally. Timer uses fixed value. May be used by other abstractions based on TC. */
|
||||
//#define CONF_TC0_INVEN0 0
|
||||
//#define CONF_TC0_INVEN1 0
|
||||
|
||||
/* Commented intentionally. Timer uses fixed value. May be used by other abstractions based on TC. */
|
||||
//#define CONF_TC0_PERBUF 0
|
||||
|
||||
/* Commented intentionally. Timer uses fixed value. May be used by other abstractions based on TC. */
|
||||
//#define CONF_TC0_CCBUF0 0
|
||||
//#define CONF_TC0_CCBUF1 0
|
||||
|
||||
// </h>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_TC_CONFIG_H
|
|
@ -0,0 +1,27 @@
|
|||
/* Auto-generated config file hpl_trng_config.h */
|
||||
#ifndef HPL_TRNG_CONFIG_H
|
||||
#define HPL_TRNG_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// <h> Advanced configurations
|
||||
|
||||
// <q> Run In Standby
|
||||
// <i> Indicates whether the TRNG works in standby mode
|
||||
// <id> trng_runstdby
|
||||
#ifndef CONF_TRNG_RUNSTDBY
|
||||
#define CONF_TRNG_RUNSTDBY 0
|
||||
#endif
|
||||
|
||||
// <q> Data Ready Event Output Enable
|
||||
// <i> Indicates whether the TRNG generates event on Data Ready
|
||||
// <id> trng_datardyeo
|
||||
#ifndef CONF_TRNG_DATARDYEO
|
||||
#define CONF_TRNG_DATARDYEO 0
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_TRNG_CONFIG_H
|
|
@ -0,0 +1,413 @@
|
|||
/* Auto-generated config file hpl_usb_config.h */
|
||||
#ifndef HPL_USB_CONFIG_H
|
||||
#define HPL_USB_CONFIG_H
|
||||
|
||||
// CIRCUITPY:
|
||||
|
||||
// Use 64-byte USB buffers for endpoint directions that are in use. They're set to 0 below otherwise.
|
||||
|
||||
#include "genhdr/autogen_usb_descriptor.h"
|
||||
|
||||
#if defined(USB_ENDPOINT_1_OUT_USED) && USB_ENDPOINT_1_OUT_USED
|
||||
#define CONF_USB_EP1_CACHE 64
|
||||
#endif
|
||||
#if defined(USB_ENDPOINT_1_IN_USED) && USB_ENDPOINT_1_IN_USED
|
||||
#define CONF_USB_EP1_I_CACHE 64
|
||||
#endif
|
||||
|
||||
#if defined(USB_ENDPOINT_2_OUT_USED) && USB_ENDPOINT_2_OUT_USED
|
||||
#define CONF_USB_EP2_CACHE 64
|
||||
#endif
|
||||
#if defined(USB_ENDPOINT_2_IN_USED) && USB_ENDPOINT_2_IN_USED
|
||||
#define CONF_USB_EP2_I_CACHE 64
|
||||
#endif
|
||||
|
||||
#if defined(USB_ENDPOINT_3_OUT_USED) && USB_ENDPOINT_3_OUT_USED
|
||||
#define CONF_USB_EP3_CACHE 64
|
||||
#endif
|
||||
#if defined(USB_ENDPOINT_3_IN_USED) && USB_ENDPOINT_3_IN_USED
|
||||
#define CONF_USB_EP3_I_CACHE 64
|
||||
#endif
|
||||
|
||||
#if defined(USB_ENDPOINT_4_OUT_USED) && USB_ENDPOINT_4_OUT_USED
|
||||
#define CONF_USB_EP4_CACHE 64
|
||||
#endif
|
||||
#if defined(USB_ENDPOINT_4_IN_USED) && USB_ENDPOINT_4_IN_USED
|
||||
#define CONF_USB_EP4_I_CACHE 64
|
||||
#endif
|
||||
|
||||
#if defined(USB_ENDPOINT_5_OUT_USED) && USB_ENDPOINT_5_OUT_USED
|
||||
#define CONF_USB_EP5_CACHE 64
|
||||
#endif
|
||||
#if defined(USB_ENDPOINT_5_IN_USED) && USB_ENDPOINT_5_IN_USED
|
||||
#define CONF_USB_EP5_I_CACHE 64
|
||||
#endif
|
||||
|
||||
#if defined(USB_ENDPOINT_6_OUT_USED) && USB_ENDPOINT_6_OUT_USED
|
||||
#define CONF_USB_EP6_CACHE 64
|
||||
#endif
|
||||
#if defined(USB_ENDPOINT_6_IN_USED) && USB_ENDPOINT_6_IN_USED
|
||||
#define CONF_USB_EP6_I_CACHE 64
|
||||
#endif
|
||||
|
||||
#if defined(USB_ENDPOINT_7_OUT_USED) && USB_ENDPOINT_7_OUT_USED
|
||||
#define CONF_USB_EP7_CACHE 64
|
||||
#endif
|
||||
#if defined(USB_ENDPOINT_7_IN_USED) && USB_ENDPOINT_7_IN_USED
|
||||
#define CONF_USB_EP7_I_CACHE 64
|
||||
#endif
|
||||
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
#define CONF_USB_N_0 0
|
||||
#define CONF_USB_N_1 1
|
||||
#define CONF_USB_N_2 2
|
||||
#define CONF_USB_N_3 3
|
||||
#define CONF_USB_N_4 4
|
||||
#define CONF_USB_N_5 5
|
||||
#define CONF_USB_N_6 6
|
||||
#define CONF_USB_N_7 7
|
||||
#define CONF_USB_N_8 8
|
||||
#define CONF_USB_N_9 9
|
||||
#define CONF_USB_N_10 10
|
||||
#define CONF_USB_N_11 11
|
||||
#define CONF_USB_N_12 12
|
||||
#define CONF_USB_N_13 13
|
||||
#define CONF_USB_N_14 14
|
||||
#define CONF_USB_N_15 15
|
||||
|
||||
#define CONF_USB_D_EP_N_MAX (USB_EPT_NUM - 1)
|
||||
#define CONF_USB_D_N_EP_MAX (CONF_USB_D_EP_N_MAX * 2 - 1)
|
||||
|
||||
// <h> USB Device HAL Configuration
|
||||
|
||||
// <y> Max number of endpoints supported
|
||||
// <i> Limits the number of endpoints (described by EP address) can be used in app.
|
||||
// NOTE(tannewt): This not only limits the number of endpoints but also the
|
||||
// addresses. In other words, even if you use endpoint 6 you need to set this to 11.
|
||||
// <CONF_USB_N_1"> 1 (EP0 only)
|
||||
// <CONF_USB_N_2"> 2 (EP0 + 1 endpoint)
|
||||
// <CONF_USB_N_3"> 3 (EP0 + 2 endpoints)
|
||||
// <CONF_USB_N_4"> 4 (EP0 + 3 endpoints)
|
||||
// <CONF_USB_N_5"> 5 (EP0 + 4 endpoints)
|
||||
// <CONF_USB_N_6"> 6 (EP0 + 5 endpoints)
|
||||
// <CONF_USB_N_7"> 7 (EP0 + 6 endpoints)
|
||||
// <CONF_USB_N_8"> 8 (EP0 + 7 endpoints)
|
||||
// <CONF_USB_D_N_EP_MAX"> Max possible (by "Max Endpoint Number" config)
|
||||
// <id> usbd_num_ep_sp
|
||||
#ifndef CONF_USB_D_NUM_EP_SP
|
||||
#define CONF_USB_D_NUM_EP_SP CONF_USB_D_N_EP_MAX
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <y> Max Endpoint Number supported
|
||||
// <i> Limits the max endpoint number.
|
||||
// <i> USB endpoint address is constructed by direction and endpoint number. Bit 8 of address set indicates the direction is IN. E.g., EP0x81 and EP0x01 have the same endpoint number, 1.
|
||||
// <i> Reduce the value according to specific device design, to cut-off memory usage.
|
||||
// <CONF_USB_N_0"> 0 (only EP0)
|
||||
// <CONF_USB_N_1"> 1 (EP 0x81 or 0x01)
|
||||
// <CONF_USB_N_2"> 2 (EP 0x82 or 0x02)
|
||||
// <CONF_USB_N_3"> 3 (EP 0x83 or 0x03)
|
||||
// <CONF_USB_N_4"> 4 (EP 0x84 or 0x04)
|
||||
// <CONF_USB_N_5"> 5 (EP 0x85 or 0x05)
|
||||
// <CONF_USB_N_6"> 6 (EP 0x86 or 0x06)
|
||||
// <CONF_USB_N_7"> 7 (EP 0x87 or 0x07)
|
||||
// <CONF_USB_EP_N_MAX"> Max possible (by HW)
|
||||
// <i> The number of physical endpoints - 1
|
||||
// <id> usbd_arch_max_ep_n
|
||||
#ifndef CONF_USB_D_MAX_EP_N
|
||||
#define CONF_USB_D_MAX_EP_N CONF_USB_D_EP_N_MAX
|
||||
#endif
|
||||
|
||||
// <y> USB Speed Limit
|
||||
// <i> Limits the working speed of the device.
|
||||
// <USB_SPEED_FS"> Full speed
|
||||
// <USB_SPEED_LS"> Low Speed
|
||||
// <id> usbd_arch_speed
|
||||
#ifndef CONF_USB_D_SPEED
|
||||
#define CONF_USB_D_SPEED USB_SPEED_FS
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP0
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> EP0 is default control endpoint, so cache must be used to be able to receive SETUP packet at any time.
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <id> usb_arch_ep0_cache
|
||||
#ifndef CONF_USB_EP0_CACHE
|
||||
#define CONF_USB_EP0_CACHE 64
|
||||
#endif
|
||||
|
||||
// <h> Cache configuration EP1
|
||||
// <o> Cache buffer size for EP1 OUT
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_arch_ep1_cache
|
||||
#ifndef CONF_USB_EP1_CACHE
|
||||
#define CONF_USB_EP1_CACHE 0
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP1 IN
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must not be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_ep1_I_CACHE
|
||||
#ifndef CONF_USB_EP1_I_CACHE
|
||||
#define CONF_USB_EP1_I_CACHE 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Cache configuration EP2
|
||||
// <o> Cache buffer size for EP2 OUT
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_arch_ep2_cache
|
||||
#ifndef CONF_USB_EP2_CACHE
|
||||
#define CONF_USB_EP2_CACHE 0
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP2 IN
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must not be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_ep2_I_CACHE
|
||||
#ifndef CONF_USB_EP2_I_CACHE
|
||||
#define CONF_USB_EP2_I_CACHE 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Cache configuration EP3
|
||||
// <o> Cache buffer size for EP3 OUT
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_arch_ep3_cache
|
||||
#ifndef CONF_USB_EP3_CACHE
|
||||
#define CONF_USB_EP3_CACHE 0
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP3 IN
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must not be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_ep3_I_CACHE
|
||||
#ifndef CONF_USB_EP3_I_CACHE
|
||||
#define CONF_USB_EP3_I_CACHE 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Cache configuration EP4
|
||||
// <o> Cache buffer size for EP4 OUT
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_arch_ep4_cache
|
||||
#ifndef CONF_USB_EP4_CACHE
|
||||
#define CONF_USB_EP4_CACHE 0
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP4 IN
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must not be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_ep4_I_CACHE
|
||||
#ifndef CONF_USB_EP4_I_CACHE
|
||||
#define CONF_USB_EP4_I_CACHE 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Cache configuration EP5
|
||||
// <o> Cache buffer size for EP5 OUT
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_arch_ep5_cache
|
||||
#ifndef CONF_USB_EP5_CACHE
|
||||
#define CONF_USB_EP5_CACHE 0
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP5 IN
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must not be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_ep5_I_CACHE
|
||||
#ifndef CONF_USB_EP5_I_CACHE
|
||||
#define CONF_USB_EP5_I_CACHE 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Cache configuration EP6
|
||||
// <o> Cache buffer size for EP6 OUT
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_arch_ep6_cache
|
||||
#ifndef CONF_USB_EP6_CACHE
|
||||
#define CONF_USB_EP6_CACHE 0
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP6 IN
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must not be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_ep6_I_CACHE
|
||||
#ifndef CONF_USB_EP6_I_CACHE
|
||||
#define CONF_USB_EP6_I_CACHE 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <h> Cache configuration EP7
|
||||
// <o> Cache buffer size for EP7 OUT
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_arch_ep7_cache
|
||||
#ifndef CONF_USB_EP7_CACHE
|
||||
#define CONF_USB_EP7_CACHE 0
|
||||
#endif
|
||||
|
||||
// <o> Cache buffer size for EP7 IN
|
||||
// <i> Cache is used because the USB hardware always uses DMA which requires specific memory feature.
|
||||
// <i> This cache must not be allocated if you plan to use the endpoint as control endpoint.
|
||||
// <i> No cache means IN transaction not support data buffer outside of RAM, OUT transaction not support unaligned buffer and buffer size less than endpoint max packet size
|
||||
// <0=> No cache
|
||||
// <8=> Cached by 8 bytes buffer
|
||||
// <16=> Cached by 16 bytes buffer
|
||||
// <32=> Cached by 32 bytes buffer
|
||||
// <64=> Cached by 64 bytes buffer
|
||||
// <128=> Cached by 128 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <256=> Cached by 256 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <512=> Cached by 512 bytes buffer (HS Bulk or interrupt or isochronous EP)
|
||||
// <1024=> Cached by 1024 bytes buffer (interrupt or isochronous EP)
|
||||
// <id> usb_ep7_I_CACHE
|
||||
#ifndef CONF_USB_EP7_I_CACHE
|
||||
#define CONF_USB_EP7_I_CACHE 0
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // HPL_USB_CONFIG_H
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,850 @@
|
|||
/* Auto-generated config file usbd_config.h */
|
||||
#ifndef USBD_CONFIG_H
|
||||
#define USBD_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
|
||||
// ---- USB Device Stack Core Options ----
|
||||
|
||||
// <q> High Speed Support
|
||||
// <i> Enable high speed specific descriptors support, e.g., DeviceQualifierDescriptor and OtherSpeedConfiguration Descriptor.
|
||||
// <i> High speed support require descriptors description array on start, for LS/FS and HS support in first and second place.
|
||||
// <id> usbd_hs_sp
|
||||
#ifndef CONF_USBD_HS_SP
|
||||
#define CONF_USBD_HS_SP 0
|
||||
#endif
|
||||
|
||||
// ---- USB Device Stack Composite Options ----
|
||||
|
||||
// <e> Enable String Descriptors
|
||||
// <id> usb_composite_str_en
|
||||
#ifndef CONF_USB_COMPOSITE_STR_EN
|
||||
#define CONF_USB_COMPOSITE_STR_EN 0
|
||||
#endif
|
||||
// <s> Language IDs
|
||||
// <i> Language IDs in c format, split by comma (E.g., 0x0409 ...)
|
||||
// <id> usb_composite_langid
|
||||
#ifndef CONF_USB_COMPOSITE_LANGID
|
||||
#define CONF_USB_COMPOSITE_LANGID "0x0409"
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_LANGID_DESC
|
||||
#define CONF_USB_COMPOSITE_LANGID_DESC
|
||||
#endif
|
||||
// </e>
|
||||
|
||||
// <h> Composite Device Descriptor
|
||||
|
||||
// <o> bcdUSB
|
||||
// <0x0200=> USB 2.0 version
|
||||
// <0x0210=> USB 2.1 version
|
||||
// <id> usb_composite_bcdusb
|
||||
#ifndef CONF_USB_COMPOSITE_BCDUSB
|
||||
#define CONF_USB_COMPOSITE_BCDUSB 0x200
|
||||
#endif
|
||||
|
||||
// <o> bMaxPackeSize0
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
// <id> usb_composite_bmaxpksz0
|
||||
#ifndef CONF_USB_COMPOSITE_BMAXPKSZ0
|
||||
#define CONF_USB_COMPOSITE_BMAXPKSZ0 0x40
|
||||
#endif
|
||||
|
||||
// <o> idVender <0x0000-0xFFFF>
|
||||
// <id> usb_composite_idvender
|
||||
#ifndef CONF_USB_COMPOSITE_IDVENDER
|
||||
#define CONF_USB_COMPOSITE_IDVENDER 0x3eb
|
||||
#endif
|
||||
|
||||
// <o> idProduct <0x0000-0xFFFF>
|
||||
// <id> usb_composite_idproduct
|
||||
#ifndef CONF_USB_COMPOSITE_IDPRODUCT
|
||||
#define CONF_USB_COMPOSITE_IDPRODUCT 0x2421
|
||||
#endif
|
||||
|
||||
// <o> bcdDevice <0x0000-0xFFFF>
|
||||
// <id> usb_composite_bcddevice
|
||||
#ifndef CONF_USB_COMPOSITE_BCDDEVICE
|
||||
#define CONF_USB_COMPOSITE_BCDDEVICE 0x100
|
||||
#endif
|
||||
|
||||
// <e> Enable string descriptor of iManufact
|
||||
// <id> usb_composite_imanufact_en
|
||||
#ifndef CONF_USB_COMPOSITE_IMANUFACT_EN
|
||||
#define CONF_USB_COMPOSITE_IMANUFACT_EN 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_IMANUFACT
|
||||
#define CONF_USB_COMPOSITE_IMANUFACT (CONF_USB_COMPOSITE_IMANUFACT_EN * (CONF_USB_COMPOSITE_IMANUFACT_EN))
|
||||
#endif
|
||||
|
||||
// <s> Unicode string of iManufact
|
||||
// <id> usb_composite_imanufact_str
|
||||
#ifndef CONF_USB_COMPOSITE_IMANUFACT_STR
|
||||
#define CONF_USB_COMPOSITE_IMANUFACT_STR "Atmel"
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_IMANUFACT_STR_DESC
|
||||
#define CONF_USB_COMPOSITE_IMANUFACT_STR_DESC
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> Enable string descriptor of iProduct
|
||||
// <id> usb_composite_iproduct_en
|
||||
#ifndef CONF_USB_COMPOSITE_IPRODUCT_EN
|
||||
#define CONF_USB_COMPOSITE_IPRODUCT_EN 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_IPRODUCT
|
||||
#define CONF_USB_COMPOSITE_IPRODUCT \
|
||||
(CONF_USB_COMPOSITE_IPRODUCT_EN * (CONF_USB_COMPOSITE_IMANUFACT_EN + CONF_USB_COMPOSITE_IPRODUCT_EN))
|
||||
#endif
|
||||
|
||||
// <s> Unicode string of iProduct
|
||||
// <id> usb_composite_iproduct_str
|
||||
#ifndef CONF_USB_COMPOSITE_IPRODUCT_STR
|
||||
#define CONF_USB_COMPOSITE_IPRODUCT_STR "Composite Demo"
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_IPRODUCT_STR_DESC
|
||||
#define CONF_USB_COMPOSITE_IPRODUCT_STR_DESC
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> Enable string descriptor of iSerialNum
|
||||
// <id> usb_composite_iserialnum_en
|
||||
#ifndef CONF_USB_COMPOSITE_ISERIALNUM_EN
|
||||
#define CONF_USB_COMPOSITE_ISERIALNUM_EN 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_ISERIALNUM
|
||||
#define CONF_USB_COMPOSITE_ISERIALNUM \
|
||||
(CONF_USB_COMPOSITE_ISERIALNUM_EN \
|
||||
* (CONF_USB_COMPOSITE_IMANUFACT_EN + CONF_USB_COMPOSITE_IPRODUCT_EN + CONF_USB_COMPOSITE_ISERIALNUM_EN))
|
||||
#endif
|
||||
|
||||
// <s> Unicode string of iSerialNum
|
||||
// <id> usb_composite_iserialnum_str
|
||||
#ifndef CONF_USB_COMPOSITE_ISERIALNUM_STR
|
||||
#define CONF_USB_COMPOSITE_ISERIALNUM_STR "123456789ABCDEF"
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_ISERIALNUM_STR_DESC
|
||||
#define CONF_USB_COMPOSITE_ISERIALNUM_STR_DESC
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <o> bNumConfigurations <0x01-0xFF>
|
||||
// <id> usb_composite_bnumconfig
|
||||
#ifndef CONF_USB_COMPOSITE_BNUMCONFIG
|
||||
#define CONF_USB_COMPOSITE_BNUMCONFIG 0x1
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// <h> Composite Configuration Descriptor
|
||||
// <o> bConfigurationValue <0x01-0xFF>
|
||||
// <id> usb_composite_bconfigval
|
||||
#ifndef CONF_USB_COMPOSITE_BCONFIGVAL
|
||||
#define CONF_USB_COMPOSITE_BCONFIGVAL 0x1
|
||||
#endif
|
||||
// <e> Enable string descriptor of iConfig
|
||||
// <id> usb_composite_iconfig_en
|
||||
#ifndef CONF_USB_COMPOSITE_ICONFIG_EN
|
||||
#define CONF_USB_COMPOSITE_ICONFIG_EN 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_ICONFIG
|
||||
#define CONF_USB_COMPOSITE_ICONFIG \
|
||||
(CONF_USB_COMPOSITE_ICONFIG_EN \
|
||||
* (CONF_USB_COMPOSITE_IMANUFACT_EN + CONF_USB_COMPOSITE_IPRODUCT_EN + CONF_USB_COMPOSITE_ISERIALNUM_EN \
|
||||
+ CONF_USB_COMPOSITE_ICONFIG_EN))
|
||||
#endif
|
||||
|
||||
// <s> Unicode string of iConfig
|
||||
// <id> usb_composite_iconfig_str
|
||||
#ifndef CONF_USB_COMPOSITE_ICONFIG_STR
|
||||
#define CONF_USB_COMPOSITE_ICONFIG_STR ""
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_ICONFIG_STR_DESC
|
||||
#define CONF_USB_COMPOSITE_ICONFIG_STR_DESC
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <o> bmAttributes
|
||||
// <0x80=> Bus power supply, not support for remote wakeup
|
||||
// <0xA0=> Bus power supply, support for remote wakeup
|
||||
// <0xC0=> Self powered, not support for remote wakeup
|
||||
// <0xE0=> Self powered, support for remote wakeup
|
||||
// <id> usb_composite_bmattri
|
||||
#ifndef CONF_USB_COMPOSITE_BMATTRI
|
||||
#define CONF_USB_COMPOSITE_BMATTRI 0x80
|
||||
#endif
|
||||
|
||||
// <o> bMaxPower <0x00-0xFF>
|
||||
// <id> usb_composite_bmaxpower
|
||||
#ifndef CONF_USB_COMPOSITE_BMAXPOWER
|
||||
#define CONF_USB_COMPOSITE_BMAXPOWER 0x32
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <e> CDC ACM Support
|
||||
// <id> usb_composite_cdc_acm_support
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_EN
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_EN 0
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Comm Interrupt IN Endpoint Address
|
||||
// <0x81=> EndpointAddress = 0x81
|
||||
// <0x82=> EndpointAddress = 0x82
|
||||
// <0x83=> EndpointAddress = 0x83
|
||||
// <0x84=> EndpointAddress = 0x84
|
||||
// <0x85=> EndpointAddress = 0x85
|
||||
// <0x86=> EndpointAddress = 0x86
|
||||
// <0x87=> EndpointAddress = 0x87
|
||||
// <0x88=> EndpointAddress = 0x88
|
||||
// <0x89=> EndpointAddress = 0x89
|
||||
|
||||
// <id> usb_composite_cdc_acm_epaddr
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_COMM_INT_EPADDR
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_COMM_INT_EPADDR 0x82
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Comm Interrupt IN Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_cdc_acm_comm_int_maxpksz
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_COMM_INT_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_COMM_INT_MAXPKSZ 0x40
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Data BULK IN Endpoint Address
|
||||
// <0x81=> EndpointAddress = 0x81
|
||||
// <0x82=> EndpointAddress = 0x82
|
||||
// <0x83=> EndpointAddress = 0x83
|
||||
// <0x84=> EndpointAddress = 0x84
|
||||
// <0x85=> EndpointAddress = 0x85
|
||||
// <0x86=> EndpointAddress = 0x86
|
||||
// <0x87=> EndpointAddress = 0x87
|
||||
// <0x88=> EndpointAddress = 0x88
|
||||
// <0x89=> EndpointAddress = 0x89
|
||||
|
||||
// <id> usb_composite_cdc_acm_data_bulkin_epaddr
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKIN_EPADDR
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKIN_EPADDR 0x81
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Data BULK IN Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_cdc_acm_data_builin_maxpksz
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKIN_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKIN_MAXPKSZ 0x40
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Data BULK IN Endpoint wMaxPacketSize for High Speed
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
// <0x0080=> 128 bytes
|
||||
// <0x0100=> 256 bytes
|
||||
// <0x0200=> 512 bytes
|
||||
|
||||
// <id> usb_composite_cdc_acm_data_builin_maxpksz_hs
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKIN_MAXPKSZ_HS
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKIN_MAXPKSZ_HS 0x200
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Data BULK OUT Endpoint Address
|
||||
// <0x01=> EndpointAddress = 0x01
|
||||
// <0x02=> EndpointAddress = 0x02
|
||||
// <0x03=> EndpointAddress = 0x03
|
||||
// <0x04=> EndpointAddress = 0x04
|
||||
// <0x05=> EndpointAddress = 0x05
|
||||
// <0x06=> EndpointAddress = 0x06
|
||||
// <0x07=> EndpointAddress = 0x07
|
||||
// <0x08=> EndpointAddress = 0x08
|
||||
// <0x09=> EndpointAddress = 0x09
|
||||
|
||||
// <id> usb_composite_cdc_acm_data_bulkout_epaddr
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKOUT_EPADDR
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKOUT_EPADDR 0x1
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Data BULK OUT Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_cdc_acm_data_buckout_maxpksz
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKOUT_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKOUT_MAXPKSZ 0x40
|
||||
#endif
|
||||
|
||||
// <o> CDC ACM Data BULK OUT Endpoint wMaxPacketSize for High Speed
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
// <0x0080=> 128 bytes
|
||||
// <0x0100=> 256 bytes
|
||||
// <0x0200=> 512 bytes
|
||||
|
||||
// <id> usb_composite_cdc_acm_data_buckout_maxpksz_hs
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKOUT_MAXPKSZ_HS
|
||||
#define CONF_USB_COMPOSITE_CDC_ACM_DATA_BULKOUT_MAXPKSZ_HS 0x200
|
||||
#endif
|
||||
|
||||
// <q> CDC ACM Echo Demo generation
|
||||
// <id> conf_usb_composite_cdc_echo_demo
|
||||
// <i> Invoke cdcdf_acm_demo_init(buf[wMaxPacketSize]) to enable the echo demo.
|
||||
// <i> Buf is packet buffer for data receive and echo back.
|
||||
// <i> The buffer is 4 byte aligned to support DMA.
|
||||
#ifndef CONF_USB_COMPOSITE_CDC_ECHO_DEMO
|
||||
#define CONF_USB_COMPOSITE_CDC_ECHO_DEMO 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> HID Mouse Support
|
||||
// <id> usb_composite_hid_mouse_support
|
||||
#ifndef CONF_USB_COMPOSITE_HID_MOUSE_EN
|
||||
#define CONF_USB_COMPOSITE_HID_MOUSE_EN 0
|
||||
#endif
|
||||
|
||||
// <o> HID Mouse INTERRUPT IN Endpoint Address
|
||||
// <0x81=> EndpointAddress = 0x81
|
||||
// <0x82=> EndpointAddress = 0x82
|
||||
// <0x83=> EndpointAddress = 0x83
|
||||
// <0x84=> EndpointAddress = 0x84
|
||||
// <0x85=> EndpointAddress = 0x85
|
||||
// <0x86=> EndpointAddress = 0x86
|
||||
// <0x87=> EndpointAddress = 0x87
|
||||
// <0x88=> EndpointAddress = 0x88
|
||||
// <0x89=> EndpointAddress = 0x89
|
||||
|
||||
// <id> usb_composite_hid_mouse_intin_epaddr
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_MOUSE_INTIN_EPADDR
|
||||
#define CONF_USB_COMPOSITE_HID_MOUSE_INTIN_EPADDR 0x83
|
||||
#endif
|
||||
|
||||
// <o> HID Mouse INTERRUPT IN Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_hid_mouse_intin_maxpksz
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_MOUSE_INTIN_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_HID_MOUSE_INTIN_MAXPKSZ 0x8
|
||||
#endif
|
||||
|
||||
// <q> HID Mouse Move Demo generation
|
||||
// <id> conf_usb_composite_hid_mouse_demo
|
||||
// <i> Invoke hiddf_demo_init(button1, button2, button3) to enabled the move demo.
|
||||
// <i> Button1 and button3 are the pins used for mouse moving left and right.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_MOUSE_DEMO
|
||||
#define CONF_USB_COMPOSITE_HID_MOUSE_DEMO 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> HID Keyboard Support
|
||||
// <id> usb_composite_hid_keyboard_support
|
||||
#ifndef CONF_USB_COMPOSITE_HID_KEYBOARD_EN
|
||||
#define CONF_USB_COMPOSITE_HID_KEYBOARD_EN 0
|
||||
#endif
|
||||
|
||||
// <o> HID Keyboard INTERRUPT IN Endpoint Address
|
||||
// <0x81=> EndpointAddress = 0x81
|
||||
// <0x82=> EndpointAddress = 0x82
|
||||
// <0x83=> EndpointAddress = 0x83
|
||||
// <0x84=> EndpointAddress = 0x84
|
||||
// <0x85=> EndpointAddress = 0x85
|
||||
// <0x86=> EndpointAddress = 0x86
|
||||
// <0x87=> EndpointAddress = 0x87
|
||||
// <0x88=> EndpointAddress = 0x88
|
||||
// <0x89=> EndpointAddress = 0x89
|
||||
|
||||
// <id> usb_composite_hid_keyboard_intin_epaddr
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_KEYBOARD_INTIN_EPADDR
|
||||
#define CONF_USB_COMPOSITE_HID_KEYBOARD_INTIN_EPADDR 0x84
|
||||
#endif
|
||||
|
||||
// <o> HID Keyboard INTERRUPT IN Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_hid_keyboard_intin_maxpksz
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_KEYBOARD_INTIN_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_HID_KEYBOARD_INTIN_MAXPKSZ 0x8
|
||||
#endif
|
||||
|
||||
// <o> HID Keyboard INTERRUPT OUT Endpoint Address
|
||||
// <0x01=> EndpointAddress = 0x01
|
||||
// <0x02=> EndpointAddress = 0x02
|
||||
// <0x03=> EndpointAddress = 0x03
|
||||
// <0x04=> EndpointAddress = 0x04
|
||||
// <0x05=> EndpointAddress = 0x05
|
||||
// <0x06=> EndpointAddress = 0x06
|
||||
// <0x07=> EndpointAddress = 0x07
|
||||
// <0x08=> EndpointAddress = 0x08
|
||||
// <0x09=> EndpointAddress = 0x09
|
||||
|
||||
// <id> usb_composite_hid_keyboard_intout_epaddr
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_KEYBOARD_INTOUT_EPADDR
|
||||
#define CONF_USB_COMPOSITE_HID_KEYBOARD_INTOUT_EPADDR 0x2
|
||||
#endif
|
||||
|
||||
// <o> HID Keyboard INTERRUPT OUT Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_hid_keyboard_intout_maxpksz
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_KEYBOARD_INTOUT_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_HID_KEYBOARD_INTOUT_MAXPKSZ 0x8
|
||||
#endif
|
||||
|
||||
// <q> HID Keyboard Caps Lock Demo generation
|
||||
// <id> conf_usb_composite_hid_keyboard_demo
|
||||
// <i> Invoke hiddf_demo_init(button1, button2, button3) to enabled the move demo.
|
||||
// <i> Buffon2 is the pin used for keyboard CAPS LOCK simulation.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_KEYBOARD_DEMO
|
||||
#define CONF_USB_COMPOSITE_HID_KEYBOARD_DEMO 0
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> HID Generic Support
|
||||
// <id> usb_composite_hid_generic_support
|
||||
#ifndef CONF_USB_COMPOSITE_HID_GENERIC_EN
|
||||
#define CONF_USB_COMPOSITE_HID_GENERIC_EN 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_HID_GENERIC_REPORT_LEN
|
||||
#define CONF_USB_COMPOSITE_HID_GENERIC_REPORT_LEN 53
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_COMPOSITE_HID_GENERIC_REPORT
|
||||
#define CONF_USB_COMPOSITE_HID_GENERIC_REPORT \
|
||||
0x06, 0xFF, 0xFF, 0x09, 0x01, 0xA1, 0x01, 0x09, 0x02, 0x09, 0x03, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, \
|
||||
0x40, 0x81, 0x02, 0x09, 0x04, 0x09, 0x05, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x40, 0x91, 0x02, \
|
||||
0x09, 0x06, 0x09, 0x07, 0x15, 0x00, 0x26, 0xFF, 0x00, 0x75, 0x08, 0x95, 0x04, 0xB1, 0x02, 0xC0
|
||||
#endif
|
||||
|
||||
// <o> HID Generic INTERRUPT IN Endpoint Address
|
||||
// <0x81=> EndpointAddress = 0x81
|
||||
// <0x82=> EndpointAddress = 0x82
|
||||
// <0x83=> EndpointAddress = 0x83
|
||||
// <0x84=> EndpointAddress = 0x84
|
||||
// <0x85=> EndpointAddress = 0x85
|
||||
// <0x86=> EndpointAddress = 0x86
|
||||
// <0x87=> EndpointAddress = 0x87
|
||||
// <0x88=> EndpointAddress = 0x88
|
||||
// <0x89=> EndpointAddress = 0x89
|
||||
|
||||
// <id> usb_composite_hid_generic_intin_epaddr
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_GENERIC_INTIN_EPADDR
|
||||
#define CONF_USB_COMPOSITE_HID_GENERIC_INTIN_EPADDR 0x85
|
||||
#endif
|
||||
|
||||
// <o> HID Generic INTERRUPT IN Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_hid_generic_intin_maxpksz
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_GENERIC_INTIN_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_HID_GENERIC_INTIN_MAXPKSZ 0x40
|
||||
#endif
|
||||
|
||||
// <o> HID Generic INTERRUPT OUT Endpoint Address
|
||||
// <0x01=> EndpointAddress = 0x01
|
||||
// <0x02=> EndpointAddress = 0x02
|
||||
// <0x03=> EndpointAddress = 0x03
|
||||
// <0x04=> EndpointAddress = 0x04
|
||||
// <0x05=> EndpointAddress = 0x05
|
||||
// <0x06=> EndpointAddress = 0x06
|
||||
// <0x07=> EndpointAddress = 0x07
|
||||
// <0x08=> EndpointAddress = 0x08
|
||||
// <0x09=> EndpointAddress = 0x09
|
||||
|
||||
// <id> usb_composite_hid_generic_intout_epaddr
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_GENERIC_INTOUT_EPADDR
|
||||
#define CONF_USB_COMPOSITE_HID_GENERIC_INTOUT_EPADDR 0x3
|
||||
#endif
|
||||
|
||||
// <o> HID Generic INTERRUPT OUT Endpoint wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
// <id> usb_composite_hid_generic_intout_maxpksz
|
||||
// <i> Please make sure that the setting here is coincide with the endpoint setting in USB device driver.
|
||||
#ifndef CONF_USB_COMPOSITE_HID_GENERIC_INTOUT_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_HID_GENERIC_INTOUT_MAXPKSZ 0x40
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> MSC Support
|
||||
// <id> usb_composite_msc_support
|
||||
#ifndef CONF_USB_COMPOSITE_MSC_EN
|
||||
#define CONF_USB_COMPOSITE_MSC_EN 0
|
||||
#endif
|
||||
|
||||
// <o> MSC BULK Endpoints wMaxPacketSize
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
|
||||
// <id> usb_composite_msc_bulk_maxpksz
|
||||
#ifndef CONF_USB_COMPOSITE_MSC_BULK_MAXPKSZ
|
||||
#define CONF_USB_COMPOSITE_MSC_BULK_MAXPKSZ 0x40
|
||||
#endif
|
||||
|
||||
// <o> MSC BULK Endpoints wMaxPacketSize for High Speed
|
||||
// <0x0008=> 8 bytes
|
||||
// <0x0010=> 16 bytes
|
||||
// <0x0020=> 32 bytes
|
||||
// <0x0040=> 64 bytes
|
||||
// <0x0080=> 128 bytes
|
||||
// <0x0100=> 256 bytes
|
||||
// <0x0200=> 512 bytes
|
||||
|
||||
// <id> usb_composite_msc_bulk_maxpksz_hs
|
||||
#ifndef CONF_USB_COMPOSITE_MSC_BULK_MAXPKSZ_HS
|
||||
#define CONF_USB_COMPOSITE_MSC_BULK_MAXPKSZ_HS 0x200
|
||||
#endif
|
||||
|
||||
// <o> MSC BULK IN Endpoint Address
|
||||
// <0x81=> EndpointAddress = 0x81
|
||||
// <0x82=> EndpointAddress = 0x82
|
||||
// <0x83=> EndpointAddress = 0x83
|
||||
// <0x84=> EndpointAddress = 0x84
|
||||
// <0x85=> EndpointAddress = 0x85
|
||||
// <0x86=> EndpointAddress = 0x86
|
||||
// <0x87=> EndpointAddress = 0x87
|
||||
// <0x88=> EndpointAddress = 0x88
|
||||
// <0x89=> EndpointAddress = 0x89
|
||||
|
||||
// <id> usb_composite_msc_bulkin_epaddr
|
||||
#ifndef CONF_USB_COMPOSITE_MSC_BULKIN_EPADDR
|
||||
#define CONF_USB_COMPOSITE_MSC_BULKIN_EPADDR 0x86
|
||||
#endif
|
||||
|
||||
// <o> MSC BULK OUT Endpoint Address
|
||||
// <0x01=> EndpointAddress = 0x01
|
||||
// <0x02=> EndpointAddress = 0x02
|
||||
// <0x03=> EndpointAddress = 0x03
|
||||
// <0x04=> EndpointAddress = 0x04
|
||||
// <0x05=> EndpointAddress = 0x05
|
||||
// <0x06=> EndpointAddress = 0x06
|
||||
// <0x07=> EndpointAddress = 0x07
|
||||
// <0x08=> EndpointAddress = 0x08
|
||||
// <0x09=> EndpointAddress = 0x09
|
||||
|
||||
// <id> usb_composite_msc_bulkout_epaddr
|
||||
#ifndef CONF_USB_COMPOSITE_MSC_BULKOUT_EPADDR
|
||||
#define CONF_USB_COMPOSITE_MSC_BULKOUT_EPADDR 0x4
|
||||
#endif
|
||||
|
||||
// <e> Enable Demo code for Disk LUN handling
|
||||
// <id> usb_composite_msc_demo_en
|
||||
#ifndef CONF_USB_COMPOSITE_MSC_LUN_DEMO
|
||||
#define CONF_USB_COMPOSITE_MSC_LUN_DEMO 1
|
||||
#endif
|
||||
|
||||
// <o> Disk access cache/buffer of sectors if non-RAM disk (e.g., SD/MMC) enabled <1-64>
|
||||
// <id> conf_usb_msc_lun_buf_sectors
|
||||
#ifndef CONF_USB_MSC_LUN_BUF_SECTORS
|
||||
#define CONF_USB_MSC_LUN_BUF_SECTORS 4
|
||||
#endif
|
||||
|
||||
// <e> Enable Demo for RAM Disk
|
||||
// <id> conf_usb_msc_lun0_enable
|
||||
#ifndef CONF_USB_MSC_LUN0_ENABLE
|
||||
#define CONF_USB_MSC_LUN0_ENABLE 1
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_TYPE
|
||||
#define CONF_USB_MSC_LUN0_TYPE 0x00
|
||||
#endif
|
||||
|
||||
// <q> The disk is removable
|
||||
// <id> conf_usb_msc_lun0_rmb
|
||||
#ifndef CONF_USB_MSC_LUN0_RMB
|
||||
#define CONF_USB_MSC_LUN0_RMB 0x1
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_ISO
|
||||
#define CONF_USB_MSC_LUN0_ISO 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_ECMA
|
||||
#define CONF_USB_MSC_LUN0_ECMA 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_ANSI
|
||||
#define CONF_USB_MSC_LUN0_ANSI 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_REPO
|
||||
#define CONF_USB_MSC_LUN0_REPO 0x01
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_FACTORY
|
||||
#define CONF_USB_MSC_LUN0_FACTORY 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_PRODUCT
|
||||
#define CONF_USB_MSC_LUN0_PRODUCT 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_PRODUCT_VERSION
|
||||
#define CONF_USB_MSC_LUN0_PRODUCT_VERSION 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
// <o> Disk Size (in KB) <0x1-0xFFFFFFFF>
|
||||
// <i> Windows will not show disk less than 20K, so 22K is used to reserve more RAM for APP
|
||||
// <id> conf_usb_msc_lun0_capacity
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_CAPACITY
|
||||
#define CONF_USB_MSC_LUN0_CAPACITY 22
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_BLOCK_SIZE
|
||||
#define CONF_USB_MSC_LUN0_BLOCK_SIZE 512
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN0_LAST_BLOCK_ADDR
|
||||
#define CONF_USB_MSC_LUN0_LAST_BLOCK_ADDR \
|
||||
((uint32_t)CONF_USB_MSC_LUN0_CAPACITY * 1024 / CONF_USB_MSC_LUN0_BLOCK_SIZE - 1)
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> Enable Demo for SD/MMC Disk
|
||||
// <i> SD/MMC stack must be added before enable SD/MMC demo
|
||||
// <i> SD/MMC insert/eject not supported by this simple demo
|
||||
// <id> conf_usb_msc_lun1_enable
|
||||
#ifndef CONF_USB_MSC_LUN1_ENABLE
|
||||
#define CONF_USB_MSC_LUN1_ENABLE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_TYPE
|
||||
#define CONF_USB_MSC_LUN1_TYPE 0x00
|
||||
#endif
|
||||
|
||||
// <q> The disk is removable
|
||||
// <i> SD/MMC stack must be added before enable SD/MMC demo
|
||||
// <i> SD/MMC insert/eject not supported by this simple demo
|
||||
// <id> conf_usb_msc_lun1_rmb
|
||||
#ifndef CONF_USB_MSC_LUN1_RMB
|
||||
#define CONF_USB_MSC_LUN1_RMB 0x1
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_ISO
|
||||
#define CONF_USB_MSC_LUN1_ISO 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_ECMA
|
||||
#define CONF_USB_MSC_LUN1_ECMA 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_ANSI
|
||||
#define CONF_USB_MSC_LUN1_ANSI 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_REPO
|
||||
#define CONF_USB_MSC_LUN1_REPO 0x01
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_FACTORY
|
||||
#define CONF_USB_MSC_LUN1_FACTORY 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_PRODUCT
|
||||
#define CONF_USB_MSC_LUN1_PRODUCT 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_PRODUCT_VERSION
|
||||
#define CONF_USB_MSC_LUN1_PRODUCT_VERSION 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_CAPACITY
|
||||
#define CONF_USB_MSC_LUN1_CAPACITY 22
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_BLOCK_SIZE
|
||||
#define CONF_USB_MSC_LUN1_BLOCK_SIZE 512
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN1_LAST_BLOCK_ADDR
|
||||
#define CONF_USB_MSC_LUN1_LAST_BLOCK_ADDR \
|
||||
((uint32_t)CONF_USB_MSC_LUN1_CAPACITY * 1024 / CONF_USB_MSC_LUN1_BLOCK_SIZE - 1)
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> Enable Demo for LUN 2
|
||||
// <id> conf_usb_msc_lun2_enable
|
||||
#ifndef CONF_USB_MSC_LUN2_ENABLE
|
||||
#define CONF_USB_MSC_LUN2_ENABLE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_TYPE
|
||||
#define CONF_USB_MSC_LUN2_TYPE 0x00
|
||||
#endif
|
||||
|
||||
// <q> The disk is removable
|
||||
// <id> conf_usb_msc_lun2_rmb
|
||||
#ifndef CONF_USB_MSC_LUN2_RMB
|
||||
#define CONF_USB_MSC_LUN2_RMB 0x1
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_ISO
|
||||
#define CONF_USB_MSC_LUN2_ISO 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_ECMA
|
||||
#define CONF_USB_MSC_LUN2_ECMA 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_ANSI
|
||||
#define CONF_USB_MSC_LUN2_ANSI 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_REPO
|
||||
#define CONF_USB_MSC_LUN2_REPO 0x01
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_FACTORY
|
||||
#define CONF_USB_MSC_LUN2_FACTORY 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_PRODUCT
|
||||
#define CONF_USB_MSC_LUN2_PRODUCT 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_PRODUCT_VERSION
|
||||
#define CONF_USB_MSC_LUN2_PRODUCT_VERSION 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
// <o> Disk Size (in KB) <0x1-0xFFFFFFFF>
|
||||
// <id> conf_usb_msc_lun2_capacity
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_CAPACITY
|
||||
#define CONF_USB_MSC_LUN2_CAPACITY 22
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_BLOCK_SIZE
|
||||
#define CONF_USB_MSC_LUN2_BLOCK_SIZE 512
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN2_LAST_BLOCK_ADDR
|
||||
#define CONF_USB_MSC_LUN2_LAST_BLOCK_ADDR \
|
||||
((uint32_t)CONF_USB_MSC_LUN2_CAPACITY * 1024 / CONF_USB_MSC_LUN2_BLOCK_SIZE - 1)
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// <e> Enable Demo for LUN 3
|
||||
// <id> conf_usb_msc_lun3_enable
|
||||
#ifndef CONF_USB_MSC_LUN3_ENABLE
|
||||
#define CONF_USB_MSC_LUN3_ENABLE 0
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_TYPE
|
||||
#define CONF_USB_MSC_LUN3_TYPE 0x00
|
||||
#endif
|
||||
|
||||
// <q> The disk is removable
|
||||
// <id> conf_usb_msc_lun3_rmb
|
||||
#ifndef CONF_USB_MSC_LUN3_RMB
|
||||
#define CONF_USB_MSC_LUN3_RMB 0x1
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_ISO
|
||||
#define CONF_USB_MSC_LUN3_ISO 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_ECMA
|
||||
#define CONF_USB_MSC_LUN3_ECMA 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_ANSI
|
||||
#define CONF_USB_MSC_LUN3_ANSI 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_REPO
|
||||
#define CONF_USB_MSC_LUN3_REPO 0x01
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_FACTORY
|
||||
#define CONF_USB_MSC_LUN3_FACTORY 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_PRODUCT
|
||||
#define CONF_USB_MSC_LUN3_PRODUCT 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_PRODUCT_VERSION
|
||||
#define CONF_USB_MSC_LUN3_PRODUCT_VERSION 0x00, 0x00, 0x00, 0x00
|
||||
#endif
|
||||
|
||||
// <o> Disk Size (in KB) <0x1-0xFFFFFFFF>
|
||||
// <id> conf_usb_msc_lun3_capacity
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_CAPACITY
|
||||
#define CONF_USB_MSC_LUN3_CAPACITY 22
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_BLOCK_SIZE
|
||||
#define CONF_USB_MSC_LUN3_BLOCK_SIZE 512
|
||||
#endif
|
||||
|
||||
#ifndef CONF_USB_MSC_LUN3_LAST_BLOCK_ADDR
|
||||
#define CONF_USB_MSC_LUN3_LAST_BLOCK_ADDR \
|
||||
((uint32_t)CONF_USB_MSC_LUN3_CAPACITY * 1024 / CONF_USB_MSC_LUN3_BLOCK_SIZE - 1)
|
||||
#endif
|
||||
|
||||
// </e>
|
||||
|
||||
// </e>
|
||||
// </e>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // USBD_CONFIG_H
|
|
@ -272,7 +272,7 @@ MP_DEFINE_CONST_DICT(samd_clock_globals, samd_clock_global_dict_table);
|
|||
|
||||
#endif // SAMD21
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ EXTERNAL_FLASH_DEVICES = "MX25L51245G"
|
|||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
CFLAGS_INLINE_LIMIT = 60
|
||||
|
|
|
@ -13,5 +13,5 @@ LONGINT_IMPL = MPZ
|
|||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
|
|
@ -14,7 +14,7 @@ LONGINT_IMPL = MPZ
|
|||
# Make room for frozen libs.
|
||||
CIRCUITPY_DISPLAYIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
|
||||
SUPEROPT_GC = 0
|
||||
CFLAGS_INLINE_LIMIT = 55
|
||||
|
|
|
@ -15,7 +15,7 @@ LONGINT_IMPL = NONE
|
|||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_DISPLAYIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_PIXELBUF = 1
|
||||
CIRCUITPY_ROTARYIO = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
|
|
|
@ -14,7 +14,7 @@ EXTERNAL_FLASH_DEVICES = "S25FL216K, GD25Q16C"
|
|||
LONGINT_IMPL = NONE
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_PIXELBUF = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
# So not all of displayio, sorry!
|
||||
|
|
|
@ -13,7 +13,7 @@ LONGINT_IMPL = MPZ
|
|||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
CFLAGS_INLINE_LIMIT = 60
|
||||
|
|
|
@ -15,7 +15,7 @@ LONGINT_IMPL = MPZ
|
|||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_DISPLAYIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_GAMEPAD = 0
|
||||
CFLAGS_INLINE_LIMIT = 50
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ LONGINT_IMPL = MPZ
|
|||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
# supersized, not ultra-supersized
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
|
|
|
@ -10,3 +10,5 @@ QSPI_FLASH_FILESYSTEM = 1
|
|||
EXTERNAL_FLASH_DEVICE_COUNT = 2
|
||||
EXTERNAL_FLASH_DEVICES = "W25Q64JV_IQ, GD25Q64C"
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_SDIOIO = 1
|
||||
|
|
|
@ -1,5 +1,18 @@
|
|||
#include "py/objtuple.h"
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
STATIC const mp_rom_obj_tuple_t sdio_data_tuple = {
|
||||
{&mp_type_tuple},
|
||||
4,
|
||||
{
|
||||
MP_ROM_PTR(&pin_PB18),
|
||||
MP_ROM_PTR(&pin_PB19),
|
||||
MP_ROM_PTR(&pin_PB20),
|
||||
MP_ROM_PTR(&pin_PB21),
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
// microcontroller.pin.
|
||||
|
@ -129,5 +142,9 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
|||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDIO_CLOCK), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDIO_COMMAND), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDIO_DATA), MP_ROM_PTR(&sdio_data_tuple) },
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
||||
|
|
|
@ -16,7 +16,7 @@ CIRCUITPY_AUDIOBUSIO = 0
|
|||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_GAMEPAD = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_ROTARYIO = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
CIRCUITPY_COUNTIO = 0
|
||||
|
|
|
@ -15,7 +15,7 @@ CIRCUITPY_BITBANG_APA102 = 1
|
|||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_GAMEPAD = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
# too itsy bitsy for all of displayio
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
|
|
@ -12,7 +12,7 @@ EXTERNAL_FLASH_DEVICES = "S25FL216K, GD25Q16C"
|
|||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
CFLAGS_INLINE_LIMIT = 60
|
||||
|
|
|
@ -16,7 +16,7 @@ CIRCUITPY_ANALOGIO = 0
|
|||
CIRCUITPY_AUDIOBUSIO = 0
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_NEOPIXEL_WRITE = 0
|
||||
CIRCUITPY_NETWORK = 0
|
||||
CIRCUITPY_PIXELBUF = 0
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2018 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "mpconfigboard.h"
|
||||
#include "hal/include/hal_gpio.h"
|
||||
|
||||
void board_init(void) {
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void reset_board(void) {
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
#define MICROPY_HW_BOARD_NAME "SAM E54 Xplained Pro"
|
||||
#define MICROPY_HW_MCU_NAME "same54p20"
|
||||
|
||||
#define CIRCUITPY_MCU_FAMILY samd51
|
||||
|
||||
// This is for Rev B which is green and has the SD card slot at the edge of the board.
|
||||
|
||||
#define MICROPY_HW_LED_STATUS (&pin_PC18)
|
||||
|
||||
// These are pins not to reset.
|
||||
// QSPI Data pins
|
||||
#define MICROPY_PORT_A ( PORT_PA08 | PORT_PA09 | PORT_PA10 | PORT_PA11 )
|
||||
// QSPI CS, and QSPI SCK
|
||||
#define MICROPY_PORT_B ( PORT_PB10 | PORT_PB11 )
|
||||
#define MICROPY_PORT_C (0)
|
||||
#define MICROPY_PORT_D (0)
|
||||
|
||||
#define BOARD_HAS_CRYSTAL 1
|
||||
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_PD09)
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_PD08)
|
||||
|
||||
#define DEFAULT_SPI_BUS_SCK (&pin_PC05)
|
||||
#define DEFAULT_SPI_BUS_MOSI (&pin_PC04)
|
||||
#define DEFAULT_SPI_BUS_MISO (&pin_PC07)
|
||||
|
||||
#define DEFAULT_UART_BUS_RX (&pin_PB17)
|
||||
#define DEFAULT_UART_BUS_TX (&pin_PB16)
|
||||
|
||||
// USB is always used internally so skip the pin objects for it.
|
||||
#define IGNORE_PIN_PA24 1
|
||||
#define IGNORE_PIN_PA25 1
|
||||
#define IGNORE_PIN_PC19 1
|
|
@ -0,0 +1,14 @@
|
|||
USB_VID = 0x239A
|
||||
USB_PID = 0x80B6
|
||||
USB_PRODUCT = "SAM E54 Xplained Pro"
|
||||
USB_MANUFACTURER = "Microchip"
|
||||
|
||||
CHIP_VARIANT = SAME54P20A
|
||||
CHIP_FAMILY = same54
|
||||
|
||||
QSPI_FLASH_FILESYSTEM = 1
|
||||
EXTERNAL_FLASH_DEVICE_COUNT = 2
|
||||
EXTERNAL_FLASH_DEVICES = "N25Q256A"
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_SDIOIO = 1
|
|
@ -0,0 +1,116 @@
|
|||
#include "py/objtuple.h"
|
||||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
STATIC const mp_rom_obj_tuple_t sdio_data_tuple = {
|
||||
{&mp_type_tuple},
|
||||
4,
|
||||
{
|
||||
MP_ROM_PTR(&pin_PB18),
|
||||
MP_ROM_PTR(&pin_PB19),
|
||||
MP_ROM_PTR(&pin_PB20),
|
||||
MP_ROM_PTR(&pin_PB21),
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// This mapping only includes functional names because pins broken
|
||||
// out on connectors are labeled with their MCU name available from
|
||||
// microcontroller.pin.
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PD08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PD09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_VSYNC), MP_ROM_PTR(&pin_PA12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_HSYNC), MP_ROM_PTR(&pin_PA13) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCLK), MP_ROM_PTR(&pin_PA14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_XCLK), MP_ROM_PTR(&pin_PA15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D07), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D06), MP_ROM_PTR(&pin_PA22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D05), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D04), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D03), MP_ROM_PTR(&pin_PA19) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D02), MP_ROM_PTR(&pin_PA18) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D01), MP_ROM_PTR(&pin_PA17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D00), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D09), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_D08), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RST), MP_ROM_PTR(&pin_PC12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PWDN), MP_ROM_PTR(&pin_PC11) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PDEC_A), MP_ROM_PTR(&pin_PC16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PDEC_B), MP_ROM_PTR(&pin_PC17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PDEC_C), MP_ROM_PTR(&pin_PC18) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_ADCDAC), MP_ROM_PTR(&pin_PA02) },
|
||||
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_SW0), MP_ROM_PTR(&pin_PB31) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_PC18) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_QT), MP_ROM_PTR(&pin_PA16) },
|
||||
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_CANRX), MP_ROM_PTR(&pin_PB12) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_CANTX), MP_ROM_PTR(&pin_PB13) },
|
||||
|
||||
// EXT1 header
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB04), MP_ROM_PTR(&pin_PB04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB05), MP_ROM_PTR(&pin_PB05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PA06), MP_ROM_PTR(&pin_PA06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PA07), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB08), MP_ROM_PTR(&pin_PB08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB09), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB07), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PA27), MP_ROM_PTR(&pin_PA27) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC22), MP_ROM_PTR(&pin_PC22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PA23), MP_ROM_PTR(&pin_PA23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PA05), MP_ROM_PTR(&pin_PA05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PA04), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB28), MP_ROM_PTR(&pin_PB28) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB27), MP_ROM_PTR(&pin_PB27) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB29), MP_ROM_PTR(&pin_PB29) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB26), MP_ROM_PTR(&pin_PB26) },
|
||||
|
||||
// EXT2 header
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB00), MP_ROM_PTR(&pin_PB00) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PA03), MP_ROM_PTR(&pin_PA03) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB01), MP_ROM_PTR(&pin_PB01) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB06), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB14), MP_ROM_PTR(&pin_PB14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB15), MP_ROM_PTR(&pin_PB15) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PD00), MP_ROM_PTR(&pin_PD00) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB02), MP_ROM_PTR(&pin_PB02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PD08), MP_ROM_PTR(&pin_PD08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PD09), MP_ROM_PTR(&pin_PD09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB17), MP_ROM_PTR(&pin_PB17) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PB16), MP_ROM_PTR(&pin_PB16) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC06), MP_ROM_PTR(&pin_PC06) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC04), MP_ROM_PTR(&pin_PC04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC07), MP_ROM_PTR(&pin_PC07) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC05), MP_ROM_PTR(&pin_PC05) },
|
||||
|
||||
// EXT3 header
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC02), MP_ROM_PTR(&pin_PC02) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC03), MP_ROM_PTR(&pin_PC03) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC10), MP_ROM_PTR(&pin_PC10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC01), MP_ROM_PTR(&pin_PC01) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PD11), MP_ROM_PTR(&pin_PD11) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PD10), MP_ROM_PTR(&pin_PD10) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC31), MP_ROM_PTR(&pin_PC31) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC30), MP_ROM_PTR(&pin_PC30) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PD09), MP_ROM_PTR(&pin_PD09) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PD08), MP_ROM_PTR(&pin_PD08) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC22), MP_ROM_PTR(&pin_PC22) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC23), MP_ROM_PTR(&pin_PC23) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC04), MP_ROM_PTR(&pin_PC04) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC14), MP_ROM_PTR(&pin_PC14) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC05), MP_ROM_PTR(&pin_PC05) },
|
||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_PC07), MP_ROM_PTR(&pin_PC07) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDIO_CLOCK), MP_ROM_PTR(&pin_PA21) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDIO_COMMAND), MP_ROM_PTR(&pin_PA20) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDIO_DATA), MP_ROM_PTR(&sdio_data_tuple) },
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
|
@ -0,0 +1,39 @@
|
|||
/*
|
||||
* This file is part of the MicroPython project, http://micropython.org/
|
||||
*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2017 Scott Shawcroft for Adafruit Industries
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in
|
||||
* all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "boards/board.h"
|
||||
#include "mpconfigboard.h"
|
||||
#include "hal/include/hal_gpio.h"
|
||||
|
||||
void board_init(void) {
|
||||
}
|
||||
|
||||
bool board_requests_safe_mode(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void reset_board(void) {
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
#define MICROPY_HW_BOARD_NAME "Seeeduino Wio Terminal"
|
||||
#define MICROPY_HW_MCU_NAME "samd51p19"
|
||||
|
||||
// Rev E
|
||||
|
||||
#define MICROPY_HW_LED_STATUS (&pin_PA15)
|
||||
|
||||
// These are pins not to reset.
|
||||
// QSPI Data pins
|
||||
#define MICROPY_PORT_A (PORT_PA08 | PORT_PA09 | PORT_PA10 | PORT_PA11)
|
||||
// QSPI CS, QSPI SCK and NeoPixel pin
|
||||
#define MICROPY_PORT_B (PORT_PB03 | PORT_PB10 | PORT_PB11)
|
||||
#define MICROPY_PORT_C (0)
|
||||
#define MICROPY_PORT_D (0)
|
||||
|
||||
#define EXTERNAL_FLASH_QSPI_DUAL
|
||||
|
||||
#define BOARD_HAS_CRYSTAL 1
|
||||
|
||||
#define DEFAULT_I2C_BUS_SCL (&pin_PA16)
|
||||
#define DEFAULT_I2C_BUS_SDA (&pin_PA17)
|
||||
|
||||
#define DEFAULT_SPI_BUS_SCK (&pin_PB03)
|
||||
#define DEFAULT_SPI_BUS_MOSI (&pin_PB02)
|
||||
#define DEFAULT_SPI_BUS_MISO (&pin_PB00)
|
||||
|
||||
#define DEFAULT_UART_BUS_RX (&pin_PB27)
|
||||
#define DEFAULT_UART_BUS_TX (&pin_PB26)
|
||||
|
||||
// USB is always used internally so skip the pin objects for it.
|
||||
#define IGNORE_PIN_PA24 1
|
||||
#define IGNORE_PIN_PA25 1
|
|
@ -0,0 +1,14 @@
|
|||
USB_VID = 0x2886
|
||||
USB_PID = 0x802d
|
||||
USB_PRODUCT = "Seeeduino Wio Terminal"
|
||||
USB_MANUFACTURER = "Seeed"
|
||||
|
||||
CHIP_VARIANT = SAMD51P19A
|
||||
CHIP_FAMILY = samd51
|
||||
|
||||
QSPI_FLASH_FILESYSTEM = 1
|
||||
EXTERNAL_FLASH_DEVICE_COUNT = 1
|
||||
EXTERNAL_FLASH_DEVICES = "W25Q32JV_IQ"
|
||||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_VECTORIO = 1
|
|
@ -0,0 +1,52 @@
|
|||
#include "shared-bindings/board/__init__.h"
|
||||
|
||||
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
|
||||
|
||||
// Analog pins
|
||||
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PB08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PB04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PB05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_PA06) },
|
||||
|
||||
// Digital pins
|
||||
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PB08) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PB09) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PA07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PB04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PB05) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PB06) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PA04) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB07) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PA06) },
|
||||
|
||||
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PA17) }, // MP_QSTR_SDA
|
||||
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PA16) }, //MP_QSTR_SCL
|
||||
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA15) }, // MP_QSTR_LED
|
||||
|
||||
// UART pins
|
||||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB26) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PB27) },
|
||||
|
||||
// SPI pins
|
||||
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PA02) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PA03) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PA00) },
|
||||
|
||||
// I2C pins
|
||||
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PA16) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA17) },
|
||||
|
||||
// LED pins
|
||||
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_PA15) }, // status
|
||||
|
||||
// Comm objects
|
||||
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
|
||||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
|
||||
};
|
||||
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);
|
|
@ -9,7 +9,7 @@ CHIP_FAMILY = samd21
|
|||
INTERNAL_FLASH_FILESYSTEM = 1
|
||||
LONGINT_IMPL = NONE
|
||||
CIRCUITPY_FULL_BUILD = 0
|
||||
CIRCUITPY_I2CSLAVE = 1
|
||||
CIRCUITPY_I2CPERIPHERAL = 1
|
||||
CIRCUITPY_TOUCHIO = 0
|
||||
|
||||
SUPEROPT_GC = 0
|
||||
|
|
|
@ -13,7 +13,7 @@ LONGINT_IMPL = MPZ
|
|||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_GAMEPAD = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
CFLAGS_INLINE_LIMIT = 60
|
||||
|
|
|
@ -12,7 +12,7 @@ EXTERNAL_FLASH_DEVICES = "W25Q32FV"
|
|||
LONGINT_IMPL = MPZ
|
||||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
CFLAGS_INLINE_LIMIT = 60
|
||||
|
|
|
@ -16,7 +16,7 @@ CIRCUITPY_BITBANG_APA102 = 1
|
|||
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_GAMEPAD = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
CIRCUITPY_VECTORIO = 0
|
||||
|
||||
|
|
|
@ -15,6 +15,6 @@ CIRCUITPY_BITBANGIO = 0
|
|||
CIRCUITPY_COUNTIO = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
|
||||
SUPEROPT_GC = 0
|
||||
|
|
|
@ -21,7 +21,7 @@ CIRCUITPY_DISPLAYIO = 1
|
|||
CIRCUITPY_AUDIOBUSIO = 0
|
||||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_NEOPIXEL_WRITE = 0
|
||||
CIRCUITPY_PIXELBUF = 0
|
||||
CIRCUITPY_RTC = 0
|
||||
|
|
|
@ -19,12 +19,11 @@ CIRCUITPY_AUDIOIO = 1
|
|||
CIRCUITPY_BITBANGIO = 0
|
||||
CIRCUITPY_FRAMEBUFFERIO = 0
|
||||
CIRCUITPY_FREQUENCYIO = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_AUDIOBUSIO = 0
|
||||
CIRCUITPY_BLEIO = 0
|
||||
CIRCUITPY_DISPLAYIO = 0
|
||||
CIRCUITPY_GAMEPAD = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_NETWORK = 0
|
||||
CIRCUITPY_TOUCHIO = 0
|
||||
CIRCUITPY_RGBMATRIX = 0
|
||||
|
|
|
@ -22,7 +22,7 @@ CIRCUITPY_BLEIO = 0
|
|||
CIRCUITPY_DISPLAYIO = 0
|
||||
CIRCUITPY_FRAMEBUFFERIO = 0
|
||||
CIRCUITPY_GAMEPAD = 0
|
||||
CIRCUITPY_I2CSLAVE = 0
|
||||
CIRCUITPY_I2CPERIPHERAL = 0
|
||||
CIRCUITPY_NETWORK = 0
|
||||
CIRCUITPY_TOUCHIO = 0
|
||||
CIRCUITPY_RGBMATRIX = 0
|
||||
|
|
|
@ -88,7 +88,7 @@ void pew_init() {
|
|||
#ifdef SAMD21
|
||||
turn_on_clocks(true, index, 0);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
turn_on_clocks(true, index, 1);
|
||||
#endif
|
||||
|
||||
|
@ -98,7 +98,7 @@ void pew_init() {
|
|||
TC_CTRLA_PRESCALER_DIV64 |
|
||||
TC_CTRLA_WAVEGEN_MFRQ;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
tc_reset(tc);
|
||||
tc_set_enable(tc, false);
|
||||
tc->COUNT16.CTRLA.reg = TC_CTRLA_MODE_COUNT16
|
||||
|
|
|
@ -50,7 +50,7 @@ void common_hal_analogio_analogout_construct(analogio_analogout_obj_t* self,
|
|||
mp_raise_NotImplementedError(translate("No DAC on chip"));
|
||||
#else
|
||||
if (pin->number != PIN_PA02
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
&& pin->number != PIN_PA05
|
||||
#endif
|
||||
) {
|
||||
|
@ -59,13 +59,13 @@ void common_hal_analogio_analogout_construct(analogio_analogout_obj_t* self,
|
|||
}
|
||||
|
||||
self->channel = 0;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (pin->number == PIN_PA05) {
|
||||
self->channel = 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
hri_mclk_set_APBDMASK_DAC_bit(MCLK);
|
||||
#endif
|
||||
|
||||
|
@ -80,16 +80,16 @@ void common_hal_analogio_analogout_construct(analogio_analogout_obj_t* self,
|
|||
// Don't double init the DAC on the SAMD51 when both outputs are in use. We use the free state
|
||||
// of each output pin to determine DAC state.
|
||||
int32_t result = ERR_NONE;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (!common_hal_mcu_pin_is_free(&pin_PA02) || !common_hal_mcu_pin_is_free(&pin_PA05)) {
|
||||
#endif
|
||||
// Fake the descriptor if the DAC is already initialized.
|
||||
self->descriptor.device.hw = DAC;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
} else {
|
||||
#endif
|
||||
result = dac_sync_init(&self->descriptor, DAC);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
}
|
||||
#endif
|
||||
if (result != ERR_NONE) {
|
||||
|
@ -109,18 +109,18 @@ bool common_hal_analogio_analogout_deinited(analogio_analogout_obj_t *self) {
|
|||
}
|
||||
|
||||
void common_hal_analogio_analogout_deinit(analogio_analogout_obj_t *self) {
|
||||
#if (defined(SAMD21) && defined(PIN_PA02)) || defined(SAMD51)
|
||||
#if (defined(SAMD21) && defined(PIN_PA02)) || defined(SAM_D5X_E5X)
|
||||
if (common_hal_analogio_analogout_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
dac_sync_disable_channel(&self->descriptor, self->channel);
|
||||
reset_pin_number(PIN_PA02);
|
||||
// Only deinit the DAC on the SAMD51 if both outputs are free.
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (common_hal_mcu_pin_is_free(&pin_PA02) && common_hal_mcu_pin_is_free(&pin_PA05)) {
|
||||
#endif
|
||||
dac_sync_deinit(&self->descriptor);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
}
|
||||
#endif
|
||||
self->deinited = true;
|
||||
|
@ -147,7 +147,7 @@ void analogout_reset(void) {
|
|||
#ifdef SAMD21
|
||||
while (DAC->STATUS.reg & DAC_STATUS_SYNCBUSY) {}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
while (DAC->SYNCBUSY.reg & DAC_SYNCBUSY_SWRST) {}
|
||||
#endif
|
||||
DAC->CTRLA.reg |= DAC_CTRLA_SWRST;
|
||||
|
|
|
@ -59,13 +59,13 @@
|
|||
#define SERCTRL(name) I2S_SERCTRL_ ## name
|
||||
#endif
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
#define SERCTRL(name) I2S_TXCTRL_ ## name
|
||||
#endif
|
||||
|
||||
void i2sout_reset(void) {
|
||||
// Make sure the I2S peripheral is running so we can see if the resources we need are free.
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
// Connect the clock units to the 2mhz clock. It can't disable without it.
|
||||
connect_gclk_to_peripheral(5, I2S_GCLK_ID_0);
|
||||
connect_gclk_to_peripheral(5, I2S_GCLK_ID_1);
|
||||
|
@ -76,7 +76,7 @@ void i2sout_reset(void) {
|
|||
}
|
||||
|
||||
// Make sure the I2S peripheral is running so we can see if the resources we need are free.
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
// Connect the clock units to the 2mhz clock by default. They can't reset without it.
|
||||
disconnect_gclk_from_peripheral(5, I2S_GCLK_ID_0);
|
||||
disconnect_gclk_from_peripheral(5, I2S_GCLK_ID_1);
|
||||
|
@ -132,7 +132,7 @@ void common_hal_audiobusio_i2sout_construct(audiobusio_i2sout_obj_t* self,
|
|||
serializer = 1;
|
||||
}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
// Only clock unit 0 can be used for transmission.
|
||||
if (bit_clock == &pin_PA10 || bit_clock == &pin_PB16) { // I2S SCK[0]
|
||||
bc_clock_unit = 0;
|
||||
|
@ -170,14 +170,14 @@ void common_hal_audiobusio_i2sout_construct(audiobusio_i2sout_obj_t* self,
|
|||
mp_raise_RuntimeError(translate("Serializer in use"));
|
||||
}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (I2S->CTRLA.bit.TXEN == 1) {
|
||||
mp_raise_RuntimeError(translate("Serializer in use"));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
#define GPIO_I2S_FUNCTION GPIO_PIN_FUNCTION_J
|
||||
#endif
|
||||
#ifdef SAMD21
|
||||
|
@ -254,7 +254,7 @@ void common_hal_audiobusio_i2sout_play(audiobusio_i2sout_obj_t* self,
|
|||
#ifdef SAMD21
|
||||
uint32_t serctrl = (self->clock_unit << I2S_SERCTRL_CLKSEL_Pos) | SERCTRL(SERMODE_TX) | I2S_SERCTRL_TXSAME_SAME | I2S_SERCTRL_EXTEND_MSBIT | I2S_SERCTRL_TXDEFAULT_ONE | I2S_SERCTRL_SLOTADJ_LEFT;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t serctrl = (self->clock_unit << I2S_RXCTRL_CLKSEL_Pos) | I2S_TXCTRL_TXSAME_SAME;
|
||||
#endif
|
||||
if (audiosample_channel_count(sample) == 1) {
|
||||
|
@ -277,7 +277,7 @@ void common_hal_audiobusio_i2sout_play(audiobusio_i2sout_obj_t* self,
|
|||
#ifdef SAMD21
|
||||
I2S->SERCTRL[self->serializer].reg = serctrl;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
I2S->TXCTRL.reg = serctrl;
|
||||
#endif
|
||||
|
||||
|
@ -291,7 +291,7 @@ void common_hal_audiobusio_i2sout_play(audiobusio_i2sout_obj_t* self,
|
|||
uint32_t tx_register = (uint32_t) &I2S->DATA[self->serializer].reg;
|
||||
uint8_t dmac_id = I2S_DMAC_ID_TX_0 + self->serializer;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t tx_register = (uint32_t) &I2S->TXDATA.reg;
|
||||
uint8_t dmac_id = I2S_DMAC_ID_TX_0;
|
||||
#endif
|
||||
|
@ -316,7 +316,7 @@ void common_hal_audiobusio_i2sout_play(audiobusio_i2sout_obj_t* self,
|
|||
I2S->CTRLA.vec.SEREN = 1 << self->serializer;
|
||||
while ((I2S->SYNCBUSY.vec.SEREN & (1 << self->serializer)) != 0) {}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
I2S->CTRLA.bit.TXEN = 1;
|
||||
while (I2S->SYNCBUSY.bit.TXEN == 1) {}
|
||||
#endif
|
||||
|
@ -333,7 +333,7 @@ void common_hal_audiobusio_i2sout_resume(audiobusio_i2sout_obj_t* self) {
|
|||
#ifdef SAMD21
|
||||
I2S->INTFLAG.reg = I2S_INTFLAG_TXUR0 << self->serializer;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
I2S->INTFLAG.reg = I2S_INTFLAG_TXUR0 | I2S_INTFLAG_TXUR1;
|
||||
#endif
|
||||
|
||||
|
@ -351,7 +351,7 @@ void common_hal_audiobusio_i2sout_stop(audiobusio_i2sout_obj_t* self) {
|
|||
I2S->CTRLA.vec.SEREN &= ~(1 << self->serializer);
|
||||
while ((I2S->SYNCBUSY.vec.SEREN & (1 << self->serializer)) != 0) {}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
I2S->CTRLA.bit.TXEN = 0;
|
||||
while (I2S->SYNCBUSY.bit.TXEN == 1) {}
|
||||
#endif
|
||||
|
@ -368,7 +368,7 @@ void common_hal_audiobusio_i2sout_stop(audiobusio_i2sout_obj_t* self) {
|
|||
disconnect_gclk_from_peripheral(self->gclk, I2S_GCLK_ID_0 + self->clock_unit);
|
||||
disable_clock_generator(self->gclk);
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
connect_gclk_to_peripheral(5, I2S_GCLK_ID_0 + self->clock_unit);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
#define SERCTRL(name) I2S_SERCTRL_ ## name
|
||||
#endif
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
#define SERCTRL(name) I2S_RXCTRL_ ## name
|
||||
#endif
|
||||
|
||||
|
@ -94,7 +94,7 @@ void common_hal_audiobusio_pdmin_construct(audiobusio_pdmin_obj_t* self,
|
|||
self->clock_unit = 1;
|
||||
#endif
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (clock_pin == &pin_PA10 || clock_pin == &pin_PB16) {
|
||||
self->clock_unit = 0;
|
||||
} else if (clock_pin == &pin_PB12
|
||||
|
@ -122,7 +122,7 @@ void common_hal_audiobusio_pdmin_construct(audiobusio_pdmin_obj_t* self,
|
|||
#endif
|
||||
self->serializer = 1;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (data_pin == &pin_PB10 || data_pin == &pin_PA22) {
|
||||
self->serializer = 1;
|
||||
#endif
|
||||
|
@ -145,13 +145,13 @@ void common_hal_audiobusio_pdmin_construct(audiobusio_pdmin_obj_t* self,
|
|||
mp_raise_RuntimeError(translate("Serializer in use"));
|
||||
}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (I2S->CTRLA.bit.RXEN == 1) {
|
||||
mp_raise_RuntimeError(translate("Serializer in use"));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
#define GPIO_I2S_FUNCTION GPIO_PIN_FUNCTION_J
|
||||
#endif
|
||||
#ifdef SAMD21
|
||||
|
@ -185,7 +185,7 @@ void common_hal_audiobusio_pdmin_construct(audiobusio_pdmin_obj_t* self,
|
|||
#ifdef SAMD21
|
||||
uint32_t serctrl = (self->clock_unit << I2S_SERCTRL_CLKSEL_Pos) | SERCTRL(SERMODE_PDM2) | SERCTRL(DATASIZE_32);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t serctrl = (self->clock_unit << I2S_RXCTRL_CLKSEL_Pos) | SERCTRL(SERMODE_PDM2) | SERCTRL(DATASIZE_32);
|
||||
#endif
|
||||
|
||||
|
@ -196,7 +196,7 @@ void common_hal_audiobusio_pdmin_construct(audiobusio_pdmin_obj_t* self,
|
|||
#ifdef SAMD21
|
||||
I2S->SERCTRL[self->serializer].reg = serctrl;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
I2S->RXCTRL.reg = serctrl;
|
||||
#endif
|
||||
|
||||
|
@ -274,7 +274,7 @@ static void setup_dma(audiobusio_pdmin_obj_t* self, uint32_t length,
|
|||
#ifdef SAMD21
|
||||
descriptor->SRCADDR.reg = (uint32_t)&I2S->DATA[self->serializer];
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
descriptor->SRCADDR.reg = (uint32_t)&I2S->RXDATA;
|
||||
#endif
|
||||
|
||||
|
@ -295,7 +295,7 @@ static void setup_dma(audiobusio_pdmin_obj_t* self, uint32_t length,
|
|||
#ifdef SAMD21
|
||||
second_descriptor->SRCADDR.reg = (uint32_t)&I2S->DATA[self->serializer];
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
second_descriptor->SRCADDR.reg = (uint32_t)&I2S->RXDATA;
|
||||
#endif
|
||||
second_descriptor->BTCTRL.reg = DMAC_BTCTRL_VALID |
|
||||
|
@ -400,7 +400,7 @@ uint32_t common_hal_audiobusio_pdmin_record_to_buffer(audiobusio_pdmin_obj_t* se
|
|||
#ifdef SAMD21
|
||||
#define MAX_WAIT_COUNTS 1000
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
#define MAX_WAIT_COUNTS 6000
|
||||
#endif
|
||||
// If wait_counts exceeds the max count, buffer has probably stopped filling;
|
||||
|
|
|
@ -74,7 +74,7 @@ static void ramp_value(uint16_t start, uint16_t end) {
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
static void ramp_value(uint16_t start, uint16_t end) {
|
||||
int32_t diff = (int32_t) end - start;
|
||||
int32_t step = 49;
|
||||
|
@ -104,7 +104,7 @@ void audioout_reset(void) {
|
|||
#ifdef SAMD21
|
||||
while (DAC->STATUS.reg & DAC_STATUS_SYNCBUSY) {}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
while (DAC->SYNCBUSY.reg & DAC_SYNCBUSY_SWRST) {}
|
||||
#endif
|
||||
if (DAC->CTRLA.bit.ENABLE) {
|
||||
|
@ -118,7 +118,7 @@ void audioout_reset(void) {
|
|||
// Caller validates that pins are free.
|
||||
void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
||||
const mcu_pin_obj_t* left_channel, const mcu_pin_obj_t* right_channel, uint16_t quiescent_value) {
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
bool dac_clock_enabled = hri_mclk_get_APBDMASK_DAC_bit(MCLK);
|
||||
#endif
|
||||
|
||||
|
@ -138,7 +138,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
}
|
||||
claim_pin(left_channel);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
self->right_channel = NULL;
|
||||
if (left_channel != &pin_PA02 && left_channel != &pin_PA05) {
|
||||
mp_raise_ValueError(translate("Invalid pin for left channel"));
|
||||
|
@ -159,7 +159,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
self->left_channel = left_channel;
|
||||
audio_dma_init(&self->left_dma);
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
hri_mclk_set_APBDMASK_DAC_bit(MCLK);
|
||||
#endif
|
||||
|
||||
|
@ -176,12 +176,12 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
DAC->CTRLA.bit.SWRST = 1;
|
||||
while (DAC->CTRLA.bit.SWRST == 1) {}
|
||||
// Make sure there are no outstanding access errors. (Reading DATA can cause this.)
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
PAC->INTFLAGD.reg = PAC_INTFLAGD_DAC;
|
||||
#endif
|
||||
|
||||
bool channel0_enabled = true;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
channel0_enabled = self->left_channel == &pin_PA02 || self->right_channel == &pin_PA02;
|
||||
bool channel1_enabled = self->left_channel == &pin_PA05 || self->right_channel == &pin_PA05;
|
||||
#endif
|
||||
|
@ -195,7 +195,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
DAC_CTRLB_EOEN |
|
||||
DAC_CTRLB_VPD;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
DAC->EVCTRL.reg |= DAC_EVCTRL_STARTEI0;
|
||||
DAC->DACCTRL[0].reg = DAC_DACCTRL_CCTRL_CC100K |
|
||||
DAC_DACCTRL_ENABLE |
|
||||
|
@ -203,7 +203,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
DAC->CTRLB.reg = DAC_CTRLB_REFSEL_VREFPU;
|
||||
#endif
|
||||
}
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (channel1_enabled) {
|
||||
DAC->EVCTRL.reg |= DAC_EVCTRL_STARTEI1;
|
||||
DAC->DACCTRL[1].reg = DAC_DACCTRL_CCTRL_CC100K |
|
||||
|
@ -218,7 +218,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
#ifdef SAMD21
|
||||
while (DAC->STATUS.bit.SYNCBUSY == 1) {}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
while (DAC->SYNCBUSY.bit.ENABLE == 1) {}
|
||||
while (channel0_enabled && DAC->STATUS.bit.READY0 == 0) {}
|
||||
while (channel1_enabled && DAC->STATUS.bit.READY1 == 0) {}
|
||||
|
@ -243,7 +243,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
|
||||
// Use the 48mhz clocks on both the SAMD21 and 51 because we will be going much slower.
|
||||
uint8_t tc_gclk = 0;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
tc_gclk = 1;
|
||||
#endif
|
||||
|
||||
|
@ -253,7 +253,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
// Don't bother setting the period. We set it before you playback anything.
|
||||
tc_set_enable(t, false);
|
||||
tc_reset(t);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
t->COUNT16.WAVE.reg = TC_WAVE_WAVEGEN_MFRQ;
|
||||
#endif
|
||||
#ifdef SAMD21
|
||||
|
@ -268,7 +268,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
#ifdef SAMD21
|
||||
#define FIRST_TC_GEN_ID EVSYS_ID_GEN_TC3_OVF
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
#define FIRST_TC_GEN_ID EVSYS_ID_GEN_TC0_OVF
|
||||
#endif
|
||||
uint8_t tc_gen_id = FIRST_TC_GEN_ID + 3 * tc_index;
|
||||
|
@ -282,7 +282,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
|
|||
mp_raise_RuntimeError(translate("All event channels in use"));
|
||||
}
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
connect_event_user_to_channel(EVSYS_ID_USER_DAC_START_1, channel);
|
||||
if (right_channel != NULL) {
|
||||
gpio_set_pin_function(self->right_channel->number, GPIO_PIN_FUNCTION_B);
|
||||
|
@ -322,7 +322,7 @@ void common_hal_audioio_audioout_deinit(audioio_audioout_obj_t* self) {
|
|||
#ifdef SAMD21
|
||||
while (DAC->STATUS.bit.SYNCBUSY == 1) {}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
while (DAC->SYNCBUSY.bit.ENABLE == 1) {}
|
||||
#endif
|
||||
|
||||
|
@ -332,7 +332,7 @@ void common_hal_audioio_audioout_deinit(audioio_audioout_obj_t* self) {
|
|||
|
||||
reset_pin_number(self->left_channel->number);
|
||||
self->left_channel = NULL;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
reset_pin_number(self->right_channel->number);
|
||||
self->right_channel = NULL;
|
||||
#endif
|
||||
|
@ -369,7 +369,7 @@ void common_hal_audioio_audioout_play(audioio_audioout_obj_t* self,
|
|||
#ifdef SAMD21
|
||||
uint32_t max_sample_rate = 350000;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t max_sample_rate = 1000000;
|
||||
#endif
|
||||
if (sample_rate > max_sample_rate) {
|
||||
|
@ -382,7 +382,7 @@ void common_hal_audioio_audioout_play(audioio_audioout_obj_t* self,
|
|||
DAC_DMAC_ID_EMPTY);
|
||||
#endif
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t left_channel_reg = (uint32_t) &DAC->DATABUF[0].reg;
|
||||
uint8_t tc_trig_id = TC0_DMAC_ID_OVF + 3 * self->tc_index;
|
||||
uint8_t left_channel_trigger = tc_trig_id;
|
||||
|
@ -416,7 +416,7 @@ void common_hal_audioio_audioout_play(audioio_audioout_obj_t* self,
|
|||
#endif
|
||||
if (result != AUDIO_DMA_OK) {
|
||||
audio_dma_stop(&self->left_dma);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
audio_dma_stop(&self->right_dma);
|
||||
#endif
|
||||
if (result == AUDIO_DMA_DMA_BUSY) {
|
||||
|
@ -434,7 +434,7 @@ void common_hal_audioio_audioout_play(audioio_audioout_obj_t* self,
|
|||
|
||||
void common_hal_audioio_audioout_pause(audioio_audioout_obj_t* self) {
|
||||
audio_dma_pause(&self->left_dma);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
audio_dma_pause(&self->right_dma);
|
||||
#endif
|
||||
}
|
||||
|
@ -444,12 +444,12 @@ void common_hal_audioio_audioout_resume(audioio_audioout_obj_t* self) {
|
|||
#ifdef SAMD21
|
||||
DAC->INTFLAG.reg = DAC_INTFLAG_UNDERRUN;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
DAC->INTFLAG.reg = DAC_INTFLAG_UNDERRUN0 | DAC_INTFLAG_UNDERRUN1;
|
||||
#endif
|
||||
|
||||
audio_dma_resume(&self->left_dma);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
audio_dma_resume(&self->right_dma);
|
||||
#endif
|
||||
}
|
||||
|
@ -462,7 +462,7 @@ void common_hal_audioio_audioout_stop(audioio_audioout_obj_t* self) {
|
|||
Tc* timer = tc_insts[self->tc_index];
|
||||
timer->COUNT16.CTRLBSET.reg = TC_CTRLBSET_CMD_STOP;
|
||||
audio_dma_stop(&self->left_dma);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
audio_dma_stop(&self->right_dma);
|
||||
#endif
|
||||
// Ramp the DAC to default. The start is ignored when the current value can be readback.
|
||||
|
|
|
@ -36,7 +36,7 @@ typedef struct {
|
|||
mp_obj_base_t base;
|
||||
const mcu_pin_obj_t *left_channel;
|
||||
audio_dma_t left_dma;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
const mcu_pin_obj_t *right_channel;
|
||||
audio_dma_t right_dma;
|
||||
#endif
|
||||
|
|
|
@ -341,7 +341,7 @@ bool common_hal_busio_spi_read(busio_spi_obj_t *self,
|
|||
return status >= 0; // Status is number of chars read or an error code < 0.
|
||||
}
|
||||
|
||||
bool common_hal_busio_spi_transfer(busio_spi_obj_t *self, uint8_t *data_out, uint8_t *data_in, size_t len) {
|
||||
bool common_hal_busio_spi_transfer(busio_spi_obj_t *self, const uint8_t *data_out, uint8_t *data_in, size_t len) {
|
||||
if (len == 0) {
|
||||
return true;
|
||||
}
|
||||
|
@ -350,7 +350,7 @@ bool common_hal_busio_spi_transfer(busio_spi_obj_t *self, uint8_t *data_out, uin
|
|||
status = sercom_dma_transfer(self->spi_desc.dev.prvt, data_out, data_in, len);
|
||||
} else {
|
||||
struct spi_xfer xfer;
|
||||
xfer.txbuf = data_out;
|
||||
xfer.txbuf = (uint8_t*) data_out;
|
||||
xfer.rxbuf = data_in;
|
||||
xfer.size = len;
|
||||
status = spi_m_sync_transfer(&self->spi_desc, &xfer);
|
||||
|
|
|
@ -58,7 +58,7 @@ void common_hal_busio_uart_construct(busio_uart_obj_t *self,
|
|||
const mcu_pin_obj_t * tx, const mcu_pin_obj_t * rx,
|
||||
const mcu_pin_obj_t * rts, const mcu_pin_obj_t * cts,
|
||||
const mcu_pin_obj_t * rs485_dir, bool rs485_invert,
|
||||
uint32_t baudrate, uint8_t bits, uart_parity_t parity, uint8_t stop,
|
||||
uint32_t baudrate, uint8_t bits, busio_uart_parity_t parity, uint8_t stop,
|
||||
mp_float_t timeout, uint16_t receiver_buffer_size, byte* receiver_buffer,
|
||||
bool sigint_enabled) {
|
||||
|
||||
|
@ -105,7 +105,7 @@ void common_hal_busio_uart_construct(busio_uart_obj_t *self,
|
|||
continue;
|
||||
}
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (potential_sercom->USART.CTRLA.bit.ENABLE != 0 ||
|
||||
!(tx->sercom[i].pad == 0)) {
|
||||
continue;
|
||||
|
@ -195,7 +195,7 @@ void common_hal_busio_uart_construct(busio_uart_obj_t *self,
|
|||
SERCOM_USART_CTRLA_FORM_Msk);
|
||||
sercom->USART.CTRLA.reg |= SERCOM_USART_CTRLA_TXPO(tx_pad / 2) |
|
||||
SERCOM_USART_CTRLA_RXPO(rx_pad) |
|
||||
(parity == PARITY_NONE ? 0 : SERCOM_USART_CTRLA_FORM(1));
|
||||
(parity == BUSIO_UART_PARITY_NONE ? 0 : SERCOM_USART_CTRLA_FORM(1));
|
||||
|
||||
// Enable tx and/or rx based on whether the pins were specified.
|
||||
// CHSIZE is 0 for 8 bits, 5, 6, 7 for 5, 6, 7 bits. 1 for 9 bits, but we don't support that.
|
||||
|
@ -206,7 +206,7 @@ void common_hal_busio_uart_construct(busio_uart_obj_t *self,
|
|||
SERCOM_USART_CTRLB_CHSIZE_Msk);
|
||||
sercom->USART.CTRLB.reg |= (have_tx ? SERCOM_USART_CTRLB_TXEN : 0) |
|
||||
(have_rx ? SERCOM_USART_CTRLB_RXEN : 0) |
|
||||
(parity == PARITY_ODD ? SERCOM_USART_CTRLB_PMODE : 0) |
|
||||
(parity == BUSIO_UART_PARITY_ODD ? SERCOM_USART_CTRLB_PMODE : 0) |
|
||||
(stop > 1 ? SERCOM_USART_CTRLB_SBMODE : 0) |
|
||||
SERCOM_USART_CTRLB_CHSIZE(bits % 8);
|
||||
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
|
||||
static frequencyio_frequencyin_obj_t *active_frequencyins[TC_INST_NUM];
|
||||
volatile uint8_t reference_tc = 0xff;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
static uint8_t dpll_gclk;
|
||||
#endif
|
||||
|
||||
|
@ -67,7 +67,7 @@ void frequencyin_emergency_cancel_capture(uint8_t index) {
|
|||
NVIC_DisableIRQ(EIC_IRQn);
|
||||
NVIC_ClearPendingIRQ(EIC_IRQn);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
NVIC_DisableIRQ(EIC_0_IRQn + self->channel);
|
||||
NVIC_ClearPendingIRQ(EIC_0_IRQn + self->channel);
|
||||
#endif
|
||||
|
@ -78,7 +78,7 @@ void frequencyin_emergency_cancel_capture(uint8_t index) {
|
|||
#ifdef SAMD21
|
||||
NVIC_EnableIRQ(EIC_IRQn);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
NVIC_EnableIRQ(EIC_0_IRQn + self->channel);
|
||||
#endif
|
||||
mp_raise_RuntimeError(translate("Frequency captured is above capability. Capture Paused."));
|
||||
|
@ -107,7 +107,7 @@ void frequencyin_interrupt_handler(uint8_t index) {
|
|||
self->factor = (uint32_t) (current_ns - self->last_ns) / 1000000.0;
|
||||
self->last_ns = current_ns;
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
tc->COUNT16.CTRLBSET.bit.CMD = TC_CTRLBSET_CMD_READSYNC_Val;
|
||||
while ((tc->COUNT16.SYNCBUSY.bit.COUNT == 1) ||
|
||||
(tc->COUNT16.CTRLBSET.bit.CMD == TC_CTRLBSET_CMD_READSYNC_Val)) {
|
||||
|
@ -121,7 +121,7 @@ void frequencyin_interrupt_handler(uint8_t index) {
|
|||
}
|
||||
self->frequency = new_freq;
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
tc->COUNT16.CTRLBSET.bit.CMD = TC_CTRLBSET_CMD_RETRIGGER_Val;
|
||||
while ((tc->COUNT16.SYNCBUSY.bit.COUNT == 1) ||
|
||||
(tc->COUNT16.CTRLBSET.bit.CMD == TC_CTRLBSET_CMD_RETRIGGER_Val)) {
|
||||
|
@ -151,7 +151,7 @@ void frequencyin_reference_tc_init() {
|
|||
#endif
|
||||
// use the DPLL we setup so that the reference_tc and freqin_tc(s)
|
||||
// are using the same clock frequency.
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
if (dpll_gclk == 0xff) {
|
||||
frequencyin_samd51_start_dpll();
|
||||
}
|
||||
|
@ -168,7 +168,7 @@ void frequencyin_reference_tc_init() {
|
|||
tc->COUNT16.INTENSET.bit.OVF = 1;
|
||||
NVIC_EnableIRQ(TC3_IRQn + reference_tc);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
tc->COUNT16.CTRLA.reg = TC_CTRLA_MODE_COUNT16 |
|
||||
TC_CTRLA_PRESCALER_DIV1;
|
||||
tc->COUNT16.INTENSET.bit.OVF = 1;
|
||||
|
@ -192,7 +192,7 @@ void frequencyin_reference_tc_enable(bool enable) {
|
|||
tc_set_enable(tc, enable);
|
||||
}
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
void frequencyin_samd51_start_dpll() {
|
||||
if (clock_get_enabled(0, GCLK_SOURCE_DPLL1)) {
|
||||
return;
|
||||
|
@ -259,7 +259,7 @@ void common_hal_frequencyio_frequencyin_construct(frequencyio_frequencyin_obj_t*
|
|||
#ifdef SAMD21
|
||||
((EIC->INTENSET.vec.EXTINT & mask) != 0 || (EIC->EVCTRL.vec.EXTINTEO & mask) != 0)) {
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
((EIC->INTENSET.bit.EXTINT & mask) != 0 || (EIC->EVCTRL.bit.EXTINTEO & mask) != 0)) {
|
||||
#endif
|
||||
mp_raise_RuntimeError(translate("EXTINT channel already in use"));
|
||||
|
@ -280,7 +280,7 @@ void common_hal_frequencyio_frequencyin_construct(frequencyio_frequencyin_obj_t*
|
|||
#ifdef SAMD21
|
||||
self->TC_IRQ = TC3_IRQn + timer_index;
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
self->TC_IRQ = TC0_IRQn + timer_index;
|
||||
#endif
|
||||
|
||||
|
@ -292,7 +292,7 @@ void common_hal_frequencyio_frequencyin_construct(frequencyio_frequencyin_obj_t*
|
|||
set_timer_handler(timer_index, 0, TC_HANDLER_NO_INTERRUPT);
|
||||
turn_on_clocks(true, timer_index, 0);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
frequencyin_samd51_start_dpll();
|
||||
if (dpll_gclk == 0xff && !clock_get_enabled(0, GCLK_SOURCE_DPLL1)) {
|
||||
common_hal_frequencyio_frequencyin_deinit(self);
|
||||
|
@ -318,7 +318,7 @@ void common_hal_frequencyio_frequencyin_construct(frequencyio_frequencyin_obj_t*
|
|||
masked_value = EIC->EVCTRL.vec.EXTINTEO;
|
||||
EIC->EVCTRL.vec.EXTINTEO = masked_value | (1 << self->channel);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
masked_value = EIC->EVCTRL.bit.EXTINTEO;
|
||||
EIC->EVCTRL.bit.EXTINTEO = masked_value | (1 << self->channel);
|
||||
EIC->ASYNCH.bit.ASYNCH = 1;
|
||||
|
@ -334,7 +334,7 @@ void common_hal_frequencyio_frequencyin_construct(frequencyio_frequencyin_obj_t*
|
|||
#ifdef SAMD21
|
||||
connect_event_user_to_channel((EVSYS_ID_USER_TC3_EVU + timer_index), evsys_channel);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
connect_event_user_to_channel((EVSYS_ID_USER_TC0_EVU + timer_index), evsys_channel);
|
||||
#endif
|
||||
init_async_event_channel(evsys_channel, (EVSYS_ID_GEN_EIC_EXTINT_0 + self->channel));
|
||||
|
@ -349,7 +349,7 @@ void common_hal_frequencyio_frequencyin_construct(frequencyio_frequencyin_obj_t*
|
|||
tc->COUNT16.EVCTRL.bit.EVACT = TC_EVCTRL_EVACT_COUNT_Val;
|
||||
#endif
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
tc->COUNT16.EVCTRL.reg = TC_EVCTRL_EVACT(TC_EVCTRL_EVACT_COUNT_Val) | TC_EVCTRL_TCEI;
|
||||
tc->COUNT16.CTRLA.reg = TC_CTRLA_MODE_COUNT16 |
|
||||
TC_CTRLA_PRESCALER_DIV1;
|
||||
|
@ -393,7 +393,7 @@ void common_hal_frequencyio_frequencyin_deinit(frequencyio_frequencyin_obj_t* se
|
|||
uint32_t masked_value = EIC->EVCTRL.vec.EXTINTEO;
|
||||
EIC->EVCTRL.vec.EXTINTEO = masked_value ^ (1 << self->channel);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
disable_event_user(EVSYS_ID_USER_TC0_EVU + self->tc_index);
|
||||
uint32_t masked_value = EIC->EVCTRL.bit.EXTINTEO;
|
||||
EIC->EVCTRL.bit.EXTINTEO = masked_value ^ (1 << self->channel);
|
||||
|
@ -427,7 +427,7 @@ void common_hal_frequencyio_frequencyin_deinit(frequencyio_frequencyin_obj_t* se
|
|||
if (!check_active) {
|
||||
frequencyin_reference_tc_enable(false);
|
||||
reference_tc = 0xff;
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
frequencyin_samd51_stop_dpll();
|
||||
#endif
|
||||
}
|
||||
|
@ -438,7 +438,7 @@ uint32_t common_hal_frequencyio_frequencyin_get_item(frequencyio_frequencyin_obj
|
|||
#ifdef SAMD21
|
||||
NVIC_DisableIRQ(EIC_IRQn);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
NVIC_DisableIRQ(EIC_0_IRQn + self->channel);
|
||||
#endif
|
||||
|
||||
|
@ -462,7 +462,7 @@ uint32_t common_hal_frequencyio_frequencyin_get_item(frequencyio_frequencyin_obj
|
|||
NVIC_ClearPendingIRQ(EIC_IRQn);
|
||||
NVIC_EnableIRQ(EIC_IRQn);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
NVIC_ClearPendingIRQ(EIC_0_IRQn + self->channel);
|
||||
NVIC_EnableIRQ(EIC_0_IRQn + self->channel);
|
||||
#endif
|
||||
|
@ -481,7 +481,7 @@ void common_hal_frequencyio_frequencyin_pause(frequencyio_frequencyin_obj_t* sel
|
|||
uint32_t masked_value = EIC->EVCTRL.vec.EXTINTEO;
|
||||
EIC->EVCTRL.vec.EXTINTEO = masked_value ^ (1 << self->channel);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t masked_value = EIC->EVCTRL.bit.EXTINTEO;
|
||||
EIC->EVCTRL.bit.EXTINTEO = masked_value ^ (1 << self->channel);
|
||||
#endif
|
||||
|
@ -499,7 +499,7 @@ void common_hal_frequencyio_frequencyin_resume(frequencyio_frequencyin_obj_t* se
|
|||
uint32_t masked_value = EIC->EVCTRL.vec.EXTINTEO;
|
||||
EIC->EVCTRL.vec.EXTINTEO = masked_value | (1 << self->channel);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t masked_value = EIC->EVCTRL.bit.EXTINTEO;
|
||||
EIC->EVCTRL.bit.EXTINTEO = masked_value | (1 << self->channel);
|
||||
#endif
|
||||
|
@ -512,7 +512,7 @@ void common_hal_frequencyio_frequencyin_clear(frequencyio_frequencyin_obj_t* sel
|
|||
#ifdef SAMD21
|
||||
NVIC_DisableIRQ(EIC_IRQn);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
NVIC_DisableIRQ(EIC_0_IRQn + self->channel);
|
||||
#endif
|
||||
|
||||
|
@ -524,7 +524,7 @@ void common_hal_frequencyio_frequencyin_clear(frequencyio_frequencyin_obj_t* sel
|
|||
NVIC_ClearPendingIRQ(EIC_IRQn);
|
||||
NVIC_EnableIRQ(EIC_IRQn);
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
NVIC_ClearPendingIRQ(EIC_0_IRQn + self->channel);
|
||||
NVIC_EnableIRQ(EIC_0_IRQn + self->channel);
|
||||
#endif
|
||||
|
|
|
@ -50,7 +50,7 @@ void frequencyin_emergency_cancel_capture(uint8_t index);
|
|||
void frequencyin_reference_tc_init(void);
|
||||
void frequencyin_reference_tc_enable(bool enable);
|
||||
bool frequencyin_reference_tc_enabled(void);
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
void frequencyin_samd51_start_dpll(void);
|
||||
void frequencyin_samd51_stop_dpll(void);
|
||||
#endif
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "shared-bindings/i2cslave/I2CSlave.h"
|
||||
#include "shared-bindings/i2cperipheral/I2CPeripheral.h"
|
||||
#include "common-hal/busio/I2C.h"
|
||||
|
||||
#include "lib/utils/interrupt_char.h"
|
||||
|
@ -35,7 +35,7 @@
|
|||
#include "hal/include/hal_gpio.h"
|
||||
#include "peripherals/samd/sercom.h"
|
||||
|
||||
void common_hal_i2cslave_i2c_slave_construct(i2cslave_i2c_slave_obj_t *self,
|
||||
void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_peripheral_obj_t *self,
|
||||
const mcu_pin_obj_t *scl, const mcu_pin_obj_t *sda,
|
||||
uint8_t *addresses, unsigned int num_addresses, bool smbus) {
|
||||
uint8_t sercom_index;
|
||||
|
@ -87,19 +87,19 @@ void common_hal_i2cslave_i2c_slave_construct(i2cslave_i2c_slave_obj_t *self,
|
|||
|
||||
if (smbus) {
|
||||
sercom->I2CS.CTRLA.bit.LOWTOUTEN = 1; // Errata 12003
|
||||
sercom->I2CS.CTRLA.bit.SEXTTOEN = 1; // Slave SCL Low Extend/Cumulative Time-Out 25ms
|
||||
sercom->I2CS.CTRLA.bit.SEXTTOEN = 1; // SCL Low Extend/Cumulative Time-Out 25ms
|
||||
}
|
||||
sercom->I2CS.CTRLA.bit.SCLSM = 0; // Clock stretch before ack
|
||||
sercom->I2CS.CTRLA.bit.MODE = 0x04; // Slave mode
|
||||
sercom->I2CS.CTRLA.bit.MODE = 0x04; // Device mode
|
||||
sercom->I2CS.CTRLA.bit.ENABLE = 1;
|
||||
}
|
||||
|
||||
bool common_hal_i2cslave_i2c_slave_deinited(i2cslave_i2c_slave_obj_t *self) {
|
||||
bool common_hal_i2cperipheral_i2c_peripheral_deinited(i2cperipheral_i2c_peripheral_obj_t *self) {
|
||||
return self->sda_pin == NO_PIN;
|
||||
}
|
||||
|
||||
void common_hal_i2cslave_i2c_slave_deinit(i2cslave_i2c_slave_obj_t *self) {
|
||||
if (common_hal_i2cslave_i2c_slave_deinited(self)) {
|
||||
void common_hal_i2cperipheral_i2c_peripheral_deinit(i2cperipheral_i2c_peripheral_obj_t *self) {
|
||||
if (common_hal_i2cperipheral_i2c_peripheral_deinited(self)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -111,7 +111,7 @@ void common_hal_i2cslave_i2c_slave_deinit(i2cslave_i2c_slave_obj_t *self) {
|
|||
self->scl_pin = NO_PIN;
|
||||
}
|
||||
|
||||
static int i2c_slave_check_error(i2cslave_i2c_slave_obj_t *self, bool raise) {
|
||||
static int i2c_peripheral_check_error(i2cperipheral_i2c_peripheral_obj_t *self, bool raise) {
|
||||
if (!self->sercom->I2CS.INTFLAG.bit.ERROR) {
|
||||
return 0;
|
||||
}
|
||||
|
@ -130,9 +130,9 @@ static int i2c_slave_check_error(i2cslave_i2c_slave_obj_t *self, bool raise) {
|
|||
return -err;
|
||||
}
|
||||
|
||||
int common_hal_i2cslave_i2c_slave_is_addressed(i2cslave_i2c_slave_obj_t *self, uint8_t *address, bool *is_read, bool *is_restart)
|
||||
int common_hal_i2cperipheral_i2c_peripheral_is_addressed(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t *address, bool *is_read, bool *is_restart)
|
||||
{
|
||||
int err = i2c_slave_check_error(self, false);
|
||||
int err = i2c_peripheral_check_error(self, false);
|
||||
if (err) {
|
||||
return err;
|
||||
}
|
||||
|
@ -149,22 +149,22 @@ int common_hal_i2cslave_i2c_slave_is_addressed(i2cslave_i2c_slave_obj_t *self, u
|
|||
|
||||
for (unsigned int i = 0; i < self->num_addresses; i++) {
|
||||
if (*address == self->addresses[i]) {
|
||||
common_hal_i2cslave_i2c_slave_ack(self, true);
|
||||
common_hal_i2cperipheral_i2c_peripheral_ack(self, true);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
// This should clear AMATCH, but it doesn't...
|
||||
common_hal_i2cslave_i2c_slave_ack(self, false);
|
||||
common_hal_i2cperipheral_i2c_peripheral_ack(self, false);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int common_hal_i2cslave_i2c_slave_read_byte(i2cslave_i2c_slave_obj_t *self, uint8_t *data) {
|
||||
int common_hal_i2cperipheral_i2c_peripheral_read_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t *data) {
|
||||
for (int t = 0; t < 100 && !self->sercom->I2CS.INTFLAG.reg; t++) {
|
||||
mp_hal_delay_us(10);
|
||||
}
|
||||
|
||||
i2c_slave_check_error(self, true);
|
||||
i2c_peripheral_check_error(self, true);
|
||||
|
||||
if (!self->sercom->I2CS.INTFLAG.bit.DRDY ||
|
||||
self->sercom->I2CS.INTFLAG.bit.PREC ||
|
||||
|
@ -176,12 +176,12 @@ int common_hal_i2cslave_i2c_slave_read_byte(i2cslave_i2c_slave_obj_t *self, uint
|
|||
return 1;
|
||||
}
|
||||
|
||||
int common_hal_i2cslave_i2c_slave_write_byte(i2cslave_i2c_slave_obj_t *self, uint8_t data) {
|
||||
int common_hal_i2cperipheral_i2c_peripheral_write_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t data) {
|
||||
for (int t = 0; !self->sercom->I2CS.INTFLAG.reg && t < 100; t++) {
|
||||
mp_hal_delay_us(10);
|
||||
}
|
||||
|
||||
i2c_slave_check_error(self, true);
|
||||
i2c_peripheral_check_error(self, true);
|
||||
|
||||
if (self->sercom->I2CS.INTFLAG.bit.PREC) {
|
||||
return 0;
|
||||
|
@ -203,12 +203,12 @@ int common_hal_i2cslave_i2c_slave_write_byte(i2cslave_i2c_slave_obj_t *self, uin
|
|||
return 1;
|
||||
}
|
||||
|
||||
void common_hal_i2cslave_i2c_slave_ack(i2cslave_i2c_slave_obj_t *self, bool ack) {
|
||||
void common_hal_i2cperipheral_i2c_peripheral_ack(i2cperipheral_i2c_peripheral_obj_t *self, bool ack) {
|
||||
self->sercom->I2CS.CTRLB.bit.ACKACT = !ack;
|
||||
self->sercom->I2CS.CTRLB.bit.CMD = 0x03;
|
||||
}
|
||||
|
||||
void common_hal_i2cslave_i2c_slave_close(i2cslave_i2c_slave_obj_t *self) {
|
||||
void common_hal_i2cperipheral_i2c_peripheral_close(i2cperipheral_i2c_peripheral_obj_t *self) {
|
||||
for (int t = 0; !self->sercom->I2CS.INTFLAG.reg && t < 100; t++) {
|
||||
mp_hal_delay_us(10);
|
||||
}
|
||||
|
@ -218,7 +218,7 @@ void common_hal_i2cslave_i2c_slave_close(i2cslave_i2c_slave_obj_t *self) {
|
|||
}
|
||||
|
||||
if (!self->sercom->I2CS.STATUS.bit.DIR) {
|
||||
common_hal_i2cslave_i2c_slave_ack(self, false);
|
||||
common_hal_i2cperipheral_i2c_peripheral_ack(self, false);
|
||||
} else {
|
||||
int i = 0;
|
||||
while (self->sercom->I2CS.INTFLAG.reg == SERCOM_I2CS_INTFLAG_DRDY) {
|
||||
|
@ -246,7 +246,7 @@ void common_hal_i2cslave_i2c_slave_close(i2cslave_i2c_slave_obj_t *self) {
|
|||
|
||||
if (self->sercom->I2CS.STATUS.bit.CLKHOLD) {
|
||||
// Unable to release the clock.
|
||||
// The slave might have to be re-initialized to get unstuck.
|
||||
// The device might have to be re-initialized to get unstuck.
|
||||
mp_raise_OSError(MP_EIO);
|
||||
}
|
||||
}
|
|
@ -24,8 +24,8 @@
|
|||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_SLAVE_H
|
||||
#define MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_SLAVE_H
|
||||
#ifndef MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
|
||||
#define MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
|
||||
|
||||
#include "common-hal/microcontroller/Pin.h"
|
||||
#include "py/obj.h"
|
||||
|
@ -40,6 +40,6 @@ typedef struct {
|
|||
uint8_t scl_pin;
|
||||
uint8_t sda_pin;
|
||||
bool writing;
|
||||
} i2cslave_i2c_slave_obj_t;
|
||||
} i2cperipheral_i2c_peripheral_obj_t;
|
||||
|
||||
#endif // MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_SLAVE_H
|
||||
#endif // MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
|
|
@ -0,0 +1 @@
|
|||
// No i2cperipheral module functions.
|
|
@ -1 +0,0 @@
|
|||
// No i2cslave module functions.
|
|
@ -45,7 +45,7 @@ bool speaker_enable_in_use;
|
|||
|
||||
#define PORT_COUNT (PORT_BITS / 32 + 1)
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
#define SWD_MUX GPIO_PIN_FUNCTION_H
|
||||
#endif
|
||||
#ifdef SAMD21
|
||||
|
@ -80,7 +80,7 @@ void reset_all_pins(void) {
|
|||
|
||||
// Configure SWD. SWDIO will be automatically switched on PA31 when a signal is input on
|
||||
// SWCLK.
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
gpio_set_pin_function(PIN_PA30, MUX_PA30H_CM4_SWCLK);
|
||||
#endif
|
||||
#ifdef SAMD21
|
||||
|
@ -136,7 +136,7 @@ void reset_pin_number(uint8_t pin_number) {
|
|||
#endif
|
||||
|
||||
if (pin_number == PIN_PA30
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
) {
|
||||
#endif
|
||||
#ifdef SAMD21
|
||||
|
@ -199,7 +199,7 @@ bool pin_number_is_free(uint8_t pin_number) {
|
|||
return false;
|
||||
}
|
||||
if (pin_number == PIN_PA30
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
) {
|
||||
#endif
|
||||
#ifdef SAMD21
|
||||
|
|
|
@ -163,7 +163,7 @@ STATIC float calculate_temperature(uint16_t raw_value) {
|
|||
}
|
||||
#endif // SAMD21
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
STATIC float calculate_temperature(uint16_t TP, uint16_t TC) {
|
||||
uint32_t TLI = (*(uint32_t *)FUSES_ROOM_TEMP_VAL_INT_ADDR & FUSES_ROOM_TEMP_VAL_INT_Msk) >> FUSES_ROOM_TEMP_VAL_INT_Pos;
|
||||
uint32_t TLD = (*(uint32_t *)FUSES_ROOM_TEMP_VAL_DEC_ADDR & FUSES_ROOM_TEMP_VAL_DEC_Msk) >> FUSES_ROOM_TEMP_VAL_DEC_Pos;
|
||||
|
@ -231,7 +231,7 @@ float common_hal_mcu_processor_get_temperature(void) {
|
|||
return calculate_temperature(value);
|
||||
#endif // SAMD21
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
adc_sync_set_resolution(&adc, ADC_CTRLB_RESSEL_12BIT_Val);
|
||||
// Using INTVCC0 as the reference voltage.
|
||||
// INTVCC1 seems to read a little high.
|
||||
|
@ -285,7 +285,7 @@ float common_hal_mcu_processor_get_voltage(void) {
|
|||
adc_sync_set_reference(&adc, ADC_REFCTRL_REFSEL_INT1V_Val);
|
||||
#endif
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
hri_supc_set_VREF_SEL_bf(SUPC, SUPC_VREF_SEL_1V0_Val);
|
||||
hri_supc_set_VREF_VREFOE_bit(SUPC);
|
||||
|
||||
|
@ -332,7 +332,7 @@ void common_hal_mcu_processor_get_uid(uint8_t raw_id[]) {
|
|||
uint32_t* id_addresses[4] = {(uint32_t *) 0x0080A00C, (uint32_t *) 0x0080A040,
|
||||
(uint32_t *) 0x0080A044, (uint32_t *) 0x0080A048};
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
uint32_t* id_addresses[4] = {(uint32_t *) 0x008061FC, (uint32_t *) 0x00806010,
|
||||
(uint32_t *) 0x00806014, (uint32_t *) 0x00806018};
|
||||
#endif
|
||||
|
|
|
@ -31,7 +31,10 @@
|
|||
|
||||
#include "supervisor/port.h"
|
||||
|
||||
#ifdef SAMD51
|
||||
#if defined(SAME54)
|
||||
#include "hri/hri_cmcc_e54.h"
|
||||
#include "hri/hri_nvmctrl_e54.h"
|
||||
#elif defined(SAMD51)
|
||||
#include "hri/hri_cmcc_d51.h"
|
||||
#include "hri/hri_nvmctrl_d51.h"
|
||||
#endif
|
||||
|
@ -53,7 +56,7 @@ static void neopixel_send_buffer_core(volatile uint32_t *clraddr, uint32_t pinMa
|
|||
#ifdef SAMD21
|
||||
" movs r6, #3; d2: sub r6, #1; bne d2;" // delay 3
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
" movs r6, #3; d2: subs r6, #1; bne d2;" // delay 3
|
||||
#endif
|
||||
" tst r4, r5;" // mask&r5
|
||||
|
@ -63,14 +66,14 @@ static void neopixel_send_buffer_core(volatile uint32_t *clraddr, uint32_t pinMa
|
|||
#ifdef SAMD21
|
||||
" movs r6, #6; d0: sub r6, #1; bne d0;" // delay 6
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
" movs r6, #6; d0: subs r6, #1; bne d0;" // delay 6
|
||||
#endif
|
||||
" str r1, [r0, #0];" // clr (possibly again, doesn't matter)
|
||||
#ifdef SAMD21
|
||||
" asr r4, r4, #1;" // mask >>= 1
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
" asrs r4, r4, #1;" // mask >>= 1
|
||||
#endif
|
||||
" beq nextbyte;"
|
||||
|
@ -78,7 +81,7 @@ static void neopixel_send_buffer_core(volatile uint32_t *clraddr, uint32_t pinMa
|
|||
#ifdef SAMD21
|
||||
" movs r6, #2; d1: sub r6, #1; bne d1;" // delay 2
|
||||
#endif
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
" movs r6, #2; d1: subs r6, #1; bne d1;" // delay 2
|
||||
#endif
|
||||
" b loopBit;"
|
||||
|
@ -108,7 +111,7 @@ void common_hal_neopixel_write(const digitalio_digitalinout_obj_t* digitalinout,
|
|||
mp_hal_disable_all_interrupts();
|
||||
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
// When this routine is positioned at certain addresses, the timing logic
|
||||
// below can be too fast by about 2.5x. This is some kind of (un)fortunate code
|
||||
// positioning with respect to a cache line.
|
||||
|
@ -135,7 +138,7 @@ void common_hal_neopixel_write(const digitalio_digitalinout_obj_t* digitalinout,
|
|||
volatile uint32_t *clr = &(port->OUTCLR.reg);
|
||||
neopixel_send_buffer_core(clr, pinMask, pixels, numBytes);
|
||||
|
||||
#ifdef SAMD51
|
||||
#ifdef SAM_D5X_E5X
|
||||
// Turn instruction, data, and NVM caches back on.
|
||||
hri_cmcc_clear_CFG_reg(CMCC, CMCC_CFG_DCDIS | CMCC_CFG_ICDIS);
|
||||
hri_nvmctrl_clear_CTRLA_CACHEDIS0_bit(NVMCTRL);
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue