freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機的聲光控制開關(guān)的設(shè)計(編輯修改稿)

2025-01-09 00:57 本頁面
 

【文章內(nèi)容簡介】 ? CS_ 片選使能,低電平芯片使能。 ? CH0 模擬輸入通道 0,或作為 IN+/使用。 ? CH1 模擬輸入通道 1,或作為 IN+/使用。 ? CLK 芯片時鐘輸入。 ? DI 數(shù)據(jù)信號輸入,選擇通道控制。 ? DO 數(shù)據(jù)信號輸出,轉(zhuǎn)換數(shù)據(jù)輸出。 ? GND 芯片參考 0 電位(地)。 ? Vcc/REF 電源輸入及參考電壓輸入(復(fù)用)。 聲 控部分 原理 當單片機檢測到光線不足時,便啟動聲音信號采集電路如圖 5 所示: 圖 5 聲音信號采集電路 用 駐極體話筒 將 得到 與聲音信號對應(yīng) 的電壓 值 。 若有聲音時則會輸出一電壓值, 由于 傳聲器轉(zhuǎn)換 的電壓值非常小,所以必須 將該電壓經(jīng)過 LM324 運算放大器進行放 大,放大倍數(shù)為 RV1/R9, RV1 為可變西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 11 電阻,通過調(diào)節(jié)其阻值使其放大倍數(shù)產(chǎn)生變化,起到了調(diào)節(jié)聲音靈敏度的作用。 放大后的電壓 必須 經(jīng)過 ADC0832 進行模數(shù)轉(zhuǎn)換, 由單片機內(nèi)部程序?qū)D(zhuǎn)換值進行對比。當值高于預(yù)設(shè)值 時單片機啟動 T0 計時中斷和照明燈控制電路,使照明燈點亮,并通過數(shù)碼管顯示 倒計時 時間。當沒有聲音或聲音微弱時,系統(tǒng)不進行 下一步 的工作。 延時時間顯示電路 數(shù)碼管結(jié)構(gòu)和分類 數(shù)碼管 【 5】 是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。按發(fā)光二極管單元連接方式分為共 陰 極數(shù)碼管和共 陽 極數(shù)碼管。 共陰 極 數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極。如圖 6( c) 所示, 共陰數(shù)碼管在應(yīng)用時應(yīng)將公共極接到地線GND 上,當某一字段發(fā)光二極管的陽極為高電平時,相應(yīng)字段就點亮。 共陽 極 數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極。如圖 6( b) 所示, 在 使 用時應(yīng)將公共 陽 極接 +5V 電壓 ,當某一字段發(fā)光二極管的陰極 端輸入 低電平 時 ,相應(yīng)字段就點亮。 西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 12 ( a)數(shù)碼管引腳圖 ( b)共陽極內(nèi)部結(jié)構(gòu)圖 ( c)共陰極內(nèi)部結(jié)構(gòu)圖 圖 25 數(shù)碼管驅(qū)動方式 數(shù)碼管要正常顯示 【 5】 ,就要用驅(qū)動電路來驅(qū)動數(shù)碼管 的各個段碼,從而顯示出我們要的數(shù)字,因此根據(jù)數(shù)碼管的驅(qū)動方式的不同,可以分為靜態(tài)式和動態(tài)式兩類。 ① 靜態(tài)顯示驅(qū)動:靜態(tài)顯示的特點是每個數(shù)碼管的段選必須接一個 8 位數(shù)據(jù)線來保持顯示的字形碼。當送入一次字形碼后,顯示字形可一直保持,直到送入新字形碼為止。這種方法的優(yōu)點是占用 CPU時間少, LED 的亮度高,容易控制 。缺點是硬件電路比較復(fù)雜, 功耗大,所需口線多, 成本較高。 若顯示位數(shù)增多,則靜態(tài)顯示方式很難適應(yīng)。 ② 動態(tài)顯示驅(qū)動:數(shù)碼管動態(tài)顯示 一般 是將所有 位的段選線的同名端聯(lián)在一起,由一個 8 位 I/O 口控制 , 形成段選線的多路復(fù)用。當單片機輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼 這就是動態(tài)驅(qū)動。點亮?xí)r間為 1~ 2ms, 由于人眼有視覺暫留現(xiàn)象,就造成了西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 13 多位同時點亮的假象。 定時 /計數(shù)部分 AT89C51 芯片內(nèi)有兩個 16 位的定時 /計數(shù)器 ,都可以由軟件來設(shè)定 。 在此設(shè)計中用到的是 T0 作為定時器。 由于在系統(tǒng)中需要設(shè)置延時時間電路,目的是在 照明燈點亮后 經(jīng)過一定延時 能 自動熄滅。 電路中采用了單片機內(nèi)部定時器 。 顯示電路分析 系統(tǒng)功能中有一點是可以 根據(jù)場所及使用人群的不同設(shè)置不同的延時時間值。雖然動態(tài)顯示的 效果和靜態(tài)顯示是一樣的,但動態(tài)顯示能夠節(jié)省大量的 I/O 端口,而且功耗更低。所以設(shè)計中采用 LED動態(tài)顯示方式顯示倒計時數(shù)據(jù)。電路如圖 7 所示: 圖 延時時間顯示電路 由圖可知采用了共陰極的 2 位數(shù)碼顯示管做顯示電路,所以只要數(shù)碼管的 a、 b、 c、 d、 e、 f、 g、 h 引腳為高電平,那么其對應(yīng)的二西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 14 極管就會發(fā)光,使數(shù)碼顯示管顯示 0~ 9 的編碼見表 2。 表 2 共陰極數(shù)碼顯示管字型代碼 字型 共陰極代碼 字型 共陰極代碼 0 3FH 5 6DH 1 06H 6 7DH 2 5BH 7 07H 3 4FH 8 7FH 4 66H 9 6FH 為了實現(xiàn)不同場所及使用人群的不同而燈亮的時間不一,在單片機的 P1 口接入了三個按鍵。 電路如圖 7 所示。 當單片機進行按鍵掃描時,如果 口按下則燈亮?xí)r間為 10s,并且顯示器進行 10s 倒計時;如果 口按下則為 20s 倒計時;如果 口按下則為 30s。 數(shù)碼顯示管的八位段選端接入單片機的 P0 口,而位選端由 P2口控制,分別為 口為十位, 口為個位。 設(shè)計中 采用了 目前最常用的軟件消抖的方法,選擇 5ms 的延時來消除抖動,延時后在進行一次按鍵是否閉合。 圖 按鍵接口 電路 西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 15 圖 8 中的按鍵部分可以進行擴展,如果接入一個鍵盤則可以對延時時間自行進行設(shè)置。由于本設(shè)計中按鍵功能已經(jīng)可以滿足需要,所以沒有進行擴展。 總原理圖 軟 件設(shè)計 本系統(tǒng) 的軟件設(shè)計是通過 C 語言進行編程,主要有主程序、鍵盤掃描程序、初始化程序、 A/D 轉(zhuǎn)換程序、延時程序等部分組成。主程序流程圖如 圖 9 所示 : 西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 16 圖 系統(tǒng)流程圖 延時程序 在整個編寫 程序中要用到許多的延時,所以程序中包含一個大約為 1ms 的延時子程序,方便在程序中的調(diào)用,程序代碼如下: //延時 子程序 ; void delay(uint z) { 西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 17 uint x,y。 for(x=z。x0。x) for(y=125。y0。y)。 } 按鍵掃描子 程序 由于在 P1 口接入了三個按鍵,通過按鍵掃描來確定定時的時間長度,所以先寫入一個按鍵掃描子程序,可在主程序中直接調(diào)用。程序代碼如下: //鍵盤掃描函數(shù) 。 void keyscan() { if(key1==0) { delay(5)。 //消抖; if(key1==0) //按下 key1 燈亮?xí)r間為 10s; { temp=10。 //10s 延時; } } if(key2==0) { delay(5)。 //消抖; 西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 18 if(key2==0) //按下 key2 燈亮?xí)r間為 20s; { temp=20。 } } if(key3==0) { delay(5)。 //消抖; if(key3==0) //按下 key3 燈亮?xí)r間為 30s; { temp=30。 } } } LED 顯示程 序 系統(tǒng)中通過數(shù)碼管對不同延時時間進行顯示,以便直觀的看出系統(tǒng)可以自行選擇燈亮的時間長度。 //顯示數(shù)碼管內(nèi)容; void display(uchar shi,uchar ge) { P2=0xfe。 西北民族大學(xué)學(xué)士學(xué)位論文 ———————————————————— —————————————————————————— 19 P0=table[shi]。 delay(1)。 P2=0xfd。 P0=table[ge]。 delay(1)。 P2=0xfc。 } AD 轉(zhuǎn)換程序 uchar adc0832(unsigned char ch) //AD 轉(zhuǎn)換,返回結(jié) 果 。 { uchar i=0。 uchar j。 uint dat1=0。 uchar dat2=0。 if(ch==0)ch=2。 if(ch==1)ch=3。 adDI=1。 _nop_()。 _nop_()。 adCS=0。//拉低 CS 端 。 _nop_()。 西北民族大學(xué)學(xué)士學(xué)位論文 —
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1