程式寫對,編譯到微控制器上是另一種結果,有想抓狂的感受嗎?

時間 2021-06-03 06:30:15

1樓:藍孩紙

借個樓也來問下,有沒有大佬知道為什麼. c檔案一模一樣但是匯出的hex檔案微控制器用不了。是不是編譯出了問題。要怎麼解決?

2樓:

多數時候,其實不一定是硬體的問題。說說我的經驗,首先,多準備幾套硬體,如果覺得硬體有問題馬上直接換硬體。可是,如果換了好幾個硬體都不能解決,那麼你得重來,一步一步拆解,定位,嘗試去解決問題。

我覺得嵌入式軟體開發,單元測試還是有用的,可以幫助你節約不少時間。

3樓:漫步田園

這種問題一般是硬體問題,有時候電路干擾,濾波電容等等都會影響程式的執行結果,甚至有時候Keil的編譯規則和普通C也不一樣。這種問題我經常遇到,多弄幾塊板子,排查的速度就很快了。

4樓:wenzi嵌入式軟體

既然編譯到微控制器上是另一種結果。原因無外乎有兩種可能,第一:硬體原因,檢查硬體,第二:

軟體原因,繼續debug程式。嵌入式就是這樣子啦,不像計算機程式設計一樣,計算機程式設計你永遠不可能在程式出錯時拆開電腦,用萬用表去測量主機板哪根線正不正常。這也正是嵌入式的樂趣所在,好好享受吧~

5樓:Co Yuan

首先你怎麼知道寫對了?其次就是這就是嵌入式迷人(勸退)之處:當隔壁的碼農已經愉悅的用PHP寫了個hello world時嵌農還在研究自己的程式是不是正常工作了。

微控制器為什麼能直接燒錄程式?

張浩 分幾種情況吧,有些可以通過isp協議之類操作flash讀寫暫存器來實現燒寫,有些通過內部固化的一小段程式來和上位機通訊,或者兩者都有。如果是支援ram執行的微控制器,比如stm32,則兩種方式都可以,但是前者的方式顯然慢得多。所以jlink,stlink之類都是先寫一小段程式到ram,再執行這...

微控制器小問題,程式與外界的交流?

假如A微控制器想要通過引腳訪問B微控制器,A是否可以通過定址來訪問B的記憶體的內容?如果可以,具體是rom裡面的還是ram裡面的? 微控制器是常見的叫法,如果按英文直接翻譯應該是 微控制器 打個比方 把微控制器想像成一台完整的PC。PC的硬碟和記憶體就對應MCU的ROM和RAM,PC的作業系統對應M...

將lua移植到微控制器可行嗎?

全村的希望 來晚了,已經成功將lua移植到STM32上執行,整個flash占用大約在200KB,RAM沒有統計,記憶體有60 KB作為記憶體池,供lua使用。你要問200Kb的lua支援哪些庫?lua自身帶的庫全部支援,包括基本庫 OS庫 數學庫 對table的支援和FatFS檔案系統的讀寫操作等等...