原创 串行異步通信-UART

串行通信可以分爲兩種類型:同步通信、異步通信。   1.異步通信的特點及信息幀格式:     以起止式異步協議爲例,下圖顯示的是起止式一幀數據的格式: 起止式異步通信的特點是:一個字符一個字符地傳輸,每個字符一位一位地傳輸,

原创 串口通訊基礎及S3C2410 UART控制器(1)

數據通信的基本方式可分爲並行通信與串行通信兩種: 並行通信:是指利用多條數據傳輸線將一個資料的各位同時傳送。它的特點是傳輸速度快,適用於短距離通信,但要求通訊速率較高的應用場合。 串行通信:是指利用一條傳輸線將資料一位位地順序傳送。特

原创 關於WrUTXH0的問題

1.RdURXH0(),WrUTXH0(),在寄存器定義裏面,如下: #define WrUTXH0(ch) (*(volatile unsigned char *)0x50000023)=(unsigned char)(ch) #de

原创 S3C2440之UART操作(FIFO中斷模式)

關於串口的知識   3個獨立的串口,每一個都可以利用DMA 和中斷方式操作。每個包含2個64字節FIFO,一個接,一個發。   非FIFO模式相當於FIFO模式的一個寄存器緩衝模式。   每一個UART有7種狀態,overrun錯誤,

原创 高效FIFO串口雙機通信在ARM7上的實現

高效FIFO串口雙機通信在ARM7上的實現 S3C44B0X(時鐘頻率爲60 MHz)的UART單元提供2個獨立的異步串行I/O口,每個通信口均可工作於中斷或DMA模式。即UART能產生內部中斷請求或DMA請求,在CPU和串行I/O口

原创 fcntl函數說明

(1)fcntl函數說明 前面的這5個基本函數實現了文件的打開、讀寫等基本操作,這一節將討論的是,在文 件已經共享的情況下如何操作,也就是當多個用戶共同使用、操作一個文件的情況,這時,Linux 通常採用的方法是給文件上鎖,來避免共享的

原创 C語言中volatile關鍵字的作用

一.前言 1.編譯器優化介紹: 由於內存訪問速度遠不及CPU處理速度,爲提高機器整體性能,在硬件上引入硬件高速緩存Cache,加速對內存的訪問。另外在現代CPU中指令的執行並不一定嚴格按照順序執行,沒有相關性的指令可以亂序執行,以充分

原创 詳解SPI中的極性CPOL和相位CPHA

詳解SPI中的極性CPOL和相位CPHA            SPI由於接口相對簡單(只需要4根線),用途算是比較廣泛,主要應用在 EEPROM,FLASH,實時時鐘,AD轉換器,還有數字信號處理器和數字信號解碼器之間。即一個SP

原创 串口通訊基礎及S3C2410 UART控制器(2)

自動流控模式 S3C2410的UART0和UART1都可以通過各自的nRTS和nCTS信號來實現自動流控。 在自動流控(AFC)模式下nRTS取決於接收端的狀態,而nCTS控制了發送斷的操作。具體地說:只有當nCTS有效時(表明接收方

原创 S3C2440的SPI控制器

S3C2440包含有兩個串行外圍設備接口(SPI口),每個SPI口都有兩個分別用於發送和接收的8位移位寄存器,在一次SPI通信當中數據被同步發送(串行移出)和接收(串行移入)。8位串行數據的速率由相關的控制寄存器的內容決定。如果只想發

原创 UART驅動過程

URAT工作流程: 1.配置發送和接收口線信息來實現訪問方式   具體使用IO的端口及讀寫方式即配置GPIOx的PC0 PC1 PC2寄存器 2.開啓UART_CR中的RUN位打開波特率發生器使UART激活 3.配置隊列機制這個機制是接

原创 典型的SPI控制器的結構

典型的SPI控制器的結構          一個典型的SPI控制器的結構,主要又波特率發生器、主控邏輯、收發緩衝、控制部分等幾大部分組成。如下圖所示: