瀏覽代碼

T4.1 - Serial8 is on pins 34 and 35

Serial8 is now defined for T4.1.

Previously it was defined for T4B1, but went away on T4B2 and released.  It is now defined on the T4.1
main
Kurt Eckhardt 5 年之前
父節點
當前提交
3a6c237825
共有 3 個文件被更改,包括 8 次插入7 次删除
  1. +1
    -1
      teensy4/HardwareSerial.cpp
  2. +3
    -3
      teensy4/HardwareSerial.h
  3. +4
    -3
      teensy4/HardwareSerial8.cpp

+ 1
- 1
teensy4/HardwareSerial.cpp 查看文件



#define UART_CLOCK 24000000 #define UART_CLOCK 24000000


#if defined(__IMXRT1052__)
#if defined(ARDUINO_TEENSY41)
SerialEventCheckingFunctionPointer HardwareSerial::serial_event_handler_checks[8] = {nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr}; SerialEventCheckingFunctionPointer HardwareSerial::serial_event_handler_checks[8] = {nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr};
#else #else
SerialEventCheckingFunctionPointer HardwareSerial::serial_event_handler_checks[7] = {nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr}; SerialEventCheckingFunctionPointer HardwareSerial::serial_event_handler_checks[7] = {nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr};

+ 3
- 3
teensy4/HardwareSerial.h 查看文件

extern void IRQHandler_Serial5(); extern void IRQHandler_Serial5();
extern void IRQHandler_Serial6(); extern void IRQHandler_Serial6();
extern void IRQHandler_Serial7(); extern void IRQHandler_Serial7();
#if defined(__IMXRT1052__)
#if defined(ARDUINO_TEENSY41)
extern void IRQHandler_Serial8(); extern void IRQHandler_Serial8();
#endif #endif
} }
friend void IRQHandler_Serial5(); friend void IRQHandler_Serial5();
friend void IRQHandler_Serial6(); friend void IRQHandler_Serial6();
friend void IRQHandler_Serial7(); friend void IRQHandler_Serial7();
#if defined(__IMXRT1052__)
#if defined(ARDUINO_TEENSY41)
friend void IRQHandler_Serial8(); friend void IRQHandler_Serial8();
static SerialEventCheckingFunctionPointer serial_event_handler_checks[8]; static SerialEventCheckingFunctionPointer serial_event_handler_checks[8];
#else #else
extern void serialEvent6(void); extern void serialEvent6(void);
extern void serialEvent7(void); extern void serialEvent7(void);


#if defined(__IMXRT1052__)
#if defined(ARDUINO_TEENSY41)
extern HardwareSerial Serial8; extern HardwareSerial Serial8;
extern void serialEvent8(void); extern void serialEvent8(void);
#endif #endif

+ 4
- 3
teensy4/HardwareSerial8.cpp 查看文件



#include <Arduino.h> #include <Arduino.h>
#include "HardwareSerial.h" #include "HardwareSerial.h"
#if defined(__IMXRT1052__)
#if defined(__IMXRT1062__) && defined(ARDUINO_TEENSY41)


#ifndef SERIAL8_TX_BUFFER_SIZE #ifndef SERIAL8_TX_BUFFER_SIZE
#define SERIAL8_TX_BUFFER_SIZE 40 // number of outgoing bytes to buffer #define SERIAL8_TX_BUFFER_SIZE 40 // number of outgoing bytes to buffer
static HardwareSerial::hardware_t UART5_Hardware = { static HardwareSerial::hardware_t UART5_Hardware = {
7, IRQ_LPUART5, &IRQHandler_Serial8, &serial_event_check_serial8, 7, IRQ_LPUART5, &IRQHandler_Serial8, &serial_event_check_serial8,
CCM_CCGR3, CCM_CCGR3_LPUART5(CCM_CCGR_ON), CCM_CCGR3, CCM_CCGR3_LPUART5(CCM_CCGR_ON),
{{30,2, &IOMUXC_LPUART5_RX_SELECT_INPUT, 0}, {0xff, 0xff, nullptr, 0}},
{{31,2, nullptr, 0}, {0xff, 0xff, nullptr, 0}},
{{34,1, &IOMUXC_LPUART5_RX_SELECT_INPUT, 1}, {0xff, 0xff, nullptr, 0}},
{{35,1, &IOMUXC_LPUART5_TX_SELECT_INPUT, 1}, {0xff, 0xff, nullptr, 0}},

0xff, // No CTS pin 0xff, // No CTS pin
0, // No CTS 0, // No CTS
IRQ_PRIORITY, 38, 24, // IRQ, rts_low_watermark, rts_high_watermark IRQ_PRIORITY, 38, 24, // IRQ, rts_low_watermark, rts_high_watermark

Loading…
取消
儲存