基于單片機(jī)與光電傳感器的電動(dòng)自行車速度/里程表設(shè)計(jì)
信號(hào)預(yù)處理電路
如圖3所示,系統(tǒng)的信號(hào)預(yù)處理電路由二級(jí)電路構(gòu)成,第一級(jí)是由開關(guān)三極管組成的零偏置放大器,采用開關(guān)三極管可以保證放大器具有良好的高頻響應(yīng)。當(dāng)輸入信號(hào)為零或負(fù)電壓時(shí),三極管截止,電路輸出高電平;而當(dāng)輸入信號(hào)為正電壓時(shí),三極管導(dǎo)通,此時(shí)輸出電壓隨著輸入電壓的上升而下降,這使得速度里程表既可以測(cè)量任意方波信號(hào)的頻率,也可以測(cè)量正弦波信號(hào)的頻率。由于放大器的放大功能降低了對(duì)待測(cè)信號(hào)的幅度要求,因此,系統(tǒng)能對(duì)任意大于0.5v的正弦波和脈沖信號(hào)進(jìn)行測(cè)量。預(yù)處理電路的第二級(jí)采用帶施密特觸發(fā)器的反相器dm74ls14來(lái)把放大器生成的單相脈沖轉(zhuǎn)換成與coms電平相兼容的方波信號(hào)(如圖4所示),同時(shí)將輸出信號(hào)加到單片機(jī)的p3.4口上。
圖3 信號(hào)預(yù)處理電路圖
圖4 施密特觸發(fā)器對(duì)脈沖的整形
利用施密特觸發(fā)器狀態(tài)轉(zhuǎn)換過(guò)程中的正反饋?zhàn)饔茫梢园堰呇刈兓徛闹芷谛孕盘?hào)變換為邊沿很陡的矩形脈沖信號(hào)。輸入的信號(hào)只要幅度大于vt+,即可在施密特觸發(fā)器的輸出端得到同等頻率的矩形脈沖信號(hào)。
從傳感器得到的矩形脈沖經(jīng)傳輸后往往發(fā)生波形畸變。當(dāng)傳輸線上的電容較大時(shí),波形的上升沿將明顯變壞;當(dāng)傳輸線較長(zhǎng),而且接受端的阻抗與傳輸線的阻抗不匹配時(shí),在波形的上升沿和下降沿將產(chǎn)生振蕩現(xiàn)象;當(dāng)其他脈沖信號(hào)通過(guò)導(dǎo)線間的分布電容或公共電源線疊加到矩形脈沖信號(hào)時(shí),信號(hào)上將出現(xiàn)附加的噪聲。無(wú)論出現(xiàn)上述的那一種情況,都可以通過(guò)用施密特反相觸發(fā)器整形而得到比較理想的矩形脈沖波形。只要施密特觸發(fā)器的vt+和vt-設(shè)置得合適,均能受到滿意的整形效果。
e2prom at24c02的應(yīng)用
at24c02是cmos 2048位串行e2prom,在內(nèi)部組織成256×8位。at24c02的特點(diǎn)是具有允許在簡(jiǎn)單的二線總線上工作的串行接口和軟件協(xié)議。
如圖5所示,在本設(shè)計(jì)中用芯片at24c02的sda端與單片機(jī)的p3.7口相連,scl端與單片機(jī)的p3.5口相連。因?yàn)樵谶@個(gè)i2c總線上只有一個(gè)器件,所以把a(bǔ)t24c02的地址設(shè)為000,即把a(bǔ)0、a1、a2都接地。單片機(jī)計(jì)算出來(lái)的里程數(shù)據(jù)通過(guò)sda、scl向at24c02輸送數(shù)據(jù)。單片機(jī)首先向at24c02發(fā)送寫信號(hào),當(dāng)確認(rèn)后從單片機(jī)內(nèi)部的數(shù)據(jù)儲(chǔ)存單元提取數(shù)據(jù)然后向at24c02的內(nèi)部地址傳送數(shù)據(jù)。當(dāng)顯示里程時(shí),單片機(jī)首先向at24c02發(fā)送讀信號(hào),然后確認(rèn)后,單片機(jī)從at24c02內(nèi)部的地址向單片機(jī)的讀出單元字節(jié)讀出數(shù)據(jù),供顯示所用。
圖5 at24c02與單片機(jī)的接口電路圖
評(píng)論