Nokia telefon lcdleri ile güzel devreler yapılıyor eski telefonu bu iş için değerlendirmek iyidir 🙂 bu tip çalışmalar için proteus model dosyası işinize yarayabilir
iki adet sat derece uygulaması var ikiside PIC16F877 ile gerçekleştirilmiş ccs için verilen not
go6o diyorki:
Eğer sisteminizde Proteus 6.3 SP1 kurulu değil ise, isis file menüsünden import section’ı tıklayarak schema.sec dosyasını seçin böylelikle şema daha eski versiyonlarda
da çalışacaktır.
LPH7779-LCD(Nokia 3310) library
//////////////////////////////////////////////////////////////////////////////// /* LPH7779-LCD(Nokia 3310) library */ //////////////////////////////////////////////////////////////////////////////// #bit nok_sclk = lcdport.5 // RB5 #bit nok_sda = lcdport.6 // RB6 #bit nok_dc = lcdport.7 // RB7 #bit nok_cs = lcdport.0 // RB0 #bit nok_res = lcdport.1 // RB1 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); 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) { int16 offset; byte data; if (x > 84) return; if (y > 48) return; offset = y - ((y / 8) * 8) - 1; data = (0x01 << offset); nokia_gotoxy(x, (y/6)); nokia_write_data(data); }
Nokia 3310 library PICBASIC
@ DEVICE pic16F877A @ DEVICE pic16F877A, WDT_on @ DEVICE pic16F877A, PWRT_off @ DEVICE pic16F877A, PROTECT_OFF @ DEVICE pic16F877A, HS_OSC 'Include "Modedefs.Bas" 'TRISC=0 TRISD=0 'TRISE=0 'TRISA=0 'TRISB=0 OPTION_REG.7=1 'PULL UP DİRENÇLERİNİN HEPSİ İPTAL adcon1=7 DEFINE OSC 20 '3310 lcd tanımlamaları DC VAR PortB.4 DTA VAR PortB.3 RST VAR PortB.5 CLK VAR PortB.2 Chr VAR WORD j var byte i VAR byte CharCount VAR Byte PosX VAR Byte PosY VAR Byte Column VAR Byte [6] LcdData VAR BYTE '*****RTC DS1302 TANIMLAMALARI***** RTC_RST VAR PORTC.3 RTC_CLK VAR PORTC.1 RTC_DTA VAR PORTC.2 MENU VAR PORTD.2 YUKARI VAR PORTD.3 ASAGI VAR PORTC.4 '*******DS1820 TANIMLAMALARI*************** Comm_Pin VAR PortA.1 ' One-wire Data-Pin "DQ" PortB.0 da '*****RTC DS1302 DEĞİŞKENLERİ***** SN VAR BYTE DAK VAR BYTE SAAT VAR BYTE GUN VAR BYTE AY VAR BYTE YIL VAR BYTE MEM var byte SAYI VAR BYTE day var byte'haftanın gunlerı degiskeni e VAR BYTE ONLAR VAR BYTE BIRLER VAR BYTE SN_ESKI VAR BYTE YENILE VAR BIT deger var byte 'DS1820 DEGİSKENLERİ*************** Busy VAR BIT ' Busy Status-Bit HAM VAR WORD ' Sensör HAM okuma değeri ISI VAR WORD ' Hesaplanmış ISI değeri Float VAR WORD ' Holds remainder for + temp C display X VAR WORD SIGN_BITI VAR HAM.Bit11 ' +/- sıcaklık İşaret biti, 1 = olursa eksi sıcaklık NEGAT_ISI CON 1 ' Negatif_Cold = 1 SIGN VAR BYTE ' ISI değeri için +/- işaret TEMP VAR BYTE ' Div32 bit hesap için geçici değişken ISI_ESKI VAR BYTE 'ilk degerler sn=40 saat=23 dak=59 gun=20 ay=01 yil=08 day=1 '*********************************** ' LCD BASLANGIC AYARLARI PAUSE 100 GOSUB LCD_INIT PAUSE 100 GOSUB LCD_Clear low RTC_RST 'RESET VE CLOCK PİNLERİ SIFIRLADIK saat saymaya baslıyor LOW RTC_CLK GOSUB ZAMAN_YAZ GOSUB IMAJ1 PAUSE 2000 GOSUB EKRAN1 GOSUB ZAMAN_GOSTER SN_ESKI=SN 'PAUSE 2000 basla1: if MENU=0 then BASLA1 BASLA: if MENU=0 then saatayar 'ISI_ESKI=ISI 'gosub zaman_goster GOSUB SENSOROKU gosub zaman_oku IF SN_ESKI<>SN THEN gosub zaman_goster SN_ESKI=SN ENDIF GOSUB DEGER_AL gosub isilcd IF ISI_ESKI<>ISI THEN GOSUB ANALOG_YAZ ISI_ESKI=ISI ENDIF goto basla LCD_Init: LOW RST pause 20 HIGH RST LOW DC ' RESET LCD LcdData= $21: GOSUB LCD_ByteOut ' LCD EXTENDED COMMANDS LcdData= $d1: GOSUB LCD_ByteOut ' SET LCD Vop (CONTRAST) LcdData= $06: GOSUB LCD_ByteOut ' SET TEMP COEFFICENT LcdData= %00010101: GOSUB LCD_ByteOut ' LCD BIAS MODE LcdData= $20: GOSUB LCD_ByteOut ' LCD STANDARD COMMANDS LcdData= $0c: GOSUB LCD_ByteOut ' LCD IN NORMAL MODE RETURN LCD_ByteOut: SHIFTOUT DTA,CLK,1,[LcdData] RETURN LCD_StringOut: GOSUB KOLON_YAZ HIGH DC SHIFTOUT DTA,CLK,1,[Column(0),Column(1),Column(2),Column(3),Column(4),Column(5)] RETURN LCD_Clear: PosX=0:PosY=0:GOSUB LCD_GotoXY HIGH DC FOR Chr=1 TO 252 LcdData=0:GOSUB LCD_ByteOut LcdData=0:GOSUB LCD_ByteOut NEXT Chr RETURN LCD_GotoXY: LOW DC LcdData= %01000000 |PosY' : GOSUB LCD_ByteOut POSX=POSX*6 LcdData=%10000000 |PosX' : GOSUB LCD_ByteOut high dc RETURN KOLON_YAZ: SELECT CASE lcdData case "A"'65 $7F,$09,$09,$09,$7F,$00, COLUMN(0)=$7E COLUMN(1)=$11 COLUMN(2)=$11 COLUMN(3)=$11 COLUMN(4)=$7E COLUMN(5)=$00 case "B"'65 COLUMN(0)=$7F COLUMN(1)=$49 COLUMN(2)=$49 COLUMN(3)=$49 COLUMN(4)=$36 COLUMN(5)=$00 case "C" COLUMN(0)=$3E COLUMN(1)=$41 COLUMN(2)=$41 COLUMN(3)=$41 COLUMN(4)=$22 COLUMN(5)=$00 case 199'"Ç" COLUMN(0)=$1E COLUMN(1)=$21 COLUMN(2)=$61 COLUMN(3)=$21 COLUMN(4)=$12 COLUMN(5)=$00 case "D"'65 COLUMN(0)=$7F COLUMN(1)=$41 COLUMN(2)=$41 COLUMN(3)=$22 COLUMN(4)=$1C COLUMN(5)=$00 case "E"'65 COLUMN(0)=$7F COLUMN(1)=$49 COLUMN(2)=$49 COLUMN(3)=$49 COLUMN(4)=$41 COLUMN(5)=$00 case "F"'65 COLUMN(0)=$7F COLUMN(1)=$09 COLUMN(2)=$09 COLUMN(3)=$09 COLUMN(4)=$01 COLUMN(5)=$00 case "G"'65 COLUMN(0)=$3E COLUMN(1)=$41 COLUMN(2)=$49 COLUMN(3)=$49 COLUMN(4)=$7A COLUMN(5)=$00 case 208'"Ğ"'65 COLUMN(0)=$7E COLUMN(1)=$43 COLUMN(2)=$53 COLUMN(3)=$53 COLUMN(4)=$72 COLUMN(5)=$00 case "H"'65 COLUMN(0)=$7F COLUMN(1)=$08 COLUMN(2)=$08 COLUMN(3)=$08 COLUMN(4)=$7F COLUMN(5)=$00 case "I"'65 COLUMN(0)=$00 COLUMN(1)=$41 COLUMN(2)=$7F COLUMN(3)=$41 COLUMN(4)=$00 COLUMN(5)=$00 case 221'"İ" COLUMN(0)=$00 COLUMN(1)=$44 COLUMN(2)=$7D COLUMN(3)=$44 COLUMN(4)=$00 COLUMN(5)=$00 case "J"'65 COLUMN(0)=$20 COLUMN(1)=$40 COLUMN(2)=$41 COLUMN(3)=$3F COLUMN(4)=$01 COLUMN(5)=$00 case "K"'65 COLUMN(0)=$7F COLUMN(1)=$08 COLUMN(2)=$14 COLUMN(3)=$22 COLUMN(4)=$41 COLUMN(5)=$00 case "L"'65 COLUMN(0)=$7F COLUMN(1)=$40 COLUMN(2)=$40 COLUMN(3)=$40 COLUMN(4)=$40 COLUMN(5)=$00 case "M"'65 COLUMN(0)=$7F COLUMN(1)=$02 COLUMN(2)=$0C COLUMN(3)=$02 COLUMN(4)=$7F COLUMN(5)=$00 case "N"'65 COLUMN(0)=$7F COLUMN(1)=$04 COLUMN(2)=$08 COLUMN(3)=$10 COLUMN(4)=$7F COLUMN(5)=$00 case "O"'65 COLUMN(0)=$3E COLUMN(1)=$41 COLUMN(2)=$41 COLUMN(3)=$41 COLUMN(4)=$3E COLUMN(5)=$00 case 214'"Ö" $3C,$43,$42,$43,$3C,$00 COLUMN(0)=$3C COLUMN(1)=$43 COLUMN(2)=$42 COLUMN(3)=$43 COLUMN(4)=$3C COLUMN(5)=$00 case "P"'65 COLUMN(0)=$7F COLUMN(1)=$09 COLUMN(2)=$09 COLUMN(3)=$09 COLUMN(4)=$06 COLUMN(5)=$00 case "R"'65 COLUMN(0)=$7F COLUMN(1)=$09 COLUMN(2)=$19 COLUMN(3)=$29 COLUMN(4)=$46 COLUMN(5)=$00 case "S"'65 COLUMN(0)=$46 COLUMN(1)=$49 COLUMN(2)=$49 COLUMN(3)=$49 COLUMN(4)=$31 COLUMN(5)=$00 case 222'"Ş"$22,$65,$65,$25,$19,$00 COLUMN(0)=$22 COLUMN(1)=$65 COLUMN(2)=$65 COLUMN(3)=$25 COLUMN(4)=$19 COLUMN(5)=$00 case "T"'65 COLUMN(0)=$01 COLUMN(1)=$01 COLUMN(2)=$7F COLUMN(3)=$01 COLUMN(4)=$01 COLUMN(5)=$00 case "U"'65 COLUMN(0)=$3F COLUMN(1)=$40 COLUMN(2)=$40 COLUMN(3)=$40 COLUMN(4)=$3F COLUMN(5)=$00 case 220'"Ü" $3D,$40,$40,$40,$3D,$00 COLUMN(0)=$3D COLUMN(1)=$40 COLUMN(2)=$40 COLUMN(3)=$40 COLUMN(4)=$3D COLUMN(5)=$00 case "V"'65 COLUMN(0)=$1F COLUMN(1)=$20 COLUMN(2)=$40 COLUMN(3)=$20 COLUMN(4)=$1F COLUMN(5)=$00 case "W"'65 COLUMN(0)=$3F COLUMN(1)=$40 COLUMN(2)=$38 COLUMN(3)=$40 COLUMN(4)=$3F COLUMN(5)=$00 case "Y"' $07,$08,$70,$08,$07,$00 COLUMN(0)=$07 COLUMN(1)=$08 COLUMN(2)=$70 COLUMN(3)=$08 COLUMN(4)=$07 COLUMN(5)=$00 case "Z"'65 COLUMN(0)=$61 COLUMN(1)=$51 COLUMN(2)=$49 COLUMN(3)=$45 COLUMN(4)=$43 COLUMN(5)=$00 case "0"'65 COLUMN(0)=$3E COLUMN(1)=$51 COLUMN(2)=$49 COLUMN(3)=$45 COLUMN(4)=$3E COLUMN(5)=$00 case "1"'65 COLUMN(0)=$00 COLUMN(1)=$42 COLUMN(2)=$7F COLUMN(3)=$40 COLUMN(4)=$00 COLUMN(5)=$00 case "2"'65 COLUMN(0)=$42 COLUMN(1)=$61 COLUMN(2)=$51 COLUMN(3)=$49 COLUMN(4)=$46 COLUMN(5)=$00 case "3"'65 COLUMN(0)=$21 COLUMN(1)=$41 COLUMN(2)=$45 COLUMN(3)=$4B COLUMN(4)=$31 COLUMN(5)=$00 case "4"'65 COLUMN(0)=$18 COLUMN(1)=$14 COLUMN(2)=$12 COLUMN(3)=$7F COLUMN(4)=$10 COLUMN(5)=$00 case "5"'65 COLUMN(0)=$27 COLUMN(1)=$45 COLUMN(2)=$45 COLUMN(3)=$45 COLUMN(4)=$39 COLUMN(5)=$00 case "6"'65 COLUMN(0)=$3C COLUMN(1)=$4A COLUMN(2)=$49 COLUMN(3)=$49 COLUMN(4)=$30 COLUMN(5)=$00 case "7"'65 COLUMN(0)=$01 COLUMN(1)=$71 COLUMN(2)=$09 COLUMN(3)=$05 COLUMN(4)=$03 COLUMN(5)=$00 case "8"'65 COLUMN(0)=$36 COLUMN(1)=$49 COLUMN(2)=$49 COLUMN(3)=$49 COLUMN(4)=$36 COLUMN(5)=$00 case "9"'65 COLUMN(0)=$06 COLUMN(1)=$49 COLUMN(2)=$49 COLUMN(3)=$49 COLUMN(4)=$3E COLUMN(5)=$00 case " "'65 COLUMN(0)=$00 COLUMN(1)=$00 COLUMN(2)=$00 COLUMN(3)=$00 COLUMN(4)=$00 COLUMN(5)=$00 case "+"'65 COLUMN(0)=$08 COLUMN(1)=$08 COLUMN(2)=$3E COLUMN(3)=$08 COLUMN(4)=$08 COLUMN(5)=$00 case "-"'65 COLUMN(0)=$08 COLUMN(1)=$08 COLUMN(2)=$08 COLUMN(3)=$08 COLUMN(4)=$08 COLUMN(5)=$00 case "." COLUMN(0)=$00 COLUMN(1)=$00 COLUMN(2)=$60 COLUMN(3)=$60 COLUMN(4)=$00 COLUMN(5)=$00 case "*" COLUMN(0)=$14 COLUMN(1)=$08 COLUMN(2)=$3E COLUMN(3)=$08 COLUMN(4)=$14 COLUMN(5)=$00 case ":" COLUMN(0)=$00 COLUMN(1)=$36 COLUMN(2)=$36 COLUMN(3)=$00 COLUMN(4)=$00 COLUMN(5)=$00 end select return IMAJ1: PosX=0:PosY=0:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$01,$FD,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$85,$C5,$65,$35,$35,$35,$35,$35,$65,$C5,$85,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$05,$FD,$01,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=1:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$00,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$C0,$60,$30,$18,$0C,$06,$83,$81,$E0,$F0,$F8,$F8,$F8,$F0,$00,$80,$80,$81,$83,$86,$8C,$18,$30,$60,$C0,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=2:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$00,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$E0,$F0,$18,$0C,$06,$03,$01,$F0,$F8,$F0,$F8,$FC,$FF,$FF,$FF,$FF,$FF,$E1,$E1,$E1,$E0,$E0,$FF,$FF,$FF,$FF,$FF,$F7,$E7,$00,$00,$00,$01,$03,$06,$0C,$18,$F0,$E0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=3:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$00,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$0F,$18,$30,$60,$C0,$80,$0F,$3F,$BF,$9F,$FF,$FF,$8F,$8F,$0F,$07,$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$00,$80,$C0,$60,$30,$18,$0C,$07,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=4:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$00,$FF,$00,$FC,$38,$F0,$E0,$F0,$38,$FC,$00,$F8,$FC,$84,$FC,$F8,$00,$FC,$38,$E0,$C0,$E0,$38,$FC,$00,$FC,$24,$24,$24,$25,$03,$06,$0D,$1B,$33,$63,$C1,$83,$03,$00,$01,$01,$01,$00,$00,$00,$80,$C0,$60,$30,$18,$0D,$06,$03,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$00,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=5:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$80,$BF,$A0,$A3,$A0,$A0,$A3,$A0,$A0,$A3,$A0,$A3,$A0,$A0,$A0,$A3,$A0,$A3,$A0,$A0,$A3,$A0,$A0,$A3,$A0,$A3,$A2,$A2,$A2,$A2,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A1,$A3,$A6,$AC,$AC,$AC,$AC,$A6,$A3,$A1,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$BF,$80,$FF],lcddata gosub LCD_ByteOut next i return EKRAN1: PosX=0:PosY=0:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$FF,$FF,$07,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$77,$17,$17,$77,$47,$47,$07,$07,$07,$EF,$AF,$5F,$FF,$1F,$EF,$EF,$1F,$FF,$FF,$7F,$3F,$7F,$FF,$FF,$FF,$FF,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=1:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$9E,$DE,$1F,$FF,$3F,$DA,$DA,$3B,$FB,$FF,$00,$00,$00,$FF,$FF,$FF,$FF,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=2:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$F9,$7A,$FB,$FF,$7C,$7B,$EB,$EC,$EF,$FF,$00,$00,$00,$FF,$FF,$FF,$FF,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=3:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$6E,$E0,$EF,$F0,$EF,$EF,$F0,$BF,$BF,$FF,$00,$00,$00,$FF,$FF,$FF,$FF,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=4:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$05,$07,$00,$7F,$7F,$63,$63,$63,$77,$00,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$FF,$00,$00,$00,$FF,$FF,$FF,$FF,$FF],lcddata gosub LCD_ByteOut next i PosX=0:PosY=5:GOSUB LCD_GotoXY for i=0 to 84 LOOKUP i,[$FF,$FF,$FF,$C0,$DF,$D5,$D1,$C0,$DF,$D0,$D0,$C0,$DF,$D5,$D1,$C0,$DF,$CA,$D1,$C0,$C1,$DF,$C1,$C0,$DF,$C5,$DF,$C0,$DF,$D1,$DF,$C0,$C1,$DF,$C1,$C0,$DF,$D5,$D1,$C0,$DF,$CA,$D1,$C0,$DF,$C3,$CC,$DF,$C0,$DF,$D1,$DF,$C0,$FF,$83,$FD,$F3,$FD,$83,$FF,$83,$ED,$ED,$83,$FF,$83,$FD,$F3,$FD,$83,$FF,$81,$B5,$FF,$E0,$EE,$DF,$DF,$DF,$EE,$E0,$FF,$FF,$FF],lcddata gosub LCD_ByteOut next i return ZAMAN_OKU: high RTC_RST shiftout RTC_DTA, RTC_CLK, 0, [$BF] SHIFTIN RTC_DTA, RTC_CLK, 1, [SN, DAK, SAAT,GUN , AY, day, YIL, MEM] 'OKU low RTC_RST MEM=SN:GOSUB CEVIR:SN=SAYI MEM=DAK:GOSUB CEVIR:DAK=SAYI MEM=SAAT:GOSUB CEVIR:SAAT=SAYI MEM=GUN:GOSUB CEVIR:GUN=SAYI MEM=AY:GOSUB CEVIR:AY=SAYI MEM=YIL:GOSUB CEVIR:YIL=SAYI MEM=day:GOSUB CEVIR:day=SAYI return ZAMAN_YAZ: MEM=SN:GOSUB TERSCEVIR:SN=SAYI MEM=DAK:GOSUB TERSCEVIR:DAK=SAYI MEM=SAAT:GOSUB TERSCEVIR:SAAT=SAYI MEM=GUN:GOSUB TERSCEVIR:GUN=SAYI MEM=AY:GOSUB TERSCEVIR:AY=SAYI MEM=YIL:GOSUB TERSCEVIR:YIL=SAYI high RTC_RST SHIFTOUT RTC_DTA, RTC_CLK, 0, [$8E, 0] 'YAZMAK İÇİN HAZIRLA low RTC_RST:PAUSE 1 high RTC_RST SHIFTOUT RTC_DTA, RTC_CLK, 0, [$BE, SN, DAK, SAAT,GUN , AY, day, YIL, 0] 'YAZ low RTC_RST PAUSE 10 return CEVIR: ONLAR=MEM & %01110000 ONLAR=ONLAR>>4 BIRLER=MEM & %00001111 SAYI=ONLAR*10+BIRLER RETURN TERSCEVIR: ONLAR=MEM DIG 1 ONLAR=ONLAR<<4 BIRLER=MEM DIG 0 SAYI=ONLAR+BIRLER RETURN zaman_goster: SAATLCD: posx=1:posy=1:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=saat dig i gosub lcdyaz next i lcddata=":" gosub LCD_StringOut FOR i=1 TO 0 step-1 deger=dak dig i gosub lcdyaz next i lcddata=":" gosub LCD_StringOut FOR i=1 TO 0 step-1 deger=sn dig i gosub lcdyaz next i TARIHLCD: posx=1:posy=2:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=GUN dig i gosub lcdyaz next i lcddata="-" gosub LCD_StringOut FOR i=1 TO 0 step-1 deger=AY dig i gosub lcdyaz next i lcddata="-" gosub LCD_StringOut lcddata="2" gosub LCD_StringOut lcddata="0" gosub LCD_StringOut FOR i=1 TO 0 step-1 deger=YIL dig i gosub lcdyaz next i return isilcd: posx=2:posy=4:gosub lcd_gotoxy deger=sign gosub lcdyaz FOR i=2 TO 0 step-1 deger=ISI dig i gosub lcdyaz next i lcddata="." gosub LCD_StringOut deger=FLOAT dig 0 gosub lcdyaz RETURN ANALOG_YAZ: GOSUB EKRAN1 gosub zaman_goster BRANCH ISI,[SIFIR,BIR,IKI,UC,DORT,BES,ALTI,YEDI,SEKIZ,DOKUZ,ONU,ONBIR,ONIKI,ONUC,ONDORT,ONBES,ONALTI,ONYEDI,ONSEKIZ,ONDOKUZ,YIRMI,YIRMIBIR,YIRMIIKI,YIRMIUC,YIRMIDORT,YIRMIBES,YIRMIALTI,YIRMIYEDI,YIRMISEKIZ,YIRMIDOKUZ,OTUZ] SIFIR: GOSUB POZISYON LCDDATA=0 GOTO CIKIS BIR: GOSUB POZISYON LCDDATA=%10000000 GOTO CIKIS IKI: GOSUB POZISYON LCDDATA=%11000000 GOTO CIKIS UC: GOSUB POZISYON LCDDATA=%11100000 GOTO CIKIS DORT: GOSUB POZISYON LCDDATA=%11110000 GOTO CIKIS BES: GOSUB POZISYON LCDDATA=%11111000 GOTO CIKIS ALTI: GOSUB POZISYON LCDDATA=%11111100 GOTO CIKIS YEDI: GOSUB POZISYON LCDDATA=%11111110 GOTO CIKIS SEKIZ: GOSUB POZISYON LCDDATA=%11111111 GOTO CIKIS DOKUZ: GOSUB POZISYON LCDDATA=%10000000 GOTO CIKIS ONU: GOSUB POZISYON LCDDATA=%11000000 GOTO CIKIS ONBIR: GOSUB POZISYON LCDDATA=%11100000 GOTO CIKIS ONIKI: GOSUB POZISYON LCDDATA=%11110000 GOTO CIKIS ONUC: GOSUB POZISYON LCDDATA=%11111000 GOTO CIKIS ONDORT: GOSUB POZISYON LCDDATA=%11111100 GOTO CIKIS ONBES: GOSUB POZISYON LCDDATA=%11111110 GOTO CIKIS ONALTI: GOSUB POZISYON LCDDATA=%11111111 GOTO CIKIS ONYEDI: GOSUB POZISYON LCDDATA=%10000000 GOTO CIKIS ONSEKIZ: GOSUB POZISYON LCDDATA=%11000000 GOTO CIKIS ONDOKUZ: GOSUB POZISYON LCDDATA=%11100000 GOTO CIKIS YIRMI: GOSUB POZISYON LCDDATA=%11110000 YIRMIBIR: GOSUB POZISYON LCDDATA=%11111000 GOTO CIKIS YIRMIIKI: GOSUB POZISYON LCDDATA=%11111100 GOTO CIKIS YIRMIUC: GOSUB POZISYON LCDDATA=%11111110 GOTO CIKIS YIRMIDORT: GOSUB POZISYON LCDDATA=%11111111 GOTO CIKIS YIRMIBES: GOSUB POZISYON LCDDATA=%10000000 GOTO CIKIS YIRMIALTI: GOSUB POZISYON LCDDATA=%11000000 GOTO CIKIS YIRMIYEDI: GOSUB POZISYON LCDDATA=%11100000 GOTO CIKIS YIRMISEKIZ: GOSUB POZISYON LCDDATA=%11110000 GOTO CIKIS YIRMIDOKUZ: GOSUB POZISYON LCDDATA=%11111000 GOTO CIKIS OTUZ: GOSUB POZISYON LCDDATA=%11111100 CIKIS: GOSUB LCD_BYTEOUT RETURN SENSOROKU: OWOUT Comm_Pin, 1, [$CC, $44]' ISI değerini oku RETURN DEGER_AL: OWOUT Comm_Pin, 1, [$CC, $BE]' scratchpad memory oku OWIN Comm_Pin, 2, [HAM.Lowbyte, HAM.Highbyte]' İki byte oku ve okumayı bitir. GOSUB Hesapla RETURN Hesapla: ' Ham değerden Santigrat derece hesabı sign = 10 IF SIGN_BITI = NEGAT_ISI THEN sign = 11 temp=($ffff-ham+1)*625 ISI = DIV32 10 GOTO GEC endif TEMP = 625 * (HAM+1) ' ISI = DIV32 10 ' Div32 hassas derece hesabı için 32 bit bölme yapıyoruz. GEC: FLOAT = (ISI //1000)/100 ISI=ISI/1000 RETURN lcdyaz: LOOKUP DEGER,["0123456789+- "],LCDDATA gosub LCD_StringOut return POZISYON: LOW DC IF ISI<=8 THEN LCDDATA=%11001101 'X GOSUB LCD_ByteOut LcdData= %01000100 'Y GOSUB LCD_ByteOut GOTO CIK ELSE LCDDATA=%11001101 GOSUB LCD_ByteOut LcdData= %01000100 GOSUB LCD_ByteOut HIGH DC LCDDATA=%11111111 GOSUB LCD_ByteOut LOW DC ENDIF IF ISI<=16 THEN LCDDATA=%11001101 'X GOSUB LCD_ByteOut LcdData= %01000011 'Y GOSUB LCD_ByteOut GOTO CIK ELSE LCDDATA=%11001101 'X GOSUB LCD_ByteOut LcdData= %01000011 'Y GOSUB LCD_ByteOut HIGH DC LCDDATA=%11111111 GOSUB LCD_ByteOut LOW DC ENDIF IF ISI<=24 THEN LCDDATA=%11001101 'X GOSUB LCD_ByteOut LcdData= %01000010 'Y GOSUB LCD_ByteOut GOTO CIK ELSE LCDDATA=%11001101 'X GOSUB LCD_ByteOut LcdData= %01000010 'Y GOSUB LCD_ByteOut HIGH DC LCDDATA=%11111111 GOSUB LCD_ByteOut LOW DC ENDIF IF ISI<=30 THEN LCDDATA=%11001101 'X GOSUB LCD_ByteOut LcdData= %01000001 'Y GOSUB LCD_ByteOut ELSE LCDDATA=%11001101 'X GOSUB LCD_ByteOut LcdData= %01000001 'Y GOSUB LCD_ByteOut HIGH DC LCDDATA=%11111111 GOSUB LCD_ByteOut LOW DC ENDIF CIK: HIGH DC RETURN saatayar: LOW DC 'lcdye komut gondermek ıcın 0 yapılmalıdır LcdData= %00001101:GOSUB LCD_ByteOut PAUSE 400 LcdData= %00001100:GOSUB LCD_ByteOut HIGH DC IF MENU=0 THEN saatayar saatayar1: GOSUB SAAT_YAZ if menu=0 then dakikaayar if yukari=0 then saatiarttir if ASAGI=0 then saatiazalt goto saatayar1 saatiarttir: IF YUKARI=0 THEN saat=saat+1 IF SAAT=24 THEN SAAT=0 goto saatayar1 saatiazalt: IF ASAGI=0 THEN saat=saat-1 IF SAAT=255 THEN SAAT=23 goto saatayar1 '-----------------------------DAKİKA AYAR-------------------------------------- dakikaayar: if MENU=0 then dakikaayar GOSUB ZAMAN_YAZ GOSUB ZAMAN_OKU GOSUB ZAMAN_GOSTER dakikaayar1: GOSUB DAKIKA_YAZ if MENU=0 then GUN_AYAR if YUKARI=0 then dakarttir if ASAGI=0 then dakazalt dakarttir: IF YUKARI=0 THEN dak=dak+1 IF DAK=60 THEN DAK=0 goto dakikaayar1 dakazalt: IF ASAGI=0 THEN dak=dak-1 IF DAK=255 THEN DAK=59 goto dakikaayar1 GUN_AYAR: if menu=0 then GUN_AYAR GOSUB ZAMAN_YAZ GOSUB ZAMAN_OKU GOSUB ZAMAN_GOSTER GUN_AYAR1: GOSUB GUN_YAZ if menu=0 then ay_a if yukari=0 then GUN_ARTTIR if ASAGI=0 then GUN_AZALT GUN_ARTTIR: IF YUKARI=0 THEN GUN=GUN+1 IF GUN=32 THEN GUN=1 goto GUN_AYAR1 GUN_AZALT: IF ASAGI=0 THEN GUN=GUN-1 IF GUN=255 OR GUN=0 THEN GUN=31 goto GUN_AYAR1 '---------------------------------AY AYAR-------------------------------------- AY_A: if MENU=0 then AY_A GOSUB ZAMAN_YAZ GOSUB ZAMAN_OKU GOSUB ZAMAN_GOSTER AY_A1: GOSUB AY_YAZ if MENU=0 then YIL_A if YUKARI=0 then AY_ART if ASAGI=0 then AY_AZAL AY_ART: IF YUKARI=0 THEN AY=AY+1 IF AY=13 THEN AY=1 goto AY_A1 AY_AZAL: IF ASAGI=0 THEN AY=AY-1 IF AY=255 OR AY=0 THEN AY=12 goto AY_A1 '--------------------------------YIL AYAR-------------------------------------- YIL_A: IF MENU=0 THEN YIL_A GOSUB ZAMAN_YAZ GOSUB ZAMAN_OKU GOSUB ZAMAN_GOSTER YIL_A1: GOSUB YIL_YAZ if MENU=0 then ZAMAN_AYARLANDI if YUKARI=0 then YIL_ART if ASAGI=0 then YIL_AZAL YIL_ART: IF YUKARI=0 THEN YIL=YIL+1 IF YIL=100 THEN AY=00 goto YIL_A1 YIL_AZAL: IF ASAGI=0 THEN YIL=YIL-1 IF YIL=255 THEN YIL=99 goto YIL_A1 ZAMAN_AYARLANDI: GOSUB ZAMAN_YAZ GOSUB ZAMAN_OKU GOSUB ZAMAN_GOSTER LOW DC 'lcdye komut gondermek ıcın 0 yapılmalıdır LcdData= %00001101:GOSUB LCD_ByteOut PAUSE 400 LcdData= %00001100:GOSUB LCD_ByteOut HIGH DC GOTO BASLA1 SAAT_YAZ: posx=1:posy=1:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=saat dig i gosub lcdyaz next i pause 150 posx=1:posy=1:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=12 gosub lcdyaz next i pause 200 return DAKIKA_YAZ: posx=4:posy=1:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=DAK dig i gosub lcdyaz next i pause 150 posx=4:posy=1:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=12 gosub lcdyaz next i pause 200 return GUN_YAZ: posx=1:posy=2:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=GUN dig i gosub lcdyaz next i pause 150 posx=1:posy=2:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=12 gosub lcdyaz next i pause 200 return AY_YAZ: posx=4:posy=2:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=AY dig i gosub lcdyaz next i pause 150 posx=4:posy=2:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=12 gosub lcdyaz next i pause 200 return YIL_YAZ: posx=9:posy=2:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=YIL dig i gosub lcdyaz next i pause 150 posx=9:posy=2:gosub lcd_gotoxy FOR i=1 TO 0 step-1 deger=12 gosub lcdyaz next i pause 200 return END
Nokia3310 Proteus Model Dosyaları Örnek Simülasyon;
Şifre-Pass: 320volt.com
Yayım tarihi: 2008/06/19 Etiketler: 3310 library, ccs nokia library, lcd devreleri, microchip pic projeleri, PIC16F877 örnekleri, picbasic nokia library, proteus, simulasyon
Paylaşımınız için içtenlikle teşekkür ederim.
Ancak “3310_lcd2basic.zip”içeriğini Proteus 7.1 SP2 de çalıştıramadım.
(Model ve library proteus dosyalarını proteus içine attığım halde)
Selamlar.
Merhaba,
Bu 3310 kütüphanesinde bir sorunla karşılaştım. Düşey moda geçiremiyorum. 00100010 komutu gönderip sonra yazmayı deniyorum, fakat yan yana yazmaya devam ediyor. Bu konuda bilgisi olanların yardımını bekliyorum.
Teşekkür ederim 🙂
merhaba pbp hangi versiyon hocam??
hi , thanks a lot for lib.. , it works with proteus 7.5 sp3, copy files in model and library folder in labcenter electronics folder , regard