版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、可編程數(shù)字系統(tǒng)設(shè)計課程設(shè)計實驗報告實驗名稱: 基于vhdl的數(shù)字鐘設(shè)計 _所屬課程: 可編程數(shù)字系統(tǒng)設(shè)計 可編程數(shù)字系統(tǒng)課程設(shè)計一、課程設(shè)計目的: 熟悉eda工具;掌握用vhdl語言進(jìn)行數(shù)字系統(tǒng)設(shè)計的基本方法和過程。二、設(shè)計任務(wù): 設(shè)計一數(shù)字鐘,用數(shù)碼管顯示基本功能要求:(1) 可以分屏顯示時、分、秒,可用數(shù)碼管的小數(shù)點“.”代替時、分、秒的分隔符“:”,分屏顯示是指由于數(shù)碼管只有4個,不能同時顯示時、分、秒,但可以只顯示時、分,或只顯示分、秒,通過按鍵來切換這兩種顯示方式。(2)可設(shè)置時鐘的開始時間。設(shè)置時,相應(yīng)的數(shù)碼管要閃爍,指示當(dāng)前設(shè)置的設(shè)置(內(nèi)容)。(3)具有鬧鈴功能,可以設(shè)定鬧鈴時間
2、。鬧鈴時間到,led閃爍進(jìn)行指示。三、設(shè)計原理:數(shù)字鐘的邏輯框圖如圖1所示。它由校時部分、鬧鐘部分、計時部分、顯示部分組成。振蕩器產(chǎn)生穩(wěn)定的高頻脈沖信號,作為數(shù)字鐘的時間基準(zhǔn),然后經(jīng)過分頻器輸出標(biāo)準(zhǔn)秒脈沖。秒鐘計數(shù)器滿60后向分計數(shù)器進(jìn)位,分鐘計數(shù)器滿60后向小時計數(shù)器進(jìn)位,時鐘計數(shù)器按照“24歸0”規(guī)律計數(shù)。計數(shù)器的輸出分別經(jīng)譯碼器送顯示。當(dāng)計時出現(xiàn)誤差時或者到達(dá)另外一個時區(qū)時,可以用校時部分校時、校分、校秒。需要是用鬧鐘時,可以利用鬧鐘部分進(jìn)行定時。 四、系統(tǒng)分析:根據(jù)數(shù)字鐘的功能,我們可以將它的系統(tǒng)電路設(shè)計劃分為四個部分:校時部分、鬧鐘部分、計時部分和顯示部分。其中計時部分又劃分為秒鐘計
3、時模塊、分鐘計時模塊、時鐘計時模塊,顯示部分又劃分為bcd譯碼模塊和掃屏輸出模塊。校時模塊秒鐘計時模塊分鐘計時模塊時鐘計時模塊譯碼模塊掃屏輸出鬧鐘模塊led燈圖1數(shù)字鐘的頂層實體描述如下:-top.vhdlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity digitalclock is port(-輸入時鐘clk:in std_logic;-設(shè)定鬧鐘alarm_set:in std_logic;-雙鍵位校時set:in std_l
4、ogic;mode:in std_logic;-選擇顯示方式chg:in std_logic;-八段譯碼輸出out_data:out std_logic_vector(7 downto 0);-輸出片選seg_out:out std_logic_vector(3 downto 0);-led輸出ed_out:out std_logic);end digitalclock;architecture example of digitalclock is-元件例化component adjusterport(-輸入時鐘clk:in std_logic;-雙鍵位校時set:in std_logic;m
5、ode:in std_logic;-計數(shù)使能,接vccen:in std_logic;-秒計數(shù)器進(jìn)位輸入s_enout:in std_logic;-分計數(shù)器進(jìn)位輸入m_enout:in std_logic;-輸出1hz時鐘clk1hz:out std_logic;-輸出使能s_ce:out std_logic;m_ce:out std_logic;h_ce:out std_logic);end component;component cnt60port(-輸入1hz時鐘clk1hz:in std_logic;-計數(shù)使能en:in std_logic;-進(jìn)位輸出enout:out std_log
6、ic;-bcd輸出low:out std_logic_vector(3 downto 0);high:out std_logic_vector(3 downto 0);end component;component cnt24ort(-輸入1hz時鐘clk1hz:in std_logic;-計數(shù)使能en:in std_logic;-bcd輸出low:out std_logic_vector(3 downto 0);high:out std_logic_vector(3 downto 0);end component;component displayport(-bcd輸入in_data:in
7、std_logic_vector(3 downto 0);-八段譯碼輸出out_data:out std_logic_vector(7 downto 0);end component;component saopingport(-選擇顯示方式chg:in std_logic;-bcd輸入sl:in std_logic_vector(7 downto 0);sh:in std_logic_vector(7 downto 0);ml:in std_logic_vector(7 downto 0);mh:in std_logic_vector(7 downto 0);hl:in std_logic_
8、vector(7 downto 0);hh:in std_logic_vector(7 downto 0);alarm_l:in std_logic_vector(7 downto 0);alarm_h:in std_logic_vector(7 downto 0);-輸入時鐘clk:in std_logic;-輸出片選seg:out std_logic_vector(3 downto 0);-bcd輸出out_data:out std_logic_vector(7 downto 0);end component;componentalarmport(-輸入時鐘clk:in std_logic
9、;-設(shè)定鬧鐘alarm_set:in std_logic;-bcd輸入 in_hl:in std_logic_vector(3 downto 0);in_hh:in std_logic_vector(3 downto 0);in_ml:in std_logic_vector(3 downto 0);in_mh:in std_logic_vector(3 downto 0);-bcd輸出low:out std_logic_vector(3 downto 0);high:out std_logic_vector(3 downto 0);-led輸出led_out:out std_logic);en
10、d component;-常數(shù)說明constant vcc:std_logic:=1;-信號說明signal vcc_con:std_logic;signal s_enout:std_logic;signal m_enout:std_logic;signal clk1hz:std_logic;-計數(shù)使能signal s_ce:std_logic;signal m_ce:std_logic;signal h_ce:std_logic;-bcd碼signal sl:std_logic_vector(3 downto 0);signal sh:std_logic_vector(3 downto 0)
11、;signal ml:std_logic_vector(3 downto 0);signal mh:std_logic_vector(3 downto 0);signal hl:std_logic_vector(3 downto 0);signal hh:std_logic_vector(3 downto 0);signal alarm_low:std_logic_vector(3 downto 0);signal alarm_high:std_logic_vector(3 downto 0);signal sl_out:std_logic_vector(7 downto 0);signal
12、sh_out:std_logic_vector(7 downto 0);signal ml_out:std_logic_vector(7 downto 0);signal mh_out:std_logic_vector(7 downto 0);signal hl_out:std_logic_vector(7 downto 0);signal hh_out:std_logic_vector(7 downto 0);signal alarm_l_out:std_logic_vector(7 downto 0);signal alarm_h_out:std_logic_vector(7 downto
13、 0);begin-元件聲明adjust_control:adjusterport map(-輸入時鐘clk=clk,-雙鍵位校時set=set,mode=mode,-計數(shù)使能,接vccen=vcc_con,-秒計數(shù)器進(jìn)位輸入s_enout=s_enout,-分計數(shù)器進(jìn)位輸入m_enout=m_enout,-輸出信號clk1hz=clk1hz,-輸出使能s_ce=s_ce,m_ce=m_ce,h_ce=h_ce);vcc_conclk1hz,-計數(shù)使能,接vccen=s_ce,-進(jìn)位輸出enout=s_enout,-bcd輸出low=sl,high=sh);m_control:cnt60por
14、t map(-輸入1hz時鐘clk1hz=clk1hz,-計數(shù)使能en=m_ce,-進(jìn)位輸出enout=m_enout,-bcd輸出low=ml,high=mh);h_control:cnt24port map(-輸入1hz時鐘clk1hz=clk1hz,-計數(shù)使能en=h_ce,-bcd輸出low=hl,high=hh);alarm_clock:alarmport map(-輸入時鐘clk=clk,-設(shè)定鬧鐘alarm_set=alarm_set,-bcd輸入 in_hl=hl,in_hh=hh,in_ml=ml,in_mh=mh,-bcd輸出low=alarm_low,high=alarm
15、_high,-led輸出led_out=led_out);sl_dis:displayport map(-bcd輸入in_data=sl,-八段譯碼輸出out_data=sl_out);sh_dis:displayport map(-bcd輸入in_data=sh,-八段譯碼輸出out_data=sh_out);ml_dis:displayport map(-bcd輸入in_data=ml,-八段譯碼輸出out_data=ml_out);mh_dis:displayport map(-bcd輸入in_data=mh,-八段譯碼輸出out_data=mh_out);hl_dis:displayp
16、ort map(-bcd輸入in_data=hl,-八段譯碼輸出out_data=hl_out);hh_dis:displayport map(-bcd輸入in_data=hh,-八段譯碼輸出out_data=hh_out);alarm_l_dis:displayport map(-bcd輸入in_data=alarm_low,-八段譯碼輸出out_data=alarm_l_out);alarm_h_dis:displayport map(-bcd輸入in_data=alarm_high,-八段譯碼輸出out_data=alarm_h_out);saopingqi:saopingport ma
17、p(-bcd輸入sl=sl_out,sh=sh_out,ml=ml_out,mh=mh_out,hl=hl_out,hh=hh_out,alarm_l=alarm_l_out,alarm_h=alarm_h_out,-選擇顯示方式chg=chg,-輸入時鐘clk=clk,-輸出片選seg=seg_out,-bcd輸出out_data=out_data);end example;仿真結(jié)果如下:該頂層文件原理圖如下:系統(tǒng)實驗實驗結(jié)果如下:五、程序設(shè)計:1、校時模塊:采用的是雙鍵校時法,mode和set,其中mode選擇需要調(diào)整的部分:時鐘、分鐘、秒鐘,而set則作為調(diào)整脈沖。校時模塊的核心思想是利
18、用一個計數(shù)器con來作為狀態(tài)機(jī),con=0時為正常工作狀態(tài),con=1時為調(diào)整秒鐘狀態(tài),con=2時為調(diào)整分鐘狀態(tài),con=3時為調(diào)整時鐘狀態(tài)。調(diào)整的時候,利用set代替clk1hz作為計數(shù)器輸入脈沖,相當(dāng)于按一次set則被調(diào)整的計數(shù)器中的當(dāng)前值+1,由此獲得一個數(shù)字鐘的時間設(shè)定效果。校時模塊同時還具有控制時鐘、分鐘、秒鐘計數(shù)器工作的功能,通過兩個進(jìn)位輸入端以及三個使能控制端讓時鐘、分鐘、秒鐘計數(shù)器能夠有序工作。比如,當(dāng)秒鐘計數(shù)器產(chǎn)生一個進(jìn)位輸入校時模塊后,校時模塊才通過使能輸出端令分鐘計數(shù)器工作一下,以此類推控制分鐘、時鐘之間的有序工作。元件視圖如下:源程序如下:-adjuster.vhdl
19、ibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity adjuster isport(-輸入時鐘clk:in std_logic;-雙鍵位校時set:in std_logic;mode:in std_logic;-計數(shù)使能,接vccen:in std_logic;-秒計數(shù)器進(jìn)位輸入s_enout:in std_logic;-分計數(shù)器進(jìn)位輸入m_enout:in std_logic;-輸出1hz時鐘clk1hz:out std_logi
20、c;-輸出使能s_ce:out std_logic;m_ce:out std_logic;h_ce:out std_logic);end adjuster;architecture example of adjuster issignal sel :std_logic;signal sce_r:std_logic;signal mce_r:std_logic;signal hce_r:std_logic;signal con:integer range 0 to 3 :=0;signal clkcon1:integer range 0 to 5000;signal clkcon2:intege
21、r range 0 to 10000;signal outclk:std_logic;signal outclk_temp:std_logic;begin-變頻為1hzclk1_proc:process(clk)begin if clkevent and clk=0 then if clkcon1=5000 thenclkcon1=0;outclk_temp=0;elseclkcon1=clkcon1+1;outclk_temp=1;else if;end if;end process;clk2_proc:process(outclk_temp)begin if outclk_tempeven
22、t and outclk_temp=0 then if clkcon2=10000 thenclkcon2=0;outclk=0;elseclkcon2=clkcon2+1;outclk=1;end if;end if;end process;-模為4的計數(shù)器cnt:process(mode,set)beginif modeevent and mode=0 then if con=3 thencon=0;elseconsel=1;sce_r=0;mce_r=0;hce_rsel=0;sce_r=1;mce_r=0;hce_rsel=0;sce_r=0;mce_r=1;hce_rsel=0;sc
23、e_r=0;mce_r=0;hce_rs_ce=sce_r;m_ce=mce_r;h_ce=hce_r;clk1hzs_ce=en;m_ce=s_enout;h_ce=m_enout;clk1hz=outclk;end case;end process;end example;2、計時模塊:(1)60進(jìn)制計時模塊:利用計數(shù)器的方法設(shè)制一個60進(jìn)制計數(shù)器,并設(shè)置個進(jìn)位輸出端和個位、十位的bcd即時輸出端,其中bcd即時輸出端連接bcd譯碼模塊進(jìn)行轉(zhuǎn)換數(shù)碼管程序所需的驅(qū)動譯碼。元件視圖如下:源程序如下:-cnt60.vhdlibrary ieee;use ieee.std_logic_1164.a
24、ll;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity cnt60 isport(-輸入1hz時鐘clk1hz:in std_logic;-計數(shù)使能en:in std_logic;-進(jìn)位輸出enout:out std_logic;-bcd輸出low:out std_logic_vector(3 downto 0);high:out std_logic_vector(3 downto 0);end cnt60;architecture example of cnt60 issignal low_r:std_lo
25、gic_vector(3 downto 0):=0000;signal high_r:std_logic_vector(3 downto 0):=0000;begin-個位計數(shù)low_proc:process(clk1hz,en)beginif clk1hzevent and clk1hz=0 thenif en=1 thenif low_r=1001 thenlow_r=0000;elselow_r=low_r+0001;end if;end if;end if;end process;low=low_r;-十位計數(shù)high_proc:process(clk1hz,en)beginif cl
26、k1hzevent and clk1hz=0 thenif en=1 thenif low_r=1001 thenif high_r=0101 thenhigh_r=0000;elsehigh_r=high_r+0001;end if;end if;end if;end if;end process;high=high_r;-計數(shù)值為59時,進(jìn)位輸出enout=1 when low_r=1001 and high_r=0101 else 0;end example;(2)24進(jìn)制計數(shù)模塊:利用計數(shù)器的方法設(shè)制一個24進(jìn)制計數(shù)器,并設(shè)置、個位、十位的bcd即時輸出端,其中bcd即時輸出端連接bc
27、d譯碼模塊進(jìn)行轉(zhuǎn)換數(shù)碼管程序所需的驅(qū)動譯碼。元件視圖如下:源程序如下:-cnt24.vhdlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity cnt24 isport(-輸入1hz時鐘clk1hz:in std_logic;-計數(shù)使能en:in std_logic;-bcd輸出low:out std_logic_vector(3 downto 0);high:out std_logic_vector(3 downto 0);end
28、 cnt24;architecture example of cnt24 issignal low_r:std_logic_vector(3 downto 0):=0000;signal high_r:std_logic_vector(3 downto 0):=0000;signal clr:std_logic:=0;begin-個位計數(shù)low_proc:process(clk1hz,en,clr)beginif clk1hzevent and clk1hz=0 thenif en=1 thenif low_r=1001 or clr=1 thenlow_r=0000;elselow_r=lo
29、w_r+0001;end if;end if;end if;end process;low=low_r;-十位計數(shù)high_proc:process(clk1hz,en,clr)beginif clk1hzevent and clk1hz=0 thenif en=1 thenif clr=1 thenhigh_r=0000;elsif low_r=1001 thenhigh_r=high_r+0001;end if;end if;end if;end process;high=high_r;-計數(shù)值為23時,清零clr=1 when low_r=0011 and high_r=0010 els
30、e 0;end example;3、鬧鐘模塊:該數(shù)字鐘具有可設(shè)置整點鬧鐘功能,當(dāng)達(dá)到鬧鐘設(shè)定時間時,led燈會自動閃爍表示警告鬧鐘時間已到,閃爍時間為一分鐘,一分鐘之后自動停止。鬧鐘的核心思想是,從時鐘計時模塊以及分鐘計時模塊的bcd碼即時出去與鬧鐘模塊中的計數(shù)器所設(shè)的值(也就是設(shè)定的時間)進(jìn)行比較。由于該鬧鐘為整點鬧鐘,只能進(jìn)行整點警告,利用alarm_set按鈕進(jìn)行設(shè)定,每按一次,送給鬧鐘元件里面的計數(shù)器一個脈沖令設(shè)定的時間在原有的時間上加一小時。當(dāng)比較結(jié)果完全相同時,led輸出端輸出10hz的脈沖到led中令led顯示閃爍狀態(tài),達(dá)到警告目的。元件視圖如下:源程序如下:-alarm.vhl
31、ibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity alarm isport(-輸入時鐘clk:in std_logic;-設(shè)定鬧鐘alarm_set:in std_logic;-bcd輸入 in_hl:in std_logic_vector(3 downto 0);in_hh:in std_logic_vector(3 downto 0);in_ml:in std_logic_vector(3 downto 0);in_mh:in
32、 std_logic_vector(3 downto 0);-bcd輸出low:out std_logic_vector(3 downto 0);high:out std_logic_vector(3 downto 0);-led輸出led_out:out std_logic);end alarm;architecture example of alarm issignal clkcon1:integer range 0 to 5000;signal clkcon2:integer range 0 to 1000;signal clk50khz:std_logic;signal clk10hz
33、:std_logic;signal low_r:std_logic_vector(3 downto 0):=0000;signal high_r:std_logic_vector(3 downto 0):=0000;signal led_con:integer range 0 to 1;signal clr:std_logic:=0;begin-變頻為10hzclkcon1_proc:process(clk)begin if clkevent and clk=0 then if clkcon1=5000 thenclkcon1=0;clk50khz=0;elseclkcon1=clkcon1+
34、1;clk50khz=1;end if;end if;end process;clkcon2_proc:process(clk50khz)begin if clk50khzevent and clk50khz=0 then if clkcon2=1000 thenclkcon2=0;clk10hz=1;elseclkcon2=clkcon2+1;clk10hz=0;end if;end if;end process;-設(shè)定鬧鐘個位low_proc:process(alarm_set,clr)beginif alarm_setevent and alarm_set=0 thenif low_r=
35、1001 or clr=1 thenlow_r=0000;elselow_r=low_r+0001;end if;end if;end process;low=low_r;-設(shè)定鬧鐘十位high_proc:process(alarm_set,clr)beginif alarm_setevent and alarm_set=0 thenif clr=1 thenhigh_r=0000;elsif low_r=1001 thenhigh_r=high_r+0001;end if;end if;end process;high=high_r;-計數(shù)值為23時,清零clr=1 when low_r=0
36、011 and high_r=0010 else 0;-響應(yīng)判定alarm_proc:process(in_hl,in_hh,in_ml,in_mh)beginif low_r=in_hl and high_r=in_hh thenif in_ml=0000 and in_mh=0000 thenled_con=0;elseled_conled_outled_outout_dataout_dataout_dataout_dataout_dataout_dataout_dataout_dataout_dataout_dataout_data=00000000;end case;end proce
37、ss;end example;(2)掃頻輸出模塊:該fpga板只有一個數(shù)碼管驅(qū)動端而有四個數(shù)碼管,所以需要利用利用片選高速掃屏的方法進(jìn)行顯示。當(dāng)一個數(shù)碼管的亮滅頻率到達(dá)100hz以上時,由于人眼的視覺暫留功能,并不會感覺到它出現(xiàn)了亮滅的變化。在該模塊中令掃屏頻率也就是亮滅頻率為1kzh。該模塊同樣還有一個功能是切換分秒/時分/鬧鐘的顯示,通過chg按鈕進(jìn)行。在以下程序中,利用一個模為3的計數(shù)器chg_con作為狀態(tài)機(jī),每按下一次chg按鈕,chg_con自動增一。當(dāng)chg_con=0時,顯示分秒;chg_con=1時,顯示時分;chg_con=2時,顯示鬧鐘。為了區(qū)別鬧鐘與正常計時區(qū)別,在這里
38、鬧鐘的時鐘與分鐘之間沒有亮“點”間隔。元件視圖如下:源程序如下:-saoping.vhdlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity saoping is port(-選擇顯示方式chg:in std_logic;-bcd輸入sl:in std_logic_vector(7 downto 0);sh:in std_logic_vector(7 downto 0);ml:in std_logic_vector(7 downto
39、 0);mh:in std_logic_vector(7 downto 0);hl:in std_logic_vector(7 downto 0);hh:in std_logic_vector(7 downto 0);alarm_l:in std_logic_vector(7 downto 0);alarm_h:in std_logic_vector(7 downto 0);-輸入時鐘clk:in std_logic;-輸出片選seg:out std_logic_vector(3 downto 0);-bcd輸出out_data:out std_logic_vector(7 downto 0);end saoping;architecture example of sa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度綠色建筑材料產(chǎn)銷合作框架協(xié)議書3篇
- 專項舊房翻新改造授權(quán)合同2024版一
- 專項消防工程:2024年中央空調(diào)安全系統(tǒng)協(xié)議版B版
- 2025年度時尚秀場場地租賃拍攝合同4篇
- 2025年度產(chǎn)業(yè)園企業(yè)入駐綠色生產(chǎn)技術(shù)轉(zhuǎn)移合作協(xié)議4篇
- 2025年度工業(yè)0智能廠房租賃合作協(xié)議2篇
- 2025年度汽車零部件全球采購合同4篇
- 2025年度虛擬現(xiàn)實設(shè)備檢測服務(wù)合同范本4篇
- 二零二五年度綜合醫(yī)院設(shè)備采購協(xié)議-64排螺旋CT設(shè)備3篇
- 2024年藥品供應(yīng)鏈管理合作協(xié)議6篇
- GB/T 8005.2-2011鋁及鋁合金術(shù)語第2部分:化學(xué)分析
- GB/T 37234-2018文件鑒定通用規(guī)范
- GB/T 31888-2015中小學(xué)生校服
- 質(zhì)量檢查考核辦法
- 不動產(chǎn)登記實務(wù)培訓(xùn)教程課件
- 云南省普通初中學(xué)生成長記錄-基本素質(zhì)發(fā)展初一-初三
- 2023年系統(tǒng)性硬化病診斷及診療指南
- 外科醫(yī)師手術(shù)技能評分標(biāo)準(zhǔn)
- 《英語教師職業(yè)技能訓(xùn)練簡明教程》全冊配套優(yōu)質(zhì)教學(xué)課件
- 采購控制程序
- 六年級上冊數(shù)學(xué)簡便計算題200題專項練習(xí)
評論
0/150
提交評論