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

正文內(nèi)容

課程設(shè)計報告--數(shù)字時鐘的設(shè)計與制作(完整版)

2025-02-24 01:14上一頁面

下一頁面
  

【正文】 void miaobiao_init()。 //顯示溫度void key()。void lcd_write(uchar )。sbit lcd_re=P2^5。1602B外觀如圖15所示:圖151602引腳說明如表21所示:編號符號引腳說明編號符號引腳說明1VSS電源地9D2雙向數(shù)據(jù)口2VDD電源正極10D3雙向數(shù)據(jù)口3VL對比度調(diào)節(jié)11D4雙向數(shù)據(jù)口4RS數(shù)據(jù)/命令選擇12D5雙向數(shù)據(jù)口5R/W讀/寫選擇13D6雙向數(shù)據(jù)口6E模塊使能端14D7雙向數(shù)據(jù)口7D0雙向數(shù)據(jù)口15BLK背光源地8D1雙向數(shù)據(jù)口16BLA背光源正極 表211602的基本操作時序為:讀狀態(tài):輸入: RS=0,RW=1,E=1 輸出:D0~D7=狀態(tài)字寫指令:輸入: RS=0,RW=0,D0~D7=指令碼,E=高脈沖 輸出:無讀數(shù)據(jù):輸入: RS=1,RW=1, 輸出:D0~D7=數(shù)據(jù)寫數(shù)據(jù):輸入: RS=1,RW=0,D0~D7=數(shù)據(jù),E=高脈沖 輸出:無(4) 時鐘信號產(chǎn)生電路:本單元電路采用時鐘芯片DS1302來實現(xiàn)日期、時間的顯示功能。⑴ 單片機的選擇:根據(jù)以上的兩種方案的比較,本電路設(shè)計時最終采用的是AT89S52芯片。無論從單片機的資源,還是執(zhí)行速度進行比較,51單片機都要比其他單片機性價比高。AT89S52有如下特點:8K字節(jié)的系統(tǒng)內(nèi)可編程Flash(具有同時讀寫的能力,即(RWW),512 字節(jié)EEPROM,1K字節(jié)SRAM,32個通用I/O口線,32個通用工作寄存器,用于邊界掃描的JTAG 接口,支持片內(nèi)調(diào)試與編程,三個具有比較模式的靈活的定時器/ 計數(shù)器(T/C),片內(nèi)/外中斷,可編程串行USART,有起始條件檢測器的通用串行接口,具有片內(nèi)振蕩器的可編程看門狗定時器,一個SPI串行端口,以及六個可以通過軟件進行選擇的省電模式。 4方案二:采用MCU內(nèi)部定時器。51內(nèi)核具有豐富的指令集和32個通用工作寄存器。在更新應(yīng)用Flash存儲區(qū)時引導(dǎo)Flash區(qū)(Boot Flash Memory)的程序繼續(xù)運行,實現(xiàn)了RWW操作。AT89S52內(nèi)部含有2個定時器,可以利用一個定時器與程序計數(shù)器相結(jié)合的方式,在系統(tǒng)晶振的驅(qū)動下,產(chǎn)生標(biāo)準(zhǔn)時鐘頻率。液晶顯示模塊具有體積小、功耗低、顯示內(nèi)容豐富等特點,現(xiàn)在字符型液晶顯示模塊已經(jīng)是單片機應(yīng)用設(shè)計中最常用的信息顯示器件了。sbit lcd_on=P1^4。 //減一 sbit s4 =P2^3。 //寫一個字節(jié)uchar code wendu[]=0123456789。void write1302(uchar add,uchar date)。void alarm_sound()。sbit acc7 = ACC^7。uchar table_3[]=ST_UP:。void delay(uint z) { uint x,y。lcd_write(0x0c)。delay(1)。}void change(uchar add,uchar date,uchar row){uchar shi,ge。 lcd_writedata(0x30+ge)。 lcd_writedata(39。 lcd_writedata(39。 } } if(s4num==2) TR0=1。 lcd_write(0x80+0x40+7)。 lcd_write(0x80+2)。weimiao=0。// if(s1num==8)// s1num=0。 case 3:lcd_write(0x80+0x40+1)。 break。 lcd_write(0x0c)。 //分 write1302(0x80, time1[0]/10*16+time1[0]%10)。 change(6,time1[0],1)。 case 3:time1[2]++。 lcd_write(0x80+2)。 if(time1[3]==32) time1[3]=1。 break。 case 2:time1[1]。 lcd_write(0x80+0x40+0)。 if(time1[4]==0) time1[4]=12。 break。 //年 write1302(0x88,0x03)。ACC=d。 for(i=8。 ds1302_clk = 0。 ds1302_clk = 0。 uchar add=0x81。i7。 } else{ lcd_write(0x80+0x40+8)。)。 //寫年 }void write_xingqi(char xingqi){char num。)。 lcd_writedata(39。 lcd_writedata(0xdf)。 delay_ds1820(8)。uchar dat=0。 } return(dat)。dq = 1。 writeonechar(0x44)。t=t|a。ge=num/10。 lcd_writedata(wendu[ge])。lcd_write(0x80+0x40+5)。ET0=1。 //禁止寫入 }void read_alarm(){ write1302(0x8e,0x00)。num++) { lcd_writedata(table_2[num])。 if(!s2) { up++。 }while(!s3)。 } lcd_writedata(table_3_1[0]+0x30)。 lcd_writedata(table_4_1[1]+0x30)。 while(s1) {wenkey()。write1302(0x8e,0x00)。 displayw() 。fen++。 } change(8,miao,1)。所有的寄存器都直接與算術(shù)邏輯單元(ALU) 相連接,使得一條指令可以在一個時鐘周期內(nèi)同時訪問兩個獨立的寄存器。 通過將8位RISC CPU與系統(tǒng)內(nèi)可編程的Flash集成在一個芯片內(nèi),ATmega16 成為一個功能強大的單片機,為許多嵌入式控制應(yīng)用提供了靈活而低成本的解決方案。使用霍爾傳感器還需要應(yīng)用磁鐵。系統(tǒng)組成框圖如下圖11所示:圖11(1) 復(fù)位電路如圖12所示:圖12(2)晶振電路如圖13所示:圖13(3)顯示電路如圖14所示: 圖141液晶顯示模塊概述12864M 漢字圖形點陣液晶顯示模塊,可顯示漢字及圖形,內(nèi)置 8192 個中文漢字(16X16 點陣)、128 個字符(8X16 點陣)及 64X256 點陣顯示 RAM(GDRAM)。 //模式位,低電平輸入指令,高電平輸入數(shù)據(jù)sbit LCD_RW=P2^1。 //忙檢測void LCDSendWord(unsigned char *p)。 sbit ENA=P3^0。0x80)==0x80)。 LCD_E = 0。 LCD_E = 0。 // 顯示光標(biāo)移動設(shè)置 WriteCommandLCD(0x30)。則寫入指令 } else { WriteDataLCD(word)。 //每次傳輸?shù)妥止?jié) temp=1。 //啟動 WriteDs1302Byte(address)。 DS1302_RST=1。 //每次傳輸?shù)妥止?jié) DS1302_CLK=0。 DisplayHour1()。 LCDTestWord(0,0x88)。 }void Key(void){ if (qiehuan==0) // 設(shè)置時間 { DelayMs(10)。 //圈數(shù) s=3*20*s2/100。amp。 second_a_shi=second_a/10。 LCDTestWord(1,0x3a)。 m=0,m_bai=0,m_shi=0,m_ge=0,m_d=0。 ENB=0。 ENB=0。 DelayMs(100)。i++) { Speaker=0。 flag=~flag。ENB=0。 //路程 LCDTestWord(1,0x30+s_shi)。 LCDTestWord(1,0x2e)。i++) 。 TL0=0xb0。//定時500000 TL0=0xb0。 if(ho。 if(count==20) //定時1S { count=0。 ET0=1。}void main(){ PSB=1。 LCDTestWord(0,0x97)。 LCDTestWord(1,0x2e)。i3。i3。 Speaker=1。 WriteCommandLCD(0x0C)。 w=0。i3。 count=0。 LCDTestWord(1,0x30+minutes_a_ge)。 minutes_a_shi=minutes_a/10。 //金額 else m=(8+s_shi*2*10+s_ge*2+s_p*+minutes*+second*)*10。 //公里的十位 s_ge=s/1000。 WriteCommandLCD(0x30)。 LCDTestWord(1,0x3a)。 DisplaySec1()。 //右移一位 } DS1302_RST=0。 WriteDs1302Byte(address)。 //發(fā)送數(shù)據(jù) DS1302_RST=0。 }} /***********************************寫入數(shù)據(jù)*****************************/void WriteDs1302( unsigned char address,unsigned char dat ) //先寫地址,再寫數(shù)據(jù){ DS1302_RST=0。則寫入數(shù)據(jù) }}/***************************寫入操作*********************/void WriteDs1302Byte(unsigned char temp) { unsigned char i。你好39。}/***************LCD初始化******************/void LCDInit(void){ WriteCommandLCD(0x30)。}/******************給LCD寫入指令**********************/void WriteCommandLCD(unsigned char WCLCD) //BuysC為0時忽略忙檢測{ CheckBusy()。}/**********************給LCD寫入數(shù)據(jù)*****************/void WriteDataLCD(unsigned char WDLCD){ CheckBusy()。void Key(void)。/**********定義開關(guān)按鍵的數(shù)據(jù)線************/sbit shangche=P1^0。 //LCD12864使能位,低電平無效,高電平使能sbit PSB=P2^3。(2) 軟件編程流程圖:1 按電路設(shè)計圖,分配各I/O口; 2根據(jù)任務(wù)要求分配各按鍵功能; 3 根據(jù)分配的按鍵功能完成相應(yīng)的編程; 4 根據(jù)各分配的I/O口,完成相應(yīng)的編程; 5完成芯片1602初始化程序; 6 完成主程序的編程。它可用于檢測直接引起光量變化的非電量,如光強、光照度、輻射測溫、氣體成分分析等;也可用來檢測能轉(zhuǎn)換成光量變化的其他非電量,如零件直徑、表面粗糙度、應(yīng)變、位移、振動、速度、加速度,以及物體的形狀、工作狀態(tài)的識別等。無論從單片機的資源,還是執(zhí)行速度進行比較,51單片機都要比其他單片機性價比高。AT89S52有如下
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1