Rev 1006 | Rev 1019 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed
| Rev 1006 | Rev 1017 | ||
|---|---|---|---|
| Line 25... | Line 25... | ||
| 25 | glcdPowerOn(); |
25 | glcdPowerOn(); |
| 26 | 26 | ||
| 27 | uint16_t ixa = 0; |
27 | uint16_t ixa = 0; |
| 28 | uint8_t jxa = 0; |
28 | uint8_t jxa = 0; |
| 29 | for (jxa = 0; jxa< 8; jxa++){ |
29 | for (jxa = 0; jxa< 8; jxa++){ |
| 30 | glcdSetXY(0,jxa); |
30 | glcdSetXY(0,jxa*8); |
| 31 | for (ixa = 0; ixa < 128; ixa++){ |
31 | for (ixa = 0; ixa < 128; ixa++){ |
| 32 | glcdWriteData((uint8_t)pgm_read_byte((uint16_t)&Splash_left+ixa+jxa*128)); |
32 | glcdWriteData((uint8_t)pgm_read_byte((uint16_t)&Splash_left+ixa+jxa*128), GLCD_COLOR_CLEAR); |
| 33 | } |
- | |
| 34 | } |
33 | } |
| - | 34 | } |
|
| - | 35 | glcdSetXY(0,0); |
|
| - | 36 | glcdPutStrTransparent("=_-[]_-=",GLCD_COLOR_SET); |
|
| - | 37 | glcdSetXY(0,8); |
|
| - | 38 | glcdPutStrTransparent("--------",GLCD_COLOR_SET); |
|
| - | 39 | glcdSetXY(0,16); |
|
| - | 40 | glcdPutStr("-_=[]=-_",GLCD_COLOR_SET); |
|
| - | 41 | glcdDrawRect(32, 32, 40, 16, GLCD_COLOR_SET); |
|
| - | 42 | glcdDrawLine(10, 10, 100, 60, GLCD_COLOR_SET); |
|
| - | 43 | glcdFillRect(90, 10, 20, 20, GLCD_COLOR_SET); |
|
| - | 44 | glcdInvertRect(28, 10, 20, 20); |
|
| - | 45 | glcdInvert(); |
|
| - | 46 | glcdDrawRoundRect(85, 5, 30, 30, 5, GLCD_COLOR_SET); |
|
| - | 47 | glcdDrawCircle(64, 32, 10, 1); |
|
| - | 48 | glcdSetXY(12,40); |
|
| - | 49 | glcdPutStrTransparent("Hejsan",GLCD_COLOR_CLEAR); |
|
| - | 50 | glcdDrawLine(10, 62, 50, 5, GLCD_COLOR_CLEAR); |
|
| - | 51 | ||
| 35 | } |
52 | } |
| 36 | 53 | ||
| 37 | void act_ks0108_Process(void) |
54 | void act_ks0108_Process(void) |
| 38 | { |
55 | { |
| 39 | ///TODO: Stuff that needs doing is done here |
56 | ///TODO: Stuff that needs doing is done here |
| 40 | } |
57 | } |
| 41 | 58 | ||
| 42 | void act_ks0108_HandleMessage(StdCan_Msg_t *rxMsg) |
59 | void act_ks0108_HandleMessage(StdCan_Msg_t *rxMsg) |
| 43 | { |
60 | { |
| 44 | StdCan_Msg_t txMsg; |
61 | StdCan_Msg_t txMsg; |
| 45 | uint8_t n = 0; |
62 | uint8_t n = 0; |
| Line 50... | Line 67... | ||
| 50 | rxMsg->Header.ModuleId == act_ks0108_ID) |
67 | rxMsg->Header.ModuleId == act_ks0108_ID) |
| 51 | { |
68 | { |
| 52 | switch (rxMsg->Header.Command) |
69 | switch (rxMsg->Header.Command) |
| 53 | { |
70 | { |
| 54 | case CAN_MODULE_CMD_KS0108_LCD_CLEAR: |
71 | case CAN_MODULE_CMD_KS0108_LCD_CLEAR: |
| - | 72 | glcdSetColor((0x7f&rxMsg->Data[0])>>7); |
|
| 55 | glcdClear(); |
73 | glcdClear(); |
| 56 | break; |
74 | break; |
| 57 | 75 | ||
| 58 | case CAN_MODULE_CMD_KS0108_LCD_CURSOR: |
76 | case CAN_MODULE_CMD_KS0108_LCD_CURSOR: |
| 59 | glcdSetXY(rxMsg->Data[0], rxMsg->Data[1]); |
77 | glcdSetXY(rxMsg->Data[0], rxMsg->Data[1]); |
| 60 | break; |
78 | break; |
| 61 | 79 | ||
| 62 | case CAN_MODULE_CMD_KS0108_LCD_TEXTAT: |
80 | case CAN_MODULE_CMD_KS0108_LCD_TEXTAT: |
| 63 | glcdSetXY(rxMsg-> |
81 | glcdSetXY((0x3f&rxMsg->Data[0])*6, rxMsg->Data[1]*8); |
| 64 | for (n = 2; n < rxMsg->Length; n++) |
82 | for (n = 2; n < rxMsg->Length; n++) |
| 65 | { |
83 | { |
| 66 | glcdWriteChar((char)rxMsg->Data[n]); |
84 | glcdWriteChar((char)rxMsg->Data[n], (0x7f&rxMsg->Data[0])>>7); |
| 67 | } |
85 | } |
| 68 | break; |
86 | break; |
| 69 | 87 | ||
| 70 | case CAN_MODULE_CMD_KS0108_LCD_TEXT: |
88 | case CAN_MODULE_CMD_KS0108_LCD_TEXT: |
| 71 | for (n = 0; n < rxMsg->Length; n++) |
89 | for (n = 0; n < rxMsg->Length; n++) |
| 72 | { |
90 | { |
| 73 | glcdWriteChar((char)rxMsg->Data[n]); |
91 | glcdWriteChar((char)rxMsg->Data[n], GLCD_COLOR_SET); |
| 74 | } |
92 | } |
| 75 | break; |
93 | break; |
| 76 | 94 | ||
| 77 | case CAN_MODULE_CMD_KS0108_LCD_BACKLIGHT: |
95 | case CAN_MODULE_CMD_KS0108_LCD_BACKLIGHT: |
| 78 | if (rxMsg->Length > 0) { |
96 | if (rxMsg->Length > 0) { |
| Line 86... | Line 104... | ||
| 86 | #else |
104 | #else |
| 87 | OCR0B = rxMsg->Data[0]; |
105 | OCR0B = rxMsg->Data[0]; |
| 88 | #endif |
106 | #endif |
| 89 | */ |
107 | */ |
| 90 | } |
108 | } |
| 91 | - | ||
| 92 | StdCan_Msg_t txMsg; |
- | |
| 93 | - | ||
| 94 | StdCan_Set_class(txMsg.Header, CAN_MODULE_CLASS_ACT); |
109 | StdCan_Set_class(txMsg.Header, CAN_MODULE_CLASS_ACT); |
| 95 | StdCan_Set_direction(txMsg.Header, DIRECTIONFLAG_FROM_OWNER); |
110 | StdCan_Set_direction(txMsg.Header, DIRECTIONFLAG_FROM_OWNER); |
| 96 | txMsg.Header.ModuleType = CAN_MODULE_TYPE_ACT_KS0108; |
111 | txMsg.Header.ModuleType = CAN_MODULE_TYPE_ACT_KS0108; |
| 97 | txMsg.Header.ModuleId = act_ks0108_ID; |
112 | txMsg.Header.ModuleId = act_ks0108_ID; |
| 98 | txMsg.Header.Command = CAN_MODULE_CMD_KS0108_LCD_BACKLIGHT; |
113 | txMsg.Header.Command = CAN_MODULE_CMD_KS0108_LCD_BACKLIGHT; |