Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

18F25K22 80 Mhz Çalışıyor.

Başlatan Salih, 12 Ocak 2015, 16:17:21

Salih

Daha önce deneyen oldu mu bilmiyorum.
18F25K22 80 Mhz de çalıştırayım dedim. Gözlemlediğim kadarıyla herhangi bir problem yok.
Gayet güzel çalışıyor.
Katalog değeri Max. 64Mhz.
Forumda bilgilendirme amaçlı paylaşıyorum.
Belki bir arkadaşa gerekebilir.

Deneme programı.
Program EasyPic7 kartında denendi.
20Mhz kristal bağlandı ve PLL ile 4'le çarpıldı.

#include <18F25K22.h>
#device ADC=10

#FUSES HSH
#FUSES PUT                      //Power Up Timer
#FUSES NOBROWNOUT               //No brownout reset
#FUSES NOPBADEN                 //PORTB pins are configured as digital I/O on RESET
#FUSES NOMCLR                   //Master Clear pin used for I/O
#FUSES NOSTVREN                 //Stack full/underflow will not cause reset
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOXINST                  //Extended set extension and Indexed Addressing mode disabled (Legacy mode)
#FUSES PLLEN
#FUSES PRIMARY

#use delay(clock=80MHz,crystal=20M)
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8,errors)

#include <EasyPic_lcd-y.c>

#Define azt input(Pin_C1)
#Define art input(Pin_C2)

int8 x=0,out=0;
int16 ham=0;

#INT_TIMER1
void  TIMER1_isr(void) //20 ms
{
set_timer1(15560); 
  output_toggle(Pin_C0);
}

#INT_RDA
void  RDA_isr(void) 
{
 if (getc()==10) 
 {
   x++;
   putc(x);
 } 
}

void main()
{
   setup_oscillator(OSC_PLL_ON); 
   setup_adc_ports(sAN0|sAN1|VSS_VDD);
   setup_adc(ADC_CLOCK_INTERNAL|ADC_TAD_MUL_12);
   setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);      
   Setup_Dac(DAC_VSS_VDD | DAC_OUTPUT);
   SETUP_CCP1(CCP_OFF);
   SETUP_CCP2(CCP_OFF);
   SETUP_CCP3(CCP_OFF);
   SETUP_CCP4(CCP_OFF);
   SETUP_CCP5(CCP_OFF);
   setup_vref(VREF_OFF);

   enable_interrupts(INT_TIMER1);
   enable_interrupts(INT_RDA);
   enable_interrupts(GLOBAL);
   Lcd_init();
   delay_ms(10);
   set_adc_channel(0);
   
   while(TRUE)
   {
      ham = read_adc();
      Dac_Write(out);
      if (azt && out) {out--;while(azt);}
      if (art) {out++;while(art);}
      
      Printf(Lcd_putc,"\fHam=%lu\nout=%u",ham,out);
      delay_ms(250);
   }
}

LukeSkywalker

Overclock. Kaç volt ile beslediniz?

Salih


aliveli


Salih

Alıntı yapılan: aliveli - 12 Ocak 2015, 23:56:28
rs232 çalışıyor mu?

Gayet güzel çalışıyor. Sürekli veri alış verişi yaptırdım, problem çıkmadı.

ahmetbudak

daha önce bu konuda yazılan yorumlarda aşağıdaki linkteki soru ve cevabı belirtmiştim
http://community.silabs.com/t5/8-bit-MCU-Knowledge-Base/Overclocking/ta-p/110559