发新帖我要提问
12
返回列表
打印

写串口通信程序,第一反应是采用中断+队列方式。

[复制链接]
楼主: 农民讲习所
手机看帖
扫描二维码
随时随地手机跟帖
21
victech| | 2008-5-15 22:07 | 只看该作者 回帖奖励 |倒序浏览

学习中......

期待

使用特权

评论回复
22
农民讲习所|  楼主 | 2008-5-16 09:11 | 只看该作者

数组和队列

区别:
  数组使用一个索引访问,读和写
  队列使用两个索引访问,一个读一个写

  数组增加一个索引,就是对列的一个形状。

  队列常用指针方式做索引,
  用指针可以减少计算偏移的计算量。访问范围不受限制。
  一般在256之类,可以用数组下标字节访问,而超过256用指针好。

  队列是数组的扩展。

使用特权

评论回复
23
| | 2008-5-16 09:20 | 只看该作者

听课...

使用特权

评论回复
24
gyt| | 2008-5-16 12:46 | 只看该作者

谢谢发表

使用特权

评论回复
25
hotpower| | 2008-5-16 12:50 | 只看该作者

读指针=写指针时认为队列空,写入后写指针与读指针相等下次

使用特权

评论回复
26
古道热肠| | 2008-5-16 13:03 | 只看该作者

环形队列的概念在“数据结构”上有详细的介绍

我想所长所讲的队列应该也是环形队列,环形队列用起来方便,在PC机键盘接口中就用到这种技术,PC机键盘按键产生中断,数据送缓冲区,X86MCU有空时或定时来查查缓冲区,有数据要处理就从缓冲区中获取按键码。

使用特权

评论回复
27
Etual| | 2008-5-16 14:18 | 只看该作者

哈哈,所长厉害

连我想做什么都知道了。确实是想做个命令控制台。
谢谢你的解答了。我再做做实验参透一下。

使用特权

评论回复
28
jimoom| | 2008-5-16 14:47 | 只看该作者

串口发数据一般都这么做吧。

串口发数据一般都这么做吧。

说到延时,第一想到的是利用主循环延时。

使用特权

评论回复
29
n_ever| | 2008-5-16 17:05 | 只看该作者

关注,学习

使用特权

评论回复
30
gsb1227| | 2008-5-16 22:18 | 只看该作者

楼主讲讲啊!我也是用中断加数组的,队列是怎么弄的呢?

使用特权

评论回复
31
machunshui| | 2008-5-16 23:04 | 只看该作者

找本数据结构,翻翻

找本数据结构,翻翻,
队列是比较简单的数据结构

使用特权

评论回复
32
5880527| | 2008-5-16 23:05 | 只看该作者

没系统学习过,自己也不知道是啥招式

现在的单片机RAM很宽敞,给通讯划两片区域。一股脑的接收回来慢慢收拾,当然中间也有很多纠错,收拾完了把要发的数据放另一区域,然后开始发送。

使用特权

评论回复
33
Swd21ic| | 2008-5-17 00:08 | 只看该作者

re

队列在数据结构里倒是很容易的..

一个指针插入.一个指针取出.或者可以构成循环的队列..

问题是不太清楚用在这里它比数组好在哪?

一般就用中断收字节数.解析后存在数组里.

最后解包的时候再从后台里把数组的数据取出...- -!

使用特权

评论回复
34
itelectron| | 2010-1-23 20:22 | 只看该作者
我也是用中断加数组的:L

使用特权

评论回复
35
NE5532| | 2010-1-24 11:21 | 只看该作者
看了这个题目,第一个反应就是:如果还有其他需要及时响应的任务,肯定完了。

使用特权

评论回复
36
ecomputer| | 2010-2-5 16:31 | 只看该作者
哈哈,我用了几次数组就用循环队列了,想了几天晚上想到用队列,后来看数据结构的书发现还是知识面太窄,对于搞单片机就应该多看点软件架构,数据结构上面的书

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则