作者poboroy (阿扬扬)
看板Electronics
标题[问题] 为什麽89S51给七段显示器要相反的数字
时间Tue Jun 3 01:29:11 2014
我照课本做了一个从99减到00的程式
但我不懂为什麽传给七段显示器,数字是要相反的
例如我实际数字29,传给七段显示器却要92,他才会显示29
是因为我使用7448静态控制去驱动七段显示器吗?
下面是我程式的一部分:
UP:
INC SEC_ONE
MOV A,SEC_ONE
ANL A,#0FH
CJNE A,#0AH,UP_ONE
UP_ONE:
MOV A,SEC_ONE
SWAP A ;十位数换个位数
MOV P1,A ;P1是接七段显示器
如果我数字是29,会在UP_ONE的SWAP这边互换(变成92)再传给七段显示器
这边不太懂..
有没有人知道的,可以跟我讲解一下><,万分感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.169.38.59
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Electronics/M.1401730153.A.9B6.html
1F:→ sillyquans:是否两颗7448 电顺序颠倒 06/03 01:51
2F:→ sillyquans:电路 06/03 01:51
3F:→ a22326284:先请问你的七段是用扫描的方式吗? 06/03 02:02
4F:→ a22326284:如果是 那SWAP应该就是对单一颗的输出 06/03 02:03
5F:→ a22326284:希望能有电路图 才方便解决问题 :) 06/03 02:06
6F:→ poboroy:第一次用图片,ppt.cc/pqXD 06/03 02:12
7F:→ poboroy:是使用静态控制去推动七段 06/03 02:15
8F:→ poboroy:另外想问一下,静态控制只是用较小电流去推动吗? 06/03 02:16
9F:→ poboroy:有其他效果吗? 06/03 02:16
10F:→ a22326284:果然有图就知道问题了 29 虽说2是十位9是个位 06/03 02:19
11F:→ a22326284:但你看他电路的JP1 P1.3~P1.0 是接左边的七段 06/03 02:20
12F:→ a22326284:而P1.7~P1.4是接右边的七段 又因为8051输出 06/03 02:21
13F:→ a22326284:是由高到低 故(MSB)00101001(LSB)在电路上会变成92 06/03 02:22
14F:推 a22326284:静态 确实就只是以小电流控制 对於7段数不多可以使用 06/03 02:26
15F:→ a22326284:动态 是扫描的方式 电路简单 但相对使用电流高 06/03 02:27
16F:→ poboroy:原来如此 我懂了 非常感谢 06/03 02:29
17F:→ a22326284:不会 :)) 加油喔!! 06/03 02:31