Linuxer.
全部博文(199)
发布时间:2013-02-22 16:49:47
三、串口的打开在用户空间执行open操作的时候,就会执行uart_ops->open. Uart_ops的定义如下: tty_open=>init_dev=>initialize_tty_struct=>tty_ldisc_assign=>将tty_ldisc_N_TTY复制给该dev然后tty->driver->open(tty, filp);tty->driver为上面uart_register_driver时注册的tty_driver驱动,它的操作方法集.........【阅读全文】
发布时间:2013-02-20 17:36:57
初始化就是初始化以下串口结构: static int __init serial8250_init(void){int ret;if (nr_uarts > UART_NR)//UART_NR =3nr_uarts = UART_NR;//串口数量最多设为3个printk(KERN_INFO "Serial: 8250/16550 driver, ""%d ports, IRQ sharing %sabled\n", nr_uarts,share_irqs ? "en" : "dis");#ifdef.........【阅读全文】
发布时间:2013-02-20 11:14:17
一、串口的初始化main.c(setup_arch(&command_line);)---->setup.c(paging_init(mdesc);)---->mmu.c(devicemaps_init(mdesc);)---->mmu.c(mdesc->map_io();)---->\arch\arm\mach-davinci\board-da850-evm.c(.map_io = da850_evm_map_io,)---->\arch\arm\mach-davinci\da850.c(void __init da850_init(void))1.........【阅读全文】
发布时间:2013-02-19 14:55:27
网上许多流行的linux串口编程的版本中都没对c_iflag(termios成员变量)这个变量进行有效的设置,这样传送ASCII码时没什么问题,但传送二进制数据时遇到0x0d,0x11和0x13却会被丢掉。不用说也知道,这几个肯定是特殊字符,被用作特殊控制了。关掉ICRNL和IXON选项即可解决。 c_ifl.........【阅读全文】
发布时间:2013-01-28 15:58:28
1、串口概述 用户常见的数据通信的基本方式有两种:并行通信和串行通信。 串行通信是计算机常用的接口,如:RS-232-C接口。该标准规定采用一个DB25芯引脚连接器或DB9芯引脚连接器。芯片内部常具有UART控制器,其可工作于Interrupt(中断模式)或DMA(直接内存访问)模式。 .........【阅读全文】