zoukankan      html  css  js  c++  java
  • Arduino101学习笔记(八)—— 函数库

    /*********最小值*********/
    min()                     //实现:#define min(a,b)  ((a)<(b)?(a):(b))
    
    /*********最大值*********/
    max()                     //实现:#define max(a,b)  ((a)>(b)?(a):(b))
    
    /*********绝对值*********/
    abs()                     //实现: #define abs(x)  ((x)>0?(x):(-x))
    
    /*********调整到区间*********/
    //如果值 amt 小于 low, 则返回 low; 如果 amt 大于 high, 则返回 high; 否则, 返回 amt . 一般可以用于将值归一化到某个区间
    
    constrain()           //实现:#define constrain(amt, low, high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) 
    
    /*********等比映射*********/
    long map(long x, long in_min,long in_max,long out_min,long out_max);
    //将位于[in_min, in_max]之间的x映射到[out_min, out_max]. 参数: x 要映射的值 in_min 映射前区间 in_max 映射前区间 out_min 映射后区间 out_max 映射后区间
    
    /*********指数运算*********/
    double  pow (float base, float exponent);
    
    /*********平方运算*********/
    double  sqrt(double x)       //实现:    #define sqrt(x)  ((x)*(x))
    
    /*********三角函数运算*********/
    float sin(float rad);
    float cos(float rad);
    float tan(flaot rad);
    
    /*********随机数运算*********/
    void randomSeed(unsigned int seed);        //seed:随机种子
    long random(long howbig);                         //生成随机数,范围[0,howbig-1]
    
    /********位运算*********/
    #define  lowByte(w)   ((w) & 0xff)    //取低字节   
    #define  highByte(w)   ((w) >> 8)     //取高字节   
    #define  bitRead(value, bit)   (((value) >> (bit)) & 0x01)     //读一个bit   
    #define  bitWrite(value, bit, bitvalue)   (bitvalue ? bitSet(value, bit) : bitClear(value, bit))    //写一个bit
    #define  bitSet(value, bit)   ((value) |= (1UL << (bit)))    //设置一个bit   
    #define  bitClear(value, bit)   ((value) &= ~(1UL << (bit)))    //清空一个bit   
    #define  bit(b)   (1 << (b))    //生成相应bit
  • 相关阅读:
    Spring bean作用域
    软件类说明文档排版建议
    fit_line_contour_xld拟合直线的五种算法的准确度比较
    .Net优秀开源(5)SqlSugar
    .NET[C#]中实现实体对象深拷贝(克隆/复制)的几种方法
    spring框架学习(14)AOP(中)
    .Net优秀开源(4)Castle.Core
    .Net优秀开源(3)Dapper
    .Net优秀开源(2)Autofac
    .Net优秀开源(1)
  • 原文地址:https://www.cnblogs.com/BlueMountain-HaggenDazs/p/6056647.html
Copyright © 2011-2022 走看看