wk2168驱动调试(三)
来源:互联网 发布:百度人工智能研发 编辑:程序博客网 时间:2024/06/06 01:15
断断续续的调了几天,今天终于把wk这块片子调试完成。
解决了数据发送超32个字符会死的,rs485支持问题。
32个字符会死的问题是由多核处理器引起的,在定位问题时,把一个核关闭,处于一个cpu时,就一点点问题都没有。
root@ ss /sys/devices/system/cpu/cpu1$ echo 0 >online
[ 3555.955602] CPU1: shutdown
这样操作完,数据收发完全正常。明确了问题是多核引起的问题。
多核问题上,用spin_lock_irqrestore来关,不仅关中断,还要关cpu同步,这样操作上保证串行。读写寄存器,读写fifo时都加锁,这样才会有效。
在中断处理上,不要嵌套处理,这样不会内部死锁。
基本上这个问题就解决了。
rs485问题:
按芯片手册增加485配置,且要把RTSDLY 这个配置上数值,不然rts不会生效。
验证时,通过数据收发,rts引脚上有高低电平产生,调试就基本完成。
阅读全文
0 0
- wk2168驱动调试(三)
- wk2168驱动调试(一)
- wk2168驱动调试(二)
- Windbg内核调试之三: 调试驱动
- Windbg内核调试之三: 调试驱动
- Windbg内核调试之三: 调试驱动
- Windbg内核调试之三: 调试驱动
- Windbg内核调试之三: 调试驱动
- 驱动调试
- 调试驱动
- 驱动调试
- 章三.Windows驱动编译环境配置、安装及调试(下)--驱动加载
- android 电容屏(三):驱动调试之驱动程序分析篇
- android 电容屏(三):驱动调试之驱动程序分析篇
- 章三.Windows驱动编译环境配置、安装及调试(上)
- android 电容屏(三):驱动调试之驱动程序分析篇
- android 电容屏(三):驱动调试之驱动程序分析篇
- android 电容屏(三):驱动调试之驱动程序分析篇
- strncmp和strncat库函数的实现。
- 数组内容随机排序
- org.springframework.data.mapping.model.MappingException: No id property found for object of type
- 阿里NLP架构与应用
- 同城信息发布小程序开发源码解析
- wk2168驱动调试(三)
- JavaScript for..in 练习
- 内螺旋矩阵和双螺旋矩阵(python)
- 史上最好用侧滑布局来自代码家大神的SwipeLayout(基于ViewDragHelper)
- Anaconda3 安装报错 bunzip2: command not found
- 初上语法总结
- CSS样式开篇
- [linux]如何使用命令安装gcc/g++, gdb, vim
- Android从代码到apk的编译过程