Отговори на тема  [ 6 мнения ] 
Динамична индикация 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Май 04, 2007 11:37 am
Мнения: 9
Мнение Динамична индикация
Някой може ли да ми обясни как става управлението на динична индикация (примерно 3-4 разрядна)? И по-точно как става преобразуването на двоичното число, което го имаме записано някаде и искаме да го изведем на индикацията. Изчетох и разгледах една камара неща, но така и не можах да схвана как става (май съм затъпял в последно време :?: :D ), а след като не мога да го разбера => не мога и да го направя, а ми трябва!!!!


Пон Юни 18, 2007 7:37 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Ами освен да ти кажа пак да прочетеш, защото по подробн от това и по разбрано няма как, да преповтарям чужди писания нямам време, ако имаш конкретен въпрос питай, едва ли и някой от другите ще пише за поне 4-ти път нещо подобно.


Пон Юни 18, 2007 8:42 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Май 04, 2007 11:37 am
Мнения: 9
Мнение 
Ясно ми е как работи, как трябва да се напише и т.н. Не мога да разбера преобразуването, например някаде в паметта имаме записано числото 1234 и част от кода не мога да разбера:

Цитат:
buffer[0]=segment[temp1/1000];
temp1=temp1%1000;
buffer[1]=segment[temp1/100];
temp1= temp1%100;
buffer[2]=segment[temp1/10];
buffer[3]=segment[temp1%10];


Цял ден се мъча да го проумея, но нещо ..... Май наи-добре ще е да го проспя една вечер и утре пак :)


Пон Юни 18, 2007 9:24 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Сеп 26, 2004 4:11 pm
Мнения: 3750
Местоположение: София
Мнение 
Престори се, че ти си процесора и изпълни кода вместо него. Така ще ти стане ясно.


Пон Юни 18, 2007 9:35 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Мар 01, 2007 7:33 pm
Мнения: 35
Мнение 
Мога да ти предложа следния вариянт : 1. Преобразуваш двоичното число в двоично-десетично -> примерно двоичното число 10100011 което е 163 десетично го преобразуваш в двоично-десетично което ще рече че на всяка цифра от десетичното число 163 ти отговаря съответен двоичен еквивалент 1->0001 , 6->0110, 3->0011, така цялото ти двоично-десетично число e 000101100011.
2. После си правиш подпрограма (говорим за асемблер) в която са подредени стойностите които трябва да се изведат ( да включат ) седемсегментните индикатори.
3. Преди за извикаш подпрограмата обаче четеш двоично-десетично число e 000101100011 по тетради. И така четеш най-младшата тетрада 3->0011. След това извикваш пoдрограмата tabl събираш програмният брояч PCL с числото 3->0011 което ще ти даде отместване в програмата до реда с числото 3. След като прочетеш тази стойност я извеждаш на порта където си включил индикатора. После му включваш и общият анод(катод) зависи какъв е индикатора и така последователно за всички цифри.

пример:
tabl
addwf PCL, f
retlw 01101111 ; светва ти числото 0 (01101111->това е само за пример )
retlw 01100000 ; светва ти 1
retlw 01100010 ; светва ти 2
retlw 01101000 ; светва ти 3
.
.
.
и .т.н до 9

Това е всичко. Надявам се че знаеш как се връзва динамична индикация :)
Успех!


Пон Юни 18, 2007 10:07 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Май 04, 2007 11:37 am
Мнения: 9
Мнение 
На човек явно не му трябва сън, а 2-3 бири да се сети как се дели с остатък. Направо ми идва де се ](*,)


Вто Юни 19, 2007 1:59 am
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 6 мнения ] 

Кой е на линия

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


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

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