電子工程網(wǎng)

標題: STM32F411CEUx 能下載程序但不能執行 [打印本頁(yè)]

作者: 小融一號    時(shí)間: 2016-9-19 14:27
標題: STM32F411CEUx 能下載程序但不能執行


2016年度STM32全國巡回研討會(huì )將于9月7日至23日于全國12座城市舉辦,ST已邀請融創(chuàng )芯城作為電商平臺合作伙伴全程參與,歡迎小伙伴們蒞臨各大研討會(huì )的融創(chuàng )芯城展臺溝通交流。







前言

某客戶(hù)和我們反應他們制作回來(lái)的板子,能下載程序但是程序執行不了。


一、復現現象
硬件是:客戶(hù)自己設計制作的板子。上面是STM32F411CEUx的芯片軟件版本是Cube庫中的:基于問(wèn)題是能下載程序,但是代碼執行不了,所以自己用Cube生成了一個(gè)項目工程,主函數里面就是GPIO口的翻轉,正好客戶(hù)的板子上有LED燈,所以如果代碼被執行了,就可以看到燈的閃爍。

二、程序解讀
連接好調試工具STLINK

2.1/ IAR編譯環(huán)境

程序能夠正常下載,而且能夠執行,可以看到對應的LED燈的閃爍。

2.2/ Keil編譯環(huán)境

使用Keil的編譯環(huán)境下載,確實(shí)能夠下載,但是入口的地址是如下黃色的那行顯示所示,如果單步執行(F11)或全速運行(F5),程序始終在原位置不動(dòng)(0x1FFF4252),如果強制的將PC指針的值和SP的值修改為0x8000000與0x2000000,然后在點(diǎn)擊運行,則能夠跑到main()函數,再全速運行,能夠看到客戶(hù)板子上的LED燈的閃爍。

但是如果不強制修改PC和SP指針的值,則程序不執行。


所以問(wèn)題就變成為什么程序下載進(jìn)去后的地址是0x1FFF4252?0x1FFF4252又是什么地址呢?查閱相應的手冊,發(fā)現0x1FFF4252是處在了Systemmemory區域。


咨詢(xún)了客戶(hù),他們設計的是程序從Flashmemory區域啟動(dòng)的而且程序中沒(méi)有對Option Byte進(jìn)行配置,那問(wèn)題就很清楚了,用萬(wàn)用表測量了客戶(hù)板上的Boot0引腳的電平,發(fā)現電平不對,達到1.6V,這么高的電平可以被視為高電平了。


對照客戶(hù)的原理圖,原來(lái)Boot有上拉和下拉的電阻,焊接的時(shí)候將這兩個(gè)電阻都焊接上去了,去掉上拉電阻,使的BOOT0的引腳接地為低電平,再編譯下載進(jìn)入Keil的環(huán)境,程序能夠被正常執行了。問(wèn)題找到了。

對于最初的測試,硬件相同,軟件相同,然而IAR可以正常運行,KEIL卻不能執行,不解,可以IAR編譯環(huán)境的設置比較智能。

重要通知 - 請仔細閱讀
意法半導體公司及其子公司(“ST”)保留隨時(shí)對ST 產(chǎn)品和/ 或本文檔進(jìn)行變更、更正、增強、修改和改進(jìn)的權利,恕不另行通知。買(mǎi)方訂貨之前應獲取關(guān)于ST 產(chǎn)品的最新信息。ST 產(chǎn)品的銷(xiāo)售依照訂單確認時(shí)的相關(guān)ST 銷(xiāo)售條款。
買(mǎi)方自行負責對ST 產(chǎn)品的選擇和使用, ST 概不承擔與應用協(xié)助或買(mǎi)方產(chǎn)品設計相關(guān)的任何責任。
ST 不對任何知識產(chǎn)權進(jìn)行任何明示或默示的授權或許可。
轉售的ST 產(chǎn)品如有不同于此處提供的信息的規定,將導致ST 針對該產(chǎn)品授予的任何保證失效。
ST 和ST 徽標是ST 的商標。所有其他產(chǎn)品或服務(wù)名稱(chēng)均為其各自所有者的財產(chǎn)。
本文檔中的信息取代本文檔所有早期版本中提供的信息。



文章來(lái)源:微信公眾號  融創(chuàng )芯城







歡迎光臨 電子工程網(wǎng) (http://selenalain.com/) Powered by Discuz! X3.4
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页