通过SD转接头使用串口
连接幽兰与上位机
具体方法请看:https://www.nanocode.cn/wiki/docs/youlan/youlansd
1.调用串口
进入dev目录,cd /dev
执行以下命令echo aaa | sudo tee -a ttyFIQ0
可以看到我们成功在串口打印了想要的信息。
如发现不能正常串口打印可按以下步骤检查
使用刘姥姥检查串口功能
2.检查SD卡是否插上
下载新的llaolao模块:https://github.com/gedulab/llaolao.git
进入文件夹cd llaolao
后执行make
使用 sudo insmod llaolao2.ko
加载模块
执行lsmod
查看模块是否加载
当llaolao模块成功加载后执行以下命令查看SD卡是否插上echo 3588_sdsts | sudo tee -a /proc/llaolao
再执行dmesg
显示为0时为sd卡已插上,显示为1时sd卡未插上
3.检查SD卡的串口功能
执行echo 3588_uart_on | sudo tee -a /proc/llaolao
后
执行dmesg
查看,寄存器后两位的值是aa说明sd卡的串口功能已经开启
在幽兰使用葫芦娃(GourBoy)切换JTAG/SD模式,执行以上操作会发现值为55aa是JTAG模式,11aa是SD模式
使用脚本检查串口功能
4.查看是哪个tty调用串口打印
我们写个脚本测试一下,创建脚本文件ttytest.sh,写上以下内容。
#!/bin/bash
ttyarr=()
ls -lh /dev > ./dev_list.txt
awk -F " " '{printf("group: %s, dev: %s\n", $4, $10)}' ./dev_list.txt | grep tty > ./tty_list.txt
awk -F " " '{printf("%s\n", $4)}' ./tty_list.txt > ./tty_arr.txt
while read line; do
ttyarr+=("$line")
done < ./tty_arr.txt
rm -rf ./*.txt
for i in "${!ttyarr[@]}";
do
echo "----id: $i----dev: ${ttyarr[i]}----"
echo "hello tty device, your are num:$i, with name: ${ttyarr[i]}" | sudo tee -a /dev/"${ttyarr[i]}"
echo -e "\n"
done
exit 0
执行以下命令来执行脚本文件
chmod +x ttytest.sh
sudo ./ttytest.sh
我的可以看到是ttyFIQ0调用了串口打印。echo aaa | sudo tee -a ttyFIQ0
那么只需要将后面的串口修改成能正确调用的串口名称就行了
作者:李梓涌 创建时间:2023-08-18 13:00
最后编辑:李梓涌 更新时间:2024-12-20 17:01
最后编辑:李梓涌 更新时间:2024-12-20 17:01