|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 9:08 pm
| Автор |
Съобщение |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Работна температура
мм нещо не мога да схвана и на двете места порта ти стои в 1 .. може би някъде другаде го правиш в 0.
|
| Пет Юни 17, 2016 3:23 pm |
|
 |
|
tolstolob
Ранг: Ориентиран
Регистриран на: Вто Фев 06, 2007 2:45 am Мнения: 263
|
 Re: Работна температура
Тези са ясни, аз исках Бонго да покаже как стават работите 
|
| Пет Юни 17, 2016 3:37 pm |
|
 |
|
itso.t
Ранг: Форумен бог
Регистриран на: Чет Фев 03, 2005 2:21 am Мнения: 12765 Местоположение: София
|
 Re: Работна температура
Преди време, едно "старо куче" програмист ме посъветва, състоянията на порта да се записват в променлива, и да се работи с нея. Идеята била, ако по време да обработката, се промени състоянието на порта, да не стане мармалад - хем бутонът е натиснат, хем не е... Въжделенията на начинаещия... 
|
| Пет Юни 17, 2016 3:42 pm |
|
 |
|
timt
Ранг: Форумен бог
Регистриран на: Вто Ное 27, 2012 9:27 pm Мнения: 2011
|
 Re: Работна температура
Правилно забеляза, понеже съм го накачулил с други работи и това с порта го сложих допълнително за да се добие представа ама забравих да го мина на 0 
|
| Пет Юни 17, 2016 3:49 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Работна температура
ами ... при четенето зависи много от архитектурата, но и да го запишеш той бутона пак ще си смени състоянието и ти пак няма да разбереш  Проблема е ако искаш да я шифтнеш ту на ляво ту на дясно тогава вече може да си мислиш че ще шифтнеш 1-ца а то да се укаже че е станало на 0, но това само по себе си е write операция. С изходите нещата са ... споре кефа на дизайнера на чипа, варианти всякакви, много изискват RMW което си има своята специфика.
|
| Пет Юни 17, 2016 3:52 pm |
|
 |
|
itso.t
Ранг: Форумен бог
Регистриран на: Чет Фев 03, 2005 2:21 am Мнения: 12765 Местоположение: София
|
 Re: Работна температура
Заподозрях че не съм обяснил ясно. Имаш условия: ако бутонът е натиснат... прави нещо ако бутонът не е натиснат... прави друго нещо Ако работиш директно с порта, и състоянието му се междувременно се промени, може да се окаже че и двете условия са изпълнени. Ако е с променлива, докато не извърти условията, състоянието ще е едно и също. Новото състояние ще е смени, след изпълнение на горните. Това, така, между другото де. На тема програмиране, все още ми е малък и мек. Надявам се горното да не прозвучи като опит за поучаване на хората с опит... 
|
| Пет Юни 17, 2016 4:07 pm |
|
 |
|
woody
Ранг: Форумен бог
Регистриран на: Вто Юли 31, 2007 2:55 pm Мнения: 1792 Местоположение: София
|
 Re: Работна температура
Зависи какво пишеш/четеш. Когато пишеш и четеш latch регистъра (тоест входните буфери са на различен адрес) на практика имаш точно тая променлива. Изобщо съветите трябва да се приемат според контекста, а не универсално. EDIT: Сега разбрах какво си имал предвид - race condition. Това е друга бира, да. И не е свързано конкретно с програмиране.
|
| Пет Юни 17, 2016 4:08 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Работна температура
Ами не ти оства тов акоето казва woody, наиситна ти като четеш тка аили иначе четеш променлива, но понякога тя е директно свързана с порта понякога не толквоа. Въпросът е следният на порта имаш 0011 ти го четеш и записваш в променливата, тя става 0011, почваш да обработваш нещо, но той се променя на 0010 .. но ти така иили иначе вече изпълняваш като за 0011, т.е. дали си прочел директно порта или променливата няма голяма разлика ... или тук осъзнавам май за какво говориш, веднъж имаш if(bit_0) и по навътре в if имаш пак друг if(bit_0) което обаче може да е тотално грешно в това разклонение на if-a тъй като си влязъл при друго условие. Ако говориш за това е така, но аз избягвам подобни алгоритми, ако имам повтарящи проверки на едно и също винаги го присвоявам на променлива за да стане точно тов акеото е трябвало да стане в момента в който съм го изчел, в този аспект човека който ти го е казал е прав.
|
| Пет Юни 17, 2016 4:14 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
 Re: Работна температура
ми Ице, то пиниза е как да свършиш работата с малък и мек  такава е тенденцията с напредването на годините. с голям и корав (CPLD с броячи/интегратори) всеки го може. като бяхме млади го правихме кораво - кондензатори, диоди, RS тригери дори, че и сменяхме пози(ции) на елементите, за да се получи по-голямо задоволяване на ефекта. сега се размекнахме и всичко се прави с контролерчета. а примера с фреймуърковете е като да гледаш процеса по натискането в тубата.
|
| Пет Юни 17, 2016 4:16 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Работна температура
Контролера msp430g2231 спи, работи само спомагателния нискочестотен клок 32Khz. Като натиснеш копчето св пуска светодиода за 50000 такта. Ако натиснеш копчето 10-тина пъти (bounce/debounce ) светодиода ще стои включен за 50000 такта на спомагателния генератор от последното натискане. Процесора спи докато светодиода е изкючен, спи и докато светодиода е включен. За включването и изкючването на светодиода се грижи Capture/Compare блока към таймера, който иска много малка мощност. Този код е подходящ само за тази много специфична задача. Не трябва да се ползва, ако контролера има да прави и нещо друго.
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Съб Юни 18, 2016 1:10 am |
|
 |
|
timt
Ранг: Форумен бог
Регистриран на: Вто Ное 27, 2012 9:27 pm Мнения: 2011
|
 Re: Работна температура
Много готино си го измислил, интересен похвад. Аз си реших проблема като добавих флаговете и работи доста добре. Завъртял съм колоната но така ми трябва понеже си имам платката и се опитвам да я направя както съм си наумил.
|
| Съб Юни 18, 2016 1:47 am |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|