Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: C51. как передать данные в двухмерный масив?
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
dobrik
помогите чайнику, запутался окончательно!!!
в двух словах задача:
имеется жк индикатор с контроллером holtek1621 (четырех битная память), коды цифр имеют следующий вид:
unsigned char c9[3]={0xC0,0xE0,0x40};
unsigned char c8[3]={0xC0,0xE0,0xC0};
unsigned char c7[3]={0xC0,0x40,0x00};
unsigned char c6[3]={0x80,0xE0,0xC0};
unsigned char c5[3]={0x80,0xE0,0x40};
unsigned char c4[3]={0xC0,0x80,0x40};
unsigned char c3[3]={0xC0,0xE0,0x00};
unsigned char c2[3]={0x40,0xE0,0x80};
unsigned char c1[3]={0xC0,0x00,0x00};
unsigned char c0[3]={0xC0,0x60,0xC0};
и расположены они в сегменте "code". Буфер индикации выглядит вот так: buff[10][3].
Если теперь инициализирую buff с кодами цифр жестко (для проверки), индикатор выводит все десять цифр.
В реальной задаче существуют переменные znako_mesto1 ... znako_mesto10, от содержимого которых зависит
в каком разряде какая цифра.
пример (не работает):
if (znako_mesto2==0x05) buff[2]=c5[3];
......
научите как с этим бороться!!!
rvk
Нужно не присваивать, а копировать три байта подпрограммой memcpy, тогда сработает.
if (znako_mesto2==0x05)
memcpy(buff[2],(unsigned char*)c5,3);
dobrik
Спасибо за оперативную помощь! А где можно посмотреть исходник этой функции? Предполагаю что она должна находиться в какой то системной библиотеке. Я использую Кейл3, но пока не очень ориентируюсь в нем.
dobrik
Цитата(dobrik @ Feb 1 2009, 12:13) *
Спасибо за оперативную помощь! А где можно посмотреть исходник этой функции? Предполагаю что она должна находиться в какой то системной библиотеке. Я использую Кейл3, но пока не очень ориентируюсь в нем.


раскопал, все получилось, еще раз спасибо за помощь!!!
тема закрыта.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.