国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 1864|回復: 0
打印 上一主題 下一主題

【教程5】瘋殼·ARM功能手機-串口實驗教程

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2022-8-9 11:01:47 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
關鍵詞: ARM , 功能手機 , 串口 , 實驗教程 , UART
ARM功能手機
——瘋殼·開發板系列
串口實驗教程





圖1



第一節串口硬件電路

串口通過USB口及手環下載調試線引出,連接MCU的P12與P13引腳,如下圖所示:



圖2



第二節 UART寄存器

2.1 UART介紹
    這個UART符合工業標準16550,并且可以和外圍設備串行通信。主設備(CPU)通過APB總線將數據寫進UART并且被轉換成串行格式并且發送到目標設備。串行數據也可以通過UART被接收存儲之后,主設備讀取接收的數據。
UART模塊不支持DMA,但是它有內部FIFOs,并且支持硬件流控制信號(RTS,CTS,DTR,DSR)。
UART模塊有16字節的發送和接收FIFO;支持硬件流控制(CTS/RTS);影子寄存器來減少軟件開銷并且有可編程的軟件復位;發送寄存器為空的中斷模式;IrDA 1.0 SIR模式支持低功耗模式;可編程的字節屬性、校驗位和停止位(1,1.5,2);可以斷開通信及檢測通信線是否斷開;中斷優先級的識別;可編程的串行通信波特率。
2.2 UART寄存器
UART相關的寄存器比較多,所以我們只介紹常用的寄存器,其它的可以參考官方數據手冊DA14580_DS_v3.1.pdf,位于目錄:..\WT開發板\硬件資料。
2.2.1 接收緩沖寄存器



圖3
15:8位:保留不使用;
7:0位:接收緩存寄存器。
2.2.2 中斷使能寄存器



圖4
15:8位:保留不使用;
7位:發送空中斷使能位;
6:4位:保留不使用;
3位:調制狀態中斷使能位;
2位:接收狀態中斷使能位;
1位:發送結束中斷使能位;
0位:數據接收完使能位。
2.2.3 中斷識別寄存器/FIFO控制寄存器


圖5
15:0位:寫則為FIFO控制寄存器,讀則為中斷識別寄存器。
2.2.4 通信線控制寄存器


圖6
15:8位:保留不使用;
7位:波特率使能位;
6位:停止控制位;
5位:保留不使用;
4位:奇偶校驗選擇位;
3位:校驗位;
2位:停止位;
1:0位:數據長度。
2.2.5 調制器控制寄存器




圖7
15:7位:保留不使用;
6位:紅外通信使能位;
5位:自動流控制使能位;
4位:回路位,用于測試;
3位:用戶指定輸出2;
2位:用戶指定輸出1;
1位:發送請求;
0位:保留不使用。
2.2.6 通信線狀態寄存器




圖8
15:8位:保留不使用;
7位:接收FIFO錯誤位;
6位:發送器空位;
5位:發送保持寄存器空位;
4位:異常停止中斷位;
3位:幀錯誤位;
2位:校驗錯誤位;
1位:溢出錯誤位;
0位:數據準備好位。
2.3 寄存器配置講解
#define CLK_PER_REG                 (* ( volatile uint16*)0x50000004)
#define UART_RBR_THR_DLL_REG        (* ( volatile uint16*)0x50001000)
#define UART_IER_DLH_REG            (* ( volatile uint16*)0x50001004)
#define UART_IIR_FCR_REG             (* ( volatile uint16*)0x50001008)
#define UART_LCR_REG                (* ( volatile uint16*)0x5000100C)
#define UART_MCR_REG               (* ( volatile uint16*)0x50001010)
#define UART_LSR_REG                (* ( volatile uint16*)0x50001014)
#define UART_MSR_REG               (* ( volatile uint16*)0x50001018)
#define UART_SCR_REG                (* ( volatile uint16*)0x5000101C)
啟動UART1模塊的時鐘CLK_PER_REG |= 0x0080;
串口初始化寄存器配置:
首先使能波特率配置UART_LCR_REG = 0X08;
配置波特率UART_IER_DLH_REG = 0; UART_RBR_THR_DLL_REG = 9;
8位數據,無校驗,1位停止位UART_LCR_REG = 0X03;
關閉紅外通信功能UART_MCR_REG = 0X00;
使能FIFO, UART_IIR_FCR_REG = 0X01;
關閉中斷UART_IER_DLH_REG = 0X00;
接收一個字節,等待接收完成while((UART_LSR_REG&0x01)==0);讀取接收數據rx_data = UART_RBR_THR_DLL_REG;
發送一個字節0x55,等待發送為空while((UART_LSR_REG&0x20)==0);填充發送數據UART_RBR_THR_DLL_REG = 0xaa;



第三節 UART實驗
實驗需要使用的模塊有:手機開發板底板,Jlink調試工具,USB轉串模塊、杜邦線、3.7V鋰電池或Mocro USB線。
使用USB轉串模塊連接手機藍牙串口,連接方式如下:
    (1)USB轉串模塊一端只需要使用杜邦線連接RXD、TXD、GND三個引腳,如下圖所示:


圖9
(2)手機主控底板一端需要使用杜邦線連接左側J7三個引腳,與USB轉串模塊的引腳一一對應(串口引腳交叉),分別為RXD-->TXD、TXD-->RXD、GND-->GND,如下圖所示:


圖10
使用JLINK通過杜邦線連接手機藍牙,連接方式如下:
(1)JLINK一端只需要使用杜邦線連接JLINK的SWC、SWD、GND三個引腳,如下圖所示:


圖11
(2)手機藍牙一端需要使用杜邦線連接上方右側的J3三個引腳,與JLINK的連接引腳一一對應,分別為SWC-->SWCLK、SWD-->SWDIO、GND-->GND,如下圖所示:


圖12
將JLINK插上電腦的USB接口,連接好之后給手機主控底板供電,詳細的介紹可以參考《如何上電》教程,路徑為:..\WT_Mobile\0.從這里開始\0.開機測試。
打開串口實驗的Keil工程uart.uvproj,位于目錄:..\WT_Mobile\1.初級教程\DA14580\2_初級_串口\projects\target_apps\peripheral_examples\uart\Keil_5,如下圖所示:


圖13
打開串口調試助手連接串口,波特率為115200。在KEIL中,編譯代碼,點擊DEBUG,然后點擊全速運行,就可以看到串口調試助手打印出的信息,發送什么就返回什么,例如發送“WT Mobile Test!”就會返回“WT Mobile Test!”,如下圖所示:




圖14


圖15




如需定制開發,請通過官網“瘋殼”網頁底部的“聯系我們”進行聯系

文件下載請點擊: 串口教程.pdf (1.43 MB)        

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲视频在线免费看| 一级毛毛片| 性的小视频在线观看免费| 污片在线看| 日本特黄的免费大片视频| 人人看人人鲁狠狠高清| 午夜免费福利视频| 亚洲欧洲久久| 台湾毛片| 午夜激情福利视频| 日韩免费高清视频网站| 日本操操操| 欧美精品黄页免费高清在线| 日韩免费一级a毛片在线播放一级| 色婷婷六月桃花综合影院 | 欧美成人精品久久精品| 亚洲视频在线观看视频| 青青草一区二区免费精品| 亚洲欧美人成综合在线最新| 一级黄一片| 亚洲视频在线观看网址| 亚洲精品国产综合久久一线| 亚洲一级片免费看| 亚洲日本aⅴ片在线观看香蕉| 天下第二社区在线视频| 日韩不卡在线| 欧美亚洲不卡| 天天毛片| 亚洲国产婷婷香蕉久久久久久| 日韩欧美精品在线观看| 天天色综合色| 亚洲福利视频一区二区三区| 午夜毛毛片| 人妖专区视频在线播放| 欧美成人性色| 日本在线观看中文字幕| 一级片特级片| 欧美日韩国产精品综合| 色综合第一页| 一级a性色生活片毛片| 日韩免费专区|