Rev Author Line No. Line
1744 kakl 1 #include "main.h"
2  
1757 kakl 3 #define VERSION 0.1
4  
1759 kakl 5 #define START PIN_D4
6 #define STOP1 PIN_D5
7 #define STOP2 PIN_D6
1774 kaklik 8 #include "GP2.h"
1759 kakl 9  
1774 kaklik 10 #define ONE_WIRE_PIN PIN_E2
11 #include "ds1820.c"
12  
1744 kakl 13 void main()
14 {
1774 kaklik 15 float temperature;
16  
1744 kakl 17 setup_adc_ports(NO_ANALOGS|VSS_VDD);
18 setup_adc(ADC_CLOCK_DIV_2);
19 setup_psp(PSP_DISABLED);
20 setup_spi(SPI_SS_DISABLED);
21 setup_wdt(WDT_OFF);
22 setup_timer_0(RTCC_INTERNAL);
23 setup_timer_1(T1_DISABLED);
24 setup_timer_2(T2_DISABLED,0,1);
25 setup_ccp1(CCP_OFF);
26 setup_comparator(NC_NC_NC_NC);
27 setup_vref(FALSE);
28  
1745 kakl 29 TDC_reset();
1744 kakl 30  
1798 kaklik 31 /* MRange=TDC_MRANGE1;
32 hitin1=TDC_HITIN1_1;
33 hitin2=TDC_HITIN2_0;
1775 kaklik 34 hit1=TDC_MRANGE1_HIT1_START;
1798 kaklik 35 hit2=TDC_MRANGE1_HIT2_1CH1;
36 en_int=0x0; // (TDC_INT_ALU | TDC_INT_ENDHIT | TDC_INT_TIMEOUT);
1759 kakl 37 en_err_val=TDC_ERRVAL_EN;
38 delval1=0x0;
39 delval2=0x0;
40 delval3=0x0;
1798 kaklik 41 calibrate=TDC_CALIBRATE_DIS;
1775 kaklik 42 disautocal=TDC_AUTOCAL_EN;
43  
1798 kaklik 44 firenum=TDC_FIRENUM_0;
45 div_fire=TDC_DIV_FIRE_2;
46  
47 Tcycle=TDC_TCYSLE_LONG;
48 portnum=TDC_TPORTNUM_2;
49 fakenum=TDC_TFAKENUM_2;
1758 kakl 50  
51 TDC_update_registers();
1798 kaklik 52 */
1759 kakl 53 output_low(START);
54 output_low(STOP1);
55 output_low(STOP2);
1775 kaklik 56  
57 TDC_start_cal_resonator();
58 delay_ms(50);
59 printf("calibrate: %LX, %LX, %LX, %LX \r\n", TDC_get_measurement(1), TDC_get_measurement(2), TDC_get_measurement(3), TDC_get_measurement(4));
1759 kakl 60 TDC_start_cal();
61 delay_ms(50);
62  
1744 kakl 63 while(true)
64 {
1798 kaklik 65 temperature = ds1820_read();
66 TDC_reset();
67 hitin1=TDC_HITIN1_2;
68 hitin2=TDC_HITIN2_1;
69 en_err_val=1;
70 TDC_update_registers();
1759 kakl 71  
1798 kaklik 72 delay_ms(50);
1758 kakl 73 TDC_init();
1798 kaklik 74  
1759 kakl 75 delay_ms(50);
1774 kaklik 76 printf("Temp: %f \r\n", temperature);
77 delay_ms(50);
78 printf("status: %LX \r\n", TDC_get_status());
1775 kaklik 79  
1798 kaklik 80 // TDC_start_cycle();
1775 kaklik 81  
1759 kakl 82 delay_us(10);
83 output_high(START);
1775 kaklik 84 // delay_us(1);
1798 kaklik 85  
86 delay_us(10);
1759 kakl 87 output_low(START);
88  
1798 kaklik 89 // output_high(STOP1);
1775 kaklik 90 // delay_us(10);
91 // delay_us(500);
92 // output_high(STOP1);
93 // delay_us(10);
94 // output_low(STOP1);
95 // delay_us(500);
96 // output_high(STOP1);
97 // delay_us(10);
98 // output_low(STOP1);
1798 kaklik 99 output_low(START);
1759 kakl 100  
1798 kaklik 101 // output_high(STOP2);
1775 kaklik 102 // delay_us(10);
1798 kaklik 103 // output_low(START);
104 // output_low(STOP1);
105 // output_low(STOP2);
1775 kaklik 106 // delay_us(500);
1798 kaklik 107 // output_high(STOP2);
1775 kaklik 108 // delay_us(10);
1798 kaklik 109 // output_low(STOP2);
1775 kaklik 110 // delay_us(500);
1798 kaklik 111 // output_high(STOP2);
1775 kaklik 112 // delay_us(10);
1798 kaklik 113 // output_low(STOP2);
1775 kaklik 114  
115  
1798 kaklik 116 // delay_ms(10);
117 // TDC_start_temp();
118  
1775 kaklik 119 delay_ms(10);
1774 kaklik 120 printf("status: %LX \r\n", TDC_get_status());
1759 kakl 121 delay_ms(50);
1774 kaklik 122 printf("measured: %LX, %LX, %LX, %LX \r\n", TDC_get_measurement(1), TDC_get_measurement(2), TDC_get_measurement(3), TDC_get_measurement(4));
1744 kakl 123 delay_ms(500);
1759 kakl 124  
1744 kakl 125 };
126 }