Bonjour,

j'ai dans la tête la réalisation d'un programme en C pour gérer une pwm sur un pic 12F683.

Le pic en question possède une pwm hardware et une horloge interne 8MHz. La pwm sera incrémentée ou décrémentée avec un BP dont l'appui plus ou moins long fera varier le duty.

J'arrive à faire des petits programmes sur 16F628A mais sur ce pic, le 12F683, je n'arrive à rien. Je pense que le programme en C manque de quelque chose d'essentiel. J'ai cherché sur le net une base pour commencer un programme en C sur 12F683 mais je n'ai rien trouvé. J'aimerais dans un premier temps arriver à faire fonctionner une seule ligne de code
J'utilise PIC C Compiler 4.087:

#include <12F683.h>
#device adc=8

#FUSES NOWDT //No Watch Dog Timer
#FUSES INTRC_IO //Internal RC Osc, no CLKOUT
#FUSES NOCPD //No EE protection
#FUSES NOPROTECT //Code not protected from reading
#FUSES NOMCLR //Master Clear pin used for I/O
#FUSES NOPUT //No Power Up Timer
#FUSES NOBROWNOUT //No brownout reset
#FUSES NOIESO //Internal External Switch Over mode disabled
#FUSES NOFCMEN //Fail-safe clock monitor disabled

#use delay(clock=8000000)

#byte OSCCON = 0x8F // configuration oscillateur interne
#byte PORTGPIO = 0x05
#byte TRISIO = 0x85 // config entrees et sorties

#bit led = PORTGPIO.4


void main()
{
OSCCON = 0x77 ; // ou 0x71 ? HFINTOSC is stable ??
PORTGPIO = 0xFF;
TRISIO = 0xF1;

setup_adc_ports(NO_ANALOGS|VSS _VDD);
setup_adc(ADC_OFF);
setup_timer_0(RTCC_INTERNAL|RT CC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1) ;
setup_comparator(NC_NC);
setup_vref(FALSE);
setup_oscillator(OSC_8MHZ);

output_high(led) ; // allumer led sur pin gp4

}

Merci