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

正文內(nèi)容

射頻無線鍵盤設計-預覽頁

2026-01-06 02:14 上一頁面

下一頁面
 

【正文】 示: 圖 1. 整體設計流程圖PS/2 數(shù)據(jù)采集接口一般,具有五腳連接器的鍵盤稱之為 AT 鍵盤,而具有六腳 mini-DIN 連接器的鍵盤則稱之為 PS/2 鍵盤。 [1]現(xiàn)在比較常用的連接器如圖 3 所示。 [4]如果是 PC 機和 PS/2 鍵盤間的通訊,則 PC 機必須做主機,也就是說,PC 機可以抑制 PS/2 鍵盤發(fā)送數(shù)據(jù),而 PS/2 鍵盤則不會抑制 PC機發(fā)送數(shù)據(jù)。表 2 數(shù)據(jù)幀格式說明表 1 個起始位 總是邏輯 08 個數(shù)據(jù)位 (LSB )低位在前1 個奇偶校驗位 奇校驗1 個停止位 總是邏輯 11 個應答位 僅用在主機對設備的通訊中數(shù)據(jù)傳送輸模塊介紹nRF2401 是北歐集成電路公司生產(chǎn)的單片射頻收發(fā)芯片,工作于 ~ ISM頻段,芯片內(nèi)置頻率合成器、功率放大器、晶體振蕩器和調(diào)制器等功能模塊,輸出功率和通信頻道可通過程序進行配置?!?雙接收功能獨特設計 nRF2401 的 DuoCeiver 技術(shù)可以同時接收兩個 nRF2401 的數(shù)據(jù)可以有效降低成本拓展用途● 編程配置發(fā)射功率工作頻率等所有工作參數(shù)全部通過 SPI 串口軟件設置完成●外圍元件極少,只需一個晶振和一個電阻即可設計射頻電路?!癫捎?DuoCeiver 技術(shù)可同時接收兩個 nRF2401 的數(shù)據(jù)?!駸o需外部 SAW 濾波器。 DuoCeiverTM 的雙信道接收模式:nRF2401 的 DuoCeiverTM 技術(shù)為 RX 提供了兩個獨立的專用數(shù)字信道,因而可代 3 所示是 DuoCeiverTM 可以通過一個天線接口從相隔 8MHz的兩個 1Mbps MCU :  數(shù)字信道 1:CLK1,DATA,DR1。當微控制器有數(shù)據(jù)要發(fā)送時,把 CE 置高,nRF2401 射頻前端被激活。由于 DR 引腳沒用上,所有的地址和 CRC 校驗必須在微控制器內(nèi)部進行。最后清除 NRF24L01 的狀態(tài)寄存器,再次為下一次數(shù)據(jù)的接收做好準備。 ( 3) 接 口 使 用 一 根 信 號 線 和 一 根 信 號 返 回 線 而 構(gòu) 成 共 地 的 傳 輸 形 式 , 這 種 共 地傳 輸 容 易 產(chǎn) 生 共 模 干 擾 , 所 以 抗 噪 聲 干 擾 性 弱 。 在 本 設 計 中 MAX232 與 單 片 機 的串 口 通 信 原 理 圖 如 下 所 示 :上圖為本設計應用的 RS232 串行通信原理圖PS/2 接口的鍵盤與無線發(fā)射模塊的數(shù)據(jù)傳送應用技術(shù)在本設計中 PS/2 鍵盤與單片機的連接方式如圖 9 所示。傳輸?shù)拿恳粠?11 位組成,發(fā)送時序及每一位的含義如圖 7 所示。在此過程中,從設備在不超過 10us 的間隔內(nèi)必須檢查這個狀態(tài),當設備檢測到這個狀態(tài)時,它將開始產(chǎn)生時鐘信號。主設備到從設備通信過程中,主設備總是在時鐘線為低電平時改變數(shù)據(jù)線的狀態(tài),從設備在時鐘上升沿讀人數(shù)據(jù)線狀態(tài)。當 nRF24L01 工作后,才把接收機的地址和要發(fā)送的數(shù)據(jù)按時序送入 nRF24L01,隨后微控制器把 CE 置低,激發(fā)nRF24L01 進行 ShockBurstTM 發(fā)射。六、PCB 電路板制作的關(guān)鍵技術(shù)材料PCB 電路圖第 13 頁 共 32 頁 圖 基于 PS/2 接口的無線數(shù)據(jù)傳送系統(tǒng)的 PCB 圖裝配圖元件清單第 14 頁 共 32 頁元件標號 封裝 參數(shù)C1 104C2 104C3 104C4 104C5 104C6 104C7 104C8 104C9 104C10 220UC11 10UC12 10UC13 C14 20C15 20C16 20C17 20C18 100UC19 100UC20 100UC21 100UD1 led LEDD2 led  J1 sip4 ISPJ2 USB1 USBJ3 DB9RA/M DB9JP1 IDC10 24L01LED1 led LEDR1 1KR2 1KR3 1KR4 1KR5 10KR6 22R7 22RP1 SIP9 10KS1 BUT1 TESTU1 SOJ28 PDIUSBD12U2 DIP40 8051U3 DIP16 MAX232U4 AS1117a AMS1117Y1 XTAL1 6MY2 XTAL1 第 15 頁 共 32 頁七、軟件設計流程圖主程序流程圖主程序先對系統(tǒng)初始化,接收機初始化后等待進入中斷接收數(shù)據(jù),轉(zhuǎn)換數(shù)據(jù)傳給芯片轉(zhuǎn)換。其程序流程圖如圖 12 所示。void Delay_NS(uint x){ for(。 for(i=0。j++)。 KB_DATA=0。 while(!KB_CLK)。 KB_DATA = datamp。 dat=1。break。 KB_DATA =1。 }uchar Key_Scan(void){ uchar i,key_temp。while(KB_CLK)。 while(!KB_CLK)。 } }while(KB_CLK)。i49。i37。i18。}uchar Get_Key(void){ uchar Key_Code[3],temp=0xff。 temp=key2asc(Key_Code[0])。 Delay_NS(2021)。 Send_Key(0x07)。UsartInt()。 P1^=1。uint8 i=2。 第 21 頁 共 32 頁 } else { Buf[2]=hid_code。i++){ if(asc_code==hidasciicode[i][1]) { temp= hidasciicode[i][0]。i++){ if(asc_code==hidcontrolcode[i][1]) { temp= hidcontrolcode[i][0]。i++){ if(asc_code==E0startedcode[i][1]) { temp= E0startedcode[i][0]。 uint8 InterruptSource。 init_NRF24L01()。 Prints(Your D12 chip\39。 UsbConnect()。 if(InterruptSourceamp。 if(InterruptSourceamp。 if(InterruptSourceamp。 if(InterruptSourceamp。 } if(ConfigValue!=0) { if(!Ep1InIsBusy) { SetRX_Mode()。 SendReport(hid_code)。 D12SetPortOut()。 }uint8 D12ReadByte(void){ uint8 temp。 D12SetRd()。 //寫讀 ID 命令 id=D12ReadByte()。 D12ClrWr()。 D12SetPortIn()。 //選擇端點的命令}void D12ClearBuffer(void){ D12WriteCommand(D12_CLEAR_BUFFER)。 D12WriteCommand(D12_ACKNOWLEDGE_SETUP)。 D12ReadByte()。 PrintLongInt(Endp/2)。\r\n)。 *(Buf+i)=D12GetData()。 endif }第 25 頁 共 32 頁ifdef DEBUG1 if((j%16)!=0)Prints(\r\n)。 D12SelectEndpoint(Endp)。 ifdef DEBUG1 Prints(寫端點)。 Prints(字節(jié)。iLen。ifdef DEBUG1 PrintHex(*(Buf+i))。 D12ValidateBuffer()。 }void D12SetEndpointEnable(uint8 Enable){ D12WriteCommand(D12_SET_ENDPOINT_ENABLE)。typedef unsigned char uint。sbit CE =P0^0。sbit LED=P2^1。void init_NRF24L01(void)。uint SPI_RW_Reg(uchar reg, uchar value)。uint bdata sta。void inerDelay_us(unsigned char n){for(。 CE=0。SPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH)。 SPI_RW_Reg(WRITE_REG + RF_CH, 0)。 }uint SPI_RW(uint uchar){uint bit_ctr。 0x80)。 inerDelay_us(10)。 } return(uchar)。SPI_RW(reg)。return(reg_val)。第 29 頁 共 32 頁status = SPI_RW(reg)。 }uint SPI_Read_Buf(uchar reg, uchar *pBuf, uchar uchars){uint status,uchar_ctr。 for(uchar_ctr=0。 inerDelay_us(10)。 inerDelay_us(10)。 uchar_ctr++) SPI_RW(*pBuf++)。inerDelay_us(10)。sta=SPI_Read(STATUS)。// read receive payload from RX_FIFO bufferrevale =1。軟件調(diào)試用Keil C51 編譯器,源程序編譯應分段或以子程序為單位逐個進行,最后可結(jié)合硬件運行調(diào)試。第 31 頁 共 32 頁參 考 文 獻[1] 李建忠. :西安電子科技大學出版社,[2] 單片機 C :電子工業(yè)出版社 ,
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1