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

正文內容

基于單片機的無線搶答器設計(編輯修改稿)

2024-11-28 08:09 本頁面
 

【文章內容簡介】 接地, 31 腳接電源 Vcc,就構成了 AT89S52 單片機的最小系統(tǒng)如圖 312。在單片機最小系統(tǒng)的基礎上外接相關的工作電路,并讓這些電路按程序設計要求工作,就組成了單片機應用電路。 青島理工大學畢業(yè)論文 12 圖 312 單片機的最小系統(tǒng)圖 無線發(fā)射電路 無線發(fā)射電路由搶答按鍵,編碼電路,發(fā)射電路組成。 由于 F05P 對 直流電平及模擬信號是不能發(fā)射的,而在本設計中無線發(fā)射電路發(fā)用蓄電池供電,故結合 PT2262 使用。 PT2262 的數(shù)據無論怎么變但頻寬不變,計時出現(xiàn)一點突發(fā)性的外界干擾,它的寬容性也會解碼輸出高點品。 PT2262/PT2272 是臺灣普誠公司生產的一種 CMOS 工藝制造的低功耗、低價位的通用編解碼電路,可靠性及穩(wěn)定性較好。 PT2262 外觀如圖 321 所示。 圖 321 PT2262 外觀圖 其中 PT2262 最多可有 6 位 ( D0~D5) 數(shù)據引腳,通常使用 8 位地址, 4 青島理工大學畢業(yè)論文 13 位數(shù)據的組合。在 TE 端為低電平的情況下,只要有 1 位為高電平即有編碼發(fā)出,因此本電路設計成 4 路搶答,使用全部 6 位數(shù)據端時可設計成 6 路搶答,在超過 6 路需擴展編碼、譯碼電路。設定的地址碼和數(shù)據碼從 17 腳串行輸出,觸發(fā)無線發(fā)射模塊 F05P 工作。 F05P 采用 SMT 工藝,樹脂封裝,小體積,聲表諧振器穩(wěn)頻,內部具有一級調制電路及限流電阻,適合單片機短距離無線數(shù)據傳輸。 FO5P 基本滿足搶答器的傳輸距離要求,不需另加 天線。單片機的數(shù)據可直接進入 F05P 的數(shù)據輸入端,以 315MHz 向外發(fā)射無線信號。 F05P 需要輸入數(shù)據才能發(fā)射,數(shù)據信號停止,發(fā)射電流為零。本電路使用 9V 電池供電。按下 S1S4, PT2262 給出對應的脈沖編碼信號,按鍵動作轉化為無線遙控信號發(fā)出。無線發(fā)射原理圖如圖 322 所示 。 圖 322 無線發(fā)射電路原理圖 無線接收電路 無線接收電路由接收電路、解碼電路組成。無線接收電路原理圖如圖 332所示。無線接收電路采用與 FO5P 配套的 J05R,工作頻率 315M,以及與 PT2262配套使用的 PT2272。 J05R 是一款超超高頻無線數(shù)據傳送超外差接收模塊,具 青島理工大學畢業(yè)論文 14 有靈敏度高、抗干擾能力強,與單片機直接接口容易實現(xiàn)的特點,使用中無需調整頻點,特別適合多發(fā)一收的無線遙控系統(tǒng)。與 F05P 配套使用可實現(xiàn)無線數(shù)據的穩(wěn)定傳輸。 J05R 接收解調信號送 PT2272 解碼。 PT2272 外觀圖如圖331 所示。 PT2272 有 L4/M4/L6/M6 等 4 種不同功能的芯片,這里選用 M4即非鎖存 4 路并行數(shù)據輸出。 PT2272 接收有效信號時, VT( 17 腳)端由低電平轉變?yōu)楦唠娖浇浥c非門倒相后觸發(fā)中斷, D0D3 將編碼信息送入AT89S52 處理。 圖 331 PT2272 外觀圖 圖 332 無線接收電路原理圖 輸出控制模塊 控制及輸出電路由 AT89S52,共陰極 LED 數(shù)碼管,蜂鳴器組成。觸發(fā)端受脈沖觸發(fā)后立即輸出信號,直接驅動蜂鳴器發(fā)出聲音??刂齐娐芬?AT89S52青島理工大學畢業(yè)論文 15 為核心,當有鍵按下時,通過外部中斷 1 向單片機申請中斷。單片機響應中斷后,判斷出發(fā)射電路,并通過 P0、 P2 口輸出顯示搶答組號,從 輸出低電平,使蜂鳴器發(fā)出有按鍵按下的提示音,同時封鎖中斷,屏蔽其它按 鍵響應,需手動復位后方可進行下一輪搶答。 輸出控制圖如圖 341 所示。 圖 341 輸出控制圖 青島理工大學畢業(yè)論文 16 第 4 章 軟件設計 搶答器流程圖 流程圖 是 使用圖形表示算法的思路是一種極好的方法, 不論采用何種程序設計方法,程序總體結構確定后,一般以程序流程圖的形式對其進行描述 ??傮w框圖中的各個子模塊或各個子任務也應該結合具體的教學模型和算法畫出較詳細的程序流程圖,供后面編寫具體程序和閱讀程序使用。 流程圖是由一些圖框和流程線組成的,其中圖框表示各種操作 的類型,圖框中的文字和符號表示操作的內容,流程線表示操作的先后次序。 流程圖的基本結構為 順序結構,分支結構(又稱選擇結構),循環(huán)結構。為便于識別,繪制流程圖的習慣做法是: 方框表示:要執(zhí)行的處理( Process) 平行四邊型表示:代表資料輸入( Input) 不規(guī)則圖形代表資料輸出( Output)或報表輸出( Print) 菱形表示:決策或判斷(例如: If...Then...Else) 同時,由于發(fā)射電路及接收電路采用了集成編碼解碼模塊,軟件設計只需考慮控制電路控制功能的實現(xiàn)。主要涉及中斷響應及輸出控制兩個部 分,軟件設計較為簡單。顯示程序采用動態(tài)顯示方式。上電后,單片機復位,顯示輸出“ 0 – 20”,同時開啟外部中斷,當按下開始鍵后,便等待搶答信號。若搶答端口有信號送來,則調用中斷程序。中斷程序首先關閉中斷,這樣屏蔽了對后來搶答信號的響應,然后查表判斷搶答者對應的組號并轉換為七段顯示編碼后經 P P2 輸出顯示,同時從 輸出低電平,觸發(fā)提示音電路工作。由于在中斷程序返回時并沒有開放中斷,需重新手動復位后才能進行下一輪搶答,這也方便主持人對現(xiàn)場的掌控。程序流程圖如圖 411 所示。 青島理工大學畢業(yè)論文 17 圖 411 搶答器主程序流程圖 圖 412 搶答器定時器中斷流程圖 初 始化部分 搶答開始 啟動定時器,數(shù)碼管顯示倒計時 若有選手搶答 計時停止,數(shù)碼管顯示選手的標號及所用的時間 結束 開 始 N Y Y N 定時器 0 中斷 1 秒時間到? 中斷返回 N 秒加 1 數(shù)碼管顯示秒值 Y 青島理工大學畢業(yè)論文 18 圖 413 外部中斷程序圖 主程序 我們組所設計的搶答器的程序采用的是 C 程序設計, C 語言的顯著特點是 用二進制來編寫程序 ,程序的各個部分除了必要的信息交流外彼此 之間相互獨立。這種結構化方式可使程序層次清晰 , 便于使用、維護 以及調試。 C 語言是以函數(shù)形式提供給用戶的 ,這些函數(shù)可方便的調用 ,并具有多種循環(huán)、條件語句控制程序流向 ,從而使程序完全結構化。雖然 C 語言也是強類型語言,但它的語法比較靈活,允許程序編寫者有較大的自由度。 本次設計的主程序中包括時鐘設計程序,定時器中斷子程序, LED 顯示程序以及按鍵控制子程序,程序設計如下: include sbit k0=P1^0。 sbit k1=P1^1。 外部中斷 0 中斷 S1 鍵按下 S2 鍵按下 S4 鍵按下 S3 鍵按下 中斷返回 與 S1 鍵對應的發(fā)光二極管亮及 數(shù)碼管顯示 與 S2 鍵對應的發(fā)光二極管亮及數(shù)碼管顯示 與 S3 鍵對應的發(fā)光二極管亮及數(shù)碼管顯示 與 S4 鍵對應的發(fā)光二極管亮及數(shù)碼管顯示 Y Y Y Y N N N N 青島理工大學畢業(yè)論文 19 sbit k2=P1^2。 sbit k3=P1^3。 sbit d0=P1^4。 sbit d1=P1^5。 sbit d2=P1^6。 sbit d3=P1^7。 sbit B0=P3^7。 sbit l0=P2^0。 sbit l1=P2^2。 sbit l2=P2^3。 sbit l3=P2^4。 sbit kz=P3^0。 unsigned char qiangdanum=0x3f。 unsigned char code table[]={0x3f,0xxx,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}。 unsigned char ge=0,shi=0。 unsigned int num=0,time=0。 void display()。 /*顯示函數(shù) */ void delay(unsigned int)。 main() { TMOD=0X01。 /*采用方式一,即十六位計數(shù)器 */ TH0=(6553650000)/256。 /*設置初始值 */ TL0=(6553650000)%256。 IT0=0。 EA=1。ET0=1。 /*開啟總中斷源 */ EX0=1。 /*啟動外部中斷 0*/ {while(1) {display()。 青島理工大學畢業(yè)論文 20 if(kz==0) TR0=1。 /*開啟定時器 0 中斷 */ if(num==20) { num=0。 time++。 if(time==60) /*60 秒的計時 */ time=0。 } } } } void exter0() interrupt 0 /*外部中斷程序 */ {EA=0。l0=0。 if(k0==0) /*開關 0 按下 */ {d0=0。qiangdanum=1。B0=1。 }/* 1 號選手搶答成功,數(shù)碼管顯示 1,蜂鳴器響,第 1 個二極管亮 */ if(k1==0) /*開關 1 按下 */ {d1=0。qiangdanum=2。B0=1。 }/* 2 號選手搶答成功,數(shù)碼管顯示 2,蜂鳴器響,第 2 個二極管亮 */ if(k2==0) /*開關 2 按下 */ {d2=0。qiangdanum=3。B0=1。 }/* 3 號選手搶答成功,數(shù)碼管顯示 3,蜂鳴器響,第 3 個二極管亮 */ if(k3==0) /*開關 3 按下 */ {d3=0。qiangdanum=4。B0=1。 }/* 4 號選手搶答成功,數(shù)碼管 顯示 4,蜂鳴器響,第 4 個二極管亮 */ } void time0() interrupt 1 {num++。 青島理工大學畢業(yè)論文 21 TH0=(6553650000)/256。 TL0=(6553650000)%256。 } /*1 秒定時函數(shù) */ void delay(unsigned int z) {unsigned int x,y。 for(x=z。x0。x) for(y=110。y0。y)。 } /*延遲函數(shù) */ void display(void) {shi=time/10。 ge=time%10。 P2=0xef。 P0=table[ge]。 delay(5)。 P2=0xf7。 P0=table[shi]。 delay(5)。 P2=0xFE。 P0=table[qiangdanum]。 delay(5)。 } /*顯示函數(shù):來顯示 060 的計 數(shù) */ 中斷程序 什么是中斷 中斷是指由于某種隨機事件的發(fā)生,計算機暫?,F(xiàn)行的程序的運行,轉去執(zhí)行另一個程序,以處理發(fā)生的事件,處理完畢后又自動返回原來的程序繼續(xù)運行。 有五種中斷源:外部中斷 0、外部中斷 定時器中斷 0、定時器中斷 串行中斷。它們的描述如下圖 431 所示: 青島理工大學畢業(yè)論文 22 圖 431 五種中斷源 中斷源符號 名稱 終端引起的原因
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1