OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 872|回复: 6

[XILINX] zynq-7000 linux开发xilinx串口源码驱动,能发送给PC,但接收不到PC的消息,请问这是什么原因?

[复制链接]

30

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
254
金钱
254
注册时间
2020-10-19
在线时间
54 小时
发表于 2024-4-10 13:12:37 | 显示全部楼层 |阅读模式
我想尝试驱动Zynq_PS端的ttyPS1串口。该串口我在vivado设计时是通过EMIO方式绑定在PL端引脚。在内核定制时,我可以确定将串口驱动编译进内核。上电后,我检查了物理连接,并且实现了终端到PC的发送,但是PC发送的消息,终端却无法显示。
因为整个过程不用动设备树和驱动源码。所以我不清楚到底哪里产生问题导致没有接收,我用逻辑分析仪查看PC的TX确实是有输出的。还请大佬指点一下
2.png

vivado设计

vivado设计
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

102

帖子

0

精华

高级会员

Rank: 4

积分
645
金钱
645
注册时间
2021-8-3
在线时间
152 小时
发表于 2024-4-10 13:52:40 | 显示全部楼层
vivado工程里看上去是uart0。
回复 支持 反对

使用道具 举报

30

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
254
金钱
254
注册时间
2020-10-19
在线时间
54 小时
 楼主| 发表于 2024-4-10 14:38:20 | 显示全部楼层
helloqds 发表于 2024-4-10 13:52
vivado工程里看上去是uart0。
  1. root@IODrivers:~# cat /proc/tty/driver/xuartps
  2. serinfo:1.0 driver revision:
  3. 0: uart:xuartps mmio:0xE0001000 irq:26 tx:1048 rx:57 RTS|CTS|DTR|DSR|CD
  4. 1: uart:xuartps mmio:0xE0000000 irq:25 tx:0 rx:0 CTS|DSR|CD
  5. root@IODrivers:~# stty -F /dev/ttyPS0 ispeed 115200 ospeed 115200 cs8
  6. root@IODrivers:~# echo "www.openedv.com" >/dev/ttyPS0
  7. www.openedv.com
复制代码


这是我尝试用ttyPS0发送接收的情况,实际是发送时XCOM没有接收到,而是在终端显示,然后cat查看接收时,也没有接收。我的这个板子USB串口在硬件电路上是绑定到了UART1上。我在vivado中EMIO是UART0,按道理讲应该是UART0能够和教程一样收发,但实际情况就是上面这种。并且UART1是能发不能收。
回复 支持 反对

使用道具 举报

2

主题

102

帖子

0

精华

高级会员

Rank: 4

积分
645
金钱
645
注册时间
2021-8-3
在线时间
152 小时
发表于 2024-4-11 09:04:57 | 显示全部楼层
无糖加冰123 发表于 2024-4-10 14:38
这是我尝试用ttyPS0发送接收的情况,实际是发送时XCOM没有接收到,而是在终端显示,然后cat查看接收 ...

不清楚了,正常板子串口终端是能显示接收的,引脚分配没问题吧
回复 支持 反对

使用道具 举报

30

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
254
金钱
254
注册时间
2020-10-19
在线时间
54 小时
 楼主| 发表于 2024-4-11 09:10:23 | 显示全部楼层
helloqds 发表于 2024-4-11 09:04
不清楚了,正常板子串口终端是能显示接收的,引脚分配没问题吧

嗯嗯,没问题的,物理连接检查过了,就是比较好奇一点,为什么system-top.dts中,serial0 = &uart1 serial1 = &uart0.我尝试修改,结果上电系统进不去内核了。我自己再找找原因吧。
回复 支持 反对

使用道具 举报

30

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
254
金钱
254
注册时间
2020-10-19
在线时间
54 小时
 楼主| 发表于 2024-4-11 19:16:05 | 显示全部楼层
无糖加冰123 发表于 2024-4-11 09:10
嗯嗯,没问题的,物理连接检查过了,就是比较好奇一点,为什么system-top.dts中,serial0 = &uart1 seria ...

是没问题的,cat /dev/ttyPS1 没有显示,然后用cat /proc/tty/driver/xuartps就能看到发送和接收的变化了。想问下,为什么cat /dev/设备 有时候能看到,有时候看不到
回复 支持 反对

使用道具 举报

30

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
254
金钱
254
注册时间
2020-10-19
在线时间
54 小时
 楼主| 发表于 2024-4-11 19:36:54 | 显示全部楼层
无糖加冰123 发表于 2024-4-11 19:16
是没问题的,cat /dev/ttyPS1 没有显示,然后用cat /proc/tty/driver/xuartps就能看到发送和接收的变化了 ...

不用回复了大佬,我晓得了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 10:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表