DDK中使用float类型数据和atof函数

lyingbo 2011-05-26 06:28:14
在驱动的代码里面
1:怎么使用float,double类型数据参与运算
2:怎么使用atof函数
...全文
327 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyingbo 2011-12-30
  • 打赏
  • 举报
回复
二:代码的检视以及配合联调
检视记录
联调的过程中走了几张问题单
1. DTS2011121904879 【自验单/优化单】概率查询OLT接收ONT光模块结果总是初始化值-50dB
之前的支持1db精度光模块特性开发的时候引入的问题
2. DTS2011122003143 【自验优化单】CTC3.0流分类OLT下发的OAM消息不正确
输入参数解析偏移不正确导致
3. DTS2011122104240 【自验优化单】CTC3.0流分类查询显示消息不正确
开发的时候只修改了设置流分类特性对CTC3.0的支持,没有提供查询的支持
4. DTS2011122003143 【自验提单】【H802EPBD+SCUN】互通测试环境上,添加不同型号不同版本的ont上线后,0号pon口有大量ont无法上线
对接以前的ont版本上不来,FW问题。
5. DTS2011120500623 【自验/优化单】华为私有OAM消息优化时,非华为ONT异步消息返回时需要释放节点,否则节点需要在超时后才能释放,影响效率
之前的一个特性开发时引入的
联调的过程中积累了一些常用的定位问题的命令

总结
短期目标:能独立开发特性,独立定位问题。
不足之处:
刚开始开发的过程中,对代码结构、OAM消息的交互原理、异步消息的机制不怎么了解,导致开发效率比较低,对编写的代码不能完全理解,检视的时候问题比较多,需要在后续的工作中改进。
需要深入了解EPON的知识,学习定位问题的方法,逐步积累,丰富经验。

致谢:
需要感谢导师:殷学智跟余红明的耐心指导,还有陈钟等其他兄弟的帮助。
lyingbo 2011-12-30
  • 打赏
  • 举报
回复
本月工作主要分为两部分:前期是CTC3.0的开发,后期是配合线路联调。
一:开发部分主要有四个OAM消息:
1、 设置、查询ONU的MAC地址老化时间
2、 设置、查询onu上环路端口控制状态
3、 查询ont的Capabilities-3
4、 设置、查询Classification&Marking特性
外加TK刷新FW,几个OAM需要修改:
5、 363对应的Get ONU Information消息
6、 235对应的Get CTC ONU Serial Number消息
lyingbo 2011-06-25
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 jiangnandexue 的回复:]
引用 3 楼 q342210738 的回复:

引用 2 楼 huntercao 的回复:
驱动里面可以用KeSaveFloatingPointState/KeRestoreFloatingPointState将浮点运算代码包起来。

http://msdn.microsoft.com/en-us/library/ff553243(v=VS.85).aspx

至于atof,可能要你……
[/Quote]

我自己定义了一种结构
typedef struct customfloat
{
LONG num;
LONG pos;
}CustomFloat;

我用这个结构来表示的我的float类型数据,因为我对精度要求不高
num表示整形数值,pos表示小数点位置
NLP_MT 2011-06-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 q342210738 的回复:]

引用 2 楼 huntercao 的回复:
驱动里面可以用KeSaveFloatingPointState/KeRestoreFloatingPointState将浮点运算代码包起来。

http://msdn.microsoft.com/en-us/library/ff553243(v=VS.85).aspx

至于atof,可能要你自己去实现了一个内核可以运行的版本。或者,你直接将……
[/Quote]
请问你最后是怎么解决的。可否把方法发我邮箱:ganer_7@163.com 谢谢!
lyingbo 2011-06-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 huntercao 的回复:]
没有在浮点运算空间里面打印过浮点数值。

可能是DbgPrint的问题。
[/Quote]

谢谢你的解答~~结贴了~~·
曹大夯 2011-05-31
  • 打赏
  • 举报
回复
没有在浮点运算空间里面打印过浮点数值。

可能是DbgPrint的问题。
lyingbo 2011-05-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 huntercao 的回复:]
驱动里面可以用KeSaveFloatingPointState/KeRestoreFloatingPointState将浮点运算代码包起来。

http://msdn.microsoft.com/en-us/library/ff553243(v=VS.85).aspx

至于atof,可能要你自己去实现了一个内核可以运行的版本。或者,你直接将函数编译进去看看,系统带的版本能否使用。
[/Quote]

谢谢你的回复~~我也是按这么来做的,可是调试输出的就是不对,麻烦你帮我在看这个代码有没问题:
	KFLOATING_SAVE saveData;
NTSTATUS status;

float ret;

status = KeSaveFloatingPointState(&saveData);
if (NT_SUCCESS(status))
{
DbgPrint("============char2float============\n");

DbgPrint("Exemp1:%8.3lx\n",11.23);
ret = 11.23;
DbgPrint("Exemp2:%8.3lx\n",ret);

KeRestoreFloatingPointState(&saveData);

}

在DriverMonitor里面的输出就是
Exemp1:8f5c28f6
Exemp2:80000000
这个是什么原因呢~~
谢谢你了
曹大夯 2011-05-27
  • 打赏
  • 举报
回复
驱动里面可以用KeSaveFloatingPointState/KeRestoreFloatingPointState将浮点运算代码包起来。

http://msdn.microsoft.com/en-us/library/ff553243(v=VS.85).aspx

至于atof,可能要你自己去实现了一个内核可以运行的版本。或者,你直接将函数编译进去看看,系统带的版本能否使用。
lyingbo 2011-05-27
  • 打赏
  • 举报
回复
知道的告诉我下~~不胜感激了~~
内容概要:本文围绕基于蜣螂优化算法(DBO)的无线传感器网络(WSN)覆盖优化问题展开研究,提出了一种创新性的智能优化解决方案,并提供了完整的Matlab代码实现。研究首先分析了传统WSN覆盖优化存在的覆盖率低、能耗不均等问题,随后引入蜣螂优化算法这一新型群体智能算法,通过模拟蜣螂的生物行为机制,构建了适用于传感器节点部署优化的数学模型。文详细阐述了算法的设计思路、实现步骤及其在提高网络覆盖率、延长网络生命周期方面的有效性,同时通过仿真实验与其他主流优化算法进行了对比,验证了所提方法的优越性。; 适合人群:具备一定优化算法基础和Matlab编程能力,从事通信工程、物联网、智能优化等相关领域的研究生及科研人员。; 使用场景及目标:①解决无线传感器网络节点部署不合理导致的覆盖盲区问题;②提升网络整体覆盖性能与资源利用效率;③为智能优化算法在实际工程的应用提供可复现的研究案例和技术参考。; 阅读建议:建议读者结合文的Matlab代码进行实践操作,重点关注算法参数设置、适应度函数设计及仿真结果分析部分,同时可尝试将该算法迁移至路径规划、资源调度等其他优化场景进行拓展研究。
已经博主授权,源码转载自 https://pan.quark.cn/s/a4b39357ea24 在信息技术领域,特别是软件编程行业,微软公司推出的集成开发环境(IDE)Visual Studio,凭借其卓越的功能和广泛的适用范围,成为了众多程序员的常用工具。不过,在实际操作期间,用户可能会遭遇各种挑战,其一种较为普遍的挑战是“Visual Studio遭遇了异常情况,这或许与某个附加组件有关”。本文将详细研究这一现象的成因、潜在后果以及最终的应对措施。 ### 原因剖析 Visual Studio通过支持多种插件和附加组件来扩展其功能,这些组件通常由第三方开发者设计,旨在为用户提供更多个性化和专业化的工具。然而,这些插件的质量良莠不齐,部分可能未经过充分的测试或与特定版本的Visual Studio存在兼容性难题,从而在执行时引发异常。异常的出现可能源于以下几个因素: 1. **代码缺陷**:若附加组件的代码存在逻辑问题或资源管理不当,就可能导致运行时异常。 2. **资源竞争**:多个插件同时占用相同的资源(例如内存、文件句柄等),可能会产生资源冲突,进而触发异常。 3. **依赖不匹配**:插件可能需要特定版本的库或框架,如果系统安装的版本不一致,也可能导致异常。 4. **安全隐患**:部分插件可能存在安全漏洞,一旦被恶意利用,可能会导致更严重的问题,包括但不限于异常崩溃。 ### 后果分析 当Visual Studio遇到由附加组件引发的异常时,不仅会断当前的工作进程,降低开发效能,还可能带来以下潜在风险: 1. **数据遗失**:若异常发生在保存操作之前,可能会导致未保存的工作内容遗失。 2. **稳定性减弱**:频繁的异常会导致Visual Stud...

21,620

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧