日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

歷史上的今天

今天是:2024年11月07日(星期四)

正在發(fā)生

2019年11月07日 | 對于51單片機(jī)和arm9開發(fā)板串口通信問題的分析

發(fā)布者:EnchantedDream 來源: 51hei關(guān)鍵字:51單片機(jī)  arm9  串口通信 手機(jī)看文章 掃描二維碼
隨時隨地手機(jī)看文章

距離畢設(shè)的時間還剩20天左右,這幾天一直忙著做畢設(shè),今天終于將51單片機(jī)和串口通信的問題解決了,抽出點(diǎn)時間,寫一下遇到的問題。不然,過幾天又忘了,記錄下來也給后續(xù)學(xué)習(xí)的技術(shù)宅能提供一點(diǎn)幫助。

我的串口實(shí)驗(yàn)是:ARM9 控制板通過串口發(fā)送一個指令,51接受到這個指令后,根據(jù)這個指令控制小車的運(yùn)行方式。(為什么不用arm9直接控制小車而采用51控制小車呢?

答:我的想法是電機(jī)驅(qū)動這一塊直接交付給下一級控制器,程序簡單,容易實(shí)現(xiàn),況且通過串口,只需解析一個指令就可以實(shí)現(xiàn))。

1、做此類串口通信一定要記得共地,我采用的方法是直接用5v直流輸出引出了兩個接口,分別為兩個控制板供電,這樣的話串口通訊的電壓沒有一點(diǎn)問題。

2、做串口通訊的一定要搞清楚,你的串口到底那幾個沒被使用,你可以根據(jù)廠家提供的電路原理圖查看。選擇好你做串口實(shí)驗(yàn)的串口號。(記得有些串口驅(qū)動移植的時候沒有設(shè)置為通用串口,你要搞清楚額。)。如果你是在別人移植好的,驅(qū)動上做串口應(yīng)用程序的開發(fā),你要搞清楚,別人的串口名稱。因?yàn)闀r間緊張,串口驅(qū)動我沒有自己移植,我是在廠家移植好的驅(qū)動上進(jìn)行應(yīng)用程序的開發(fā),所以我就可以在 Linux  根目錄下的/dev/查看串口名稱。


我的串口名稱有/dev/s3c2410_serialX(X=0,1,2).. 因此,編寫應(yīng)用程序的時候一定要注意fd=open(“/dev/此處的串口名稱”,XXXXX);

3、我的51板中本來設(shè)置好的運(yùn)行協(xié)議是十六進(jìn)制的數(shù),后來查看說write函數(shù)只能寫字符,我只好用字符常量代替原來的十六進(jìn)制協(xié)議類。調(diào)整后的51板程序思路是:
串口接收到字符數(shù)據(jù)  f=前進(jìn),b=后退,l=左轉(zhuǎn),r=右轉(zhuǎn),s=停止。51板的程序弄好以后,我只要通過arm板給51板發(fā)送這些字符,51板就能控制小車的運(yùn)行方式。

4、Arm linux 串口應(yīng)用程序的開發(fā),跟windows的差不多,基本都是調(diào)用api,然后編寫,不過相比較windows而言,linux更容易理解一個操作系統(tǒng),因?yàn)橹挥挟?dāng)你把bootloader ,linux kernel,文件系統(tǒng),驅(qū)動這些都移植過一遍,你就很容易理解一個操作系統(tǒng)的原理,也就不難理解調(diào)用api 是則么回事類。 串口應(yīng)用程序的開發(fā)就是對串口結(jié)構(gòu)體進(jìn)行設(shè)置。注意串口設(shè)置的時候波特率一定要和你51板設(shè)置的波特率一致奧,否則不能通信。然后通過讀寫函數(shù)對串口進(jìn)行控制。向串口發(fā)送指令是通過Write(fd,buf,sizeof(buf)),函數(shù)實(shí)現(xiàn)的,我就寫了一個字符f 然后就可以實(shí)現(xiàn)小車的前進(jìn)了。

5、讓我糾結(jié)了好長時間的問題。程序?qū)懞靡院螅欢ㄒ胊rm-linux-gcc交叉編譯指令,不能用gcc指令編譯,這個編譯的程序只能在pc的linux上跑,不然將編譯好的可執(zhí)行程序下載到開發(fā)板上是不能運(yùn)行。另外如果你用arm-linux-gcc編譯后生成的可執(zhí)行文件是a.out文件這個在arm板上也不能運(yùn)行。必須要用arm-linux-gcc main.c -o myserial這個指令進(jìn)行編譯,生成的myserial可執(zhí)行程序才能在arm板上運(yùn)行。程序下載到開發(fā)板以后,一定要加上權(quán)限 chmod  777  myserial .  然后執(zhí)行 ./myserial  ,你就可以發(fā)現(xiàn)你的小車可以前進(jìn)了。

關(guān)鍵字:51單片機(jī)  arm9  串口通信 引用地址:對于51單片機(jī)和arm9開發(fā)板串口通信問題的分析

上一篇:2440裸機(jī)編程之十二 GPS
下一篇:ARM9學(xué)習(xí)4-S3C2410的啟動代碼分析-For ADSv1.2

推薦閱讀

近年來,隨著工業(yè)機(jī)器人的廣泛應(yīng)用,工業(yè)機(jī)器人及其配套產(chǎn)品的結(jié)構(gòu)設(shè)計也日趨精細(xì)成熟。而工業(yè)機(jī)器人底座結(jié)構(gòu)形式在結(jié)構(gòu)強(qiáng)度方面的區(qū)別也顯得尤為重要,為機(jī)器人底座的批量性生產(chǎn)提供了結(jié)構(gòu)選型方面的參考。機(jī)器人支撐座的功能與結(jié)構(gòu)形式機(jī)器人支撐座的主要功能是支撐與固定機(jī)器人,上端與機(jī)器人本體基座相連結(jié),下端固定到地面或機(jī)架上,使機(jī)器人的工作空...
TIM3介紹TIM3主功能功能介紹定時器基本單元(功能圖)計數(shù)器模式向上計數(shù)模式計數(shù)器從0遞增到auto-reload value,然后復(fù)位到0重新遞增, 同時產(chǎn)生一個overflow event。向下計數(shù)模式計數(shù)器從auto-reload value遞減到0,然后復(fù)位到auto-reload value重新遞減, 同時產(chǎn)生一個underflow event。中心對齊模式計數(shù)器從0遞增到auto-reload value-1,此時產(chǎn)...
本章的內(nèi)容分兩部分,第一是AD的單通道轉(zhuǎn)換,第二是AD的多通道轉(zhuǎn)換。首先先將單通道轉(zhuǎn)換。STM32中自帶的AD最大的轉(zhuǎn)換頻率是14MHZ,共有16個轉(zhuǎn)換通道,每個轉(zhuǎn)ADC123_IN10表明PC0管腳可以作為AD1,AD2,AD3的第10通道。下面我們將PC0配置成AD1的通道10為例進(jìn)行講解。3.1首先我們應(yīng)將PC0設(shè)置成模擬輸入:#include "adc.h"/*為何定義ADC1_DR_Address 為((u32...
擺脫芯片供應(yīng)短缺問題 雙芯片代工策略見效 11月4日,高通股價飆漲逾12%,相較同業(yè),高通在面對芯片更顯得心應(yīng)手,并看好明年業(yè)績將持續(xù)成長。 高通執(zhí)行長 Crisano Amon 于電話會議上表示,預(yù)計12月底供應(yīng)問題將明顯好轉(zhuǎn),明年下半年將有足夠的供應(yīng)滿足需求,預(yù)期 2022財年EPS有望年增20%。 Lily點(diǎn)評:芯片短缺一直影響5G手機(jī)的出貨量。高通作為全...

史海拾趣

小廣播
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved