/*****************************************************
This program was produced by the
CodeWizardAVR V2.03.4 Standard
Automatic Program Generator
© Copyright 1998-2008 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project : 
Version : 
Date    : 17.12.2009
Author  : 
Company : 
Comments: 


Chip type           : AT90USB162
Program type        : Application
Clock frequency     : 16,000000 MHz
Memory model        : Small
External RAM size   : 0
Data Stack size     : 128
*****************************************************/

#include <90usb162.h>  
\\#include "font5x7.c"
#include <delay.h>
#include <stdio.h>

#define LCD_DATA_LINE PORTC.7
#define LCD_CLOCK_LINE PORTB.7
#define LCD_D_C_LINE PORTC.6
#define LCD_SCE_LINE PORTC.5
#define LCD_RES_LINE PORTC.4
#define LCD_DATA_LINE_ON DDRC.7
#define LCD_CLOCK_LINE_ON DDRB.7
#define LCD_D_C_LINE_ON DDRC.6
#define LCD_SCE_LINE_ON DDRC.5
#define LCD_RES_LINE_ON DDRC.4


#define LCD_X_RES               84	//разрешение экрана    
#define LCD_Y_RES               48   
#define LCD_CACHE_SIZE          LCD_X_RES*LCD_Y_RES/8 
char ctr;


unsigned char  LcdCache [LCD_CACHE_SIZE];	//Cache buffer in SRAM 84*48 bits or 504 bytes
unsigned int   LcdCacheIdx;              	//Cache index

//ASCII
const char table[0x0500] = 
{
0x00, 0x00, 0x00, 0x00, 0x00,// 00
0x00, 0x00, 0x5F, 0x00, 0x00,// 01
0x00, 0x07, 0x00, 0x07, 0x00,// 02
0x14, 0x7F, 0x14, 0x7F, 0x14,// 03 
0x24, 0x2A, 0x7F, 0x2A, 0x12,// 04
0x23, 0x13, 0x08, 0x64, 0x62,// 05
0x36, 0x49, 0x55, 0x22, 0x50,// 06
0x00, 0x05, 0x03, 0x00, 0x00,// 07
0x00, 0x1C, 0x22, 0x41, 0x00,// 08
0x00, 0x41, 0x22, 0x1C, 0x00,// 09 
0x14, 0x08, 0x3E, 0x08, 0x14,// 0A
0x08, 0x08, 0x3E, 0x08, 0x08,// 0B 
0x00, 0x50, 0x30, 0x00, 0x00,// 0C
0x08, 0x08, 0x08, 0x08, 0x08,// 0D 
0x00, 0x60, 0x60, 0x00, 0x00,// 0E
0x20, 0x10, 0x08, 0x04, 0x02,// 0F 
0x00, 0x00, 0x00, 0x00, 0x00,// 10 
0x00, 0x00, 0x5F, 0x00, 0x00,// 11 
0x00, 0x07, 0x00, 0x07, 0x00,// 12 
0x14, 0x7F, 0x14, 0x7F, 0x14,// 13 
0x24, 0x2A, 0x7F, 0x2A, 0x12,// 14 
0x23, 0x13, 0x08, 0x64, 0x62,// 15 
0x36, 0x49, 0x55, 0x22, 0x50,// 16
0x00, 0x05, 0x03, 0x00, 0x00,// 17 
0x00, 0x1C, 0x22, 0x41, 0x00,// 18 
0x00, 0x41, 0x22, 0x1C, 0x00,// 19 
0x14, 0x08, 0x3E, 0x08, 0x14,// 1A 
0x08, 0x08, 0x3E, 0x08, 0x08,// 1B
0x00, 0x50, 0x30, 0x00, 0x00,// 1C 
0x08, 0x08, 0x08, 0x08, 0x08,// 1D 
0x00, 0x60, 0x60, 0x00, 0x00,// 1E 
0x20, 0x10, 0x08, 0x04, 0x02,// 1F
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 
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 Yen Currency Sign 
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 Right Arrow -> 
0x78, 0x46, 0x41, 0x46, 0x78,// 7f Left Arrow <- 
0x00, 0x00, 0x00, 0x00, 0x00,// 80
0x00, 0x00, 0x5F, 0x00, 0x00,// 81
0x00, 0x07, 0x00, 0x07, 0x00,// 82
0x14, 0x7F, 0x14, 0x7F, 0x14,// 83
0x24, 0x2A, 0x7F, 0x2A, 0x12,// 84
0x23, 0x13, 0x08, 0x64, 0x62,// 85
0x36, 0x49, 0x55, 0x22, 0x50,// 86
0x00, 0x05, 0x03, 0x00, 0x00,// 87
0x00, 0x1C, 0x22, 0x41, 0x00,// 88
0x00, 0x41, 0x22, 0x1C, 0x00,// 89
0x14, 0x08, 0x3E, 0x08, 0x14,// 8A
0x08, 0x08, 0x3E, 0x08, 0x08,// 8B
0x00, 0x50, 0x30, 0x00, 0x00,// 8C
0x08, 0x08, 0x08, 0x08, 0x08,// 8D
0x00, 0x60, 0x60, 0x00, 0x00,// 8E
0x20, 0x10, 0x08, 0x04, 0x02,// 8F
0x00, 0x00, 0x00, 0x00, 0x00,// 90
0x00, 0x00, 0x5F, 0x00, 0x00,// 91
0x00, 0x07, 0x00, 0x07, 0x00,// 92
0x14, 0x7F, 0x14, 0x7F, 0x14,// 93
0x24, 0x2A, 0x7F, 0x2A, 0x12,// 94
0x23, 0x13, 0x08, 0x64, 0x62,// 95
0x36, 0x49, 0x55, 0x22, 0x50,// 96
0x00, 0x05, 0x03, 0x00, 0x00,// 97
0x00, 0x1C, 0x22, 0x41, 0x00,// 98 
0x00, 0x41, 0x22, 0x1C, 0x00,// 99
0x14, 0x08, 0x3E, 0x08, 0x14,// 9A
0x08, 0x08, 0x3E, 0x08, 0x08,// 9B
0x00, 0x50, 0x30, 0x00, 0x00,// 9C
0x08, 0x08, 0x08, 0x08, 0x08,// 9D
0x00, 0x60, 0x60, 0x00, 0x00,// 9E
0x20, 0x10, 0x08, 0x04, 0x02,// 9F
0x00, 0x00, 0x00, 0x00, 0x00,// A0
0x00, 0x00, 0x5F, 0x00, 0x00,// A1
0x00, 0x07, 0x00, 0x07, 0x00,// A2
0x14, 0x7F, 0x14, 0x7F, 0x14,// A3
0x24, 0x2A, 0x7F, 0x2A, 0x12,// A4
0x23, 0x13, 0x08, 0x64, 0x62,// A5
0x36, 0x49, 0x55, 0x22, 0x50,// A6
0x00, 0x05, 0x03, 0x00, 0x00,// A7
0x00, 0x1C, 0x22, 0x41, 0x00,// A8
0x00, 0x41, 0x22, 0x1C, 0x00,// A9
0x14, 0x08, 0x3E, 0x08, 0x14,// AA
0x08, 0x08, 0x3E, 0x08, 0x08,// AB
0x00, 0x50, 0x30, 0x00, 0x00,// AC
0x08, 0x08, 0x08, 0x08, 0x08,// AD
0x00, 0x60, 0x60, 0x00, 0x00,// AE
0x20, 0x10, 0x08, 0x04, 0x02,// AF
0x3E, 0x51, 0x49, 0x45, 0x3E,// B0
0x00, 0x42, 0x7F, 0x40, 0x00,// B1
0x42, 0x61, 0x51, 0x49, 0x46,// B2
0x21, 0x41, 0x45, 0x4B, 0x31,// B3
0x18, 0x14, 0x12, 0x7F, 0x10,// B4
0x27, 0x45, 0x45, 0x45, 0x39,// B5
0x3C, 0x4A, 0x49, 0x49, 0x30,// B6
0x01, 0x71, 0x09, 0x05, 0x03,// B7
0x36, 0x49, 0x49, 0x49, 0x36,// B8
0x06, 0x49, 0x49, 0x29, 0x1E,// B9
0x00, 0x36, 0x36, 0x00, 0x00,// BA
0x00, 0x56, 0x36, 0x00, 0x00,// BB
0x08, 0x14, 0x22, 0x41, 0x00,// BC
0x14, 0x14, 0x14, 0x14, 0x14,// BD
0x00, 0x41, 0x22, 0x14, 0x08,// BE
0x02, 0x01, 0x51, 0x09, 0x06,// BF
0x7E, 0x11, 0x11, 0x11, 0x7E,// C0 ?
0x7F, 0x49, 0x49, 0x49, 0x31,// C1 ?
0x7F, 0x49, 0x49, 0x49, 0x36,// C2 ?
0x7F, 0x01, 0x01, 0x01, 0x03,// C3 ?
0x70, 0x29, 0x27, 0x21, 0x7F,// C4 ?
0x7F, 0x49, 0x49, 0x49, 0x41,// C5 ?
0x77, 0x08, 0x7F, 0x08, 0x77,// C6 ?
0x41, 0x41, 0x41, 0x49, 0x76,// C7 ?
0x7F, 0x10, 0x08, 0x04, 0x7F,// C8 ?
0x7F, 0x10, 0x09, 0x04, 0x7F,// C9 ?
0x7F, 0x08, 0x14, 0x22, 0x41,// CA ?
0x20, 0x41, 0x3F, 0x01, 0x7F,// CB ?
0x7F, 0x02, 0x0C, 0x02, 0x7F,// CC ?
0x7F, 0x08, 0x08, 0x08, 0x7F,// CD ?
0x3E, 0x41, 0x41, 0x41, 0x3E,// CE ?
0x7F, 0x01, 0x01, 0x01, 0x7F,// CF ?
0x7F, 0x09, 0x09, 0x09, 0x06,// D0 ?
0x3E, 0x41, 0x41, 0x41, 0x22,// D1 ?
0x01, 0x01, 0x7F, 0x01, 0x01,// D2 ?
0x47, 0x28, 0x10, 0x08, 0x07,// D3 ?
0x1E, 0x21, 0x7F, 0x21, 0x1E,// D4 ?
0x63, 0x14, 0x08, 0x14, 0x63,// D5 ?
0x3F, 0x20, 0x20, 0x20, 0x5F,// D6 ?
0x07, 0x08, 0x08, 0x08, 0x7F,// D7 ?
0x7F, 0x40, 0x7F, 0x40, 0x7F,// D8 ?
0x3F, 0x20, 0x3F, 0x20, 0x5F,// D9 ?
0x01, 0x7F, 0x48, 0x48, 0x30,// DA ?
0x7F, 0x48, 0x30, 0x00, 0x7F,// DB ?
0x00, 0x7F, 0x48, 0x48, 0x30,// DC ?
0x41, 0x41, 0x41, 0x49, 0x3E,// DD ?
0x7F, 0x08, 0x3E, 0x41, 0x3E,// DE ?
0x46, 0x29, 0x19, 0x09, 0x7F,// DF ?
0x20, 0x54, 0x54, 0x54, 0x78,// E0 ?
0x3C, 0x4A, 0x4A, 0x49, 0x31,// E1 ?
0x7C, 0x54, 0x54, 0x28, 0x00,// E2 ?
0x7C, 0x04, 0x04, 0x04, 0x0C,// E3 ?
0x72, 0x2A, 0x26, 0x22, 0x7E,// E4 ?
0x38, 0x54, 0x54, 0x54, 0x18,// E5 ?
0x6C, 0x10, 0x7C, 0x10, 0x6C,// E6 ?
0x44, 0x44, 0x54, 0x54, 0x38,// E7 ?
0x7C, 0x20, 0x10, 0x08, 0x7C,// E8 ?
0x7C, 0x21, 0x12, 0x09, 0x7C,// E9 ?
0x7C, 0x10, 0x28, 0x44, 0x00,// EA ?
0x20, 0x44, 0x3C, 0x04, 0x7C,// EB ?
0x7C, 0x08, 0x10, 0x08, 0x7C,// EC ?
0x7C, 0x10, 0x10, 0x10, 0x7C,// ED ?
0x38, 0x44, 0x44, 0x44, 0x38,// EE ?
0x7C, 0x04, 0x04, 0x04, 0x7C,// EF ?
0x7C, 0x14, 0x14, 0x14, 0x08,// F0 ?
0x38, 0x44, 0x44, 0x44, 0x20,// F1 ?
0x04, 0x04, 0x7C, 0x04, 0x04,// F2 ?
0x44, 0x28, 0x10, 0x08, 0x04,// F3 ?
0x08, 0x14, 0x7E, 0x14, 0x08,// F4 ?
0x44, 0x28, 0x10, 0x28, 0x44,// F5 ?
0x3C, 0x40, 0x40, 0x7C, 0x40,// F6 ?
0x0C, 0x10, 0x10, 0x10, 0x7C,// F7 ?
0x7C, 0x40, 0x7C, 0x40, 0x7C,// F8 ?
0x3C, 0x20, 0x3C, 0x20, 0x7C,// F9 ?
0x04, 0x7C, 0x50, 0x50, 0x20,// FA ?
0x7C, 0x50, 0x20, 0x00, 0x7C,// FB ?
0x00, 0x7C, 0x50, 0x50, 0x20,// FC ?
0x28, 0x44, 0x44, 0x54, 0x38,// FD ?
0x7C, 0x10, 0x38, 0x44, 0x38,// FE ?
0x48, 0x54, 0x34, 0x14, 0x7C }; // FF



void led_blk(void)
{   PORTC.2 = 1;
    delay_ms(50);
    PORTC.2 = 0;
    delay_ms(50);  
}; 
void data_for_lcd(char data_to_lcd)          
               
{   ctr = 8;
     while(ctr)  
    {
    LCD_DATA_LINE = data_to_lcd & 0b10000000;
    data_to_lcd <<= 1;
    ctr --;
    LCD_CLOCK_LINE = 1;
    LCD_CLOCK_LINE = 0;
    };
};
void writecomm(char data_to_lcd)
{   LCD_D_C_LINE = 0;
    LCD_SCE_LINE = 0;                         
    data_for_lcd(data_to_lcd);
    LCD_SCE_LINE = 1;
};
void writedata(char data_to_lcd)
{   LCD_D_C_LINE = 1;
    LCD_SCE_LINE = 0;                         
    data_for_lcd(data_to_lcd);
    LCD_SCE_LINE = 1;
}; 
void cursorxy(char x, char y)
{
	writecomm(0x40|(y&0x07));	// Y axis
	writecomm(0x80|(x&0x7f));	// X axis
} ;
void clearram(void)
{
	int ddram;
	cursorxy(0,0);											// Cursor Home.
	for (ddram=864;ddram>0;ddram--)	{writedata(0x00);}		// 6*84 = 504 DDRAM addresses.
};
void lcd_init(void)
{   LCD_RES_LINE = 1;  
    LCD_SCE_LINE = 1;
    LCD_RES_LINE =0;
    delay_ms(100);
    LCD_RES_LINE = 1; 
    
    writecomm(0x21);
    writecomm(0xC8);
    writecomm(0x13);
    writecomm(0x20);
    writecomm(0x09);
    clearram();
    writecomm(0x08);
    writecomm(0x0C);
    cursorxy(0,0);
};  

void LcdChr (int ch)	//Displays a character at current cursor location and increment cursor location
 	{
     	unsigned char i;
     	
     	for ( i = 0; i < 5; i++ ) LcdCache[LcdCacheIdx++] = table[(ch*5+i)];	//выбеляем байт-столбик из символа и грузим в массив - 5 раз
     	LcdCache[LcdCacheIdx++] = 0x00;	//добавляем пробел между символами
 	                       
};

// Declare your global variables here
   
void main(void)
{
// Declare your local variables here

// Crystal Oscillator division factor: 1
#pragma optsize-
CLKPR=0x80;
CLKPR=0x00;
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

// Input/Output Ports initialization
// Port B initialization
// Func7=Out Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In 
// State7=0 State6=T State5=T State4=T State3=T State2=T State1=T State0=T 
PORTB=0x00;
DDRB=0x80;

// Port C initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=In Func2=In Func1=In Func0=In 
// State7=0 State6=0 State5=0 State4=0 State3=T State2=T State1=T State0=T 
PORTC=0x00;
DDRC=0xF4;

// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In 
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T 
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0A output: Disconnected
// OC0B output: Disconnected
TCCR0A=0x00;
TCCR0B=0x00;
TCNT0=0x00;
OCR0A=0x00;
OCR0B=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// OC1C output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
// Compare C Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
OCR1CH=0x00;
OCR1CL=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
// INT3: Off
// INT4: Off
// INT5: Off
// INT6: Off
// INT7: Off
EICRA=0x00;
EICRB=0x00;
EIMSK=0x00;
// PCINT0 interrupt: Off
// PCINT1 interrupt: Off
// PCINT2 interrupt: Off
// PCINT3 interrupt: Off
// PCINT4 interrupt: Off
// PCINT5 interrupt: Off
// PCINT6 interrupt: Off
// PCINT7 interrupt: Off
PCMSK0=0x00;
// PCINT8 interrupt: Off
// PCINT9 interrupt: Off
// PCINT10 interrupt: Off
// PCINT11 interrupt: Off
// PCINT12 interrupt: Off
PCMSK1=0x00;
PCICR=0x00;

// Timer/Counter 0 Interrupt(s) initialization
TIMSK0=0x00;
// Timer/Counter 1 Interrupt(s) initialization
TIMSK1=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;


lcd_init();
led_blk();
\\cursorxy(1, 1);
\\writedata(0x01);
cursorxy(2, 4);
writedata(0x46);
writedata(0x49);
writedata(0x49);
writedata(0x49);
writedata(0x31);
writedata(0x00);
writedata(0x00);
writedata(0x00);
writedata(0x00);
writedata(0x00);
writedata(0x7F);
writedata(0x09);
writedata(0x19);
writedata(0x29);
writedata(0x46);
  
LcdChr(3);    
}
