首页天道酬勤uart串口扩展芯片,uart串口最大速度

uart串口扩展芯片,uart串口最大速度

张世龙 05-13 01:04 94次浏览

% E3 % 80 % 90 tty % E3 % 80 % 91 % E5 % ba % 94 % E7 % 94 % A8 % E7 % A8 % E5 % ba % 8f % E8 % B0 % 83 % E7 % 94 % A8 writ % a9 % B1 % 20 ork % 281 % 29 _ % E6 % a6 % 82 % E8 % BF % B0 % 0a % 20 % 5bc 018 dddc % 5d % 20 % 28s 3c 24xx _ serial _ start % 28 UART _ start % 200 x0 % 2f0x 6c % 29 % 20 from % 20 %5BBB % 200 c38c 5800 % 20r 43360000000 % 5bc 018 b92c % 5d % 20 % 28 UART, _ tty _ write % 200 x0 % 2f0x 448 % 29 % 20 from % 20 % 5bc 0174258 % 5d % 20 % 28 tty _ write % 200 x144c % 2f0x 244 % 29 % 20 % 74350 % 5d % 20 % 28 redirected _ tty _ write % 200 xb4 % 2f0xe8% 29 % 20r 93360 c397e 000 % 20r 83360 c 00300 c8% 20r 736000000000000 7 % BD % E6 % 95 % B0 % E8 % B0 % 83 % E7 % a8tty % E6 % A0 % b8 % E5 % BF % 83 tty _ write % 28 % ef % BC % 8ct tty % 2087 % 88 % 8e % E8 % B0 % 83 % E7 % 94 % a8tty % e9 % a9 % B1 % E5 % A8 % E5 % 87 % BD % E6 % 95 % b0s 3c 24xx _ serial _ start _ % 2020007 a % 2033 358 www.sww % 20 % E6 % 8e % a5 % E5 % 8f % a3 % E5 % B0 % 86 % E6 % 95 % B0 % E6 % 8d % ae9 % 81 % E5 % 88 % B0 UART E6 % 98 % af % ef % BC % 8c % E5 % 25 % 2098 % E8 % a6 % E4 % BD % E7 % 94 % a8tty % E6 % a1 % E6 % BD % BF % E7 % af 5 % af % B9 % E5 % ba % 94 % E7 % 96 % B0 % 84 line % 20f % af % E4 % bb % a5 % E4 % b8 % E5 % 81 % 9a % ef % BC % 8c % E8 % E7 % 94 % A8 % E4 % ba % 86t ty _ flush _ to _ l disc % E6 % 25 % 20 % ad % 0a % 20 % e9 % 80 % 9a % E8 % BF % 87 proc % E6 - driver _ name % 2c % 200 % 2c % 20 proc _ tty _ driver % 2c driver-ops-proc _ fops % 20 droc % 20 driver % 20 % 9b % AE r _ mode % 28 % 27 tty % 2软驱% 27 % 2c % 20s _ IR usr % 7cs _ ixusr % 2c % 20 null % 29 % 3b % 20 % E6 % B3 % A8 % E5 % 85 2c % E5 % 86 % af % ef % EC % 201 % af % 0a % 20 cat % 20 % 2f proc % 2f tty %2fdriver % 2f XXX _ UART % 20 % E8 % BF % 99 % e9 s-UART _ proc _ fops-UART _ proc _ open-UART _ pproc % 20 seq _ file % 20 % 2am % 2c % 20 struct % 20 UART _ driver % 20 state-port %3benum % 20 UART _ pm _ state % 20pm _ state % 3b struct % 20 UART _ port % 20 %2au port % 200 mmio % 3b mutte 状态% 29 %3BIF % 20 % 28 % 25 % 20 mem %3bseq _ printf % 28m % 2c % 20 % 27 % d : % 20 UART 3360 % 25s % 20 % 25s % 08 llx cmmio % 20 % 3f % 20 % 28 unsigned % 20 long % 20 long % 29 u port-map base % 2033 360

nsigned long long)uport->iobase,uport->irq);if (uport->type == PORT_UNKNOWN) {seq_putc(m, '\n');goto out;}if (capable(CAP_SYS_ADMIN)) {pm_state = state->pm_state;if (pm_state != UART_PM_STATE_ON)uart_change_pm(state, UART_PM_STATE_ON);spin_lock_irq(&uport->lock);status = uport->ops->get_mctrl(uport);spin_unlock_irq(&uport->lock);if (pm_state != UART_PM_STATE_ON)uart_change_pm(state, pm_state);seq_printf(m, " tx:%d rx:%d",uport->icount.tx, uport->icount.rx);if (uport->icount.frame)seq_printf(m, " fe:%d",uport->icount.frame);if (uport->icount.parity)seq_printf(m, " pe:%d",uport->icount.parity);if (uport->icount.brk)seq_printf(m, " brk:%d", uport->icount.brk);if (uport->icount.overrun)seq_printf(m, " oe:%d", uport->icount.overrun);#define INFOBIT(bit, str) \if (uport->mctrl & (bit)) \strncat(stat_buf, (str), sizeof(stat_buf) - \strlen(stat_buf) - 2)#define STATBIT(bit, str) \if (status & (bit)) \strncat(stat_buf, (str), sizeof(stat_buf) - \ strlen(stat_buf) - 2)stat_buf[0] = '\0';stat_buf[1] = '\0';INFOBIT(TIOCM_RTS, "|RTS");STATBIT(TIOCM_CTS, "|CTS");INFOBIT(TIOCM_DTR, "|DTR");STATBIT(TIOCM_DSR, "|DSR");STATBIT(TIOCM_CAR, "|CD");STATBIT(TIOCM_RNG, "|RI");if (stat_buf[0])stat_buf[0] = ' ';seq_puts(m, stat_buf);}seq_putc(m, '\n');#undef STATBIT#undef INFOBITout:mutex_unlock(&port->mutex);}

amlogic的串口,发了几个,先发再计数:

UART遇到两个与 stty 相关问题

powr待机下面收发包数据数量不对,发现是功耗问题

休眠状态下UART通讯服务异常

现象调试:没有接usb调试线,容易复现,接了usb线,没有复现分析:问题与cpu进入低功耗有关,低功耗时,cpu进入suspend状态,clk会受到影响修改方案有三种:1.系统应用检测到power按键,只关屏2.系统完全不进入低功耗,只关屏,现在是部分低功耗3.电机在上位机系统进入低功耗做逻辑处理 方案2在2台机器测试 了2个小时没有复现

Android关闭屏幕,但不休眠

[DISPLAY] control lcd backlight only to solve uart transmission slowly when power key trigger Change-Id: Id39969d917e409e9d447be814fa64c44878edf70diff --git a/frameworks/base/services/core/java/com/android/server/power/PowerManagerService.java b/frameworks/base/services/core/java/com/android/server/power/PowerManagerService.javaindex 9a9ff80f18..794d350a2c 100755--- a/frameworks/base/services/core/java/com/android/server/power/PowerManagerService.java+++ b/frameworks/base/services/core/java/com/android/server/power/PowerManagerService.java@@ -1631,7 +1631,7 @@ public final class PowerManagerService extends SystemService // Phase 6: Update suspend blocker. // Because we might release the last suspend blocker here, we need to make sure // we finished everything else first!- updateSuspendBlockerLocked();+ // updateSuspendBlockerLocked(); } finally { Trace.traceEnd(Trace.TRACE_TAG_POWER); }

概率开机串口应用通讯问题:

复现定位类似情况,

打开蓝牙,可以搜索

rs422调试发现串口tx没有问题

先mv /system/zzdyd/fiture_uart /system/zzdyd/fiture-uart.bak

再kill 3436(fitureuart pid)

再echo发数据到ttyS4



再将fiture_uart弄回去,又可以正常工作了,

结论,此次复现不是uart的功能问题

底层绑定cpu

// yuqianjiang add ttyS4 affinity cpu 3, fixed loss data; 2021-11-12 17:53 if (port->line == 4) { irq_set_affinity_hint(port->irq, get_cpu_mask(3)); }

上次说绑到CPU3, 但是rc中去设置是不允许设置, 只能绑定为CPU1 和 cpu2

/device/amlogic/common/products/mbox/init.amlogic.system.rcon property:sys.boot_completed=1 # affinity CPU3 write /proc/irq/44/smp_affinity "8" start fiture_uart
uart串口接线图,stm32f103串口数据接收 uart串口通信原理,linux串口读取命令