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

正文內(nèi)容

山科大_單片機(jī)的c語(yǔ)言程序設(shè)計(jì)與運(yùn)用(第2版)期末復(fù)習(xí)題及答案-資料下載頁(yè)

2025-06-28 13:41本頁(yè)面
  

【正文】 5)。 P3=0xff。 v++。 if(v==8) v=0。 }} void dl( ){ uint r。for(r=0。r40。r++)dir( )。} void main(void){ while(1) { j=0。 dir( )。dl( )。 j=8。 dir( )。dl( )。j=16。 dir( )。dl( )。j=24。 dir( )。dl( )。j=32。 dir( )。dl( )。j=40。 dir( )。dl( )。j=48。 dir( )。j=56。 dir( )。dl( )。 }}*例612 編程在LCD1602上顯示由鍵盤輸入的字符或數(shù)字。(不用記)//S51+1602,晶振為12Minclude include includesbit RS=P3^5。 sbit RW=P3^6。 sbit E=P3^7。 define busy 0x80 define uchar unsigned char define uint unsigned intuchar a[]={39。039。,39。139。,39。239。,39。339。,39。439。,39。539。,39。639。,39。739。,39。839。,39。939。,39。a39。,39。b39。,39。c39。,39。d39。,39。e39。,39。f39。,}。void delay_LCM(uchar k)//延時(shí)函數(shù) { uint i,j。 for(i=0。ik。i++) { for(j=0。j60。j++) {。} }} void test_1602busy()//測(cè)忙函數(shù) { P1=0xff。 E=1。 RS=0。 RW=1。 _nop_()。 _nop_()。 while(P1amp。busy) //檢測(cè)LCD DB7 是否為1 { E=0。 _nop_()。 E=1。 _nop_()。 } E=0。 } void write_1602Command(uchar co) //寫命令函數(shù) { test_1602busy()。 //檢測(cè)LCD是否忙 RS=0。 RW=0。 E=0。 _nop_()。 P1=co。 _nop_()。 E=1。 //LCD的使能端 高電平有效 _nop_()。 E=0。 } void write_1602Data(uchar Data)//寫數(shù)據(jù)函數(shù) { test_1602busy()。 P1=Data。 RS=1。 RW=0。 E=1。 _nop_()。 E=0。 } void init_1602(void)//初始化函數(shù) { write_1602Command(0x38)。 //LCD功能設(shè)定,DL=1(8位),N=1(2行顯示) delay_LCM(5)。 write_1602Command(0x01)。 //清除LCD的屏幕 delay_LCM(5)。 write_1602Command(0x06)。 // LCD模式設(shè)定,I/D=1(計(jì)數(shù)地址加1) delay_LCM(5)。 write_1602Command(0x0F)。 //顯示屏幕 delay_LCM(5)。} void DisplayOneChar(uchar X,uchar Y,uchar DData){ Yamp。=1。 Xamp。=15。 if(Y)X|=0x40。 //若y為1(顯示第二行),地址碼+0X40 X|=0x80。 //指令碼為地址碼+0X80 write_1602Command(X)。 write_1602Data(DData)。}void display_1602(uchar *DData,X,Y)//顯示函數(shù) { uchar ListLength=0。 Yamp。=0x01。 Xamp。=0x0f。 while(X16) { DisplayOneChar(X,Y,DData[ListLength])。 ListLength++。 X++。 } } void delay(uint i) //延時(shí)程序{uint j。for (j=0。ji。 j++)。}uchar checkkey()// 檢測(cè)有沒有鍵按下{uchar i 。 uchar j 。 j=0x0f。 P2=j。 i=P2。 i=iamp。0x0f。 if (i==0x0f) return (0)。 else return (0xff)。 }uchar keyscan()//鍵盤掃描程序{uchar scancode。uchar codevalue。uchar a。uchar m=0。uchar k。uchar i,j。 if (checkkey() ==0) return (0xff)。 else {delay(100)。 if (checkkey()==0) return (0xff)。 else { scancode=0xf7。m=0x00。 //鍵盤行掃描初值,M為列數(shù) for (i=1。i=4。i++) { k=0x10。 P2=scancode。 a=P2。 for (j=0。j4。j++) //J為行數(shù) { if ((aamp。k)==0) { codevalue = m+j。 while (checkkey()!=0)。 return (codevalue)。 } else k=k1。 } m=m+4。 scancode=~scancode。 //為scancode右移時(shí),移入的數(shù)為1 scancode=scancode1。 scancode=~scancode。 } } }}void main() //主函數(shù){ uchar *s。uchar z。uchar i=0,j=0。 //i為L(zhǎng)CD的行,j為L(zhǎng)CD的列 delay_LCM(15)。 init_1602()。 //1602初始化 s=WELCOME TO HERE!。 display_1602(s,0,0)。 //第一行顯示W(wǎng)ELCOM TO HERE ! delay_LCM(200)。 delay_LCM(200)。 delay_LCM(200)。 while(1) { if (checkkey()==0x00) continue。 else { {i=1。 //LCD在第二行顯示 z= keyscan()。 if (j=16) {j=0。i=1。 break。 } elseDisplayOneChar(j,i,a[z])。j++。 delay(100)。 } } } } 第七章 【例74】采用DAC0832實(shí)現(xiàn)的波形發(fā)生器includeincludedefine uchar unsigned chardefine DAC0832 XBYTE[0x7fff]code uchar sintab[ ]={0x7f,0x89,0x94,0x9f,0xaa, 0xb4,0xbe,0xc8,0xd1,0xd9, 0xe0,0xe7,0xed,0xf2,0xf7, 0xfa,0xfc,0xfe,0xff}。sbit P10=P1^0。sbit P11=P1^1。sbit P12=P1^2。sbit P13=P1^3。uchar m=0。void delay( ){uchar j。 for(j=0。jj++)。}void int0( ) interrupt 0{ P1=0xff。 if(P10==0) { m=1。} if(P11==0) { m=2。} if(P12==0) { m=3。} if(P13==0) { m=4。} }void main( ){ uchar data i。 EA=1。 EX0=1。 IT0=1。 while(1) { kkk: switch(m) { case 0: goto kk。break。 case 1: goto k0。break。 case 2: goto k1。break。 case 3: goto k2。break。 case 4: goto k3。break。 default:break。 } k0: while(1) {for(i=0。i0xff。i++) { DAC0832=i。 } goto kkk。 } k1:while(1) { for(i=0。i0xff。i++) {DAC0832=i。} for(i=0xff。i0。i) {DAC0832=i。} goto kkk。 } k2: while(1) { DAC0832=0xff。 delay( )。 DAC0832=0。 delay( )。 delay( )。 goto kkk。 } k3: while(1) { for(i=0。i18。i++) { DAC0832=sintab[i]。} for(i=18。i0。i) { DAC0832=sintab[i]。} for(i=0。i18。i++) { DAC0832=~sintab[i]。} for(i=18。i0。i) { DAC0832=~sintab[i]。} goto kkk。 } kk:DAC0832=0。 }}【例76】1路模擬輸入A/D轉(zhuǎn)換示例(1)無(wú)條件方式:includeincludedefine uchar unsigned chardefine ADC08090 XBYTE[0x78ff]void delay( ){ uchar j。 for(j=0。jj++)。}void main( ){ while(1) { ADC08090=0。 //啟動(dòng)A/D delay( )。 P1=ADC08090。 //讀取數(shù)據(jù) }} (2)查詢方式includeincludedefine uchar unsigned chardefine ADC08090 XBYTE[0x78ff]sbit P33=P3^3。Void main( ) { while(1) { ADC08090=0。 //啟動(dòng)A/D l1: P33=1。 if(P33==0) { P1=ADC08090。 }//讀取數(shù)據(jù) else goto l1。 }}(3)中斷方式includeincludedefine uchar unsigned chardefine ADC08090 XBYTE[0x78ff]sbit P33=P3^3。void main( ) { EA=1。 EX1=1。 IT1=1。 ADC08090=0。 //啟動(dòng)A/D while(1
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1