<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sv">
	<id>https://elektronikforumet.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Erikhk</id>
	<title>ElektronikWikin - Användarbidrag [sv]</title>
	<link rel="self" type="application/atom+xml" href="https://elektronikforumet.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Erikhk"/>
	<link rel="alternate" type="text/html" href="https://elektronikforumet.com/wiki/Special:Bidrag/Erikhk"/>
	<updated>2026-04-09T12:08:08Z</updated>
	<subtitle>Användarbidrag</subtitle>
	<generator>MediaWiki 1.37.2</generator>
	<entry>
		<id>https://elektronikforumet.com/wiki/index.php?title=PCD8544&amp;diff=3024</id>
		<title>PCD8544</title>
		<link rel="alternate" type="text/html" href="https://elektronikforumet.com/wiki/index.php?title=PCD8544&amp;diff=3024"/>
		<updated>2009-12-13T12:40:36Z</updated>

		<summary type="html">&lt;p&gt;Erikhk: lite av koden hamnade utanför kodrutan&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Styrkrets för [[LCD-Displayer]] som är gjrod för att styra displayer med en upplösning på 84*48 pixlar. PCD8544 används för att styra skärmen på många gamla Nokia-telefoner. Bland annat 5110, 5120, 5130, 5160, 6110, 6150, 3210, 3310, 3315, 3330, 3350 och 3410. Dess interface är seriellt och man kan på ett enkelt sätt koppla den till exempelvis datorn (via parallell-porten) eller en [[PIC]] eller [[AVR]]&lt;br /&gt;
&lt;br /&gt;
Ladda hem [[http://www.altronix.se/elwiki/files/pcd8544.pdf Databladet]]&lt;br /&gt;
&lt;br /&gt;
== Praktisk användning ==&lt;br /&gt;
&lt;br /&gt;
http://www.altronix.se/elwiki/files/lcds.jpg&lt;br /&gt;
&lt;br /&gt;
Bilden visar en display från en Nokia 3330&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:left&amp;quot;&lt;br /&gt;
|'''Pin'''&lt;br /&gt;
|'''Namn'''&lt;br /&gt;
|'''Beskrivning'''&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|VDD&lt;br /&gt;
|Spänningsmatning 3.3V&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|SCLK&lt;br /&gt;
|Klockingång för serieprotokollet&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|SDIN&lt;br /&gt;
|Seriell dataingång&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|D/C&lt;br /&gt;
|Val av kommandotyp (data eller konfiguration)&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|SCE&lt;br /&gt;
|En etta möjliggör mottagning av ny data&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|GND&lt;br /&gt;
|Jord&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|VOUT&lt;br /&gt;
|Spänning för kontrast&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|RES&lt;br /&gt;
|Reset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Koppla en kondensator på 4.7 uF mellan GND och VOUT för att utnyttja den inbyggda spänningsgeneratorn för kontrasten.&lt;br /&gt;
&lt;br /&gt;
Kontrasten är styrd från mjukvaran, den kan justeras i 8 steg i registret som heter Bias, mer info på sidan 16 i [[http://www.altronix.se/elwiki/files/pcd8544.pdf databladet]].&lt;br /&gt;
&lt;br /&gt;
För mer information se [[http://www.altronix.se/elwiki/files/pcd8544.pdf databladet]].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Kodexempel för AVR (Koden hämtad från http://www.microsyl.com/)&lt;br /&gt;
* http://www.altronix.se/elwiki/files/NokiaLCD.c&lt;br /&gt;
* http://www.altronix.se/elwiki/files/NokiaLCD.h (*)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
En alternativ version av AVR koden omskriven av simon78:&lt;br /&gt;
* http://www.altronix.se/elwiki/files/nokia-lcd.c&lt;br /&gt;
* http://www.altronix.se/elwiki/files/nokia-lcd.h&lt;br /&gt;
&lt;br /&gt;
''Jag har gjort lite uppdateringar på dem ifall du använder gcc. Jag har flyttat font-tabellen till programminnet samt lagt till en funktion som kan skriva ut strängar som ligger i programminnet. Småändringar som sparar ½Kb värdefull SRAM. PM-a om du är intresserad.''&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Beroende på dina kompilatorinställningar kan det vara nödvändigt att ändra koden i funktionen Delay() i NokiaLCD.c till;&lt;br /&gt;
&lt;br /&gt;
    static void delay ( void )&lt;br /&gt;
    {&lt;br /&gt;
        int i;&lt;br /&gt;
        for ( i = -32000; i &amp;lt; 32000; i++ )&lt;br /&gt;
          '''asm volatile(&amp;quot;nop&amp;quot; ::);'''&lt;br /&gt;
    }&lt;/div&gt;</summary>
		<author><name>Erikhk</name></author>
	</entry>
</feed>