Final version of lab03.2
This commit is contained in:
parent
1fad6de2e1
commit
f72a7b33e0
@ -6,14 +6,20 @@
|
||||
#define LIBC_VERSION "avr-libc version: "__AVR_LIBC_VERSION_STRING__"\n"
|
||||
#define STUD_NAME "Arti Zirk"
|
||||
#define GET_MONTH_MSG "Enter Month name first letter >"
|
||||
const char ENG_MONTH[6][9] PROGMEM = {
|
||||
"January",
|
||||
"February",
|
||||
"March",
|
||||
"April",
|
||||
"May",
|
||||
"June",
|
||||
};
|
||||
|
||||
};*/
|
||||
const char JANUARY[] PROGMEM = "January";
|
||||
const char FEBRUARY[] PROGMEM = "February";
|
||||
const char MARCH[] PROGMEM = "March";
|
||||
const char APRIL[] PROGMEM = "April";
|
||||
const char MAY[] PROGMEM = "May";
|
||||
const char JUNE[] PROGMEM = "June";
|
||||
|
||||
PGM_P const ENG_MONTH[] PROGMEM = {
|
||||
JANUARY,
|
||||
FEBRUARY,
|
||||
MARCH,
|
||||
APRIL,
|
||||
MAY,
|
||||
JUNE,
|
||||
};
|
||||
#endif /* _HMI_MSG_H_ */
|
||||
|
@ -33,7 +33,7 @@ int main (void)
|
||||
|
||||
/* ASCII table print */
|
||||
print_ascii_tbl(stdout);
|
||||
unsigned char ascii[128] = {0};
|
||||
unsigned char ascii[128];
|
||||
for (unsigned char i = 0; i < sizeof(ascii); i++) {
|
||||
ascii[i] = i;
|
||||
}
|
||||
@ -51,10 +51,10 @@ int main (void)
|
||||
fprintf(stdout, "%c\n", month_first_leter);
|
||||
lcd_goto(0x40); /* Got to the beginning of the next line */
|
||||
for (int i = 0; i < 6; i++) {
|
||||
if (!strncmp_P(&month_first_leter, ENG_MONTH[i], 1)) {
|
||||
fprintf_P(stdout, ENG_MONTH[i]);
|
||||
if (!strncmp_P(&month_first_leter, (PGM_P)pgm_read_word(&ENG_MONTH[i]), 1)) {
|
||||
fprintf_P(stdout, (PGM_P)pgm_read_word(&ENG_MONTH[i]));
|
||||
fputc('\n', stdout);
|
||||
lcd_puts_P(ENG_MONTH[i]);
|
||||
lcd_puts_P((PGM_P)pgm_read_word(&ENG_MONTH[i]));
|
||||
lcd_putc(' ');
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include <stdio.h>
|
||||
#include <avr/pgmspace.h>
|
||||
#include "print_helper.h"
|
||||
|
||||
int print_ascii_tbl (FILE *stream)
|
||||
@ -16,16 +17,17 @@ int print_ascii_tbl (FILE *stream)
|
||||
int print_for_human (FILE *stream, const unsigned char *array, const int len)
|
||||
{
|
||||
for (int i = 0; i < len; i++) {
|
||||
if (array[i] >= ' ' && array[i] <= '~') {
|
||||
if (!fprintf(stream, "%c", array[i])) {
|
||||
unsigned char c = array[i];
|
||||
if (c >= ' ' && c <= '~') {
|
||||
if (!fprintf(stream, "%c", c)) {
|
||||
return 0;
|
||||
}
|
||||
} else {
|
||||
if (!fprintf(stream, "\"0x%02x\"", array[i])) {
|
||||
if (!fprintf(stream, "\"0x%02x\"", c)) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return fprintf(stream, "\n");;
|
||||
return fprintf(stream, "\n");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user