找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4978|回復(fù): 2
收起左側(cè)

CPLD乒乓球模擬—EDA課程設(shè)計(jì)報(bào)告下載

[復(fù)制鏈接]
ID:202486 發(fā)表于 2017-5-19 11:57 | 顯示全部樓層 |閱讀模式

前言

EDA是電子設(shè)計(jì)自動(dòng)化(Electronic Design Automation)的縮寫,在20世紀(jì)90年代初從計(jì)算機(jī)輔助設(shè)計(jì)(CAD)、計(jì)算機(jī)輔助制造(CAM)、計(jì)算機(jī)輔助測試(CAT)和計(jì)算機(jī)輔助工程(CAE)的概念發(fā)展而來的。EDA技術(shù)就是以計(jì)算機(jī)為工具,設(shè)計(jì)者在EDA軟件平臺上,用硬件描述語言VHDL完成設(shè)計(jì)文件,然后由計(jì)算機(jī)自動(dòng)地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,

    直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。EDA技術(shù)在進(jìn)入21世紀(jì)后,得到了更大的發(fā)展,突出表現(xiàn)在以下幾個(gè)方面:

(1)使電子設(shè)計(jì)成果以自主知識產(chǎn)權(quán)(IP)的方式得以明確表達(dá)和確認(rèn)成為可能。
(2)在仿真驗(yàn)證和設(shè)計(jì)兩方面都支持標(biāo)準(zhǔn)硬件描述語言的功能強(qiáng)大的EDA軟件不斷推出。
(3)電子技術(shù)全方位進(jìn)入EDA時(shí)代。除了日益成熟的數(shù)字技術(shù)外,傳統(tǒng)的電路系統(tǒng)設(shè)計(jì)建模理念發(fā)生了重大的變化:軟件無線電技術(shù)的崛起,模擬電路系統(tǒng)硬件描述語言的表達(dá)和設(shè)計(jì)的標(biāo)準(zhǔn)化,系統(tǒng)可編程模擬器件的出現(xiàn),軟硬件技術(shù),軟硬件功能及其結(jié)構(gòu)的進(jìn)一步融合等。

一、課程設(shè)計(jì)目的

本課程設(shè)計(jì)是在《CPLD技術(shù)及應(yīng)用》課程的基礎(chǔ)上,通過軟件編程及仿真調(diào)試的實(shí)踐,進(jìn)一步掌握使用Verilog HDL語言描述數(shù)字電路的原理和應(yīng)用方法,是畢業(yè)設(shè)計(jì)前的一次重要實(shí)踐,為今后從事EDA設(shè)計(jì)相關(guān)工作崗位打下良好的基礎(chǔ)。

二、設(shè)計(jì)題目及要求

2.1 設(shè)計(jì)題目:

乒乓球游戲機(jī)數(shù)字電路系統(tǒng)設(shè)計(jì)

2.2 功能實(shí)現(xiàn):

運(yùn)用狀態(tài)機(jī)技術(shù)完成一個(gè)乒乓球游戲機(jī)的數(shù)字電路系統(tǒng)設(shè)計(jì),將游戲雙方的得分通過兩個(gè)數(shù)碼管進(jìn)行顯示。

乒乓球游戲規(guī)則:

(1)乒乓球游戲雙方各使用1個(gè)按鍵為“球拍”,開發(fā)板的8個(gè)LED用于指示乒乓球移動(dòng)軌跡,點(diǎn)亮的那個(gè)LED為當(dāng)前乒乓球所在位置。

(2)發(fā)球方按下按鍵表示發(fā)球,LED燈按一定的時(shí)間間隔,依次向?qū)Ψ揭苿?dòng)。當(dāng)LED亮到離對方最近的一個(gè),之后的時(shí)間間隔內(nèi),對方按下按鍵表示成功接球,接球后LED向?qū)Ψ揭苿?dòng);否則,表示對方輸球。

(3)接球時(shí),LED沒有亮到最近的一個(gè)時(shí)就按下按鍵,視為犯規(guī),對方加1分。

(4)用兩個(gè)數(shù)碼管分別表示雙方得分,最先到9分者勝出。

1.001.jpg

2.3 設(shè)計(jì)要求:

理解和熟練使用Quartus II軟件、狀態(tài)機(jī)、頂層文件和例化語句,用Quartus II完成編程和調(diào)試,下載到開發(fā)板中實(shí)現(xiàn)設(shè)定的功能,并完成課程設(shè)計(jì)報(bào)告。

1.LED移動(dòng)間隔為1s。

2.數(shù)碼管DP1和DP2用于顯示雙方比分。


三、設(shè)計(jì)原理說明

3.1 顯示模塊

使用數(shù)碼管驅(qū)動(dòng)芯片CH452來驅(qū)動(dòng)各數(shù)碼管顯示,兩個(gè)數(shù)碼管顯示乒乓球游戲雙方的比分。

3.2 乒乓游戲模塊

乒乓球游戲雙方各使用1個(gè)按鍵為“球拍”,開發(fā)板的8個(gè)LED用于指示乒乓球移動(dòng)軌跡,點(diǎn)亮的那個(gè)LED為當(dāng)前乒乓球所在位置。發(fā)球方按下按鍵表示發(fā)球,LED燈按一定的時(shí)間間隔,依次向?qū)Ψ揭苿?dòng)。當(dāng)LED亮到離對方最近的一個(gè),之后的時(shí)間間隔內(nèi),對方按下按鍵表示成功接球,接球后LED向?qū)Ψ揭苿?dòng);否則,表示對方輸球。

3.3 按鍵模塊

用兩個(gè)按鍵分別表示乒乓球游戲雙方的“球拍”,用一個(gè)按鍵作為系統(tǒng)的復(fù)位信號。

3.4 設(shè)計(jì)方案

整個(gè)設(shè)計(jì)方案可以分成時(shí)鐘分頻、乒乓球游戲機(jī)、顯示數(shù)據(jù)轉(zhuǎn)換、數(shù)碼管顯示控制和頂層模塊等5大模塊。

時(shí)鐘分頻:產(chǎn)生100Khz的輸出時(shí)鐘,為其他4個(gè)模塊提供時(shí)鐘。

乒乓球游戲機(jī):完成乒乓球游戲設(shè)計(jì),并將雙方得分輸出給顯示數(shù)據(jù)轉(zhuǎn)換模塊。

顯示數(shù)據(jù)轉(zhuǎn)換:接收來自乒乓球游戲機(jī)模塊和時(shí)間數(shù)據(jù)讀取模塊的得分和時(shí)間數(shù)據(jù),轉(zhuǎn)換成數(shù)碼管顯示地址和數(shù)據(jù)。

數(shù)碼管顯示控制:接收顯示數(shù)據(jù)轉(zhuǎn)換模塊的數(shù)據(jù),并送到各數(shù)碼管顯示。

頂層模塊:連接各個(gè)模塊。

四、軟件設(shè)計(jì)

(含狀態(tài)轉(zhuǎn)換圖、帶注釋的程序清單)


0.png


1.乒乓球游戲機(jī)狀態(tài)轉(zhuǎn)換:

S0:復(fù)位狀態(tài),判斷發(fā)球權(quán)。如果左右鍵同時(shí)為0或1→S0,如果左鍵為1→S1,如果右鍵為1→S4。

S1:左方發(fā)球或成功接球;

              S2:球從左方向右方右移;移動(dòng)過程中,如果右方接球就給左方加一分,并將球權(quán)給左方;

              S3:判斷右方是否在規(guī)定時(shí)間內(nèi)內(nèi)接球;

              S4:右方發(fā)球或成功接球;

              S5:球從右方向左方左移;移動(dòng)過 程中,如果左方接球就給右方加一分,并將球權(quán)給右方;

              S6:判斷左方是否在規(guī)定時(shí)間內(nèi)接球;

2.各模塊程序設(shè)計(jì)

(1)時(shí)鐘分頻模塊

  1.   module clk_div(clk_in, clk_out);

  2.               input clk_in;

  3.               output clk_out;

  4.             

  5.               reg [25:0] cnter;

  6.               reg clk_out;



  7.               parameter m=500;

  8.             

  9.     always @(posedge clk_in)

  10.        begin

  11.            if(cnter == m)

  12.                                              begin

  13.                                              clk_out<=1;

  14.                                              cnter<=0;

  15.                                              end

  16.                                else

  17.                                              begin

  18.                                              clk_out<=0;

  19.                                              cnter<=cnter+1;            

  20.                                              end                           

  21.       end

  22. endmodule
復(fù)制代碼


//產(chǎn)生一個(gè)時(shí)鐘信號,作為其他語句模塊的時(shí)鐘輸入。

  • 乒乓球游戲機(jī)模塊

  1. [color=rgb(0, 0, 0)]module pingpang(clk,rst,cycle,keyL,keyR,leds,score);

  2. //rst異步復(fù)位, keyL和keyR是比賽雙方按鍵

  3. //leds是一排8個(gè)發(fā)光二極管代表乒乓球運(yùn)動(dòng)軌跡

  4. //score是得分的分?jǐn)?shù)

  5. input clk,rst,cycle;

  6. input keyL,keyR;

  7. output leds;

  8. output [7:0] score;



  9. reg [7:0] leds;

  10. reg [3:0] scoreL,scoreR;

  11. reg [2:0] state;

  12. reg clk_out;

  13. reg [16:0] cnter;



  14. wire [3:0] D_ADDR;

  15. wire [7:0] D_DATA;

  16. wire [7:0] score = {scoreL,scoreR};



  17. parameter m=100_000;



  18. parameter s0=3'b000,//復(fù)位狀態(tài),也是判斷發(fā)球權(quán)的狀態(tài);

  19.                              

  20.                               s1=3'b001,//左方發(fā)球或成功接球;

  21.                               s2=3'b010,//球從左方向右方右移,若此時(shí)右方接球就給左方加一分,并將球權(quán)給左方;

  22.                               s3=3'b011,//判斷右方是否在規(guī)定時(shí)間內(nèi)內(nèi)接球

  23.                              

  24.                               s4=3'b100,//右方發(fā)球或成功接球;

  25.                               s5=3'b101,//球從右方向左方左移;移動(dòng)過 程中,如果左方接球就給右方加一分,并將球權(quán)給右方;



  26.                               s6=3'b110;//判斷左方是否在規(guī)定時(shí)間內(nèi)接球;







  27. //游戲邏輯控制



  28. always @(posedge clk or negedge rst)

  29.             

  30.               begin

  31.                            

  32.                             if(!rst)

  33.                                           begin

  34.                                           clk_out<=0;

  35.                                           cnter<=0;

  36.                                           end

  37.                             else

  38.                                           begin

  39.                                           if(cnter == m)

  40.                                                         begin

  41.                                                         clk_out<=1;

  42.                                                         cnter<=0;

  43.                                                         end

  44.                                           else

  45.                                                         begin

  46.                                                         clk_out<=0;

  47.                                                         cnter<=cnter+1;            

  48.                                                         end                           

  49.                                           end

  50.               end

  51. //產(chǎn)生一個(gè)時(shí)鐘脈沖clk_out給下面的語句塊作為時(shí)鐘輸入使用。



  52. always @(posedge clk_out or negedge rst )            



  53.               begin



  54.                             if(!rst)

  55.                                           begin

  56.                                           state<=s0;

  57.                                           leds<=8'b00000000;

  58.                                           scoreL<=4'b0000;

  59.                                           scoreR<=4'b0000;

  60.                                           end//當(dāng)rst為0時(shí),使各個(gè)變量成為原始狀態(tài)。

  61.                             else

  62.                

  63.                             begin



  64.                             case(state)

  65.                                          

  66.                                           s0: begin

  67.                                                                       leds<=8'b00000000;//使LED燈處于全滅狀態(tài)。

  68.                                                                       scoreL<=4'b0000;

  69.                                                                       scoreR<=4'b0000;//給左右雙方的分?jǐn)?shù)復(fù)位;

  70.                                                               if(keyL)

  71.                                                                                     begin

  72.                                                                                     state<=s1;//如果左方獲得發(fā)球權(quán),則跳轉(zhuǎn)到s1狀態(tài)。

  73.                                                                                     end

  74.                                                                         else if(keyR)

  75.                                                                                     state<=s4;//如果右方獲得發(fā)球權(quán),則跳轉(zhuǎn)到s4狀態(tài)。

  76.                                                                                                                                 

  77.                                                         end

  78.                                           s1: begin

  79.                                                                       if(keyL)

  80.                                                                                     begin

  81.                                                                                     if(leds==8'b00000000)

  82.                                                                                                   leds<=8'b10000000;//如果左方發(fā)球或成功接球,點(diǎn)亮的燈出現(xiàn)在最左邊。            

  83.                                                                       state<=s2;//跳轉(zhuǎn)到s2狀態(tài)。

  84.                                                                                     end

  85.                                                                       else if(keyR)

  86.                                                                                                   begin

  87.                                                                                                                state<=s1;//在這個(gè)過程中,如果右方擊球,則LED燈閃爍,表示發(fā)生錯(cuò)誤,狀態(tài)一直重復(fù)在s1。

  88.                                                                               end            

  89.                                                                      

  90.                                                                      

  91.                                                         end

  92.                                           s2: begin

  93.                                                                       if(leds==8'b00000001)//判斷LED燈是否向右移動(dòng)到最后一個(gè)燈亮。

  94.                                                                                     begin

  95.                                                                                                   leds<=leds>>1;//使LED燈向右移動(dòng)一位。

  96.                                                                                                   state<=s3;//進(jìn)入判斷右方接球的狀態(tài)。

  97.                                                                                     end

  98.                                                                       else

  99.                                                                                     begin

  100.                                                                                                   leds<=leds>>1;//使LED燈向右移動(dòng)一位。

  101.                                                                                                   state<=s2;//重復(fù)s2狀態(tài)。

  102.                                                                                                   if(keyR)

  103.                                                                                            begin

  104.                                                                                                          scoreL<=scoreL+1;

  105.                             state<=s1;



  106.                                                                                                          leds<=8'b00000000;//如果右方在燈向右移動(dòng)的過程中擊球,表示右方犯規(guī),左方加一分,球權(quán)給左方,并使LED燈復(fù)位。

  107.                                                                                            end

  108.                                                                                        end

  109.                                                                      

  110.                                                               end

  111.                                           s3: begin

  112.                                                                       if(keyR)

  113.                                                                                     begin

  114.                                                                                                   state<=s4;//右方接球成功,并進(jìn)入右方發(fā)球的s4狀態(tài);

  115.                                                                                                   leds<=8'b00000000;//使LED燈復(fù)位。

  116.                                                                                     end

  117.                                                                       else

  118.                                                                                     begin

  119.                                                                                                   scoreL<=scoreL+1;

  120.                                                                                                   state<=s1;//右方接球不成功,則左方加一分,并進(jìn)入左方發(fā)球的s1狀態(tài);

  121.                                                                                                   leds<=8'b00000000;//使LED燈復(fù)位。

  122.                                                                                     end

  123.                                                         end

  124.                                           s4: begin

  125.                                                                       if(keyR)

  126.                                                                                     begin

  127.                                                                                     if(leds==8'b00000000)

  128.                                                                                                   leds<=8'b00000001;//如果右方發(fā)球或成功接球,點(diǎn)亮的燈出現(xiàn)在最右邊。

  129.                                                                             state<=s5;//跳轉(zhuǎn)到s5狀態(tài)

  130.                                                                                     end

  131.                                                                       else if(keyL)

  132.                                                                                                   begin

  133.                                                                                                                state<=s4;//在這個(gè)過程中,如果左方擊球,則LED燈閃爍,表示發(fā)生錯(cuò)誤,狀態(tài)一直重復(fù)在s4。

  134.                                                                               end            

  135.                                                                      

  136.                                                                      

  137.                                                         end

  138.                                           s5: begin

  139.                                                                       if(leds==8'b10000000)//判斷LED燈是否向左移動(dòng)到最后一個(gè)燈亮。

  140.                                                                                     begin

  141.                                                                                                   leds<=leds<<1;//使LED燈向左移動(dòng)一位。

  142.                                                                                                   state<=s6;//進(jìn)入判斷左方接球的狀態(tài);

  143.                                                                                     end

  144.                                                                       else

  145.                                                                                     begin

  146.                                                                                                   leds<=leds<<1;//使LED燈向左移動(dòng)一位

  147.                                                                                                   state<=s5;//重復(fù)s5狀態(tài)。

  148.                                                                                                   if(keyL)

  149.                                                                                           begin

  150.                                                                                                        scoreR<=scoreR+1;

  151.                                                                                                        state<=s4;

  152.                                                                                                        leds<=8'b00000000;//如果左方在燈向左移動(dòng)的過程中擊球,表示左方犯規(guī),右方加一分,球權(quán)給右方,并使LED燈復(fù)位。

  153.                                                                                            end

  154.                                                                                         end

  155.                                                                      

  156.                                                                end

  157.                                           s6: begin

  158.                                                                       if(keyL)

  159.                                                                                     begin

  160.                                                                                                   state<=s1;//左方接球成功,并進(jìn)入左方發(fā)球的s1狀態(tài);

  161.                                                                                                   leds<=8'b00000000;//使LED燈復(fù)位。

  162.                                                                                     end

  163.                                                                       else

  164.                                                                                     begin

  165.                                                                                                   scoreR<=scoreR+1;

  166.                                                                                                   state<=s4;//左方接球不成功,則右方加一分,并進(jìn)入右方發(fā)球的s4狀態(tài);

  167.                                                                                                   leds<=8'b00000000;//使LED燈復(fù)位。

  168.                                                                                     end

  169.                                                         end            

  170.                                           default: state<=s0;

  171.                             endcase

  172.               end

  173. end

  174.                            

  175. endmodule            

  176. (3)顯示數(shù)據(jù)轉(zhuǎn)換模塊

  177. module tube_data(clk,rst,cycle,score,D_ADDR,D_DATA);

  178.             

  179.               input clk,rst,cycle;

  180.               input [7:0] score;

  181.               output [3:0] D_ADDR;

  182.               output [7:0] D_DATA;

  183.             

  184.               reg [14:0] cnter;

  185.               reg [2:0]  state;



  186.               reg [3:0] D_ADDR;

  187.               reg [7:0] D_DATA;

  188.             

  189.               parameter m=250;



  190.               always @(posedge clk or negedge rst)

  191.                             begin

  192.                                           if(!rst)

  193.                                                         begin

  194.                                                         cnter<=0;

  195.                                                         state<=0;//當(dāng)rst為0時(shí),給各變量賦初值。

  196.                                                         end

  197.                                           else

  198.                                                         begin

  199.                                                                       if(cnter==m)

  200.                                                                                     cnter<=0;//每當(dāng)cnter加到與m相等,使cnter變回0

  201.                                                                       else

  202.                                                                                     cnter<=cnter+1;            

  203.                                                                       case(cnter)

  204.                                                                                     0 : state<=0;//當(dāng)cnter為0時(shí),使state為0。

  205.                                                                                     m/2 : state<=1;//當(dāng)cnter為125時(shí),使state為1。

  206.            
  207. <font color="rgb(0, 0, 0)">…………限于本文篇幅 余下代碼請從51黑下載附件…………</font>
復(fù)制代碼



(4)數(shù)碼管顯示控制模塊

  1. module ch452 (scl, sda,clk,rst,cycle,DIG_ADDR, DIG_DATA);

  2.             

  3.               input clk,rst;

  4.               input [3:0] DIG_ADDR;

  5.               input [7:0] DIG_DATA;

  6.               output scl,sda,cycle;

  7.             

  8.               reg scl, sda,cycle;

  9.               reg [5:0] cnt_cycle;

  10.               reg [5:0] CST;

  11.               reg [5:0] NST;

  12.               reg [5:0] i;



  13.               reg [3:0] D_ADDR;

  14.               reg [7:0] D_DATA;

  15.             

  16.             

  17.               parameter DA0 =1'b0;

  18.               parameter DA1 =1'b1;

  19.               parameter ADDR =1'b1;            

  20.               parameter s0=0,s1=1,s2=2,s3=3;            

  21.                            

  22.                            

  23. always @( posedge clk or negedge rst)

  24.                             begin

  25.                                           if(!rst)

  26.                                                         begin

  27.                                                         CST <= s0;

  28.                                                         cycle<=0;

  29.                                                         i<=0;

  30.                                                         end

  31.                                           else

  32.                                                         begin

  33.                                                                       CST <= NST;

  34.                                                                      

  35.                                                                       if(i==38)

  36.                                                                                     begin

  37.                                                                                     i<=0;

  38.                                                                                     cycle <= 1;

  39.                                                                                     end

  40.                                                                       else

  41.                                                                                     begin

  42.                                                                                     i<=i+1;

  43.                                                                                     cycle <= 0;

  44.                                                                                     end

  45.                                                         end                                                      

  46.                             end



  47. always @ (posedge cycle or negedge rst)

  48.                             begin

  49.                             if(!rst)  begin

  50.                                           cnt_cycle<=0;

  51.                                           D_ADDR<=4'b0000;

  52.                                           D_DATA<=8'b00000000;//當(dāng)rst為0時(shí),為數(shù)碼管賦初值。

  53.                             end

  54.                             else   begin

  55.                                           cnt_cycle<=cnt_cycle+1;

  56.                                           if(cnt_cycle==0)  begin

  57.                                           D_ADDR<=4'b0100;

  58.                                           D_DATA<=8'b00000001;//數(shù)碼管第一次驅(qū)動(dòng),在第4'b0100個(gè)數(shù)碼管輸出數(shù)值8'b00000001

  59.                             end

  60.                             else if(cnt_cycle==1)   begin

  61.                                           D_ADDR<=4'b0101;

  62.                                           D_DATA<=8'b10000000;//數(shù)碼管第二次驅(qū)動(dòng),在第4'b0101個(gè)數(shù)碼管輸出數(shù)值8'b10000000

  63.                             end

  64.                             else   begin

  65.                                           D_ADDR<=DIG_ADDR;

  66.                                           D_DATA<=DIG_DATA;//數(shù)碼管第三次驅(qū)動(dòng),在自己想要的數(shù)碼管位置輸出自己想要的值

  67.                             end

  68.                             end                                                      

  69.                             end            

  70.                                          

  71.               always @ (CST or D_ADDR or D_DATA or i)

  72.                             case (CST)

  73.                             s0 : begin scl = 1; sda = 1; NST <= s1; end//數(shù)碼管準(zhǔn)備啟動(dòng)

  74.                             s1 : begin scl = 1; sda = 0; NST <= s2; end//數(shù)碼管開始啟動(dòng)

  75.                             s2 : begin scl = 0; sda = 0; NST <= s3; end//數(shù)碼管啟動(dòng)完成                           

  76.                             s3 : begin

  77.                                           if(i%2==1)  scl=0;   

  78.                                           else  scl=1;

  79.                                           case ((i-1)/2)            

  80.                                           1:sda=DA0;

  81.                                           2:sda=DA1;

  82.                                           3:sda=ADDR;//輸出固定值011。

  83.                                           4:sda=D_ADDR[3];

  84.                                           5:sda=D_ADDR[2];

  85.                                           6:sda=D_ADDR[1];

  86.                                           7:sda=D_ADDR[0];//輸出數(shù)碼管位置。

  87.                                           8:sda=0;

  88.                                           9:sda=1;//輸出固定值01。

  89.                                           10:sda=D_DATA[7];

  90.                                           11:sda=D_DATA[6];

  91.                                           12:sda=D_DATA[5];

  92.                                           13:sda=D_DATA[4];

  93.                                           14:sda=D_DATA[3];

  94.                                           15:sda=D_DATA[2];

  95.                                           16:sda=D_DATA[1];

  96.                                           17:sda=D_DATA[0];//輸出數(shù)碼管顯示的數(shù)字。

  97.                                           18:sda=1;

  98.                                           default:sda=0;

  99.                                           endcase

  100.                                           if(i==38)   NST = s0;

  101.                                           else           NST = s3;

  102.                                           end

  103.                                default : begin scl = 1; sda = 1; NST <= s0;end

  104.                             endcase

  105. endmodule

  106. (5)頂層模塊

  107. module top(clk,rst,keyL,keyR,leds,scl_ch452,sda_ch452);



  108.                  input keyL,keyR,clk,rst;

  109.       output[7:0] leds;

  110.       output scl_ch452,sda_ch452;



  111. …………限于本文篇幅 余下代碼請從51黑下載附件…………

  112. endmodule
復(fù)制代碼


  • 管腳分配說明

設(shè)計(jì)端口

芯片引腳

開發(fā)板模塊

clk

PIN_22

時(shí)鐘

rst

PIN_88

SW3,異步復(fù)位

keyL

PIN_91

SW1,左方按鍵

keyR

PIN_90

SW2,右方按鍵

scl_rtc

PIN_60

實(shí)時(shí)時(shí)鐘串行時(shí)鐘信號

sda_rtc

PIN_64

實(shí)時(shí)時(shí)鐘串行數(shù)據(jù)信號

scl_ch452

PIN_70

CH452 串行時(shí)鐘信號

sda_ch452

PIN_69

CH452 的串行數(shù)據(jù)信號

leds[0]

PIN_72

LED1

leds[1]

PIN_73

LED2

leds[2]

PIN_74

LED3

leds[3]

PIN_75

LED4

leds[4]

PIN_76

LED5

leds[5]

PIN_77

LED6

leds[6]

PIN_79

LED7

leds[7]

PIN_80

LED8


  • 時(shí)間進(jìn)度安排

序號

設(shè)計(jì)階段工作內(nèi)容

時(shí)間分配

1

理解題目,理清思路,學(xué)習(xí) CH452 和 DS1340 的數(shù)據(jù)手冊,畫出設(shè)計(jì)框圖和乒乓球的狀態(tài)轉(zhuǎn)換圖。

1天

2

編寫和調(diào)試乒乓球游戲機(jī)分?jǐn)?shù)顯示相關(guān)模塊,能實(shí)現(xiàn)乒乓球雙方得分?jǐn)?shù)據(jù)的顯示。

1天

3

編寫和調(diào)試乒乓球游戲機(jī)球拍控制和乒乓球移動(dòng)相關(guān)模塊

4天

4

完善和優(yōu)化整個(gè)系統(tǒng),編寫設(shè)計(jì)報(bào)告

2天

5

設(shè)計(jì)答辯

1天


五、設(shè)計(jì)總結(jié)


設(shè)計(jì)成績:教師簽名:




完整論文下載(word格式 可編輯):

EDA課設(shè)報(bào)告——乒乓球模擬.doc (206.93 KB, 下載次數(shù): 34)





相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

ID:202486 發(fā)表于 2017-5-19 12:03 | 顯示全部樓層
新人求圍觀
回復(fù)

使用道具 舉報(bào)

ID:212718 發(fā)表于 2017-6-19 20:46 | 顯示全部樓層
請問去哪下載余下代碼?
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表