Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include "altera_up_avalon_character_lcd.h"
- #include "altera_up_avalon_parallel_port.h"
- unsigned int bin_to_dec(unsigned int val) {
- switch (val) {
- case 0:
- return 63;
- case 1:
- return 6;
- case 2:
- return 91;
- case 3:
- return 79;
- case 4:
- return 102;
- case 5:
- return 109;
- case 6:
- return 125;
- case 7:
- return 7;
- case 8:
- return 127;
- case 9:
- return 111;
- default:
- return 0;
- }
- }
- unsigned int hex_03_val(unsigned int val) {
- unsigned int hex_03_val = 0;
- int i;
- for (i = 0; i < 4; i++) {
- hex_03_val += bin_to_dec(val % 10) << (8 * i);
- val /= 10;
- }
- return hex_03_val;
- }
- unsigned int hex_47_val(unsigned int val) {
- unsigned int hex_47_val = 0;
- int i;
- val = (val / 10000) % 10000;
- for (i = 0; i < 4; i++) {
- hex_47_val += bin_to_dec(val % 10) << (8 * i);
- val /= 10;
- }
- return hex_47_val;
- }
- int main(void) {
- unsigned int val;
- char first_row[] = "1ID22B, PSW_LAB2";
- char second_row[] = "Odzimek, Osak\0";
- alt_up_parallel_port_dev* ledr;
- alt_up_parallel_port_dev* switches;
- alt_up_character_lcd_dev* char_lcd_dev;
- alt_up_parallel_port_dev* hex03;
- alt_up_parallel_port_dev* hex47;
- char_lcd_dev = alt_up_character_lcd_open_dev(LCD_NAME);
- if (char_lcd_dev == NULL)
- alt_printf("Blad: Nie mozna wczytac ekranu LCD!\n");
- else
- alt_printf("Wczytano ekran LCD!\n");
- alt_up_character_lcd_init(char_lcd_dev);
- alt_up_character_lcd_string(char_lcd_dev, first_row);
- alt_up_character_lcd_set_cursor_pos(char_lcd_dev, 0, 1);
- alt_up_character_lcd_string(char_lcd_dev, second_row);
- ledr = alt_up_parallel_port_open_dev(RED_LED_NAME);
- switches = alt_up_parallel_port_open_dev(SWITCHES_NAME);
- hex03 = alt_up_parallel_port_open_dev(HEX_03_NAME);
- hex47 = alt_up_parallel_port_open_dev(HEX_47_NAME);
- while (1) {
- val = alt_up_parallel_port_read_data(switches);
- alt_up_parallel_port_write_data(ledr, val);
- alt_up_parallel_port_write_data(hex03, hex_03_val(val));
- alt_up_parallel_port_write_data(hex47, hex_47_val(val));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement