Отговори на тема  [ 126 мнения ]  Отиди на страница Предишна  1, 2, 3, 4, 5, 6, 7 ... 9  Следваща
Регулиране на температура 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Съб Сеп 25, 2004 12:32 pm
Мнения: 8407
Местоположение: София
Мнение 
didofen написа:
сори, ама таз табулация нещо не ще :(
. съдба



Като пишеш код, го ограждаш с "code" таг, или натискаш бутона горе. :)

Код:
int main()
{
   int w = 300;
   int h = 300;
    int frames = 3;
   int i, n;
   unsigned int pixel = 0xFF0000FF;
   FILE*f;

   f = fopen("test.rgba", "w+");
   
   if (f == NULL)
   {
      printf("error: %d\n", errno);
      return -1;
   }

    for(n=0; n<frames; n++)
       for(i=0; i<w*h; i++)
          fwrite(&pixel, sizeof(unsigned int), 1, f);

   fclose(f);
}


Вто Сеп 14, 2010 2:13 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Вто Юни 27, 2006 11:13 am
Мнения: 381
Местоположение: Варна
Мнение 
о, мерси много
който може го може


Вто Сеп 14, 2010 4:35 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Юли 28, 2010 1:34 pm
Мнения: 58
Мнение 
didofen, повече от прекрасно обяснение. Безкрайно ти благодаря за което. Най-после разбрах за какво иде реч :idea:

Cekins написа:
Този регистър няма нищо общо с външния резет. Той е само за индикация какво се е случило "преди малко". При определени условия (BOR, POR и др) се сетват определени битове. За да резетваш проца отвън трябва просто във фюзовете да е разрешен резета, ако въобще е възможно, щото има чипове дето си е твърдо резет - No other options :)

Ясноо, значи не ми върши никаква работа тоз регистър. Ще видим на живо какво ще се получи, и аз реших, че заради симулатора нещо не иска да се ресетва.

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


Чет Сеп 16, 2010 9:48 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 20, 2005 12:02 pm
Мнения: 9136
Местоположение: Разград
Мнение 
pickit2 е твоя избор - само не си вземай на sirius pcb клонинга - щото не стига че е скъп ами и е куц.


Чет Сеп 16, 2010 1:39 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Юли 28, 2010 1:34 pm
Мнения: 58
Мнение 
Ще мина тези дни в комета да видя дали го имат. Дано не объркам нещо. От това което видях в нета всичките ги пишат като някакви клонинги, ама ще гледам да не е на долупосочените.

Иначе вижте ми главната програма

Код:

MAIN_loop
      BCF    PORTC,RC7      ;turn of transistor
Start      bsf   SSPCON1,SSPEN      ;Turn_on SPI
Again      btfss   SSPSTAT,BF      ;Check BF
      goto   Again
      movf   SSPBUF,w
      movwf   TEMP_H         
Reagain      btfss   SSPSTAT,BF      ;Check BF
      goto    Reagain   
      movf   SSPBUF,w
      movwf   TEMP_L
      bcf   SSPCON1,SSPEN      ;Turn_off SPI
      btfsc   TEMP_H,7      ;Check TEMP_H,7bit
      goto   MAIN_loop
      btfsc   TEMP_L,7
      bsf   STATUS,C
      btfss   TEMP_L,7
      bcf   STATUS,C
      rlf   TEMP_H,w
      movwf   NumH
      call   LCD_Decimal      
      subwf   TEMP_ZAD,w
      btfss   STATUS,C
      goto   MAIN_loop
      bsf   PORTC,RC7
      goto    Start
      END


С други думи: Първо спирам транзистора след което почвам да проверявам за данните от SPI, като първия 1 байт го бутам в регистър TEMP_H, втория в TEMP_L и от онова софтуерно SPI което видях ми дойде идеята да взема старшия бит от TEMP_L и чрез флага C да го изместя в TEMP_H като ми изчезва бита за знака, тъй като той не ми трябва, понеже ще меря само положителни температури. А в програмата е направено ако случайно дойде отрицателна да я игнорира, тоест да продължи да си чака положителната. И така си сравнява зададената и измерената и си взима решенията какво да спира или да пуска транзистора.
Някакви забележки? :D


Съб Сеп 18, 2010 10:57 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Юли 28, 2010 1:34 pm
Мнения: 58
Мнение 
И друго да питам :roll:
В Mplab-a като искам да си билдна програмата и ми дава като грешка имената на всичките ми етикети. Пише ми примерно Symbol not previously defined (TEMP_ZAD) :? Не мога да разбера какво иска. Някой да има представа на какво се дължи това?


Нед Сеп 19, 2010 10:42 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Май 01, 2009 4:01 pm
Мнения: 1438
Мнение 
glupcho написа:
И друго да питам :roll:
В Mplab-a като искам да си билдна програмата и ми дава като грешка имената на всичките ми етикети. Пише ми примерно Symbol not previously defined (TEMP_ZAD) :? Не мога да разбера какво иска. Някой да има представа на какво се дължи това?


Ако името на етикета е TEMP_ZAD а ти препращаш към temp_zad ще даде грешка. МПлаб прави разлика между малки и големи букви относно етикетите. Другата причина е някаква грешка/разлика в имената. Провери как си изписал името на етикета и дали го пишеш точно по същия начин след това.


Нед Сеп 19, 2010 11:28 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Юли 28, 2010 1:34 pm
Мнения: 58
Мнение 
За съжаление не е от това :evil:
Всичките са проверени и поправени с копи и пейст. Някакъв друг проблем има, но не мога да се усетя каква е причината. Иначе гледам една друга програма с подобни да не кажа същите етикети, но там всичко върви безпроблемно :(


Нед Сеп 19, 2010 12:48 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Май 01, 2009 4:01 pm
Мнения: 1438
Мнение 
Като гледам кода, който си пуснал за пример, TEMP_ZAD е променлива а не етикет. Ако е така трябва да се декларира в началото.


Нед Сеп 19, 2010 1:31 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Юли 28, 2010 1:34 pm
Мнения: 58
Мнение 
Това в случая - да. То е поправено вече. Но всички останали имена на подпрограмите( за LCD-то, прекъсванията, абе всички), както и за мое учудване регистрите на SPI не ги разпознава и ми дава, че не са дефинирани. А е абсолютно сигурно, че са написани правилно.


Нед Сеп 19, 2010 1:37 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Мар 08, 2006 2:12 pm
Мнения: 2017
Местоположение: Котел
Мнение 
Написани правило къде и от къде си ги видял че имената им са така? Не видях include за ползвания процесор?


Нед Сеп 19, 2010 2:05 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Юли 28, 2010 1:34 pm
Мнения: 58
Мнение 
Има си инклудето, то това горе е само част от програмата ми :)

ОПРАВИХ ГО!!! Да ви кажа ако случайно на някой му се случи така - при мене причинате беше че END-a ми е на средата на програмата. И от него надолу нищо не признава. При подреждането съм забравил да го върна накрая и .... така стана. :idea:


Нед Сеп 19, 2010 2:26 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Вто Юни 27, 2006 11:13 am
Мнения: 381
Местоположение: Варна
Мнение 
ами енд-а точно това означава - край на програмата
задаването на всички променливи става преди да се използват


Пон Сеп 20, 2010 1:14 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Юли 28, 2010 1:34 pm
Мнения: 58
Мнение 
Хора, здравейте отново!

Аз да ви се оплача. Вчера ходих да си купувам елементите и се оказа, че тоя сензор TC77 го имат само за SMD монтаж, потърсих и по интернет за други корпуси, ама Ц :( На мен ми трябва да е PTH, та сега май ще трябва го сменям с тоя DS1820.
УЖАС, всичко пак отначало. Ако имате нещо примерно като програма за такъв сензор ще е добре дошло, както и всякакви съвети и насоки за работата с него и подкарването му.


Чет Окт 07, 2010 12:30 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 25, 2005 11:41 am
Мнения: 1680
Мнение 
glupcho написа:
Хора, здравейте отново!

Аз да ви се оплача. Вчера ходих да си купувам елементите и се оказа, че тоя сензор TC77 го имат само за SMD монтаж, потърсих и по интернет за други корпуси, ама Ц :( На мен ми трябва да е PTH, та сега май ще трябва го сменям с тоя DS1820.
УЖАС, всичко пак отначало. Ако имате нещо примерно като програма за такъв сензор ще е добре дошло, както и всякакви съвети и насоки за работата с него и подкарването му.



Е, да не е голям зор 8 крачета да ги направиш със жички. Ако ти е малко разстоянието между крачетата, обърни ги през един нагоре. Само внимавай, защото носват по едно огъване.


Чет Окт 07, 2010 12:49 pm
Профил ICQ WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 126 мнения ]  Отиди на страница Предишна  1, 2, 3, 4, 5, 6, 7 ... 9  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 7 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни