Board logo

标题: LPT 三部曲 之首部曲: LED Meter! (加长版)会友自家程式! [打印本页]

作者: dino_lo    时间: 2006-1-10 09:50     标题: LPT 三部曲 之首部曲: LED Meter! (加长版)会友自家程式!

先来新货,再来:LED Meter復刻版 !


LPT 三部曲 之首部曲: LED Meter! (加长版)


dino_lo,雷凯欣,小南共同 努力成果
我负责.......吹水的部份!

先鸣谢各方友好

多谢雷凯欣, 小南的 努力成果. 同时多谢 Erick 的尝试.

偷了雷凯欣的两日休息时间, 帮我做了个闪动的”心”. 见到Erick帮学校,用 VB 好快、 好成功, 用printer port 出到 on/off single 的分享 和 小南的 Borland C Builder 的分享. 又得到他/她们的和应,令到个led meter结集到不同 program来推动各式各样的led meter. 有外表死板8 leds一字排开形, 进一步15 leds 心形 ,再去到22 leds会笑的! 一个小小的制作, 由唔同能力的人, 无私地合力完成, 整个过程今人震奋! 真心希望本文出”分享”时Erick 有时间再出手!

Dos 和 Windows 上都有人可以写到程式 去驱动pc上的parallel port了. ”电脑玩家常备程式” 好快就会有香港人的名字!

Ok! Lets go!

为了 雷凯欣 做的 ”会笑”的led meter![attach]334984[/attach]

笑容背后:
http://www.epanorama.net/circuits/parallel_output.html
只要search parallel port 就好易揾到,有兴趣可以花少少时间睇吓

节录了的 输出输入寻址(I/O address) 内容.

Lpt pin:   9  8  7  6   5   4  3   2
base:    d7 d6 d5 d4 d3 d2 d1 d0      

lpt pin:              /17   16   /14   /1
base+2:    x x x x  d3  d2  d1  d0      
(17,14,1, inverted)

lpt:        10  /11 12  13  15
base+1:  d7  d6   d5  d4  d3   x  x  x   
(11 inverted)

Note: base = 378hex 的话, base +1 = 379hex, base +2 = 37ahex

雷凯欣的program
http://www.geocities.com/rscomponent/ledmetr2b.zip
小南的program
http://www.geocities.com/siunam2005/lpttest3.zip

我要”笑”得出就要对住佢来”笑”!
Config.ini file 内容:
d7.....d0,d3..d0,HOLD(ms) [attach]334985[/attach]

好简单咁交代了硬件和软件的一小节.也附上雷凯欣,Erick,小南和交流 文章连结. 希望出文的时候重系到! 同时又再多谢他们的付出!

-雷凯欣帮我写咗”心”出来(没有了)
-Erick 帮学校用vb ,出printer port (没有了)
-新手学玩 C: 小南 22/10/2005
http://www.hkepc.com/bbs/viewthread.php?tid=493420
-好想快点復刻个led meter的分享!: dino_lo 30/10/2005
http://www.hkepc.com/bbs/viewthread.php?tid=498337

睇咗咁多字,大家对眼都好攰了,比啲相大家睇吓,唔好咁快转台!

-透明胶片加上透明胶盒,3mm led(100pcs/hkd30),db-25pin焊线接头.[attach]334986[/attach]

-胶盒钻孔,开口,焊电阻(470ohm,1/8w,500pcs/hkd10)[attach]334987[/attach]

-化个靓妆,做吓masks,再set 个靓头!(用快速胶去固定led,好丑怪!)[attach]334988[/attach]

-Wire-wipe wire的用法!焊少14点!12 leds + 2 GND[attach]334989[/attach]

-经过一轮装身.see-thru,领巾,…..撘出个笑容![attach]334990[/attach]

-哗! 好吓人! 要加块 画皮上去![attach]334991[/attach]

中间步骤的相片或有不足! 电路连接 需要软,硬相配合!大家不防发挥一吓自己想像力和创力, 创做自己led meter!

直接和lpt port 沟通
简单去测试Parallel port 出led meter!当大家安装好userport.exe,行一行个userport.exe, set 好option, reboot. 就可以直接和lpt
port 沟通了, 开一个dos box, 打入 ”debug” , 出了debug 的 prompt “-“ 再打入”?”[attach]334992[/attach]

一个debug command table 就跑了出来.
如你的lpt port address 是 378 HEX, 378+2=37a HEX
你试打入以下指令.
-o 378 00
-o 378 ff

-o 37a 00
-o 37a 0f
-o 37a 04

你的led meter 的on/off 是怎么样呢? 试和节录了的 I/O Addr. 内容对比, 体现inverted 的意思!

你也可以写一个属于你自己的程式
我未有资格教到你写pc的 ”编滙”(Assemble) 语言, 不过有一段好细的好直接(好蠢),也可正确地来推 8 leds 的led meter!

test.zip  http://www.geocities.com/dino_lo_hp/test.zip
我用flat assembler 1.64  http://flatassembler.net/

它是一个简化了,真的可以用的 编滙语言程式 (Assembler)

:一小段test.asm的解说如下.
     mov dx,378h ; i/o port ADD.
     mov al,000h ; storge data to aL
     out dx,al  ; out put data to i/o port set all led off
     call delay ; hold the led then next led on/off
main:
     mov al,0ffh; 11111111 or 000h 00000000
     out dx,al ; 输出第一组”走马灯”!
     call delay
     mov al,0feh; 11111110 / 001h 00000001
     out dx,al ; 输出第二组
     call delay
      mov al,0fch; 11111100 /003h 00000011
     out dx,al
     call delay
      mov al,0f8h; 11111000 /007h 00000111
     out dx,al
     call delay
      mov al,0f0h; 11110000 /00fh 00001111
     out dx,al
     call delay        
flsh:    mov ah,5 ; 间灯闪动5次
fl:  mov al,0aah
     out dx,al
     call delay
     mov al,055h
     out dx,al
     call delay
     dec ah
     jnz fl
loop main

delay:  mov cx,0f00h ; delay副程式
dly:     dec cx
     jnz dly
     loop delay

     ret   ; 返回主程式
  int      21h   ; 安全离开
  int      20h

test.com 的效果![attach]334993[/attach]
[attach]334996[/attach]

太简陋了!真系唔见得人! 都系雷凯欣和小南才是正确的示范,只要更改一个text file(.ini) 就可以更新闪动的次序和停顿时间.

雷凯欣的program 的screen capture,
可以read add+1 的msb 5个bit 出到32行预定字句![attach]334997[/attach]

小南的program 的 screen capture.[attach]334998[/attach]

经过多翻改动.ini file的成果 加上为了今次新打做的 22 leds led meter.[attach]334999[/attach]
[attach]335000[/attach]

LED meter 加长版 完



热切期望大家的意见!

后记
dino_lo:
在开放式的个人电脑的世界里, 须要软、硬互相配合才可以发挥出各式各样的功能! 要在这篇有限文字的分享中, 想得到更进一步的认识? 大家系可以去到网上找寻得到的. ”三部曲”的分享, 可算是一个少少的起步点, 所用到的器材的花费不多. 一支平价30 W电铬铁~hk$40, 小型万用表(他表)~hk$50.和基本的小型剪钳,焊锡线,中型螺丝批~hk$50(8 leds led meter的元件~hk$20). 在以后的日子里都用得着. 每一次用电脑的时候你都可以重新发掘, 合乎你自己需要的有趣用途! 不要被它冰冷的外表,限制了你的无限创意,无穷活力和无尽生气!

雷凯欣:
留位

小南:
留位


[ 本帖最后由 dino_lo 于 2006-1-14 18:43 编辑 ]
作者: clcwong    时间: 2006-1-10 19:12

好强的diy..><!!
有你地咁叻就好..
作者: dino_lo    时间: 2006-1-10 22:42

原帖由 clcwong 于 2006-1-10 19:12 发表
好强的diy..><!!
有你地咁叻就好..

从易的入手 LED Meter復刻版LED Meter復刻版
作者: dino_lo    时间: 2006-1-14 17:59     标题: LPT 三部曲 的分享总览!


LPT 三部曲 之 首部曲: LED Meter (復刻版)
我和阿死合作第一个分享: 含led,电阻的入门认识


LPT 三部曲 之首部曲: LED Meter! (加长版)
(多谢雷凯欣, 小南的 努力成果. 同时多谢 Erick 的尝试)
完成 LPT三部曲:Led Meter, Clcd, Glcd 完成之后的新搅作!



LPT 三部曲. 之 Char. LCD
阿死和我合作第二个分享(阿死顷力之作)
可变电阻的应用, 电脑取电途径



LPT 三部曲之 Graphic LCD 多谢大家!
我和阿死合作第三个分享加上 Shadylam: 给GLCD 一个家
和供电有关的小应用! el-发光片,负电压. 稳压管的小小资讯!

大家从以上的分享!希望可以对电子,电脑的应用多了一分趣味性的认识. 有机会! 可以见到你自己的分享文章在这边出现. 你们都是可以一起来动手做!
作者: chiocrh2000    时间: 2006-8-16 13:07

刚整好一个led meter,几好玩啊。
有个谂头,如果将led改做摩打....咁...都有几多发挥....
谂下先...
作者: chiocrh2000    时间: 2006-8-16 23:07

刚整好一个led meter,几好玩啊。大家都试下啊,唔系想像中咁难的
有个谂头,如果将led改做摩打....咁...都有几多发挥....
谂下先...
作者: dino_lo    时间: 2006-8-18 15:01

原帖由 chiocrh2000 于 2006-8-16 23:07 发表
刚整好一个led meter,几好玩啊。大家都试下啊,唔系想像中咁难的
有个谂头,如果将led改做摩打....咁...都有几多发挥....
谂下先...

记得中间要加buffer/isolate driver.如有烧port, 唔好我.
作者: bill001    时间: 2006-10-12 17:03



有没呢个的正上图呀~~
唔知要边几个 头 ??
作者: 柠檬    时间: 2006-10-12 22:03

好野来!
作者: lgngai    时间: 2007-6-11 22:56     标题: 鸭记亚叔婶有有彩色LCD panel 买

鸭记亚叔婶有有彩色 64x128 LCD panel 卖,每件 $45连基本接脚图,有谁能发表可用性?
作者: chungkai    时间: 2007-7-13 03:18

Thx~~~好靓呀~~试下自己买黎整先~~~





欢迎光临 电脑领域 HKEPC Hardware (https://global.hkepc.com/forum/) Powered by Discuz! 7.2