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

正文內(nèi)容

智能遠程控制led顯示設備設計畢業(yè)設計論文-資料下載頁

2025-06-19 13:31本頁面
  

【正文】 **************************************************/void displayS(unsigned int timer) //指定時間掃描顯示{ unsigned char i。 while(timer){ //當timer=1時,大約1秒時間 i=130。 while(i) display()。 }}/******************************************************************* 函數(shù)名:displaymove() 功能:顯示漢字內(nèi)容的移動效果 ,LP指向要顯示第一個字的首地址,C表示顯示字的個數(shù),timer是移動的速度入口變量:lp,c,timer出口變量:無*******************************************************************/void displaymove(unsigned char *lp,unsigned char c,unsigned char timer,unsigned char dir)//顯示漢字內(nèi)容的移動效果,LP指向要顯示第一個字的首地址,C表示顯示字的個數(shù),timer是移動的速度 dir是移動方向 1 從右向左 0 從左向右{ unsigned char i=0,j=0,ia=0。 unsigned char tmp=0,timerc=0。 unsigned char tmp2[16]。 c*=2。 //因一個漢字由32字節(jié)組成,而移位顯示,要分開半個漢字16字節(jié)處理,因此將這里乘以2 for(i=0。i16。i++) tmp2[i]=0。 //將緩沖區(qū)清0, while(c) { //循環(huán)處理 if(lp!=0) { //當lp指向的地址為0時,直接用組緩沖0補上,效果是將當前顯示的內(nèi)容移出 if(dir) //從右向左移動 tmp=c%2。 //取余,目的是為了判斷處理漢字的前半部份還是后半部份 else //從左向右移動 tmp= ~c%2。 for(i=0。i16。i++) { tmp2[i]=lp[i*2+tmp]。 //取半個漢字點陣數(shù)據(jù),16字節(jié) } if(dir) { if(tmp) lp+=32。 } else { if(!tmp) //當tmp為1時,表時一個字數(shù)組處理完成,將地址轉(zhuǎn)到下一個字 lp+=32。 } } tmp=8。 //變量再次利用 while(tmp) { //循環(huán)8次,是將下一個字的前半部份的字節(jié)數(shù)據(jù)移入顯示緩沖 ia=0。 //做為點陣數(shù)組的元素 for(i=0。i16。i++) { //移動是16行同時移,因此要處理16字節(jié) if(dir) { lhj[ia]=1。 //移當前顯示緩沖的前半行字節(jié) if(lhj[ia+1]amp。0x80) //判斷后半行字節(jié)的高位是否為1,是移入前半行字節(jié)低位,否則不處理 lhj[ia]++。 ia++。 lhj[ia]=1。 //移當前顯示緩沖的后半行字節(jié) if(tmp2[i]amp。0x80) //判斷下一個要顯示漢字的前半行字節(jié)的高位是否為1,是移入,否則不處理 lhj[ia]++。 ia++。 tmp2[i]=1。 //下一個要顯示漢字的半行字節(jié)向高位移一位,準備下一次取位 } else { lhj[ia+1]=1。 if(lhj[ia]amp。0x01) lhj[ia+1]|=0x80。 lhj[ia]=1。 if(tmp2[i]amp。0x01) lhj[ia]|=0x80。 ia++。ia++。 tmp2[i]=1。 } } tmp。 timerc=timer。 //處理完16行,調(diào)用顯示函數(shù)更新點陣 while(timerc) //循環(huán)做為處理的速度,即移動的速度 display()。 } // c。 //移完一半,進入下一半或下一個漢字,直到結(jié)束 }}/******************************************************************* 函數(shù)名:displaymovetb() 功能:上下移動內(nèi)容,din:1為向下,0為向上,lp指向要移入的內(nèi)容,timer為移動速度入口變量:din,lp,timer出口變量:無*******************************************************************/void displaymovetb(unsigned char din,unsigned char *lp,unsigned char timer){ unsigned char i=0,j=0,ia=0。 unsigned int tmp=0,timerc=0。 if(din) { //判斷移動方向,向下 ia=32。 //要移入第一個漢字的數(shù)組元素 i=16。 //行索引 while(i) { //逐行處理 j=30。 while(j) { j。 lhj[j+2]=lhj[j]。 //將上一行的內(nèi)容復制到下一行,每兩行內(nèi)容相隔四個字節(jié),復制15行 } if(lp==0) { //最后一行的處理,判斷移入的內(nèi)容是否為空,是用0移入 lhj[0]=0xff。 lhj[1]=0xff。 } else { //否則,取字數(shù)組處理 ia。 lhj[1]=lp[ia]。 ia。 lhj[0]=lp[ia]。 } timerc=timer。 //處理完16行,調(diào)用顯示函數(shù)更新點陣 while(timerc) //循環(huán)做為處理的速度,即移動的速度 display()。 } } else { //移動方向,向上 ia=0。 //向上移動,移入漢字從低位開始 for(i=0。i16。i++) { //處理16行 for(j=0。j30。j++) //將下一行的內(nèi)容復制到上一行,每兩行內(nèi)容相隔四個字節(jié),復制15行 lhj[j]=lhj[j+2]。 if(lp==0) { //最后一行的處理,判斷移入的內(nèi)容是否為空,是用0移入 lhj[30]=0xff。 lhj[31]=0xff。 } else { //否則,取字數(shù)組處理 lhj[30]=lp[ia]。 lhj[31]=lp[ia+1]。 ia+=2。 } timerc=timer。 //處理完16行,調(diào)用顯示函數(shù)更新點陣 while(timerc) //循環(huán)做為處理的速度,即移動的速度 display()。 } }}/******************************************************************* 函數(shù)名:delay() 功能:延時入口變量:a出口變量:無*******************************************************************/void delay(unsigned int a) //延時{ while(a)。}void Uart_int(){ //PCON |= 0x80。 //使能波特率倍速位SMOD SCON = 0x50。 //8位數(shù)據(jù),可變波特率 AUXR amp。= 0xBF。 //定時器1時鐘為Fosc/12,即12T AUXR amp。= 0xFE。 //串口1選擇定時器1為波特率發(fā)生器 TMOD amp。= 0x0F。 //清除定時器1模式位 TMOD |= 0x20。 //設定定時器1為8位自動重裝方式 TL1 = 0xFd。 //設定定時初值 TH1 = 0xFd。 //設定定時器重裝值 ET1 = 0。 //禁止定時器1中斷 TR1 = 1。 //啟動定時器1 ES = 1。 //Enable UART interrupt EA = 1。 //Open master interrupt switch}/*******************************************************************UART interrupt service routine*******************************************************************/void Uart_Isr() interrupt 4 using 1{ if (RI) { RI = 0。 //Clear receive interrupt flag if(!times) //第一字節(jié)是指令字節(jié),定義見上 以下128個字節(jié)分別為4個漢字字模數(shù)據(jù) 每個漢字字模數(shù)據(jù)是32字節(jié) { contrchar = SBUF。 } else if((times0)amp。amp。(times33)) { temp1[times1] = SBUF。 } else if((times32)amp。amp。(times65)) { temp2[times33] = SBUF。 } else if((times64)amp。amp。(times97)) { temp3[times65] = SBUF。 } else if((times96)amp。amp。(times129)) { temp4[times97] = SBUF。 } times++。 if(times==129) times = 0。 } if (TI) { TI = 0。 //Clear transmit interrupt flag }} 附錄二Proteus完整硬件仿真圖如下: 畢業(yè)設計(論文)原創(chuàng)性聲明和使用授權說明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設計(論文),是我個人在指導教師的指導下進行的研究工作及取得的成果。盡我所知,除文中特別加以標注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我為獲得 及其它教育機構(gòu)的學位或?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻的個人或集體,均已在文中作了明確的說明并表示了謝意。作 者 簽 名:       日  期:        指導教師簽名:        日  期:        使用授權說明本人完全了解 大學關于收集、保存、使用畢業(yè)設計(論文)的規(guī)定,即:按照學校要求提交畢業(yè)設計(論文)的印刷本和電子版本;學校有權保存畢業(yè)設計(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務;學??梢圆捎糜坝?、縮印、數(shù)字化或其它復制手段保存論文;在不以贏利為目的前提下,學??梢怨颊撐牡牟糠只蛉績?nèi)容。作者簽名:        日  期:         學位論文原創(chuàng)性聲明本人鄭重聲明:所呈交的論文是本人在導師的指導下獨立進行研究所取得的研究成果。除了文中特別加以標注引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫的成果作品。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標明。本人完全意識到本聲明的法律后果由本人承擔。作者簽名: 日期: 年 月 日學位論文版權使用授權書本學位論文作者完全了解學校有關保留、使用學位論文的規(guī)定,同意學校保留并向國家有關部門或機構(gòu)送交論文的復印件和電子版,允許論文被查閱和借閱。本人授權      大學可以將本學位論文的全部或部分內(nèi)容編入有關數(shù)據(jù)庫進行檢索,可以采用影印、縮印
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1