Pic16f877a lm35 sıcaklık okuma ve led kontrolü c#

Başlatan alimutlu1@windowslive.com, 21 Aralık 2015, 01:18:15

alimutlu1@windowslive.com

Merhaba arkadaşlar; c#'da oluşturulmuş arayüz ile Usb-ttl dönüştürücü ile 16F877A'a bağlı led kontrolü yapabiliyorum. Ancak aynı anda pc'e sıcaklık verisi göndermek istiyorum yardımcı olabilcek var mı?
#include <16F877A.H> 
#device ADC=10 
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
#use delay (clock=4000000) 
#use fast_io(a) //Port yönlendirme komutları A portu için geçerli
#use fast_io(b)
#use rs232 (baud=9600, xmit=pin_C6, rcv=pin_C7, parity=N, stop=1)
#define led1 pin_b7
#define led2 pin_b6
#define led3 pin_b5

unsigned long int bilgi;
float voltaj,sicaklik;
void Aydinlatma();
int i=0;
#int_timer1
void timer1_kesme()
{
i++;
set_timer1(3036);
if(i==40)
{
Aydinlatma();
i=0;
}
}
int data;
void Aydinlatma()
{

 data=getch();
       
      if(data==1)
      {
         output_high(led1);
      }
      if(data==11)
      {
         output_low(led1);
      }
      if(data==20)
      {
         output_high(led2);
      }
       if(data==22)
      {
         output_low(led2);
      }
      if(data==30)
      {
         output_high(led3);
      }
         if(data==33)
      {
         output_low(led3);
      }
      if(data==40)
      {
         output_high(led1);
         output_high(led2);
         output_high(led3);
      }
        if(data==44)
      {
         output_low(led1);
         output_low(led2);
         output_low(led3);
      }}
void main(){
   setup_psp(PSP_DISABLED);        
   setup_timer_2(T2_DISABLED,0,1); 
   setup_CCP1(CCP_OFF);            
   setup_CCP2(CCP_OFF);           
   //time1 ayarları
   setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);
   disable_interrupts(INT_timer1);
   enable_interrupts(GLOBAL);
   set_tris_a(0x01);// RA0 giriş
   //adc ayarları
   setup_adc(adc_clock_div_32);
   setup_adc_ports(AN0);
   set_adc_channel(0);
   delay_us(20);
   set_tris_b(0x00);    
   output_b(0x00);
while(true){
bilgi=read_adc();
voltaj=(0.0048828125*bilgi)*1000;
sicaklik=(voltaj/10)+2;
}}

proteus simülasyonu ;


12z


PROTECH_

printf kullan. Ayni yoldan data da gonderebilirsin
Multi-Core ,RTX,ThreadX, FreeRTOS, MODBUS  RTOS - Electronic-Hardware -- BERLIN

aladdn07

c# rs232 örnekli cok fazla proje yaptm eger istersen sana yardmcı olabilirim aladdin683@gmail.com adresinden bana ulaşabilirsin her konuda yardımcı olabilirim