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

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

?? lcd.v

?? 1602 LCD控制的verilog代碼
?? V
字號:
module lcd(clk,rst,lcd_e,lcd_rw,lcd_rs,data);
	input clk,rst;
	output lcd_e,lcd_rw,lcd_rs;
	output [7:0] data;
	reg lcd_e,lcd_rw,lcd_rs;
	reg [7:0] datain;
	reg [7:0] data;
	
	reg [10:0] state;
	reg flag;
	reg [5:0] address;
	reg [6:0] counter;
	reg [3:0] divcounter;
	
	
	parameter IDLE		=11'b00000000000;
	parameter CLEAR		=11'b00000000001;		//清屏
	
	parameter RETURNCURSOR	=11'b00000000010;	//歸home位
	
	parameter SETMODE	=11'b00000000100;		
	//輸入方式設置,讀寫數據后ram地址增/減1;畫面動/不動
	
	parameter SWITCHMODE	=11'b00000001000;	
	//顯示狀態設置,顯示開/關;光標開/關;閃爍開/關
	
	parameter SHIFT		=11'b00000010000;		
	//光標畫面滾動 畫面/光標平移一位;左/右平移一位
	
	parameter SETFUNCTION	=11'b00000100000;	
	//工作方式設置 1:8/1:4位數據接口;兩行/一行顯示;5x10/5x7點陣
	
	parameter SETCGRAM	=11'b00001000000;		//設置CGRAM
	parameter SETDDRAM1	=11'b00010000000;		//設置DDRAM
	parameter SETDDRAM2	=11'b00011000000;		//設置DDRAM
	parameter READFLAG	=11'b00100000000;		//
	parameter WRITERAM	=11'b01000000000;		//寫RAM
	parameter READRAM	=11'b10000000000;		//讀RAM

	parameter cur_inc      	=1;
	parameter cur_dec      	=0;
	parameter cur_shift    	=1;
	parameter cur_noshift  	=0;
	parameter open_display 	=1;
	parameter open_cur     	=0;
	parameter blank_cur    	=0;
	parameter shift_display	=1;
	parameter shift_cur    	=0;
	parameter right_shift  	=1;
	parameter left_shift   	=0;
	parameter datawidth8   	=1;
	parameter datawidth4   	=0;
	parameter twoline      	=1;
	parameter oneline      	=0;
	parameter font5x10     	=1;
	parameter font5x7      	=0;
	

	
	
	reg [20:0] clkcnt;
	
	always @ (posedge clk)
	if(!rst)
	clkcnt<=21'b00000_0000_0000_0000_0000;
	else
	begin
		if(clkcnt==21'b01001_1100_0100_0000_0000)
			clkcnt<=21'b00000_0000_0000_0000_0000;
		else 
			clkcnt<=clkcnt+1;
	end
	
	wire tc_clkcnt;
	assign tc_clkcnt=(clkcnt==21'b01001_1100_0100_0000_0000)?1:0;
	
	reg clkdiv;
	always @ (posedge tc_clkcnt)
	if(!rst)
		clkdiv<=0;
	else
		clkdiv<=~clkdiv;
	
	reg clk_int;
	always @ (posedge clkdiv)
	if(rst==0)
		clk_int<=0;
	else
		clk_int<=~clk_int;
		
	always @ (negedge clkdiv)//下降沿lcd_e輸出
	if(!rst)
		lcd_e<=0;
	else
		lcd_e<=~lcd_e;
		
		
	always @ (posedge clk_int or negedge rst)
	 begin
		if(!rst)
		begin
			state<=IDLE;
			flag<=0;
			counter<=0;
			divcounter<=0;
			address<=0;
		end
		else
		begin
			case(state)
			IDLE		:begin 
							if(!flag)
							  begin
								state<=SETFUNCTION;
								flag<=1'b1;
								counter<=0;
								divcounter<=0;
						      end
				            else if(divcounter<4'd8)//改變移動速度
							   begin
							    divcounter<=divcounter+1;
							    state<=IDLE;
						   	    lcd_rw <=1'b1;
							   end
							  else
							   begin
							    divcounter<=0;
								state<=SHIFT;
							   end
						 end
			CLEAR			:begin lcd_rs<=0;lcd_rw<=0;data<=8'b0000_0001;
									state<=SETMODE;end   
			SETMODE			:begin lcd_rs<=0;lcd_rw<=0;data[7:2]<=6'b000001;data[1]<=cur_inc;data[0]<=cur_noshift;
									state<=SETDDRAM1;end
			RETURNCURSOR	:begin lcd_rs<=0;lcd_rw<=0;data<=8'b00000010;
									state<=WRITERAM;end
			SWITCHMODE 		:begin lcd_rs<=0;lcd_rw<=0;data[7:3]<=5'b00001;data[2]<=open_display;data[1]<=open_cur;data[0]<=blank_cur;
								state<=CLEAR;end
			SHIFT			:begin lcd_rs<=0;lcd_rw<=0;data[7:4]<=4'b0001;data[3]<=shift_display;data[2]<=left_shift;data[1:0]<=2'b00;
								state<=IDLE;end
			SETFUNCTION		:begin lcd_rs<=0;lcd_rw<=0;data[7:5]<=3'b001;data[4]<=datawidth8;data[3]<=twoline;data[2]<=font5x10;data[1:0]<=2'b00;
								state<=SWITCHMODE;end
			SETCGRAM		:begin lcd_rs<=0;lcd_rw<=0;data<=8'b01000000;state<=IDLE;end
			SETDDRAM1		:begin
			                  lcd_rs<=0;
			                  lcd_rw<=0;
			                  state<=WRITERAM;
			                   if(counter==0)
			                     data<=8'b1000_0000;
			                    else
			                      data<=8'b1100_0000;
			                 end
			SETDDRAM2		:begin lcd_rs<=0;lcd_rw<=0;data<=8'b10000000;state<=WRITERAM;end//0x80顯示在第一行
			WRITERAM		:begin
			                  lcd_rs<=1;
			                  lcd_rw<=0;
			                  data<=datain;
			                   if(counter<7'd40)
			                     begin
                                  address = counter+1;
                                   counter=counter+1;
                                   state<=WRITERAM;
                                 end
                               else  if(counter==7'd40)//1602lcd第一行能顯示40個字符,可通過左移分別顯示出來
			                      begin
			                       state<=SETDDRAM1;
			                        counter<=counter+1;
			                      end
                                 else if(counter<7'd73)
                                  begin
                                  address=counter-'d41+'d8;//-41表示所有字符重新顯示在第二行,從第8個字符開始顯示
                                   counter=counter+1;
                                   state=WRITERAM;
                                   end
                                   else if(counter<7'd81)
                                    begin
                                      address=counter-7'd81+7'd8;
                                      counter=counter+1;
                                      state<=WRITERAM; 
                                     end
                                  else 
                                    begin
                                     data<=8'd87;//"W"的ASCII值
                                      state<=SHIFT;
                                    end
                             end                   
	     		endcase
		end
	end
char_ram charram(.address(address),.data(datain));

endmodule
							
			
			
		
		

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲制服丝袜一区| 色综合久久中文综合久久牛| 福利一区二区在线| 欧美人狂配大交3d怪物一区| 中文字幕高清不卡| 国产综合久久久久影院| 91在线看国产| 亚洲精品在线一区二区| 人人精品人人爱| 99精品视频一区二区| 久久夜色精品一区| 日本不卡一二三区黄网| 欧美日韩中文字幕精品| 中文子幕无线码一区tr| 韩国欧美国产1区| 日韩亚洲欧美中文三级| 亚洲午夜在线视频| 91福利视频网站| 中文字幕一区二区三区视频| 成人性生交大片免费看视频在线| 日韩视频在线一区二区| 日韩不卡一区二区三区| 欧美日韩一级二级| 亚洲尤物视频在线| 日本精品一级二级| 日韩一区中文字幕| 91在线码无精品| 亚洲三级视频在线观看| 99精品久久99久久久久| 中文字幕一区二区三区蜜月| av亚洲精华国产精华| 国产精品免费视频观看| fc2成人免费人成在线观看播放| 国产免费成人在线视频| 成人理论电影网| 国产精品卡一卡二卡三| 91在线一区二区三区| 亚洲日本护士毛茸茸| 在线观看成人小视频| 洋洋av久久久久久久一区| 在线亚洲一区二区| 亚洲国产综合91精品麻豆| 欧美色精品在线视频| 日韩电影在线免费| 日韩欧美美女一区二区三区| 国产一区视频导航| 亚洲欧洲国产专区| 在线观看日韩一区| 久久国产精品99久久人人澡| 国产亚洲一区二区三区在线观看| www.在线欧美| 亚洲成人资源在线| 精品少妇一区二区三区视频免付费| 国产美女在线观看一区| 国产精品久久国产精麻豆99网站| 色妞www精品视频| 蜜臀av在线播放一区二区三区| 久久麻豆一区二区| 色欧美88888久久久久久影院| 婷婷一区二区三区| 欧美精彩视频一区二区三区| 日本丶国产丶欧美色综合| 免费成人av资源网| 亚洲特黄一级片| 日韩精品一区二区在线观看| av在线播放成人| 日韩av电影免费观看高清完整版 | 日本大胆欧美人术艺术动态| 日韩欧美在线观看一区二区三区| 丁香婷婷深情五月亚洲| 亚洲电影一级片| 久久精品夜夜夜夜久久| 欧美午夜一区二区| 国产精品888| 亚洲第一av色| 国产精品二三区| 日韩精品一区二区三区视频播放 | 看电视剧不卡顿的网站| 国产精品萝li| 日韩午夜在线观看视频| 色综合天天综合色综合av| 久久精品国产999大香线蕉| 国产精品动漫网站| 欧美电影免费观看高清完整版| 一本色道a无线码一区v| 国产精品一区二区久久不卡| 丝袜亚洲另类丝袜在线| 亚洲蜜桃精久久久久久久| 久久日一线二线三线suv| 欧美色倩网站大全免费| 91免费版在线看| 国产剧情一区二区| 免费观看30秒视频久久| 亚洲无线码一区二区三区| 国产精品乱人伦中文| 26uuu久久天堂性欧美| 欧美日韩你懂得| 一本到三区不卡视频| 成人v精品蜜桃久久一区| 国产曰批免费观看久久久| 日本人妖一区二区| 午夜久久久久久电影| 亚洲自拍欧美精品| 亚洲少妇屁股交4| 国产精品毛片无遮挡高清| 国产日韩精品一区二区三区 | 91精品一区二区三区在线观看| 色综合久久久久综合体桃花网| 成人三级伦理片| 国内外成人在线| 美女网站视频久久| 日本欧美在线观看| 男女性色大片免费观看一区二区 | 亚洲柠檬福利资源导航| 中文字幕欧美国产| 日韩一区欧美一区| 亚洲三级电影全部在线观看高清| 国产精品初高中害羞小美女文| 国产精品免费aⅴ片在线观看| 中文字幕制服丝袜成人av| 国产精品毛片大码女人| 国产精品乱人伦| 亚洲免费观看高清| 亚洲一区二三区| 午夜国产精品一区| 麻豆精品在线播放| 国产精品一二三区| 欧美日韩在线三区| 欧美日韩你懂的| 日韩欧美国产麻豆| 国产三级欧美三级| 综合精品久久久| 亚洲一区在线电影| 亚洲成av人片观看| 久久91精品国产91久久小草| 国产精品自拍网站| 99久久精品免费看| 欧美日韩成人综合在线一区二区| 日韩欧美第一区| 欧美精彩视频一区二区三区| 亚洲欧美另类综合偷拍| 天堂在线一区二区| 国产成人99久久亚洲综合精品| 色妞www精品视频| 日韩一区和二区| 国产精品久久久久久久久图文区 | 91亚洲精品乱码久久久久久蜜桃| 在线观看免费一区| 久久久久久免费毛片精品| 亚洲免费观看在线观看| 日本午夜精品一区二区三区电影 | 精品一区在线看| 99久久伊人网影院| 日韩三级在线免费观看| 国产精品人妖ts系列视频| 亚洲韩国一区二区三区| 懂色av中文字幕一区二区三区| 在线看日本不卡| 欧美激情一区在线| 日韩二区三区四区| 91一区二区三区在线播放| 欧美成人性福生活免费看| 亚洲曰韩产成在线| 国产福利精品导航| 欧美肥妇bbw| 亚洲另类在线一区| 国产精品18久久久久久vr| 欧美视频中文一区二区三区在线观看| 久久亚洲捆绑美女| 日本欧美在线观看| 91国偷自产一区二区开放时间 | 日韩欧美久久久| 一区二区三区蜜桃| av在线这里只有精品| 欧美精品一区二区三区在线播放| 亚洲一区在线观看免费观看电影高清| 国产不卡在线一区| 日韩免费在线观看| 视频一区二区三区中文字幕| 色综合激情五月| 中文字幕一区二区三区精华液| 国产精品一区二区x88av| 91精品国产福利在线观看| 亚洲一区二区五区| 色哟哟欧美精品| 亚洲日本护士毛茸茸| 99久久er热在这里只有精品15 | 日韩亚洲欧美中文三级| 亚洲五码中文字幕| 欧美亚一区二区| 亚洲一区在线观看视频| 色综合天天天天做夜夜夜夜做| 日本一区二区高清| 成人性生交大片免费看中文| 中文字幕乱码日本亚洲一区二区| 国产精品77777竹菊影视小说| 久久九九久精品国产免费直播| 国模无码大尺度一区二区三区| 欧美精品一区二区蜜臀亚洲| 激情小说欧美图片|