打印

PK 使人进步:晒晒你的串口程序

[复制链接]
楼主: 西安农民工
手机看帖
扫描二维码
随时随地手机跟帖
41
草履虫| | 2011-11-21 23:18 | 只看该作者 回帖奖励 |倒序浏览
LZ的程序是程序PK里的最差的了.中断处理的风格不可取.

使用特权

评论回复
42
寅辰思瑜| | 2011-11-22 08:40 | 只看该作者
理解有点难度也....

使用特权

评论回复
43
alaic123| | 2012-11-19 11:30 | 只看该作者
观摩学习

使用特权

评论回复
44
liaorx| | 2012-11-19 11:42 | 只看该作者
本帖最后由 liaorx 于 2012-11-19 11:55 编辑

一点小建议,如果有数据丢失,怎么办?代码中碰见异常,就直接转到HEAD了。在这种情况下,如果tail丢失了呢?那么下一个包的头就会被当作错误的tail丢弃,一旦这样,后面的一整个包都会被丢弃。也就是说,LZ的程序在理想情况下工作的很好,但是一旦通信出现少量问题,LZ的程序会把少量问题放大。考虑到程序的健壮性,我认为应该修改一下接收数据的处理,这个状态机不是单线的,而是有多种分支的。另外,接收数据的处理放在中断里面,恐不可取。最后结语,LZ已经在向专业的路上走了,不过可以更专业一点。最后,谁可以告诉我怎么换行啊,编辑里面换行了,发上来之后就没有了,太难看了。

使用特权

评论回复
45
jimodunanhua| | 2012-11-19 11:42 | 只看该作者
多多学习

使用特权

评论回复
46
ayb_ice| | 2012-11-19 11:53 | 只看该作者
变量应该用结构体表示,可读性强点

使用特权

评论回复
47
dqyubsh| | 2012-11-19 15:34 | 只看该作者
直接modbus的飘过……

使用特权

评论回复
48
lb0577| | 2012-11-19 16:42 | 只看该作者
学习ing

使用特权

评论回复
49
abtc1130| | 2012-11-20 21:33 | 只看该作者
最近在用,正好研究对比一下

使用特权

评论回复
50
hnruijie| | 2012-11-21 08:49 | 只看该作者
看看啊

使用特权

评论回复
51
dongshan| | 2012-11-21 19:16 | 只看该作者
真复杂,我用的是keil例程自带的,写的非常好。

使用特权

评论回复
52
liujq7419| | 2012-12-15 18:44 | 只看该作者
能敢于贴出来就是勇气,经专家的指点便是进步,学习啦 !不胜感谢!

使用特权

评论回复
53
lihaolongli| | 2012-12-17 12:48 | 只看该作者
好贴留名,强势围观!

使用特权

评论回复
54
阮天宇00| | 2012-12-17 13:12 | 只看该作者
我第一次看郭教父的书,就写了一段,后来要用就直接粘贴复制~
不过没这么复杂啦~
后来又几次面试,都有考到,要我默写,初始化,我都没写出来~
直接用汉语写的~哈哈~

使用特权

评论回复
55
coody| | 2012-12-17 16:23 | 只看该作者
串口我基本都错成类似电脑那样的,中断只管接收和发送,不处理数据,那是应用层的事。
所以,我的串口接收或发送,一般就10来行程序。

使用特权

评论回复
56
储小勇_526| | 2012-12-17 17:24 | 只看该作者
正好最近在研究PIC写串口程序,O(∩_∩)O哈哈~

使用特权

评论回复
57
海川先生| | 2012-12-17 21:20 | 只看该作者
先回复,再看代码

使用特权

评论回复
58
海川先生| | 2012-12-17 22:11 | 只看该作者
mark,明天接着看

使用特权

评论回复
59
x1k2w3| | 2012-12-18 17:39 | 只看该作者
厉害!!!!!

使用特权

评论回复
60
海川先生| | 2012-12-18 21:34 | 只看该作者
********************************/
/* 函数名称:GetFrmData
/* 说 明:从数据包中取出数据域
/********************************/
void GetFrmData(unsigned char *pDat)
{
unsigned char i;
if(gudTail == gudHead) return;
for(i = 0; i < 4; i++)
{
pDat = GetData();                                  //少了*号???
}
}

使用特权

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

本版积分规则