Вверх ↑
Этот топик читают: Гость
Ответов: 125
Рейтинг: 0
#1: 2008-08-11 14:01:15 ЛС | профиль | цитата
Здравствуйте! Начал изучать HiAsm и часто в схемах , где нужно передать или проконтролировать простой сигнал (включено, выключено и т.д.) прямо руки чешутся применить аналоги "железных" тригеров, мультиплексоров, комутаторов... Жаль, но таких нет в библиотеке. Их можно собрать , но это уже не то. Может кто сделает сие чудо?
карма: 1

0
vip
#1.1контекстная реклама от партнеров
Разработчик
Ответов: 26067
Рейтинг: 2121
#2: 2008-08-11 14:04:59 ЛС | профиль | цитата
bestsponsor писал(а):
мультиплексоров, комутаторов...


Чем не мультиплексор и коммутатор



Add(ChanelToIndex,3155878,308,161)
{
Count=2
}
Add(IndexToChanel,13119131,308,224)
{
Count=2
Data=Null()
Point(Index)
}


------------ Дoбавленo:


bestsponsor писал(а):
тригеров


Чем тебе Switch не триггер
карма: 22

1
Голосовали:bestsponsor
Ответов: 125
Рейтинг: 0
#3: 2008-08-11 14:09:18 ЛС | профиль | цитата
Чем тебе Switch не триггер
Так тригеры разные бывают.
карма: 1

0
Разработчик
Ответов: 26067
Рейтинг: 2121
#4: 2008-08-11 14:23:50 ЛС | профиль | цитата
bestsponsor писал(а):
Так тригеры разные бывают


Ну и Switch может работать по-разному

А вот пример сдвигового регистра, чем сложна эта схемка, непонятно



Add(Math,3055978,252,168)
{
OpType=9
Op1=1
Op2=0
ResultType=0
Default=0
AngleMode=0
link(onResult,14979112:doBits,[])
}
Add(IntToBits,14979112,315,168)
{
Count=8
Data_0=Integer(0)
Data_1=Integer(1)
ZeroBits=0
}

карма: 22

1
Голосовали:bestsponsor
Ответов: 8888
Рейтинг: 823
#5: 2008-08-11 14:56:41 ЛС | профиль | цитата
bestsponsor, а вот и D-тригер
code_9677.txt
карма: 19

1
файлы: 1code_9677.txt [8.3KB] [568]
Голосовали:bestsponsor
Разработчик
Ответов: 26067
Рейтинг: 2121
#6: 2008-08-11 15:01:28 ЛС | профиль | цитата
Леонид, а что, проще никак нельзя
карма: 22

2
Голосовали:bestsponsor, Konst
Администрация
Ответов: 15294
Рейтинг: 1518
#7: 2008-08-11 15:11:32 ЛС | профиль | цитата
есть подозрение, что все, что можно придумать из простых элементов - давно уже придумано. Во всяком случае все новые идеи до сих пор заканчивались составлением эквивалентных схем на 2-х максимум 3-х стандартных элементах.
карма: 26
2
Голосовали:bestsponsor, Konst
Разработчик
Ответов: 26067
Рейтинг: 2121
#8: 2008-08-11 15:23:17 ЛС | профиль | цитата
Леонид, например так


Add(MainForm,9226556,210,308)
{
Left=20
Top=105
Caption="D-триггер"
link(onCreate,14177618:doEvent1,[])
}
Add(Button,1569101,210,266)
{
Left=15
Top=15
Caption="+1"
link(onClick,70847:doSwitch,[])
}
Add(Edit,8361309,553,210)
{
Left=85
Top=35
Text=""
}
Add(Edit,6602129,553,252)
{
Left=160
Top=35
Text=""
}
Add(Edit,6500786,553,294)
{
Left=225
Top=35
Text=""
DataType=2
}
Add(Button,15223584,210,357)
{
Left=15
Top=55
Caption="R"
Data=Integer(0)
link(onClick,14177618:doEvent2,[(272,363)(272,335)])
}
Add(Edit,16067180,553,336)
{
Left=290
Top=35
Text=""
}
Add(Switch,70847,301,266)
{
DataOn=Integer(1)
DataOff=Integer(0)
Point(doOn)
link(onSwitch,7887022:doOperation,[])
}
Add(IntToBits,11304570,469,210)
{
Count=4
Data_0=Integer(0)
Data_1=Integer(1)
link(onBit1,8361309:doText,[])
link(onBit2,6602129:doText,[(527,223)(527,258)])
link(onBit3,6500786:doText,[(527,230)(527,300)])
link(onBit4,16067180:doText,[(527,237)(527,342)])
}
Add(Math,7887022,385,266)
{
Op2=1
ResultType=0
Point(doClear)
link(onResult,12538198:doValue,[(429,272)(429,244)(373,244)(373,216)])
link(Op1,12538198:Value,[])
}
Add(Hub,14177618,301,322)
{
InCount=2
OutCount=4
link(onEvent1,70847:doReset,[(345,328)(345,304)(289,304)(289,279)])
link(onEvent2,12538198:doClear,[(359,335)(359,223)])
link(onEvent3,7887022:doClear,[(370,342)(370,279)])
link(onEvent4,8942780:doWork3,[(445,349)])
}
Add(HubEx,8942780,441,203)
{
link(onEvent,11304570:doBits,[])
}
Add(Memory,12538198,385,210)
{
link(onData,8942780:doWork2,[])
}
карма: 22

1
Голосовали:bestsponsor
Администрация
Ответов: 15294
Рейтинг: 1518
#9: 2008-08-11 15:26:59 ЛС | профиль | цитата
nesco, поставь пожалуста в настройках галку ОбщиеОптимизацияСохранять изменения, а то на код твоим схем страшно смотреть.
карма: 26
2
Голосовали:bestsponsor, Konst
Разработчик
Ответов: 26067
Рейтинг: 2121
#10: 2008-08-11 15:50:43 ЛС | профиль | цитата
Dilma писал(а):
ОбщиеОптимизацияСохранять изменения

Да, точно не стоит, а я все думал -- к чему она относится

------------ Дoбавленo:


Леонид, а вот так совсем просто, и именно по спаду



Add(MainForm,9226556,147,252)
{
Left=20
Top=105
Caption="D-триггер"
link(onCreate,14177618:doEvent1,[])
}
Add(Button,1569101,147,210)
{
Left=15
Top=15
Caption="+1"
link(onClick,70847:doSwitch,[])
}
Add(Edit,8361309,490,210)
{
Left=85
Top=35
Text=""
}
Add(Edit,6602129,490,252)
{
Left=160
Top=35
Text=""
}
Add(Edit,6500786,490,294)
{
Left=225
Top=35
Text=""
DataType=2
}
Add(Button,15223584,147,301)
{
Left=15
Top=55
Caption="R"
Data=Integer(0)
link(onClick,14177618:doEvent2,[(209,307)(209,279)])
}
Add(Edit,16067180,490,336)
{
Left=290
Top=35
Text=""
}
Add(Switch,70847,238,210)
{
DataOn=Integer(1)
DataOff=Integer(0)
Point(doOn)
link(onSwitch,14493658:doEvent,[])
}
Add(IntToBits,11304570,406,210)
{
Count=4
Data_0=Integer(0)
Data_1=Integer(1)
link(onBit1,8361309:doText,[])
link(onBit2,6602129:doText,[(464,223)(464,258)])
link(onBit3,6500786:doText,[(464,230)(464,300)])
link(onBit4,16067180:doText,[(464,237)(464,342)])
}
Add(Hub,14177618,238,266)
{
InCount=2
OutCount=3
link(onEvent1,70847:doReset,[(282,272)(282,248)(226,248)(226,223)])
link(onEvent2,12487721:doReset,[(328,279)(328,230)])
link(onEvent3,8942780:doWork3,[(389,286)])
}
Add(HubEx,8942780,385,203)
{
link(onEvent,11304570:doBits,[])
}
Add(Counter,12487721,343,210)
{
Max=15
link(onNext,8942780:doWork2,[])
}
Add(IndexToChanel,14493658,287,210)
{
link(onEvent1,12487721:doNext,[])
}

карма: 22

1
Голосовали:bestsponsor
Ответов: 9906
Рейтинг: 351
#11: 2008-08-11 15:56:04 ЛС | профиль | цитата
Dilma писал(а):
есть подозрение, что все, что можно придумать из простых элементов - давно уже придумано.

Можно сделать контейнер по типу StateFlowAutomate
И специальные элементы для его внутренностей - СОСТОЯНИЯ
На вход контейнера подается некое doAction, а в ответ на активном State-элементе возникает "невидимым макаром" onAction, которое пройдя через некоторую, вполне штатную, логику может сделать doSetState у некого другого State-элемента.
Ну и, естественно, соответствующее данному состоянию и данным в событии doAction, выходное из контейнера событие.

Можно рассматривать варианты как НКА, так и ДКА схемотехники
карма: 9

2
Голосовали:bestsponsor, Konst
Ответов: 5227
Рейтинг: 587
#12: 2008-08-11 15:58:01 ЛС | профиль | цитата
где нужно передать или проконтролировать простой сигнал (включено, выключено и т.д.)


похоже челу просто нужен debug

code_9678.txt
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
1
файлы: 1code_9678.txt [621B] [481]
Голосовали:bestsponsor
Разработчик
Ответов: 26067
Рейтинг: 2121
#13: 2008-08-11 16:02:47 ЛС | профиль | цитата
andrestudio писал(а):
похоже челу просто нужен debug

Не обязательно, возможно он просто хочет сделать визуализацию прохождения сигналов
карма: 22

1
Голосовали:bestsponsor
Ответов: 5227
Рейтинг: 587
#14: 2008-08-11 16:09:17 ЛС | профиль | цитата
Начал изучать HiAsm


помню я эти моменты
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
1
Голосовали:bestsponsor
Ответов: 16884
Рейтинг: 1239
#15: 2008-08-11 17:09:44 ЛС | профиль | цитата
andrestudio писал(а):
похоже челу просто нужен debug

Чел четко же написал :
bestsponsor писал(а):
Начал изучать HiAsm
(и, ну все не так как в Delphi !!!!!! )
значит - первый месяц будет поток рацпредложений.
а когда чуть-чуть изучит - поток иссякнет.

Сейчас CASE хочет A..Z (видел на форуме)
andrestudio писал(а):
помню я эти моменты


Все через это должны пройти.

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
1
Голосовали:bestsponsor
Сообщение
...
Прикрепленные файлы
(файлы не залиты)