• 关于精简程序


    程序的优化要从变量开始,弄清每个变量的作用,果断删除没有用的代码和变量

    统一一些意义相同的变量,免得各个函数的关系太散,,还是要分块管理,,如果分块管理,那么有些意义相同的局部变量也不许要动

    1,捋清楚事件的过程,分块要合理谨慎,(要先合并一些多余的函数,)

    2,变量很重要,变量要有意义(删除一些没有意义的变量,,哪些变量要全局,,哪些变量要局部,,变量名字要有意义)

    3,要用DMA前期的准备是长的,中断可以分块去做,,,,,DMA是攒到一定程度一起做(如录音程序)

    读程序要从主函数去看,哪个变量用到了再去查意思

    写需求文档是很重要的,它能让你理清程序流程,,,最好在写程序之前,先写一遍伪代码

    不要着急,欲速则不达

    :我们先写一个按键的伪代码::

    特别注意程序中的中断,,有时候很难仿真,,问题往往也是出自这里

    比如,,,你想让灯闪起来,,,但是中断里藏有个让灯常量的语句(不容易看见),,然后就杯具了,灯始终闪不起来!!!!

    ,一旦中断多了你就不知道哪个中断服务函数中藏着什么

    我们下面写一个伪代码:

    长按三段,,,也就是每次长按会切换一种功能,,,一共可以切换三种功能,,,,

    :::

    从头进入 a=0  :清除累积的加加

    长按: a>=100

             while(如果不松手)

              {

              灯都闪,,,即切换过了

             不可以除颤 >>不可以除颤

              }

    再次

    长按 如果a>=100

            while(如果不松手)

           {

           灯都亮,,进入语音

           M==3   ,,跳出后执行M=3的音量调节

           }

    出来之后,可除颤的是不闪的,,,不可除颤的是闪的即

    闪:   不可除颤

    不闪:除颤

    一个变量何时清零,用完之后清零,,,或用之前把它清零,,,,两个思路二选一即可,不要都加上

    同理,  一块程序发送处理信号,,另一个负责接收信号,,不要及发送有接收。。。比如一个是负责播放声音的,播放完成之后它就发送一个完成播放的信号,然后负责添加音频数据的函数,接收到这个信号后,根据信号的种类来决定,添加什么音频进去继续下段播放。。

  • 相关阅读:
    poj 1149 最大流
    poj 3281 最大流建图
    lightoj 1300 边双联通分量+交叉染色求奇圈
    lightoj 1291 无向图边双联通+缩点统计叶节点
    lightoj 1063 求割点
    lightoj 1026 无向图 求桥
    lightoj 1407 2-sat
    lightoj 1251 (Two_Sat)
    hdu 4681 最长公共子序列+枚举
    OD汇编需要标签
  • 原文地址:https://www.cnblogs.com/chulin/p/8905964.html
Copyright © 2020-2023  润新知