[STM32 / MBED] MBED 수학

ARMmbedLogo2-1170x316.png

개요 : C언어에서 사용되는 대부분의 수학 함수들은 사용 가능합니다. 그중 자주 사용 되는 함수입니다.

 

min(변수1,변수2)

한 줄 요약 : 두 변수 중 최소값을 찾아내여 반환한다.

코딩 예) y=min(A,B); [이때 A>B] <y에는 B값이 입력된다.>

사용 예)

 

max(변수1,변수2)

한 줄 요약 : 두 변수 중 최대값을 찾아내여 반환한다.

코딩 예) y=max(A,B); [이때 A>B] <y에는 A값이 입력된다.>

사용 예)

 

abs(변수)

한 줄 요약 : 변수의 절대값은 반환한다.

코딩 예) y=abs(A); [이때 A=-1] <y에는 1의 값이 입력된다.>

사용 예) 습도센서의 경우 습도는 0% 미만이 없지만 센서 특성상 여러 이유(접점불량, 노이즈 등)로 인해 음수값이 나오는데 미리 제거 할 수 있다.

 

constrain(변수, 최소값, 최대값)

한 줄 요약 : 변수의 값이 최소와 최대가 이내의 값을 가지되며 최소보다 작으면 최소값을 최대보다 크면 최대값을 가진다.

코딩 예) y=constrain(A,3,10) [이때 A=1] <y에는 3의 값이 입력된다.>

사용 예) 초음파센서를 사용하게 되면 거리가 약 최소 3cm에서 최대 3m정도가 되는데 그 이외의 값은 노이즈 또는 오류이므로 if문 같을 것을 사용하지 않아도 바로 쓰레기 값을 제거 할 수 있다.

 

map(변수,변경전 최소값, 변경전 최대값, 변경후 최소값, 변경후 최대값)

한 줄 요약 : 변경전 범위 내의 값을 변경후 범위 내의 값으로 비례하여 변환한다.

코딩 예) y = map(A,0,5,20,80); [이때 A=3 ] <0~5의 범위의 값이 20~80 범위로 변경되므로 y의 값은 56이 입력된다.>

사용 예) 아날로그 입력은 0~1의 범위의 값을 가지는데 이를 전압으로 변환하려면 간단히 3.3V를 곱해도 되지만 map 함수를 사용해도된다.

 

pow(숫자,지수)

한 줄 요약 : 숫자의 값을 지수만큼의 횟수로 곱한다.

코딩 예) y = pow(A,B); [이때 A는 10, B는 3] <10을 3번 곱하였으므로 1000 이 된다.>

사용 예) 보통의 경우 10^3을 하면 다른 프로그램에서는 승수 계산이 되나 C언어에서는 ^ 연산자는 xor연산을 하는 비트연산자이므로 원하는 결과 값이 나오지 않는다. 그 대신 이 함수를 사용한다. 

 

sqrt(변수)

한 줄 요약 : 숫자의 제곱근의 값을 반환한다.

코딩 예) y=sqrt(A); [이때 A는 4] <y는 4의 제곱근인 2의 값이 입력된다>

 

sin(변수)

한 줄 요약 : 숫자의 사인 값이  반환된다.

 

 

cos(변수) :

한 줄 요약 : 숫자의 코사인 값이  반환된다.

 

 

tan(변수) :

한 줄 요약 : 숫자의 탄젠트 값이  반환된다.

0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

임베디드 보드

번호 제목 글쓴이 날짜 조회수
8 STM32 / MBED [MED] Switch debouncing icon HellMaker 12-30 11,063
7 STM32 / MBED 19년 Mbed OS 동영상 강좌 List icon HelloMaker 03-11 7,868
6 STM32 / MBED MBED 수학 icon HelloMaker 03-11 7,656
5 STM32 / MBED MBED RTOS icon HelloMaker 03-11 7,320
4 STM32 / MBED MBED 파일 시스템 icon HelloMaker 03-11 7,357
3 STM32 / MBED MBED 통신 icon HelloMaker 03-10 7,850
2 STM32 / MBED MBED Timer icon HelloMaker 03-10 9,227
1 STM32 / MBED MBED 기본 구조 icon HelloMaker 03-10 6,670