我是在SimpleBLEPeripheral_Main.c中进入到InitBoard()这个函数中 更改我的IO口配置
void InitBoard( uint8 level )
{
/*Begin Alert by guwen 2018-08-09 PN:BLE*/
//P1端口:P1_0雾化器 外设端口 输出模式; P1_1 按键SW1输入模式 高
//P1_6USB充电时拉低,输入IO 高 P1_3 输出IO 默认低
//综上: P1DIR: 0000 1001 P1SEL:0000 0001 P1: 1111 0110
//设置P1_0(雾化器)为输出模式,通用IO并关闭雾化器
P1DIR |= 0x09; //0x09
P1SEL |= 0x01; //0x01
P1 |= 0xF6; //0xF6
printf("P1DIR = %#x\n",P1DIR);
printf("P1SEL = %#x\n",P1SEL);
printf("P1 = %#x\n",P1);
//P0端口:P0_1 霍尔输入;P0_2升压mos管FB脚 输出模式;
//P0_3 升压mos管CE脚位 输出模式; P0_5 充电管理芯片 输入模式 充电时拉低
//设置P0_6,P0_7,P0_0(LD1,LD2,LD3/4)为输出模式,通用IO并关闭显示
//综上:1100 1101
P0DIR |= 0xCD; //P0_7原开发板上为蜂鸣器 0xC1
//0000 0000
P0SEL &= ~0xFF; //0为通用IO,1为外设
//关闭 LD1,2,3,4 CE FB脚置低 0011 0010
P0 |= 0x32; //关闭LD1,LD2,LD3/4
printf("P0DIR = %#x\n",P0DIR);
printf("P0SEL = %#x\n",P0SEL);
printf("P0 = %#x\n",P0);
/*End Alert by guwen 2018-08-09 PN:BLE*/
if ( level == OB_COLD )
{
// Interrupts off
osal_int_disable( INTS_ALL );
// Turn all LEDs off
//HalLedSet( HAL_LED_ALL, HAL_LED_MODE_OFF );
// Check for Brown-Out reset
// ChkReset();
}
else // !OB_COLD
{
/* Initialize Key stuff */
OnboardKeyIntEnable = HAL_KEY_INTERRUPT_ENABLE;
//OnboardKeyIntEnable = HAL_KEY_INTERRUPT_DISABLE;
HalKeyConfig( OnboardKeyIntEnable, OnBoard_KeyCallback);
}
}
下载调试的时候 打印出来的都是0 搞不懂 我是在cc2xxxxMB c1.3开发板板子上模拟的 观察到几个LED灯是亮起的 但是跟我的实际配置并不相同 所以请教下各位是什么原因呢 是不是有其它地方 例程是将IO口置位了呢 还是说我想要更改IO配置需要再其它地方进行修改~ |