欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

atmega128a單片機程序設(shè)計談原理和重點以及如何解決串口接收數(shù)據(jù)錯位

這篇文章將為大家詳細講解有關(guān)atmega128a單片機程序設(shè)計談原理和重點以及如何解決串口接收數(shù)據(jù)錯位,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

我們提供的服務(wù)有:網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、東山ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的東山網(wǎng)站制作公司

atmega128a作為8位單片機中的精英,實在是低端中端產(chǎn)品研發(fā)的理想主控芯片。個人覺得它之所以適合這個級別的產(chǎn)品開發(fā)。是因為它的主頻只能在16M赫茲以內(nèi)。相對其他動不動就幾百兆赫茲的mcu產(chǎn)品來說,它實在不算是高端。對于8位單片機來說,它內(nèi)置128k的程序存儲空間。還有4k的ROM,4k的永久存儲數(shù)據(jù)的epprom,還具有各種串行開發(fā)接口。這些都是他的優(yōu)點。我們的軟件可以良好的運行在3大操作系統(tǒng)上,滿足您在不同系統(tǒng)下的相同需要.
下面我將結(jié)合我的項目來說明幾處用法和實驗現(xiàn)象,供大家借鑒。
本項目中使用了定時器定時發(fā)送數(shù)據(jù)最低一秒鐘發(fā)送一次。串口零與傳感器進行數(shù)據(jù)交換,并用液晶顯示接收到的傳感器數(shù)據(jù),也是一秒鐘采集一次。串口一用于定時發(fā)送數(shù)據(jù),發(fā)送頻率取決于定時器在這里是最低一秒鐘。項目初始化時初始化了定時器,串口兒零和串口一,然后開啟全局中斷。這些都是在初始化中完成的。串口進行數(shù)據(jù)接收時出現(xiàn)了一個奇怪的現(xiàn)象,這在我以前的項目中也經(jīng)常出現(xiàn)。在這里還是一樣。奇怪的現(xiàn)象是串口接收8個字節(jié)數(shù)據(jù),但是有時會發(fā)生數(shù)據(jù)錯位。例如發(fā)送0102030405060708,接收后變成了0801020304050607.是不是很奇怪呢?造成串口接收數(shù)據(jù)錯位的主要原因是發(fā)送數(shù)據(jù)的頻率過快,少于串口中斷程序處理的時間。

串口來不及處理完畢就又響應(yīng)了新的串口中斷。有的朋友可能會說我清空串口緩沖區(qū)的數(shù)組不就可以了嗎?但是你試試吧,這樣是不行的。通過實驗我得出的結(jié)論是,串口發(fā)送的每幀數(shù)據(jù)的每個字節(jié)兒都會產(chǎn)生一個中斷,而每個中斷產(chǎn)生之后都放入了單片機的串口接收緩沖區(qū)中,這個緩沖區(qū)不是udr寄存器。我從中看到的現(xiàn)象是,寄存器UDR讀取的是單片機的串口接收緩沖區(qū)的數(shù)據(jù)。這個串口接收緩沖區(qū)應(yīng)該是在單片機的內(nèi)部。數(shù)據(jù)發(fā)送時所有的數(shù)據(jù)首先進入了單片機的串口接收緩沖區(qū),然后從緩沖區(qū)中讀取數(shù)據(jù)到寄存器udr,這時我們在中斷程序中讀取寄存器udr0或者udr1就讀到了串口接收的數(shù)據(jù)。我們?nèi)绾文芊乐???shù)據(jù)接收錯位呢?那就是清空單片機內(nèi)部串口接收緩沖區(qū)的數(shù)據(jù)即可。如何做呢?很簡單。只需要將串口重新進行初始化即可,這樣單片機的串口緩沖區(qū)數(shù)據(jù)就會清空,也就是忽略了錯位的數(shù)據(jù)繼續(xù)接收。

對于定時器和串口的初始化。各種寄存器的值該如何設(shè)置?這里我推薦一個工具。iccavr.這個小工具設(shè)置CPU后設(shè)置晶振大小,就可以對定時器定時時間,分頻和串口波特率等進行寄存器設(shè)置。特別方便。

對于程序中沒有用到的中斷,切不可將中斷標(biāo)記置位寫1。我在串口中初始化時,將串口的發(fā)送中斷置一了。結(jié)果導(dǎo)致CPU復(fù)位。如果你無法檢測到CPU是否復(fù)位,這時你需要在你的開發(fā)板上設(shè)計一個led指示燈。當(dāng)程序初始化時,點亮指示燈。程序進入主循環(huán)運行時關(guān)閉指示燈。這樣,如果你在調(diào)試的時候發(fā)生CPU運行異常。就可以通過指示燈來判斷程序的運行狀態(tài)。

關(guān)于atmega128a單片機程序設(shè)計談原理和重點以及如何解決串口接收數(shù)據(jù)錯位就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

網(wǎng)站題目:atmega128a單片機程序設(shè)計談原理和重點以及如何解決串口接收數(shù)據(jù)錯位
分享路徑:http://aaarwkj.com/article46/godeeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、軟件開發(fā)搜索引擎優(yōu)化、企業(yè)網(wǎng)站制作、App設(shè)計、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設(shè)
日韩美女av在线播放| 99热精品在线免费观看| 背德人妻中文字幕无修| 亚洲视频在线的视频在| 亚洲精品国产自在现线| 岛国大片日韩在线观看| av天堂久久人妻精品加勒比| 韩国福利短片在线观看| 日韩在线观看视频有码| 日本写真视频一区二区三区| 91手机国产三级在线| 欧美日韩国产激情另类| 亚洲日本久久久午夜精品| 在线观看视频免费午夜| 日本韩国欧美在线一区| 午夜理论片在线观看有码| 成人精品超碰一区二区| 久久91亚洲精品中文字幕| 国产成人免费视频大全| 熟妇女人妻丰满少妇中文| 日本日本熟妇在线视频| 天堂8在线最新版av| 日韩欧美国产亚洲在线| 高清美女视频亚洲免费| 日本中文字幕一区二区视频 | 亚洲欧美一区二区色慰| 天堂8在线最新版av| 久久精人妻一区二区三区| 有码精品视频在线观看| 国产亚洲综合区成人国产| 国产成人精品免费视频大| 久久热这里只有精品网站| 亚洲品质一区二区三区| 美女午夜精品国产福利| 国欧美一区二区三区| 日韩中文字幕精品一区| 欧美日韩国产精品一区二区三区| 日本欧美国产污黄在线观看| 熟女精品国产一区二区三区| 亚洲熟乱熟女一区二区| 精品亚洲一区二区三区四|