реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Указатель на указатель
sKWO
сообщение Jun 16 2011, 07:52
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530



Люди, подскажите как(можно ли?) сделать указатель в оперативке на указатель на флэш массив?
проблема в следующем:
Код
const char*            exFont;


void ks0108SelectFont( const char __flash* font, FontCallback callback, uint8_t color) {
    exFont = font;  
    ...............
    ...............
}

Ошибочка Error[Pe513]: a value of type "char const __flash *" cannot be assigned to an
entity of type "char const *" E:\WORK\GrafЖКИ\TEST1\main.c 308
Компилятор ИАР
Заранее спасибо.


--------------------
нельзя недооценивать предсказуемость глупости
Go to the top of the page
 
+Quote Post
ARV
сообщение Jun 16 2011, 08:00
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581



может, я чего-то не понял, но указатель на указатель объявляется так: char* *ptr; ну и потом: вам же компилятор написал, что char const __flash* совсем не то же самое, что char const*
то есть если у вас указатель на FLASH, его и объявлять надо соответственно


--------------------
Я бы взял частями... но мне надо сразу.
Go to the top of the page
 
+Quote Post
arttab
сообщение Jun 16 2011, 08:04
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371



Пример:
unsigned char __flash * ImageData;

где ImageData = ((unsigned char __flash *) CODEBLOCK);


--------------------
OrCAD, Altium,IAR, AVR....
Go to the top of the page
 
+Quote Post
lux
сообщение Jun 16 2011, 08:15
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 85
Регистрация: 4-10-06
Из: Ukraine
Пользователь №: 20 949



Цитата(sKWO @ Jun 16 2011, 10:52) *
Люди, подскажите как(можно ли?) сделать указатель в оперативке на указатель на флэш массив?
проблема в следующем:
Код
const char*            exFont;


void ks0108SelectFont( const char __flash* font, FontCallback callback, uint8_t color) {
    exFont = font;  
    ...............
    ...............
}


Давно не работал С IAR, просто не нравится.
По моему Вы не правильно объявили переменную exFont. По моему должно быть так:
char const __flash* exFont;

Go to the top of the page
 
+Quote Post
sKWO
сообщение Aug 16 2011, 05:27
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530



Цитата(arttab @ Jun 16 2011, 12:04) *
Пример:
unsigned char __flash * ImageData;

где ImageData = ((unsigned char __flash *) CODEBLOCK);

Спасибо, arttab , именно так сам и решил приведение указателей.


--------------------
нельзя недооценивать предсказуемость глупости
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 03:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01379 секунд с 7
ELECTRONIX ©2004-2016