wk2xxx_probe  //wk2xxx_uart.csetup_timer(&rx_timer, timer_function, 0);timer_function //每2s统计一次接收字节数uart_register_driver //serial_core.calloc_tty_drivertty_set_operations //初始化操作函数为serial_core.c中的uart_ops,设置波特率9600,带ECHO回显属性tty_register_driver  //tty_io.ctty_cdev_add //向driver添加操作函数为tty_fops的cdevdevice_registeruart_add_one_port(&wk2xxx_uart_driver, &s->port); //添加4个tty设备,关联uart_driver和port.opstty_open //tty_io.ctty->ops->openuart_open //serial_core.cuart_startupuart_port_startupuport->ops->startupwk2xxx_startup //wk2xxx_uart.cs->workqueue = create_singlethread_workqueue(b);//创建一条线程,专门处理该port的工作队列INIT_WORK(&s->work, wk2xxx_work);request_irqwk2xxx_irqdisable_irq_nosync //进入中断处理先关闭中断wk2xxx_doworkqueue_work(s->workqueue, &s->work); //每次中断到来,将前面初始化好的work丢进工作队列待处理wk2xxx_workwk2xxxirq_appwk2xxx_rx_charsuart_insert_char//把数据放进缓冲wk2xxx_tx_charsuart_circ_empty //从缓冲拿到数据enable_irq(s->port.irq);//重新打开中断tty_release    //tty_io.crelease_ttytty->ops->shutdownuart_shutdown //serail_core.cuart_port_shutdown uport->ops->shutdownwk2xxx_shutdown //wk2xxx_uart.ctty_write //tty_io.cdo_tty_writeld->ops->writeuart_write //serial_core.cCIRC_SPACE_TO_ENDuart_start__uart_startport->ops->start_txwk2xxx_start_tx //wk2xxx_uart.cs->start_tx_flag = 1;wk2xxx_doworkwk2xxx_write_reg(s->port.iobase,WK2XXX_SIER,rx);//启动写FIFO空中断tty_ioctl(TCSBRK) //tty_io.ctty_wait_until_senttty_chars_in_buffertty->ops->chars_in_bufferuart_chars_in_buffer //serial_core.cuart_circ_chars_pending //等待缓冲区中的数据消耗完毕tty->ops->wait_until_sentuart_wait_until_sent //serial_core.cwk2xxx_tx_empty

tty_io.c(tty_fops)


serial_core.c(tty_operations)


wk2xxx_uart.c(uart_ops)


MSM下串口扩展wk2114相关推荐

  1. 单串口扩展为4串口的芯片WK2114的使用(一)

    WK2114是国产的单个串口扩展为4个串口的芯片,串口1,串口2,串口3,串口4. 用的MCU是STM32F429 , 就是把STM32F429的串口1 扩展为 4个串口, 注意事项:   wk211 ...

  2. SJXXX串口扩展芯片 4串口芯片 UART串口芯片

    SJXX串口扩展芯片 1 概述 SJ000是一款具备I2C总线/SPI总线/UART接口的四通道异步收发器件,通过模式选择使得该器件工作于以上任何一种主接口模式下.器件的四个通道UART可提供高达2M ...

  3. linux设备驱动,tty串口编程 如何查看linux下串口是否可用?串口名称等

    如何查看linux下串口是否可用?串口名称等? http://zhidao.baidu.com/question/419148559.html 查看串口是否可用,可以对串口发送数据比如对com1口,e ...

  4. android 串口扩展(wk2xxx)移植

     转自http://blog.csdn.net/qwertyuiop159158/article/details/47957429 1.驱动移植  将wk2xxx_i2c.c wk2xxx.h 放 ...

  5. php rdkafka实例,linux下php扩展kafka的实例分享

    本文主要和大家分享linux下php扩展kafka的实例,希望能帮助到大家. 1.安装librdkafkawget https://github.com/edenhill/librdkafka/arc ...

  6. 如何查看linux下串口信息

    1.查看串口是否可用,可以对串口发送数据比如对com1口,echo lyjie126 > /dev/ttyS0 2.查看串口名称使用 ls -l /dev/ttyS* 一般情况下串口的名称全部在 ...

  7. linux实验串行端口程序设计,Linux下串口编程心得(转)

    最近一段时间,需要完成项目中关于Linux下使用串口的一个部分,现在开帖记录过程点滴. 项目的要求是这样的,Qt应用程序主要完成数据采集和发送功能,一开始在google中海搜关键字"Qt串口 ...

  8. Linux下C语言串口应用编程,Linux下串口C语言编程

    Linux下串口C语言编程 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 串口操作代码#include #include #inclu ...

  9. linux练习 串口跟进程6,linux下串口测试程序

    linux下串口测试程序 通过简单的参数配置,执行文件+串口号+波特率 #include stdio.h #include stdlib.h #include unistd.h #include sy ...

最新文章

  1. Fckeditor常见漏洞的挖掘与利用整理汇总
  2. TableLayoutPanel
  3. 深入理解 Ribbon-Hystrix-Feign 三者之间的关系(一)
  4. js 判断 undefined,单选 以及下拉框选中状态
  5. PowerDesigner 手记
  6. linux下使用nginx搭建集群,CentOS(linux) 下Nginx的安装(Nginx+Tomcat集群第一步)
  7. 【渝粤教育】国家开放大学2018年秋季 2503T学前儿童健康教育 参考试题
  8. SpringBoot中如何实现全链路调用日志跟踪?这方法才优雅!
  9. 黑客利用 Gatekeeper 0day 攻击 MacOS 计算机
  10. 宽带和流量是分开的吗_宽带
  11. 推荐一款非常好用的截图工具 - SETUNA2,【订】一下就解决了你做数据对照的麻烦
  12. WordPress主题插件Modown6.1绿色版+Erphpdown11.6等多插件
  13. iOS HealthKit
  14. HTML网页实训的目的,网页设计实习目的及意义
  15. 在reader中勾选pdf复选框_Excel中设计具有可任意勾选复选框的操作方法
  16. 操作抖音取名项目日赚 500 实战案例分析
  17. 微信开发 ━━ 微信商户更名后付款时仍旧为最初的简称,如何修改微信支付的店铺名称
  18. 如何更有效地使用kindle?
  19. 为什么说盲盒市场充满机遇
  20. win10分屏设置壁纸+获取win10锁屏壁纸

热门文章

  1. 地理围栏算法解析(Geo-fencing)
  2. Unity——责任链模式(土味情话传递)
  3. 电磁感应式无线充电系统详解
  4. 每秒处理10万订单乐视集团支付架构读后感
  5. 牛牛和DRB迷宫Ⅰ【动态规划】
  6. 根轨迹超前校正matlab,[自动化] 基于根轨迹法的超前校正
  7. 视频怎样转换html代码,超简单的视频格式转换方法,你会吗?
  8. python+opencv读取视频并设置可调整窗口大小
  9. echarts 重新渲染数据
  10. 2012多校联盟第二场1009 还是BFS