Перейти к содержанию

Sambler

Members
  • Постов

    25
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Sambler

  1. 3 минуты назад, Alexeyslav сказал:

    Что по вашему значит аббревиатуры CC и CA

    А вот вы меня заинтересовали данным вопросом, пойду литературу почитаю по этому поводу, будем еще чем предъявить преподавателю

    Спасибо Всем, кто помогал мне на этом форуме, если тема не закроется, чуть позже отпишу, на какую оценку приняли работы)))
    Удачи в жизни Вам ребята, добрые вы люди!

  2. 4 минуты назад, IMXO сказал:

    опять индикаторы перепутал?

    Хм, ну да, СА стоит, сейчас....
    ЭХ, и почему нигде не указано,что СС нужен....
    А в чем собственно их отличие? один рабочий а другой - нет ? :DD ( глупо, да )


    Всё заработало))))) 

    image.png

  3. 9 минут назад, IMXO сказал:

    бред написан...

    Код написан моим преподом, не мной)) я если бы знал, я бы не задавал вопросы.
     

     

    9 минут назад, IMXO сказал:

    ынеси определение переменной i в тело функции

    Что то типа этого?image.png.b2cb28f8cc4d923e46ca637f9eed488a.pngimage.png.27e022196f900d03d2dfe2548ddf910e.png
    Я не силён в программировании, но как бы всё заработало, но как то криво, не так, как у преподавателя в задании

  4. У меня была похожая тема,  я решил проблему установив в include util/delay.h
    Но возникла еще одна ошибка, не могу понять, что оно хочет

    #include <util/delay.h>
    #include <avr/io.h>
    #include <avr/interrupt.h>
    #define DEL    _delay_ms(1)
    
    char tab[7];
    
    char decod( char digit){
    char retval;
    switch (digit){
                case 0:  {retval=0b00111111;   break; }
                case 1:  {retval=0b00000110;   break; }
                case 2:  {retval=0b01011011;   break; }
                case 3:  {retval=0b01001111;   break; }
                case 4:  {retval=0b01100110;   break; }
                case 5:  {retval=0b01101101;   break; }
                case 6:  {retval=0b01111101;   break; }
                case 7:  {retval=0b00000111;              break; }
                case 8:  {retval=0b01111111;   break; }
                case 9:  {retval=0b01101111;   break; }
    default :retval=0b00000000;
    }
    return retval;
    }
    //**********************************************************
    void afis(void){
    for (int i=0; i<6; i++){
    PORTC=~(1<<i);
    if (i==2) PORTA=decod(tab[i])|(1<<7);
    else if (i==4) PORTA=decod(tab[i])|(1<<7);
    else PORTA=decod(tab[i]);
    DEL;
    }
    }
    //***********************************************************
    void main(void){
    DDRA=0xFF;
    PORTA=0x00;
    
    DDRC=0x3F;
    PORTC=0xFF;
    
    TCCR1B = (1<<CS12)|(1<<CS10)|(1<<WGM12);                  // /1024 regim CTC
    OCR1A = 976;
    TIMSK = 1<<OCIE1A;           //permitera intrerupeti ‚egalitate’
    sei();
    
    while (1){
    afis();   }   }
    //***********************************************************
    
    
    
    
    ISR(TIMER1_COMPA_vect)
    {         
                                                                           //secunde
    tab[0]++;
     if (tab[0]>9) { tab[0]=0;        
    tab[1]++;}
                                                   // minute
    if (tab[1]>5) {tab[2]++;                      
    tab[1]=0;}
     if (tab[2]>9) {tab[3]++;                     
    tab[2]=0; }
     if (tab[3]>5) {tab[4]++;                     
    tab[3]=0;}                                // ore
     if (tab[4]>4) {tab[5]++;                     
    tab[4]=0;}
     if (tab[5]>2) {tab[5]=0;}
    
    }



    p.s. Я обещал, что предыдущая - последняя тема, но я ошибся, не думал, что тут 2 разные программы будут. В этот раз 100 процентов последняя тема и пойду сдавать работы Ы)
    image.png.68035c08807b7f968a394732abff6cdb.png
     

    image.png

  5. 15 минут назад, x-revers сказал:

    Потом запустил MFile.

    Я собственно всё вроде понял, Но вот, что за MakeFile, я никак найти не могу программу или что это такое, Нашел только, что это утилита от Visual Studio или не то?
    Может есть что то подобное этому?

  6. 15 минут назад, Alexeyslav сказал:

    . Разберись с первой ошибкой

    redefinition of 'decod' или какая? 
    И как мне с ней разобраться, не я код писал)))) я даже не знаю что мне делать с этим, всегда код работал, а тут ошибки

  7. Дана следующая программа и следующая схема.
    После запуска, циклично выдает одни и те же ошибка и до такой степени, что ПК не выдерживает нагрузку и приходится принудительно закрывать программу ( когда обычно, запустил программу и она не продолжает запускаться, а сразу указывает на ошибку в коде, а тут она даже не останавливается )
    При создании проекта выбираю WINAvr!!!

     

    #include <avr\io.h>
    #include <avr\interrupt.h>
    #include <avr\delay.h>
    
    char data[]="04122013";
    int i=0;
    
    void test(void){
    int k=0;
    while (k<2){
    for (int i=0; i<6;i++){
    PORTC=0b00000000;
    PORTA=(1<<i);
    _delay_ms(100);
    }
    k++;}
    PORTA=0xFF;
    _delay_ms(200);
    PORTA=0x00; }
                                                                                                                         
    
    
    //Functia DECOD
    char decod(char c){
    switch (c){
    case '0': {c=0b00111111; break; }
    case '1': {c=0b00000110; break;       }
    case '2': {c=0b01011011; break;       }
    case '3': {c=0b01001111; break;       }
    case '4': {c=0b01100110; break;       }
    case '5': {c=0b01101101; break;       }
    case '6': {c=0b01111101; break; }
    case '7': {c=0b00000111; break; }
    case '8': {c=0b01111111; break;       }
    case '9': {c=0b01101111; break; }
    default: c=0x00;
    }
    return c;
    }
                                                                                                                          // Functia MAIN
    void main(void){
    
    // Waveform Generation Mode setarea regimului Normal
    TCCR0=(0<<CS00)|(1<<CS01)|(0<<CS02)|(0<<WGM01)|(0<<WGM00);  // CK/8
    TIMSK = (1<<TOIE0);                                   // permiterea intrerupeti in situatia de owerflov a TCNT0
    DDRA=0xFF;
    DDRC=0xFF;
    PORTA=0x00;
    PORTC=0x00;
    test();
    sei();                // permitera intreruperi
    while(1){  }
    }
    
    ISR(TIMER0_OVF_vect){
    if ((i<7) & (i>=0))
    i++;
    else i=0;
                PORTC=~(1<<i);
                if (i==1) PORTA=decod(data[i])|(1<<7);
                else if (i==3) PORTA=decod(data[i])|(1<<7);
                else      PORTA=decod(data[i]);
    }



    Я не могу остановить симуляцию, приходится закрывать принудительно.
    image.png.3efe10cf33974b0cdf3d5343cd8dbee1.pngimage.png.960ef8b72f00195ba9aac618598c34c7.pngZ

  8. 4 минуты назад, x-revers сказал:

    Там в комментариях написано что должно отображаться на дисплее: Error666

    Вы гений? я бы никогда не допер до этого))))) и почему нигде не было сказано, что нужно СС использовать..... Пойду завтра преподавателю предъявлю за это. Благодарю!

    ТЕМУ МОЖНО ЗАКРЫВАТЬ!
    p,s, ждите от меня еще 1 тему, мне последняя работа осталась

  9. 3 минуты назад, IMXO сказал:

    чел, вся работа с дисплеем описана всего на трех страницах. предлагаешь лично для тебя сюда сделать копипаст?

    ВСЁ, Я решил проблему, правда, оно всё равно странно работает и проблема в том, что я даже не знаю как она должна работать, но думаю, раз отображение есть, то уже хорошо))image.png.be08ecd4695100fe95a4eed3d72c49a5.png

  10. 4 минуты назад, IMXO сказал:

    Minimum Trigger Time

    Спасибо, я пробовал менять на 100мс, не изменялось ничего, поставил 1us и вроде заработал, но не так как нужно, сейчас буду играть с частотой еще))image.png.3a7066050a110a2d18eaf28a5f9b809c.png

     

    6 минут назад, x-revers сказал:

    7SEG-MPX8-CC-BLUE и всё у Вас получится.

    Поменялimage.png.00bc3e7d66008c385f20642bb34c40c0.png

  11. 2 минуты назад, IMXO сказал:

    называется Minimum Trigger Time , но что это и зачем по ссылке ты не прочитал , еще раз повторю:  тебе его читать лень это твои проблемы.

    Понимаете в чем проблема, вы мне не хотите говорить что это, а заставляете читать ВСЁ, ВЕСЬ ГАЙД, зачем? укажите направление и я пойду по нему......

  12. 4 минуты назад, IMXO сказал:

    гонят дерьмо по трубам, а быковать перед мамой с папой  будешь.

    Я тебе так ответил, потому что ты грубо ответил мне,  не нужно сейчас разжигать конфликт, попрошу правила соблюдать, вы всё таки модератор.
    И если я не 40 летний дяденька, не означает, что можно упоминать родителей, указывая тем самым, что мне меньше 10.

    6 минут назад, IMXO сказал:

    еще раз говорю читай там все разжевано и это тоже.

    ЧТО разжевано? почему не отображается на индикаторе ничего? ГДЕ, я не вижу где это написано.... Там целая книга, у меня времени нет всё прочесть, и вообще, мне это не нужно, мне закончить эту работу и сдать, ВСё, так трудно помочь что ли? Я понимаю, что все тут эксперты и за бесплатно помогаете, Но раз вы решились на это, почему я должен быть исключением? 
    Я не хочу изучать, мне просто нужно решить мою проблему и сдать, всё. А вы меня заставляете самостоятельно изучать всю программу, которая мне никогда не пригодится и потратить  на это уйму часов, которых у меня нет. Помимо протеуса, мне еще в Оркаде схемы создавать, Лайоуте.
    Я не виноват, что в этом семестре наше государство решило дать нам в изучение ПРОТЕУС.

  13. 51 минуту назад, Alexeyslav сказал:

    В той схеме нет смысла применять шины.

    Это вы скажите преподавателю, который выдавал мне задание.
    И вообще, почему все только осуждают меня, а как сделать - никто не говорит, это что, на столько сложно? да ту же ссылку на гайд кинуть....

  14. 12 часов назад, IMXO сказал:

    ну тогда не ленись, сходи на казус и почитай ЧаВо по протезу  ответ найдешь буквально на 2..3 странице.

    пересказывать его лениво.

    Хорошо, я посмотрел гайды, нашел Property Assigment Tools.
    Попробую сегодня обязательно. Надеюсь получится.
    И ждите от меня еще 1 тему)) потому что, там задание с 7ми сегментными, когда код запускаю, выдает циклично кучу ошибок, что аж система лагает и приходится принудительно закрывать программу.

  15. 26 минут назад, 100482 сказал:

    Ну ладно подсказкаproteus_atm16.jpg.477ea20cf08972ae4bd577550b46778c.jpg

    В чем принципиальное отличие твоей и моей картинки?

    В гайдах нашел Property Assigment Tools инструмент. Сегодня попробую его использовать, Надеюсь получится

  16. 8 часов назад, Alex сказал:

    Считаете, что у нас оно есть, для обучения Вас Протеусу ? :)
    По нему в сети просто море информации. На любой вопрос можно найти ответ. Главное - не лениться...

    Дам Вам совет. Скажите тому, кто Вам дал эти работы, что Вы не разбираетесь в Протеусе ничерта. За это двойку не поставят :)
    И пообещайте, что сделаете это всё в железе. Вы же сможете это сделать, не зря же учились ? Не правда ли ? :)

    Так именно таким способом и происходит обучение программы. В прошлом семестре Orcad Caoture, я так же ничего не знал, так же ходил и спрашивал( хотя она на много легче ) и сейчас я многим работы делаю за деньги.

    Я не прошу вас обучать всей программе, я просто прошу подсказать ту маленькую деталь, где и что мне нужно сделать, хотя бы название ее и дальше я уже сам пойду разбираться и изучать 

    8 часов назад, Alex сказал:

    Считаете, что у нас оно есть, для обучения Вас Протеусу ? :)
    По нему в сети просто море информации. На любой вопрос можно найти ответ. Главное - не лениться...

    Дам Вам совет. Скажите тому, кто Вам дал эти работы, что Вы не разбираетесь в Протеусе ничерта. За это двойку не поставят :)
    И пообещайте, что сделаете это всё в железе. Вы же сможете это сделать, не зря же учились ? Не правда ли ? :)

    Я вот серьезно не понимаю, мы со вчера оффтопим и засоряем тему, в место того, что бы просто сказать, что не так и как исправить, я уже понял, что проблема с подключением связана, но я не знаю как мне загуглить "как в соединении схемы добавить буквы" я не понимаю, потому что не учити.

    А сказать препода, что я не шарю в программе? Серьезно? Это то же самое, что сказать, чтотя не шарю в ассемблере, я его не учил и не буду, оно мне не нужно и в жизни вряд ли пригодится. Образование в Молдове у нас такое... Тем более в колледже мы первая группа с такой профессией, можно сказать на нас тестируют все

  17. 5 минут назад, IMXO сказал:

    какой смышленый ученик попался :i-m_so_happy:

    Простите, я сюда пришел с рассчетом, что мне объяснят хоть, как это сделать, куда нажать и т д. Мне буквально ещё 2 работы и все, больше я не потревожу глупыми вопросами

    4 минуты назад, IMXO сказал:

    ну тогда не ленись, сходи на казус и почитай ЧаВо по протезу  ответ найдешь буквально на 2..3 странице.

    пересказывать его лениво.

    Это конечно очень интересно, но времени нет изучать все это, мне были даны 6 работ, 4 из которых я смог выполнить, а 2 - нет. Сейчас нужно решить проблему с этой работой, а завтра я создам ещё 1 тему и уже пойду сдавать портфолио

  18. 6 минут назад, Alex сказал:

    Мысли вслух ?
    Или ждём появления экстрасенса ?

    Ну подключено же так как указано в задании ..... Или эти Сирии дорожки может не нужны?

    Только что, IMXO сказал:

    какой смышленый ученик попался :i-m_so_happy:

    Проблема в том, что в колледже дают, я делаю, причем единственный с группы, а спросить не у кого, приходится по форумам ходить, тут люди умнее

  19. Дано следующее задание, собрать электронную плату с 7 сегментным. Собрал, код ввёл, но на индикаторе почему то ничего не отображается, хотя всё подключено так же, как в задании.
    Код программы:

    Скрытый текст
    
    .include"m16def.inc"
    .dseg
    tab: .byte 8
    .cseg
    .org 0
      rjmp Reset
    .org 0x12
      rjmp Timer0_Ovf
    .org 0x28
    
    Reset:
                                              ; SP <- Ramend
                                   ldi r16, HIGH(RamEnd)
                                   out sph, r16
                                   ldi r16, LOW(RamEnd)
                                   out spl, R16
                                  
                                               ; A, C : output,Value = 0x00
                                   ldi r16, 0xFF
                                   out DDRA, r16
                                   out DDRC, r16
    
                                   ldi r16, 0x00
                                   out PortA, r16
                                   out PortC, r16
                                  
                                             ; Timer0_OVF, Prescaler = 8, OffSet = 100
                                   ldi r16, 0x01
                                   out TIMSK, r16
                                   ldi r16, 0x03
                                   out TCCR0, r16
                                   ldi r16, 0x80
                                   out TCNT0, r16
    
                                   rcall TabInit
    
                                   clr r17                  
    
                                   sei
    
                    Main:
                        rjmp Main
    
    reti
    
    ;-------------------------------------------------
    Timer0_Ovf:
       
                                   clr r16
                                   out portA, r16
    
    
                                   ldi r16, 200
                                   out TCNT0, r16
                                  
                                   lsl r17
                                   cpi r17, 0x00
                                  
                                   brne L2
                                   ldi r17, 0x01
                                  
                    L1:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b00000001
                                   brne L2
                                  
                                   ldd r16, y+0
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
                                  
                    L2:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b00000010
                                   brne L3
                                  
                                   ldd r16, y+1
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
                                  
                    L3:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b00000100
                                   brne L4
                                  
                                   ldd r16, y+2
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
    
                    L4:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b00001000
                                   brne L5
                                  
                                   ldd r16, y+3
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
    
                    L5:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b00010000
                                   brne L6
                                  
                                   ldd r16, y+4
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
                    L6:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b00100000
                                   brne L7
                                  
                                   ldd r16, y+5
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
                    L7:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b01000000
                                   brne L8
                                  
                                   ldd r16, y+6
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
                    L8:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
                                  
                                   cpi r17, 0b10000000
                                   brne L9
                                  
                                   ldd r16, y+7
                                   out PortA, r16
    
                                   mov r18, r17
                                   com r18
                                   out PortC, r18 
        L9:
    reti
    
    ;-------------------------------------------------
    TabInit:
                                   ldi yh, High(tab)
                                   ldi yl, Low(tab)
    
                                   ldi r16, 0b01111001 ; r16 <- 'E'
                                   st y+, r16
    
                                   ldi r16, 0b01010000 ; r16 <- 'r'
                                   st y+, r16
    
                                   ldi r16, 0b01010000 ; r16 <- 'r'
                                   st y+, r16
                                  
                                   ldi r16, 0b01011100 ; r16 <- '0'
                                   st y+, r16
                                  
                                   ldi r16, 0b01010000 ; r16 <- 'r'
                                   st y+, r16
                                  
                                   ldi r16, 0b01111101 ; r16 <- '6'
                                   st y+, r16
                                  
                                   ldi r16, 0b01111101 ; r16 <- '6'
                                   st y+, r16
                                  
                                   ldi r16, 0b01111101 ; r16 <- '6'
                                   st y, r16
                         ret 

     

    2 Картинки: 1 - моя работа, 2 - работа из задания.
    Может я ка кто не так подключаю ? и может эти буквы\цифры на соелинениях влияют на это?

    download.png

    4.png

  20. Было дано задание, что б схема производила вычисления и дан следующий код:
     

    
    .include "m16def.inc"
    .EQU const = 0x16  
    .cseg
    .org 0
    
    Idi R16,	LOW (RAMEND)
    OUT SPL,	R16
    LDI R17,	HIGH (RAMEND)
    OUT SPH,	R17
    //TEXT
    LDI R16,	0X00
    OUT DDRA,	R16
    OUT DDRB,	R16
    
    LDI R16,	0XFF
    OUT PORTA,	R16
    OUT PORTB,	R16
    //TEXT
    LDI R16,	0XFF
    OUT DDRC,	R16
    OUT DDRD,	R16
    
    LDI R16,	0X00
    OUT PORTC,	R16
    OUT PORTD,	R16
    main_loop:
    
    PUSH R16 
    PUSH R17	
    IN R16, PINA 
    IN R17, PINB
    
    rcall musub
    OUT PORTC, R16
    OUT PORTD, R17 
    POP R17 
    POP R16
    RJMP main_loop
    //*******
    musub:
    PUSH R0 
    PUSH R1 
    PUSH R18
    MUL R16,	R17
    
    
    	MOV R16,	R0
    	MOV R17,	R1
    	LDI R18,	const
    	ADD R16, 	R18
    	CLR R18 
    	POP R18 
    	POP R1 
    	POP R0	
    ret

    У преподавателя код работает, а у меня - нет. Что необходимо добавить\изменить\подключить. Объясните в подробностях, у меня 6 работ с этим Инклудом, но почему то оно не работает, что я не так делаю?

    download.png

    download2.png

×
×
  • Создать...