单片机数据类型问题

2019-03-24 17:37发布

最近做了温度采集程序,因为需要所以现在想将float型温度数据强转成int型
然后在强转的过程中,发现只要tt = temp*0.0625;  这一行代码
强制转换代码就执行不了,出现*** error 65: access violation at C:0xEE00 : no 'execute/read' permission错误
然后将这句代码注释掉就可以随意的强制转换
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
星空下的吖米
1楼-- · 2019-03-25 20:22
lcofjp 发表于 2016-5-18 11:43
这应该不是数据类型的问题,是不是你的Flash空间不够了?代码多大,Flash空间多大?

Program Size: data=15.1 xdata=60 code=3761    看这个吗  52单片机的  
lcofjp
2楼-- · 2019-03-26 02:16
 精彩回答 2  元偷偷看……
lcofjp
3楼-- · 2019-03-26 07:53
再说这个错误提示是以什么方式提示出来的?52单片机可以仿真吗?
星空下的吖米
4楼-- · 2019-03-26 12:59
lcofjp 发表于 2016-5-18 11:51
再说这个错误提示是以什么方式提示出来的?52单片机可以仿真吗?

可以Debug,上面那个程序已经涉及到强制类型转换了, 可是只要把int型改成返回float型就没问题了·····
星空下的吖米
5楼-- · 2019-03-26 14:39
 精彩回答 2  元偷偷看……
lcofjp
6楼-- · 2019-03-26 19:33
星空下的吖米 发表于 2016-5-18 11:58
对了,调试的时候显示是在printf那句话的时候跑飞,可是没有那句tt = temp*0.0625;代码的时候就可以正常 ...

是不是printf的问题,难道你的printf不支持浮点数?

一周热门 更多>