PIC中LCD问题

2020-02-08 09:04发布

        case 0:        (flag==0)?SEG0COM3=0:SEG0COM3=1;break;//ANTENNA
                case 1: (flag==0)?SEG42COM0=0:SEG42COM0=1;break;//Cumulative
                case 2: (flag==0)?SEG24COM0=0:SEG24COM0=1;break;//temperature-time
                case 3: (flag==0)?SEG22COM0=0:SEG22COM0=1;break;//Heat distribution
                case 4: (flag==0)?SEG41COM0=0:SEG41COM0=1;break;//Alarm
                case 5: (flag==0)?SEG12COM3=0:SEG12COM3=1;break;//battery mark
                case 6: (flag==0)?SEG0COM2=0:SEG0COM2=1;break;//ID
                case 7: (flag==0)?SEG1COM0=0:SEG1COM0=1;break;//opening time
                case 8: (flag==0)?SEG20COM0=0:SEG20COM0=1;break;//P2
                case 9: (flag==0)?SEG12COM2=0:SEG12COM2=1;break;//KW.h
                case 10:(flag==0)?SEG12COM0=0:SEG12COM0=1;break;//℃.
                case 11:(flag==0)?SEG12COM1=0:SEG12COM1=1;break;//h
                case 12:(flag==0)?SEG0COM1=0:SEG0COM1=1;break;//openig ctrl
                case 13:(flag==0)?SEG26COM0=0:SEG26COM0=1;break;//setup time
                case 14:(flag==0)?SEG0COM0=0:SEG0COM0=1;break;//setup
                case 15:(flag==0)?SEG3COM0=0:SEG3COM0=1;break;//ambient temperature
                case 16:(flag==0)?SEG7COM0=0:SEG7COM0=1;break;//P1
                case 17:(flag==0)?SEG5COM0=0:SEG5COM0=1;break;//℃
                case 18:(flag==0)?SEG34COM0=0:SEG34COM0=1;break;//time
                case 19:(flag==0)?SEG16COM2=0:SEG16COM2=1;break;//channel
                case 20:(flag==0)?SEG16COM3=0:SEG16COM3=1;break;//week
                case 21:(flag==0)?SEG16COM0=0:SEG16COM0=1;break;//automaic
                case 22:(flag==0)?SEG16COM1=0:SEG16COM1=1;break;//open valve
                case 23:(flag==0)?SEG17COM0=0:SEG17COM0=1;break;//stop
                case 24:(flag==0)?SEG31COM0=0:SEG31COM0=1;break;//X1


高手帮忙分析一下PIC中LCD的编程,什么意思!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
millwood0
1楼-- · 2020-02-08 12:03
 精彩回答 2  元偷偷看……
Lu.Shi
2楼-- · 2020-02-08 14:12
你这边是什么芯片,电路接法略微说一下,而且你这段代码的功能也应该说一下,只有一段代码看不懂,我前两天刚做了一个LCD的万年历,使用的是PIC18F46K22,电路中除了控制线以外,使用了四根数据线的接法,你要是觉得有用的话,说一声。
lanyuan114489
3楼-- · 2020-02-08 15:14
Lu.Shi 发表于 2012-8-23 15:04
你这边是什么芯片,电路接法略微说一下,而且你这段代码的功能也应该说一下,只有一段代码看不懂,我前两天 ...

谢了,现在已经搞懂了,嘿嘿!!
lanyuan114489
4楼-- · 2020-02-08 21:11
//  常用命令及IO操作宏定义
//  SET_Bit(val, bitn)      设置val.bitn为高电平
//  CLR_Bit(val, bitn)      设置val.bitn为低电平
//  GET_Bit(val, bitn)      读取val.bitn的电平状态
//  CPL_Bit(val, bitn)      val.bitn的电平状态取反
//======================================================================
//    #define NOP() {_asm("nop ");}

    #define SET_Bit(val, bitn)      (INT8U)(val |= (1 << (bitn) ))
    #define CLR_Bit(val, bitn)      (INT8U)(val &= (INT8U)(~(1 << (bitn) )))
    #define GET_Bit(val, bitn)      (INT8U)(val &  (INT8U)(1 << (bitn) ))
    #define CPL_Bit(val, bitn)      (INT8U)(val ^= (INT8U)(1 << (bitn) ))

这种编程有人用过么,不是太懂啊
Lu.Shi
5楼-- · 2020-02-09 01:39
lanyuan114489 发表于 2012-8-23 15:47
//  常用命令及IO操作宏定义
//  SET_Bit(val, bitn)      设置val.bitn为高电平
//  CLR_Bit(val, bitn)   ...


这种编程我见过无参的置位,你这里应该是有参数的吧,我不明白的是  INT8U 定义的是什么类型?我觉得好像是 unsigned char 类型的吧,但是 INT 着实看不懂了。我要是说的不对还请指点指点,谢谢了。
lanyuan114489
6楼-- · 2020-02-09 03:42
 精彩回答 2  元偷偷看……

一周热门 更多>