1. 在新建工程前创龙非常人性化的提供了Yahei字体,专业适合程序员,保护视力。 (设置Text文字以及字号) 2. 尝试着写了GPIO的驱动,但是在编写中发现了问题(因为未完成代码就不提供)。 问题:GPIO16~31可选复用配置,但是未看到对应的DIR、OUT_DATA、SET_DATA、CLR_DATA等16~31的配置,但在GPIO_LED测试程序中: GPIODirModeSet(SOC_GPIO_0_REGS,GPIO19_TIMO1,GPIO_DIR_OUTPUT);此处是否遗漏了哪个文档,后续慢慢再研究。 3. GPIO测试 硬件接口:(3个LED灯对应GPIO19,22,23) MMR寄存器保护: #define KickUnlock() \ { \ HWREG(SOC_DSC_BASE_REGS + SOC_DSC_KICK0) =0x83e70b13; \ HWREG(SOC_DSC_BASE_REGS + SOC_DSC_KICK1) =0x95a4f1e0; \ } #define KickLock() \ { \ HWREG(SOC_DSC_BASE_REGS + SOC_DSC_KICK0) =0x00000001; \ HWREG(SOC_DSC_BASE_REGS + SOC_DSC_KICK1) =0x00000001; \ }
GPIO起始寄存器: GPIO偏移寄存器值: 测试GPIO_LED程序,按照DEBUG测试,便会出现三个灯流水滚动。 4. 总结 驱动GPIO主要寄存器如下几个寄存器,通过 #define HWREG_32(x) (*((volatile unsigned int *)(x))) 上述访问对应地址寄存器内容。 PIN_CONTROL_0 地址(0x00000580)//GPIO16~31复用IO Interrupt Per-Bank EnableRegister(BINTEN)/GPIO中断使能 Direction register(DIR)//方向寄存器 Output Data Register(OUT_DATA)//IO输出 Set Data Register(SET_DATA)//驱动输出高电平 Clr Data Register(SET_DATA)//驱动输出低电平 Input Data Register(IN_DATA)//IO输入。
本资料来源于网络,仅供学习! |