Laço de repetição no display de 7 segmentos usando goto
Código feito em mikro PRO for
void main() {
trisb = 0;//definindo todos os pinos como saída
portb = 0; //desligando
inicio:
portb = 0b00111111;//forma binária, 'imprimndo o [0]'
delay_ms(500);
portb = 0b00000110;//'imprimndo o [1]'
delay_ms(500);
portb = 91; //forma decimal, 'imprimindo o [2]'
delay_ms(500);
portb = 79; // [3]
delay_ms(500);//0,5s de espera
portb = 0x66; //forma hexadecimal [4]
delay_ms(500);
portb = 0x6D; //forma hexadecimal [5]
delay_ms(500);
portb = 0x7D; // [6]
delay_ms(500);
portb = 0x7;// forma hexadecimal [7]
delay_ms(500);
portb = 0b01111111;//[8]
delay_ms(500);
portb = 0b01100111; //[9]
delay_ms(500);
goto inicio; //retorna para para o inicio
}
Pesquisar neste blog
24/02/2020
Desafio 1
Fazer o Led piscar conforme o gráfico
Resolução:
Código feito em CCS C Compiler
#include <16F877A.h>
#device adc=8
#FUSES NOWDT //No Watch Dog Timer
#FUSES HS //High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD)
#FUSES NOPUT //No Power Up Timer
#FUSES NOPROTECT //Code not protected from reading
#FUSES NODEBUG //No Debug mode for ICD
#FUSES BROWNOUT //Reset when brownout detected
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOCPD //No EE protection
#FUSES NOWRT //Program memory not write protected
#use delay(clock=20000000)
void main(){
while(TRUE){
output_low(PIN_B2);
for(int i = 0; i< 50; i++){
for(int j = 0; j < 100; j++){
output_high(PIN_B2);
delay_us(i*(1000/50));
output_low(PIN_B2);
delay_us(1000-(1*(1000/50)));
}
}
}
}
Assinar:
Postagens (Atom)



