找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1498|回復: 2
打印 上一主題 下一主題
收起左側

用KEIL5聯(lián)調 proteus 寫完代碼,點擊圖中按鈕運行報錯,請問該怎么處理?謝謝!

[復制鏈接]
跳轉到指定樓層
樓主
ID:889708 發(fā)表于 2021-3-8 20:56 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:798631 發(fā)表于 2021-3-9 08:51 | 只看該作者
對于很多初學者來說,學習的基礎不扎實的居多,因此很多人懷疑懷疑這將是學習單片機開發(fā)不可逾越的大山,對未來沒有足夠的信心?偟膩碚f,知識儲備不是學習單片機開發(fā)的必備條件,但龐大的知識儲備對學習單片機開發(fā)大有助益。

       這個問題,其實和“英語不好,可以學習編程嗎?”同屬一類。不可否認,英語基礎好對于學習編程確實是很有幫助的,但它并不是學習編程不可跨越的鴻溝。事實上,這并非無法克服。
       注意,基礎薄弱并不等于 0 基礎,如果是這樣,那在開發(fā)設計的過程中,確實需要適當?shù)貝貉a;如果數(shù)學基礎很差(例如僅有小學功底),就需要在學習數(shù)據(jù)結構的過程中,有意識地惡補一下數(shù)學。這里所謂的惡補,不建議讀者無目的地單純學數(shù)學知識,而是在學習數(shù)據(jù)結構的過程中,遇到搞不懂的數(shù)學運算,再去刻意地翻閱相關資料。

      舉個簡單的例子,評判一個算法的時間復雜度,那么下面 C 語言代碼的復雜度是多少呢?
      i = 1;
      while( i < n ){
           i = i * 2;
       }
對于此段代碼來說,我們只需要求出 while 循環(huán)中代碼(也就是第 3 行代碼)執(zhí)行的次數(shù),即可輕松得到這段代碼的時間復雜度?梢钥吹,循環(huán)條件為 i<n,而變量 i 的值每經(jīng)歷一次循環(huán)都會翻倍,因此假設有一個臨界值 m,能恰好使 2m = n,此時循環(huán)將會終止,程序運行結束。

      求這段代碼的時間復雜度,只需要求出 m 的值即可。這就需要我們具備對數(shù)運算的能力。此時,如果讀者無法理解 m 值的由來,就需要惡補一下關于數(shù)學中對數(shù)運算的相關知識。

      當然,對于絕大多數(shù)的數(shù)學運算,也可以借助計算器或者網(wǎng)絡工具來計算得出。事實上很多工作,我們完全不必親力親為,要善于運用網(wǎng)絡來解決遇到的難題。在實際開發(fā)中,很多網(wǎng)站都能提供幫助,例如 C++ 中可以使用 STL 標準庫,Python 中可以使用 collections 模塊等等。這意味著,我們的項目變成了已封裝好的模塊的組合應用,只需簡單了解各個模塊,即可實現(xiàn)最初的目的。

       讀者可能會說,學習單片機開發(fā)肯定是要具備相關知識的,沒有基礎空中樓閣也不能落地。這個是肯定的,只要讀者具備一定的學習能力,都可以學會。我認為,更多的是要求我們具備一定的問題分析能力和空間想象力,項目只是C單片機語言的一種具現(xiàn)形式?偟膩碚f,無論是學習數(shù)據(jù)結構還是學習算法,而至于知識儲備,龐大更好,沒有就要學,這個直接決定最終的終點。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:889708 發(fā)表于 2021-3-10 10:41 | 只看該作者
15830266185 發(fā)表于 2021-3-9 08:51
對于很多初學者來說,學習的基礎不扎實的居多,因此很多人懷疑懷疑這將是學習單片機開發(fā)不可逾越的大山,對 ...

答非所問呀
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表