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

正文內(nèi)容

多路監(jiān)控報(bào)警系統(tǒng)單片機(jī)課程設(shè)計(jì)(存儲(chǔ)版)

2025-08-18 21:58上一頁面

下一頁面
  

【正文】 ,0x66, 0x16,0x03, 0x16,0x02, 0x16,0x03, 0x15,0x03, 0x10,0x02, 0x10,0x01, 0x11,0x01, 0x11,0x66, 0x10,0x03, 0x0F,0x0C, 0x1A,0x02, 0x19,0x02, 0x16,0x03, 0x16,0x03, 0x18,0x66, 0x18,0x03, 0x18,0x02, 0x17,0x03, 0x16,0x03, 0x19,0x00, 0x00,0x00 }。 } 多路監(jiān)控報(bào)警系統(tǒng)單片機(jī)課程設(shè)計(jì) void main(void) { unsigned int gw,sw,bw。//延時(shí)片刻 (可不要 ) //以下為歡迎界面 DisplayListChar(4, 0, 3)。39。 //開外部中斷 0 EX1=1。 //綠燈滅 LED_RED=0。j++)//第一路電壓值的掃描 { AD(x)。 DisplayListChar(3, 0, 5)。)。 Play(Music_Same,0,3,360)。 } i/=50。Runing39。 DisplayListChar(3, 0, 5)。)。 Play(Music_Same,0,3,360)。 } i/=50。Runing39。 while(1) { DisplayListChar(0, 0, 1)。:39。 DisplayOneChar(5, 1, 39。Set_Min_Value39。 if(B_UP_CHECK()) { min_value[func6]++。)。//顯示 39。 DisplayListChar(0, 1, 6)。)。 EA=1。 Delay5Ms()。 OE=0。} else if(M==2) {A=1。C=1。 OE=0。 ET0 = 1。 unsigned char Tone,Length,SL,SH,SM,SLen,XG,FD。 else if(Octachord == 3) NewFreTab[i]=2。 // 普通音最長間隔標(biāo)準(zhǔn) TR0 = 0。 //低音 if (SM==3) CurrentFre = 2。 //算出 音符類型 (0普通 1連音 2頓音 ) FD=Length/100。 LDiv2=LDivLDiv1。 } } if(LDiv2!=0) { TR0=0。 } } Point+=2。 LCM_E = 0。 LCM_E = 0。 } /****************************1602A讀狀態(tài)函數(shù) **************************/ /*函數(shù)原型 :uchar LCM_ReadData(void) /*函數(shù)功能 :1602A讀狀態(tài) /*輸入?yún)?shù) :無 /*輸出參數(shù) :1602A返回的狀態(tài) /*調(diào)用模塊 : /*建立時(shí)間 :20xx/11/14 /*作者 :站長 /**********************************************************************/ uchar LCM_ReadStatus(void) { LCM_Data = 0xFF。//檢測忙信號 return(LCM_Data)。 LCM_WriteCommand(0x38,1)。= 0xF。 } /*******************1602A按指定位置顯示一串字符函數(shù) *********************/ /*函數(shù)原型 :void DisplayListChar(uchar X, uchar Y, uchar code *DData) /*函數(shù)功能 :1602A按指定位置顯示一個(gè)字符 /*輸入?yún)?shù) :X坐標(biāo) Y坐標(biāo) 要顯示字符串的首地址 /*輸出參數(shù) :無 /*調(diào)用模塊 : /*建立時(shí)間 :20xx/11/14 /*作者 :站長 多路監(jiān)控報(bào)警系統(tǒng)單片機(jī)課程設(shè)計(jì) /**********************************************************************/ void DisplayListChar(uchar X, uchar。= 0x1。 LCM_WriteCommand(0x38,0)。 while (LCM_Data amp。 LCM_E = 1。 LCM_RW = 0。 LCM_RS = 1。 TL1 = Sound_Temp_TL1。 TL1 = Sound_Temp_TL1。 //算出頓音的演奏長度 else LDiv1=LDiv。 //加 12是對中斷延時(shí)的補(bǔ)償 } SLen=LengthTab[Length%10]。 //計(jì)算出是否升半 CurrentFre = NewFreTab[SignTab[SL1]+SH]。 // 算出 1分音符的長度 (幾個(gè) 10ms) LDiv4 = LDiv0/4。 } else NewFreTab[i] = FreTab[j]。 //新的頻率表 unsigned char i,j。 TL1 = Sound_Temp_TL1。 OE=1。} else if(M==4) {A=1。b=0。 } } } return 0。 EA=1。 if(func==10) func=0。 DisplayOneChar(6, 1, 39。 } Delay400Ms()。 Delay5Ms()。 DisplayOneChar(5, 1, 39。:39。 } //設(shè)置最低警戒值 while(func5) 多路監(jiān)控報(bào)警系統(tǒng)單片機(jī)課程設(shè)計(jì) { DisplayListChar(0, 0, 2)。 gw=max_value[func1]%10。 DisplayOneChar(2, 1, uctech[func])。 //顯示清屏 Delay5Ms()。 DisplayListChar(4, 0, )。j++)//繼續(xù)掃描本路電壓 { AD(x)。 } if(x==1) { LED_GREEN=1。 DisplayOneChar(2, 1, 39。 //顯示清屏 Delay5Ms()。 DisplayListChar(4, 0, )。j++)//繼續(xù)掃描本路電壓 { AD(x)。 } if(x==1) { LED_GREEN=1。 DisplayOneChar(2, 1, 39。 //顯示清屏 Delay5Ms()。x++) //五路電壓掃 描 { for(j=0。Runing39。 } InitialSound()。j15。//啟動(dòng)等待,等 LCM講入工作狀態(tài) LCM_Init()。j120。 uint min_value[5]={0,0,0,0,0}。 //7 uchar code 1[] = {Set_Max_Value}。 unsigned int code FreTab[12] = { 262,277,294,311,330,349,369,392,415,440,466,494 }。639。239。//向下按鍵去抖 void InitialSound(void)。 void DisplayListChar(uchar X, uchar Y, uchar code *DData)。 //外部中斷 INT1 sbit B_UP=P0^7。 sbit LCM_E=P3^5。 子程序設(shè)計(jì): 由于 C語言的子程序功能比較強(qiáng)大,所 以本程序調(diào)用相關(guān)子程序,減少了很多編程的繁瑣,相關(guān)子程序功能如下所示: 函數(shù)功能 :400ms延時(shí)延時(shí) 函數(shù)功能 :5ms延時(shí) 函數(shù)功能 :1602A按指定位置顯示一個(gè)字符 函數(shù)功能 :1602A初始化 函數(shù)功能 :1602A讀狀態(tài) 函數(shù)功能 :1602A寫指令 函數(shù)功能 :1602A讀數(shù)據(jù) 函數(shù)功能 :1602A寫數(shù)據(jù) 作用: AD0809通道選擇采樣值 流程圖: 多路監(jiān)控報(bào)警系統(tǒng)單片機(jī)課程設(shè)計(jì) 否 是 六、 系統(tǒng) C程序 根據(jù)上述軟 /硬件的設(shè)計(jì),編寫好的源程序如下: /****************************************************************** ** ADC0809的多路電壓監(jiān)視器 ** ADC0809+1602LCD+單片機(jī) ** 作者:于萱格 初始化液晶 初始化 ADC0809 顯示第 i 路電壓 For i=0。 第 15腳: BLA背光電源正極 (+5V)輸入引腳。 SST89E58RD (1)、 SST89E58RD管腳圖 : 多路監(jiān)控報(bào)警系統(tǒng)單片機(jī)課程設(shè)計(jì) 1602液晶 引腳功能說明 第 1腳: VSS為電源地,接 GND。 EOC為轉(zhuǎn)換結(jié)束信號。多路開關(guān)可選通 8個(gè)模擬通道,允許 8路模擬量分時(shí)輸入, 共用A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。 三、 工作原理及設(shè)計(jì)思路 多路監(jiān)控報(bào)警系統(tǒng) 的設(shè)計(jì)由 A/D轉(zhuǎn)換、數(shù)據(jù)處理及顯示控制等組成。要求: 數(shù)字電壓 多路監(jiān)控報(bào)警系統(tǒng) 可測量 0~5V輸入電壓,電壓值通過 液晶 輪流 顯示 ,并根據(jù)設(shè)置的限定值對輸入超出額度的路端警報(bào)提示 。 由上圖可知, ADC0809由一個(gè) 8路模擬開關(guān)、一個(gè)地址鎖存與譯碼器、一個(gè) A/D轉(zhuǎn)換器和一個(gè)三態(tài)輸出鎖存器組成。當(dāng) ST上跳沿時(shí),所有內(nèi)部寄存器清零;下跳沿時(shí),開始進(jìn)行 A/D轉(zhuǎn)換;在轉(zhuǎn)換期間, ST應(yīng)保持低電平。 (2)、 ADC0809應(yīng)用說明 ADC0809內(nèi)部帶有輸出鎖存器,可以與 AT89S51單片機(jī)直接相連,初始化時(shí),使 ST和 OE信號全為低電平,送要轉(zhuǎn)換的哪一通道的地址到 A, B, C端口上,在ST端給出一個(gè)至少有 100ns寬的正脈沖信號,是否轉(zhuǎn)換完畢,我們根據(jù) EOC信號來判斷,當(dāng)EOC變?yōu)楦唠娖綍r(shí),這時(shí)給 OE為高電平,轉(zhuǎn)換的數(shù)據(jù)就輸出給單片機(jī)了。 第7~ 14腳: D0~ D7為 8位雙向數(shù)據(jù)線。 2) 數(shù)據(jù)處理程序: 可以說是整個(gè)程序設(shè)計(jì)的最難點(diǎn),數(shù)據(jù)處理顯示的電壓值計(jì)算公式: V=( A*500) /255,(其中 A為經(jīng) 0809轉(zhuǎn)換后所得的數(shù)字量) 這樣使得計(jì)算出來的數(shù)值為整型,避免了浮點(diǎn)數(shù)計(jì)算復(fù)雜的缺點(diǎn),在之后的顯示中加入小數(shù)點(diǎn)即可。 sbit C = P0^6。 //外部中斷 INTO sbit EX_1=P3^3。 void DisplayOneChar(uchar X, uchar Y, uchar DData)。 //向上按鍵去抖 char B_DOWN_CHECK(void)。,39。,39。}。 uchar code [] = {Running}。 uint max_value[5]={200,200,200,200,200}。i++) for(j=0。 //ADC0809初始化 Delay400Ms()。 for(j=0。 Delay5Ms(
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1