Files
V2_micropython/config.py
jeremygan2021 6a64c54cae
All checks were successful
Deploy WebSocket Server / deploy (push) Successful in 19s
printer
2026-03-05 20:45:34 +08:00

134 lines
3.9 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from micropython import const
from machine import Pin, SPI
from time import sleep_ms
# ----------------------------打印机引脚配置-------------------------------------------------
# TTL 引脚配置
ttl_tx = Pin(18) # TTL TX 连接到引脚22
ttl_rx = Pin(17) # TTL RX 连接到引脚23
ttl_Dtr = Pin(12) # TTL TX 连接到引脚22
# ----------------------------epaper配置-------------------------------------------------
# SPI引脚配置
# sck = Pin(47) # SCK pin47
# miso = Pin(46) # MISO pin46
# mosi = Pin(21) # SDI/MOSI pin21
# # 控制引脚配置
# dc = Pin(40) # D/C pin40
# cs = Pin(45) # CS pin45
# rst = Pin(41) # RES pin41
# busy = Pin(42) # BUSY pin42
# # 按钮引脚配置
# btn1 = Pin(46, Pin.IN, Pin.PULL_UP) # 按钮1连接到引脚46
# btn2 = Pin(20, Pin.IN, Pin.PULL_UP) # 按钮2连接到引脚20
# btn3 = Pin(12, Pin.IN, Pin.PULL_UP) # 按钮3连接到引脚12
# btn4 = Pin(11, Pin.IN, Pin.PULL_UP) # 按钮4连接到引脚11
# # 蜂鸣器引脚配置
# buzzer_pin = 14 # 蜂鸣器连接到引脚14
# # epaper屏幕尺寸
# WIDTH = 400
# HEIGHT = 300
# # 初始化 SPI2HSPI/VSPI 视固件而定)
# spi = SPI(2, baudrate=2_000_000, polarity=0, phase=0,
# sck=sck, miso=miso, mosi=mosi)
# # 如果你板子上真有单独的 EPD 电源控制 FET就按实际 IO 改;
# # 若只是直接 3.3V 供电,可以把下面这一段去掉。
# epd_power = Pin(2, Pin.OUT)
# epd_power.on()
# sleep_ms(10)
# ----------------------------epaper配置-------------------------------------------------
class BoardConfig:
def __init__(self, name):
self.name = name
self.pins = {}
self.audio = {}
self.mic = {}
# -----------------------------------------------------------------------------
# 非摄像头版本配置 (NON_CAMERA_VERSION)
# 对应 C++: NON_CAMERA_VERSION_CONFIG
# -----------------------------------------------------------------------------
NON_CAMERA = BoardConfig("NON_CAMERA")
NON_CAMERA.pins = {
'bl': 3, # 背光
'mosi': 10, # SPI MOSI / SDA
'sck': 9, # SPI CLK / SCK
'dc': 46, # Data/Command
'rst': 11, # Reset
'cs': 12, # Chip Select
'btn': 0 # Boot按键
}
NON_CAMERA.audio = {
'enabled': True,
'sd': 7, # Serial Data (DOUT) -> 扬声器
'bck': 15, # Bit Clock (BCLK)
'ws': 16, # Word Select (LRCK)
'sample_rate': 24000
}
NON_CAMERA.mic = {
'enabled': True,
'sd': 6, # Serial Data (DIN) <- 麦克风
'sck': 5, # Bit Clock (SCK)
'ws': 4, # Word Select (WS)
'sample_rate': 16000
}
# -----------------------------------------------------------------------------
# 摄像头版本配置 (CAMERA_VERSION)
# 对应 C++: CAMERA_VERSION_CONFIG
# -----------------------------------------------------------------------------
CAMERA = BoardConfig("CAMERA")
CAMERA.pins = {
'bl': 38,
'mosi': 45,
'sck': 48,
'dc': 47,
'rst': 1,
'cs': None # 无 CS 引脚
}
# 摄像头版本使用 Duplex I2S (同一组引脚)
CAMERA.audio = {
'enabled': True,
'sd': 39, # DOUT
'bck': 42,
'ws': 40,
'sample_rate': 16000
}
CAMERA.mic = {
'enabled': True,
'sd': 41, # DIN
'sck': 42, # 复用 BCLK
'ws': 40, # 复用 WS
'sample_rate': 16000
}
# =============================================================================
# 当前使用的配置
# =============================================================================
# 默认使用 NON_CAMERA (普通版),请根据你的实际硬件选择
CURRENT_CONFIG = NON_CAMERA
# =============================================================================
# 服务器配置
# =============================================================================
SERVER_IP = "118.196.74.38"
SERVER_PORT = 8811
SERVER_PATH = "/ws/audio"
SERVER_URL = f"ws://{SERVER_IP}:{SERVER_PORT}{SERVER_PATH}"