Haa o zaman şöle yapın..
[ORG 0]
jmp 07C0h:start ; Goto segment 07C0
start:
; Update the segment registers
mov ax, cs
mov ds, ax
mov es, ax
aski: ; Programı askiya al
call sleepprog
call voltajout
call sleepprog
call voltajstop
jmp aski
times 510-($-$$) db 0
dw 0AA55h
sleepprog:
.args:
or esi,esi
jz .toexit
mov edi,esi
xor eax,eax
xor ebx,ebx
xor edx,edx
.next_digit:
lodsb
sub al,'0'
jb .done
cmp al,9
ja .done
imul ebx,byte 10
add ebx,eax
adc edx,byte 0
jmps .next_digit
.done:
mov eax,ebx
test edx,edx
jnz .ok
test eax,eax
.toexit:
jz do_exit
.ok:
mov ebx,1
or ch,ch
jz .nousleep
; 1000000 yerine mikrosaniye bekleme değeri yazın
mov ebx, 1000000
div ebx
xchg eax,edx
mov ecx,edx
mov ebx,1000
mul ebx
mov edx,ecx
xchg eax,edx
jmps .set_sleep2
.nousleep:
mov cl,byte [esi - 1]
test cl,cl
jz .set_sleep
.s:
cmp cl,'s'
jz .set_sleep2
.m:
mov ebx,60
cmp cl,'m'
jz .set_sleep
.h:
mov ebx,60*60
cmp cl,'h'
jz .set_sleep
.d:
mov ebx,60*60*24
cmp cl,'d'
jz .set_sleep
cmp cl,'n'
jnz do_exit
xchg eax,edx
jmps .set_sleep2
.set_sleep:
mul ebx
.set_sleep2:
mov ebx,t
.nanosleep:
mov dword [ebx],eax
mov dword [ebx+4],edx
.do_sleep:
jmp .args
ret;
voltajout:
out 58f7H,FFFFH
; ya bunu salladım port numarası ne bilmiyorum bakmaya da
üşendim.
ret;
voltajstop:
out 58f7H,0H
; ya bunu salladım port numarası ne bilmiyorum bakmaya da
üşendim.
ret;
END
Bu IA86 kodunu nasm ile derleyin tabi önce düzenleme yapın... sonra rawwrite
ile diskete yazın veya dümdüz diskete dev sürücüsünden kopyalayın. Disketler
0AA55h imzasına sahipse boot edilebilir demektir .o zamanda disketteki veri
07C0h pointerinden boot olur.. Bu program 1 saniyede bir bir porta voltaj
yolluyor acıp kapıyor. O kısmı parametrik yapabilirsiniz. AT&T yazmakla
uraşmadım. Linux programı değil kendi başına birOS oldu ama ne bilim. Fikir
vermesi güzel olur. NOT kodu derlemeim iş yerindeyim..
-----Original Message-----
From: linux-programlama-bounces_at_liste.linux.org.tr
[mailto:linux-programlama-bounces_at_liste.linux.org.tr] On Behalf Of Rüştü
Derici
Sent: Tuesday, January 20, 2009 3:51 PM
To: Özgür yazılımlarla çeşitli dillerde yazılım geliştirme
Subject: [Linux-programlama] Re: usb servo motor kontrolü..
hehehe amaç zaten harici bir şey koymamak .. çok kolay bir mevzu değil
tabii ki .. donanım programlama konusunda birazcık derinleşmek ve
hatta belkide çekirdekte çözmek gerekebilir emin değilim..neticede bir
sinyal üreticisi gerekiyor ki cpu muz var ..ve zamanlayıcı olarakta
ram de çalıştıracak bir nanosleep() ile milisecond düzeyinde
beklemeler ile halledilebilir..harici bir chip bize bağlanabileceğimiz
bir yer veriyor ama arkada yaptıkları bizim bilgisayarda rahatlıkla
yapabileceğimiz işlemler neticede..
sorun usb üzerinden ürettiğimiz sinyalleri motora bir arayüz
olmaksızın ,direk verebilmek ..:)
hikaye burda karışıyor..
2009/1/20 Okan Akyüz <okanakyuz_at_okanakyuz.com>:
> Aslında eğer harici bir şey yapılacaksa PWM çevirici araya konabilir.
Basit
> devre şeması şöyle.
>
http://homepages.which.net/~paul.hills/Circuits/PwmGenerators/DigitalRegiste
> rCct.gif
>
>
> -----Original Message-----
> From: linux-programlama-bounces_at_liste.linux.org.tr
> [mailto:linux-programlama-bounces_at_liste.linux.org.tr] On Behalf Of Rüştü
> Derici
> Sent: Tuesday, January 20, 2009 11:38 AM
> To: Özgür yazılımlarla çeşitli dillerde yazılım geliştirme
> Subject: [Linux-programlama] Re: usb servo motor kontrolü..
>
> hmm çok mantıklı :D
> biraz hile karıştırmış oluyoruz işin içine ama gerçekten de
> olabilir..bir ses alıcısı ve vericisiyle uzaktan bile yapılabilir
> iletişim bu şekilde :)
>
>
>> Bugün (sanırım)listeye üye olmayan bir meslektaşımdan başka bir fikir
>> daha geldi. PWM üretmek için ses kartı da kullanılabilir. Bana son
>> derece mantıklı geldi.
>>
>> Caglar
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Tue 20 Jan 2009 - 15:19:12 EET