Обява

Свий
Няма добавени обяви.

C компилатор за PIC16F87/88?

Свий
X
 
  • Филтър
  • Час
  • Покажи
Изчисти всичко
нови мнения

  • #31
    До: C компилатор за PIC16F87/88?

    С 10 милса се справят без проблем. Поне до тук нямам грижи. Единствено проходите между слоевете трябва да са малце по-големи Виж сайта им. Там си пише минимални изисквания. Поне според мен се справят с тях.

    Колкото до домашни условия - еми играл съм си с всичко. Дори в момента имам фотолак, дето се маже, а не се пръска, барабар с проявителя за него - отново мажещ се. Ама все ми се случва да правя двуслойни, та не го докарвам до там. В разни английски сайтове и продават намазани платки, при това никак не скъпо. Май само това още не съм пробвал - готовите намазани платки.
    Долните твари, измислили перверзията Erlang, имат "много здраве" от мен. Болезнено!

    Коментар


    • #32
      До: C компилатор за PIC16F87/88?

      Решението е взето!

      Честотомера с PIC12F509, PIC12F635 или PIC12F683, в зависимост от това на кое от трите ще му стигне акъла. Външен 20Mhz кварц. Програмиране върху самата платка през ICSP.

      Дисплея с PIC16F87, с вътрешния му генератор. Пак програмиране по ICSP, върху платката.

      Платките са готови и днес ще ги пратя за правене. Междувременно ще ми се дотътри и програматора.

      Порблема с компилаторите е решен. От асемблера придобих някаква представа до толкова, че да мога да си доизкусуря изхода от C-то, ако стане нужда.
      Долните твари, измислили перверзията Erlang, имат "много здраве" от мен. Болезнено!

      Коментар


      • #33
        До: C компилатор за PIC16F87/88?

        Асемблера трябв да се ползва само да се види какви неща твори компилатора или при необходимост да се пише на асемблер в C сорса.
        Случва се като видя какво е компилирано и не ми хареса, да променя сорса на C и след компилация вече да ми харесва. Хич не е добра идея да се правят промени в асемблерния листинг и после да се асемблира. Ако правилно съм разбрал че искаш това да правиш - забрави...

        Коментар


        • #34
          До: C компилатор за PIC16F87/88?

          Не. Просто, след като видя листинга ще мога да преценя дали ми изнася, или да напиша конкретния пасаж или подпрограма на асемблер, още в C сорса.

          Иначе, и за другото съм наясно - има си особености, които трябва да знам. Писал съм асемблер, макар и не за това, и съм наясно че тия неща трябва да ги знам, за да си позволя да пипам асемблерския изход от C-то. Не мисля обаче че засега такава интервенция ще ми се наложи. Изтърбушвал съм C++ компилатор да работи с мои библиотеки вместо с оригиналните си. Правил съм и собствен DOS екстендер, с който конкретното C++ работеше, ако знаеш за какво иде реч. Накратко, ако тръгна да се занимавам, ще се оправя някак, някога.
          Последно редактирано от sparkybg; 01-07-09, 14:38.
          Долните твари, измислили перверзията Erlang, имат "много здраве" от мен. Болезнено!

          Коментар


          • #35
            До: C компилатор за PIC16F87/88?

            Ясно, няма какво да те учиме значи

            Коментар


            • #36
              До: C компилатор за PIC16F87/88?

              Това е сорса за честотомера. Процесора е PIC12F629, вързан на външен 20Mhz кварц. Сигнала е взет от изхода на операционник през съпротивление 10 килоома, ограничен до 5 волта с ценер, и е вързан на краче GP1:

              #include <pic.h>
              #define _XTAL_FREQ 20000000 //chestota na kvarca
              #define MIN_FREQ 5 //minimalna chestota, koiato shte se izmerva
              #define MAX_PERIOD ((_XTAL_FREQ/4)/MIN_FREQ) //maksimalen period, otgovariasht na minimalnata chestota
              #define MAX_OVF (MAX_PERIOD/65536) //maksimalen broj prepalvania na broiacha na timer 1, za minimalnata chestota
              __CONFIG(UNPROTECT&BOREN&MCLRDIS&PWRTEN&WDTDIS&HS);
              static union {
              unsigned long Cnt;
              struct {
              unsigned char LL;
              unsigned char LH;
              unsigned char HL;
              unsigned char HH;
              } B;
              } T1Cnt;

              static unsigned char OvfCnt,GP1State;
              static unsigned long Period,Frequency;
              void interrupt Tmr1Ovf(void){
              ++OvfCnt;
              PIR1=0;
              GIE=1;
              }
              void SendToDisplay(void){
              }
              void main(void){
              OPTION=0b10001000; //inicializacia
              TRISIO=0b00000010;
              VRCON=0;
              PIE1=0b00000001;
              WPU=0;
              IOCB=0;
              CMCON=0b00000111;
              PIR1=0;
              INTCON=0b11000000;
              T1Cnt.Cnt=0; //nulirane na tekushtoto
              for(;; ){
              SendToDisplay; //izobraziavane na tekushto
              TMR1L=0; //nulirane na taimera
              TMR1H=0;
              OvfCnt=0;
              T1CON=1; //puskane na tajmera
              GP1State=GPIO1;
              for(;OvfCnt<=MAX_OVF; ){ //chakane za promiana na signala
              if(GP1State!=GPIO1){
              TMR1L=0; //startirane na izmervaneto
              TMR1H=0;
              OvfCnt=0;
              for(;OvfCnt<=MAX_OVF; ){ //chakane za promiana na signala - pyrvi poluperiod
              if(GP1State=GPIO1){
              for(;OvfCnt<=MAX_OVF; ){ //chakane za promiana na signala - wtori poluperiod
              if(GP1State!=GPIO1){
              T1CON=0; //izkliuchvane na taimera
              T1Cnt.B.LL=TMR1L; //zapis na tekushtia period
              T1Cnt.B.LH=TMR1H;
              T1Cnt.B.HL=OvfCnt;
              T1Cnt.B.HH=0;
              break;
              }
              }
              break;
              }
              }
              break;
              }
              }
              }
              }

              Някой, нещо? Види ми се всичко е наред. Компилира се без грешка. Все пак, като първа програма на C за тоя процесор, и имайки предвид ръждясването ми, защото отдавна не съм писал, може и нещо да не съм предвидил.
              Долните твари, измислили перверзията Erlang, имат "много здраве" от мен. Болезнено!

              Коментар


              • #37
                До: C компилатор за PIC16F87/88?

                Добре де, нещо не вдявам. От какъв зор ще слагаш два контролера след като работата може да я свърши един?

                Какъв ти е компилатора?
                Защото това static доста компилатори го слагат в флаш-а а не в рам-а на контролера.

                И това : SendToDisplay; мисля че трябва да изглежда по следния начин SendToDisplay();.

                Работя с тия:
                http://selectrapcb.com/
                Внимавайте с тия. Миналата година за пръв и последен път поръчвах там. От 20 платки 2 еднакви нямаше всяка с уникални габаритни размери... Едни отвори ги бяха пробили на ръка, защото дрил машината им нямала такъв размер свредла...
                Последно редактирано от Tisho; 05-07-09, 12:07.

                Коментар


                • #38
                  До: C компилатор за PIC16F87/88?

                  Ценера не е ли малко бавнодействащ за ограничител? И на какво напрежение е? Аз лично предпочитам бърз обратен диод към захранващата шина или резисторен делител, но може и да ми е остаряла информацията за ценерите.

                  Сорса не съм го гледал, щото още от началото се отказах от C за 8битовите и не съм достатъчно в час, че да давам мнение
                  О879 342 54О Не си пъхайте пръстите където ви падне, не са чак толкова много...

                  Коментар


                  • #39
                    До: C компилатор за PIC16F87/88?

                    Първоначално публикуван от Tisho Преглед на мнение
                    Добре де, нещо не вдявам. От какъв зор ще слагаш два контролера след като работата може да я свърши един?
                    Модули, дето ще мога да ползвам и за друго. Просто ми е по-усобно в случая, а и двата контролера са евтини.

                    Първоначално публикуван от Tisho Преглед на мнение
                    Какъв ти е компилатора?
                    Защото това static доста компилатори го слагат в флаш-а а не в рам-а на контролера.
                    Hi-Tech C e компилатора. Ръждясал съм и съм ги забравил. В началото имах някои проблеми с компилацията.

                    Първоначално публикуван от Tisho Преглед на мнение
                    И това : SendToDisplay; мисля че трябва да изглежда по следния начин SendToDisplay();.
                    Нe e ли все тая? Поне компилатора не дава никаква грешка. И това съм забравил, всъщност. Със скобите поне е по-четливо, така че със сигурност е по-правилно, дори и да работи така. Взимам си бележка.



                    Първоначално публикуван от Tisho Преглед на мнение
                    Внимавайте с тия. Миналата година за пръв и последен път поръчвах там. От 20 платки 2 еднакви нямаше всяка с уникални габаритни размери... Едни отвори ги бяха пробили на ръка, защото дрил машината им нямала такъв размер свредла...
                    Аз досега нямам основания за оплаквания. Поръчвал съм общо взето 6-7 отделни платки, по 3-4 броя всяка. Първите със затапяне, останалите никел-злато. Никакви оплаквания по отношение на качеството нямам до тук.
                    Долните твари, измислили перверзията Erlang, имат "много здраве" от мен. Болезнено!

                    Коментар


                    • #40
                      До: C компилатор за PIC16F87/88?

                      Първоначално публикуван от tef4o Преглед на мнение
                      Ценера не е ли малко бавнодействащ за ограничител? И на какво напрежение е? Аз лично предпочитам бърз обратен диод към захранващата шина или резисторен делител, но може и да ми е остаряла информацията за ценерите.

                      Сорса не съм го гледал, щото още от началото се отказах от C за 8битовите и не съм достатъчно в час, че да давам мнение
                      Че то по-бързо май няма. TVS-ите са си мощни ценери, а сработват за пикосекунди. Единствения лимитиращ фактор на ценера е капацитета му и индуктивността на изводите му. Обаче, ценера е вързан към маса, барабар с капацитета си. Честотите са максимум 300 херца - тук проблеми по отношение на бързодействие принципно няма. Делител също става, разбира се. И може да се направи, като вместо ценера са сложи резистор с подходящо съпротивление. Само че ценера е по-добра защита, понеже при претоварване дава накъсо, а ресизтора отваря.

                      Предвид че е вързан през 10 колоома, ценер на 4.7 волта върши перфектна работа.
                      Последно редактирано от sparkybg; 07-07-09, 09:34.
                      Долните твари, измислили перверзията Erlang, имат "много здраве" от мен. Болезнено!

                      Коментар


                      • #41
                        До: C компилатор за PIC16F87/88?

                        Първоначално публикуван от sparkybg Преглед на мнение
                        Че то по-бързо май няма. TVS-ите са си мощни ценери, а сработват за пикосекунди. Единствения лимитиращ фактор на ценера е капацитета му и индуктивността на изводите му. Обаче, ценера е вързан към маса, барабар с капацитета си. Честотите са максимум 300 херца - тук проблеми по отношение на бързодействие принципно няма. Делител също става, разбира се. И може да се направи, като вместо ценера са сложи резистор с подходящо съпротивление. Само че ценера е по-добра защита, понеже при претоварване дава накъсо, а ресизтора отваря.

                        Предвид че е вързан през 10 колоома, ценер на 4.7 волта върши перфектна работа.
                        Пиковете имат диод на I/O-тата - един от маса към към извода и един от извода към захранване.
                        Така че споко. Ценера ти стига.
                        Последно редактирано от sparkybg; 07-07-09, 09:34.

                        Коментар


                        • #42
                          До: C компилатор за PIC16F87/88?

                          Първоначално публикуван от Tisho Преглед на мнение
                          Пиковете имат диод на I/O-тата - един от маса към към извода и един от извода към захранване.
                          Така че споко. Ценера ти стига.
                          Имат я, оня ден брах ядове с тях. Такъв красив latch ми направи, че ми отидоха 2 часа, докато се усетя
                          Е, то това си беше изцяло моя грешка де, не обвинявам никого.

                          Спарки, явно аз съм поизостанал с инфото, ще се четат пдф-и .
                          О879 342 54О Не си пъхайте пръстите където ви падне, не са чак толкова много...

                          Коментар


                          • #43
                            До: C компилатор за PIC16F87/88?

                            Колкото до платикте, ето ги:








                            И тоя път нямам оплаквания от качеството, поне по мойте критерии.
                            Прикачени файлове
                            Долните твари, измислили перверзията Erlang, имат "много здраве" от мен. Болезнено!

                            Коментар

                            Активност за темата

                            Свий

                            В момента има 1 потребители онлайн. 0 потребители и 1 гости.

                            Най-много потребители онлайн 8,787 в 16:37 на 21-06-23.

                            Зареждам...
                            X