易截截图软件、单文件、免安装、纯绿色、仅160KB

[咨询] Linux Kernel UART 收发数据

大家好!
    CPU的UART1口连接外设的UART,如何在内核中实现UART的通信,实现对外设数据的收发?
    请指导,谢谢!

http://www.lupaworld.com/325267/viewspace-136664.html

有必要 在内核态使用串口数据么 ?

这个外设需同内核中某模块进行信令交互,因此放在Kernel中好些,
CPU有两UART,uart0个已做console了,另外一个uart1计划用来与外设通信,
曾尝试吧uart1作为ttyS1,但导致其实际上输入输出都在ttyS0(即uart0)上。
内核中的UART部分好些是console方面的,第一次接触,不是很清楚具体的uart驱动,请指教,谢谢!


引用
一般都不在内核直接操作外设来进行通信
都是内核提供驱动接口
由用户程序通过读写设备文件来进行数据通信的
因为内核栈小而有限,内核驱动出了bug影响很大,还有涉及到进程调度内核驱动占尽便宜,恐怕影响整体性能。

lz一定要在内核空间做的话,把原来的UART驱动改吧改吧就行了嘛



忙了一周,搞定了!
系统启动时初始化console口会初始化uart_port,之后调用early_serial_setup即可!
打开串口设备时记得把ECHO等屏蔽,否则每次收到数据后就会写回去。
......
struct uart_port up;
up.mapbase      = XXXXXXXXXXXXXXXXXX;
up.membase      = ioremap_nocache(up.mapbase,XXXXXXXXXXXXXXXX);
up.irq          = XXXXXXXXXXXXXXXXXXXXXXXXXX;
up.uartclk      = 50000000;
up.regshift    = 2;


相关问答:

java如何控制远程Linux重启

我目前在本地的linux上写了一个swing的界面,想通过这个界面来控制其它电脑的linux重启。
我知道用Runtime.getRuntime().exec("shutdown -r");可以控制本机Linux重启,但是怎么控制远程的linux重启呢? ......

linux教程 - Linux/Unix社区 / 系统维护与使用区

有什么好的Linux教程吗?
小弟谢过~
[问题点数:0分]

google

据说鸟哥的私房菜不错。

鸟哥的Linux私房菜
更多的再这上面去搜索一下很LIUNX书籍还不错

引用
google
正解

鸟哥的Linux私房菜  ......

在 LINUX系统中的ORACLE怎么新建表空间?

请教:
在 LINUX系统中的ORACLE怎么新建表空间?
一样的命令啊。如果没用omf的话,你就指定下路径和数据文件名就行了。
create tablespace xxx datafile '/u01/..../aaa.dbf' size 10m;

CREATE TA ......

LINUX下卸载JDK问题

我用RPM报安装了一个老版本的JRE,后来想装新版本的,
不过,我把/usr/java目录直接给删了,
后再安装的时候,总是提示版本冲突,
而且我用RPM包卸载时也找不到文件了。
我对LINUX不熟悉,希望高手帮忙。
http: ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号