程浥 发表于 2015-5-14 16:58:46

分享51学习一些经验

本帖最后由 程浥 于 2015-6-8 16:22 编辑

下面分享个实例:先上代码,这是我最开始学习1602,写的一些代码.
   程序虽然能正常运行,但看起来杂乱无章,可移植性差,最麻烦的是维护。
   简单分析下代码:#define ui unsigned int
                              #define PORT P2
      阅读起来并不顺眼,定义看起来太简单了并无代表性。放一大堆#define在程序开头,看起来很多余,如果都放在主函数的开头,维护起来将十分难找。
                                 WriteCmd(0x80); //从1602的 第一排第一个开始写入数据
                              WriteData('D');                   //0                           
                              WriteData('a');
                               WriteData('t');
                               WriteData('e');
                              WriteData(':');                  //4
   如果不看手册根本不会知道0x80是什么,“Data:”一个一个字母地写 ,如果数据没变一次都在写,当数据处理多了,整个程序都将在做1602写操作,看起来还是很可怕的。
      其他的不一一详细叙述了。
    看别人的资料,复制别人的程序,吸其精华,去其糟粕,施以妙法,自己的代码便有了思想。
      下面发部分改进后的代码,工程和仿真都将放在附件里面。
   
    1.整个主函数看起来舒服多啦,程序所要实现的功能也一目了然。 当东西复杂和巨大的时候,分类就显得十分重要了,一个简单的1602程序何必写得这么麻烦呢。此处学与原子教你学stm32如何建工程。
    2.把你所想现实的写入一个数组,用定时器中断定时显示出来,这样你就不是一直在过1602写动作了。此处学与周老师。
    3.面向对象编程,说起来很虚,其实很简单的,用起来很舒服。
    4.指针的使用将大大改善你的代码,用了你就不想舍掉它了。
    5.规范的代码编程可以让阅读和维护程序,附件pdf有详细的知识。
   
   希望大家不管什么方面有什么意见和建议,都可以告诉我,我将继续不断地完善它们。


       金沙滩工作室的一些帖子   http://user.qzone.qq.com/415942827/2

李维强-15级 发表于 2015-5-14 19:04:51

DA转换在后级加一个低通滤波 就会让波形平滑 ,这个有点意思,怎么去搞个自适应的低通滤波,让频率在20M以内都可以看起来平滑,我过了来做下试验

周鹏 发表于 2015-5-15 00:00:57

建议直接转帖或者简介下内容哦,这个太泛泛了,观者不知所以然

李维强-15级 发表于 2015-5-15 08:51:47

楼主 看还需不需要添加帖子标题前的分类,要添加哪些你可以给我说下

程浥 发表于 2015-5-15 11:55:07

李维强-15级 发表于 2015-5-15 08:51
楼主 看还需不需要添加帖子标题前的分类,要添加哪些你可以给我说下

hao de

程浥 发表于 2015-5-15 11:58:19

周鹏 发表于 2015-5-15 00:00
建议直接转帖或者简介下内容哦,这个太泛泛了,观者不知所以然

是的周老师
页: [1]
查看完整版本: 分享51学习一些经验