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

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

?? i2c_master_bit_ctrl.vhd

?? 來自opencore網站的I2C總線模塊
?? VHD
?? 第 1 頁 / 共 2 頁
字號:
-------------------------------------------------------------------------                                                             --------  WISHBONE revB2 I2C Master Core; bit-controller             --------                                                             --------                                                             --------  Author: Richard Herveille                                  --------          richard@asics.ws                                   --------          www.asics.ws                                       --------                                                             --------  Downloaded from: http://www.opencores.org/projects/i2c/    --------                                                             -----------------------------------------------------------------------------                                                             -------- Copyright (C) 2000 Richard Herveille                        --------                    richard@asics.ws                         --------                                                             -------- This source file may be used and distributed without        -------- restriction provided that this copyright statement is not   -------- removed from the file and that any derivative work contains -------- the original copyright notice and the associated disclaimer.--------                                                             --------     THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY     -------- EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED   -------- TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS   -------- FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL THE AUTHOR      -------- OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,         -------- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES    -------- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE   -------- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR        -------- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF  -------- LIABILITY, WHETHER IN  CONTRACT, STRICT LIABILITY, OR TORT  -------- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT  -------- OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE         -------- POSSIBILITY OF SUCH DAMAGE.                                 --------                                                             ---------------------------------------------------------------------------  CVS Log----  $Id: i2c_master_bit_ctrl.vhd,v 1.14 2006/10/11 12:10:13 rherveille Exp $----  $Date: 2006/10/11 12:10:13 $--  $Revision: 1.14 $--  $Author: rherveille $--  $Locker:  $--  $State: Exp $---- Change History:--               $Log: i2c_master_bit_ctrl.vhd,v $--               Revision 1.14  2006/10/11 12:10:13  rherveille--               Added missing semicolons ';' on endif----               Revision 1.13  2006/10/06 10:48:24  rherveille--               fixed short scl high pulse after clock stretch----               Revision 1.12  2004/05/07 11:53:31  rherveille--               Fixed previous fix :) Made a variable vs signal mistake.----               Revision 1.11  2004/05/07 11:04:00  rherveille--               Fixed a bug where the core would signal an arbitration lost (AL bit set), when another master controls the bus and the other master generates a STOP bit.----               Revision 1.10  2004/02/27 07:49:43  rherveille--               Fixed a bug in the arbitration-lost signal generation. VHDL version only.----               Revision 1.9  2003/08/12 14:48:37  rherveille--               Forgot an 'end if' :-/----               Revision 1.8  2003/08/09 07:01:13  rherveille--               Fixed a bug in the Arbitration Lost generation caused by delay on the (external) sda line.--               Fixed a potential bug in the byte controller's host-acknowledge generation.----               Revision 1.7  2003/02/05 00:06:02  rherveille--               Fixed a bug where the core would trigger an erroneous 'arbitration lost' interrupt after being reset, when the reset pulse width < 3 clk cycles.----               Revision 1.6  2003/02/01 02:03:06  rherveille--               Fixed a few 'arbitration lost' bugs. VHDL version only.----               Revision 1.5  2002/12/26 16:05:47  rherveille--               Core is now a Multimaster I2C controller.----               Revision 1.4  2002/11/30 22:24:37  rherveille--               Cleaned up code----               Revision 1.3  2002/10/30 18:09:53  rherveille--               Fixed some reported minor start/stop generation timing issuess.----               Revision 1.2  2002/06/15 07:37:04  rherveille--               Fixed a small timing bug in the bit controller.\nAdded verilog simulation environment.----               Revision 1.1  2001/11/05 12:02:33  rherveille--               Split i2c_master_core.vhd into separate files for each entity; same layout as verilog version.--               Code updated, is now up-to-date to doc. rev.0.4.--               Added headers.------------------------------------------- Bit controller section---------------------------------------- Translate simple commands into SCL/SDA transitions-- Each command has 5 states, A/B/C/D/idle---- start:    SCL  ~~~~~~~~~~~~~~\____--	     SDA  XX/~~~~~~~\______--	          x | A | B | C | D | i---- repstart  SCL  ______/~~~~~~~\___--	     SDA  __/~~~~~~~\______--	          x | A | B | C | D | i---- stop      SCL  _______/~~~~~~~~~~~--	     SDA  ==\___________/~~~~~--	          x | A | B | C | D | i----- write    SCL  ______/~~~~~~~\____--	     SDA  XXX===============XX--	          x | A | B | C | D | i----- read     SCL  ______/~~~~~~~\____--	     SDA  XXXXXXX=XXXXXXXXXXX--	          x | A | B | C | D | i---- Timing:      Normal mode     Fast mode------------------------------------------------------------------- Fscl         100KHz          400KHz-- Th_scl       4.0us           0.6us   High period of SCL-- Tl_scl       4.7us           1.3us   Low period of SCL-- Tsu:sta      4.7us           0.6us   setup time for a repeated start condition-- Tsu:sto      4.0us           0.6us   setup time for a stop conditon-- Tbuf         4.7us           1.3us   Bus free time between a stop and start condition--library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;entity i2c_master_bit_ctrl is	port (		clk    : in std_logic;		rst    : in std_logic;		nReset : in std_logic;		ena    : in std_logic;				-- core enable signal		clk_cnt : in unsigned(15 downto 0);		-- clock prescale value		cmd     : in std_logic_vector(3 downto 0);		cmd_ack : out std_logic; -- command completed		busy    : out std_logic; -- i2c bus busy		al      : out std_logic; -- arbitration lost		din  : in std_logic;		dout : out std_logic;		-- i2c lines		scl_i   : in std_logic;  -- i2c clock line input		scl_o   : out std_logic; -- i2c clock line output		scl_oen : out std_logic; -- i2c clock line output enable, active low		sda_i   : in std_logic;  -- i2c data line input		sda_o   : out std_logic; -- i2c data line output		sda_oen : out std_logic  -- i2c data line output enable, active low	);end entity i2c_master_bit_ctrl;architecture structural of i2c_master_bit_ctrl is	constant I2C_CMD_NOP    : std_logic_vector(3 downto 0) := "0000";	constant I2C_CMD_START  : std_logic_vector(3 downto 0) := "0001";	constant I2C_CMD_STOP   : std_logic_vector(3 downto 0) := "0010";	constant I2C_CMD_READ   : std_logic_vector(3 downto 0) := "0100";	constant I2C_CMD_WRITE  : std_logic_vector(3 downto 0) := "1000";	type states is (idle, start_a, start_b, start_c, start_d, start_e,	                stop_a, stop_b, stop_c, stop_d, rd_a, rd_b, rd_c, rd_d, wr_a, wr_b, wr_c, wr_d);	signal c_state : states;	signal iscl_oen, isda_oen : std_logic;          -- internal I2C lines	signal sda_chk            : std_logic;          -- check SDA status (multi-master arbitration)	signal dscl_oen           : std_logic;          -- delayed scl_oen signals	signal sSCL, sSDA         : std_logic;          -- synchronized SCL and SDA inputs	signal clk_en, slave_wait : std_logic;          -- clock generation signals	signal ial                : std_logic;          -- internal arbitration lost signal--	signal cnt : unsigned(15 downto 0) := clk_cnt;  -- clock divider counter (simulation)	signal cnt : unsigned(15 downto 0);             -- clock divider counter (synthesis)begin	-- whenever the slave is not ready it can delay the cycle by pulling SCL low	-- delay scl_oen	process (clk)	begin	    if (clk'event and clk = '1') then	      dscl_oen <= iscl_oen;	    end if;	end process;	slave_wait <= dscl_oen and not sSCL;	-- generate clk enable signal	gen_clken: process(clk, nReset)	begin	    if (nReset = '0') then	      cnt    <= (others => '0');	      clk_en <= '1';	    elsif (clk'event and clk = '1') then	      if (rst = '1') then	        cnt    <= (others => '0');	        clk_en <= '1';	      elsif ( (cnt = 0) or (ena = '0') ) then	        cnt    <= clk_cnt;	        clk_en <= '1';	      elsif (slave_wait = '1') then	        cnt    <= cnt;	        clk_en <= '0';	      else	        cnt    <= cnt -1;	        clk_en <= '0';	      end if;	    end if;	end process gen_clken;	-- generate bus status controller	bus_status_ctrl: block	  signal dSCL, dSDA          : std_logic;  -- delayes sSCL and sSDA	  signal sta_condition       : std_logic;  -- start detected	  signal sto_condition       : std_logic;  -- stop detected	  signal cmd_stop            : std_logic;  -- STOP command	  signal ibusy               : std_logic;  -- internal busy signal	begin	    -- synchronize SCL and SDA inputs	    synch_scl_sda: process(clk, nReset)	    begin	        if (nReset = '0') then	          sSCL <= '1';	          sSDA <= '1';	          dSCL <= '1';	          dSDA <= '1';	        elsif (clk'event and clk = '1') then	          if (rst = '1') then	            sSCL <= '1';	            sSDA <= '1';	            dSCL <= '1';	            dSDA <= '1';	          else	            sSCL <= scl_i;	            sSDA <= sda_i;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区成人| 久久国内精品视频| 亚洲香肠在线观看| 日韩欧美电影在线| av电影一区二区| 国精产品一区一区三区mba桃花 | 欧美日韩大陆一区二区| 国产成人在线免费观看| 琪琪一区二区三区| 亚洲一区二三区| 成人欧美一区二区三区黑人麻豆 | 国产区在线观看成人精品 | 国产精品18久久久久久久久| 午夜精品久久久久| 日韩一区在线看| 国产日韩欧美一区二区三区乱码| 在线播放日韩导航| 91天堂素人约啪| 成人av资源下载| 国产iv一区二区三区| 久久福利视频一区二区| 午夜成人免费电影| 亚洲一区二区不卡免费| 亚洲视频狠狠干| 18涩涩午夜精品.www| 中文字幕av一区二区三区免费看| 久久久久国产精品免费免费搜索| 日韩欧美国产综合一区 | 亚洲欧美另类久久久精品| 国产丝袜美腿一区二区三区| 精品日韩一区二区三区| 91麻豆精品国产综合久久久久久| 欧美无砖砖区免费| 欧美色男人天堂| 在线免费一区三区| 欧美视频在线一区二区三区| 色94色欧美sute亚洲13| 色综合久久久久| 91在线小视频| 欧洲在线/亚洲| 欧美日韩一本到| 欧美私人免费视频| 91精品国产综合久久久久久久久久 | 色综合中文字幕国产 | 99视频精品免费视频| 北条麻妃一区二区三区| 99视频超级精品| 色婷婷综合久久久中文一区二区 | 欧美一区二区二区| 欧美成人性战久久| 久久久久久免费网| 国产精品无人区| 亚洲欧美一区二区三区久本道91| 一区二区三区小说| 午夜电影久久久| 视频一区二区三区入口| 日韩制服丝袜先锋影音| 蜜臀久久99精品久久久画质超高清| 蜜臀久久久99精品久久久久久| 久久69国产一区二区蜜臀| 国产福利一区二区三区视频在线| 不卡影院免费观看| 欧美日韩国产综合视频在线观看| 日韩欧美国产三级| 中文无字幕一区二区三区| 国产精品对白交换视频| 性做久久久久久免费观看| 开心九九激情九九欧美日韩精美视频电影| 国产美女视频91| 色综合久久66| 精品剧情在线观看| 国产精品久久久久久久久果冻传媒| 亚洲一区二区三区自拍| 激情小说欧美图片| 色域天天综合网| 日韩视频免费观看高清完整版在线观看| 久久亚洲精品国产精品紫薇| 国产精品传媒视频| 麻豆91精品视频| 91色porny蝌蚪| 日韩欧美的一区| 亚洲欧美日韩中文字幕一区二区三区 | 成人一区二区视频| 91黄色激情网站| 欧美第一区第二区| 亚洲欧美色一区| 极品瑜伽女神91| 99精品在线观看视频| 日韩一级片网站| 亚洲欧美色综合| 国产成人免费在线观看不卡| 欧美无人高清视频在线观看| 久久精品夜色噜噜亚洲aⅴ| 亚洲成人激情综合网| 成人丝袜18视频在线观看| 欧美一级黄色大片| 一区二区三区在线视频观看| 国产在线不卡视频| 欧美喷潮久久久xxxxx| ...xxx性欧美| 国产宾馆实践打屁股91| 欧美一级高清片在线观看| 一区二区三区四区乱视频| 丰满少妇在线播放bd日韩电影| 欧美一区二区三区免费| 亚洲精品国产视频| www.日韩av| 久久精品人人做人人综合| 蜜桃视频一区二区三区在线观看| 色天天综合久久久久综合片| 日本不卡视频一二三区| 在线观看一区日韩| 日韩理论片网站| 播五月开心婷婷综合| 久久综合色鬼综合色| 蜜桃在线一区二区三区| 6080午夜不卡| 亚洲地区一二三色| 在线观看日韩电影| 亚洲综合色丁香婷婷六月图片| 成人高清av在线| 久久九九全国免费| 国产伦理精品不卡| 久久色在线视频| 狠狠色丁香久久婷婷综合丁香| 日韩免费视频一区二区| 午夜精品123| 欧美欧美午夜aⅴ在线观看| 亚洲一区二区视频在线| 欧美日韩一区不卡| 亚洲黄一区二区三区| 91福利在线播放| 亚洲成a人片综合在线| 欧美少妇xxx| 日韩国产欧美在线播放| 欧美精品久久天天躁| 日韩专区中文字幕一区二区| 91精品国产综合久久香蕉的特点 | 中文字幕欧美一区| 99久久777色| 一区二区三区四区亚洲| 日本福利一区二区| 亚洲综合激情网| 欧美精品三级日韩久久| 手机精品视频在线观看| 日韩欧美二区三区| 美女网站在线免费欧美精品| 精品嫩草影院久久| 国产成人久久精品77777最新版本| 国产片一区二区| 91小视频免费观看| 亚洲高清久久久| 在线综合+亚洲+欧美中文字幕| 美脚の诱脚舐め脚责91| 国产日韩欧美精品电影三级在线| 成人av在线一区二区三区| 一区二区三区在线免费| 欧美日韩国产区一| 精品亚洲porn| 亚洲欧美怡红院| 欧美三区在线视频| 久久精品国产秦先生| 国产精品久久久久四虎| 欧美日韩综合一区| 国产综合色在线| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 在线免费精品视频| 精品一区二区影视| 亚洲视频在线观看三级| 91精品国产品国语在线不卡| 国产一区二区三区不卡在线观看 | 91麻豆文化传媒在线观看| 亚洲123区在线观看| 国产婷婷色一区二区三区| 在线观看视频一区二区| 久久精品噜噜噜成人88aⅴ | 蜜桃精品在线观看| 国产精品视频免费看| 欧美日韩欧美一区二区| 国产91高潮流白浆在线麻豆 | 99精品视频一区| 日韩av中文在线观看| 国产精品素人视频| 91精品国产色综合久久ai换脸| 成人高清在线视频| 亚洲一区二区美女| 国产精品三级av| 日韩三级在线观看| 欧美在线观看18| 成人免费不卡视频| 青娱乐精品视频在线| 亚洲精品大片www| 国产日韩v精品一区二区| 这里是久久伊人| 欧洲国产伦久久久久久久| 国产九色精品成人porny| 日韩精彩视频在线观看| 亚洲欧美自拍偷拍色图| 久久精品视频免费观看| 欧美一区二区视频观看视频|