杰理6905A芯片引脚的设置

杰理6905A芯片只有24引脚,并且大部分都已经设定好了,规定好的引脚用完之后就只剩下最后几个口。

IR(遥控器口):key_drv_ir.c 中 ir_key_init()找到 IR_PORTC(4) (这里设置的为PC4),如果要改的话根据需求修改即可。

AD(硬件按键口):key_drv_ad.c 中找到ad_table[] 数组,会看到 AD_KEY_PB9(这个设置即为PB9)在source insight 中点击会看到其他口的设置,设置为对应的即可。

上面介绍了IR 以及AD 的口的设置,接下来介绍单个引脚的设置:
这里介绍的都是以PC脚为例:

#define MIO_API_IO_PORT_DIR     JL_PORTC->DIR   //Direct 输入:|=  输出:&= ~
#define MIO_API_IO_PORT_DIE     JL_PORTC->DIE   //使能位
#define MIO_API_IO_PORT_OUT    JL_PORTC->OUT  //输出  高:|=  低:&= ~
#define MIO_API_IO_PORT_PU     JL_PORTC->PU    //上拉 开:|=  关:&= ~
#define MIO_API_IO_PORT_PD     JL_PORTC->PD    //下拉 开:|=  关:&= ~

举个例子,将PC5设置为输出高:

JL_PORTC->DIR &= ~BIT(5); 
JL_PORTC->OUT &= ~BIT(5);
输入低的话只需要将JL_PORTC->OUT &= ~BIT(5);改为JL_PORTC->OUT |= BIT(5);即可。

有一些引脚是两个IO口共用一个引脚,比如PA3和PB13,在进行设置PB13的时候必须将PA3置为高阻态。只需在mian函数的while(1)前加入: JL_PORTA->PD &=~BIT(3);即可将PA3设置为高阻态。

还有一种情况就是引脚和DM、DP脚共用,有一次需要添加linein功能,linein需要两个脚,一个是linein检测,另外一个是linein数据传输。刚好剩下PC3和 PA4脚,而这两个脚和DM、DP共用。
在dev_linein.h中将改linein检测修改为PC3,具体设置如下:

#define AUX_IO_BIT    BIT(3)
#define AUX_DIR_SET   (JL_PORTC->DIR |= AUX_IO_BIT)
#define AUX_PU_SET    (JL_PORTC->PU |= AUX_IO_BIT)
#define AUX_IN_CHECK  (JL_PORTC->IN & AUX_IO_BIT)

在linein.c 中,将aux_dac_channel_on()中修改linein数据引脚为PA4,具体设置如下:

JL_PORTA->DIR |= (BIT(4));
JL_PORTA->DIE &= ~(BIT(4));
JL_PORTA->PU  &= ~(BIT(4));
JL_PORTA->PD  &= ~(BIT(4));
//这里将PA4设置为高阻态,普通IO口设置IO口的方法也如此。

介绍一下将USB的DM、DP设置为高阻态的方法:
在sys_detect.c中,将usb_2_io() 修改为如下:

USB_DM_PU(0);
USB_DM_PD(0);
USB_DM_DIR(1);
//这里将DM脚设置为高阻态。

还不清楚的小伙伴可以添加我的个人微信 lqy—1997 (中间是三个英文的杠)进行交流。

你可能感兴趣的:(杰理芯片笔记)