打印

中颖专用乘除库 问题

[复制链接]
2236|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liuhongyu_2408|  楼主 | 2012-9-4 08:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
论坛里看到一个关于中颖运算的帖子,帖子中提到《中颖专用乘除库》,不知道这个库在哪里?
请指点。“只要在编译时加入 math_sh88f51.lib 。。。。”
沙发
airwill| | 2012-9-4 18:00 | 只看该作者
如果是 C 编程, 就不需要这个库的

使用特权

评论回复
板凳
Cortex-M0| | 2012-9-4 19:19 | 只看该作者
[侃单片机] 主题:最据山寨特色的《中颖快速浮点乘、除法程库》!!!https://bbs.21ic.com/viewthread.php?tid=273369

使用特权

评论回复
地板
timeriverhao| | 2012-10-9 16:46 | 只看该作者
M0大虾,我遇到的问题:
extern float   fpmul(float value1, float value2);           // 二进制浮点数快速乘法  
extern float   fpdiv(float value1, float value2);           // 二进制浮点数快速除法  
在对以上两个浮点型函数进行定以后出现的问题:
使用keil提供的库函数sqrt做根号运算会跑死,请确认是否存有此问题。

使用特权

评论回复
5
Cortex-M0| | 2012-10-9 19:54 | 只看该作者
请提供简单的测试程序。

请注意,一定要将程序下载到 中颖51单片机下实时仿真或运行,在Keil C51模拟仿真环境下,无法得到预期结果。

使用特权

评论回复
6
timeriverhao| | 2012-10-12 14:49 | 只看该作者
这个就不需要什么简单的测试程序了,我是download到芯片中运行的(使用过中颖的芯片做过一些东西),这个完全不用担心。
我做的操作很简单:
1:project中包含lib文件,同时option选择;
2:glogal.h中进行fpmul和fpdiv的全局定义;
3:包含keil库文件math.h;
4:main(芯片为sh79f1616)函数中进行运算,如a和b(a和b都是float型);
   a和b的乘除法,如a = a*b;a=a/b;都能正常运行;但是如果a=6.1;b=sqrt(a);失败,会跑飞。

使用特权

评论回复
7
LG2012GG| | 2012-10-12 18:31 | 只看该作者
还没用过中Y单片机,不知有什么优点

使用特权

评论回复
8
Cortex-M0| | 2012-10-13 01:54 | 只看该作者
这个就不需要什么简单的测试程序了,我是download到芯片中运行的(使用过中颖的芯片做过一些东西),这个完全不用担心。
我做的操作很简单:
1:project中包含lib文件,同时option选择;
2:glogal.h中进行fpmul和fpdi ...
timeriverhao 发表于 2012-10-12 14:49



已查明,除法 和 sqrt 都占用了 DPH 寄存器,产生冲突。

现将 除法源程序改了,不占用 DPH 寄存器了,消除了冲突,请测试。

使用特权

评论回复
9
Cortex-M0| | 2012-10-13 01:57 | 只看该作者
lib_20121010.rar (195.84 KB)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

9

帖子

0

粉丝