FreeCalypso > hg > freecalypso-hwlab
comparison lcdtest/busops.c @ 13:238a77db4134
lcdtest: read operations implemented, but don't work
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 06 Apr 2018 06:43:02 +0000 |
parents | 5eaf832d57d0 |
children | 5a602e512b12 |
comparison
equal
deleted
inserted
replaced
12:5eaf832d57d0 | 13:238a77db4134 |
---|---|
70 cmd[6] = 0x92; | 70 cmd[6] = 0x92; |
71 cmd[7] = 0; /* dummy addr */ | 71 cmd[7] = 0; /* dummy addr */ |
72 cmd[8] = val16; | 72 cmd[8] = val16; |
73 do_ftdi_write(cmd, 9); | 73 do_ftdi_write(cmd, 9); |
74 } | 74 } |
75 | |
76 bus_read(rs) | |
77 { | |
78 u_char cmd[8], resp[2]; | |
79 | |
80 /* set RS */ | |
81 cmd[0] = 0x82; | |
82 cmd[1] = rs ? 0x03 : 0x02; | |
83 cmd[2] = 0x03; | |
84 /* read upper byte */ | |
85 cmd[3] = 0x90; | |
86 cmd[4] = 0; /* dummy addr */ | |
87 /* read lower byte */ | |
88 cmd[5] = 0x90; | |
89 cmd[6] = 0; /* dummy addr */ | |
90 /* send immediate */ | |
91 cmd[7] = 0x87; | |
92 do_ftdi_write(cmd, 8); | |
93 if (ftdi_read_data(&ftdi, resp, 2) != 2) { | |
94 fprintf(stderr, "FTDI read error: %s\n", ftdi.error_str); | |
95 exit(1); | |
96 } | |
97 return (resp[0] << 8) | resp[1]; | |
98 } |