硬件設(shè)計師最常見的工作內(nèi)容是通過寫代碼來測試硬件。這10個C語言技巧(C語言仍然是常見的選擇)可以幫助設(shè)計師避免因基礎(chǔ)性錯誤而導致某些缺陷的產(chǎn)生并造成維護方面的困擾
在單片機的開發(fā)應(yīng)用中,已逐漸開始引入高級語言,C語言就是其中的一種。對用慣了匯編的人來說,總覺得高級語言’可控性’不好,不如匯編那樣隨心所欲。但是只要我們掌握了一定的C語言知識,有些東西還是容易做出來的
1 引言 合成孔徑雷達SAR(Synthetic Aperture Radar)成像技術(shù)在軍事和國民經(jīng)濟中發(fā)揮著重要作用。SAR成像軟件平臺在國外已逐漸成熟,而國內(nèi)至今還沒有良好的SAR成像軟件平臺。SAR具有探測范圍廣、提供信息快,并可獲得
大家都知道C語言是整個嵌入式開發(fā)學習中一門重要的語言,所以學好C語言也是嵌入式開發(fā)學習中重要環(huán)節(jié)。到底如何學習C語言?C語言學習的秘訣是什么?今天本為就為大家揭開這
作者:楊碩,華清遠見嵌入式學院講師。 C語言為我們定義了四種基本數(shù)據(jù)類型:整型,浮點型,指針以及聚合類型(數(shù)組和結(jié)構(gòu)體等),在此基礎(chǔ)上,我們就可以聲明變量。我們平時經(jīng)常說定義一個某種類型的變量,其實這樣
作者:楊碩,華清遠見嵌入式學院講師。 C語言的聲明存在的最大的問題就是你無法以一種人們所習慣的自然方式從左到右閱讀一個聲明,程序員必須記住特殊的規(guī)則才能推斷出int *p[3]到底是一個int類型的指針數(shù)組還是一個
作者:楊碩,華清遠見嵌入式學院講師。 一.庫函數(shù)簡介: C語言中有一些函數(shù)會執(zhí)行一些標準任務(wù),可以事先對這些函數(shù)進行編譯,然后將他們放置在一些特殊的目標代碼文件中,這些目標代碼文件稱為庫。 庫文件中的函數(shù)
作者:楊碩,華清遠見嵌入式學院講師。C語言的設(shè)計哲學要求對象的聲明形式和它的使用形式盡可能相似,比如一個int類型的指針數(shù)組被聲明為int *p[3];并以*p[i]這樣的表達式引用或者使用指針所指向的int數(shù)據(jù),所以它的
C語言實現(xiàn)查表跳轉(zhuǎn)程序.可以采用狀態(tài)機如 switch(state) { case1:state_fuc();break; case2:state_fuc();break; ......... 也可以用if...elseif......else..... 除了用switch或if判斷,還有匯編那種goto 下面這種采用
學過C語言的人都知道,main函數(shù)是程序啟動的入口函數(shù),每一個C語言程序里有一個main函數(shù),在程序里它是唯獨一個不能被其他函數(shù)調(diào)用的特殊函數(shù)。在眾多的單片機C語言編譯器里對main函數(shù)的寫法都沒有明
volatile的意思是易變的、可變的,作用是限制編譯器優(yōu)化某些變量。首先看一段C51程序: Keil在優(yōu)化級別是為8時得到如下匯編代碼(部分未列出): 可以看到,變量d的值賦給x,y,z時,只有x中
一、c程序存儲空間布局 C程序一直由下列部分組成: 1)正文段——CPU執(zhí)行的機器指令部分;一個程序只有一個副本;只讀,防止程序由于意外事故而修改自身指令; 2)初始化數(shù)據(jù)段(數(shù)據(jù)段)——在程序中所有賦了初值的
假定從8位AD中讀取數(shù)據(jù)(如果是更高位的AD可定義數(shù)據(jù)類型為int),子程序為get_ad();1、限副濾波/* A值可根據(jù)實際情況調(diào)整 value為有效值,new_value為當前采樣值 濾波程序返回有效的實際值 */#defin
volatile關(guān)鍵字是一種類型修飾符,用它聲明的類型變量表示可以被某些編譯器未知的因素更改。 用volatile關(guān)鍵字聲明的變量i每一次被訪問時,執(zhí)行部件都會從i相應(yīng)的內(nèi)存單元中取出i的值。 沒有用volatile關(guān)鍵字聲明的變
C語言中的ASSERT(斷言)宏是嵌入式軟件開發(fā)人員可以使用的最好的調(diào)試工具之一。雖然ASSERT功能強大,但我很少看到它被實施,并且在一些使用它的案例中,它的實施要么是有瑕疵
在單片機應(yīng)用系統(tǒng)中,常用到許多復(fù)雜的數(shù)學計算,如計算sin(x)、cos(x)、有效值計算、非線性插值等。這些在高級語言中是簡單的工作,而在單片機的匯編語言中卻是非常復(fù)雜的。因為,這些運算大都要用乘
作者:楊碩,華清遠見嵌入式學院講師。 對指針的應(yīng)用是C語言編程的精髓所在,而回調(diào)函數(shù)就是C語言里面對函數(shù)指針的高級應(yīng)用。簡而言之,回調(diào)函數(shù)是一個通過函數(shù)指針調(diào)用的函數(shù)。如果你把函數(shù)指針(函數(shù)的入口地址)傳
(1)硬件電路 利用4位LED數(shù)碼管顯示電路,可以制成24小時或12小時循環(huán)顯示的時鐘電路,且該時鐘可以由人工預(yù)置起始時刻,即電路插上電源后,可根據(jù)當時的實時時刻,如手機或電視屏上顯示的時
標準的C語言中沒有空語句。但在單片機的C語言編程中,經(jīng)常需要用幾個空指令產(chǎn)生短延時的效果。這在匯編語言中很容易實現(xiàn),寫幾個nop就行了。在keil C51中,直接調(diào)用庫函數(shù):
作者:楊碩,華清遠見嵌入式學院講師。 要寫好C語言,漂亮的宏定義是非常重要的。宏定義可以幫助我們防止出錯,提高代碼的可移植性和可讀性等。 在軟件開發(fā)過程中,經(jīng)常有一些常用或者通用的功能或者代碼段,這些功能