|
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
44B0X的UART的問題 |
作者:zky2003 欄目:ARM技術(shù) |
自己做的44B0X的板子,UART怎么就是不工作。望大蝦指點(diǎn)。在Port_Init()里 rPDATE=0x1ff; rPCONE=0x25428; UART_Init() void Uart_Init(int 0,57600) { int i; if(mclk==0) mclk=MCLK; rUFCON0=0x0; rUFCON1=0x0; rUMCON0=0x0; rUMCON1=0x0; //UART0 rULCON0=0x3; //Normal,No parity,1 stop,8 bit rUCON0=0x245; //rx=edge,tx=level,disable timeout int.,enable rx error int.,normal,interrupt or polling rUBRDIV0=( (int)(mclk/16./baud + 0.5) -1 ); } void Uart_Printf(CHAR *fmt,...) { va_list ap; CHAR string[256]; va_start(ap,fmt); vsprintf(string,fmt,ap); Uart_SendString(string); va_end(ap); } void Uart_SendString(CHAR *pt) { while(*pt) Uart_SendByte(*pt++); } void Uart_SendByte(int data) { if(whichUart==0) { if(data=='\n') { while(!(rUTRSTAT0 & 0x2)); Delay(10); //because the slow response of hyper_terminal WrUTXH0('\r'); } while(!(rUTRSTAT0 & 0x2)); //Wait until THR is empty. Delay(10); WrUTXH0(data); } else { if(data=='\n') { while(!(rUTRSTAT1 & 0x2)); Delay(10); //because the slow response of hyper_terminal rUTXH1='\r'; } while(!(rUTRSTAT1 & 0x2)); //Wait until THR is empty. Delay(10); rUTXH1=data; } } 都是網(wǎng)絡(luò)上的UART的例子,可是在我的板子上就是不工作,真是急煞人了。 望兄弟們不惜筆墨,多指點(diǎn)阿,先謝過了 |
2樓: | >>參與討論 |
作者: zky2003 于 2006/8/14 16:58:00 發(fā)布:
GPIO工作時(shí)正常的,板子是work的 當(dāng)UART設(shè)置成GPIO的時(shí)候工作是正常的,自己先頂一個(gè) |
3樓: | >>參與討論 |
作者: jy6715 于 2006/8/14 17:11:00 發(fā)布:
你板子上的晶體是多少?波特率設(shè)置對(duì)不對(duì)? |
4樓: | >>參與討論 |
作者: cimcenter 于 2006/8/14 18:28:00 發(fā)布:
dd 程序看上去沒什么問題。 先看mclk對(duì)不對(duì),再看寄存器地址對(duì)不對(duì) |
5樓: | >>參與討論 |
作者: zky2003 于 2006/8/15 11:00:00 發(fā)布:
晶振是12.288M .波特率57600 感謝兩位老兄的關(guān)注阿! 我用jtag調(diào)試的時(shí)候,發(fā)現(xiàn)數(shù)據(jù)都發(fā)出去了(跟蹤程序的時(shí)候,寄存器都寫正確了),但是就是在TXD的pin上沒有輸出來(lái) |
6樓: | >>參與討論 |
作者: 阿南 于 2006/8/15 18:01:00 發(fā)布:
換個(gè)12MHZ晶振,下一個(gè)公版的44Bmon運(yùn)行,看看是否是硬件問題 |
7樓: | >>參與討論 |
作者: zky2003 于 2006/8/16 17:35:00 發(fā)布:
問題找到啦,謝謝各位仁兄 發(fā)現(xiàn)竟然是一個(gè)MAX3232電路中的電容沒有焊好,導(dǎo)致數(shù)據(jù)發(fā)送不成功,還是用邏輯分析儀看到ARM發(fā)出的數(shù)據(jù)才開始找232電路的問題,謝謝各位老兄的幫忙 |
|
|
免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 www.udpf.com.cn 浙ICP證030469號(hào) |