سلام من پروژه کارشناسیم ساخت اسیلوسکوپ این برنامه رو نوشتم ولی کد ویژن error میده میشه یه لطفی کنید یه نگاه بهش بندازید
/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.3 Standard
Automatic Program Generator
© Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
Project :
Version :
Date : 29/09/2014
Author : user
Company :
Comments:
Chip type : ATxmega32
Program type : Application
AVR Core Clock frequency: 2/000000 MHz
Memory model : Small
Data Stack size : 1024
*****************************************************/
// I/O Registers definitions
#include <io.h>
#include <stdio.h>
#include <mega32.h>
#include <glcd.h>
#include <delay.h>
#define s1 PORTB.0
#define s2 PORTB.1
#define s4 PORTB.3
#define s5 PORTB.4
#define s6 PORTB.5
#define s7 PORTB.6
#define s8 PORTB.7
#define zo PIND.7
#define zi PIND.6
#define zr PIND.5
// Declare your global variables here
unsigned char f,top2,b,c,ch,voptop,in[100];
unsigned int top1,a,aa,zn=1;
bit n=1;
unsigned char a11,a1,a2=0,d,soton=27,i,j;
// External Interrupt 2 service routine
interrupt[EXT_INT2] void ext_int2_isr(void)
{
if(s8==0&&ch==0){ch=1;s1=0;s2=1;s7=0;s5=1;s4=1;
delay_us(10);s7=1;s6=1;goto end;}
if(zo==0){
if(zn<128){zn*=2;delay_us(10);}
if(zn>=128){zn+=50;if(zn>=300){zn=300;}delay_us(10);}
goto tanzim;}
if(zi==0){
if(zn>128){if(zn==300){zn=328;}zn-=50;delay_us(10);}
if(zn<=128){if(zn==1){zn=1;delay_us(10);goto tanzim;}
zn/=2;delay_us(10);}
goto tanzim;}
if(zr==0){zn=1;goto tanzim;}
delay_us(50);
tanzim:
if(s8!=0||ch==1){
s7=0;s6=0;s2=0;s1=0;s5=1;s4=1;delay_us(50);
voptop=PINA;delay_us(50);
s1=1;s2=1;
s6=0;s7=0;s4=1;s5=1;delay_us(4);s4=0;delay_us(4);
s4=1;s7=1;
for(c=0;c<=100;c++){
s4=1;delay_us(5);s4=0;delay_us(5);}
s4=1;b=0;aa=0;
for(b=0;b<100;b++){
if(b==50){s6=0;s7=0;s4=1;s5=1;
delay_us(4);s4=0;delay_us(4);s4=1;s7=1;}
for(a=0;a<=zn;a++){
s4=1;delay_us(2);s4=0;delay_us(2);}
s5=0;delay_us(2);in
=PINA;delay_us(2);s5=1;
delay_us(2);s4=1;delay_us(2);}
}
end:
}
flash char name[]={
0xFC,0x06,0x03,0x01,0x01,0x81,0xC1,0x41,0x41,0x41,
0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,
0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,
0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,
0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41,
0x41,0xC1,0x81,0x01,0x01,0x01,0x01,0xE1,0x11,0x11,
0x21,0xFD,0x01,0xE1,0x51,0x51,0x51,0x61,0x01,0x21,
0x51,0x51,0x91,0x21,0x01,0xF5,0x01,0xE1,0x11,0x11,
0x21,0xF1,0x01,0xF1,0x21,0x11,0x11,0xE1,0x01,0xE1,
0x51,0x51,0x51,0x61,0x01,0xF1,0x21,0x11,0x01,0x01,
0x11,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x03,0x06,0xFC,
0xFF,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,
0x84,0x00,0x00,0x00,0x80,0x40,0xA4,0x10,0x08,0x08,
0x08,0x10,0x20,0xC4,0x80,0x00,0x00,0x00,0xFF,0x00,
0x00,0x00,0x00,0x84,0x00,0x00,0x00,0x00,0x00,0x00,
0x84,0x00,0x00,0x00,0x00,0x00,0x00,0x84,0x00,0x00,
0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x01,0x02,0x02,
0x01,0x03,0x00,0x01,0x02,0x02,0x02,0x01,0x00,0x01,
0x02,0x02,0x02,0x01,0x00,0x03,0x00,0x09,0x0A,0x0A,
0x09,0x07,0xC0,0x43,0x40,0x40,0x40,0x83,0x00,0x01,
0x02,0x02,0x02,0x01,0x00,0x03,0x00,0x00,0x00,0x00,
0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,
0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
0xFF,0x00,0x00,0x00,0x00,0xFF,0x08,0x08,0x08,0x08,
0x88,0x0C,0x0A,0x09,0x08,0x08,0x88,0x08,0x08,0x08,
0x08,0x08,0x08,0x88,0x08,0x09,0x0A,0x04,0xEB,0x10,
0x28,0x48,0x88,0x88,0x08,0x08,0x08,0x08,0x08,0x08,
0x88,0x08,0x88,0x48,0x28,0x18,0x08,0x88,0x08,0x08,
0x08,0x08,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x3F,0x04,0x04,0x04,0x0C,0x13,0x20,0x00,
0x20,0x00,0x3F,0x02,0x01,0x00,0x1A,0x25,0x25,0x15,
0x3E,0x00,0x3F,0x02,0x01,0x01,0x3E,0x80,0x7F,0x00,
0x3F,0x12,0x21,0x21,0x1E,0x00,0x1A,0x25,0x25,0x15,
0x3E,0x00,0x3F,0x02,0x01,0x00,0x00,0xFF,
0xFF,0x00,0x00,0x00,0x00,0x7F,0xC0,0x80,0x80,0x80,
0x90,0x80,0x80,0x80,0x80,0x80,0x90,0x80,0x80,0x80,
0x80,0x80,0x80,0x90,0x80,0x80,0x80,0x80,0xFF,0x80,
0x80,0x80,0x80,0x91,0x82,0x84,0x88,0x88,0x88,0x84,
0x92,0x81,0x80,0x80,0x80,0x80,0x80,0x90,0x80,0x80,
0x80,0xC0,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x80,0x60,0x5C,0x42,0x5C,0x60,0x80,0x00,
0x00,0x00,0xF8,0x10,0x08,0x08,0xF0,0x00,0xD0,0x28,
0x28,0xA8,0xF0,0x00,0xF0,0x28,0x28,0x28,0xB0,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
0xFF,0x00,0x00,0x00,0xC0,0xC0,0x40,0x40,0xC0,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x40,0x40,0x00,0x00,0x00,0x00,
0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0xF9,0x40,0x40,0x40,0x40,0xF8,0x01,0x00,
0x01,0x00,0x41,0xA0,0xA0,0xA0,0xC1,0x00,0xC0,0x21,
0x21,0x40,0xF9,0x00,0xC0,0xA1,0xA1,0xA1,0xC0,0x00,
0xF9,0x00,0xE8,0x01,0x00,0x00,0x01,0x00,0x01,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
0xFF,0x00,0x00,0x00,0x3F,0x3F,0x20,0x20,0x30,0x1F,
0x0F,0x00,0x00,0x00,0x00,0x00,0x3F,0x3F,0x00,0x00,
0x00,0x00,0x00,0x9E,0xBF,0xA1,0xB3,0xFF,0x7F,0x00,
0x00,0x00,0x00,0x00,0x3F,0x3F,0x00,0x00,0x00,0x00,
0x01,0x1F,0x3F,0x21,0x00,0x00,0x00,0x00,0x00,0x1A,
0x3F,0x25,0x35,0x3F,0x3E,0x00,0x00,0x00,0x00,0x00,
0x3F,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0xE7,0xC0,0x00,0x00,0x00,0xC7,0xE0,0x00,
0x04,0x00,0x03,0x84,0x84,0x82,0x07,0x80,0x83,0x04,
0x04,0x02,0x87,0x80,0x83,0x04,0x04,0x84,0x02,0x80,
0x07,0x00,0x87,0x80,0x00,0xE0,0x00,0xA0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
0xFF,0x00,0x00,0x00,0xE0,0xF0,0x10,0x10,0xF0,0xE0,
0x00,0x20,0x70,0x50,0xD0,0xB0,0x20,0x00,0xE0,0xF0,
0x10,0x10,0x30,0x20,0x00,0xF4,0xF4,0x00,0xFC,0xFC,
0x00,0xFC,0xFC,0x00,0xE0,0xF0,0x10,0x10,0xF0,0xE0,
0x00,0x20,0x70,0x50,0xD0,0xB0,0x20,0x00,0xE0,0xF0,
0x10,0x10,0x30,0x20,0x00,0xE0,0xF0,0x10,0x10,0xF0,
0xE0,0x00,0xF0,0xF0,0x30,0x10,0xF0,0xE0,0x00,0xE0,
0xF0,0x50,0x50,0x70,0x60,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x1F,0x00,0x07,0x18,0x07,0x00,0x1F,0x00,
0x00,0x10,0x00,0x1F,0x00,0x00,0x1F,0x00,0x00,0x1F,
0x00,0x0D,0x12,0x12,0x0A,0x1F,0x00,0x1F,0x01,0x00,
0x00,0x0F,0x10,0x10,0x09,0x1F,0x00,0x1F,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
0x3F,0x60,0xC0,0x80,0x81,0x83,0x82,0x82,0x83,0x81,
0x80,0x81,0x83,0x82,0x82,0x83,0x81,0x80,0x81,0x83,
0x82,0x82,0x83,0x81,0x80,0x83,0x83,0x80,0x83,0x83,
0x80,0x83,0x83,0x80,0x81,0x83,0x82,0x82,0x83,0x81,
0x80,0x81,0x83,0x82,0x82,0x83,0x81,0x80,0x81,0x83,
0x82,0x82,0x83,0x81,0x80,0x81,0x83,0x82,0x82,0x83,
0x81,0x80,0x8F,0x8F,0x83,0x82,0x83,0x81,0x80,0x81,
0x83,0x82,0x82,0x83,0x81,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0xC0,0x60,0x3F,
};
flash char oscop[1024]={
0x1C,0x20,0x40,0x20,0x1C,0x00,0x60,0x10,0x0C,0x00,
0x7C,0x14,0x14,0x08,0x00,0x00,0x48,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x03,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x81,0xFE,0x81,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x03,0xFE,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,
0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0x00,0x00,0xFF,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,
0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0x00,0x00,0xFF,
0x04,0x3E,0x44,0x04,0x00,0x30,0x08,0x06,0x00,0x3E,
0x0A,0x0A,0x04,0x00,0x00,0x00,0x24,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x80,0x80,
0xC1,0x80,0x80,0x80,0x80,0x80,0x80,0xC1,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0xC1,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0xC1,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0xC1,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC1,
0x80,0x80,0x80,0x80,0x80,0x80,0x00,0xBF,0x00,0x80,
0x80,0x80,0x80,0x80,0x80,0xC1,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0xC1,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0xC1,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC1,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC1,0x80,0x80,
0x80,0x80,0x80,0x80,0xC1,0x80,0x80,0x7F,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,
0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x81,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x81,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x81,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x81,
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFE,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x81,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x81,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x81,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x81,0x00,0x00,
0x00,0x00,0x00,0x00,0x81,0x00,0x00,0xFF,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,
0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,
0x00,0x00,0x00,0x00,0x80,0x00,0x00,0xFF,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,
0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,
0x00,0x00,0x00,0x00,0x80,0x00,0x00,0xFF,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xC0,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x7F,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0xC0,0x7F,
};
void t_um()
{
write_char(13,1,86); // write 'v'
if(f==1)
{
write_char(0,5,97);//write u
write_char(6,5,83);// write s
}
if(f==2){
write_char(0,5,77);//write m
write_char(6,5,83); // write s
}
}
// Declare your global variables here
void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A 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
PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=In Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=T State1=0 State0=0
PORTB=0x00;
DDRB=0x7B;
// Port C initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
PORTC=0x00;
DDRC=0xFF;
// Port D initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
PORTD=0xE0;
DDRD=0x1F;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B 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
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: On
// INT2 Mode: falling Edge
GICR|=0x20;
MCUCR=0x00;
MCUCSR=0x00;
GIFR=0x20;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
// Global enable interrupts
#asm("sei")
glcd_clear();
image(name);
delay_ms(2000);
image(oscop);
for(b=0;b<100;b++){
in=b*2;}
s7=0;s6=0;s2=0;s1=0;s4=1;s5=1;delay_us(10);s4=0;
while(1){
switch(voptop){
case 0b10100100:write_num(0,1,20,2);top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b10011011:write_num(0,1,10,2);top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b10010010:write_num(0,1,4,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b10001001:write_num(0,1,2,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b10000000:write_num(0,1,1,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b01100100:write_num(0,1,20,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b01011011:write_num(0,1,10,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b01010010:write_num(0,1,4,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b01001000:write_num(0,1,2,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;
case 0b01000000:write_num(0,1,1,2); top1=100;top1*=zn;if(top1>=10000){top2=2;top1/=1000;f=2;
t_um();}
else{top2=4;f=0;t_um();}write_num(0,4,top1,top2);break;}
for(j=0;j<100;j++)
{
a1=in[j];a1=a1/4;
a1=63-a1;
write_dot(soton,a1,oscop);
soton++;
if(ch==1){delay_ms(100); ch=0;}}
soton=27;
delay_ms(1000);
image(oscop);
dot_reset();};}