樹莓派配置文件 config.txt 說明
原文連線:http://elinux.org/RPi_config.txt
由於樹莓派並沒有傳統意義上的BIOS, 所以現在各種系統配置引數通常被存在”config.txt”這個文字檔案中.
樹莓派的config.txt檔案會在ARM核心初始化之前被GPU讀取.
這個檔案存在引導分割槽上的.對於Linux, 路徑通常是/boot/config.txt, 如果是Windows (或者OS X) 它會被識別為SD卡中可訪問部分的一個普通檔案.
如果想要編輯配置檔案, 請檢視介紹編輯樹莓派配置檔案.
你可以使用下列命令去獲取當前啟用的設定:
- 列出指定的配置引數.
- 例如: vcgencmd get_config arm_freq
vcgencmd get_config
- 列出所有已設定的整形配置引數(非零)
vcgencmd get_config int
- 列出所有已設定的字元型配置引數(非零)
vcgencmd get_config str
檔案格式
當值是整形時格式為”屬性=值”. 每行只指定一個引數. 註釋使用’#’井號作為一行開頭.
注意: 在新版的樹莓派裡每行都有#註釋, 要想使用該行引數只需移除#.
下面是示例檔案# Set stdv mode to PAL (as used in Europe) sdtv_mode=2
# Force the monitor to HDMI mode so that sound will be sent over HDMI cable
hdmi_drive=2
# Set monitor mode to DMT
hdmi_group=2
# Set monitor resolution to 1024x768 XGA 60Hz (HDMI_DMT_XGA_60)
hdmi_mode=16
# Make display smaller to stop text spilling off the screen
overscan_left=20
overscan_right=12
overscan_top=10
overscan_bottom=10
這是另一個示例檔案, 包含了各種功能的擴充套件文件.
記憶體
disable_l2cache 禁止ARM訪問GPU的二級快取. 相應的需要在核心中關閉二級快取. 預設為0
gpu_mem GPU記憶體以兆為單位. 設定ARM和GPU之間的記憶體分配. ARM會獲得剩餘所有記憶體. 最小設為16. 預設為64
gpu_mem_256 對於有256MB記憶體的樹莓派的GPU記憶體設定. 512MB的派請忽略. 會覆蓋gpu_mem. 最大設為192. 預設不設定
gpu_mem_512 對於有512MB記憶體的樹莓派的GPU記憶體設定. 256MB的派請忽略. 會覆蓋gpu_mem. 最大設為448. 預設不設定
disable_pvt 禁止每500毫秒調整一次RAM的重新整理率 (RAM溫度測量).
CMA – 動態記憶體分配
自2012年11月19號, 韌體和核心開始支援CMA, 這意味執行時可以動態管理ARM和GPU之間的記憶體分配. 這兒有相關config.txt示例.
cma_lwm 當GPU可用記憶體低於cma_lwm所設值, 將會向ARM請求一些記憶體.
cma_hwm 當GPU可用記憶體高於cma_hwm所設值, 將會向ARM釋放一些記憶體.
要啟用CMA,下面的引數需要新增到cmdline.txt檔案裡:coherent_pool=6M smsc95xx.turbo_mode=N
視訊
視訊模式選項
sdtv_mode 為複合訊號輸出設定視訊制式(預設為0)sdtv_mode=0 NTSC
sdtv_mode=1 日本版NTSC – 無基座
sdtv_mode=2 PAL
sdtv_mode=3 巴西版PAL – 副載波為525/60而不是625/50
sdtv_aspect 為複合訊號輸出設定寬高比(預設為1)sdtv_aspect=1 4:3
sdtv_aspect=2 14:9
sdtv_aspect=3 16:9
sdtv_disable_colourburst 禁止複合訊號輸出彩色副載波群. 圖片會顯示為單色, 但是可能會更清晰sdtv_disable_colourburst=1 禁止輸出彩色副載波群
hdmi_safe 使用”安全模式”的設定去嘗試用HDMI最大相容性啟動. 這和下面的組合是一個意思: hdmi_force_hotplug=1, config_hdmi_boost=4, hdmi_group=2, hdmi_mode=4, disable_overscan=0hdmi_safe=1
hdmi_ignore_edid 如果你的顯示器是天朝產的垃圾貨, 允許系統忽略EDID顯示資料hdmi_ignore_edid=0xa5000080
hdmi_edid_file 當設為1時, 將會從edid.dat檔案中讀取EDID資料,而不是從顯示器.hdmi_edid_file=1
hdmi_force_edid_audio 偽裝成支援所有音訊格式播放, 即便報告不支援也允許通過DTS/AC3.hdmi_force_edid_audio=1
hdmi_force_edid_3d 偽裝成全部CEA模式都支援3D, 即便EDID並不支援.hdmi_force_edid_3d=1
avoid_edid_fuzzy_match 禁止去模糊匹配EDID中描述的模式. 即便遮蔽錯誤, 也選用匹配解析度和最接近幀率的標準模式.avoid_edid_fuzzy_match=1
hdmi_ignore_cec_init 不傳送初始化啟用源訊息. 避免在重啟時使(啟用CEC)TV結束待機並切換頻道.hdmi_ignore_cec_init=1
hdmi_ignore_cec 偽裝成TV不支援CEC. 將不會支援任何CEC功能.hdmi_ignore_cec=1
hdmi_force_hotplug 偽裝成HDMI熱插拔訊號被檢測到, 出現HDMI顯示器被接入hdmi_force_hotplug=1 即便沒有檢測到HDMI顯示器也要使用HDMI模式
hdmi_ignore_hotplug 偽裝成HDMI熱插拔訊號沒有被檢測到, 出現HDMI顯示器未接入hdmi_ignore_hotplug=1 即便檢測到HDMI顯示器也要使用混合模式
hdmi_pixel_encoding 強制畫素編碼模式. 預設情況下會使用EDID請求的模式, 所以不需要修改.hdmi_pixel_encoding=0 default (limited for CEA, full for DMT)
hdmi_pixel_encoding=1 RGB limited (16-235)
hdmi_pixel_encoding=2 RGB full ( 0-255)
hdmi_pixel_encoding=3 YCbCr limited (16-235)
hdmi_pixel_encoding=4 YCbCr limited ( 0-255)
hdmi_drive 選擇HDMI還是DVI模式hdmi_drive=1 DVI模式 (沒聲音)
hdmi_drive=2 HDMI模式 (如果支援並已啟用將有聲音輸出)
hdmi_group 設定HDMI型別
不指定組, 或者設為0, 將會使用EDID報告的首選組.hdmi_group=1 CEA
hdmi_group=2 DMT
hdmi_mode 設定在CEA或DMT格式下的螢幕解析度當hdmi_group=1 (CEA)時,下列值有效
hdmi_mode=1 VGA
hdmi_mode=2 480p 60Hz
hdmi_mode=3 480p 60Hz H
hdmi_mode=4 720p 60Hz
hdmi_mode=5 1080i 60Hz
hdmi_mode=6 480i 60Hz
hdmi_mode=7 480i 60Hz H
hdmi_mode=8 240p 60Hz
hdmi_mode=9 240p 60Hz H
hdmi_mode=10 480i 60Hz 4x
hdmi_mode=11 480i 60Hz 4x H
hdmi_mode=12 240p 60Hz 4x
hdmi_mode=13 240p 60Hz 4x H
hdmi_mode=14 480p 60Hz 2x
hdmi_mode=15 480p 60Hz 2x H
hdmi_mode=16 1080p 60Hz
hdmi_mode=17 576p 50Hz
hdmi_mode=18 576p 50Hz H
hdmi_mode=19 720p 50Hz
hdmi_mode=20 1080i 50Hz
hdmi_mode=21 576i 50Hz
hdmi_mode=22 576i 50Hz H
hdmi_mode=23 288p 50Hz
hdmi_mode=24 288p 50Hz H
hdmi_mode=25 576i 50Hz 4x
hdmi_mode=26 576i 50Hz 4x H
hdmi_mode=27 288p 50Hz 4x
hdmi_mode=28 288p 50Hz 4x H
hdmi_mode=29 576p 50Hz 2x
hdmi_mode=30 576p 50Hz 2x H
hdmi_mode=31 1080p 50Hz
hdmi_mode=32 1080p 24Hz
hdmi_mode=33 1080p 25Hz
hdmi_mode=34 1080p 30Hz
hdmi_mode=35 480p 60Hz 4x
hdmi_mode=36 480p 60Hz 4xH
hdmi_mode=37 576p 50Hz 4x
hdmi_mode=38 576p 50Hz 4x H
hdmi_mode=39 1080i 50Hz reduced blanking
hdmi_mode=40 1080i 100Hz
hdmi_mode=41 720p 100Hz
hdmi_mode=42 576p 100Hz
hdmi_mode=43 576p 100Hz H
hdmi_mode=44 576i 100Hz
hdmi_mode=45 576i 100Hz H
hdmi_mode=46 1080i 120Hz
hdmi_mode=47 720p 120Hz
hdmi_mode=48 480p 120Hz
hdmi_mode=49 480p 120Hz H
hdmi_mode=50 480i 120Hz
hdmi_mode=51 480i 120Hz H
hdmi_mode=52 576p 200Hz
hdmi_mode=53 576p 200Hz H
hdmi_mode=54 576i 200Hz
hdmi_mode=55 576i 200Hz H
hdmi_mode=56 480p 240Hz
hdmi_mode=57 480p 240Hz H
hdmi_mode=58 480i 240Hz
hdmi_mode=59 480i 240Hz H
H表示16:9比例(正常是4:3).
2x表示雙倍畫素(即更高的畫素時脈, 每個畫素重複兩次)
4x表示四倍畫素(即更高的畫素時脈, 每個畫素重複四次)當hdmi_group=2 (DMT)時,下列值有效
警告: 根據這篇帖子所述
畫素時脈是有限制的, 最高支援的模式是1920x1200 @60Hz with reduced blanking.
hdmi_mode=1 640x350 85Hz
hdmi_mode=2 640x400 85Hz
hdmi_mode=3 720x400 85Hz
hdmi_mode=4 640x480 60Hz
hdmi_mode=5 640x480 72Hz
hdmi_mode=6 640x480 75Hz
hdmi_mode=7 640x480 85Hz
hdmi_mode=8 800x600 56Hz
hdmi_mode=9 800x600 60Hz
hdmi_mode=10 800x600 72Hz
hdmi_mode=11 800x600 75Hz
hdmi_mode=12 800x600 85Hz
hdmi_mode=13 800x600 120Hz
hdmi_mode=14 848x480 60Hz
hdmi_mode=15 1024x768 43Hz DO NOT USE
hdmi_mode=16 1024x768 60Hz
hdmi_mode=17 1024x768 70Hz
hdmi_mode=18 1024x768 75Hz
hdmi_mode=19 1024x768 85Hz
hdmi_mode=20 1024x768 120Hz
hdmi_mode=21 1152x864 75Hz
hdmi_mode=22 1280x768 reduced blanking
hdmi_mode=23 1280x768 60Hz
hdmi_mode=24 1280x768 75Hz
hdmi_mode=25 1280x768 85Hz
hdmi_mode=26 1280x768 120Hz reduced blanking
hdmi_mode=27 1280x800 reduced blanking
hdmi_mode=28 1280x800 60Hz
hdmi_mode=29 1280x800 75Hz
hdmi_mode=30 1280x800 85Hz
hdmi_mode=31 1280x800 120Hz reduced blanking
hdmi_mode=32 1280x960 60Hz
hdmi_mode=33 1280x960 85Hz
hdmi_mode=34 1280x960 120Hz reduced blanking
hdmi_mode=35 1280x1024 60Hz
hdmi_mode=36 1280x1024 75Hz
hdmi_mode=37 1280x1024 85Hz
hdmi_mode=38 1280x1024 120Hz reduced blanking
hdmi_mode=39 1360x768 60Hz
hdmi_mode=40 1360x768 120Hz reduced blanking
hdmi_mode=41 1400x1050 reduced blanking
hdmi_mode=42 1400x1050 60Hz
hdmi_mode=43 1400x1050 75Hz
hdmi_mode=44 1400x1050 85Hz
hdmi_mode=45 1400x1050 120Hz reduced blanking
hdmi_mode=46 1440x900 reduced blanking
hdmi_mode=47 1440x900 60Hz
hdmi_mode=48 1440x900 75Hz
hdmi_mode=49 1440x900 85Hz
hdmi_mode=50 1440x900 120Hz reduced blanking
hdmi_mode=51 1600x1200 60Hz
hdmi_mode=52 1600x1200 65Hz
hdmi_mode=53 1600x1200 70Hz
hdmi_mode=54 1600x1200 75Hz
hdmi_mode=55 1600x1200 85Hz
hdmi_mode=56 1600x1200 120Hz reduced blanking
hdmi_mode=57 1680x1050 reduced blanking
hdmi_mode=58 1680x1050 60Hz
hdmi_mode=59 1680x1050 75Hz
hdmi_mode=60 1680x1050 85Hz
hdmi_mode=61 1680x1050 120Hz reduced blanking
hdmi_mode=62 1792x1344 60Hz
hdmi_mode=63 1792x1344 75Hz
hdmi_mode=64 1792x1344 120Hz reduced blanking
hdmi_mode=65 1856x1392 60Hz
hdmi_mode=66 1856x1392 75Hz
hdmi_mode=67 1856x1392 120Hz reduced blanking
hdmi_mode=68 1920x1200 reduced blanking
hdmi_mode=69 1920x1200 60Hz
hdmi_mode=70 1920x1200 75Hz
hdmi_mode=71 1920x1200 85Hz
hdmi_mode=72 1920x1200 120Hz reduced blanking
hdmi_mode=73 1920x1440 60Hz
hdmi_mode=74 1920x1440 75Hz
hdmi_mode=75 1920x1440 120Hz reduced blanking
hdmi_mode=76 2560x1600 reduced blanking
hdmi_mode=77 2560x1600 60Hz
hdmi_mode=78 2560x1600 75Hz
hdmi_mode=79 2560x1600 85Hz
hdmi_mode=80 2560x1600 120Hz reduced blanking
hdmi_mode=81 1366x768 60Hz
hdmi_mode=82 1080p 60Hz
hdmi_mode=83 1600x900 reduced blanking
hdmi_mode=84 2048x1152 reduced blanking
hdmi_mode=85 720p 60Hz
hdmi_mode=86 1366x768 reduced blanking
overscan_left 左側跳過畫素數
overscan_right 右側跳過畫素數
overscan_top 頂部跳過畫素數
overscan_bottom 底部跳過畫素數
framebuffer_width 控制檯framebuffer寬度, 以畫素為單位. 預設是顯示器寬度減去超出掃描.
framebuffer_height 控制檯framebuffer高度, 以畫素為單位. 預設是顯示器高度減去超出掃描.
framebuffer_depth 控制檯framebuffer深度, 以位為單位. 預設是16位. 8位也是有效的, 但是預設RGB調色盤會導致螢幕不可讀. 24位效果更好 ,但是2012年6月15號發現有顯示混亂問題. 32位沒有混亂問題, 但是需要設定framebuffer_ignore_alpha=1, 並在2012年6月15號發現顏色顯示錯誤.
framebuffer_ignore_alpha 設為1將禁用alpha通道. 僅對32位有效.
test_mode 允許在啟動時做聲音與影象測試.
disable_overscan 設為1將禁用超出掃描.
config_hdmi_boost 設定HDMI介面的訊號強度. 預設為0. 如果出現HDMI干擾問題可以試試設為4. 最大為7.
display_rotate 順時針旋轉螢幕顯示 (預設為0) 或者翻轉顯示.display_rotate=0 正常
display_rotate=1 90度
display_rotate=2 180度
display_rotate=3 270度
display_rotate=0x10000 水平翻轉
display_rotate=0x20000 垂直翻轉
注意: 旋轉90度或者270度額外需要GPU記憶體, 所以在GPU只分配到16M的時候旋轉會無效. 可能的原因:
Crashes my RPI before Linux boots if set to “1” — REW 20120913.
哪些值對我的顯示器有效?
你的HDMI顯示器可能只支援一部分設定. 想要找出支援哪些設定, 可以使用下面的方法.
把輸出格式設為VGA 60Hz (hdmi_group=1 hdmi_mode=1) 然後啟動樹莓派
輸入下列命令可以獲取CEA支援模式的列表/opt/vc/bin/tvservice -m CEA
輸入下列命令可以獲取DMT支援模式的列表/opt/vc/bin/tvservice -m DMT
輸入下列命令可以獲取當前設定狀態/opt/vc/bin/tvservice -s
輸入下列命令可以從顯示器獲取更多詳細資訊/opt/vc/bin/tvservice -d edid.dat /opt/vc/bin/edidparser edid.dat
使用預設HDMI模式去排除問題時, edid.dat檔案同樣會提供資訊
許可的解碼器
你可以購買繫結樹莓派CPU序列號的證書來使用額外的硬體解碼器.
decode_MPG2 可開啟MPEG-2硬解的序列號.decode_MPG2=0x12345678
decode_WVC1 可開啟VC-1硬解的序列號.decode_WVC1=0x12345678
可在多臺樹莓派間共享SD卡的序列號. 同時最多8個證書.decode_XXXX=0x12345678,0xabcdabcd,0x87654321,...
啟動
disable_commandline_tags 在啟動核心前, 通過改寫ATAGS (0x100處的記憶體)來阻止start.elf
cmdline (string) 命令列引數. 可用來代替cmdline.txt檔案
kernel (string) 載入指定名稱的核心映象檔案啟動核心. 預設為”kernel.img”
kernel_address 載入kernel.img檔案地址
kernel_old (bool) 為1時, 從0x0處載入核心
ramfsfile (string) 要的載入的ramfs檔案
ramfsaddr 要載入的ramfs檔案地址
initramfs (string address) 要載入的ramfs檔案及其地址 (就是把ramfsfile+ramfsaddr合併為一項).
注意: 這項使用與其他項不同的語法 – 不要在這用”=”號. 正確示例:initramfs initramf.gz 0x00800000
device_tree_address 載入device_tree的地址
init_uart_baud 初始化uart波特率. 預設為115200
init_uart_clock 初始化uart時序. 預設為3000000 (3Mhz)
init_emmc_clock 初始化emmc時序. 預設為100000000 (100MHz)
boot_delay 在載入核心前在start.elf等待指定秒. 總延遲=1000 * boot_delay + boot_delay_ms. 預設為1
boot_delay_ms 在載入核心前在start.elf等待指定毫秒. 預設為0
avoid_safe_mode 如果設為1, 將不以安全模式啟動. 預設為0
超頻
注意: 設定任何引數來超頻樹莓派都會在晶片中永久的儲存一個保修位, 用於檢測你的樹莓派是否超頻過. 如果裝置超頻過保修就無效了. 自2012年9月19號,你可以自由超頻而不影響保修了.
最新的核心有一個預設開啟”ondemand”調速器的cpu頻率核心驅動. 未開啟超頻並不會有任何影響. 一旦你開超頻, ARM頻率將隨處理器負載而變化. 只有在調速器需要時才會使用非預設值. 你可以使用*_min配置選項來調整最低值, 或者使用force_turbo=1來禁用動態超頻.
當晶片溫度達到85°C執行時會關閉超頻及超壓, 直到冷卻. 即使在25°C環境溫度下使用最高設定, 也不要讓溫度達到極限.
超頻選項
引數 說明
arm_freq ARM頻率,以MHz為單位. 預設為700
gpu_freq 同時設定core_freq, h264_freq, isp_freq, v3d_freq. 預設為250
core_freq GPU處理器核心頻率,以MHz為單位. 由於GPU要驅動二級快取, 對ARM效能會造成影響. 預設為 250
h264_freq 視訊硬解模組頻率,以MHz為單位. 預設為250
isp_freq 影象感測器管道模組頻率,以MHz為單位. 預設為250
v3d_freq 3D模組頻率,以MHz為單位. 預設為250
avoid_pwm_pll 不要把鎖相環用在PWM音訊. 這會略微降低模擬音訊的效果. 空閒的鎖相環允許從剩餘GPU獨立設定core_freq, 這將會比超頻有更多許可權. 預設為0
sdram_freq SDRAM頻率,以MHz為單位.預設為400
over_voltage ARM/GPU核心電壓調節. [-16,8]用0.025V步進等同於[0.8V,1.4V]. 預設為0 (1.2V). 只有在指定 force_turbo或current_limit_override時 (會設定保修位), 才允許數值在6以上
over_voltage_sdram 同時設定over_voltage_sdram_c, over_voltage_sdram_i, over_voltage_sdram_p
over_voltage_sdram_c SDRAM控制器電壓調節. [-16,8]用0.025V步進等同於[0.8V,1.4V]. 預設為0 (1.2V)
over_voltage_sdram_i SDRAM I/O電壓調節. [-16,8]用0.025V步進等同於[0.8V,1.4V]. 預設為0 (1.2V)
over_voltage_sdram_p SDRAM phy電壓調節. [-16,8]用0.025V步進等同於[0.8V,1.4V]. 預設為0 (1.2V)
force_turbo 關閉動態CPU頻率驅動及下面的最小設定. 開啟h264/v3d/isp超頻. 預設為0. 會設定保修位.
initial_turbo 在啟動時以指定秒數 (上限為60) 或者以CPU頻率來開啟急速模式. 如果已經超頻, 能對SD卡錯誤問題有改善. 預設為0
arm_freq_min 設定動態時序的最小arm_freq. 預設為700
core_freq_min 設定動態時序的最小core_freq. 預設為250
sdram_freq_min 設定動態時序的最小sdram_freq. 預設為400
over_voltage_min 設定動態時序的最小over_voltage. 預設為0
temp_limit 過熱保護. 當晶片達到指定溫度就把時序和電源切換會預設值. 把此值設高於預設值將影響保修. 預設為85
current_limit_override 當設為”0x5A000020″時, 禁止SMPS限流保護. 在超頻過高無法重啟時設定此項會有所幫助. 會設定保修位.
force_turbo模式force_turbo=0
開啟對ARM核心,GPU核心和SDRAM的動態時序及電壓. 在忙的時候ARM頻率會提高到”arm_freq”並在閒的時候降低到”arm_freq_min”. “core_freq”, “sdram_freq”和”over_voltage”的行為都一樣. “over_voltage”最高為6 (1.35V). h264/v3d/isp部分的非預設值將被忽略.force_turbo=1
關閉動態時序, 因此所有頻率和電壓會保持高值. h264/v3d/isp GPU部分的超頻也會開啟, 等同於設定”over_voltage”為8 (1.4V).
時序關係
GPU核心, h264, v3d和isp共享一個鎖相環, 因此需要相關聯的頻率. ARM, SDRAM和GPU有各自獨有的鎖相環, 因此可以設為沒有關聯的頻率.
當設了”avoid_pwm_pll=1″下列設定就沒必要了.pll_freq = floor(2400 / (2 * core_freq)) * (2 * core_freq)
gpu_freq = pll_freq / [偶數]
有效的gpu_freq會自動四舍五到到最接近的整型偶數, 所以請求core_freq為500, gpu_freq為300,算一下2000/300 = 6.666 => 6 ,結果就是333.33MHz.
已測試過的超頻設定
下表顯示了一些成功的超頻嘗試, 這些可以指導你進行超頻. 這些設定不一定能在每臺樹莓派上都成功, 並且會縮短高通晶片的壽命.
arm_freq gpu_freq core_freq h264_freq isp_freq v3d_freq sdram_freq over_voltage over_voltage_sdram
800
900 275 500
900 450 450
930 350 500
1000 500 500 6
1050 6
1150 500 600 8
這是一個表明Hynix產的RAM在超頻上表現不如三星產的RAM的報告.
超頻時SD卡使用
設定SD卡: http://elinux.org/RPi_Easy_SD_Card_Setup
超頻時使用6速或10速的SD卡(SHDC/SHDX)會導致在一些天后樹莓派讀取SD卡檔案系統不穩定.
不管是ext4 , NTFS 或其他格式都一樣.
不管是哪家SD卡生產商都一樣.
不管是哪個版本的樹莓派都一樣.
這與SD卡容量無關 – 實際驗證出現在16G或更大的SD卡上.
! 關鍵是你何時讓樹莓派功率不足,也就是低於樹莓派的基本設定需求 !
popcornmix發表在https://github.com/raspberrypi/linux/issues/280:
“超頻會導致SD卡錯誤.這情況往往是與板子相關(就是說有些樹莓派超頻後SD卡沒事,有些不行).
我認為通常都是core_freq導致的SD卡問題(和arm_freq,sdram_freq比)”
在2013年4月寫這個提示的時候在樹莓派官方論壇上一共有137個有關於SD的問題, 絕大部分與超頻有關.
如果你使用6速或10速SD卡, 還想要樹莓派穩定執行: 不要嘗試超頻,否則很可能會丟失資料
監測溫度及電壓
要檢測樹莓派的溫度, 看: /sys/class/thermal/thermal_zone0/temp
要檢測樹莓派當前的頻率, 看: /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
要檢測樹莓派電源裝置的電壓, 你需要一個萬用電表, 接上電源測試點, 或者擴充套件頭.
通常來說要保持核心溫度低於70度, 電壓高於4.8V. (另外請注意, 不要用那種便宜的USB電源, 那基本上是4.2V的, 這是因為那本來就是為充3.7V鋰電池設計的, 根本無法為樹莓派提供穩定的5V電壓). 此外, 用散熱片也是個好主意, 尤其是你把樹莓派裝到了殼子裡. 一個合適的散熱器是自帶不乾膠柵格狀的 14x14x10 mm 散熱片.
超頻穩定性測試
大多數超頻問題立馬就會出現啟動問題, 但還是會隨時間而出現檔案系統問題. 這是一個對系統,特別是SD卡進行壓力測試的指令碼. 如果指令碼執行完成, dmesg中不提示任何錯誤, 你做的超頻設定可能會比較穩定.
如果系統崩潰了, 在重啟時按住shift鍵, 這會臨時性關閉所有超頻. 同樣, 注意SD卡問題通常由core_freq造成,不要在raspi-config預設的高速(950 MHz)和超速(1 GHz)裡來個大跳越(從250 MHz飛到500 MHz).#!/bin/bash
#Simple stress test for system. If it survives this, it's probably stable.
#Free software, GPL2+
echo "Testing overclock stability..."
#Max out the CPU in the background (one core). Heats it up, loads the power-supply.
nice yes >/dev/null &
#Read the entire SD card 10x. Tests RAM and I/O
for i in `seq 1 10`; do echo reading: $i; sudo dd if=/dev/mmcblk0 of=/dev/null bs=4M; done
#Writes 512 MB test file, 10x.
for i in `seq 1 10`; do echo writing: $i; dd if=/dev/zero of=deleteme.dat bs=1M count=512; sync; done
#Clean up
killall yes
rm deleteme.dat
#Print summary. Anything nasty will appear in dmesg.
echo -n "CPU freq: " ; cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
echo -n "CPU temp: " ; cat /sys/class/thermal/thermal_zone0/temp
dmesg | tail
echo "Not crashed yet, probably stable."