请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

吾爱极客

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1825|回复: 2

开发坑序言

[复制链接]

271

主题

271

帖子

1129

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1129
发表于 2015-10-25 00:59:15 | 显示全部楼层 |阅读模式
先放上一段代码:

运行场景: keil MDK5 , stm32 ARM cpu

uint8_t load_lsh(uint8_t cdt[])
{
        uint8_t rbuf[20];
        uint8_t a,b,c,d;
        
        I2C_EE_BufferRead(rbuf, ADDR_LSH, 8);
               
        a = rbuf[0];
        b = rbuf[1];
        c = rbuf[2];
        d = rbuf[3];

        if (a==(~c))
        {
               
                return 2;
        }
        else
        {
               
                return 0 ;
        }
}

看了代码之后,你有没有发现任何异常和问题?

如果没有,那恭喜你,你和我一样,都掉到坑里去了。

此时,如果你的代码很少,那或许你还是幸运的。但如果你的

项目代码很多,比如多达几千,几万甚至几十万行,那这个坑坑可能要让你

花上几个小时,或几天不等才爬出来。


如果你很容易的就看出其中问题,很大概率你就是高手或大神,那么请您不吝指教,

下面回帖给我们讲解一下,让我们也可以知其然也知其所以然。


本“开发坑”栏目的目的就是希望把开发路上曾经碰到的坑标记标明出来,让后面看到的攻城狮直接绕过去。


总结而言,本栏目宗旨就是让辛苦的攻城狮们可以减少一点必须花在工作上的时间,把省出来的

时间用来:多给父母打个电话,多陪伴一下女朋友,多和孩子玩一会,多去看一看风景等等,

让未来多些幸福快乐,少些遗憾。


下面是修改后能正确工作的程序:

uint8_t load_lsh(uint8_t cdt[])
{
        uint8_t rbuf[20];
        uint8_t a,b,c,d;
        
        I2C_EE_BufferRead(rbuf, ADDR_LSH, 8);
               
        a = rbuf[0];
        b = rbuf[1];
        c = ~rbuf[2];  ///
        d = ~rbuf[3];

        //if (a==(~c))  ///bad here
        if (a==c)       ///OK here
        {
                return 2;
        }
        else
        {
                return 0 ;
        }
}

www.52jike.com (吾爱极客)   ruanzhuo  原创,转载请注明出处


回复

使用道具 举报

0

主题

6

帖子

36

积分

新手上路

Rank: 1

积分
36
发表于 2017-2-26 11:11:43 | 显示全部楼层
支持一下吧,确实是不错的贴子。












百度一下【好站网】联系QQ 115767305


回复 支持 反对

使用道具 举报

0

主题

1

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2017-4-14 09:05:45 | 显示全部楼层
支持一下!!呵呵












回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|吾爱极客 ( 粤ICP备15067754号-1  

GMT+8, 2018-11-21 16:56 , Processed in 0.162508 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表