freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

信息與通信]帶有源代碼基于fpga的模擬i2c接口設(shè)計與實現(xiàn)-資料下載頁

2024-11-12 15:53本頁面

【導讀】口功能的程序代碼,同時給出了基于目標板的硬件實物測試圖。支撐電子設(shè)計的通用平臺,并逐步向支持系統(tǒng)級的設(shè)計方向發(fā)展。思想在軟件設(shè)計過程中越來越被重視。IIC總線是Philips公司推出的雙向兩線。串行通訊標準,具有接口線少、通訊效率高等特點。目前針對IIC總線的相關(guān)開。發(fā)的資料都是利用VHDL語言或AHDL語言實現(xiàn)的。本文設(shè)計的IIC總線模塊。IIC總線是一種由PHILIPS公。司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備。括單個組件狀態(tài)的通信。或掌握組件的功能狀態(tài),如電源和系統(tǒng)風扇??呻S時監(jiān)控內(nèi)存、硬盤、網(wǎng)絡(luò)、系。統(tǒng)溫度等多個參數(shù),增加了系統(tǒng)的安全性,方便了管理。IIC總線最主要的優(yōu)點是其簡單性和有效性??偩€的長度可高達25英尺,并且能夠以10Kbps的最大傳輸速率支

  

【正文】 )//字節(jié)讀或者頁讀按鍵 begin//讀或著是連讀 db_r = `DEVICE_READ。//送器件地址(讀操作),特定地址讀需要執(zhí)行該步驟以下操作 cstate = START2。 //讀操作 end else if(!Page_Write)//頁寫按鍵 begin//連寫 //db_r = pagedata_r。 //ackflag = ackflag + 139。d1。 cstate = PAGEW。 end else cstate= ACK2。//等待從機響應(yīng) end end START2: 31 begin//讀操作起始位 if(`SCL_LOW) begin sda_link = 139。b1。//sda 作為 output sda_r = 139。b1。 //拉高數(shù)據(jù)線 sda cstate = START2。 end else if(`SCL_HIG) begin //scl 為高電平中間 sda_r = 139。b0。//拉低數(shù)據(jù)線 sda,產(chǎn)生起始位信號 cstate = ADD3。 end else cstate = START2。 end ADD3: begin //送讀操作地址 if(`SCL_LOW) begin if(num==439。d8) begin num = 439。d0。 //num 計數(shù)清零 32 sda_r = 139。b1。 sda_link = 139。b0。//sda 置為高阻態(tài) (input) cstate = ACK3。 end else begin num = num+139。b1。 case (num) 439。d0: sda_r = db_r[7]。 439。d1: sda_r = db_r[6]。 439。d2: sda_r = db_r[5]。 439。d3: sda_r = db_r[4]。 439。d4: sda_r = db_r[3]。 439。d5: sda_r = db_r[2]。 439。d6: sda_r = db_r[1]。 439。d7: sda_r = db_r[0]。 default: 。 endcase cstate = ADD3。 end end else 33 cstate = ADD3。 end ACK3: begin if(`SCL_NEG amp。amp。 !Byte_Read) begin cstate = DATA。 //從機響應(yīng)信號 sda_link = 139。b0。 end else if(`SCL_NEG amp。amp。 !Page_Read) begin cstate = PAGER。 //從機響應(yīng)信號 ackflag = ackflag +139。d1。 sda_link = 139。b0。 end else cstate = ACK3。 //等待從機響應(yīng) end ACKR: begin sda_r = 0。 //主控制器應(yīng) 答 if(`SCL_NEG amp。amp。 !Page_Read) 34 begin cstate = PAGER。 ackflag = ackflag +139。d1。 sda_link = 139。b0。 end else cstate = ACKR。 end DATA: begin if(!Byte_Read) begin //讀操作 if(num=439。d7) begin cstate = DATA。 if(`SCL_HIG) begin num = num+139。b1。 case (num) 439。d0: read_data[7] = sda。 439。d1: read_data[6] = sda。 439。d2: read_data[5] = sda。 35 439。d3: read_data[4] = sda。 439。d4: read_data[3] = sda。 439。d5: read_data[2] = sda。 439。d6: read_data[1] = sda。 439。d7: read_data[0] = sda。 default: 。 endcase end end else if((`SCL_LOW) amp。amp。 (num==439。d8)) begin num = 439。d0。 //num 計數(shù)清零 //cstate = ACK4。 sda_link = 139。b1。 //無應(yīng)答 outdata_r = read_data。 ackflag = 339。d1。 //1 個數(shù) cstate = HIGH。 end else cstate = DATA。 end else if(!Byte_Write) 36 begin //寫操作 sda_link = 139。b1。 if(num=439。d7) begin cstate = DATA。 if(`SCL_LOW) begin sda_link = 139。b1。 //數(shù)據(jù)線 sda 作為 output num = num+139。b1。 case (num) 439。d0: sda_r = db_r[7]。 439。d1: sda_r = db_r[6]。 439。d2: sda_r = db_r[5]。 439。d3: sda_r = db_r[4]。 439。d4: sda_r = db_r[3]。 439。d5: sda_r = db_r[2]。 439。d6: sda_r = db_r[1]。 439。d7: sda_r = db_r[0]。 default: 。 endcase end end 37 else if((`SCL_LOW) amp。amp。 (num==439。d8)) begin num = 439。d0。 sda_r = 139。b1。 sda_link = 139。b0。//sda 置為高阻態(tài) cstate = ACK4。 end else cstate = DATA。 end end PAGEW:begin sda_link = 139。b1。 //sda 為輸出 //if(paget PAGEDATA_NUM)begin if(num=439。d7) begin cstate = PAGEW。 if(`SCL_LOW) begin sda_link = 139。b1。 //數(shù)據(jù)線 sda 作為 output num = num+139。b1。 case (num) 38 439。d0: sda_r = pagedata_r[7]。 439。d1: sda_r = pagedata_r[6]。 439。d2: sda_r = pagedata_r[5]。 439。d3: sda_r = pagedata_r[4]。 439。d4: sda_r = pagedata_r[3]。 439。d5: sda_r = pagedata_r[2]。 439。d6: sda_r = pagedata_r[1]。 439。d7: sda_r = pagedata_r[0]。 default: 。 endcase end end else if((`SCL_LOW) amp。amp。 (num==439。d8)amp。amp。(paget PAGEDATA_NUM139。b1)) begin num = 439。d0。 paget = paget +139。d1。 sda_r = 139。b1。 sda_link = 139。b0。//sda 置為高阻態(tài) cstate = ACK2。 end else if((`SCL_LOW) amp。amp。 (num==439。d8) amp。amp。 (paget == PAGEDATA_NUM 139。b1)) begin 39 num = 439。d0。 //paget = paget +139。d1。 paget = 139。d0。 sda_r = 139。b1。 sda_link = 139。b0。 cstate = ACK4。 end else cstate = PAGEW。 end //end PAGER: begin //if(paget PAGEDATA_NUM)begin if(num=439。d7) begin cstate = PAGER。 if(`SCL_LOW) begin num = num+139。b1。 case (num) 439。d0: read_data[7] = sda。 40 439。d1: read_data[6] = sda。 439。d2: read_data[5] = sda。 439。d3: read_data[4] = sda。 439。d4: read_data[3] = sda。 439。d5: read_data[2] = sda。 439。d6: read_data[1] = sda。 439。d7: read_data[0] = sda。 default: 。 endcase end end else if((`SCL_LOW) amp。amp。 (num==439。d8)amp。amp。 (paget PAGEDATA_NUM139。b1)) begin num = 439。d0。 paget = paget +139。d1。 outdata_r = read_data。 //ackflag = ackflag +139。d1。 sda_r = 139。b1。 sda_link = 139。b1。 //主控制器應(yīng)答 cstate = ACKR。 end else if((`SCL_LOW) amp。amp。 (num==439。d8) amp。amp。 (paget == PAGEDATA_NUM 139。b1)) 41 begin num = 439。d0。 //paget = paget +139。d1。 outdata_r = read_data。 ackflag = ackflag +139。b1。 paget = 139。d0。 sda_r = 139。b1。 sda_link = 139。b1。 cstate = HIGH。 end else cstate = PAGER。 end //end ACK4: begin //寫操作最后個應(yīng)答 if(`SCL_NEG) begin cstate = STOP1。 end else cstate = ACK4。 42 end HIGH: begin if(`SCL_NEG) begin sda_r = 139。d1。//當完成接收數(shù)據(jù)后 , 接收方發(fā)送非應(yīng)答信號 //ackflag = ackflag +139。d1。 cstate = STOP1。 end else cstate = HIGH。 end STOP1: begin if(`SCL_LOW) begin sda_link = 139。b1。 sda_r = 139。b0。 cstate = STOP1。 end else if(`SCL_HIG) begin 43 sda_r = 139。b1。 //scl 為高時, sda 產(chǎn)生上升沿(結(jié)束信號) cstate = STOP2。 end else cstate = STOP1。 end STOP2: begin if(`SCL_LOW) sda_r = 139。b1。 else if(Syn_Sign) cstate = IDLE。//同步采樣 else cstate = STOP2。 end default: cstate = IDLE。 endcase end /************************************************************************************/ assign sda = sda_link ? sda_r:139。bz。//1:輸出模式, 0:輸入模式 assign outdata = outdata_r。 /************************************************************************************/ endmodul
點擊復制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1