基本的 51 單片機(jī)有四個(gè)并行口,其中還包含了一個(gè)串行口。當(dāng)接口不夠用的時(shí)候,大家就會(huì)想到,使用什么外接芯片來擴(kuò)充。但是,各種教材、參考書、網(wǎng)絡(luò)文章,介紹擴(kuò)充并行口的花樣不少,擴(kuò)充串行口的方法
#include //包含頭文件,一般情況不需要改動(dòng),頭文件包含特殊功能寄存器的定義 /*------------------------------------------------ 函數(shù)聲明 --------------------------------
此例程設(shè)置了按鍵可以調(diào)整100-1000hz的不同頻率(100的倍數(shù))的方波,另外還加入了串口通信,可以通過串口發(fā)送來的數(shù)字來設(shè)置相對(duì)應(yīng)的頻率;#include #include"uart.h" sbit PWMOUT = P1^0; sbit led
;********************************************;Function:基于HT48R50A的RS232串口示例程序*;MICroProcessor:HT48R50A-1/28SKDIP-A*;Author:www.picavr.com*;Crystal:4MHz*;*************************
#include"reg51.h"#defineFOSC18432000L#defineBAUD115200#defineNONE_PARITY0//無校驗(yàn)位#defineODD_PARITY1//奇校驗(yàn)#defineEVEN_PARITY2//偶校驗(yàn)#defineMARK_PARITY3//標(biāo)記校驗(yàn)#defineSPACE_PARITY4//
本文介紹了以LPC2365為核心處理器、嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II下的多串口通信編程方法。對(duì)于固定長(zhǎng)度的短字節(jié)幀數(shù)據(jù),通過設(shè)置合適的字節(jié)觸發(fā)深度,一次中斷完成數(shù)據(jù)接收任務(wù);對(duì)于變長(zhǎng)的長(zhǎng)字節(jié)幀
隨著信息技術(shù)的發(fā)展,智能化、信息化、網(wǎng)絡(luò)化成為現(xiàn)代工業(yè)控制的發(fā)展潮流。20世紀(jì)80年代以來,開放的工業(yè)控制總線迅速發(fā)展,徹底改變了世界的技術(shù)面貌,在此基礎(chǔ)上通過網(wǎng)絡(luò)連接到分散控制和嵌入式設(shè)備
1 前 言 由于串口在電報(bào)通信、工控和數(shù)據(jù)采集等領(lǐng)域有著廣泛的應(yīng)用,絕大多數(shù)嵌入式處理器都內(nèi)置了通用異步收發(fā)器(UART)。UART數(shù)據(jù)傳輸主要通過中斷或DMA的方式實(shí)現(xiàn)。 中斷方式是在接收到數(shù)據(jù)
引言 數(shù)據(jù)采集系統(tǒng)中由于單片機(jī)側(cè)重于控制,數(shù)據(jù)處理能力較弱,對(duì)采集的數(shù)據(jù)進(jìn)行運(yùn)算處理比較繁瑣,如果通過串口與上位機(jī)通信,利用上位機(jī)強(qiáng)大的數(shù)據(jù)處理能力和友好的控制界面對(duì)數(shù)據(jù)進(jìn)行處理和顯示則
隨著集成電路技術(shù)的發(fā)展,F(xiàn)PGA和DSP以及ARM以其體積小、速度快、功耗低、設(shè)計(jì)靈活、利于系統(tǒng)集成、擴(kuò)展升級(jí)等優(yōu)點(diǎn),被廣泛地應(yīng)用于高速數(shù)字信號(hào)傳輸及數(shù)據(jù)處理,以DSP+FPGA+ARM的架構(gòu)組成滿足實(shí)時(shí)性要求的高速數(shù)字處
1 主從式多機(jī)通信 所謂主從式多機(jī)系統(tǒng),即在數(shù)個(gè)arm(或單片機(jī))中,有一個(gè)是主機(jī),其余的為從機(jī)。從機(jī)要服從主機(jī)的調(diào)度、支配,其拓?fù)浣Y(jié)構(gòu)如圖1所示。 主機(jī)信息可以發(fā)到各個(gè)從機(jī),從機(jī)發(fā)送的
通常微控制器通過串行接口與其它終端進(jìn)行通信時(shí),兩個(gè)終端需要通訊波特率一致才能達(dá)到準(zhǔn)確與可靠的通訊效果,串行波特率的自動(dòng)檢測(cè)(ABR)可以解決通信終端的波特率自動(dòng)匹配問題,從而實(shí)現(xiàn)微控制器與
工業(yè)控制中,各設(shè)備的信號(hào)采集和監(jiān)控只靠串口總線難以實(shí)現(xiàn)擴(kuò)展,要將現(xiàn)場(chǎng)控制網(wǎng)絡(luò)和信息網(wǎng)絡(luò)相連,就需要解決串口通信協(xié)議和因特網(wǎng)通信協(xié)議的轉(zhuǎn)換問題,即把原有設(shè)備轉(zhuǎn)換為
本程序是模擬串口硬件機(jī)制寫的,使用時(shí)可設(shè)一定時(shí)中斷,時(shí)間間隔為1/4波特率,每中斷一次調(diào)用一次接收函數(shù), 每中斷4次調(diào)用一次發(fā)送函數(shù),不過.對(duì)單片機(jī)來說時(shí)鐘并須要快.要知道9600的波特率的每個(gè)BIT
串行口是單片機(jī)與外界進(jìn)行信息交換的工具, 利用單片機(jī)串口實(shí)現(xiàn)輸入移位寄存器,只需用軟件置REN=1(同時(shí)RI=0),即開始接收。數(shù)據(jù)字節(jié)在移位時(shí)鐘脈沖的配合下,從低位至高位一位一位地接收下來并裝
前面的例子中,串口的收發(fā)采用中斷模式,雖然在一定程度上解放了CPU,但每個(gè)字節(jié)都要中斷一次,在115200波特率下,約8.7uS就要中斷一次,CPU仍然很累。直接存儲(chǔ)器訪問(DMA)方式可以進(jìn)一步解放CPU,本
//******************************************************************//@FileName: UART51.C//@Controller AT89S52//@Compiler Keil//@Hardware: 一個(gè)普通的I/O,一個(gè)定時(shí)器T0;和TXD//Descripti
上位機(jī)和下位機(jī)通信的問題,使用的協(xié)議rs485協(xié)議. 題目是用VC++讓上位機(jī)和下位機(jī)進(jìn)行通信. 接在電腦上的rs232口,使用了232和485的轉(zhuǎn)換器,發(fā)送相應(yīng)的數(shù)據(jù)格式,然后上位機(jī)接受相應(yīng)的格式。 原代碼如下: // TODO: Ad
上位機(jī)串口通信主要介紹通信串口的初始化和串口緩沖區(qū)數(shù)據(jù)的讀取,因?yàn)榇颂幹皇亲鳛橹噶顏碜x取,數(shù)據(jù)量小,所以緩沖區(qū)數(shù)據(jù)的讀取為有數(shù)據(jù)接收便觸發(fā)串口的數(shù)據(jù)接收事件。
本模塊的功能是驗(yàn)證實(shí)現(xiàn)和PC機(jī)進(jìn)行基本的串口通信的功能。需要在PC機(jī)上安裝一個(gè)串口調(diào)試工具來驗(yàn)證程序的功能。程序?qū)崿F(xiàn)了一個(gè)收發(fā)一幀10個(gè)bit(即無奇偶校驗(yàn)位)的串口控制器,10個(gè)bit是1位起始位,8個(gè)數(shù)據(jù)位,1個(gè)結(jié)