solkirans
Üye
- Katılım
- 10 Kas 2008
- Mesajlar
- 31
- Puanları
- 1
- Yaş
- 40
Merhaba,
Birçok yerde okuduğum halde interrupt kullanımını hala anlayabilmiş değilim. Mantığını kavradım kullanılan kodları da az çok öğrendim, ama hangi kodun neye yaradığını öğrenemedim, mesela elimde bir kod örneğinde INTCON 0x20 ye eşitlenmiş, INTCON 8 bitlik değil midir? neden 10. biti 1 diğer bitleri 0 olan bir sayıya eşitlenmiş? Sizlerden ricam, hem benim, hem de benim gibi interruptı yeni öğrenmeye çalışanlar için basit bir kod örneği oluşturmanız. Örneğin şöyle birşey olabilir, bizim programımız 50 ms delay ile PORTD nin değerini 255 e kadar 1 er 1 er arttırsın, biz PORTB.F0 a bağlı bir butona basalım, ve bastığımız her 100 ms için PORTC nin değerini 1 arttırsın. Mesela program sayarken butona 1 saniye boyunca bastık program PORTC yi 10 yapıp saymaya kaldığı yerden devam etsin. Bu programı MikroC de yazabilirseniz gerçekten çok sevinirim. Böyle bir program, mantığı kavramak için yeteri kadar basit ve işlevsel diye düşünüyorum. Teşekkürler.
Birçok yerde okuduğum halde interrupt kullanımını hala anlayabilmiş değilim. Mantığını kavradım kullanılan kodları da az çok öğrendim, ama hangi kodun neye yaradığını öğrenemedim, mesela elimde bir kod örneğinde INTCON 0x20 ye eşitlenmiş, INTCON 8 bitlik değil midir? neden 10. biti 1 diğer bitleri 0 olan bir sayıya eşitlenmiş? Sizlerden ricam, hem benim, hem de benim gibi interruptı yeni öğrenmeye çalışanlar için basit bir kod örneği oluşturmanız. Örneğin şöyle birşey olabilir, bizim programımız 50 ms delay ile PORTD nin değerini 255 e kadar 1 er 1 er arttırsın, biz PORTB.F0 a bağlı bir butona basalım, ve bastığımız her 100 ms için PORTC nin değerini 1 arttırsın. Mesela program sayarken butona 1 saniye boyunca bastık program PORTC yi 10 yapıp saymaya kaldığı yerden devam etsin. Bu programı MikroC de yazabilirseniz gerçekten çok sevinirim. Böyle bir program, mantığı kavramak için yeteri kadar basit ve işlevsel diye düşünüyorum. Teşekkürler.