Herhangi bir Raspberry Pi modelinde hız aşırtma gerçekten basit. Ancak hız aşırtma Ahududu Pi Pico daha da basit. Tek gereken iki satırlık MicroPython’dur ve Pico’nuz kolayca normal hızının iki katına çıkabilir ve başka bir programa ihtiyaç duymaz. en iyi CPU soğutucuları.
Bu şekilde bir Raspberry Pi Pico’yu 270 MHz’e hız aşırtacağız, 133 MHz’lik temel hızı iki katına çıkaracağız. Ardından, ne kadar hız aşırtabileceğimizi ve ardından CPU’nun ne kadar düşük hız aşırtmasını yapabileceğimizi test etmek için bir komut dosyası yazacağız.
Neden bir Raspberry Pi Pico’yu overclock edeyim ki? ZX Spectrum ve Commodore 64 gibi retro bilgisayarları taklit edebilir. MicroPython ile hız aşırtma, bize gözle görülür bir hız artışı sağlar ve pille çalışan bir projede kullanıyorsak, hız aşırtma bize daha uzun pil ömrü sağlayabilir.
Raspberry Pi Pico ile bu şekilde çalışacak, Piko K ve diğer birçok en iyi RP2040 tabanlı anakartlar MicroPython kullanırken. Panoları başka dillerde programlarken frekansı değiştirmek için başka yöntemler de vardır.
Bu Proje İçin İhtiyacınız Olacak
Ahududu Pi Pico veya Pico W veya MicroPython çalıştıran herhangi bir RP2040 tabanlı kart.
Raspberry Pi Pico’yu MicroPython İle Hız Aşırtma
1. MicroPython’un en son sürümünü yükleyin Pico’nuzda. Bunu henüz yapmadıysanız, takip edin bu kılavuzun üçüncü adımı nasıl olduğunu öğrenmek için
2. REPL’de makine modülünü içe aktarın Ve Raspberry Pi Pico’nun mevcut hızını kontrol edin. Döndürülen değer muhtemelen 125000000 Hertz (125 MHz) olacaktır. MicroPython’un bazı panoları veya sürümleri, varsayılan olarak biraz daha yükseğe ayarlanmış olabilir.
import machine
machine.freq()
3. Aynı komutu kullanarak, CPU hızını 270 MHz olarak ayarlayın.
machine.freq(270000000)
4. CPU hızını kontrol edin hız aşırtmanın çalıştığından emin olmak için. Döndürülen değer 270000000 Hertz (270 MHz) olmalıdır.
machine.freq()
Şu anda bu hız artışı geçicidir. Pico yeniden başlatıldığında, varsayılan hızına (genellikle 125 MHz) geri döner. Hız aşırtmayı korumak için, Pico her açıldığında hız aşırtmanın ayarlanması gerekir. Bu iki satırı herhangi bir MicroPython kodunun başına eklemek, kod çalıştırıldığında RP2040’ı istenen hıza hız aşırtacaktır.
import machine
machine.freq(SPEED IN HERTZ)
RP2040 Ne Kadar Zorlanabilir?
Hız aşırtmacılar her zaman biraz daha hızlı gitmek isterler ama silikon piyangosunda şansımızı nasıl belirleyebiliriz? Bunun için süreci küçük bir Python koduyla otomatik hale getirdik.
1. Tonny’de yeni bir dosya başlat ile önce iki modülün içe aktarılması. Makine, CPU hızını değiştirmek için kullanılır ve zaman, kodu hızlandırmak için kullanılır.
import machine
import time
2. Bir değişken, frekans oluşturun ve 270 MHz’i Hertz olarak kaydedin. 270 MHz’in iyi çalıştığını biliyoruz, bu yüzden bilinen bir çalışma hızından başlıyoruz. Amacınız RP2040’ın hızını düşürmekse, değeri buna göre azaltın.
freq = 270000000
3. Bir nesne oluşturun, hız yapın ve RP2040’ın mevcut hızını orada saklayın. Küçük bir matematik kullanarak, Hertz cinsinden döndürülen değer megahertz’e dönüştürülür, ardından bir ondalık basamağa yuvarlanır ve sonunda bir dizgeye dönüştürülür.
speed = str(round(machine.freq()/1000000,1))
4. Geçerli CPU hızını bir mesajın parçası olarak yazdırın. Mesaja yerleştirmek için hızı bir dizgeye dönüştürmemiz gerekiyordu.
print("The starting speed is",speed,"MHz")
5. Kullanıcıya, testin beş saniye içinde başlayacağını bildiren bir mesaj yazdırın ve ardından beş saniye bekleyin.
print("Starting the test in five seconds")
time.sleep(5)
6. Kodu sürekli olarak çalıştırmak için bir döngü oluşturun. Bir for döngüsü kullanabiliriz, ancak while True döngüsü kötü bir frekansa çarptığında çökecektir, dolayısıyla bir for döngüsünden hiçbir şey kazanamayız.
while True:
7. freq değişkenini kullanarak CPU hızını ayarlayın.
machine.freq(freq)
8. Bir nesne oluşturun, hız yapın ve RP2040’ın mevcut hızını orada saklayın. Biraz matematik kullanılarak Hertz’de döndürülen değer MegaHertz’e dönüştürülür, ardından bir ondalık basamağa yuvarlanır ve sonunda bir dizgeye dönüştürülür.
speed = str(round(machine.freq()/1000000,1))
9. Geçerli CPU hızını bir mesajın parçası olarak yazdırın. Mesaja yerleştirmek için hızı bir dizgeye dönüştürmemiz gerekiyordu.
print("The starting speed is",speed,"MHz")
10. Hızı 10 MHz artırın ve değeri frek’e kaydedin. += operatörü, freq = freq + 10000000 olarak çevrilir. Kodda daha kısa ve düzenlidir. Her ikisi de eşit derecede çalışır ve netlik için değiştirilebilir. +=, -= ile değiştirilebilir, böylece değerler en düşük CPU hızını bulmak için geri sayım yapar.
freq += 10000000
11. Kodu iki saniye duraklatın. Bu, döngü tekrarlanmadan önce değerleri okumamız için bize zaman verecektir.
time.sleep(2)
12. Kodu Raspberry Pi Pico’ya speedtest.py olarak kaydedin ve çalıştır’a tıklayın. En iyi hızımız 280 MHz idi, ancak şanslı olabilirsiniz.
Ayrıca hız aşırtmayı da test ettik (hızı her döngüde 10 MHz azaltarak) ve 10 MHz’e indirmeyi başardık; bu, uzun pil ömrü gerektiren projeler için güç çekişini önemli ölçüde azaltmalıdır. Gereken hassas ekipman seviyesi nedeniyle herhangi bir veri yakalayamadık.
Eksiksiz Kod Listesi
import machine
import time
freq = 270000000
speed = str(round(machine.freq()/1000000,1))
print("The starting speed is",speed,"MHz")
print("Starting the test in five seconds")
time.sleep(5)
while True:
machine.freq(freq)
speed = str(round(machine.freq()/1000000,1))
print("The current speed is",speed,"MHz")
freq += 10000000
time.sleep(2)