找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1588|回复: 4
打印 上一主题 下一主题
收起左侧

C51单片机学习过程中遇到一些小问题(后续遇到会再补充)

[复制链接]
跳转到指定楼层
楼主
现在学到C51单片机基础实验——DS18B20温度检测


遇到一个很苦恼的问题,用keil5已经可以编译生成h文件了(也就是说无error,无warning了
但是实验现象不是预期,但是又不知道哪个地方出问题,更不知道如何如何排查问题,因为无error和warning。

我想过能不能用debug来查问题,但是debug我操作不熟练,也不清楚debug那块能看出什么?

所以想问一下各位大佬在学习或者工作的过程中遇到类似我这个问题该如何解决,thanks:)

P.S. 如果需要我也可以提供我编写的代码,但是我是模块化编程,一块一块的。。。

实验现象.jpg (5.02 MB, 下载次数: 67)

这是我编写实时温度检测的实验,实验结果是这个样子。

这是我编写实时温度检测的实验,实验结果是这个样子。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:979299 发表于 2022-6-17 22:37 | 只看该作者
无error和warning能说明程序无语法错误,能运行起来,但是你的IO口定义,算法和参数不一定能适配当前的硬件,只能从现象找问题,还可借助测试议表
回复

使用道具 举报

板凳
ID:8222 发表于 2022-6-17 22:53 | 只看该作者
无error和warning能说明程序无语法错误,能运行起来,就象你写作文无错别字一样,但内容不是要求的东西。
回复

使用道具 举报

地板
ID:491577 发表于 2022-6-17 23:46 | 只看该作者
有可能是数组越界。我就遇到过。比如定于了数组:int a[8],用到a[8]就是数组越界。特别是数码管输出数组一旦数组越界就会显示乱码。还有一个就是数据溢出,比如char  a=50,b=30,c;   c=a*b/20;//你以为是c=50*30/20=75吗?其实不是,50*30时数据溢出。
回复

使用道具 举报

5#
ID:149451 发表于 2022-6-18 10:55 | 只看该作者
用仿真很方便的,应该先用仿真运行程序,有必要在上硬件。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表