<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 不用網(wǎng)絡(luò)照樣可以打字聊天

          不用網(wǎng)絡(luò)照樣可以打字聊天

          作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏


          前些時(shí)用劉洋的電腦在網(wǎng)上看了一個(gè)別人用nRF24L01做的無(wú)線(xiàn)聊天的東東,可以雙方發(fā)送字符或是漢字。那是一看似乎就知道了別人是怎么實(shí)現(xiàn)的:?jiǎn)纹瑱C(jī)串口收發(fā)+nRF24L01的無(wú)線(xiàn)數(shù)據(jù)傳輸。當(dāng)時(shí)還是覺(jué)得蠻好玩的。在那之前我就把nRF24L01+(是nRF24L01的升級(jí)版)的的雙向無(wú)線(xiàn)數(shù)據(jù)交換弄通了,就得在就是加個(gè)串口就好了。接下來(lái)了的一段時(shí)間在弄我的無(wú)線(xiàn)小車(chē)也就沒(méi)有弄這玩意,不過(guò)還是放在心里了。這個(gè)月初,小車(chē)弄好了,功能比較簡(jiǎn)單,無(wú)線(xiàn)控制,只有前進(jìn)、后退,左、右,沒(méi)有加入速度的控制;本來(lái)想加入ADXL345做個(gè)重力感應(yīng)的,后來(lái)覺(jué)得ADXL345我還不能怎么好好的駕馭它,不知道怎么對(duì)讀出來(lái)的數(shù)據(jù)進(jìn)行處理,這個(gè)功能就沒(méi)有加。所以就做成了前段時(shí)間上傳的視頻里的那樣的了。后來(lái)焊接了三個(gè)nRF24L01+的小板子,想做做多機(jī)通信或是玩玩它的跳頻。這個(gè)搞了幾天,可以一個(gè)發(fā)送兩個(gè)接收了,手里也就這么多硬件,只能這樣了。這個(gè)暫時(shí)放下了。又在這個(gè)星期弄那個(gè)視頻看見(jiàn)的東西了:無(wú)線(xiàn)串口通信。花了兩天在STC15L204EA上調(diào)試串口,由于STC15L204EA沒(méi)有獨(dú)立的串口模塊,只能模擬串口了,在網(wǎng)上找到了模擬串口的程序,也看了STC的數(shù)據(jù)手冊(cè)里介紹的模擬串口部分,感覺(jué)模擬串口可以完成數(shù)據(jù)的收發(fā),但是不怎么好用,搞了兩天就沒(méi)有弄模擬串口了,一想自己還有兩個(gè)兩個(gè)以前在漢口解放公園那里買(mǎi)的兩個(gè)STC12LE5A60S2的最小系統(tǒng)板,就用它了。這個(gè)不用焊接電路,只需要用杜邦線(xiàn)連接就可以了,串口的程序自己以前也寫(xiě)得有,nRF24L01+的收發(fā)的程序也早就弄好了。感覺(jué)只需要把兩個(gè)有機(jī)的結(jié)合在一起就可以了。但是,不是這樣的,主要是串口。以前的串口程序可以發(fā)送字符串到串口調(diào)試助手上去,但是接收我需要把接收的字符串存入一個(gè)數(shù)組里去,而且數(shù)組的長(zhǎng)度有限制(我只會(huì)讓nRF24L01+一次發(fā)送32字節(jié)的數(shù)據(jù),它一次最多也只可以發(fā)送32字節(jié)的數(shù)據(jù),超過(guò)32字節(jié)的就不會(huì)操作了,主要是不知道怎么樣將從串口接收到的超過(guò)32字節(jié)的數(shù)據(jù)存入多個(gè)數(shù)組里面再發(fā)送出去的數(shù)據(jù)的長(zhǎng)度就是接收到的長(zhǎng)度),再將從串口接收到了的字符串存入數(shù)組里面花了一點(diǎn)時(shí)間,但是還是發(fā)現(xiàn)有問(wèn)題。一是:當(dāng)數(shù)組長(zhǎng)度小于等于32時(shí),很好操作,但是超過(guò)32時(shí)再發(fā)送出去的就是超過(guò)的部分的數(shù)據(jù),前32個(gè)我把它清零了,后面的沒(méi)有清零。二是:當(dāng)我人為的規(guī)定了一次發(fā)送的數(shù)據(jù)的長(zhǎng)度,但是當(dāng)一次的數(shù)據(jù)長(zhǎng)度小于我人為規(guī)定的長(zhǎng)度再怎么發(fā)送出去呢?還好我想到了定時(shí)器,思路:當(dāng)數(shù)據(jù)大于32時(shí),發(fā)送這個(gè)數(shù)據(jù)的前32個(gè);當(dāng)數(shù)據(jù)小于32時(shí),我們打開(kāi)定時(shí)器,定時(shí)時(shí)間大于接收一串字符串的時(shí)間,再在定時(shí)時(shí)間到了后把數(shù)據(jù)發(fā)送出去。定時(shí)器中斷的操作也是在做老師的項(xiàng)目時(shí)經(jīng)常用到了,我就這么的寫(xiě)了代碼,發(fā)現(xiàn)奇跡出來(lái)了:達(dá)到了想象的效果。但是還有一個(gè)一直成在的問(wèn)題就是當(dāng)數(shù)組長(zhǎng)度大于32時(shí),它怎么就會(huì)把超出的部分發(fā)送出去?后來(lái)就做了一個(gè)使用說(shuō)明的東西,按照說(shuō)明來(lái)操作就OK了,自己做的東西,說(shuō)明規(guī)定當(dāng)然由我定了,呵呵……就這么的串口算是弄到了理想效果。但是問(wèn)題又來(lái)了。我的PL2302的驅(qū)動(dòng)裝不好,以前我的電腦就是用的這個(gè)驅(qū)動(dòng),這就導(dǎo)致我只能做一個(gè)的了,不能兩個(gè)同時(shí)操作。沒(méi)辦法,只好想辦法解決驅(qū)動(dòng)的問(wèn)題,搞了一天沒(méi)有搞好,驅(qū)動(dòng)有問(wèn)題我也無(wú)解了,再就是來(lái)焊接MAX3232串口電路了,焊接了兩次沒(méi)有焊接好,沒(méi)辦法,在寢室弄實(shí)驗(yàn)條價(jià)差沒(méi)有工具檢測(cè),第二次是昨天晚上上完了選修課回來(lái)焊接的,于放棄了。前幾天找彭博華借了一個(gè)CP2102的下載器,我的電腦裝CP2102的驅(qū)動(dòng)裝不好,昨天晚上又找呂靜借來(lái)了電腦,她的電腦我上次使用時(shí)裝好了CP2102的驅(qū)動(dòng)。昨天晚上焊接電路前在她的電腦上試了一下CP2102下載器,好使。今天上午的1、2節(jié)課去上劉輝的工業(yè)計(jì)算機(jī)去了,回來(lái)就來(lái)把串口部分和nRF24L01+的收發(fā)結(jié)合起來(lái)。好在在我借到彭博華的CP2102下載器之前我的大腦里就有一個(gè)思路怎么結(jié)合兩個(gè)部分了。下課回了沒(méi)有花多少時(shí)間就把它們給弄好了,11點(diǎn)鐘吃中飯之前就好了,效果出來(lái)了,可以和別人的視頻里演示的一樣了。就這么樣困擾快一個(gè)星期的問(wèn)題解決了。找黃品章借來(lái)了小米拍視屏,請(qǐng)了小強(qiáng)做攝影師。在此一并感謝提到的各位,謝謝你們!但是不管怎么拍,我的地理方位不怎么好,有點(diǎn)反光,一個(gè)人操作兩臺(tái)電腦也不好操作,視頻拍的比較亂,就截圖吧。就這么樣,我的無(wú)線(xiàn)通信也做完了,也達(dá)到了別人視頻里的效果。傳輸距離在空曠條件下60米沒(méi)有問(wèn)題。自己不會(huì)用VB,看見(jiàn)那語(yǔ)言就不自在,所用用的還是STC官網(wǎng)提供的串口工具。


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: 網(wǎng)絡(luò)STC15L204E

          評(píng)論


          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();