版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第5章串行通信接口SCI1嵌入式系統--使用HCS12微控制器的設計與應用本章目錄5.1異步串行通信的基礎知識5.2電平轉換電路與SCI通用編程原理5.3DG128SCI模塊寄存器5.4串行口初始化與收發(fā)編程的基本方法5.5串行通信通用函數與測試實例5.6有關串行通信編程的進一步討論
2嵌入式系統--使用HCS12微控制器的設計與應用5.1異步串行通信的基礎知識1.異步串行通信的格式(NRZ)5.1.1基本概念2.串行通信的波特率定義:每秒內傳送的位數。單位:b/s或bps常用:1200bps、4800bps、9600bps……3嵌入式系統--使用HCS12微控制器的設計與應用5.1異步串行通信的基礎知識5.1.1基本概念3.奇偶校驗奇校驗:校驗位為0或1,使得1的數目是奇數偶校驗:校驗位為0或1,使得1的數目是偶數4.串行通信的傳輸方式單工:1根數據線全雙工:2根數據線半雙工:1根數據線4嵌入式系統--使用HCS12微控制器的設計與應用5.2電平轉換電路與SCI通用編程原理5.2.1SCI的外圍硬件電路
電平轉換芯片MAX2326嵌入式系統--使用HCS12微控制器的設計與應用5.2電平轉換電路與SCI通用編程原理5.2.2SCI的基本編程原理
SCI的主要功能是:接收時,把外部的單線輸入的數據變成一個字節(jié)的并行數據送入MCU內部;發(fā)送時,把需要發(fā)送的一個字節(jié)的并行數據轉換為單線輸出。7嵌入式系統--使用HCS12微控制器的設計與應用5.3DG128SCI模塊寄存器寄存器高8位(SCI0BDH、SCI1BDH)數據位D7D6D5D4D3D2D1D0定義xxxSBR12SBR11SBR10SBR9SBR8復位000000005.3.1SCI波特率寄存器
寄存器低8位(SCI0BDL、SCI1BDL)數據位D7D6D5D4D3D2D1D0定義SBR7SBR6SBR5SBR4SBR3SBR2SBR1SBR0復位000001008嵌入式系統--使用HCS12微控制器的設計與應用5.3DG128SCI模塊寄存器5.3.1SCI波特率寄存器
根據波特率設置寄存器的公式:BR=fBUS/(16×Bt)舉例:總線頻率fBUS=19.6608MHz,定義波特率Bt=9600(針對SCI0) SCI0BDL=0x80;//須先給低8位賦值 SCI0BDH=0x00;//再給高5位賦值9嵌入式系統--使用HCS12微控制器的設計與應用5.3DG128SCI模塊寄存器縮寫:SCI0CR1、SCI1CR1位定義:5.3.2SCI控制寄存器1
數據位D7D6D5D4D3D2D1D0定義LOOPSSCISWAIRSRCMWAKEILTPEPT復位000000003.舉例:設置允許SCI、正常碼輸出、8位數據、無校驗
SCI0CR1=Ox00;10嵌入式系統--使用HCS12微控制器的設計與應用5.3DG128SCI模塊寄存器縮寫:SCI0CR2、SCI1CR2位定義:5.3.3SCI控制寄存器2
數據位D7D6D5D4D3D2D1D0定義TIETCIERIEILIETERERWUSBK復位000000003.舉例:設置允許發(fā)送、允許接收,查詢方式收發(fā)
SCI0CR2=0x0C;11嵌入式系統--使用HCS12微控制器的設計與應用5.3DG128SCI模塊寄存器縮寫:SCI0SR1、SCI1SR1位定義:只讀5.3.4SCI狀態(tài)寄存器1
數據位D7D6D5D4D3D2D1D0定義TDRETCRDRFIDLEORNFFEPF復位110000003.常用:
D7=1:可以發(fā)送數據;D7=0:不可以發(fā)送數據,需等待D5=1:可以取出數據;D5=0:不可以取出數據,需等待12嵌入式系統--使用HCS12微控制器的設計與應用5.3DG128SCI模塊寄存器縮寫:SCI0SR2、SCI1SR2位定義:只讀5.3.5SCI狀態(tài)寄存器2
數據位D7D6D5D4D3D2D1D0定義----------BK13TXDIRRAF復位000000003.常用:
D0=1:正在接收數據;13嵌入式系統--使用HCS12微控制器的設計與應用5.3DG128SCI模塊寄存器縮寫:SCI0DRH、SCI0DRL、SCI1DRH、SCI1DRL位定義:數據位D7D6D5D4D3D2D1D0讀操作R8000000寫操作T8復位000000005.3.6SCI數據寄存器
數據位D7D6D5D4D3D2D1D0讀操作R7R6R5R4R3R2R1R0寫操作T7T6T5T4T3T2T1T0復位00000000DRH:DRL:14嵌入式系統--使用HCS12微控制器的設計與應用5.4串行口初始化與收發(fā)編程的基本方法5.4.1SCI初始化
設置SCI波特率寄存器設置SCI控制寄存器1設置SCI控制寄存器215嵌入式系統--使用HCS12微控制器的設計與應用5.4串行口初始化與收發(fā)編程的基本方法5.4.2發(fā)送一個數據與接收一個數據
發(fā)送數據可以發(fā)送數據嗎?是否接收數據可以接收數據嗎?是否16嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.1串行通信子函數
SCI.h:串行通信頭文件串行通信寄存器及標志位定義串行通信相關函數聲明SCIInit.c:串行口SCI0初始化函數
voidSCIInit(void)
SCI.c:串行發(fā)送與接收通用子函數voidSCISend1(INT8Uo)voidSCISendN(INT8Un,INT8Uch[])INT8USCIRe1(INT8U*p)INT8USCIReN(INT8Un,INT8Uch[])17嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.2查詢方式收發(fā)測試工程
1.查詢方式收發(fā)測試工程主函數文件main.c1.禁止總中斷2.芯片初始化3.SCI模塊初始化等待從PC機接收一個數據向PC機發(fā)送一個數據18嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.2查詢方式收發(fā)測試工程
2.查詢方式收發(fā)測試工程MT環(huán)境的工程結構19嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.2查詢方式收發(fā)測試工程
3.查詢方式收發(fā)測試工程CW環(huán)境的工程結構20嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.2查詢方式收發(fā)測試工程
4.中斷方式測試工程輔助工具21嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.2查詢方式收發(fā)測試工程
5.中斷方式HCS12C語言主程序1.禁止總中斷2.芯片初始化3.SCI模塊初始化4.開放SCI0接收中斷5.開放總中斷空語句22嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.2查詢方式收發(fā)測試工程
6.串行中斷子函數聲明(isr.h)#ifndefISR_H//避免重復定義#defineISR_HvoidISR_Receive(void);//接收中斷函數聲明void__attribute__((interrupt))ISR_Empty(void);void_start(void);//復位函數(StartCode.s中定義,特殊)//芯片開關總中斷的宏定義#defineENABLE_INTERRUPTS__asm__("cli")//開中斷#defineDISABLE_INTERRUPTS__asm__("sei")//關中斷//開關各模塊中斷的宏定義//開放或禁止SCI0的接收中斷的宏定義#defineEnableSCIReIntSCI0CR2|=0x20//開放SCI0接收中斷#defineDisableSCIReIntSCI0CR2&=0xDF//禁止SCI0接收中斷#endif
23嵌入式系統--使用HCS12微控制器的設計與應用5.5串行通信通用函數與測試實例5.5.2查詢方式收發(fā)測試工程
7.串行中斷函數(isr.c)//ISR_Receive:SCI0接收中斷函數void__attribute__((interrupt))ISR_Receive(void){INT8Ui;INT8USerialBuff[1];//存放接收數據的數組
DISABLE_INTERRUPTS;//關總中斷
i=SCIReN(1,SerialBuff);//等待接收1個數據
if(i==0)SCISendN(1,SerialBuff);//發(fā)送接到的數據
ENABLE_INTERRUPTS;//開總中斷}//ISR
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度航空航天測繪技術應用合同4篇
- 二零二五年度房屋征收拆遷與社區(qū)重建承包合同2篇
- 二零二五年度網絡安全風險評估與防護合同補充協議3篇
- 二零二五年度高科技產品進出口代理合同范本4篇
- 音樂游戲化課程設計
- 2025年茶葉茶苗種植與農產品質量安全檢測合同4篇
- 2025年原罪風險保險合同
- 隧道工程課程設計匯報
- 2025年度煤炭深加工產品研發(fā)與市場推廣合作協議4篇
- 二零二四企業(yè)銷售合同智能預警與風險提示協議3篇
- ICU常見藥物課件
- CNAS實驗室評審不符合項整改報告
- 農民工考勤表(模板)
- 承臺混凝土施工技術交底
- 臥床患者更換床單-軸線翻身
- 計量基礎知識培訓教材201309
- 中考英語 短文填詞、選詞填空練習
- 一汽集團及各合資公司組織架構
- 阿特拉斯基本擰緊技術ppt課件
- 初一至初三數學全部知識點
- 新課程理念下的班主任工作藝術
評論
0/150
提交評論