g> = 0)
1 {DATA = (kod_DAC [ADDR]>> sdvig) &1;
169 2 CLOCK = 1;
2 CLOCK = 0;
2 sdvig -;
2}
1
1 Exit:
1 REN = 0;// заборона прийому
176 1 TR1 = 0;// викл таймера
1 RTS = 0;// коли 1 йде передача в модем
178 1}
COMPILER V9.50a STARTUP 12/27/2012 1:05:46 PAGE 4
// індикація
void check_busy (void)
{do
1 {P0 = 0xff;
2 E = 0;
2 RS = 0;
2 RW = 1;
2 E = 1;
2} while (BUSY == 1);
1 E = 0;
1}
void write_command (unsigned char com)
{check_busy ();
1 RS = 0;
1 RW = 0;
1 P0 = com;
197 1 E_Strobe;
1}
void write_data (unsigned char dat)
{check_busy ();
1 RS = 1;
1 RW = 0;
1 P0 = dat;
1 E_Strobe;
1}
void LCD_init (void)
{write_command (0x38);// 8-bits, 2 lines, 7x5 dots
1 write_command (0x0C);// no cursor, no blink, enable display
1 write_command (0x06);// auto-increment on
1 write_command (0x01);// clear screen
1}
void string (unsigned char ad, unsigned char * s)
{write_command (ad);
1 while (* s> 0)
1 {write_data (* s + +);
2}
1}
226
///////////////
void main ()
{int KOD_ADC [4];
1 char B = 12, x = 0, A2 = 0, A1 = 0, A0 = 1;
1 float U [4], Razreshenie_ADC;
1 int N1, N2, N3, N4;// для індикації
233 1
1 Razreshenie_ADC = 5.0/4096;
1
1 SM0 = 1;
1 SM1 = 1;// режим 3 послідовного порту старт-біт (0), 8бит, біт ТВ8, стоп-біт (1)
1 EA = 1;// дозвіл переривань
1 EX0 = 1;// дозвіл переривань від INT0
1 RTS = 0;// коли 1 йде передача ...