S5PV210 一些模块编程常用寄存器

1.PLL和系统时钟

(A.M.E.V)PLL(M.D.P) 。 MUX  。 DIV

1.设置时钟源  CLK_SRC0
2.设置升平时间   (A.P.M.V)PLL_LOCK
3.设置(A.P.M.V)PLL  APLL_CON0
4.设置分频器          CLK_DIV0
5.设置时钟源  CLK_SRC0




2.PWM(脉冲宽度调制)频率调制
1.设置输出引脚   GPD0CON
2.设置输出频率   TCFG0,TCFG1
3.设置输出脉冲周期和占空比       TCNTB0,TCMPB0
4.PWM控制寄存器   TCON




3.串口UART
1.UART支持3种查询模式(Polling,interrupt,DMA)
2.FIFO(开中断时,缓冲)
3.时钟 PCLK or SCLK_UART
4.UART格式设置。 ULCON(奇偶校验,停止位,数据位数)
5.中断类型 UCON(如果不设置DMA,就会选择interrupt)
6.设置波特率 UBRDIVn,UDIVSLOTn
7.发送/接受寄存器 UTXHn,URXHn
8.控制FIFO UFCON
9.状态寄存器 UTRSTATn,UERSTATn,UFSTATn



4.interrupt
一共32个外部中断,93个中断源
//中断的初始化 X(0-3)
1.VICxINTENABLE,VICxINTENCLEAR //中断允许和禁止
2.VICxINTSELECT       //设置中断类型(IRQ,FIQ)
3.VICxIRQSTATUS,VICFIQSTATUS   //93个中断状态,    
4.VICxVECTADDR_Y      //服务程序入口地址  (Y=32)

//外部中断,X(0-3)每个寄存器8位有效
1.EXT_INT_X_CON       //设置触发模式
2.EXT_INT_xPEND        //清除中断,程序开始需要清除中断
3.EXT_INT_X_MASK            //外部中断总开关


//系统自动设置,程序中只需查询相应的功能
5.VICADDRESS      //中断发生时,自动吧VICVECTADDR中服务加载入寄存器(4)
6.SRCPENDING位           //中断服务程序有没有处理。
7.INTPENDING            //决定是否产生中断挂起

8.INTNUM      //判断跳转入ISR



如需具体的裸机程序(LED,蜂鸣器,PWM,UART,Interrupt)。头文件开发函数,可以留邮箱,私聊发送。

你可能感兴趣的:(arm裸机开发)