The Philippine Electronics and Technology Forum
February 10, 2012, 06:15:27 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
   Home   Help Search Login Register  

Pages: 1 ... 5 6 [7] 8   Go Down
  Print  
Author Topic: Nokia 3310 LCD Image Encoder (free download)  (Read 21443 times)
macky
Lead Acid Battery
*******

Pogi/Ganda Points: 46
Offline Offline

Posts: 981



« Reply #120 on: October 01, 2008, 07:37:11 PM »

pa-upload naman sa rapidshare, may error sa filefactory ang displaying ng validation code e....tia!

ang pogi mo sir yus!!!!!!!!!! Grin
Logged

john 3:16 | oil of gladness
The Philippine Electronics and Technology Forum
« Reply #120 on: October 01, 2008, 07:37:11 PM »

 Logged
'yus
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 274
Offline Offline

Gender: Male
Posts: 4170


oops, kernel panic!


WWW
« Reply #121 on: October 01, 2008, 08:07:46 PM »

rapidshare: http://rapidshare.com/files/149942707/3310LCD_big_numbers.rar.html
Logged

join PhilRobotics - Amateur Robotics Club of the Philippines
macky
Lead Acid Battery
*******

Pogi/Ganda Points: 46
Offline Offline

Posts: 981



« Reply #122 on: October 01, 2008, 08:37:29 PM »

^thank you, thank you, thank you!!!! saturday na lang ha? don't forget! Grin
Logged

john 3:16 | oil of gladness
RaffT
Technical People
Hydroelectric
*****

Pogi/Ganda Points: 95
Offline Offline

Gender: Male
Posts: 3214


more on R-n-D


WWW
« Reply #123 on: October 01, 2008, 09:21:33 PM »

Yus,

 tsk galeng!! Grin

 pogi pogi pogi!!!! heheheheh Wink
Logged

Learning is CooL! BEAM robotics/DIY UCD180/PSP/AC wtmtr/digiESRmtr/PICkit™2 clone/SGTC/SSTC/DR-SSTC
'yus
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 274
Offline Offline

Gender: Male
Posts: 4170


oops, kernel panic!


WWW
« Reply #124 on: October 01, 2008, 09:40:28 PM »

may mali pala dun sa routine..  Cheesy
yung line na : if (line<1 && line>5) return;
dapat ay ganito: if (line<1 || line>5) return;

gawin na lang ganito yung routine:
Code:
void  display_digit(unsigned char line, unsigned char column, unsigned char digit)
{
   unsigned char i;
   if (line<1 || line>5) return;
   if (column >74) return;
   if (digit>9) return;
   
   nokia_gotoxy(column, line-1);
   for(i=0; i<8; i++) nokia_write_data(DIGITS_8x16[(digit<<4)+i]);
   nokia_gotoxy(column, line);
   for(i=8; i<16; i++) nokia_write_data(DIGITS_8x16[(digit<<4)+i]);   
}
Logged

join PhilRobotics - Amateur Robotics Club of the Philippines
RaffT
Technical People
Hydroelectric
*****

Pogi/Ganda Points: 95
Offline Offline

Gender: Male
Posts: 3214


more on R-n-D


WWW
« Reply #125 on: October 01, 2008, 09:52:09 PM »

may mali pala dun sa routine..  Cheesy
yung line na : if (line<1 && line>5) return;
dapat ay ganito: if (line<1 || line>5) return;

gawin na lang ganito yung routine:
Code:
void  display_digit(unsigned char line, unsigned char column, unsigned char digit)
{
   unsigned char i;
   if (line<1 || line>5) return;
   if (column >74) return;
   if (digit>9) return;
   
   nokia_gotoxy(column, line-1);
   for(i=0; i<8; i++) nokia_write_data(DIGITS_8x16[(digit<<4)+i]);
   nokia_gotoxy(column, line);
   for(i=8; i<16; i++) nokia_write_data(DIGITS_8x16[(digit<<4)+i]);   
}

^ noted hehehe na sim ko palang, di ko pa natingnan maigi yung code mo.. Smiley tnx bro
Logged

Learning is CooL! BEAM robotics/DIY UCD180/PSP/AC wtmtr/digiESRmtr/PICkit™2 clone/SGTC/SSTC/DR-SSTC
'yus
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 274
Offline Offline

Gender: Male
Posts: 4170


oops, kernel panic!


WWW
« Reply #126 on: October 26, 2008, 07:57:59 PM »

.. tayo ng maglipat-bahay sa Hi-Tech C.. hehe  Cheesy

ni-revised ko yung dati para mas madaling gamitin sa Hi-Tech C compiler..

requirement: dotNET 3.5
download locations: ~270kB exe file
   http://rapidshare.com
   http://megaupload.com/
   http://www.filefactory.com

sample Hi-Tech C code:
Code:
lcd_gotoxy(0,0);
for(i=0; i<504; i++) lcd_send(image[i],LCD_TDATA);
ang gamit kong 3310 LCD driver ey yung gawa ni sir zer0w1ng, na ginamit ko rin dito.

and the sample simulation output:


hehe  Grin
Logged

join PhilRobotics - Amateur Robotics Club of the Philippines
beginner wan
Diesel Generator
*

Pogi/Ganda Points: 46
Offline Offline

Gender: Male
Posts: 1454


Think Positive! Matutupad yang dream mo!


WWW
« Reply #127 on: October 26, 2008, 08:15:27 PM »

gustong gusto ko na paglaruan yung LCD ko, kaso yung xp ko di pa gumagana.. yung circuit sa side ng max232 ayaw..  Cry ok naman yung voltages na +10 at -10. ok din naman connections.. siguro caps talaga yung problem..  Cry
Logged

i;0.?QrEpM?4DEZZ]bkH{w@F<38.Jq@92Ds3KPQj60?EA7U\3M<A84J|AI.H
R@>&?Ej,@;5H)o::7KE/:?QcXf?gX'39=,Z_Q[eYXc
clarkent
Lead Acid Battery
*******

Pogi/Ganda Points: 20
Offline Offline

Gender: Male
Posts: 500


iehs


« Reply #128 on: April 06, 2009, 05:42:28 PM »

eto na may working unit na ako. yipheeeee







Mula po yan sa 5110. Di ksi nagwork ung 3310 ko cguro di maganda ang contact, rubber lang ksi.

Ang maganda po dito di na kayo gagawa ng board tapos ang bonus may backlight pa (di pa kasali sa program) may buzzer din na pwedeng gamitin at keypad (medyo mahirap ang casing).


Salamat nga pala kay YUS sa sample program.


para san po yang mga resistors sa likod sir?
Logged

if you think you can or think you can't, you're probably right -h.ford
'yus
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 274
Offline Offline

Gender: Male
Posts: 4170


oops, kernel panic!


WWW
« Reply #129 on: April 06, 2009, 06:23:13 PM »

para san po yang mga resistors sa likod sir?
mostly dyan ay pang-current limit.. 3.6V lang ang maximum operting voltage ng 3310 LCD,
while yung ginamit na PIC ay nag-ooperate sa 5V..
Logged

join PhilRobotics - Amateur Robotics Club of the Philippines
maldihtah13
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 110
Offline Offline

Gender: Female
Posts: 4448


Everyday is a learning process so try to learn ;D


« Reply #130 on: April 07, 2009, 09:31:54 AM »

Tama po si yus mostly ginamit ko yan as voltage divider.
Logged
clarkent
Lead Acid Battery
*******

Pogi/Ganda Points: 20
Offline Offline

Gender: Male
Posts: 500


iehs


« Reply #131 on: April 22, 2009, 08:12:16 PM »

OT:

so mgbvoltage divider po pala sa outputpins ng PIC papunta sa LCD para di lumampas sa required voltage level ng lcd?
Logged

if you think you can or think you can't, you're probably right -h.ford
maldihtah13
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 110
Offline Offline

Gender: Female
Posts: 4448


Everyday is a learning process so try to learn ;D


« Reply #132 on: April 23, 2009, 05:44:27 AM »

OT:

so mgbvoltage divider po pala sa outputpins ng PIC papunta sa LCD para di lumampas sa required voltage level ng lcd?

yes ganun nga
Logged
craxtech
LR44 Battery
*

Pogi/Ganda Points: 0
Offline Offline

Posts: 4


« Reply #133 on: April 24, 2009, 12:08:59 PM »

meron din ba code nyan para sa mikro basic?
Logged
maldihtah13
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 110
Offline Offline

Gender: Female
Posts: 4448


Everyday is a learning process so try to learn ;D


« Reply #134 on: April 24, 2009, 01:07:00 PM »

Proton picbasic ang ginamit ko ok nman sya.
Logged
coolSkool
Size AAA Battery
***

Pogi/Ganda Points: 0
Offline Offline

Posts: 62



« Reply #135 on: May 05, 2009, 12:10:05 PM »

here's the sample main code:

Code:
Code:
#include <16F73.h>
#device adc=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NOBROWNOUT
#use delay(clock=10M)
#byte lcdport         = 0x06   // PORTB
#byte lcdport_tris   = 0x86   // PORTB tris
#bit nok_sclk = lcdport.4    // RB5
#bit nok_sda  = lcdport.3    // RB6
#bit nok_dc   = lcdport.2    // RB7
#bit nok_cs   = lcdport.1    // RB0
#bit nok_res  = lcdport.0     // RB1

#include "3310.c"

const unsigned char image1[252] = {0x00, 0x00, 0x00, 0x7C, 0x83, 0x03, 0x03, 0x3F, 0x3F, 0xFC, 0xF0, 0xC0, 0x70, 0x0C, 0x03, 0x03, 0x03, 0x83, 0xFC, 0x40, 0x40, 0x40, 0x40, 0x40, 0xC0, 0xFC, 0x03, 0x03, 0x03, 0x03, 0xFC, 0xC0, 0xF0, 0x0C, 0x0C, 0x0C, 0x0C, 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x40, 0x40, 0x80, 0x00, 0x0C, 0x30, 0x40, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x40, 0x30, 0x0C, 0x00, 0x00, 0x80, 0x80, 0x40, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x38, 0xC0, 0x00, 0x00, 0x01, 0x0F, 0x0F, 0x00, 0xC0, 0xF0, 0xF0, 0xF8, 0x07, 0x01, 0x00, 0x00, 0x38, 0x38, 0x38, 0x01, 0x07, 0xFE, 0xC0, 0x00, 0x00, 0x07, 0x07, 0x07, 0xC0, 0xF0, 0xF8, 0xF8, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xC6, 0x06, 0x08, 0x08, 0x30, 0x30, 0x31, 0x06, 0xC8, 0x30, 0x08, 0x08, 0x08, 0x06, 0x36, 0x06, 0x36, 0x06, 0x06, 0x06, 0x08, 0x08, 0x30, 0xC8, 0x06, 0x31, 0x31, 0x30, 0x08, 0x08, 0x06, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFC, 0xF8, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xF8, 0xFC, 0x7F, 0x7F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x87, 0x63, 0x63, 0x60, 0x60, 0x60, 0x60, 0x60, 0xE0, 0xE0, 0xE0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x63, 0x63, 0x63, 0x63, 0x63, 0x00, 0xFC, 0x03, 0x00, 0x78, 0x80, 0x80, 0x1C, 0x63, 0x63, 0x63, 0x63, 0x1C, 0x1C, 0x80, 0x78, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x63, 0x63, 0x63, 0x63, 0x60 };
const unsigned char image2[252] = {0x00, 0x00, 0x00, 0x00, 0xC0, 0xB0, 0x30, 0x33, 0x33, 0x3C, 0x3C, 0x7F, 0xFF, 0x0F, 0x0F, 0x0F, 0x3C, 0x3C, 0x8F, 0x8F, 0x8F, 0x7F, 0x7F, 0x33, 0x03, 0xC3, 0xC3, 0x0F, 0x3F, 0x3F, 0xFC, 0xF0, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0xFF, 0x3F, 0x30, 0xF0, 0xC0, 0xC0, 0xC0, 0x30, 0x30, 0xF0, 0xCC, 0x0C, 0x0C, 0x0C, 0x80, 0x0F, 0x70, 0x80, 0x00, 0x0F, 0x0F, 0x3F, 0x7C, 0x7C, 0x7C, 0x7C, 0x3F, 0x3F, 0x0F, 0x00, 0x80, 0x70, 0x0F, 0x80, 0x80, 0x0C, 0x0C, 0x0C, 0x30, 0x30, 0x00, 0x00, 0x00, 0xC0, 0x37, 0x0F, 0x0E, 0xCE, 0xCE, 0xC0, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0x01, 0x38, 0x38, 0xF8, 0xF0, 0xF1, 0xF1, 0xF0, 0xF8, 0xF8, 0x3F, 0x0F, 0x00, 0x07, 0x0E, 0x0E, 0x0E, 0x07, 0x0E, 0x0E, 0x07, 0x0E, 0x0E, 0x0E, 0x0F, 0x30, 0xC0, 0xC7, 0x0F, 0x0F, 0x0F, 0x00, 0xC0, 0xFF, 0xFF, 0x06, 0x06, 0x06, 0x01, 0xC0, 0x30, 0x01, 0x06, 0xC6, 0xC6, 0x08, 0x08, 0xC8, 0x08, 0x08, 0xC8, 0xC8, 0x06, 0x06, 0x01, 0x30, 0xC0, 0x01, 0x01, 0x06, 0x06, 0x08, 0x30, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xF8, 0xE0, 0xE0, 0xE3, 0xE3, 0xE3, 0xF8, 0x78, 0xE3, 0xE3, 0xFC, 0xFC, 0x78, 0x78, 0x7F, 0x1F, 0x78, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x78, 0x7F, 0x1C, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x84, 0x87, 0x83, 0xE0, 0xF8, 0xF8, 0x7F, 0x1F, 0x07, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x1C, 0x03, 0x03, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0x03, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00 };

void init() {
   setup_adc_ports(NO_ANALOGS);
   setup_adc(ADC_OFF);
   setup_spi(FALSE);
   lcdport_tris = 0x00;        // lcdport all bits are outputs
   port_b_pullups(TRUE);

   nokia_init();
}

void main()
{
   char i;
   init();
   
   nokia_gotoxy(0,0);
   for(i=0; i<252; i++) nokia_write_data(image1[i]);
   for(i=0; i<252; i++) nokia_write_data(image2[i]);   
       
}

and just in case wala pa kayo nung 3310 LCD code library:

Code:
Code:
////////////////////////////////////////////////////////////////////////////////
/*
                     LPH7779-LCD(Nokia 3310) library
*/
////////////////////////////////////////////////////////////////////////////////

char CONST TABLE5 [240] = {  // ASCII table for NOKIA LCD: 96 rows * 5 bytes= 480 bytes
                  0x00,0x00,0x00,0x00,0x00,   // 20 space
                  0x00,0x00,0x5f,0x00,0x00,   // 21 !
                  0x00,0x07,0x00,0x07,0x00,   // 22 "
                  0x14,0x7f,0x14,0x7f,0x14,   // 23 #
                  0x24,0x2a,0x7f,0x2a,0x12,   // 24 $
                  0x23,0x13,0x08,0x64,0x62,   // 25 %
                  0x36,0x49,0x55,0x22,0x50,   // 26 &
                  0x00,0x05,0x03,0x00,0x00,   // 27 '
                  0x00,0x1c,0x22,0x41,0x00,   // 28 (
                  0x00,0x41,0x22,0x1c,0x00,   // 29 )
                  0x14,0x08,0x3e,0x08,0x14,   // 2a *
                  0x08,0x08,0x3e,0x08,0x08,   // 2b +
                  0x00,0x50,0x30,0x00,0x00,   // 2c ,
                  0x08,0x08,0x08,0x08,0x08,   // 2d -
                  0x00,0x60,0x60,0x00,0x00,   // 2e .
                  0x20,0x10,0x08,0x04,0x02,   // 2f /
                  0x3e,0x51,0x49,0x45,0x3e,   // 30 0
                  0x00,0x42,0x7f,0x40,0x00,   // 31 1
                  0x42,0x61,0x51,0x49,0x46,   // 32 2
                  0x21,0x41,0x45,0x4b,0x31,   // 33 3
                  0x18,0x14,0x12,0x7f,0x10,   // 34 4
                  0x27,0x45,0x45,0x45,0x39,   // 35 5
                  0x3c,0x4a,0x49,0x49,0x30,   // 36 6
                  0x01,0x71,0x09,0x05,0x03,   // 37 7
                  0x36,0x49,0x49,0x49,0x36,   // 38 8
                  0x06,0x49,0x49,0x29,0x1e,   // 39 9
                  0x00,0x36,0x36,0x00,0x00,   // 3a :
                  0x00,0x56,0x36,0x00,0x00,   // 3b ;
                  0x08,0x14,0x22,0x41,0x00,   // 3c <
                  0x14,0x14,0x14,0x14,0x14,   // 3d =
                  0x00,0x41,0x22,0x14,0x08,   // 3e >
                  0x02,0x01,0x51,0x09,0x06,   // 3f ?
                  0x32,0x49,0x79,0x41,0x3e,   // 40 @
                  0x7e,0x11,0x11,0x11,0x7e,   // 41 A
                  0x7f,0x49,0x49,0x49,0x36,   // 42 B
                  0x3e,0x41,0x41,0x41,0x22,   // 43 C
                  0x7f,0x41,0x41,0x22,0x1c,   // 44 D
                  0x7f,0x49,0x49,0x49,0x41,   // 45 E
                  0x7f,0x09,0x09,0x09,0x01,   // 46 F
                  0x3e,0x41,0x49,0x49,0x7a,   // 47 G
                  0x7f,0x08,0x08,0x08,0x7f,   // 48 H
                  0x00,0x41,0x7f,0x41,0x00,   // 49 I
                  0x20,0x40,0x41,0x3f,0x01,   // 4a J
                  0x7f,0x08,0x14,0x22,0x41,   // 4b K
                  0x7f,0x40,0x40,0x40,0x40,   // 4c L
                  0x7f,0x02,0x0c,0x02,0x7f,   // 4d M
                  0x7f,0x04,0x08,0x10,0x7f,   // 4e N
                  0x3e,0x41,0x41,0x41,0x3e};   // 4f O

char CONST TABLE6 [240] = {
                  0x7f,0x09,0x09,0x09,0x06,   // 50 P
                  0x3e,0x41,0x51,0x21,0x5e,   // 51 Q
                  0x7f,0x09,0x19,0x29,0x46,   // 52 R
                  0x46,0x49,0x49,0x49,0x31,   // 53 S
                  0x01,0x01,0x7f,0x01,0x01,   // 54 T
                  0x3f,0x40,0x40,0x40,0x3f,   // 55 U
                  0x1f,0x20,0x40,0x20,0x1f,   // 56 V
                  0x3f,0x40,0x38,0x40,0x3f,   // 57 W
                  0x63,0x14,0x08,0x14,0x63,   // 58 X
                  0x07,0x08,0x70,0x08,0x07,   // 59 Y
                  0x61,0x51,0x49,0x45,0x43,   // 5a Z
                  0x00,0x7f,0x41,0x41,0x00,   // 5b [
                  0x02,0x04,0x08,0x10,0x20,   // 5c \
                  0x00,0x41,0x41,0x7f,0x00,   // 5d ñ
                  0x04,0x02,0x01,0x02,0x04,   // 5e ^
                  0x40,0x40,0x40,0x40,0x40,   // 5f _
                  0x00,0x01,0x02,0x04,0x00,   // 60 `
                  0x20,0x54,0x54,0x54,0x78,   // 61 a
                  0x7f,0x48,0x44,0x44,0x38,   // 62 b
                  0x38,0x44,0x44,0x44,0x20,   // 63 c
                  0x38,0x44,0x44,0x48,0x7f,   // 64 d
                  0x38,0x54,0x54,0x54,0x18,   // 65 e
                  0x08,0x7e,0x09,0x01,0x02,   // 66 f
                  0x0c,0x52,0x52,0x52,0x3e,   // 67 g
                  0x7f,0x08,0x04,0x04,0x78,   // 68 h
                  0x00,0x44,0x7d,0x40,0x00,   // 69 i
                  0x20,0x40,0x44,0x3d,0x00,   // 6a j
                  0x7f,0x10,0x28,0x44,0x00,   // 6b k
                  0x00,0x41,0x7f,0x40,0x00,   // 6c l
                  0x7c,0x04,0x18,0x04,0x78,   // 6d m
                  0x7c,0x08,0x04,0x04,0x78,   // 6e n
                  0x38,0x44,0x44,0x44,0x38,   // 6f o
                  0x7c,0x14,0x14,0x14,0x08,   // 70 p
                  0x08,0x14,0x14,0x18,0x7c,   // 71 q
                  0x7c,0x08,0x04,0x04,0x08,   // 72 r
                  0x48,0x54,0x54,0x54,0x20,   // 73 s
                  0x04,0x3f,0x44,0x40,0x20,   // 74 t
                  0x3c,0x40,0x40,0x20,0x7c,   // 75 u
                  0x1c,0x20,0x40,0x20,0x1c,   // 76 v
                  0x3c,0x40,0x30,0x40,0x3c,   // 77 w
                  0x44,0x28,0x10,0x28,0x44,   // 78 x
                  0x0c,0x50,0x50,0x50,0x3c,   // 79 y
                  0x44,0x64,0x54,0x4c,0x44,   // 7a z
                  0x00,0x08,0x36,0x41,0x00,   // 7b {
                  0x00,0x00,0x7f,0x00,0x00,   // 7c |
                  0x00,0x41,0x36,0x08,0x00,   // 7d }
                  0x10,0x08,0x08,0x10,0x08,   // 7e ~
                  0x78,0x46,0x41,0x46,0x78};   // 7f ¦

         // 7e,43,40,43,7e --> Ü
         // 7e,43,42,43,7e --> Ö
         // 1e,21,21,71,21 --> Ç
         // 3c,42,53,53,72 --> Ð

//function prototypes
void    nokia_init();
void    nokia_write_command(char bytefornokia_command);
void    nokia_write_data(char bytefornokia_data);
void    nokia_write_dorc(char bytefornokia);
void    nokia_gotoxy(char xnokia, char ynokia);
void  nokia_contrast (byte contrast);
void  nokia_printchar(char cvar);
void    nokia_clean_ddram();
void    table_to_nokialcd();
void  LcdPixel (char x, char y);
void show_image(void);

char char_row,charsel,charpos,chardata;
int16 ddram;

void nokia_init() {
   nok_dc=1;            // bytes are stored in the display data ram, address counter, incremented automatically
   nok_cs=1;            // chip disabled
   delay_us(200);

   nok_res=0;
   delay_ms(10);
   nok_res=1;

   nokia_write_command(0x21); // set extins extended instruction set
   nokia_write_command(0xc8); // Vop  v1: 0xc8 (for 3V), v2: 0xa0 (for 3V)
   nokia_write_command(0x13); // bias
   nokia_write_command(0x20); // horizontal mode from left to right, X axe are incremented automatically,
                              // 0x22 for vertical addressing, back on normal instruction set too
   nokia_write_command(0x09); // all on

   delay_ms(50);

   nokia_clean_ddram();       // reset DDRAM, otherwise the lcd is blurred with random pixels

   delay_ms(10);

   nokia_write_command(0x08); // mod control blank change (all off)
   delay_ms(10);

   nokia_write_command(0x0c); // mod control normal change
}

void nokia_clean_ddram() {
   nokia_gotoxy(0,0);         // 84*6=504      clear LCD
   for (ddram=504; ddram>0; ddram--)
      nokia_write_data(0x00);
}

void nokia_write_command(char bytefornokia_command)
{
   nok_dc=0;   // byte is a command it is read with the eight SCLK pulse
   nok_cs=0;   // chip enabled
   nokia_write_dorc(bytefornokia_command);
   nok_cs=1;   // chip disabled
}

void nokia_write_data(char bytefornokia_data)
{
   nok_dc=1;
   nok_cs=0;   // chip enabled
   nokia_write_dorc(bytefornokia_data);
   nok_cs=1;   // chip disabled
}

void nokia_write_dorc(char bytefornokia) {      // serial write data or command subroutine
   char caa;
   for (caa=8;caa>0;caa--)
      {
         nok_sclk=0;
         delay_us(2);
         if ((bytefornokia&0x80)==0)
            nok_sda=0;
         else
            nok_sda=1;
         nok_sclk=1;
         delay_us(2);
         bytefornokia = bytefornokia << 1;
      }
}

void nokia_gotoxy(char xnokia, char ynokia) {   // Nokia LCD 3310 Position cursor
   nokia_write_command(0x40|(ynokia&0x07));     // Y axe initialisation: 0100 0yyy
   nokia_write_command(0x80|(xnokia&0x7f));     // X axe initialisation: 1xxx xxxx
}

void nokia_contrast (char contrast) {
    nokia_write_command(0x21);                  // LCD Extended Commands.
    nokia_write_command(0x80 | contrast);       // Set LCD Vop (Contrast).
    nokia_write_command(0x20);                  // LCD Standard Commands, horizontal addressing mode.
}

void nokia_printchar(char cvar) {               // Write 1 character to LCD
   charsel=cvar;
   table_to_nokialcd();
}

void table_to_nokialcd() {                      // extract ascii from tables & write to LCD
   if (charsel<0x20) return;
   if (charsel>0x7f) return;

   for (char_row=0;char_row<5;char_row++)
      {
         if (charsel<0x50){charpos=(((charsel&0xff)-0x20)*5);chardata=TABLE5[(charpos+char_row)];}   // use TABLE5
         if (charsel>0x4f){charpos=(((charsel&0xff)-0x50)*5);chardata=TABLE6[(charpos+char_row)];}   // use TABLE6

         nokia_write_data(chardata);  // send data to nokia
      }
         nokia_write_data(0x00);      // 1 byte (always blank)
}

void LcdPixel (char x, char y) {
    char offset;
    byte  data;

    if (x > 84) return;
    if (y > 48) return;

    offset = y % 8;
    data = (0x01<<offset);
       
    nokia_gotoxy(x, (y/8));
    nokia_write_data(data);
}


Sir pano ko po magagawang library tong codes na ito? Ecocompile ko po ba siya then esesave ko po ba siya as 3310.c para magamit ko po siya sa main program? Hitech C po ba to or CCS C? Thanks.
Logged
Dennis
Size C Battery
*****

Pogi/Ganda Points: 28
Offline Offline

Posts: 155



« Reply #136 on: May 25, 2009, 02:01:06 PM »



wala na yung file?
Logged

Failure is not defeated, Unless you stop trying

OmegaByte®, Explicitmind®, DMSoftware®
'yus
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 274
Offline Offline

Gender: Male
Posts: 4170


oops, kernel panic!


WWW
« Reply #137 on: May 25, 2009, 06:48:06 PM »

^ hanapan ko mamaya.. upload ko ulit.. Smiley
Logged

join PhilRobotics - Amateur Robotics Club of the Philippines
'yus
Technical People
Nuclear Reactor
*****

Pogi/Ganda Points: 274
Offline Offline

Gender: Male
Posts: 4170


oops, kernel panic!


WWW
« Reply #138 on: May 25, 2009, 10:40:43 PM »

ito na, re-upload ko sa 4shared.. Smiley
http://www.4shared.com/file/107667930/e60bcc95/3310LCD_big_numbers.html

yung code dyan for PIC ay for CCS C compiler pa, hindi ko pa na-port sa hi-tech C..

meron din akong sample sa Hi-Tech C ng pag-gamit ng big font number dun sa "Digital LC Meter" project.
Logged

join PhilRobotics - Amateur Robotics Club of the Philippines
toy_box_1101
LR44 Battery
*

Pogi/Ganda Points: 0
Offline Offline

Posts: 2


« Reply #139 on: June 12, 2009, 09:32:59 PM »

gud day po. pwede po bng mkahingi ng proteus 3310 LCD library, ung pang proteus ISIS..thanks po
Logged
The Philippine Electronics and Technology Forum
   

 Logged
Pages: 1 ... 5 6 [7] 8   Go Up
  Print  
 
Jump to:  


Related Topics
Subject Started by Replies Views Last post
Nokia 3310 LCD LPH7779
Microcontroller/Microprocessor Unit Projects and Programming
toasted siopao 0 2093 Last post February 13, 2008, 11:00:04 PM
by toasted siopao
nokia 3310 lcd temp project
Microcontroller/Microprocessor Unit Projects and Programming
duldog 3 1597 Last post April 06, 2008, 03:25:10 PM
by 'yus
Nokia 3310 LCD and Zilog Z8F0423 « 1 2 »
Zilog Microcontrollers
'yus 29 5820 Last post August 20, 2010, 12:21:27 PM
by 'yus
Free Download mobile phone themes Nokia, Sony Ericsson etc.
Cellular Phones and Accessories
tbb_edp 6 9644 Last post July 21, 2010, 01:26:18 AM
by joejoel7777
nokia 3310
Cellphone Repair (Cellphone Technicians Forum)
charlie 0 426 Last post February 20, 2010, 11:12:53 AM
by charlie
LCD 3310. text good image fuddle. Voltage Divider?
Microcontroller/Microprocessor Unit Projects and Programming
Positron E+ 17 1301 Last post March 22, 2010, 04:51:39 PM
by Positron E+
Uart sending Image on 3310 LCD -tapos narin,very challenging (picture and video) « 1 2 »
Microcontroller/Microprocessor Unit Projects and Programming
Positron E+ 27 1766 Last post April 15, 2010, 12:51:04 PM
by Positron E+
Powered by MySQL Powered by PHP Powered by SMF 1.1.15 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!