lang02-7 发表于 2013-4-10 22:31:35

请教STM32F103VE处理器关于atoi 函数

如题,在STM32F103VE处理器中运行atoi 函数就会死掉,在keil下能够编译通过,大致代码如下:
vu8 GPGSV;
u8 *p1;
p1=(u8*)GPGSV;
p1=(u8*)strstr(p1, ",") + 1;
USART_Send_Byte(atoi(p1));
有如下警告:
src\main.c(257): warning:#223-D: function "atoi" declared implicitly
但是这个警告应该是没关系的,我用到的标准C函数都有这个警告的,
程序是用来处理GPS模块发来的数据的,数组GPGSV中是有数据的,而且第一个逗号后的数据只有一位,不会越界,紧接着又是逗号,应该会自动识别的,
最后一句串口发送是用来验证转化结果是否正确的,我如果用其他方法将p1的内容通过asc码转化为十进制数是没问题,只要一用atoi 就死机了,
需要复位处理器才行,难道atoi 不能用于Cortex M3的处理器?挺奇怪的,希望大家能点拨一下了!!!帮忙分析下原因,不用这个函数的话处理起来会比较麻烦!

lang02-7 发表于 2013-4-11 23:49:23

探讨atoi函数在stm32f103芯片上的运行!

lang02-7 发表于 2013-4-16 22:47:50

难道没人知道吗,还是我问的不够清楚呢?

aureole 发表于 2013-4-16 22:59:17

你 include“stdlib.h" 了嘛?

error_dan 发表于 2013-4-16 23:02:16

又是C没学好怀疑CPU的,同学,再回去看看C语言的细节吧。
以及,谁说waring没关系的?

lang02-7 发表于 2013-4-20 22:21:19

error_dan 发表于 2013-4-16 23:02 static/image/common/back.gif
又是C没学好怀疑CPU的,同学,再回去看看C语言的细节吧。
以及,谁说waring没关系的? ...

哦?真是这个警告有问题?没包含头文件?我先下去研究一下哈,谢谢了!

lang02-7 发表于 2013-4-24 20:38:52

之前那个警告没有了,多了个src\main.c(389): warning:#167-D: argument of type "u8 *" is incompatible with parameter of type "const char *"
这样的警告,有影响不?
还是会死机呀!怎么回事呢

lang02-7 发表于 2013-4-24 21:27:08

啊,各种尝试,就是不行,atoi只要使用就死机!求救呀!

文峰聊书斋 发表于 2013-4-25 10:44:14

没什么好探讨的,谁叫你不会看汇编呢,看看汇编分析出现错误原因,可能是编译器编译时出事了
页: [1]
查看完整版本: 请教STM32F103VE处理器关于atoi 函数