Pesquisar neste blog
26/09/2020
Sequências periódicas
19/09/2020
Timer1 com PIC 16F628A
Software Proteus 7.6 |
17/09/2020
PWM com PIC 16F628A
16/09/2020
PWM com PIC 16F628A
Código feito em CCS C Compiler
#include <16F628a.h>
#fuses intrc_io,nowdt,nomclr//configurando os fuses bits
#use delay(clock = 8M)
#use fast_io(a)
#use fast_io(b)
int valor;
void main(void){
set_tris_b(0x00);//todo port b como saída
setup_ccp1(CCP_PWM);//setando o canal PWM
//(corresponde pro escale: pode ser 1 ou 16 , carga do registrador que deixar o ciclo em 0 ,ciclo ativo: registrador ccpR1L)
setup_timer_2(T2_DIV_BY_16,255,1);//função que configura o PWM
while(true){
for(valor = 0; valor < 255; valor++){
set_pwm1_duty(valor);
delay_ms(100);
}
for(valor = 255; valor > 1; valor--){
set_pwm1_duty(valor);
delay_ms(100);
}
}
}
Motor DC usando PWM com PIC 18F4550
Software: Proteus versão 7.6 |
13/09/2020
Timer0 com interrupção usando PIC 16F628A
Código feito em CCS C Compiler
#include <16f628a.h>
#fuses intrc_io,nowdt, nomclr
#use delay(clock = 4MHz)
#use fast_io(a)
#use fast_io(b)
#define use_portb_lcd TRUE//configurando no port b
#include <lcd.c>
int cont, timer;
//diretiva de interrupção do timer 0
#INT_TIMER0
void contador(void){
lcd_putc("\fINTERRUPCAO \n ATIVADA");
for(cont = 0; cont < 5; cont++){
output_low(pin_a0);//nivel baixo no pino a0
output_high(pin_a1);//nivel alto no pino a1
delay_ms(500);
output_low(pin_a1);
delay_ms(500);
set_timer0(250);
}
lcd_putc("\fINTERRUPCAO \n FINALIZADA");
delay_ms(2000);
lcd_putc("\fVOLTANDO AO \nPROGRAMA");
delay_ms(2000);
lcd_putc("\fAGUARDANDO\NINTERRUPCAO");
delay_ms(100);
}
void main(void){
set_tris_a(0xf0);//1/2 como entrada e 1/2 como saída
set_tris_b(0x00);//port saida
output_b(0x00);
ENABLE_INTERRUPTS(GLOBAL);//chave geral da interupcao
ENABLE_INTERRUPTS(INT_TIMER0);//habilitando a interrupcao
SETUP_TIMER_0(RTCC_EXT_L_TO_H);//declarando oscilador xnterno e incremento atraves do RA4 , COLOCANDO A BORDA DE DESCIDA PARA SUBIDA
SET_TIMER0(250);//setando em 250
lcd_init();
lcd_putc("\fAGUARDANDO\nINTERRUPCAO");
while(true){
output_high(pin_a0);
delay_ms(500);
output_low(pin_a0);
delay_ms(500);
timer = get_timer0() + 6;//captura atraves da função e soma + 6
lcd_putc("\fAGUARDANDO\nINTERRUPCAO");
printf(lcd_putc," %u", timer);
}
}
Jogo da Quina com PIC 16F628A
#include <16f628a.h>
#fuses intrc_io,nowdt, nomclr
#use delay(clock = 4MHz)
#use fast_io(a)
#use fast_io(b)
#define use_portb_lcd TRUE
#include <lcd.c>
int cont = 1, timer, num[5];
void main(void){
set_tris_a(0xff);//todo port a como entrada
lcd_init();
setup_timer_0(rtcc_internal|rtcc_div_1);//definindo como oscilador interno e, escale como 1
lcd_putc(" QUINA \n");
delay_ms(200);
lcd_putc(" \f SORTEANDO:\n");
delay_ms(500);
set_timer0(1);
while(true){
while(cont <= 5){
timer = GET_TIMER0();
if(timer > 0 && timer < 81){
num[cont] = timer;
printf(lcd_putc,"%u ", num[cont]);
cont++;
}
delay_ms(331);
}
delay_ms(3000);
lcd_putc("\f SORTEANDO:\n");
cont = 1;
}
}
Créditos para: Alexandro Lima
Timer usando com PIC 16F628A
Código feito em CCS C Compiler
#include <16f628a.h>
#fuses intrc_io,nowdt, nomclr
#use delay(clock = 4MHz)
#use fast_io(a)
#use fast_io(b)
int cont, timer;
void main(void){
set_tris_a(0xf);//1/2 como entrada e 1/2 como saída
set_tris_b(0x00);//port saida
output_b(0x00);
SETUP_TIMER_0(RTCC_EXT_L_TO_H);//declarando oscilador xnterno e incremento atraves do RA4 , COLOCANDO A BORDA DE DESCIDA PARA SUBIDA
SET_TIMER0(0);
while(true){
timer = GET_TIMER0();//captura e armazena na variável timer
if(timer == 5){
for(cont = 0; cont < 5; cont++){
output_high(pin_b1);
delay_ms(500);
output_low(pin_b1);
delay_ms(500);
set_timer0(0);
}
}
}
}
10/09/2020
Media Query em HTML
30/08/2020
Propriedades CSS
Posições dos elementos usando CSS em HTML
28/08/2020
Texto e suas propriedades em HTML
26/08/2020
Organização de divs em HTML
Créditos para: Luis Fernando - IFMT
19/08/2020
Função para verificar CPF em Javascript
Objetivo: Averiguar se os dados digitados corresponde a um formato de CPF ( xxx.xxx.xxx-xx ):
Exemplo: 111.222.333-44, Ok !
Caso contrário está incorreto
14/08/2020
Overflow em HTML