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

正文內(nèi)容

課程設(shè)計(jì)-基于at89c51單片機(jī)的簡易函數(shù)發(fā)生器設(shè)計(jì)-文庫吧資料

2025-06-15 08:05本頁面
  

【正文】 {uchar mm。 } void delay()//延時(shí) { while(!TF1)。 TMOD=0x20。 EA=1。 IT0=1。 uchar code table2[]={ 0x80,0x83,0x85,0x88,0x8A,0x8D,0x8F,0x92, 0x94,0x97,0x99,0x9B,0x9E,0xA0,0xA3,0xA5, 0xA7,0xAA,0xAC,0xAE,0xB1,0xB3,0xB5,0xB7, 0xB9,0xBB,0xBD,0xBF,0xC1,0xC3,0xC5,0xC7, 0xC9,0xCB,0xCC,0xCE,0xD0,0xD1,0xD3,0xD4, 0xD6,0xD7,0xD8,0xDA,0xDB,0xDC,0xDD,0xDE, 0xDF,0xE0,0xE1,0xE2,0xE3,0xE3,0xE4,0xE4, 0xE5,0xE5,0xE6,0xE6,0xE7,0xE7,0xE7,0xE7, 0xE7,0xE7,0xE7,0xE7,0xE6,0xE6,0xE5,0xE5, 0xE4,0xE4,0xE3,0xE3,0xE2,0xE1,0xE0,0xDF, 0xDE,0xDD,0xDC,0xDB,0xDA,0xD8,0xD7,0xD6, 0xD4,0xD3,0xD1,0xD0,0xCE,0xCC,0xCB,0xC9, 0xC7,0xC5,0xC3,0xC1,0xBF,0xBD,0xBB,0xB9, 0xB7,0xB5,0xB3,0xB1,0xAE,0xAC,0xAA,0xA7, 0xA5,0xA3,0xA0,0x9E,0x9B,0x99,0x97,0x94, 0x92,0x8F,0x8D,0x8A,0x88,0x85,0x83,0x80, 0x7D,0x7B,0x78,0x76,0x73,0x71,0x6E,0x6C, 0x69,0x67,0x65,0x62,0x60,0x5D,0x5B,0x59, 0x56,0x54,0x52,0x4F,0x4D,0x4B,0x49,0x47, 0x45,0x43,0x41,0x3F,0x3D,0x3B,0x39,0x37, 0x35,0x34,0x32,0x30,0x2F,0x2D,0x2C,0x2A, 武漢理工大學(xué) 單片機(jī)課程設(shè)計(jì)說明書 24 0x29,0x28,0x26,0x25,0x24,0x23,0x22,0x21, 0x20,0x1F,0x1E,0x1D,0x1D,0x1C,0x1C,0x1B, 0x1B,0x1A,0x1A,0x1A,0x19,0x19,0x19,0x19, 0x19,0x19,0x19,0x19,0x1A,0x1A,0x1A,0x1B, 0x1B,0x1C,0x1C,0x1D,0x1D,0x1E,0x1F,0x20, 0x21,0x22,0x23,0x24,0x25,0x26,0x28,0x29, 0x2A,0x2C,0x2D,0x2F,0x30,0x32,0x34,0x35, 0x37,0x39,0x3B,0x3D,0x3F,0x41,0x43,0x45, 0x47,0x49,0x4B,0x4D,0x4F,0x52,0x54,0x56, 0x59,0x5B,0x5D,0x60,0x62,0x65,0x67,0x69, 0x6C,0x6E,0x71,0x73,0x76,0x78,0x7B,0x7D}。 uchar code smg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x39, 0x3e,0x00}。 uchar a[4]。 sbit p37=P3^7。 sbit p35=P3^5。 sbit p33=P3^3。 sbit p30=P3^0。 } } 源程序 include include define DAC0832 XBYTE[0x0200] define sled1 XBYTE[0x0100] 武漢理工大學(xué) 單片機(jī)課程設(shè)計(jì)說明書 23 define sled2 XBYTE[0x0101] define sled3 XBYTE[0x0102] define sled XBYTE[0x0103] define uchar unsigned char define uint unsigned int uchar input()。 } TH1=256(1000000/f)/256。 xsh()。 f=10*f+a[e]。e++) { while(input()9)。} else{ for(e=0。p33=1。p30=1。old=a[0]。p30=1。} else if(a[0]==55) {p33=0。p34=1。p30=1。old=a[0]。p33=1。 if(a[0]==33) {p30=0。 while(input()==12)。 f=0。 delay()。mm255。 } } 正弦波 void sin() { unsigned char mm。y) { DAC0832=y。 } for(y=128。y++) {DAC0832=y。 for(y=0。 delay()。x255。 } 武漢理工大學(xué) 單片機(jī)課程設(shè)計(jì)說明書 21 鋸齒波 void jvchi() { unsigned char x。i128。 DAC0832=0xff。i128。 DAC0832=0。 else return(12)。 else if(rr==table[14]) return(9)。 else if(rr==table[12]) return(7)。 else if(rr==table[10]) return(6)。 else if(rr==table[8]) return(4)。 else if(rr==table[6]) return(3)。 else if(rr==table[2]) return(55)。 武漢理工大學(xué) 單片機(jī)課程設(shè)計(jì)說明書 20 else if(rr==table[4]) return(1)。 } } if(rr==table[0]) return(33)。0x0f。 P1=0x0f。0xf0)!=0xf0) { hang=P1amp。0xf0)!=0xf0)//軟件消抖 {delayms(20)。 P1=0xf0。 uchar input() //輸入 { uchar hang,lie,rr。例如: P1口賦值 0x0f,即 00001111,假設(shè)第一個(gè)鍵按下了,則這時(shí) P1口的實(shí)際值為 00001110; P1口再賦值 0xf0,即 11110000,如果第一個(gè)鍵按下了,則這時(shí) P1口的實(shí)際值為 11100000; P1口的實(shí)際值相加得 11101110,即 0xee。 if(k==0) xshz(10,0,11)。 if(k==2) xshz(12,a[0],a[1])。 sled3=smg[p]。 void xshz(uchar h,uchar m,uchar p)//顯示子程序 {sled1=smg[h]。為了便于編程,顯示程序由顯示子程序和總顯示程序兩部分組成。mm++)。 while(j) {for(mm=0。 TF1=0。本處使用單片機(jī)的定時(shí)計(jì)數(shù)器計(jì)時(shí),在很大程度上提高了延時(shí)時(shí)間的精準(zhǔn)性。// TR1=1。//CPU 中斷允許打開 PX0=1。//外部中斷 0下降沿觸發(fā) EX0=1。 } } } } 初始化程序: void chushihua() {sled=0x80。 case 66:sin()。 case 55:jvchi()。//檢查按鍵的返回值并選擇輸出波形 case 44:tran()。//調(diào)用初始化程序,對中斷和定時(shí)計(jì)數(shù)器初始化 while(1) { {switch(old) { case 33:fang()。之后P0 口為數(shù)模轉(zhuǎn)換器輸送波形數(shù)據(jù),使示波器顯示波形。為了使編程時(shí)思路清晰,采用模塊化的編寫方式,即分功能編寫子程序,再由主函數(shù)根據(jù)需要依次調(diào)用。 波形顯示 此處是整個(gè)系統(tǒng)的第二核心,當(dāng) P0 口對頻率顯示信號輸出完畢后,數(shù)模轉(zhuǎn)武漢理工大學(xué) 單片機(jī)課程設(shè)計(jì)說明書 15 換器開關(guān)打開, P0 開始為其輸送波形信號。 波形選擇 此處為設(shè)計(jì)要求外的第二處創(chuàng)新點(diǎn),為了告訴操作者示波器當(dāng) 前顯示波的波形,我采用了四個(gè) LED 燈對相應(yīng)的波形進(jìn)行指示,通過觀察燈的亮滅就能加以區(qū)分。提供數(shù)據(jù)的 8255A 芯片具有鎖存功能,故數(shù)據(jù)只需輸入一次便可持續(xù)顯示。用鎖存器進(jìn)行地址鎖存,將 P0 口輸出的數(shù)據(jù)依次存放在 A、 B、 C口,控制所接的三個(gè)數(shù)碼管持續(xù)顯示。具體工作情況詳見軟件部分。 口接高電平和按鈕,用來實(shí)現(xiàn)外部中斷的下降沿觸發(fā)。晶振頻率為 12MHz,電容 CC2 均為 10uF。 武漢理工大學(xué) 單片機(jī)課程設(shè)計(jì)說明書 12 外圍原件此處省略不講,軟件部分見下章。數(shù)據(jù)讀入后,經(jīng)單片機(jī)程序分析,分別控制三個(gè)輸出部分: ○ 1 .四個(gè) LED 燈,通過其亮滅顯示當(dāng)前輸出的波形類型,此功能由 、 、 四個(gè)引腳控制; ○ 2.三個(gè)共陰極數(shù)碼顯示管,用以顯示當(dāng)前波形的頻率,此功能由 P0 口輸出數(shù)據(jù), 8255A 擴(kuò)展接口實(shí)現(xiàn); ○ 3.示波器。軟件選用反轉(zhuǎn)法掃描。 主要元器件列表: 原件名稱 備注 元件名稱 備注 單片機(jī) AT89C51 LED 燈 數(shù)模轉(zhuǎn)換器 DAC0832 運(yùn)算放大器 鎖存器 74LS373 三極管 NPN 并行接口芯片 8255A 晶振 12MH 示波器 7 段數(shù)碼管 共陰極 第四章 硬件設(shè)計(jì) 工作原理 本系統(tǒng)由單片機(jī) AT89C51對不同的模塊進(jìn)行統(tǒng)一調(diào)配控制以達(dá)到設(shè)計(jì)目的。頻率 顯示器電路中除 3個(gè) 7段 數(shù)碼管 外還使用了 3 個(gè)三極管 。復(fù)位電路采用 10UF 的電容, 10K 的電阻。 8255A 是一個(gè)并行輸入、輸出器件,具有 24個(gè)可編程設(shè)置的 I/O 口,包括 3 組 8位的 I/O 為 PA 口、 PB口、 PC口,又可分為 2組 12位的 I/O 口:A 組包括 A
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1