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

正文內(nèi)容

多功能電子時鐘系統(tǒng)設(shè)計(已改無錯字)

2022-07-27 23:24:05 本頁面
  

【正文】 write_time1 = dingshi_timer。 } if((dingshi_flag_up==2)amp。amp。(KEY_UP==0)) { delay(10)。 write_time2 = dingshi_timer。 } if((dingshi_flag_up==3)amp。amp。(KEY_UP==0)) { delay(10)。 write_time3 = dingshi_timer。 } }}} //************************************ //LCD1602測忙 //************************************void check_busy(void){ while(1) { P0=0xff。 E=0。 _nop_()。 RS=0。 _nop_()。 _nop_()。 RW=1。 _nop_()。 _nop_()。 E=1。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 if((P0amp。0x80)==0) { break。 } E=0。 }}//************************************//LCD1602寫命令//************************************void write_mand(uchar tempdata){ E=0。 _nop_()。 _nop_()。 RS=0。 _nop_()。 _nop_()。 RW=0。 P0=tempdata。 _nop_()。 _nop_()。 E=1。 _nop_()。 _nop_()。 E=0。 _nop_()。 _nop_()。 check_busy()。}//************************************//LCD1602寫數(shù)據(jù)//************************************void write_data(uchar tempdata){ E=0。 _nop_()。 _nop_()。 RS=1。 _nop_()。 _nop_()。 RW=0。 P0=tempdata。 _nop_()。 _nop_()。 E=1。 _nop_()。 _nop_()。 E=0。 _nop_()。 _nop_()。 check_busy()。}//************************************//初始化LCD1602//************************************void init_lcd1602(){ write_mand(0x01)。 delay(5)。 //清除屏幕 write_mand(0x38)。 delay(5)。 //功能設(shè)定(8位,2行,5*7點陣式) write_mand(0x0c)。// //顯示器ON,光標OFF,閃爍OFF write_mand(0x06)。 //地址加1 delay(5)。}void display(void){ uchar i。 write_mand(0x80)。 for(i=0。i16。i++) { write_data(first_line[i])。 } write_mand(0xc0)。 for(i=0。i16。i++) { write_data(second_line[i])。 }}/*DS1302的操作*/define uint unsigned intdefine uchar unsigned chardefine nop _nop_define SECOND 0define MINUTE 1define HOUR 2define DAY 3define MONTH 4define WEEK 5define YEAR 6define WRITE_PROTECT 0x8Edefine WRITE_CURRENT 0x90//include//include//include //向DS1302某地址寫1字節(jié)的數(shù)據(jù)/命令void write_B(uchar addr,uchar ucda){ uchar i,temp。 sclk=0。 //清零時鐘總線 rst=0。 //CE引腳為低,數(shù)據(jù)傳送中止 nop()。 rst=1。//打開數(shù)據(jù)傳送//CE引腳為高,邏輯控制有效 for(i=0。i8。i++) //寫命令8位 { sclk=0。 temp=addr。 io=(bit)(tempamp。0x01)。 //每次傳輸?shù)妥止?jié) addr=1。 //右移一位 sclk=1。 //上升沿寫入 nop()。 nop()。 } for(i=0。i8。i++) //寫數(shù)據(jù)8位 { sclk=0。 temp=ucda。 io=(bit)(tempamp。0x01)。 ucda=1。 sclk=1。 //上升沿寫入 nop()。 nop()。 } rst=0。}//從ds1302某地址讀數(shù)據(jù)/*在最后一個數(shù)據(jù)發(fā)送完了后,該脈沖的下降沿就會輸出數(shù)據(jù)的第一位!*/uchar read_B(uchar addr){ uchar i,temp,dat1,dat2。 rst=0。 sclk=0。 rst=1。 for(i=0。i8。i++) { sclk=0。 temp=addr。 io=(bit)(tempamp。0x01)。 addr=1。 sclk=1。 //上升沿寫入 nop()。 } for(i=0。i8。i++) { bit7=io。 sclk=1。 //下降沿讀取數(shù)據(jù) sclk=0。 nop()。 ACC=1。 } rst=0。 dat1=ACC。 //BCD與十六進制轉(zhuǎn)化 dat2=dat1/16。 dat1=dat1%16。 dat1=dat1+dat2*16。 return dat1。}//設(shè)置ds1302的時間/* 秒,分,時,日,月,周,年 注意順序; sel= 0 1 2 3 4 5 6*///從ds1302讀出1字節(jié)的數(shù)據(jù)顯示到屏幕x,y上;/* 秒,分,時,日,月,周,年 sel= 0 1 2 3 4 5 6 */ //20120921 WEEK1 235689 //23:23:23 S: 01:34:67void dis_1302(uchar sel){ uchar shi,ge,temp,num。 temp=read_B(0x81+sel*2)。 //讀的是BCD碼 //BCD碼轉(zhuǎn)化為十進制 //BCD要轉(zhuǎn)化為十進制 num=((tempamp。0x70)4)*10+(tempamp。0x0f)。//num為十進制 shi=num/10。 ge=num%10。 if(sel==0) //秒 { LCD_0=LCDData[shi]。 LCD_1=LCDData[ge]。 second_line[13]=LCD_0。 second_line[14]=LCD_1。 if((num49)amp。amp。(alarm_flag)) //時鐘整點報時響應(yīng)..... { if((num==50)||(num==52)||(num==54)||(num==56)||(num==58)) {ALARM_BEEP=0。} if((num==51)||(num==53)||(num==55)||(num==57)) {ALARM_BEEP=1。} if(num==59) { ALARM_BEEP=0。 delay(5)。 ALARM_BEEP=1。 delay(5)。 } } } if(sel==1) //分 { if(num==59) {alarm_flag=1。} else{alarm_flag=0。} LCD_0=LCDData[shi]。 LCD_1=LCDData[ge]。 second_line[10]=LCD_0。 second_line[11]=LCD_1。 } if(sel==2)//時 { LCD_0=LCDData[shi]。 LCD_1=LCDData[ge]。 second_line[7]=LCD_0。 second_line[8]=LCD_1。 } if(sel==3)//日 { LCD_0=LCDData[shi]。 LCD_1=LCDData[ge]。 first_line[8]=LCD_0。 first_line[9]=LCD_1。 } if(sel==4)//月 { LCD_0=LCDData[shi]。 LCD_1=LCDData[ge]。 first_line[5]=LCD_0。 first_line[6]=LCD_1。 } if(sel==5)//周 { LCD_0=LCDData[ge]。 first_line[15]=LCD_01。 } if(sel==6)//年 { LCD_0=LCDData[shi]。 LCD_1=LCDData[ge]。 first_line[2]=LCD_0。 first_line[3]=LCD_1。 } display()。}//WEEK15//在ds1302中讀星期值void dis_1302_xingqi(){ uchar ge,temp,num。 temp=read_B(0x81+WEEK*2)。 //讀的是BCD碼 //BCD轉(zhuǎn)化為十進制 num=((tempamp。0x70)4)*10+(tempamp。0x0f)。//num為十進制 ge=num%10。 //星期的十位是0,所以可以只考慮個位}//初始化DS1302void ds1302_init(void) { write_B(0x8e,0x00)。 //禁止寫保護 /*初始化日期、月份等不能設(shè)為0;*/ write_B(0x80,0x00)。 //秒位初始化 write_B(0x82,0x01)。 //分鐘初始化 write_B(0x84,0x01)。 //小時初始化 write_B(0x86,0x01)。 //日數(shù)初始化 write_B(0x88,0x01)。 //月份初始化 write_B(0x8a,0x04)。 //星期初始化 write_B(0x8c,0x09)。 //年份初始化 write_B(0x8e,0x80)。 //允許寫保護}void set_sys_param(void) //進行時鐘校正模式或者秒表模式.{ switch(set_sel) { case 1: //進入校正時間模式 { //以下是框架. first_line[0]=39。239。 first_line[1]=39。039。 first_line[4]=39。39。 first_line[7]=39。39。 first_line[11]=39。W39。 first_line[12]=39。E39。 first_line[13]=39。E39。 first_line[14]=39。K39。
點擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1