main(){
//启用时钟模块
SIM_SCG5 = SIM_SCGC5 | (1<<12);
//指定用作GPIO
PORTD_PCR0 = 0X0100;
...
PORTD_PCR7 = 0X0100;
//设置GPIO为输出
GPIOD_PDDR = 0xFF;
//最低的8个bit为0,八盏灯为亮
GPIOD_PDOR = 0x00;
}
SIM(系统集成模块) enable correspond GPIO port clock
将12位设置为1,开启时钟
SIM_SCG5 = SIM_SCGC5 | (1<<12);
set GPIO PCR enable correspond port function as GPIO
每一个物理上存在的引脚,都有自己独立的寄存器来配置它的功能。
灰色的是忽略保留的bit,白色是对功能进行配置。MUX
是000~111有8个选择,对应的是引脚的8个功能。
引脚的ALT1~ATL7共8个功能。
PORTD_PCR0 = 0X0100;
...
PORTD_PCR7 = 0X0100;
选用引脚的第一个功能。
GPIO PDDR set GPIO as output, PDOR output 0 and 1'
每一个io时由若干个寄存器控制的
这些寄存器编成了很多组
//设置GPIO为输出
GPIOD_PDDR = 0xFF;
//最低的8个bit为0,八盏灯为亮
GPIOD_PDOR = 0x00;