| 
	
	|  |  |  
	
		| View previous topic :: View next topic |  
		| Author | Message |  
		| Charles Francês 
 
 
 Joined: 29 Feb 2020
 Posts: 7
 
 
 
			    
 
 | 
			
				| Pwm no way CCP for Timer0 |  
				|  Posted: Mon Apr 27, 2020 6:07 pm |   |  
				| 
 |  
				| Hello! Ttelmah, I wanted the 3 pwm to read the values of the matrix understood without being automatic in the for loop
 God bless you Thank you for your help !
 
 
 
  	  | Code: |  	  | 
 #include <16F628A.h>
 #FUSES NOWDT, HS, NOMCLR
 #use delay(clock=4000000)
 #int_timer0
 void pwm_duty(int pwm0, int pwm1, int pwm2){
 int cont;
 if(cont>15)
 cont=0;
 else
 cont++;
 if(cont>0&&cont<pwm0)
 output_high(PIN_B0);
 else
 output_low(PIN_B0);
 if(cont>0&&cont<pwm1)
 output_high(PIN_B1);
 else
 output_low(PIN_B1);
 if(cont>0&&cont<pwm2)
 output_high(PIN_B2);
 else
 output_low(PIN_B2);
 set_timer0(0);
 }
 void main(){
 setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
 set_timer0(0);
 enable_interrupts(INT_TIMER0);
 enable_interrupts(GLOBAL);
 while(true){
 int r, g, b;
 for(b=0;b<16;b++){
 pwm_duty(16,0,b);
 delay_ms(50);
 }
 for(r=16;r>1;r--){
 pwm_duty(r,0,16);
 delay_ms(50);
 }
 for(g=0;g<16;g++){
 pwm_duty(0,g,16);
 delay_ms(50);
 }
 for(b=16;b>1;b--){
 pwm_duty(0,16,b);
 delay_ms(50);
 }
 for(r=0;r<16;r++){
 pwm_duty(r,16,0);
 delay_ms(50);
 }
 for(g=16;g>1;g--){
 pwm_duty(16,g,0);
 delay_ms(50);
 }
 }
 }
 
 }
 | 
 Ttelmah you are a super saiyan help me to become a super sayiajin too
 
    
 Last edited by Charles Francês on Tue Apr 28, 2020 11:52 am; edited 1 time in total
 |  |  
		|  |  
		| Ttelmah 
 
 
 Joined: 11 Mar 2010
 Posts: 19967
 
 
 
			    
 
 | 
			
				|  |  
				|  Posted: Mon Apr 27, 2020 11:54 pm |   |  
				| 
 |  
				| Where is the rest of the code?. You have posted an 'excerpt', again with nothing setting up the PWM,
 and without anything setting up the chip itself.
 
 There is no command 'pwm_duty'. There is pwm_set_duty, when using a
 stream with #use pwm, or set_pwmx_duty when using setup_ccp.
 
 Look at the examples, and read the manual.
 EX_PWM.C
 
 The PWM, has to use timer2 on the chip you show (on most of the more
 basic PIC's).
 
 That chip also only has one PWM.
 |  |  
		|  |  
		|  |  
  
	| 
 
 | You cannot post new topics in this forum You cannot reply to topics in this forum
 You cannot edit your posts in this forum
 You cannot delete your posts in this forum
 You cannot vote in polls in this forum
 
 |  
 Powered by phpBB © 2001, 2005 phpBB Group
 
 |