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

正文內(nèi)容

基于單片機的班級投票器(已改無錯字)

2022-07-25 20:01:55 本頁面
  

【正文】 懸空,為了單片機能穩(wěn)定工作將EA端接高電平(訪問的地址空間在0—4KB范圍內(nèi),CPU訪問內(nèi)程序存儲器;訪問的地址空間超出4KB時,CPU將自動訪問外部程序存儲器)。檢查后發(fā)現(xiàn)單片機有起振,可正常工作。其次檢查由74C922芯片構(gòu)成的鍵盤電路,發(fā)現(xiàn)由74C922芯片構(gòu)成的鍵盤電路本身能正常工作(按下相應(yīng)的鍵連接ABCD的管腳會輸出正確的數(shù)據(jù));然而按下投票按鍵數(shù)碼管確不能顯示正確的數(shù)據(jù),說明是顯示的問題。而檢查過共陰型的四聯(lián)數(shù)碼管發(fā)現(xiàn)它可以正常工作,調(diào)試時發(fā)現(xiàn)數(shù)碼管的亮度不夠,說明需要增強驅(qū)動能力,同時數(shù)碼管的顯示不正常,很有可能是因為程序中的關(guān)于數(shù)碼管動態(tài)顯示的方面有問題。在設(shè)計的電路AT89C51的P1口(—)直接接上四聯(lián)數(shù)碼管的A—G腳,顯然這樣單靠P1口的驅(qū)動是不夠的,后在P1口(—)加上7個510歐的上拉電阻(利用排阻511實現(xiàn))來增強其驅(qū)動能力,修改調(diào)試后發(fā)現(xiàn)數(shù)碼管可顯示的足夠的亮度。做好以上的修改再調(diào)試時,觀察到數(shù)碼管剛開始會顯示初始狀態(tài)(4個0),復(fù)位按鍵也有效,允許投票按鍵也可與LED配合正常顯示,但是按下投票按鍵,數(shù)碼管不會顯示正常的數(shù)鋸。再一次驗證了很有可能是軟件部分?jǐn)?shù)碼管的動態(tài)顯示有問題。后將程序中關(guān)于片選掃描部分P0口(—)—,再次燒入程序便可顯示正常的數(shù)據(jù)。此時,電路板基本上實現(xiàn)了設(shè)計要求。但必須全部投票完成后才可利用上下翻查鍵來查看投票的結(jié)果。接著對程序關(guān)于上下翻查鍵部分作出適當(dāng)?shù)男薷暮螅蓪崿F(xiàn)了再未達(dá)到預(yù)設(shè)的班級人數(shù)時,也可查看當(dāng)時的投票結(jié)果。5總結(jié)本設(shè)計是基于AT89C51設(shè)計的班級投票器。它可實現(xiàn)最多班級人數(shù)99個,最多職位候選人10個的投票選舉。由鍵盤接口專用芯片74C922完成按鍵掃描編碼工作,再通過AT89C51芯片來采集信息,完成票數(shù)統(tǒng)計任務(wù),并有四聯(lián)數(shù)碼管顯示相應(yīng)的數(shù)字(投票期間顯示選民編號和所選候選人的編號,查看結(jié)果時顯示候選人的編號及其得票數(shù))。同時有LED和允許投票按鍵來控制投票的有效性。可以在投票期間或投票結(jié)束時利用上下翻查鍵可以查看投票結(jié)果。而班級投票器主要用來滿足平常班級職位等選舉,它可以較大地提高班級職位選舉的效率,同時更加突出了選舉的公平,公開。本設(shè)計需改進(jìn)的地方,首先,可以增設(shè)一個棄權(quán)鍵和一個用于顯示最后投票選舉的結(jié)果的按鍵,使得投票系統(tǒng)更加的完善。其次,本次設(shè)計的投票器是基于班級設(shè)計,考慮到實際中班級投票的情況,設(shè)計時最多候選人人數(shù)為10人,以滿足班級日常選舉。可進(jìn)一步增大候選人人數(shù),來完善投票系統(tǒng),使其更大范圍的選舉。再有,若顯示時編號可配合人名等資料顯示,會使得顯示結(jié)果更加的直觀;最后,可以進(jìn)一步的改善,實現(xiàn)直接手動調(diào)節(jié)相關(guān)按鍵便可設(shè)置最大班級人數(shù),而不需要通過軟件修改來完成。附錄PCB圖源程序include sbit LED =P2^4。sbit P2_0 = P2^0。sbit P2_1 = P2^1。sbit P2_3 = P2^3。sbit P2_2 = P2^2。sbit P3_3 = P3^3。unsigned char key=0。define max_xuanmin 45 //最多選民數(shù)量unsigned char beixuan[11]。//選手選票數(shù)unsigned char xuanmin=1。//選民編號unsigned char present=1。//目前這個被選者,用于顯示整體選票unsigned char ledout[4]。 //顯示數(shù)據(jù)unsigned char code led1[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x27,0x7f,0x6f}。unsigned char cs=0。unsigned char flash_cs=0。bit ok=0。//投票輸入OKbit intbit=0。void delay(unsigned int time){ unsigned int mm。 for(mm=0。mmtime。) mm++。}void led_init(void){unsigned char n。for(n=0。n=9。n++) beixuan[n]=0。 LED=1。 ok=0。}/***************************************************************************************************************進(jìn)行數(shù)據(jù)轉(zhuǎn)換********************************************************************************************************************************/void change_led(unsigned char xuan,unsigned char value){ unsigned char x,change。 x=xuan。 change=x/100。 x=xuan。 ledout[3]=x/10change*10。 x=xuan。 ledout[2]=(unsigned char)(xchange*100ledout[3]*10)。 x=value。 change=x/100。 x=value。 ledout[1]=x/10change*10。 x=value。 ledout[0]=(unsigned char)(xchange*100ledout[1]*10)。}/***********************************************************************************************外部中斷1的入口********************************************************* ************************************************************************************/int1_in() interrupt 2 using 3{ LED=0。}/*************************************************************************************************************外部中斷0的入口******************************************************************************************************************************/int0_in() interrupt 0 using 3{ key=0。 if(P2_0==1) { key=key+1。 } if(P2_1==1) { key= key+2。 } if(P2_2 ==1) { key= key+4。 } if(P2_3==1) { key= key+8。 } key=key+1。 intbit=1。}/*****************************************************
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1