Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <16f628A.h>
- #fuses NOWDT
- #fuses MCLR
- #fuses NOBROWNOUT
- #fuses NOLVP
- #USE DELAY(INTERNAL=4000000)
- #USE FAST_IO (A)
- #USE FAST_IO (B)
- //-"direccionamiento de ports-//
- #byte port_A = 0x05
- #byte port_B = 0x06
- #define speed1 PIN_B4
- #define speed2 PIN_B5
- #define speed3 PIN_B6
- #define light PIN_B7
- VOID MAIN()
- {
- SET_TRIS_A(0xff);
- SET_TRIS_b(0x00);
- output_b(0);
- speed_1:
- while(1){
- do{
- if(!input(pin_a1))goto lights;
- if(!input(pin_a2))goto speed_3;
- if(!input(pin_a3))goto speed_2;
- }while(input(pin_a4));
- output_low(speed2);
- output_low(speed3);
- delay_ms(50);
- output_high(speed1);
- delay_ms(500);
- do{
- if(!input(pin_a1))goto lights;
- if(!input(pin_a2))goto speed_3;
- if(!input(pin_a3))goto speed_2;
- }while(input(pin_a4));
- output_low(speed1);
- delay_ms(500);
- }
- speed_2:
- while(1){
- do{
- if(!input(pin_a1))goto lights;
- if(!input(pin_a2))goto speed_3;
- if(!input(pin_a4))goto speed_1;
- }while(input(pin_a3));
- output_low(speed1);
- output_low(speed3);
- delay_ms(50);
- output_high(speed2);
- delay_ms(500);
- do{
- if(!input(pin_a1))goto lights;
- if(!input(pin_a2))goto speed_3;
- if(!input(pin_a4))goto speed_1;
- }while(input(pin_a3));
- output_low(speed2);
- delay_ms(500);
- }
- speed_3:
- while(1){
- do{
- if(!input(pin_a1))goto lights;
- if(!input(pin_a3))goto speed_2;
- if(!input(pin_a4))goto speed_1;
- }while(input(pin_a2));
- output_low(speed1);
- output_low(speed2);
- delay_ms(50);
- output_high(speed3);
- delay_ms(500);
- do{
- if(!input(pin_a1))goto lights;
- if(!input(pin_a3))goto speed_2;
- if(!input(pin_a4))goto speed_1;
- }while(input(pin_a2));
- output_low(speed3);
- delay_ms(500);
- }
- lights:
- while(1){
- do{
- if(!input(pin_a4))goto speed_1;
- if(!input(pin_a2))goto speed_2;
- if(!input(pin_a3))goto speed_3;
- }while(input(pin_a1));
- delay_ms(50);
- output_high(light);
- delay_ms(500);
- do{
- if(!input(pin_a4))goto speed_1;
- if(!input(pin_a2))goto speed_2;
- if(!input(pin_a3))goto speed_3;
- }while(input(pin_a1));
- output_low(light);
- delay_ms(500);
- }
- }
Add Comment
Please, Sign In to add comment