slm. BCB de Timer komutu ile DC motoru sürekli çalışmasını ve hızını ayarlamayı yardımlarınızla başardım. fakat sorunum Timer ile çalışmaya başlayan motoru durduramamak. Button2 ile durdurmaya ayarladım. butona basınca duruyor ama tekrar çalışmaya başlıyor. birde Button1 i çalıştırmaya ayarladım ama ben Button1 e basmadan çalışmaya başlıyor. Birçok kitap karıştırdım ama sorunumu çözemedim. yardımlarınız için teşekkürler. kodlar aşağıda. bu kodlardaki hatalarımı düzeltirseniz sevinirim.
} //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) { int T=100; int ton=CSpinEdit1->Text*T/100; int tof=T-ton;
-InitializeWinIo, ShutdownWinIo fonsiyonlarını sadece form oluşturulurken ve uygulama kapatılırken kullanın. burada her yerde kullanılmış özellikle de timer içerisinde bir anlamı yok.
BCB de;
form1 üzerine tıklayın, "object inspector" tan events sekmesine gelin. açılan listede "OnActivate" nin sağ tarafındaki boşluğa çift tıklayın
void __fastcall TForm1::FormActivate(TObject *Sender) { //portu açmak için gereken ifadeler }
ifadesini oluşturacak. bu fonksiyon form oluşturulurken çalıştırılır buraya paralel portu açmak için gerekli ifadeleri yazın.
aynı şekilde OnActivate nin altında "OnClose" göreceksiniz, sağ tarafındaki boşluğa çift tıklarsanız
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) { //portu kapatmak için gereken ifadeler }
ifadesini oluşturacak. bu fonksiyonda uygulama kapatılırken çalıştırılır paralel portu kapatmak için gereken ifadeleri buraya yazın.
-başlangıçta port değerleri sıfırlayıp ve timer ı disable ederseniz sizin isteğiniz dışında motor çalışmayacaktır. aynı şekilde OnActivate kısmına