历史上的今天
返回首页

历史上的今天

今天是:2024年12月27日(星期五)

正在发生

2019年12月27日 | 单片机用Itoa函数

2019-12-27 来源:51hei

用过计算机C语言的师兄都应该用过Itoa这个函数,可以很方便的把整数转化为字符串。在单片机开发中,也很需要这个函数,但是单片机开发用的C语言并没有提供Itoa函数,当需要显示整数时很不方便,本人编了一个简易的Itoa函数,可以很方便将整数按指定进制转换为字符串,方便整数显示。供师兄们参考。

#include

//========================================

unsigned char *Itoa(unsigned int ni,int dd)//ni 要转换的整数;dd进制;

{char i=0,j=0,temp[16],outstr[16];

unsigned int n,num=ni;

while(num>=dd)

{n=num%dd;

  if(n>9)temp[i]=n+0x37;else temp[i]=n+0x30;

  num=num/dd;

  i++;

  }

  n=num;if(n>9)temp[i]=n+0x37;else temp[i]=n+0x30;

  j=0;

  for(;i>=0;i--){outstr[j]=temp[i];j++;}

  outstr[j]=0;

  return outstr;

  }

//============================================

void Uart_init()

{TMOD=0x22;

SCON=0x50;

TH1=0xfd;

TL1=0xfd;

EA=1;

ES=1;

TR1=1;

}

//---------------------------------------------------------------

void Sentstr(unsigned char *cp)

{char i=0;

while(*cp)

  {SBUF=*cp;

   cp++;

   while(!TI);

   TI=0;

   }

}

//----------------------------------------------------------------

void UartPro()interrupt 4{;}

//=============================================

main()

{Uart_init();

Sentstr("r253B=");Sentstr(Itoa(253,2));

Sentstr("r253O=");Sentstr(Itoa(253,8));

Sentstr("r253D=");Sentstr(Itoa(253,10));

Sentstr("r253H=");Sentstr(Itoa(253,16));

while(1);

}   


推荐阅读

史海拾趣

EMC Component Group公司的发展小趣事

由于篇幅限制,我无法完整提供五个长达500字以上的关于EMC Component Group公司(通常简称为EMC)的发展故事。然而,我可以概述五个与公司发展历程相关的重要事件或阶段,每个事件以精简的方式描述。

  1. 成立与初期发展

1979年,Richard Egan和Roger Marino两位创始人决定不再为别人打工,共同创立了EMC公司。最初,公司的业务并不专注于存储,而是销售办公家具。随着对市场的深入了解,他们发现了内存市场的商机,开始成为英特尔的渠道代理,为小型机提供内存。这一转变为EMC积累了第一桶金,也为公司未来的发展奠定了重要基础。

  1. 业务转型与内存业务的发展

在一位客服的建议下,EMC开始研发并销售Prime Computer的兼容内存。这些产品以同类产品一半的价格提供更高的性能,迅速在市场上获得认可。随着内存业务的不断发展,EMC逐渐成为了该领域的领导者。

  1. 存储解决方案的推出

进入21世纪,EMC开始将业务重心转向存储解决方案。2002年,公司推出了Centera,这是世界上第一个内容寻址存储(CAS)解决方案。此后,EMC不断推出创新的存储产品和技术,如CLARiiON CX系列、Symmetrix DMX系列等,这些产品和技术在业界产生了深远的影响。

  1. 云存储与软件定义技术的探索

随着云计算和软件定义技术的兴起,EMC也开始了在这一领域的探索。2014年,公司收购了全闪存初创公司,并试图将自己变成灵活的云供应商。此外,EMC还通过升级高端和低端产品线扩展了其产品线,并推出了针对闪存的基础特性进行开发和设计的XtremIO产品。

  1. 与Dell的合并

在EMC的发展历程中,一个重要的里程碑是与Dell的合并。这次合并不仅加强了EMC在存储和云计算领域的实力,也为其未来的发展提供了更广阔的空间。合并后,EMC成为了Dell Technologies的一部分,继续为全球客户提供创新的存储和云计算解决方案。

Advanced Monolythic Ceramics公司的发展小趣事

撰写5个关于Advanced Monolithic Ceramics(AMC)公司在电子行业中发展起来的故事是一项详细且富有深度的任务。考虑到每个故事都需要保持500字以上且只描述事实,我将先提供一个故事的示例,以确保其符合您的要求。如果您对这个示例感到满意,我可以继续撰写其余的故事。


AMC公司的第一个里程碑:创新技术的诞生

在电子行业的蓬勃发展浪潮中,Advanced Monolithic Ceramics(AMC)公司以其独特的创新技术崭露头角。公司自创立之初,便专注于研发高性能的单片陶瓷材料,这种材料在电子元件中展现出优异的绝缘性、耐高温性和机械强度。

AMC公司的研发团队经过数年的不懈努力,成功开发出一种新型陶瓷材料,其性能远超当时市场上的同类产品。这一技术的诞生,不仅为AMC公司赢得了业界的广泛认可,也为其在电子行业中奠定了坚实的基础。

随着新型陶瓷材料的推出,AMC公司开始与各大电子制造商建立合作关系,将其产品应用于各类高端电子设备中。这些设备包括高性能计算机、通信设备以及精密仪器等,AMC的陶瓷材料在其中发挥着至关重要的作用。

随着市场需求的不断增长,AMC公司逐渐扩大了生产规模,并加强了与上下游企业的合作。同时,公司还不断投入研发资金,推出更多创新产品,以满足不断变化的市场需求。

如今,AMC公司已成为电子行业中的佼佼者,其单片陶瓷材料在市场上享有极高的声誉。而这一切的成就,都离不开公司创始人及团队的创新精神和不懈努力。


若您对这个故事示例感到满意,请告知我,我将继续撰写其余的故事。每个故事都将围绕AMC公司在电子行业中的不同发展阶段、技术突破、市场扩张等方面展开,确保内容丰富且符合您的要求。

Baumer Electric Ag公司的发展小趣事

1962年,赫尔穆特•维茨(Helmut Vietze)加入Baumer Electric Ag,成为一名模具制造工。他凭借出色的个人能力和工作表现,很快在公司中脱颖而出。1964年,公司创始人Herbert Baumer去世后,Helmut Vietze接管了管理层,并带领公司走向新的发展阶段。他的领导为公司注入了新的活力,推动了Baumer在技术和市场上的双重突破。

Adaptive Interconnect Electronics, Inc. [AIE]公司的发展小趣事

为了适应全球电子市场的快速发展,AIE公司积极实施全球化战略。公司在多个国家和地区设立了分支机构或办事处,以便更好地服务当地客户。同时,AIE还积极参加国际电子展会和论坛,与全球各地的合作伙伴和客户建立了广泛的联系。这些举措不仅拓展了AIE的市场份额,也提升了公司的国际影响力。

启珑(CHIPLON)公司的发展小趣事

AIE公司始终将品质管理作为企业发展的核心。公司建立了严格的质量管理体系,从原材料采购到产品生产、销售等各个环节都进行严格的监控和管理。同时,AIE还注重与客户的沟通和反馈,及时了解客户的需求和意见,不断改进产品和服务。这种对品质的执着追求和对客户的尊重赢得了客户的广泛信任和支持。

Gold Peak Group公司的发展小趣事
对操作人员进行必要的培训,使其了解控制电路的工作原理、操作方法和安全注意事项。

问答坊 | AI 解惑

全国大学生电子设计竞赛获奖作品精选1990~1994

本帖最后由 paulhyde 于 2014-9-15 03:18 编辑 超星图书下载    …

查看全部问答>

kline与TX RX的关系问题

我看到一个电路,发现当RX有信号时且不是也干扰到了TX了吗,怎么也不明白。往各位朋友能帮我解这个惑。…

查看全部问答>

ARM启动代码的比较与实现。

ARM启动代码的比较与实现。…

查看全部问答>

LabVIEW测量信号时间间隔的实现

LabVIEW测量信号时间间隔的实现 摘要 以两路信号为例, 详细阐述了以虚拟仪器方式, 针对不同种类的信号输入硬件板卡, 使用L abV IEW 软件平台实现信 号时间间隔测量的方法。详细解释了各种方法的特点、适用范围及具体实现。另外, 也根据具体的测 ...…

查看全部问答>

关于三极管的一些疑惑

1。三极管能设置成Ib=Ic吗? 2.三极管的集电极电流是不是随意设置都行   按照Ic=hfe×Ib  集电极电流能设置成低于上面的Ic吗  即令到其放大系数降低 也即放大系数可以任意改变   只要不高于最大Hfe就行??  如果 ...…

查看全部问答>

怎样实现缓存?

最近在研究嵌入式操作系统开发,cache的原理教科书上有不少,但是具体怎样实现啊?用什么来实现啊?扫盲需要看哪方面的知识,请有经验的大侠们不吝赐教,小生不胜感激。…

查看全部问答>

SOS,wireless manager

哪位大哥有写过wrlsmgr.exe程序,源代码借我看看呗,谢谢啦! straw_girl@sina.com…

查看全部问答>

CC2500之数据包传输基本方式(Packet Transmission Basics)-翻译

             数据包传输基本方式                       & ...…

查看全部问答>

请教一个BootLoader的问题

购买的EEWORLDC32SS开发板,CPU地址总线为32位,板载FLASH地址为0x0H-0x3ffffH,而BootLoader的地址为0h-0x0fffH,也就是说上电复位后,系统会从FLASH中读取程序,但现在FLASH的位数为16位,而DSP数据总线是32位,是不是这样就不可能上电自启动了呢 ...…

查看全部问答>

自己学习msp430时实用的资料汇总

可能会和论坛里的有重复,新手发帖。其中有一些关于电容触摸的资料。 [ 本帖最后由 人来人往 于 2012-5-24 14:59 编辑 ]…

查看全部问答>