void init_lcd() { //----------------------------------------------------------清清除中断标志 PIR2bits.LCDIF=0; //清清除中断标志 //------------------------------------------------------------------LCDCON------7~0位 LCDCONbits.LCDEN=0; //使能LCD模块 1使能 0除能 LCDCONbits.SLPEN=0; //休眠模式下是否使能lcd,1禁止 0使能 LCDCONbits.WERR=0; //lcd写失败错误位,1有,0无 //空白位 LCDCONbits.CS1=1; //时钟源选择 LCDCONbits.CS0=0; LCDCONbits.LMUX1=0; //公共端选择 LCDCONbits.LMUX0=1; //------------------------------------------------------------------LCDPS------7~0位 LCDPSbits.WFT=0; //A波形 LCDPSbits.BIASMD=0; //1/3偏置 LCDPSbits.LCDA=0; //标志位,0不在工作,1正在工作 LCDPSbits.WA=1; //允许写入数据 LCDPSbits.LP3=0; //预分频比 LCDPSbits.LP2=0; LCDPSbits.LP1=0; LCDPSbits.LP0=0; //-------------------------------------------------------------------LCDREF------7~0位 LCDREFbits.LCDIRE=0; //内部参考电压使能 LCDREFbits.LCDIRS=0; //内部参考电压源 LCDREFbits.LCDIRI=0; //内部参考梯形电阻网络空闲使能位 //空白位 LCDREFbits.VLCD3PE=0; //VLCD3是否连接到内部偏压 LCDREFbits.VLCD2PE=0; //VLCD2是否连接到内部偏压 LCDREFbits.VLCD1PE=0; //VLCD1是否连接到内部偏压 //空白位 /* //-------------------------------------------------------------------LCDCST------7~0位 //空白位 //空白位 //空白位 //空白位 //空白位 LCDCSTbits.LCDCST2=0; LCDCSTbits.LCDCST1=0; LCDCSTbits.LCDCST0=0; */ //-------------------------------------------------------------------LCDRL------7~0位 LCDRLbits.LRLAP1=0; //参考梯形电阻网络A时间功率控制位,功耗模式 LCDRLbits.LRLAP0=0; LCDRLbits.LRLBP1=0; //参考梯形电阻网络B时间功率控制位,功耗模式 LCDRLbits.LRLBP0=0; //空白位 LCDRLbits.LRLAT2=0; //功耗模式 LCDRLbits.LRLAT1=0; LCDRLbits.LRLAT0=0; //------------------------------------------------------------------ANSELx------7~0位 // ANSELA=0; // ANSELB=0; // ANSELD=0; // ANSELE=0; //-------------------------------------------------------------------LCDSEn------------ LCDSE1=0xfe;//seg9~seg15使能 LCDSE2=0xff;//seg16~seg23使能 LCDSE0~2 一共24段 //-------------------------------------------------------------------LCDDATAn----------- LCDDATA1=0Xfe;//seg8~seg15, 相对于com0的seg8~seg15的8位数据 LCDDATA2=0Xff;//seg16~seg23, 相对于com0的seg16~seg23的8位数据 LCDDATA4=0Xfe;//seg8~seg15, 相对于com1的seg8~seg15的8位数据 LCDDATA5=0Xff;//seg16~seg23, 相对于com1的seg16~seg23的8位数据 //----------------------------------------------------------------------使能 LCDCONbits.LCDEN=1; //使能LCD模块 // LCDPSbits.WA=0; }
现在似乎已经使能了,因为初始化后LCD全部清空了。
可是我写的数据不是0啊,不知道是不是哪里配置错了,大家提提意见。
芯片是PIC16F1934