在單片機(jī)開發(fā)過程中,從硬件設(shè)計(jì)到軟件設(shè)計(jì)幾乎是開發(fā)者針對(duì)本系統(tǒng)特點(diǎn)親自完成的。這樣雖然可以降低系統(tǒng)成本,提高系統(tǒng)的適應(yīng)性,但是每個(gè)系統(tǒng)的調(diào)試占去了總開發(fā)時(shí)間的2/3,可見調(diào)試的工作量比較大。單片機(jī)系統(tǒng)的硬件調(diào)試和軟件調(diào)試是不能分開的,許多硬件錯(cuò)誤是在軟件調(diào)試中被發(fā)現(xiàn)和糾正的。但通常是先排除明顯的硬件故障以后,再和軟件結(jié)合起來調(diào)試以進(jìn)一步排除故障??梢娪布恼{(diào)試是基礎(chǔ),如果硬件調(diào)試不通過,軟件設(shè)計(jì)則是無從做起。本文結(jié)合作者在單片機(jī)開發(fā)過程中體會(huì),討論硬件調(diào)試的技巧。
自1859年法國(guó)物理學(xué)家普蘭特(Plante)發(fā)明了鉛酸蓄電池至今已有140年的歷史。鉛酸蓄電池有著成本低,適用性寬,可逆性好,大電流放電性能良好,單體電池電壓高,并可制成密封免維護(hù)結(jié)構(gòu)等優(yōu)點(diǎn),而被廣泛地應(yīng)用于車輛啟動(dòng)、郵電、電力、鐵路、礦山、采掘、計(jì)算機(jī)UPS等各個(gè)領(lǐng)域中。蓄電池也是國(guó)民經(jīng)濟(jì)以及國(guó)防建設(shè)的重要能源,在許多行業(yè)的發(fā)展中,也迫切需要容量大、循環(huán)壽命長(zhǎng)、充電時(shí)間短、價(jià)格低的蓄電池。而快速充電技術(shù)也成為了其中的關(guān)鍵技術(shù),它對(duì)電池的使用有著非常重要的影響。目前,國(guó)內(nèi)外都在不斷地研究這一技術(shù),而在快速充電技術(shù)中引入計(jì)算機(jī)控制,是非常有效的,且有著非常明顯的經(jīng)濟(jì)效益。而單片機(jī)又以其低廉的成本,靈活的控制方式而得到業(yè)界的青睞,本系統(tǒng)就是以AT89C2051單片機(jī)為核心,集測(cè)量與控制為一體的智能化快速充電系統(tǒng)。
隨著環(huán)境的污染和能源的緊張,電動(dòng)自行車以無廢氣污染,無噪音,利用電能和使用方便等優(yōu)點(diǎn),越來越受到人們的喜愛,成為生活中的代步交通工具。本文介紹采用美國(guó)公司SILICon laboratories(Silabs)的高速SoC型C8051F313單片機(jī)設(shè)計(jì)的一種無刷直流電機(jī)調(diào)速控制系統(tǒng)。該系統(tǒng)充分利用C8051F313的片上資源,設(shè)計(jì)方案電路簡(jiǎn)單,需要的外圍元件少,控制器的整體成本低,性能好。
單片機(jī)c8051f064是cygnal(現(xiàn)為SILIConlab)公司在2000年左右推出的新型單片機(jī),具有運(yùn)行速度快,與8051指令系統(tǒng)兼容的優(yōu)點(diǎn),剛一推出就受到國(guó)內(nèi)廣大8031使用者的歡迎,紛紛學(xué)習(xí)使用,并有一定的商業(yè)應(yīng)用,但在具體的使用中也發(fā)現(xiàn)了很多問題,抗干擾能力便是其中之一。
21世紀(jì),能源問題日益突出,節(jié)能環(huán)保已成為諸多設(shè)計(jì)所必須考慮的一大因素。該設(shè)計(jì)就是以有效提高實(shí)驗(yàn)室燈光和各種電源利用率為目的,采用紅外計(jì)數(shù),在不同情況下分別提供相應(yīng)的照明和電源的供給,避免了人少開多組燈、使用多組儀器以及人員離開忘記關(guān)閉儀器等浪費(fèi),節(jié)能的同時(shí),提高設(shè)備使用壽命,可有效地達(dá)到自動(dòng)關(guān)閉電源目的,有效地防止火災(zāi),同時(shí)該系統(tǒng)還可以顯示房間例如溫度、日期等詳細(xì)情況。該系統(tǒng)可在圖書館、教室、會(huì)議室、作為大型公共場(chǎng)所的中央控制設(shè)備。
角度測(cè)量?jī)x是某控制系統(tǒng)中瞄準(zhǔn)裝置的關(guān)鍵部件。在以往的控制系統(tǒng)中,多數(shù)都是僅憑設(shè)備操作人員眼睛瞄準(zhǔn)指定目標(biāo),然后作出相應(yīng)的控制,這樣就帶來一系列問題,如操作人員的經(jīng)驗(yàn)、瞄準(zhǔn)裝置轉(zhuǎn)盤的空回都可能會(huì)嚴(yán)重會(huì)影響瞄準(zhǔn)目標(biāo)的精確程度,從而嚴(yán)重影響控制系統(tǒng)的精度。為了提高控制系統(tǒng)的瞄準(zhǔn)精度,在控制系統(tǒng)的瞄準(zhǔn)裝置中增加了角度測(cè)量?jī)x部件,操作人員瞄準(zhǔn)目標(biāo)后的角度值能夠精確定量地顯示在操作面板上,幫助操作人員更加準(zhǔn)確地瞄準(zhǔn)目標(biāo),因此,極大地提高了控制系統(tǒng)的控制精確度。
AVR單片機(jī)是ATMEL公司在1997年研發(fā)的增強(qiáng)型內(nèi)置Flash的RISC精簡(jiǎn)指令集高速單片機(jī)??梢詮V泛應(yīng)用于計(jì)算機(jī)外部設(shè)備、工業(yè)實(shí)時(shí)控制、儀器儀表、通訊設(shè)備、家用電器等各個(gè)領(lǐng)域。
如題
從這幾個(gè)實(shí)例來看不同類型單片機(jī)之間如何“搭訕”
說到單片機(jī)編程,不得不說到狀態(tài)機(jī),狀態(tài)機(jī)做為軟件編程的主要架構(gòu)已經(jīng)在各種語(yǔ)言中應(yīng)用,當(dāng)然包括C語(yǔ)言,在一個(gè)思路清晰而且高效的程序中,必然有狀態(tài)機(jī)的身影浮現(xiàn)。靈活的
最近在搞430的FLASH的自定義法(利用串口)程序燒寫,燒寫完成后斷電復(fù)位,reset按鍵就可以運(yùn)行新的程序。但是和學(xué)長(zhǎng)交流了一下,這種方法不夠好,希望有一種軟復(fù)位的方式。于
前面我們做了定時(shí)器的實(shí)驗(yàn),現(xiàn)在來看一看計(jì)數(shù)實(shí)驗(yàn),在工作中計(jì)數(shù)常常會(huì)有兩種要求:第一、將計(jì)數(shù)的值顯示出來,第二、計(jì)數(shù)值到一定程度即中斷報(bào)警。第一種如各種計(jì)數(shù)器、里程表,第二種如前面例中講到的生產(chǎn)線上的計(jì)
我們?cè)趯W(xué)單片機(jī)時(shí)我們第一個(gè)例程就是燈的閃爍,那是用延時(shí)程序做的,現(xiàn)在回想起來,這樣做不很恰當(dāng),為什么呢?我們的主程序做了燈的閃爍,就不能再干其它的事了,難道單片機(jī)只能這樣工作嗎?當(dāng)然不是,我們能用定時(shí)器
有關(guān)單片機(jī)中斷系統(tǒng)的概念:什么是中斷,我們從一個(gè)生活中的例程引入。你正在家中看書,突然電話鈴響了,你放下書本,去接電話,和來電話的人交談,然后放下電話,回來繼續(xù)看你的書。這就是生活中的“中斷&rdqu
從上一節(jié)我們已經(jīng)得知,單片機(jī)中的定時(shí)/計(jì)數(shù)器都能有多種用途,那么我怎樣才能讓它們工作于我所需要的用途呢?這就要通過定時(shí)/計(jì)數(shù)器的方式控制字來設(shè)置。在單片機(jī)中有兩個(gè)特殊功能寄存器與定時(shí)/計(jì)數(shù)有關(guān),這就是TMOD
一、計(jì)數(shù)概念的引入從選票的統(tǒng)計(jì)談起:畫“正”。這就是計(jì)數(shù),生活中計(jì)數(shù)的例程處處可見。例:錄音機(jī)上的計(jì)數(shù)器、家里面用的電度表、汽車上的里程表等等,再舉一個(gè)工業(yè)生產(chǎn)中的例程,線纜行業(yè)在電線生產(chǎn)出
單片機(jī)與應(yīng)用處理器的核心區(qū)別到底是什么呢?是核心主頻的差異?還是Linux系統(tǒng)的支持?又或者是處理器的架構(gòu)?本文將以NXP的Cortex-M系列為例做簡(jiǎn)要介紹。
前面那些流水燈的例程,我們已經(jīng)習(xí)慣了“位”一位就是一盞燈的亮和滅,而我們學(xué)的指令卻全都是用“字節(jié)”來介紹的:字節(jié)的移動(dòng)、加法、減法、邏輯運(yùn)算、移位等等。用字節(jié)來處理一些數(shù)學(xué)問題,比
條件轉(zhuǎn)移指令是指在滿足一定條件時(shí)進(jìn)行相對(duì)轉(zhuǎn)移。判A內(nèi)容是否為0轉(zhuǎn)移指令JZ relJNZ rel第一指令的功能是:如果(A)=0,則轉(zhuǎn)移,不然次序執(zhí)行(執(zhí)行本指令的下一條指令)。轉(zhuǎn)移到什么地方去呢?如果按照傳統(tǒng)的辦法,就要算
ANL A,Rn ;A與Rn中的值按位'與',結(jié)果送入A中ANL A,direct ;A與direct中的值按位'與',結(jié)果送入A中ANL A,@Ri ;A與間址尋址單元@Ri中的值按位'與',結(jié)果送入A中ANL A,#data ;A與立即數(shù)data按位'與',結(jié)果送入A中ANL d