slckyzc89
Üye
- Katılım
- 8 Ara 2011
- Mesajlar
- 17
- Puanları
- 1
- Yaş
- 34
merhaba arkadaşlar
3 farklı veriyi ( mesela 3 adet ppotansiyometre ) pic ten okuyup , (analog degelerini , adc ile ) 2. bir pic e gönderip ve 2. pic in çkışındada bu 3 adet veriyi lcd de yazdrmak istirorum
bir tane veriyi yaptım lcd de gösterdm fakat veriler artınca kafam karıştı yapamaddm aynı mantık yazdım kodları ama olmadı.. ( acemi olmanın zararları ) )
1 adetpot için program şu şekilde
verici kısmı
alıcı kısmı
program bir pot için ısıste çalışıyor bu pto sayısı artttgında chardaki değişken ( dizi) sayısını arttrmam gerek yada sırasıyla gelecek bu veriler ama nasıl bir programlama olur çözemedm
3 farklı veriyi ( mesela 3 adet ppotansiyometre ) pic ten okuyup , (analog degelerini , adc ile ) 2. bir pic e gönderip ve 2. pic in çkışındada bu 3 adet veriyi lcd de yazdrmak istirorum
bir tane veriyi yaptım lcd de gösterdm fakat veriler artınca kafam karıştı yapamaddm aynı mantık yazdım kodları ama olmadı.. ( acemi olmanın zararları ) )
1 adetpot için program şu şekilde
verici kısmı
Kod:
#include "C:\Users\lg\Desktop\devre\verici\main.h"
#fuses HS, NOWDT, NOPROTECT, NOBROWNOUT, NOLVP, NOPUT, NOWRT, NODEBUG, NOCPD
#use delay (clock=4000000)
#use RS232 (baud=9600, bits=8, parity=N, xmit=PIN_C6, rcv=PIN_C7)
#use fast_io(a)
#use fast_io(b)
#use fast_io(d)
#define use_portb_lcd TRUE
#include <LCD.c>
#include <stdlib.h>
char s;
unsigned long int dijital;
void main()
{
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
set_tris_a(0x01);
set_tris_c(0xff);
setup_adc(ADC_CLOCK_INTERNAL);
setup_adc_ports(ALL_ANALOG);
set_adc_channel(1);
lcd_init();
while(1)
{
set_adc_channel(1);
putc(read_adc());
lcd_gotoxy(2,1);
printf(lcd_putc,"adc=%u\r",read_adc());
}
}
alıcı kısmı
Kod:
#include "C:\Users\lg\Desktop\devre\alici\main.h"
#fuses HS, NOWDT, NOPROTECT, NOBROWNOUT, NOLVP, NOPUT, NOWRT, NODEBUG, NOCPD
#use delay (clock=4000000)
#use RS232 (baud=9600, bits=8, parity=N, xmit=PIN_C6, rcv=PIN_C7)
#use fast_io(a)
#use fast_io(b)
#use fast_io(d)
#define use_portb_lcd TRUE
#include <LCD.c>
char r;
unsigned long int adc;
unsigned int a,b;
void main()
{
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
lcd_init();
while(1)
{
getc();
lcd_gotoxy(4,1);
printf(lcd_putc,"adc=%u\r",getc());
}
}
program bir pot için ısıste çalışıyor bu pto sayısı artttgında chardaki değişken ( dizi) sayısını arttrmam gerek yada sırasıyla gelecek bu veriler ama nasıl bir programlama olur çözemedm