سلام من یه پروژه دارم که می خوام تو proteus شبیه سازی کنم. برنامه توی c18 نوشته شده و من کلاک میکرو در پروتوس رو 40M گذاشتم توی کد برنامه:
#pragma config OSC = HSPLL
اما تایمر ها درست جواب نمی دهند و زمان ها رو چرند میده مثلا واسه تایمر 1 من گذاشتم :
که مثلا 10ms یه اینتراپت بده اما تو پروتوس هر 2.5ms اینتراپت میده
یه مشکل دیگه هم توی تایمر 0 هست که قراره یه فرکانس رو از ورودی بخونه من تنظیمات رو اینجور انجام دادم :
اما توی شبیه ساز هیچ موقع TMR0H تغییر نمی کنه
لطفا راهنمایی کنید
#pragma config OSC = HSPLL
اما تایمر ها درست جواب نمی دهند و زمان ها رو چرند میده مثلا واسه تایمر 1 من گذاشتم :
کد:
void timer1_init(void){ T1CON=(1<<4); TMR1H = 60; TMR1L = 176; PIE1bits.TMR1IE=1; IPR1bits.TMR1IP=1; //Timer1 overflow has high priority interrupt T1CONbits.TMR1ON=1; }
یه مشکل دیگه هم توی تایمر 0 هست که قراره یه فرکانس رو از ورودی بخونه من تنظیمات رو اینجور انجام دادم :
کد:
void timer0_init(void) { /* Timer 0 in 16 bit mode with external clock ps:1/2 */ TMR0H = 0; //clear timer TMR0L = 0; //clear timer INTCONbits.TMR0IE=1; INTCON2bits.TMR0IP=0; }
لطفا راهنمایی کنید
دیدگاه