VFD display till datorn...
VFD display till datorn...
tjenis...
har kopplat en 4*20VFD display till datorn.
displayen styrs av en ATMega16 som får
information från datorn via RS-232...
än så länge visar displayen tid/datum, antal mail
eller information från winamp..
det hela styrs från ett program jag gjort
i VB6..
använde bascom-AVR till ATmega'n
bild:
http://w1.380.telia.com/~u38013869/DSCN0135.JPG
lyckades även få till en lite filmsnutt... (ser lite skum ut...men, men)
http://w1.380.telia.com/~u38013869/DSCN0138.MOV
/andreas
har kopplat en 4*20VFD display till datorn.
displayen styrs av en ATMega16 som får
information från datorn via RS-232...
än så länge visar displayen tid/datum, antal mail
eller information från winamp..
det hela styrs från ett program jag gjort
i VB6..
använde bascom-AVR till ATmega'n
bild:
http://w1.380.telia.com/~u38013869/DSCN0135.JPG
lyckades även få till en lite filmsnutt... (ser lite skum ut...men, men)
http://w1.380.telia.com/~u38013869/DSCN0138.MOV
/andreas
Hej
Jag har gjort nått liknande fast med en 2x16 tecken stor LCD. Har försökt skapa rullande text på min men inte lyckats specielt bra. Det hela blir väldigt hackigt... Hur har du löst det?
Lite mer info finns här...
http://www.net-bear.com/el_lcd.php
/Björn
Jag har gjort nått liknande fast med en 2x16 tecken stor LCD. Har försökt skapa rullande text på min men inte lyckats specielt bra. Det hela blir väldigt hackigt... Hur har du löst det?
Lite mer info finns här...
http://www.net-bear.com/el_lcd.php
/Björn
14V ac?
Jag använder mig av en VFD-modul, alltså en VFD-display monterad
på ett kretskort tillsammans med drivelektronik och späningsomvandlare,
det hela drivs sedan från vanlig 5v (500mA).
Modulen har samma interface som vanliga LCD-moduler så det
hela blir lätt att styra.
baksidan:
tyvärr är dessa moduler rätt så dyra..
Elfa tar t.ex över 1000 spänn för en 4*20.
/Andreas
på ett kretskort tillsammans med drivelektronik och späningsomvandlare,
det hela drivs sedan från vanlig 5v (500mA).
Modulen har samma interface som vanliga LCD-moduler så det
hela blir lätt att styra.
baksidan:
tyvärr är dessa moduler rätt så dyra..
Elfa tar t.ex över 1000 spänn för en 4*20.
/Andreas
okeey...netbear skrev:Hej
Jag har gjort nått liknande fast med en 2x16 tecken stor LCD. Har försökt skapa rullande text på min men inte lyckats specielt bra. Det hela blir väldigt hackigt... Hur har du löst det?
Lite mer info finns här...
http://www.net-bear.com/el_lcd.php
/Björn
ja först och främst.. använder du någon typ av seriel anslutning till din display..?
jag rekommenderar att använda parallell eftersom den seriella ofta är för långsam om man vill få till snygga scrollningar..
själva scrollningen är inte så avancerad. vet inte vad du programmerar i
men i princip är det väl samma metod för alla...
...du behöver en timer-interupt för att få en jämn och fin hastighet..
...en variabel för att hålla reda på vilken bokstav du ska börja på
i interupten:
* gå till rätt rad på displayen...
* skriv ut 20 tecken från bokstaven du börjar på, om texten är
kortare än 20 tecken - fyll ut med mellanslag
* öka din variabel med 1... nästa gång du kommer till din interupt
skrivs nästa 20 tecken ut.
------
när du har gjort detta "antalet tecken" + 20 så har texten flyttat sig
till vänster sida av displayen...
ger ett exempel i basic...
Kod: Markera allt
Dim strArtist as String
Dim intLngth as Integer
Dim scrollV as Integer
Dim char as Byte
strArtist = "Billy Ocean - Get out of my dreams, get into my car!"
intLngth = LEN(strArtist)
Sub Timer()
Call VfdWr(&HXX)
Call VfdWr(&HXX) ' Gå till rätt rad
scrollV = scrollV + 1
If scrollV < intLngth + 20 Then
Dim i as Integer
For i = scrollV To scrollV + 20
If i <= intLngth Then
char = Mid(strArtist, i, 1)
Else
char = 32
End if
Call VfdWr(char)
Next i
Else
scrollV = 0
End If
End Sub
Sub VfdWr(Char)
------------ kod för att skicka 'char' till VFD
End Sub
går inte att använda direkt.. men basic kod brukar vara ganska lätt
att förstå så...
/Andreas[/code]
Senast redigerad av anlamotte 2 september 2003, 11:46:49, redigerad totalt 1 gång.
Jo det är ungefär så som jag har gjort men du har nog rätt det är för långsamt... funderar på om man skulle kunna ladda över hela meddelandet som skall visas från datorn serielt till pic16f84an som driver lcdn... den skulle sedan kunna betydligt fortare uppdatera displayen... hmmm... vet dock inte riktigt hur jag ska lösa det rent minnesmässigt i picen... men det måste gå men får väl lagra texten i minnesplatser bredvid varandra och sedan stega igenom det... (nån form av simpel pekare)...
Tack iaf
/Björn
Tack iaf
/Björn
>pic..
> stega igenom det... (nån form av simpel pekare).
Japp, PIC'en har en egen ram-pekare (indirect adressing).
Adressen lägger du i FSR (04hex), data hittar/skriver du till INDF(00hex).
Då fungerar minnet som ett RAM i en dator... Fast du borde inte deklarera variabler på samma område du tänker använda indirekt. FSR har lite olik bredd beroende på chip. Kolla datablad.
> stega igenom det... (nån form av simpel pekare).
Japp, PIC'en har en egen ram-pekare (indirect adressing).
Adressen lägger du i FSR (04hex), data hittar/skriver du till INDF(00hex).
Då fungerar minnet som ett RAM i en dator... Fast du borde inte deklarera variabler på samma område du tänker använda indirekt. FSR har lite olik bredd beroende på chip. Kolla datablad.
Låter mycket intressant har läst något om shifting i databladet men aldrig fått det att fungera... Så jag ska ställa in lcdn på shifting och sen sätta rs låg när jag vill att den ska shifta... Måste undersökas...hebbe skrev:Alfanumeriska LCD stöder instruktioner som shiftar höger/vänster. När RS(register select) sätts låg, och data är: 00011000 scrollas texten på en rad (den cursorn står på) åt vänster.
00011100 scrollar åt höger.
Då skulle man bara behöva skriva dit ett tecken för varje 'scroll interrupt'.
/Björn
jo, men tyvärr ger detta en ganska usel kontroll på det hela...hebbe skrev:Alfanumeriska LCD stöder instruktioner som shiftar höger/vänster. När RS(register select) sätts låg, och data är: 00011000 scrollas texten på en rad (den cursorn står på) åt vänster.
00011100 scrollar åt höger.
Då skulle man bara behöva skriva dit ett tecken för varje 'scroll interrupt'.
ofta går det inte att bestämma att en speciell rad ska scrollas, utan
hela displayen scrollas.. det som hamnar "utanför" på rad 2 t.ex
flyttas till rad1 osv...
/Andreas
För att få nått i ett forum att bli exakt som man tänkt sej så trycker man in all text mellan [ Code ] TEXT/Kod [ /code ]anlamotte skrev:ser att alla mellanslag försvann.. så det ser lite skumt ut.. men, men
EX.
Kod: Markera allt
:)
Code knappen sitter ovanför rutan som du skriver mess i.