Comments (9)
@thesourcerer8 commented about getting uart to work here:
https://github.com/thesourcerer8/mpw2-stdcell-tests/blob/main/uart_test/uart_test.c
from caravel_board.
@abdullahyildiz I think they are electrically connected, UART is on E7
and F7
, respectively mapped to mprj_io[5]
and mprj_io[6]
which onnect to CN11
PF0
and CN12
PE11
of the nucleo Morpho connector:
but don't seem to be currently surfaced in the micropython HAL UART definitions.
from caravel_board.
found out that we can actually bridge one of the existing UART port defined here:
https://github.com/micropython/micropython/blob/master/ports/stm32/boards/NUCLEO_F746ZG/mpconfigboard.h#L38-L39
by setting the pin #9
to C_DISABLE
in gpio_config_io.py
and leaving its register untouched in set_registers
and then physically bridging IO[9]
(which correspond to MICROPY_HW_UART6_RX
(G9
) with IO[6]
using a jumper cable:
The data from the caravel serial port can then be read from the micropython environment using:
uart = machine.UART(6, 9600)
print(uart.read())
from caravel_board.
There is also no register defined for setting the UART baud rate (i.e., divisor) in csr.h. Is it included as a register field in one of the other CSRs?
from caravel_board.
but it would be nice to also have the caravel UART
defined in the nucleo micropython machine
environment, currently it returns:
uart = UART(0, 9600) # init with given baudrate
from machine import UART
uart = UART(0, 9600) # init with given baudrate
uart.init(9600, bits=8, parity=None, stop=1) # init with given parameters
uart.read()
Traceback (most recent call last):
File "<stdin>", line 5, in <module>
ValueError: UART(0) doesn't exist
from caravel_board.
it particular it seems that UART8
(which correspond to https://caravel-harness.readthedocs.io/en/latest/uart.html) is not plugged into the default nucleo HAL:
https://github.com/micropython/micropython/blob/05bb26010e4a466a82cfed179f8d8d0b406a78ca/ports/stm32/boards/NUCLEO_F746ZG/mpconfigboard.h#L32-L39
from caravel_board.
As far as I know, MicroPython is a software stack which runs on Nucleo board and UART peripheral on Caravel management SoC is not controlled by MicroPython.
from caravel_board.
@abdullahyildiz yep, but the hardware pin that export the hardware bus are physically connected to the Nucleo board, so it should be possible to surface them to the micropython environment thru the HAL.
from caravel_board.
UART peripheral pins on management SoC is not connected to Nucleo board. We were able to interact with it by standard UART cable.
from caravel_board.
Related Issues (20)
- add nucleo micropython firmware to the repo HOT 1
- expose all mprj_io pins in the micropython HAL HOT 2
- Flexy pins socket on caravel development boards
- caravel procurement HOT 3
- caravel nucleo board schematic should be searchable
- add 5V support for GFMPW-0 for caravel development board and nucleo hat HOT 2
- dev-v5-M.2 component part numbers
- Board Issues Identified during bringup of CI2206 and GF180MCU
- read compare error when flashing blink firmware for GF-MPW-0 HOT 3
- Recent versions of RISC-V gcc require "zicsr" in the compile line. HOT 2
- Mention J2 use for serial communication through USB on chipignite Readme HOT 1
- windows FTDI issues
- uart mode confict for ftdi with UART_EN gpio pin HOT 1
- Add libgcc to firmware examples Makefiles?
- add pdf schematic of the dev board
- Mismatch of GPIO mapping in defs.h and documentation
- miniterm.py file for serial communication demo appears to be missing in the chipignite directory
- Caravel Rev 5B eval board: J6 (oscillator enable) & J2 (UART EN) label incorrect, misleading
- Setting register value
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from caravel_board.