一乐电子

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

微信扫码登录

搜索
楼主: benli

[51单片机] 遇到一个不解的问题,不知道是不是单片机的BUG

[复制链接]
发表于 2014-10-22 10:11 来自手机 | 显示全部楼层
写led测试程序
回复

使用道具 举报

 楼主| 发表于 2014-10-22 10:16 来自手机 | 显示全部楼层
chjj0 发表于 2014-10-22 10:11  写led测试程序

数码管也是LED
回复

使用道具 举报

发表于 2014-10-22 12:39 | 显示全部楼层

是,让你单独写一个LED(数码管)的测试程序,测试能不能正常显示。
回复

使用道具 举报

 楼主| 发表于 2014-10-22 13:23 来自手机 | 显示全部楼层
chjj0 发表于 2014-10-22 12:39  是,让你单独写一个LED(数码管)的测试程序,测试能不能正常显示。

这样够了吧
void main()
{
while(1)
{P2=Num[0];}
}
回复

使用道具 举报

发表于 2014-10-22 14:39 | 显示全部楼层
实在是没看懂。。。你说的到底是串口接收到的0不对,还是把0发送到数码管显示不对?
回复

使用道具 举报

 楼主| 发表于 2014-10-22 14:45 来自手机 | 显示全部楼层
40560335 发表于 2014-10-22 14:39  实在是没看懂。。。你说的到底是串口接收到的0不对,还是把0发送到数码管显示不对?

是0显示不对
回复

使用道具 举报

发表于 2014-10-22 14:48 | 显示全部楼层

P2=Num[0]; 也就是说:向P2这一组IO发送数组Num[0]里的数据,但是段码显示不全对吧!~
回复

使用道具 举报

发表于 2014-10-22 14:58 | 显示全部楼层
估计要么是出现了野指针现象,把Num[0]地址的数据给改写了,要么就是工程出现了问题,你可以重新建立下工程试试,你可以做这样三个实验:
1、用串口输出数组Num数组中的数据,用串口软件看看0的16进制码是否正确。
2、将数组Num[0]的数据内容与其他数字的数据进行互换,比如与Num[4]内容互换,然后分别调用Num[0]与Num[4]显示,看看是否还是调用Num[4]的时候又不对了。
3、重新建立一个数组,放入0的段码数据,然后调用显示试试。
回复

使用道具 举报

 楼主| 发表于 2014-10-22 15:46 来自手机 | 显示全部楼层
40560335 发表于 2014-10-22 14:48  P2=Num[0]; 也就是说:向P2这一组IO发送数组Num[0]里的数据,但是段码显示不全对吧!~[/back ...

最奇怪的就是数组的第一个也就是0的编码调用出错,其他正确
回复

使用道具 举报

发表于 2014-10-22 16:21 | 显示全部楼层
benli 发表于 2014-10-22 15:46
最奇怪的就是数组的第一个也就是0的编码调用出错,其他正确

按我说的方法调试了么?
回复

使用道具 举报

本版积分规则

QQ|一淘宝店|手机版|商店|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2025-8-18 22:04 , Processed in 0.039951 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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