freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

armlpc2103實(shí)驗(yàn)指導(dǎo)書(shū)(編輯修改稿)

2025-09-12 23:12 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 ect】【Debug】,啟動(dòng)AXD進(jìn)行JTAG仿真調(diào)試。(8)可以全速運(yùn)行程序,采用中斷方式,通過(guò)UART0接收上位機(jī)發(fā)送的字符串,如“Hello LPC2103!”,然后送回上位機(jī)超級(jí)終端數(shù)據(jù)接收窗口進(jìn)行顯示。需要注意的是必須連續(xù)發(fā)送8個(gè)字節(jié)數(shù)據(jù)。 UART實(shí)驗(yàn)運(yùn)行結(jié)果6.實(shí)驗(yàn)參考程序程序清單4 UART實(shí)驗(yàn)參考程序/****************************************************************************************/include define UART_BPS 115200 /* 串口通信波特率 */volatile uint8 uiGRcvNew。 /* 串口接收新數(shù)據(jù)的標(biāo)志 */uint8 uiGRcvBuf[30] = {0}。 /* 串口接收數(shù)據(jù)緩沖區(qū) */uint32 uiGNum。 /* 串口接收數(shù)據(jù)的個(gè)數(shù) *//******************************************************************************************* 函數(shù)名稱(chēng): DelayNS** 函數(shù)功能: 延時(shí)函數(shù)** 入口參數(shù): uiDly 值越大,延時(shí)時(shí)間越長(zhǎng)** 出口參數(shù): 無(wú)** 返回值: 無(wú)*****************************************************************************************/void DelayNS (uint32 uiDly){ uint32 i。 for (。 uiDly 0。 uiDly){ for(i = 0。 i 50000。 i++)。 }}/******************************************************************************************* 函數(shù)名稱(chēng): UART0_IRQ** 函數(shù)功能: 串口中斷服務(wù)函數(shù)** 入口參數(shù): 無(wú)** 出口參數(shù): 無(wú)** 返回值: 無(wú)*****************************************************************************************/void __irq UART0_IRQ (void){ uiGNum = 0。 while ((U0IIR amp。 0x01) == 0){ /* 判斷是否有中斷掛起 */ switch (U0IIR amp。 0x0E){ /* 判斷中斷標(biāo)志 */ case 0x04: /* 接收數(shù)據(jù)中斷 */ uiGRcvNew = 1。 /* 置接收新數(shù)據(jù)標(biāo)志 */ for (uiGNum = 0。 uiGNum 8。 uiGNum++){ /* 連續(xù)接收8個(gè)字節(jié) */ uiGRcvBuf[uiGNum] = U0RBR。 } break。 case 0x0C: /* 字符超時(shí)中斷 */ uiGRcvNew = 1。 while ((U0LSR amp。 0x01) == 0x01){ /* 判斷數(shù)據(jù)是否接收完畢 */ uiGRcvBuf[uiGNum] = U0RBR。 uiGNum++。 } break。 default: break。 } } VICVectAddr = 0x00。 }/******************************************************************************************* 函數(shù)名稱(chēng): UARTInit** 函數(shù)功能: 串口初始化,設(shè)置為8位數(shù)據(jù)位,1位停止位,無(wú)奇偶校驗(yàn),波特率為115200** 入口參數(shù): uiDly 值越大,延時(shí)時(shí)間越長(zhǎng)** 出口參數(shù): 無(wú)** 返回值: 無(wú)*****************************************************************************************/void UARTInit (void){ uint16 uiFdiv。 U0LCR = 0x83。 /* 允許設(shè)置波特率 */ uiFdiv = (Fpclk / 16) / UART_BPS。 /* 設(shè)置波特率 */ U0DLM = uiFdiv / 256。 U0DLL = uiFdiv % 256。 U0LCR = 0x03。 /* 鎖定波特率 */}/******************************************************************************************* 函數(shù)名稱(chēng): UART0SendByte** 函數(shù)功能: 向串口發(fā)送子節(jié)數(shù)據(jù),并等待數(shù)據(jù)發(fā)送完成,使用查詢(xún)方式** 入口參數(shù): uiDat 要發(fā)送的數(shù)據(jù)** 出口參數(shù): 無(wú)** 返回值: 無(wú)*****************************************************************************************/void UART0SendByte (uint8 uiDat){ U0THR = uiDat。 /* 寫(xiě)入數(shù)據(jù) */ while ((U0LSR amp。 0x20) == 0)。 /* 等待數(shù)據(jù)發(fā)送完畢 */}/******************************************************************************************* 函數(shù)名稱(chēng): UART0SendStr** 函數(shù)功能: 向串口發(fā)送字符串** 入口參數(shù): uiStr 要發(fā)送的字符串指針** uiNum 要發(fā)送的數(shù)據(jù)個(gè)數(shù)** 出口參數(shù): 無(wú)** 返回值: 無(wú)*****************************************************************************************/void UART0SendStr(uint8 const *uiStr, uint32 uiNum){ uint32 i。 for (i = 0。 i uiNum。 i++){ /* 發(fā)送指定個(gè)字節(jié)數(shù)據(jù) */ UART0SendByte (*uiStr++)。 } }/******************************************************************************************* 函數(shù)名稱(chēng): main** 函數(shù)功能: 跳線JP6短接,打開(kāi)串口調(diào)試軟件,串口0中斷方式通信** 入口參數(shù): 無(wú)** 出口參數(shù): 無(wú)** 返回值: 無(wú)*********************************************************************************************************/int main (void){ PINSEL0 = PINSEL0 amp。 (~0x0F)。 PINSEL0 = PINSEL0 | 0x05。 /* 設(shè)置I/O連接到UART */ uiGRcvNew = 0。 UARTInit ()。 /* 串口初始化 */ U0FCR = 0x81。 /* 使能FIFO,設(shè)置8個(gè)字節(jié)觸發(fā)點(diǎn) */ U0IER = 0x01。 /* 使能接收中斷 */ IRQEnable ()。 VICIntSelect = 0x00000000。 /* 設(shè)置所有中斷為向量中斷 */ VICVectCntl0 = 0x20 | 0x06。 /* 設(shè)置串口中斷為最高優(yōu)先級(jí) */ VICVectAddr0 = (uint32)UART0_IRQ。 /* 設(shè)置向量地址 */ VICIntEnable = 1 0x06。 /* 使能串口中斷 */ while (1){ if (uiGRcvNew == 1){ /* 判斷是否有新數(shù)據(jù) */ uiGRcvNew = 0。 /* 清除標(biāo)志 */ UART0SendStr (uiGRcvBuf, uiGNum)。 /* 向串口發(fā)送數(shù)據(jù) */ } } return 0。}/****************************************************************************************/7.作業(yè)UART中很多寄存器的地址時(shí)完全一致的,請(qǐng)寫(xiě)出相關(guān)的寄存器,那么它們是同一物理寄存器嗎?程序代碼中的“while((U0LSRamp。0x20)==0)”跟“while((U0LSRamp。0x40)==0)”,有什么區(qū)別,程序運(yùn)行的結(jié)果是否相同?本程序中用到了接收中斷和超時(shí)中斷,如果用戶發(fā)送字節(jié)數(shù)發(fā)生變化,需要在哪里做修改?(GuiDataBuf[]數(shù)據(jù)緩沖區(qū))為什么必須連續(xù)發(fā)送8字節(jié)數(shù)據(jù)?(注意硬件FIFO接收方式)5
點(diǎn)擊復(fù)制文檔內(nèi)容
語(yǔ)文相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1