www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]  1. 引言  在產(chǎn)業(yè)控制場合中,常會要求通過PC向嵌進(jìn)式微機(jī)傳輸圖片文件、數(shù)據(jù)文件等。RS485由于價格便宜、操縱簡單、使用者可以隨意編寫應(yīng)用協(xié)議等優(yōu)點,被廣泛應(yīng)用在中等長間隔的控制通訊中。因此,利用RS485實

  1. 引言

  在產(chǎn)業(yè)控制場合中,常會要求通過PC向嵌進(jìn)式微機(jī)傳輸圖片文件、數(shù)據(jù)文件等。RS485由于價格便宜、操縱簡單、使用者可以隨意編寫應(yīng)用協(xié)議等優(yōu)點,被廣泛應(yīng)用在中等長間隔的控制通訊中。因此,利用RS485實現(xiàn)PC到嵌進(jìn)式系統(tǒng)的文件傳輸,十分具有現(xiàn)實意義[6]。

  本文以基于ARM9的三星S3C2410A為嵌進(jìn)式微處理器,嵌進(jìn)式Linux為嵌進(jìn)式操縱系統(tǒng)搭建一個嵌進(jìn)式系統(tǒng),成功實現(xiàn)了PC通過RS485向嵌進(jìn)式系統(tǒng)傳輸文件。

  2. RS485接口先容

  RS485是一種多點、雙向、平衡傳輸規(guī)范,被命名為TIA/EIA-485-A標(biāo)準(zhǔn)。

  RS485由RS232發(fā)展而來,它改進(jìn)了RS232通訊間隔短、速率低的缺點。RS485是一種平衡通訊接口,傳輸速率最高可達(dá)10Mbit/s,最大傳輸間隔約為1219m,并答應(yīng)在一條平衡總線上連接最多32個設(shè)備。RS485的共模輸出電壓是-7V~+12V[5]。

  3. 硬件設(shè)計

  本文采用FriendlyARM公司的Nano2410V2核心板作為中心處理器模塊,并配以外圍電路。Nano2410V2核心板以S3C2410A為CPU[1]。

  把S3C2410A的UART0分配給RS485總線,由芯片MAX485完成TTL到差分信號的轉(zhuǎn)換,RS485方向控制線占用GPB2,如圖1所示[2]。

  圖1 硬件連線圖

  PC上使用RS232/RS485轉(zhuǎn)換器,完成RS232到RS485的轉(zhuǎn)換。

  4. RS485驅(qū)動程序

  RS485標(biāo)準(zhǔn)只對接口的電氣特性作出規(guī)定,而不涉及插件、電纜或協(xié)議[5]。因此,在Linux下使用RS485接口,可借助串口驅(qū)動程序?qū)崿F(xiàn)。但是,RS485是半雙工的,比起RS232,需要多加一個I/O口來控制RS485的方向,該I/O口在發(fā)送數(shù)據(jù)時置高,接收數(shù)據(jù)時置低。

  發(fā)送數(shù)據(jù):

  ioctl(fd485, 1, 0); //fd485:方向控制I/O口驅(qū)動設(shè)備文件的fd

  write(fdtty, &bufout, 1); //fdtty:串口驅(qū)動設(shè)備文件的fd

  delay();

  讀取數(shù)據(jù):

  ioctl(fd485, 0, 0);

  read(fdtty, &bufin, 1) ;

  方向控制線的驅(qū)動程序設(shè)計:

  定義file_operatiONs[3][4]:

  static struct file_operations io485_fops=

  {

  owner:THIS_MODULE,

  ioctl:io485_ioctl

  };

  函數(shù)io485_ioctl用于設(shè)置RS485接口的方向:cmd為0時,設(shè)為輸進(jìn);cmd為1時,設(shè)為輸出[3][4]。

  static int io485_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg)

  {

  switch(cmd)

  {

  case 0:

  case 1:

  write_gpio_bit(GPIO_B2, cmd);

  return 0;

  default:

  return -EINVAL;

  }

  }

  5. 自定義數(shù)據(jù)幀格式

  在這里數(shù)據(jù)幀格式指的是發(fā)送方發(fā)送一個文件或者接收方接收一個文件的完整過程所需要的每一個字節(jié)元素的含義[5]。

  本文定義格式如下:

  (1) 開始符:標(biāo)志開始傳輸文件,1個字節(jié)。

  (2) 文件名長度:所傳輸文件的文件名的長度,1個字節(jié)。

  (3) 文件名:所傳輸文件的文件名,字節(jié)數(shù)由文件名長度決定。

  (4) 文件大小:所傳輸文件的大小,4個字節(jié)。

  (5) 文件內(nèi)容:所傳輸文件的數(shù)據(jù),字節(jié)數(shù)由文件大小決定。

  (6) ACK:確認(rèn)信號。接收方給發(fā)送方的反饋信號,表示數(shù)據(jù)接收完成,1個字節(jié)。

  6. 程序流程

  本文對于傳輸文件,采用的方法為:發(fā)送端打開要傳輸?shù)奈募?,讀取文件數(shù)據(jù),然后通過串口向外發(fā)送;接收端先建立一個空文件,然后把從RS485接口讀到的內(nèi)容寫進(jìn)該文件里。

  數(shù)據(jù)校驗:為防止文件數(shù)據(jù)在傳輸?shù)倪^程中,丟失或出錯,進(jìn)行校驗是必要的。在這里,采用的校驗方法是:發(fā)送端每發(fā)送n個字節(jié),就取1個字節(jié)作為校驗字節(jié)。該字節(jié)是前n個字節(jié)異或運算的結(jié)果;接收端每接收n個字節(jié),就對該n個字節(jié)進(jìn)行異或運算,并把結(jié)果與校驗字節(jié)作比較,相同則傳輸繼續(xù)進(jìn)行,不同則要求發(fā)送端重新發(fā)送。

  在本文中,ARM作為文件接收方,PC作為文件發(fā)送方,接收方程序流程圖如圖5所示,發(fā)送方的程序流程與接收方互補(bǔ)即可。

  圖2 程序流程圖

  7. 結(jié)語

  通過PC向嵌進(jìn)式微機(jī)傳輸文件在嵌進(jìn)式系統(tǒng)應(yīng)用中經(jīng)常需要。而RS485由于其突出優(yōu)點,廣泛應(yīng)用在產(chǎn)業(yè)控制中。因此通過RS485實現(xiàn)PC到嵌進(jìn)式系統(tǒng)的文件傳輸,十分具有現(xiàn)實意義。

  本文作者創(chuàng)新點:提出了一種簡單的RS485驅(qū)動程序設(shè)計方法,并以一種簡單、實用、可靠的方法成功實現(xiàn)了PC通過RS485向ARM傳輸文件


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

ARM系統(tǒng)幾乎都采用Linux的操作系統(tǒng),而且?guī)缀跛械挠布到y(tǒng)都要單獨構(gòu)建自己的系統(tǒng),與其他系統(tǒng)不能兼容,這也導(dǎo)致其應(yīng)用軟件不能方便移植,這一點一直嚴(yán)重制約了ARM系統(tǒng)的發(fā)展和應(yīng)用。GOOGLE開發(fā)了開放式的Andro...

關(guān)鍵字: Linux x86 ARM

隨著計算需求的多樣化,尤其是隨著移動設(shè)備、嵌入式系統(tǒng)和云計算的興起,ARM 和 x86 架構(gòu)之間的爭論變得更加突出。ARM(高級 RISC 機(jī)器)和 x86 代表兩種不同類型的處理器架構(gòu),每種架構(gòu)都針對不同的工作負(fù)載和用...

關(guān)鍵字: Linux x86 ARM

從畫質(zhì)優(yōu)化 (NSS) 到幀率提升 (NFRU) 和光線追蹤(NSSD),Arm 計劃覆蓋移動端圖形處理的多個維度,推動邊緣 AI 圖形革命。而未來通過持續(xù)的技術(shù)迭代,Arm也將保持在移動計算領(lǐng)域的技術(shù)領(lǐng)先,滿足手游、A...

關(guān)鍵字: ARM 神經(jīng)圖形技術(shù) GPU AI ML

7月31日消息,據(jù)媒體報道,芯片架構(gòu)提供商Arm Holdings首席執(zhí)行官Rene Haas宣布,公司正加大投入開發(fā)自有芯片產(chǎn)品,此舉標(biāo)志著其從傳統(tǒng)IP授權(quán)模式向提供實體芯片的戰(zhàn)略重大轉(zhuǎn)變。

關(guān)鍵字: ARM META

7月28日消息,2025年,中國AI硬件市場規(guī)模將首次突破萬億元大關(guān)。

關(guān)鍵字: AI ARM

受生成式 AI 驅(qū)動, RISC-V 芯片市場快速發(fā)展。預(yù)計到2030年,RISC-V SoC出貨量將達(dá)到1618.1億顆,營收將達(dá)到927億美元。其中,用于AI加速器的RISC-V SoC出貨量將達(dá)到41億顆,營收將達(dá)...

關(guān)鍵字: RISC-V CPU AI CUDA ARM 推理
關(guān)閉