久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: stm32時鐘初始化配置問題 [打印本頁]

作者: 3lian    時間: 2014-3-1 01:18
標題: stm32時鐘初始化配置問題
stm32雖然已經用了一段時間了,但是一直用的都是教程里帶的程序,最近想自己寫寫代碼了,結果各種碰壁,一點小小的問題也能讓我忙活一兩天,真讓人郁悶,這里說一下stm32最基礎的時鐘配置上我遇到的麻煩。
時鐘配置我是使用RCC的庫函數完成的,基本思路就是打開8M的HSE時鐘,然后使用PLL倍頻9倍成72M的系統時鐘。但是看似簡單的函數寫好后片子一直工作不起來,我開始以為是在檢測時鐘是否啟動的while循環中給卡住了,還以為外部8M晶振不起振,后來經過一個下午的測試程序,竟然是配置PLL成9倍的函數出了問題,我把倍頻倍數調小就ok了。但是這沒道理啊。72M的時鐘在不到9倍的pll中根本沒法到達啊,我網上找了一下總算發現了一個我漏掉的細節,那就是rcc配置的時候還需要配置flash!
我網上原本找的代碼里有配置flash的庫函數調用,但我以為是其他應用所以就沒放在心上,結果就是在這里吃了大虧。我翻了一下技術手冊,有這么一段
這些選項應與閃存存儲器的訪問時間一起使用。等待周期體現了系統時鐘 (SYSCLK) 頻率與閃存訪問時間的關系:
0 等待周期,當 0 < SYSCLK < 24MHz
1 等待周期,當 24MHz < SYSCLK  ≤ 48MHz
2 等待周期,當 48MHz < SYSCLK  ≤ 72MHz
預取緩沖區(2個64位):在每一次復位以后被自動打開,由于每個緩沖區的大小(64位)與閃存的帶寬相同,因此只通過需一次讀閃存的操作即可更新整個緩沖區的內容。由于預取緩沖區的存在,CPU可以工作在更高的主頻
所以在初始化的時候還需要加上兩個函數
FLASH_SetLatency(FLASH_Latency_2);   
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
這樣系統可以工作在72M的時鐘下





歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美特黄 | 黄色片网站在线观看 | 成人免费在线视频观看 | 日本黄页视频 | av手机天堂网 | 久久五月婷 | 日韩一区二区三区四区 | 国产成人精品亚洲 | 99视频网站 | 中文字幕亚洲一区 | 国产91在线看| 中文字幕免费高清 | 日韩av在线免费看 | 国产午夜精品一区二区三区嫩草 | 成年人黄色网址 | 欧美成人精品激情在线观看 | 97人人插 | 日韩亚洲在线 | 免费成人毛片 | 免费a在线 | 久久亚洲欧美 | 免费观看全黄做爰大片视频美国 | 亚洲视频在线观看 | 久热在线 | 午夜视频免费 | 国产一级在线 | 在线一级片| 日韩在线成人 | 五月激情综合网 | 中国1级毛片 | 黄色一节片 | 人人综合 | 国产aⅴ爽av久久久久成人 | 国产综合亚洲精品一区二 | 麻豆一区二区 | 永久黄网站色视频免费观看w | 久久中文网 | 青青草在线观看视频 | 国产日韩欧美一区二区 | www.四虎.com | 日韩三级中文字幕 |