Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 404 → Rev 407

/C-OSD/trunk/CHANGE.LOG
18,10 → 18,19
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
****************************************************************************/
 
20090427-2050
*clear() now faster
*fixed calculation of max speed in stats (shaddi)
*littel typo in artificial horizon (thx joko)
*stats are only shown AFTER flight (more specific, after motors had been on at least once)
+indication icon for serial link (requires new character 198)
+indication icon for manual controll (stick > stick threshold)
(Character set 192 needs to be reflashed since new icon is in it)
 
20090420-0205
*reset-bug fixed
*moved code a bit
 
20090419-2145
*reset-bug workaround in usart1.c: usart1_DisableTXD and usart1_EnableTXD
 
/C-OSD/trunk/c-osd.mcm
12674,54 → 12674,61
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01011010
01000000
00000000
00000001
01001010
10101010
10101001
01011001
01010101
01011001
01011001
01010101
01011001
01011001
01010101
01011001
01011010
10100001
01001000
00101000
00100001
01001000
10001000
10100001
01001000
00101000
10100001
01001000
10101000
10100001
01001000
10101000
00100001
01001010
10101010
10101001
01011001
01010101
01011001
01011001
01010101
01011001
01011001
01010101
01011001
01011010
10100001
00000000
00101000
00000000
00101010
10101010
10101001
01011001
10101000
00100000
00000000
00001000
00100010
00100010
00101000
00101000
10001000
10001000
00100010
00100010
00101000
00101000
00000000
00101000
00101010
10101010
10101000
00000000
00000000
00000000
01010101
01011001
01011001
01010101
01011001
01011001
01010101
01011001
01100101
01010101
01101001
01010101
01010101
01010101
12740,13 → 12747,6
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01010101
01011010
10101010
10101001
/C-OSD/trunk/characters.c
815,6 → 815,15
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa};
 
// pc icon
unsigned char cc6[54] ={0x55, 0x55, 0x55, 0x40, 0x00, 0x01, 0x4a, 0xaa,
0xa1, 0x48, 0x28, 0x21, 0x48, 0x88, 0xa1, 0x48,
0x28, 0xa1, 0x48, 0xa8, 0xa1, 0x48, 0xa8, 0x21,
0x4a, 0xaa, 0xa1, 0x00, 0x28, 0x00, 0x2a, 0xaa,
0xa8, 0x20, 0x00, 0x08, 0x22, 0x22, 0x28, 0x28,
0x88, 0x88, 0x22, 0x22, 0x28, 0x28, 0x00, 0x28,
0x2a, 0xaa, 0xa8, 0x00, 0x00, 0x00};
 
learn_char(192, cc0);
learn_char(193, cc1);
learn_char(194, cc2);
821,6 → 830,7
learn_char(195, cc3);
learn_char(196, cc4);
learn_char(197, cc5);
learn_char(198, cc6);
#endif
 
#if WRITECHARS == 200
/C-OSD/trunk/main.c
428,7 → 428,7
write_char_xy(27, top_line+1, 0xCC); // small meters m home
write_char_xy(7, bottom_line, 0x9E); // small v
write_char_xy(14, bottom_line, 0xD1); // on clock
write_char_xy(22, bottom_line, 0xD2); // fly clock
write_char_xy(21, bottom_line, 0xD2); // fly clock
write_char_xy(26, bottom_line, 0xC8); // sat1
write_char_xy(27, bottom_line, 0xC9); // sat2
COSD_FLAGS |= COSD_ICONS_WRITTEN;
462,7 → 462,13
for (uint8_t x = 0; x < 4; x++)
write_char_att_xy(7 + x, top_line, 0);
}
last_RC_Quality = naviData.RC_Quality;
last_RC_Quality = naviData.RC_Quality;
if (naviData.NCFlags & NC_FLAG_NOSERIALLINK) {
write_char_xy(11, top_line, 0); // clear
} else {
write_char_xy(11, top_line, 0xC6); // PC icon
}
 
write_ndigit_number_u(13, top_line, naviData.CompassHeading, 100, 0);
 
501,9 → 507,11
if (COSD_FLAGS & COSD_FLAG_ARTHORIZON) {
draw_artificial_horizon(top_line + 2, bottom_line - 1, naviData.AngleNick, naviData.AngleRoll);
}
// motors are on, assume we were/are flying
COSD_FLAGS |= COSD_WASFLYING;
} else {
// stats
if (COSD_FLAGS & COSD_FLAG_STATS) {
if ((COSD_FLAGS & COSD_WASFLYING) && (COSD_FLAGS & COSD_FLAG_STATS)) {
write_ascii_string_pgm(2, 5, stats_item_pointers[0]); // max Altitude
write_ndigit_number_s(18, 5, max_Altimeter / 30, 1000, 0);
write_char_xy(22, 5, 204); // small meters m
540,10 → 548,16
 
write_time(8, bottom_line, uptime);
write_time(16, bottom_line, naviData.FlyingTime);
write_time(15, bottom_line, naviData.FlyingTime);
 
write_ndigit_number_u(24, bottom_line, naviData.SatsInUse, 10, 0);
 
if (naviData.NCFlags & NC_FLAG_MANUAL_CONTROL) {
write_char_xy(23, bottom_line, 0xB3); // rc transmitter
} else {
write_char_xy(23, bottom_line, 0); // clear
}
 
if (naviData.NCFlags & NC_FLAG_CH) {
write_char_xy(27, bottom_line, 231); // gps ch
} else if (naviData.NCFlags & NC_FLAG_PH) {
/C-OSD/trunk/main.h
51,13 → 51,14
/* ##########################################################################
* FLAGS usable during runtime
* ##########################################################################*/
#define COSD_FLAG_NTSC 1
#define COSD_FLAG_HUD 2
#define COSD_FLAG_ARTHORIZON 4
#define COSD_FLAG_BIGVARIO 8
#define COSD_FLAG_STATS 16
#define COSD_FLAG_WARNINGS 32
#define COSD_ICONS_WRITTEN 64
#define COSD_FLAG_NTSC 1
#define COSD_FLAG_HUD 2
#define COSD_FLAG_ARTHORIZON 4
#define COSD_FLAG_BIGVARIO 8
#define COSD_FLAG_STATS 16
#define COSD_FLAG_WARNINGS 32
#define COSD_ICONS_WRITTEN 64
#define COSD_WASFLYING 128
 
/* ##########################################################################
* LED controll
/C-OSD/trunk/mk-data-structs.h
86,17 → 86,26
 
/*
* MikroKopter Flags
* portions taken and adapted from
* http://svn.mikrokopter.de/mikrowebsvn/filedetails.php?repname=FlightCtrl&path=%2Ftags%2FV0.72p%2Fuart.h
* taken from
* http://svn.mikrokopter.de/mikrowebsvn/filedetails.php?repname=FlightCtrl&path=%2Ftags%2FV0.73d%2Ffc.h
*/
#define NC_FLAG_FREE 1
#define NC_FLAG_PH 2
#define NC_FLAG_CH 4
#define NC_FLAG_RANGE_LIMIT 8
#define NC_SERIAL_LINK_OK 16
#define NC_FLAG_TARGET_REACHED 32
 
#define FLAG_MOTOR_RUN 1
#define FLAG_FLY 2
#define FLAG_CALIBRATE 4
#define FLAG_START 8
 
/*
* NaviCtrl Flags
* taken from
* http://mikrocontroller.cco-ev.de/mikrowebsvn/filedetails.php?repname=NaviCtrl&path=%2Ftags%2FV0.15c%2Fuart1.h
*/
#define NC_FLAG_FREE 0x01
#define NC_FLAG_PH 0x02
#define NC_FLAG_CH 0x04
#define NC_FLAG_RANGE_LIMIT 0x08
#define NC_FLAG_NOSERIALLINK 0x10
#define NC_FLAG_TARGET_REACHED 0x20
#define NC_FLAG_MANUAL_CONTROL 0x40
#define NC_FLAG_8 0x80