📄 math_1.c
字号:
/* ------------------------------------------------------------------------ */
/* Math library test code for my2406 and my2407 board */
/* */
/* Copyleft(^^) Do-Yoon Kim */
/* math_1.c ver 1.0 */
/* 2002.6.1 */
/* TI荤狼 math library俊 乐绰 阿辆 荐切 窃荐甫 抛胶飘窍绰 橇肺弊伐阑 累己, */
/* 悼累阑 混旗夯促.JTAG 俊鼓饭捞磐啊 乐促搁 NOP磊府俊 break point甫 汲沥, */
/* 阿阿狼 蔼甸阑 流立 犬牢窍芭唱 code composer狼 弊贰橇 扁瓷阑 捞侩窍搁 */
/* 祈窍霸 搬苞甫 犬牢且 荐 乐促. */
/* */
/* ------------------------------------------------------------------------ */
#include <util.h>
#include <math.h>
#include <values.h> /* PI defeine */
void bad_trap(void)
{
while(1) ;
}
void main(void)
{
double s[100], c[100],t[100];
double temp1, temp2, temp3, temp4;
unsigned int j;
int tmp1, tmp2,tmp3, tmp4;
DSPInit(PLLx4);
//1. 伙阿 窃荐 抛胶飘
// sin, cos, tan 窃荐甫 0何磐 2*pi 鳖瘤 瞒肥肺 刘啊矫难啊搁辑
// 拌魂 搬苞甫 硅凯俊 历厘窍咯 弊 蔼阑 犬牢秦 夯促.
for(j=0;j<100;j++)
{
s[j] = sin(2*PI*(double)j/99); // sin(0) ~ sin(2*pi)鳖瘤 0.2pi 究 刘啊, 窜困绰 radian
c[j] = cos(2*PI*(double)j/99); // cos(0) ~ cos(2*pi)鳖瘤 0.2pi 究 刘啊, 窜困绰 radian
t[j] = tan(2*PI*(double)j/99); // tan(0) ~ tan(2*pi)鳖瘤 0.2pi 究 刘啊, 窜困绰 radian
}
NOP;
// 2. asin, acos, atan 窃荐 抛胶飘
// asin, acos, atan 窃荐俊 蔼阑 持绢 弊 搬苞甫 犬牢窍绊,
// 窃荐狼 荤侩 规过阑 佬腮促.
for(j=0;j<100;j++)
{
s[j] = asin((double)j/99); //double 鸥涝捞 酒匆 版快 巩力啊 惯积茄促.
c[j] = acos((double)j/99);
t[j] = atan((double)j/9.9); //90档俊辑 tan 窃荐绰 公茄措狼 蔼阑 啊瘤骨肺 奴 蔼阑 持绢霖促.
}
NOP;
// 3. atan 窃荐绰 -90档 ~ 90档狼 裹困狼 蔼栏肺父 拌魂 搬苞啊 唱柯促.
// 窍瘤父 -180~180档 裹困狼 拌魂 搬苞啊 鞘夸且 锭啊 乐绰单, 捞凡 锭绰
// atan2 窃荐甫 荤侩茄促.
// atan2 窃荐绰 x客 y蔼阑 阿阿 措涝窍档废 登绢 乐促.
temp1 = atan2(1.0, 1.0); //1荤盒搁
temp2 = atan2(1.0, -1.0); //2荤盒搁
temp3 = atan2(-1.0, -1.0); //3荤盒搁
temp4 = atan2(-1.0, 1.0); //4荤盒搁
NOP;
// 4. hyperbolic 伙阿 窃荐甸
// sinh, cosh, tanh狼 荐青 搬苞甫 流立 犬牢茄促.
for(j=0;j<100;j++)
{
s[j] = sinh(2*PI*(double)j/99);
c[j] = cosh(2*PI*(double)j/99);
t[j] = tanh(2*PI*(double)j/99);
}
NOP;
// 5. 棵覆, 滚覆, 馆棵覆阑 阿阿 荐青秦焊磊.
// 捞 锭 剧狼 角荐挥父 酒聪扼 澜狼 角荐俊档 利侩秦辑 弊 搬苞甫 犬牢窍磊.
temp4 = 1.2;
temp1 = ceil(temp4); //棵覆 => 2.0捞 temp俊 历厘等促.
temp2 = floor(temp4); //滚覆 => 1.0捞 temp俊 历厘等促.
// 馆棵覆捞 鞘夸窍搁 temp3 = floor(temp4+0.5);客 鞍捞 荤侩且 荐 乐促.
tmp3 = (int)(temp4+0.5); //馆棵覆,0.5甫 怠祭茄 饶 沥荐屈栏肺 某胶泼窍绰 规过档 馆棵覆窍绰 规过 吝俊 窍唱捞促.
// 措脚 捞 锭 楷魂 搬苞绰 沥荐屈捞 等促.
NOP;
temp4 = 1.6;
temp1 = ceil(temp4); //棵覆
temp2 = floor(temp4); //滚覆
temp3 = floor(temp4+0.5); //馆棵覆
NOP;
temp4 = -1.2;
temp1 = ceil(temp4);
temp2 = floor(temp4);
tmp3 = (int)(temp4+0.5);
NOP;
temp4 = -1.6;
temp1 = ceil(temp4);
temp2 = floor(temp4);
temp3 = floor(temp4+0.5);
NOP;
// 6. log, expotential 窃荐 抛胶飘
for(j=0;j<100;j++)
{
s[j] = log((double)j/99+1.0); //磊楷肺弊(natural logarithm
c[j] = log10((double)j/99+1.0); //惑侩肺弊(the base-10 logarithm)
t[j] = exp((double)j/99); //瘤荐窃荐 exponential fn
}
// 7. 弊 观狼 窃荐甸
temp1 = fabs(1.2); //例措蔼 窃荐
temp2 = fabs(-1.2);
temp1 = fmod(10.5, 3.0); //10.0/3.0狼 唱赣瘤
//temp2 = modf(10.0, 3.0); //10.0/3.0狼 唱赣瘤
temp3 = pow(2.0,3.0); //2.0^3.0
temp4 = sqrt(4.0); //sqrt 窃荐
while(1)
{
NOP;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -