“Map()”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
(创建页面,内容为“<pre style="color:green"> long map ( long x, long in_min, long in_max, long out_min, long out_max ) </pre> 等比映射 <br> 将位于...”)
 
 
第12行: 第12行:
  
  
参数:<br>
+
'''参数''':<br>
 
*x  要映射的值   
 
*x  要映射的值   
 
*in_min  映射前区间   
 
*in_min  映射前区间   

2016年5月25日 (三) 01:35的最新版本

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 映射后区间

例如下面的代码中用 map 将模拟量从[0,1023]映射到[0,255]区间:

// Map an analog value to 8 bits (0 to 255)
void setup() {}

void loop()
{
  int val = analogRead(0);
  val = map(val, 0, 1023, 0, 255);
  analogWrite(9, val);
}

long map(long x, long in_min, long in_max, long out_min, long out_max)
{
  return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}


[返回Arduino语法手册]