S3C44B0的端口組件及應(yīng)用
多功能GPIO的配置方法:
1、端口配置寄存器PCONA~PCONG決定A~G端口的功能
2、端口數(shù)據(jù)寄存器PDATA~PDATG端口A~G的數(shù)據(jù),可輸入輸出
3、上拉電阻寄存器PUPC~PUPG決定C~G端口是否內(nèi)部上拉
4、特殊上拉電阻寄存器
SPUPR決定數(shù)據(jù)總線是否上拉
S3C44B0的UART開發(fā)應(yīng)用
對于S3C44B0,已知MCLK=60MHz,閱讀程序回答問題:
ARM匯編語言如下,試說明完成的功能。
LDR R0,=rPCONA
LDR R1,=0x3FF
STR R1,[R0] ;A口功能2
LDR R0,=rPCONB
LDR R1,=0x7FF
STR R1,[R0] ;B口功能2
LDR R0,=rPCOND
MOV R1,=0x0055
STR R1,[R0] ;D口中GPD7~GPD4輸入,GPD3~GPD0輸出
LDR R0,=rPCONF
LDR R1,=0x120000
STR R1,[R0] ;GPF6,7為UART1RXD和TXD,其余GPF為輸出
LDR R0,=rPCONG
MOV R1,#0xFFFF
STR R1,[R0] ;F口為外部中斷
解答:具體功能見注釋!
S3C44B0的UART組件及開發(fā)應(yīng)用
常用UART寄存器
1、UART線路控制寄存器ULCON0和ULCON1
決定字符格式(數(shù)據(jù)位數(shù)、停止位、奇偶校驗(yàn)位,紅外和正常模式)
2、UART控制寄存器UCON0和UCON1
決定中斷類型、發(fā)送和接收觸發(fā)方式、接收和發(fā)送中斷允許等)
3、UART發(fā)送接收狀態(tài)寄存器UTRSTAT0和UTRSTAT1反映接收和發(fā)送狀態(tài)
4、 UART發(fā)送接收數(shù)據(jù)寄存器UTXH0和UTXH1保持發(fā)送和接收的數(shù)據(jù)
5、UART波特率發(fā)生器決定通信波特率
UBRDIVn =INT(MCLK/(波特率×16)+0.5)-1
S3C44B0的UART開發(fā)應(yīng)用
利用S3C44B0進(jìn)行串行通信,已知MCLK=60MHz,閱讀程序回答問題:
LDR R0,=rPCONE
ORR R1,R0,#0x28 00 10 10 00
STR R1,[R0];寫PCONE使GPE1GPE2為TXD0和RXD0用于串行通信功能
LDR R0,rUFCON0
MOV R1,#0
STR R1,[R0] ;UFCON0=0禁止FIFO
LDR R0,rULCON0
ORR R1,#0x23 ;00100011
STR R1,[R0] ;字符格式為:8位數(shù)據(jù),1位停止位,奇校驗(yàn)
LDR R0,=rUCON0
ORR R1,R0,#0xC1
STR R1,[R0] ;寫UART0控制寄存器使允許接收中斷正常接收發(fā)送
LDR R0,=rUBRDIV0
LDR R1,=325
STR R1,[R0] ;設(shè)定波特率為11520BPS
1、說明本程序完成的功能
2、串行通信波特率是多少?
3、對程序進(jìn)行注釋
解答:1、本程序段完成的是對UART0進(jìn)行初始化,使用GPE1和GPE2用于UART0的TXD0和RXD0進(jìn)行串行通信,通信字符格式為8位數(shù)據(jù),1位停止位,奇校驗(yàn),禁止FIFO,允許接收中斷,正常接收和發(fā)送。
2、串行通信波特率根據(jù)UBRDIV0=[MCLK/(波特率×16)-0.5]怪整數(shù)
所以:波特率=MCLK/((UBRDIV0+0.5)*16)=60000000/(325.5*16)=11520bps
3、注釋如上。
相關(guān)推薦:
2014年9月計(jì)算機(jī)等級考試報(bào)名時(shí)間預(yù)告
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |