历史上的今天
返回首页

历史上的今天

今天是:2024年09月22日(星期日)

正在发生

2020年09月22日 | 浮点数转换成字符串函数

2020-09-22 来源:eefocus

sprintf函数太大,在STM8上面根本不敢用,动不动就.text overflow。为了将采集的数值通过串口上传到计算机,只能自己写了一个浮点数转换成字符串的函数:


#include

#include


static char table[]={'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'};


void num2char(char *str, double number, uint8_t g, uint8_t l)

{

    uint8_t i;

    int temp = number/1;

    double t2 = 0.0;

    for (i = 1; i<=g; i++)

    {

        if (temp==0)

            str[g-i] = table[0];

        else

            str[g-i] = table[temp%10];

        temp = temp/10;

    }

    *(str+g) = '.';

    temp = 0;

    t2 = number;

    for(i=1; i<=l; i++)

    {

        temp = t2*10;

        str[g+i] = table[temp%10];

        t2 = t2*10;

    }

    *(str+g+l+1) = '';

}



int main(int argc, char const *argv[])

{

    char str[20];

    num2char(str, 23.56821312, 8, 10);

    printf("%sn", str);

    return 0;

}


测试结果如下:


00000023.5682131


推荐阅读

史海拾趣

Hpc Technology Inc公司的发展小趣事

HPC Technology Inc公司发展的五个故事

故事一:初创与技术创新

HPC Technology Inc公司成立于2003年,总部位于中国台湾台北县三重市。创立之初,公司便专注于连接器与电缆组件的研发与生产,致力于为客户提供全面解决方案和优质服务。在电子行业快速发展的背景下,HPC Technology Inc公司敏锐捕捉到高性能计算(HPC)市场的潜力,开始逐步涉足该领域。通过不断的技术创新,公司推出了一系列高性能、高可靠性的连接器产品,逐渐在HPC市场中崭露头角。

故事二:市场拓展与品牌建设

随着技术的不断成熟和市场的认可,HPC Technology Inc公司开始积极拓展海外市场。公司参加了多个国际性的电子展会,与全球客户建立了广泛的联系。同时,公司注重品牌建设,通过优质的产品和服务赢得了客户的信赖和好评。在国际市场上,HPC Technology Inc公司的品牌知名度逐渐提升,产品销量也稳步增长。

故事三:技术合作与产业升级

为了进一步提升技术实力和市场竞争力,HPC Technology Inc公司积极寻求与国内外知名企业的技术合作。公司与多家国际知名的电子企业建立了长期合作关系,共同开展技术研发和产品创新。通过技术合作,公司不仅获得了先进的技术支持,还实现了产业升级和产品结构优化。这些合作成果为公司在HPC领域的持续发展奠定了坚实基础。

故事四:绿色环保与可持续发展

随着全球对环保问题的日益关注,HPC Technology Inc公司积极响应号召,致力于绿色环保和可持续发展。公司投入大量资金研发环保型连接器产品,采用环保材料和绿色生产工艺,减少对环境的影响。同时,公司还建立了完善的废弃物回收和处理机制,确保生产过程中的废弃物得到妥善处理。这些举措不仅提升了公司的社会责任感,也为公司的可持续发展注入了新的动力。

故事五:智能制造与数字化转型

面对制造业的数字化转型浪潮,HPC Technology Inc公司紧跟时代步伐,积极推进智能制造和数字化转型。公司引入了先进的智能制造设备和系统,实现了生产过程的自动化、智能化和数字化。通过数字化转型,公司不仅提高了生产效率和质量稳定性,还降低了生产成本和能耗。同时,公司还利用大数据和人工智能技术优化供应链管理、客户服务和产品研发等环节,进一步提升了企业的竞争力和市场响应速度。

EPIC公司的发展小趣事

1998年,Epic Games发布了一款名为“虚幻”的3D第一人称射击游戏。这款游戏不仅游戏内容新颖,更引人注目的是它背后完全自主开发的3D游戏引擎。这个引擎后来被称为“虚幻引擎”,并成为了Epic Games的核心技术之一。随着游戏的成功,虚幻引擎也逐渐受到了业界的关注。许多其他游戏开发商开始采用这款引擎来开发自己的游戏,从而使得Epic Games在游戏引擎领域取得了显著的商业成功。

台湾町洋(dinkle)公司的发展小趣事

町洋始终坚守品质至上的原则,从原材料采购到生产流程再到成品检验,每一个环节都严格把关。这种对品质的执着追求使得町洋的产品在市场上享有极高的声誉。客户对町洋产品的信任和认可也成为了公司最宝贵的财富。

福建国光公司的发展小趣事

为了进一步扩大市场份额,町洋开始进军国际市场。公司凭借其优质的产品和服务,逐渐在欧美等发达国家和地区打开了市场。为了更好地服务全球客户,町洋在全球设立了多个贸易与服务机构,构建了完善的销售网络和售后服务体系。

Dresden Elektronik公司的发展小趣事

在Dresden Elektronik公司创立之初,其创始人看中了电子行业中嵌入式系统技术的巨大潜力。他们凭借对技术的深刻理解和敏锐的市场洞察力,开发出了一系列高性能、低成本的嵌入式系统解决方案。这些创新产品迅速在市场上获得了认可,为公司赢得了第一桶金,也为后续的发展奠定了坚实的基础。

B&K Precision公司的发展小趣事

在1948年,当美国民众开始大量购买电视机时,电视机的维修需求也随之增加。芝加哥的企业家卡尔·科恩(Carl Korn)和菲利普·班(Philip Ban)注意到了这一市场机会。他们发现,当时缺乏能够轻松测试电视组件的设备,于是决定自己动手制作。两位创业者从车库起步,开始制造自己的测试设备,并成立了中央电视服务公司。他们的业务迅速扩展,开始向其他电视维修店销售CRT再生器和真空管测试仪,为公司的后续发展奠定了坚实的基础。

问答坊 | AI 解惑

超声波测距系统的电路设计

一、引言 由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,... …

查看全部问答>

求救:做过凌阳红外测温模块的朋友帮帮忙

由于他们有些程序是用汇编写的 看的我都疼。。 有没有用51或者avr做过的 请帮帮忙 或者给个控制的思路也好 先谢过啦…

查看全部问答>

请教一个IImage.draw的速度问题

最近为了解决透明图片的问题,用到了IImage.draw方法,但是发现这个方法奇慢,绘制一个320x480的png图片,需要150毫秒左右,请问应该怎么解决这个问题,如果不用IImage接口.那么如何解决透明图片的显示问题?…

查看全部问答>

地址复用总线,内存和cpu的连接关系或特点

这个是我的面试题(软件方向),由于我硬件知识薄弱,面试官允许我搜集资料后再回答。 应该是入门或者典型的概念 (老式的)数据地址和指令地址共用同一条总线时,cpu和内存的连接关系或者要注意什么特点? 也许是问如何区分开数据和指令的 公 ...…

查看全部问答>

需要高人指点TCPMP修改界面,可支付现金报酬

虽然是技术论坛,谈钱太俗,实在是时间太紧,有做过tcpmp界面修改的高人请联系以下邮箱 :an5592@sohu.com…

查看全部问答>

Zstack学习经验点滴:AF_DataRequest数据包发送

AF_DataRequest数据包发送。这个函数是AF框架下的数据包发送请求,函数逐步构造一个应用层的数据包,然后调用下APS层函数APSDE_DataReq发送数据包。函数操作过程如下:1)检验源端点是否有效。2)检验目标地址是否广播地址,如果地址和模式有冲突 ...…

查看全部问答>

请教RTC中断问题

                                 我在做RTC时候发现这样一个问题:我在初始化RTC的时候已经把SECF位清除了,但是我在接下来使能NVIC的RTC通道时候, ...…

查看全部问答>

求 msp430f196 datasheet

请问谁有msp430f169的datasheet 啊 要有详细的各个模块的寄存器的操作 比如I2C模块 我记得是有这么一份datasheet的 我在网上找了很多 都没有找到 万般无奈下请各位帮下忙 有的请上传一份 不胜感激…

查看全部问答>