請問當UART 收到字串時,它是如何分析and 處理字串的?
-
- 帖子: 49
- 注册时间: 2009-03-12 17:09
請問當UART 收到字串時,它是如何分析and 處理字串的?
as title.
-
- 帖子: 27
- 注册时间: 2009-08-04 13:53
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
uart把接受到的字符放到一个它专用的寄存器里面,然后处理要你自己去写函数处理,比如写个函数从那个寄存器里面取出来就是,就像从某个物理地址取值一样简单。想把取出来的值是搓还是贬就看你自己了。呵呵~
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
自己去读啊。
如果有接受多极缓冲,还好。如果只有一级,那最好中断去读,要不就被冲掉。
分析,,,自己作。
硬件最多帮你分析是否丢帧等错误,有错误标志位。
如果有接受多极缓冲,还好。如果只有一级,那最好中断去读,要不就被冲掉。
分析,,,自己作。

硬件最多帮你分析是否丢帧等错误,有错误标志位。
● 鸣学
-
- 帖子: 27
- 注册时间: 2009-08-04 13:53
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
楼上的兄弟,你讲的太复杂。没那么麻烦,代码我自己都能写。你不想经常自己去读的话,写几个函数封装一下读那个专门寄存器的地址然后处理就OK了。至于那个寄存器的地址你可以从厂商提供的源文档里可以查找到。不同的硬件平台这个地址是不同的。
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
-
- 帖子: 49
- 注册时间: 2009-03-12 17:09
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
請問當我們在shell 上key 字的時後,kernel怎麼解析我們key的 字?
-
- 帖子: 27
- 注册时间: 2009-08-04 13:53
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
你这种问题太泛了, 没问到重点,要跟你讲清这个要花很久的时间打字。要讲很多原理。~~
- 懒蜗牛Gentoo
- 论坛版主
- 帖子: 7362
- 注册时间: 2007-03-02 17:36
- 系统: Linux Mint
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
这事貌似不贵kernel管,归shell管fuji65 写了:請問當我們在shell 上key 字的時後,kernel怎麼解析我們key的 字?
虽然世上没有完美的东西,但这并不影响我们追求完美,因为只有偏执狂才TMD能成功。
10.04新手入门——笨兔兔讲述自己的故事
10.04新手入门——笨兔兔讲述自己的故事
-
- 帖子: 49
- 注册时间: 2009-03-12 17:09
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
如果想在kernel 寫個函數處理由UART傳來的東西,不知UART收來的data都放在哪?
-
- 帖子: 133
- 注册时间: 2007-11-05 21:58
- 来自: CH
Re: 請問當UART 收到字串時,它是如何分析and 處理字串的?
问一个问题能够显示你对这个问题理解的程度。
9楼的这个问题问的比一楼的这个要稍好一点, PC上一般都是兼容16550的, chipset硬件上有提供一个小小的FIFO.
如果你需要自己处理UART控制器, 你就可以直接访问到收到的数据。鉴于你问问题的深度,你应该不是在问这个。
如果你通过操作系统来访问, 所要做的就是打开串口对应的设备文件,把他当作一个流来处理。
9楼的这个问题问的比一楼的这个要稍好一点, PC上一般都是兼容16550的, chipset硬件上有提供一个小小的FIFO.
如果你需要自己处理UART控制器, 你就可以直接访问到收到的数据。鉴于你问问题的深度,你应该不是在问这个。
如果你通过操作系统来访问, 所要做的就是打开串口对应的设备文件,把他当作一个流来处理。