亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? up3_clock.vhd

?? 用vhdl設計實現的多功能電子鐘
?? VHD
?? 第 1 頁 / 共 2 頁
字號:
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR42;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR43;
				WHEN WRITE_CHAR43 =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR43;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR44;
				WHEN WRITE_CHAR44 =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR44;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR45;
				WHEN WRITE_CHAR45 =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR45;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR46;
				WHEN WRITE_CHAR46 =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR46 ;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR47;
				WHEN WRITE_CHAR47 =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR47;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR48;
				WHEN WRITE_CHAR48 =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR48;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR49;
				WHEN WRITE_CHAR49 =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR49;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR4A;
				WHEN WRITE_CHAR4A =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR4A ;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR4B;
				WHEN WRITE_CHAR4B =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR4B;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR4C;
				WHEN WRITE_CHAR4C =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR4C;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR4D;
				WHEN WRITE_CHAR4D =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR4D ;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR4E;						
				WHEN WRITE_CHAR4E =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR4E ;
						state <= TOGGLE_E;
						next_command <= WRITE_CHAR4F;	
				WHEN WRITE_CHAR4F =>
						LCD_E <= '1';
						LCD_RS <= '1';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= CHAR4F;
						state <= TOGGLE_E;
						next_command <= RETURN_HOME;																													
-- Return write address to first character postion
				WHEN RETURN_HOME =>
						LCD_E <= '1';
						LCD_RS <= '0';
						LCD_RW <= '0';
						DATA_BUS_VALUE <= X"80";
						state <= TOGGLE_E; 
						next_command <= WRITE_CHAR0;
-- The next two states occur at the end of each command to the LCD
-- Toggle E line - falling edge loads inst/data to LCD controller
				WHEN TOGGLE_E =>
						LCD_E <= '0';
						state <= HOLD;
-- Hold LCD inst/data valid after falling edge of E line				
				WHEN HOLD =>
						state <= next_command;
			END CASE;
		END IF;
	END PROCESS;
	
--******************************************************************************


--	SIGNAL CHAR0,CHAR1,CHAR2,CHAR3,CHAR4,CHAR5,CHAR6,CHAR7,CHAR8,CHAR9,CHARA,CHARB,CHARC,
--	CHARD,CHARE,CHARFCHAR40,CHAR41,CHAR42,CHAR43,CHAR44,CHAR45,CHAR46,CHAR47,CHAR48,
--	CHAR49,CHAR4A,CHAR4B,CHAR4C,CHAR4D,CHAR4E,CHAR4F:STD_LOGIC_VECTOR(7 DOWNTO 0);
--******************************************************************************
	PROCESS(CLK_10Hz,reset,AL2NOL)
	BEGIN
	IF(reset= '0')OR (AL2NOL ='0' ) THEN
	   WR_OR_BL <= '1';
	ELSE
	
	IF rising_edge(CLK_10Hz)  THEN
	        IF  (WR_OR_BL = '1') THEN
				   CHAR0 <= X"3" & BCD_HRD1;
				   CHAR1 <= X"3" & BCD_HRD0;
				   CHAR2 <= X"3A";
				   CHAR3 <= X"3" & BCD_MIND1;
				   CHAR4 <= X"3" & BCD_MIND0;
				   CHAR5 <= X"3A";
				   CHAR6 <= X"3" & BCD_SECD1;
				   CHAR7 <= X"3" & BCD_SECD0;
				   CHAR8 <= X"2E";
				   CHAR9 <= X"3" & BCD_TSEC;
				   CHARA <= X"20";
				   CHARE <= X"3"&BCD_CLK_HRD1;
				   CHARF <= X"3"&BCD_CLK_HRD0;
				   CHAR40 <= X"3" & BCD_YEAR3;
				   CHAR41 <= X"3" & BCD_YEAR2;
				   CHAR42 <= X"3" & BCD_YEAR1;
				   CHAR43 <= X"3" & BCD_YEAR0;
				   CHAR44 <= X"2E";
				   CHAR45 <= X"3" & BCD_MON1;
				   CHAR46 <= X"3" & BCD_MON0;
				   CHAR47 <= X"2E";
				   CHAR48 <= X"3" & BCD_DAY1;
				   CHAR49 <= X"3" & BCD_DAY0;
				   CHAR4A <= X"20";
				   CHAR4B <= X"3" & BCD_CLK_MIN1;
				   CHAR4C <= X"3" & BCD_CLK_MIN0;
				   CHAR4D <= X"3A";
				   CHAR4E <= X"3" & BCD_CLK_SEC1;
				   CHAR4F <= X"3" & BCD_CLK_SEC0;
				   WR_OR_BL <= '0';
			 ELSE
					   WR_OR_BL <= '1';
		               IF (MODIFY_HOUR1_CON = '1')  THEN
		         			IF (MOD_OR_SET = '1') THEN
			                    CHAR0 <= X"20";
			                ELSE
			                    CHARE <= X"20";
			                END IF;
		               ELSIF (MODIFY_HOUR0_CON = '1')  THEN 
		         			IF (MOD_OR_SET = '1') THEN
			                    CHAR1 <= X"20";
			                ELSE
		                        CHARF <= X"20";
			                END IF;		

					   ELSIF (MODIFY_MIN1_CON = '1') THEN
		         			IF (MOD_OR_SET = '1') THEN
			                    CHAR3 <= X"20";
			                ELSE
					            CHAR4B <= X"20";
			                END IF;					
					   ELSIF (MODIFY_MIN0_CON = '1') THEN
		         			IF (MOD_OR_SET = '1') THEN
			                    CHAR4 <= X"20";
			                ELSE
			                    CHAR4C <= X"20";
			                END IF;					
					   ELSIF (MODIFY_SECD1_CON = '1') THEN
		         			IF (MOD_OR_SET = '1') THEN
			                    CHAR6 <= X"20";
			                ELSE
			                    CHAR4E <= X"20";
			                END IF;					
					   ELSIF (MODIFY_SECD0_CON = '1') THEN
		         			IF (MOD_OR_SET = '1') THEN
			                    CHAR7 <= X"20";
			                ELSE
			                    CHAR4F <= X"20";
			                END IF;					
					
	                   ELSIF(MODIFY_YEAR3_CON = '1') THEN 
			                CHAR40 <= X"20";
                       ELSIF(MODIFY_YEAR2_CON = '1')   THEN
                            CHAR41 <= X"20";
                       ELSIF(MODIFY_YEAR1_CON = '1')   THEN
                            CHAR42 <= X"20";	
                       ELSIF(MODIFY_YEAR0_CON = '1')   THEN
                            CHAR43 <= X"20";
                       ELSIF(MODIFY_MON1_CON = '1')   THEN
                            CHAR45 <= X"20";
                       ELSIF(MODIFY_MON0_CON = '1')   THEN
                            CHAR46 <= X"20";
                       ELSIF(MODIFY_DAY1_CON = '1')   THEN
                            CHAR48 <= X"20";
                       ELSIF(MODIFY_DAY0_CON = '1')   THEN
                            CHAR49 <= X"20";
                       ELSE
						   CHAR0 <= X"3" & BCD_HRD1;
						   CHAR1 <= X"3" & BCD_HRD0;
						   CHAR2 <= X"3A";
						   CHAR3 <= X"3" & BCD_MIND1;
						   CHAR4 <= X"3" & BCD_MIND0;
						   CHAR5 <= X"3A";
						   CHAR6 <= X"3" & BCD_SECD1;
						   CHAR7 <= X"3" & BCD_SECD0;
						   CHAR8 <= X"2E";
						   CHAR9 <= X"3" & BCD_TSEC;
						   CHARA <= X"20";
						   CHARE <= X"3"&BCD_CLK_HRD1;
						   CHARF <= X"3"&BCD_CLK_HRD0;
						   CHAR40 <= X"3" & BCD_YEAR3;
						   CHAR41 <= X"3" & BCD_YEAR2;
						   CHAR42 <= X"3" & BCD_YEAR1;
						   CHAR43 <= X"3" & BCD_YEAR0;
						   CHAR44 <= X"2E";
						   CHAR45 <= X"3" & BCD_MON1;
						   CHAR46 <= X"3" & BCD_MON0;
						   CHAR47 <= X"2E";
						   CHAR48 <= X"3" & BCD_DAY1;
						   CHAR49 <= X"3" & BCD_DAY0;
						   CHAR4A <= X"20";
						   CHAR4B <= X"3" & BCD_CLK_MIN1;
						   CHAR4C <= X"3" & BCD_CLK_MIN0;
						   CHAR4D <= X"3A";
						   CHAR4E <= X"3" & BCD_CLK_SEC1;
						   CHAR4F <= X"3" & BCD_CLK_SEC0;

				       END IF;
				END IF;
			END IF;
	End IF;
	END PROCESS;
	
	   
	
	
--******************************************************************************
--  根據分頻原理設置時間BCD_HRD1 <= X"0";			
--			BCD_HRD1   計10小時
--          BCD_HRD0   計1小時
--			BCD_MIND1  計10分鐘
--			BCD_MIND0  計1分鐘
--			BCD_SECD1  計10秒
--			BCD_SECD0  計1秒
--			BCD_TSEC   計0.1秒
--  通過以上變量可以以十進制的形式來輸出時間例如:12:34:55.8
--  通過狀態機產生的兩個變量INC_CON 和DEC_CON 來控制調整時鐘。
--******************************************************************************	
	
	PROCESS (Clk_10hz, reset)
	BEGIN
		IF reset = '0' THEN	  --異步清零
			BCD_HRD1 <= X"0";			
			BCD_HRD0 <= X"0";
			BCD_MIND1 <= X"0";
			BCD_MIND0 <= X"0";
			BCD_SECD1 <= X"0";
			BCD_SECD0 <= X"0";
			BCD_TSEC  <= X"0";

		ELSIF clk_10HZ'EVENT AND clk_10HZ = '1' THEN
		   IF(ONE_DAY = '1') THEN
		      ONE_DAY <= '0';
		   END IF;
-- TENTHS OF SECONDS 0.1秒
           IF NOT((COUNT_CON = '0')AND (MOD_OR_SET = '1' )) THEN
				IF BCD_TSEC < 9 THEN
				 BCD_TSEC <= BCD_TSEC + 1;
				ELSE
				 BCD_TSEC <= X"0";
		-- SECONDS  1秒
					IF BCD_SECD0 < 9 THEN
				 	   BCD_SECD0 <= BCD_SECD0 + 1;
					ELSE
			-- TENS OF SECONDS   10秒
					 BCD_SECD0 <= "0000";
					 	 IF BCD_SECD1 < 5 THEN
					  	      BCD_SECD1 <= BCD_SECD1 + 1;
					 	 ELSE
				-- MINUTES  1分鐘
					  	 BCD_SECD1 <= "0000";
						  	 IF BCD_MIND0 < 9 THEN
						   	  BCD_MIND0 <= BCD_MIND0 + 1;
						  	 ELSE
					-- TENS OF MINUTES 10分鐘
						   	  BCD_MIND0 <= "0000";
							   	  IF BCD_MIND1 < 5 THEN
							       BCD_MIND1 <= BCD_MIND1 + 1;
							   	  ELSE
						-- HOURS 1小時
							    	BCD_MIND1 <= "0000";
								    	IF BCD_HRD0 < 9 AND NOT((BCD_HRD1 = 2) AND (BCD_HRD0 = 3))THEN
								     	 BCD_HRD0 <= BCD_HRD0 + 1;
								    	ELSE
							-- TENS OF HOURS  10小時
									     	 IF NOT((BCD_HRD1 = 2) AND (BCD_HRD0 = 3)) THEN
									      	  BCD_HRD1 <= BCD_HRD1 + 1;
									      	  BCD_HRD0 <= "0000";
									     	 ELSE
								-- NEW DAY  1天
									      	 BCD_HRD1 <= "0000";
								          	 BCD_HRD0 <= "0000";
								             ONE_DAY <= '1';
								         	END IF;
							           END IF;
						          END IF;
					         END IF;
				        END IF;
			       END IF;
			END IF;
			ELSE 
			   IF (HIT = '1')AND (MOD_OR_SET = '1') THEN
	                IF (MODIFY_HOUR1_CON = '1')  THEN
	                    IF (BCD_HRD0<4) THEN
	                      IF(KEY_BCD < 3) THEN
		                     BCD_HRD1 <= KEY_BCD;
		                    END IF;
		                  ELSE
		                     IF (KEY_BCD<3) THEN
		                       BCD_HRD1<=KEY_BCD;
		                       BCD_HRD0<="0000";
		                     END IF;
		                   END IF;
	                ELSIF (MODIFY_HOUR0_CON = '1')  THEN 
	                    IF(BCD_HRD1 = "0010")  THEN
	                         IF (KEY_BCD <4)  THEN
			                     BCD_HRD0 <= KEY_BCD;
			                 END IF;
			            ELSE
		                     BCD_HRD0 <= KEY_BCD;
		                END IF;
					ELSIF (MODIFY_MIN1_CON = '1') THEN
	                    IF(KEY_BCD < 6) THEN
		                     BCD_MIND1 <= KEY_BCD;
		                END IF;
					ELSIF (MODIFY_MIN0_CON = '1') THEN
						   BCD_MIND0 <= KEY_BCD;
					ELSIF (MODIFY_SECD1_CON = '1') THEN
	                    IF(KEY_BCD < 6) THEN
		                     BCD_SECD1 <= KEY_BCD;
		                END IF;
					ELSIF (MODIFY_SECD0_CON = '1') THEN
						   BCD_SECD0 <=KEY_BCD;
					END IF;
				END IF;
			END IF;			
	END IF;
 END PROCESS;

     
--************************************************************************************
--  修改狀態機
--	TYPE STATE_TYPE_SET IS (COUNT,MODIFY_HOUR,MODIFY_MIN,MODIFY_SECD,MODIFY_YEAR,
--	MODIFY_MON,MODIFY_DAY,SET_HOUR,SET_MIN,SET_SECD,SET_YEAR,SET_MON,SET_DAY);
--  并不是直接在狀態機里面進行操作,而是可以控制變量,然后用該變量控制其他進程
--  SET:   PROCESS (Clk_10hz,INC_CON,RESET )這樣的寫法是不對的因為BCD_HRD1不可以在不同
--  的進程中被不同的時鐘驅動
--  寫程序時遇到的問題有:忘寫

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区免费在线观看| 制服视频三区第一页精品| 欧美色手机在线观看| 午夜精品一区在线观看| 91精品欧美福利在线观看| 亚洲福利视频一区二区| 一区二区三区欧美亚洲| 972aa.com艺术欧美| 国产精品美女视频| 最新高清无码专区| 亚洲黄色小视频| 久久精品一区二区三区四区| 在线亚洲一区二区| 久久久久亚洲综合| 91亚洲国产成人精品一区二三| 亚洲国产精品人人做人人爽| 不卡电影一区二区三区| 国产成人免费视频一区| 亚洲一区日韩精品中文字幕| 亚洲国产精品精华液ab| 99久久久精品| 国产91对白在线观看九色| 日韩精品一区二区在线| 亚洲自拍与偷拍| 高清成人免费视频| 国产一区二区三区香蕉| 国产福利一区在线| 成人av免费观看| 99热国产精品| 在线视频国内一区二区| 欧美性欧美巨大黑白大战| 久久99久久久久久久久久久| 一区二区三区日韩精品视频| 国产欧美日韩卡一| 自拍av一区二区三区| 中文字幕一区二区三区精华液 | 国产精品久久国产精麻豆99网站 | 婷婷国产在线综合| 老司机精品视频在线| 国产一区二区在线免费观看| 成人黄色一级视频| 日本韩国欧美三级| 欧美一二三四区在线| 精品999在线播放| 日韩毛片精品高清免费| 亚洲成精国产精品女| 狠狠色伊人亚洲综合成人| 高清av一区二区| 777亚洲妇女| 欧美国产一区在线| 污片在线观看一区二区| 国产精品123区| 欧美乱妇23p| 国产精品国产自产拍高清av| 五月天网站亚洲| 成人午夜大片免费观看| 69成人精品免费视频| 亚洲欧洲日韩综合一区二区| 日本va欧美va欧美va精品| 国产在线精品免费| 欧美丰满少妇xxxxx高潮对白| 欧美韩国日本不卡| 美女国产一区二区| 在线观看成人小视频| 日本一区二区三区电影| 麻豆免费精品视频| 欧美三级日韩三级国产三级| 国产精品素人一区二区| 久久 天天综合| 欧美午夜精品理论片a级按摩| 国产亚洲精品中文字幕| 麻豆精品视频在线观看免费 | 依依成人综合视频| 成人一级视频在线观看| 久久一区二区视频| 奇米色一区二区三区四区| 欧美中文字幕不卡| 亚洲人午夜精品天堂一二香蕉| 国产精品综合二区| 日韩三级精品电影久久久| 亚洲一区二区在线免费看| 国内成+人亚洲+欧美+综合在线| 91精品国产欧美一区二区| 一区二区三国产精华液| 激情久久五月天| 久久伊人蜜桃av一区二区| 国内精品视频一区二区三区八戒| 欧美日韩mp4| 国产精品久久久久aaaa樱花| 国产成人精品亚洲日本在线桃色| 欧美午夜视频网站| 久久久91精品国产一区二区精品| 久久国产精品色| 欧美日韩国产精选| 综合色天天鬼久久鬼色| 91美女在线视频| 亚洲亚洲精品在线观看| 欧美日韩另类国产亚洲欧美一级| 亚洲成人高清在线| 3d成人动漫网站| 另类小说欧美激情| 欧美成人三级在线| 精品一区二区在线观看| 国产网红主播福利一区二区| 不卡电影免费在线播放一区| 亚洲激情校园春色| 欧美性受xxxx| 麻豆精品视频在线| 国产日产欧美一区二区三区| 成人久久视频在线观看| 一区二区三区日韩精品视频| 欧美二区在线观看| 国产又黄又大久久| 综合欧美亚洲日本| 欧美日韩精品综合在线| 男人的j进女人的j一区| 国产亚洲美州欧州综合国 | 欧美精品一区二区在线观看| 国产精品性做久久久久久| 亚洲视频免费观看| 欧美人狂配大交3d怪物一区| 久久99久久精品欧美| 国产农村妇女精品| 欧美日韩在线不卡| 国产美女av一区二区三区| 亚洲欧美在线视频观看| 9191国产精品| 成人av在线一区二区| 日韩电影在线免费观看| 国产精品网曝门| 日韩一区二区中文字幕| www.久久久久久久久| 日韩成人午夜电影| 亚洲欧美影音先锋| 91精品婷婷国产综合久久竹菊| 成人免费av在线| 久久精工是国产品牌吗| 亚洲激情在线播放| 国产欧美日韩视频在线观看| 6080yy午夜一二三区久久| 99精品黄色片免费大全| 国产一区日韩二区欧美三区| 午夜久久久影院| 亚洲欧美日韩久久| 日韩欧美精品在线| 欧美四级电影在线观看| 99久久99久久精品免费观看| 丝袜诱惑亚洲看片| 亚洲柠檬福利资源导航| 国产欧美精品一区二区色综合| 日韩精品在线看片z| 成人av在线资源网| 国产一区二区看久久| 男男gaygay亚洲| 偷拍自拍另类欧美| 亚洲美女偷拍久久| 精品成人在线观看| 69av一区二区三区| 99久久99久久综合| 91麻豆国产香蕉久久精品| 国产超碰在线一区| 日韩vs国产vs欧美| 婷婷开心激情综合| 爽爽淫人综合网网站| 一区二区高清视频在线观看| 最新中文字幕一区二区三区| 国产视频亚洲色图| 欧美肥妇毛茸茸| 欧美大片国产精品| 在线亚洲免费视频| 欧美视频你懂的| 欧美日韩高清一区二区| 欧美三级蜜桃2在线观看| 91黄色免费观看| 欧美日韩情趣电影| 91精品国产麻豆国产自产在线| 6080yy午夜一二三区久久| 制服丝袜中文字幕一区| 日韩一区二区在线看| 欧美成人乱码一区二区三区| 精品国免费一区二区三区| 久久免费偷拍视频| 91精品国产综合久久精品性色| 3d动漫精品啪啪一区二区竹菊| 欧美日本乱大交xxxxx| 91麻豆国产香蕉久久精品| 欧美一区二区三区日韩| 久久久久国产精品免费免费搜索| 中文无字幕一区二区三区| 亚洲欧洲无码一区二区三区| 亚洲午夜久久久久久久久久久| 日韩中文字幕区一区有砖一区| 另类人妖一区二区av| 国产91高潮流白浆在线麻豆| 在线亚洲一区二区| 日韩欧美激情一区| 国产精品大尺度| 日本va欧美va精品| 床上的激情91.| 欧美浪妇xxxx高跟鞋交|