一乐电子

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

QQ登录

只需一步,快速开始

微信扫码登录

搜索
楼主: blueruby

发在单片机板块人气低,发在这里求助一下吧

[复制链接]
 楼主| 发表于 2016-3-25 08:57 | 显示全部楼层
不知道怎么一起回复多个人
1.第一个图是按照实际电路板绘制的,
所以实物电路板是存在的,
数码管4301ah是共阴极数码管,
三极管是9013,是npn也是没错的,
共E集接GND也是没错的
2.楼上所说的反值,我也试过了,6位同步显示乱码

设计者设计这个电路板,应该不会有错,
只是我用的程序不合适,造成乱码,无法显示
现在只想知道这种三极管的接法
在这种电路中是个什么原理
或者哪位大侠有时间
写个这种接法能正常运行的计时程序
回复

使用道具 举报

发表于 2016-3-25 09:05 | 显示全部楼层
本帖最后由 snoopy8008 于 2016-3-25 09:08 编辑
blueruby 发表于 2016-3-25 08:57
不知道怎么一起回复多个人
1.第一个图是按照实际电路板绘制的,
所以实物电路板是存在的,

不知道你的“反值”是什么意思,指的P0口的数据吗?
这里应该对P2口的位选数据反相处理。P0口不变。

如上图,只让第一个LED亮的正确程序是:
有三极管应当是P2口输出:--100000
无三极管应当是P2口输出:--011111
回复

使用道具 举报

 楼主| 发表于 2016-3-25 09:36 | 显示全部楼层
本帖最后由 blueruby 于 2016-3-25 09:47 编辑
snoopy8008 发表于 2016-3-25 08:55
看了你上一个帖子,我所能想到的,那里都提到了。

给你贴个图希望能帮到你,三极管主要目的是为了驱 ...

或许是我表达不清再说一下吧
难得还有这么认真的回复

1.程序错误与否,我是根据能不能正确显示计时程序来说的
我也不相信这个电路板设计是错误的,
比方说能把该共阳的数码管用成共阴的,
把该用pnp的三极管用成npn的
设计者这么设计的,肯定有他的用法
刚才花了点时间,把出处找到了
是从坛友处够买的
https://www.yleee.com.cn/thread-13415-1-1.html的第一件
1、AT89C52板,带两片MAX232,两个3位数码管,可以做单片机的简单实验什么的
所以我才说板子的设计应该没有错
可能是我用的程序不合适
如果有坛友能写出适合这个板子的程序,更好
2.仿真有缺陷是肯定的了
因为在仿真里我把共E极的GND换成共VCC,仿真里程序运行正常
仿真里我把共E极的GND换成悬空,仿真里程序运行正常
但是实际电路板,我把共E极的GND换成共VCC,数码管不亮
我把共E极的GND换成悬空,数码管微亮,但是计时的功能是正常的
所以仿真不一定等于实物(还有实物我用的是stc5a60s2,仿真里是at89c51)

当年买了这块电路板,就把原理图抄了一遍,
由于那时候对单片机还一无所知,就扔一边了,
最近在学51单片机,就又翻出来了,再画一遍,
后来就是上述所说,程序不能运行,觉得自己是不是电路图画错了,
又核对了一遍,尤其是坛友怀疑三极管错误时,我又把三极管的接法核对了一遍
这个电路也没什么复杂,上拉电阻什么的都没问题。




话又说回来了
1.电路板没错,那就是程序不合适,不知道哪位大侠能写出适合这个电路板的程序,不用写计时程序了,能写出一位的1234567890的循环程序或者是012345的六位点亮程序就可以,计时程序我参照着自己改2.三极管在这里是一种什么用法,不是放大管,那是开关管?

回复

使用道具 举报

 楼主| 发表于 2016-3-25 09:38 | 显示全部楼层
本帖最后由 blueruby 于 2016-3-25 09:40 编辑
snoopy8008 发表于 2016-3-25 09:05
不知道你的“反值”是什么意思,指的P0口的数据吗?
这里应该对P2口的位选数据反相处理。P0口不变。

反值是针对8楼坛友说的
ff-77=88
针对的还是代码表
坛友说我的77是共阳的
反值88就是共阴的了
实际实验不行
还是同步乱码
类似a.a.a.a.a  8.8.8.8.8这种显示

我想不是代码表的原因
还是三极管的原因
回复

使用道具 举报

发表于 2016-3-25 10:16 | 显示全部楼层
本帖最后由 snoopy8008 于 2016-3-25 10:40 编辑
blueruby 发表于 2016-3-25 09:38
反值是针对8楼坛友说的
ff-77=88
针对的还是代码表


三极管工作在开关状态,与此题无关,不要再提。

根据你的描述,段码是对的,位码是错的。

你所说的“反值”,一直没说清楚,我的猜你是一直在对段码进行修改,而没有搭理位码。

我不会C语言,汇编也忘干净,所以帮不了你。
回复

使用道具 举报

发表于 2016-3-25 10:29 | 显示全部楼层
另外,你说所的“代码表”应该叫“段码表”吧?注意下段码位码的区别,上个帖子就有人指出可能是位码问题了。
回复

使用道具 举报

发表于 2016-3-25 10:31 | 显示全部楼层
显示a.a.a.a.a  8.8.8.8.8 就是位选信号正好相反的原因,若不改程序,那就改一下位驱动的三极管接法。
画了个图把六路三极管驱动改了就OK了
数码管驱动.jpg
回复

使用道具 举报

发表于 2016-3-25 10:32 | 显示全部楼层
上个帖子8楼的话:“显示乱码有2个原因:1如果每个数码管都同步显示乱码,原因是位选反向。2如果每个数码管显示不同的乱码,原因是代码表没代换。”
建议你抄写一百遍。
https://www.yleee.com.cn/forum.p ... mp;page=1#pid798486
回复

使用道具 举报

 楼主| 发表于 2016-3-25 10:42 | 显示全部楼层
本帖最后由 blueruby 于 2016-3-25 10:47 编辑
snoopy8008 发表于 2016-3-25 10:29
另外,你说所的“代码表”应该叫“段码表”吧?注意下段码和位码的区别,上个帖子就有人指出可能是位码问题 ...

3楼的压缩文件夹里有仿真和程序文件
你可以打开看看
那个程序是按共阳写的三极管也是按我原来那种PNP三极管
所以程序不适合
位选不知道怎么改

哪位大侠写出适合这个电路板的程序,不用写计时程序了,
写出一位的1234567890的循环程序或者是012345的六位点亮程序就可以,
计时程序我参照着自己改

网上找了找共阴极段选的例子是io管脚直驱的共阴极的
不知道加了npn三极管
对程序有什么影响?


回复

使用道具 举报

 楼主| 发表于 2016-3-25 10:43 | 显示全部楼层
本帖最后由 blueruby 于 2016-3-25 10:51 编辑
snoopy8008 发表于 2016-3-25 10:32
上个帖子8楼的话:“显示乱码有2个原因:1如果每个数码管都同步显示乱码,原因是位选反向。2如果每个数码管 ...

就是我原来那个源程序
不知道位选怎么改啊
光改段选的代码表也没有用

琢磨了琢磨
原来这个程序
不像经典的那种段位扫描的程序
位码不好改啊
回复

使用道具 举报

本版积分规则

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

GMT+8, 2025-8-14 13:29 , Processed in 0.032749 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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