色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          S3C2440的UART

          作者: 時(shí)間:2016-11-21 來(lái)源:網(wǎng)絡(luò) 收藏
          S3C2440 的通用異步收發(fā)器(UART)配有3個(gè)獨(dú)立異步串行I/O(SIO)端口

          每個(gè) UART 包含一個(gè)波特率發(fā)生器、發(fā)送器、接收器和一個(gè)控制單元

          本文引用地址:http://cafeforensic.com/article/201611/319199.htm

          UART 基本工作原理
          內(nèi)置波特率發(fā)生器,為串行數(shù)據(jù)的發(fā)送和接收提供時(shí)鐘,根據(jù)這個(gè)時(shí)鐘節(jié)拍,數(shù)據(jù)先寫到FIFO中然后在拷貝到發(fā)送移位器中,在移位發(fā)送到引腳TxDn, 期間,發(fā)送過來(lái)的數(shù)據(jù)通過引腳RxDn進(jìn)入移位器中然后拷貝到接收器的FIFO中

          UART寄存器(詳情見數(shù)據(jù)手冊(cè))
          ULCONn(3個(gè))
          UCONn(3個(gè))
          UFCONn(3個(gè))
          UMCONn(2個(gè))
          UTRSTATn(3個(gè))
          UERSTATn(3個(gè))
          UFSTATn(3個(gè))
          UMSTATn(2個(gè))
          UTXHn(3個(gè))
          URXHn(3個(gè))
          UBRDIVn(3個(gè))

          存儲(chǔ)在波特率分頻寄存器中的值(UBRDIVn)是用于決定如下的串行Tx/Rx時(shí)鐘率(波特率):
          UBRDIVn = (int)( UART時(shí)鐘 / ( 波特率 × 16) ) –1
          ( UART時(shí)鐘:PCLK,F(xiàn)CLK/n 或UEXTCLK )

          一個(gè)例子(啟動(dòng)代碼自己添加)

          1. #include"config.h"
          2. #definePCLK50000000
          3. voidUart0_Init(unsignedintbandrate)
          4. {
          5. rGPHCON&=~((3<<4)|(3<<6));
          6. rGPHCON|=(2<<4)|(2<<6);//GPH2--TXD[0];GPH3--RXD[0]
          7. rGPHUP=0x00;//使能上拉功能
          8. rULCON0|=0x03;//8位數(shù)據(jù),1位停止位
          9. rUCON0=0x05;
          10. rUBRDIV0=PCLK/bandrate/16-1;
          11. rURXH0=0;//清空UART0接收緩沖器
          12. }
          13. voidSendchar(unsignedcharc)
          14. {
          15. rUTXH0=c;//寫入U(xiǎn)ART0發(fā)送緩沖器
          16. while(!(rUTRSTAT0&(1<<2)));//等待字符發(fā)送完
          17. }
          18. unsignedcharGetchar(void)
          19. {
          20. unsignedcharc;
          21. while(!(rUTRSTAT0&(1<<0)));//等待接收字符
          22. c=rURXH0;//接收緩沖器的字符
          23. returnc;
          24. }
          25. intMain()
          26. {
          27. unsignedcharZ_char;
          28. Uart0_Init(115200);
          29. while(1)
          30. {
          31. Z_char=Getchar();
          32. Sendchar(Z_char);
          33. }
          34. return0;
          35. }





          關(guān)鍵詞: S3C2440UAR

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉