原创:sam4s16c的寄存器配置基础教程---IO输入输出配置
时间:10-02
整理:3721RD
点击:
最近项目涉及到和供应商合作,之前用atmel studio不能继续用了,不得不改用keil,于是潜水了一段时间,静下来仔细分析Datasheet,终于完成了,几乎所有外设驱动的寄存器配置,可以直接用于sam4s系列。看不懂的自己仔细研究Datasheet吧。个人的爱好是喜欢寄存器直接配置。
看官方的库,太乱,太累。
不喜欢拿来主义。
第一部分
配置IO口,首先要使能IO口的时钟,如使能PIOA口,操作如下
PMC->PMC_PCER0 = 1 << ID_PIOA;
第二,要使能IO口
配置PIO Enable Register
PIOA->PIO_PER |= 1 << 11; PIOA11
第三,配置IO口的方向:输入或输出
PIOA->PIO_OER |= 1 << 11;输出使能
第四,配置IO口的输出写使能
PIOA->PIO_OWER |= 1 << 11;
下面就可以对IO进行操作了。
如设置IO输出1
PIOA->PIO_SODR |= 1 << 11;
IO清零
PIOA->PIO_CODR |= 1 << 11;
水平有限,请大家多指点,谢谢!
后续还有很多外设的寄存器配置教程,请大家关注。
看官方的库,太乱,太累。
不喜欢拿来主义。
第一部分
配置IO口,首先要使能IO口的时钟,如使能PIOA口,操作如下
PMC->PMC_PCER0 = 1 << ID_PIOA;
第二,要使能IO口
配置PIO Enable Register
PIOA->PIO_PER |= 1 << 11; PIOA11
第三,配置IO口的方向:输入或输出
PIOA->PIO_OER |= 1 << 11;输出使能
第四,配置IO口的输出写使能
PIOA->PIO_OWER |= 1 << 11;
下面就可以对IO进行操作了。
如设置IO输出1
PIOA->PIO_SODR |= 1 << 11;
IO清零
PIOA->PIO_CODR |= 1 << 11;
水平有限,请大家多指点,谢谢!
后续还有很多外设的寄存器配置教程,请大家关注。
自己顶一下,呵呵
好东西,多谢分享
谢谢支持啊,呵呵呵
很好的东西,感谢分享!
兜纳K1
客气了,呵呵呵
路过看一眼,,,,,,,
谢谢支持啊,看看