Subversion Repositories HomeAutomation

Rev

Rev 948 | Rev 951 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 948 Rev 950
Line 42... Line 42...
42
        rxMsg->Header.ModuleType == CAN_MODULE_TYPE_ACT_HD44789 &&
42
        rxMsg->Header.ModuleType == CAN_MODULE_TYPE_ACT_HD44789 &&
43
        rxMsg->Header.ModuleId == act_hd44780_ID)
43
        rxMsg->Header.ModuleId == act_hd44780_ID)
44
    {
44
    {
45
        switch (rxMsg->Header.Command)
45
        switch (rxMsg->Header.Command)
46
        {
46
        {
47
        case CAN_MODULE_CMD_SPECIFIC_LCD_CLEAR:
47
        case CAN_MODULE_CMD_HD44789_LCD_CLEAR:
48
        lcd_clrscr();
48
        lcd_clrscr();
49
        break;
49
        break;
50
 
50
 
51
        case CAN_MODULE_CMD_SPECIFIC_LCD_CURSOR:
51
        case CAN_MODULE_CMD_HD44789_LCD_CURSOR:
52
        lcd_gotoxy(rxMsg->Data[0], rxMsg->Data[1]);
52
        lcd_gotoxy(rxMsg->Data[0], rxMsg->Data[1]);
53
        break;
53
        break;
54
 
54
 
55
        case CAN_MODULE_CMD_SPECIFIC_LCD_TEXTAT:
55
        case CAN_MODULE_CMD_HD44789_LCD_TEXTAT:
56
        lcd_gotoxy(rxMsg->Data[0], rxMsg->Data[1]);
56
        lcd_gotoxy(rxMsg->Data[0], rxMsg->Data[1]);
57
        for (n = 2; n < rxMsg->Length; n++)
57
        for (n = 2; n < rxMsg->Length; n++)
58
        {
58
        {
59
            lcd_putc((char)rxMsg->Data[n]);
59
            lcd_putc((char)rxMsg->Data[n]);
60
        }
60
        }
61
        break;
61
        break;
62
       
62
       
63
        case CAN_MODULE_CMD_SPECIFIC_LCD_TEXT:
63
        case CAN_MODULE_CMD_HD44789_LCD_TEXT:
64
        for (n = 0; n < rxMsg->Length; n++)
64
        for (n = 0; n < rxMsg->Length; n++)
65
        {
65
        {
66
            lcd_putc((char)rxMsg->Data[n]);
66
            lcd_putc((char)rxMsg->Data[n]);
67
        }
67
        }
68
        break;
68
        break;
69
 
69
 
70
        case CAN_MODULE_CMD_SPECIFIC_LCD_SIZE:
70
        case CAN_MODULE_CMD_HD44789_LCD_SIZE:
71
        StdCan_Set_class(txMsg.Header, CAN_MODULE_CLASS_ACT);
71
        StdCan_Set_class(txMsg.Header, CAN_MODULE_CLASS_ACT);
72
        StdCan_Set_direction(txMsg.Header, DIRECTIONFLAG_FROM_OWNER);
72
        StdCan_Set_direction(txMsg.Header, DIRECTIONFLAG_FROM_OWNER);
73
        txMsg.Header.ModuleType = CAN_MODULE_TYPE_ACT_HD44789;
73
        txMsg.Header.ModuleType = CAN_MODULE_TYPE_ACT_HD44789;
74
        txMsg.Header.ModuleId = act_hd44780_ID;
74
        txMsg.Header.ModuleId = act_hd44780_ID;
75
        txMsg.Header.Command = CAN_MODULE_CMD_SPECIFIC_LCD_SIZE;
75
        txMsg.Header.Command = CAN_MODULE_CMD_SPECIFIC_LCD_SIZE;
Line 79... Line 79...
79
        txMsg.Data[1] = act_hd44780_HEIGHT;
79
        txMsg.Data[1] = act_hd44780_HEIGHT;
80
 
80
 
81
        StdCan_Put(&txMsg);
81
        StdCan_Put(&txMsg);
82
        break;
82
        break;
83
 
83
 
84
        case CAN_MODULE_CMD_SPECIFIC_LCD_BACKLIGHT:
84
        case CAN_MODULE_CMD_HD44789_LCD_BACKLIGHT:
85
        if (rxMsg->Length > 0)
85
        if (rxMsg->Length > 0)
86
            OCR1AL = rxMsg->Data[0];
86
            OCR1AL = rxMsg->Data[0];
87
 
87
 
88
        StdCan_Msg_t txMsg;
88
        StdCan_Msg_t txMsg;
89
 
89