Отговори на тема  [ 6 мнения ] 
Аддрессиране на памет през 2 порта 
Автор Съобщение
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 15, 2007 11:24 pm
Мнения: 109
Мнение Аддрессиране на памет през 2 порта
Имам следното питане: Как да изразя на С30 2-та младши байта от адрес да се
пуснат на ПОРТД 0-15 и треитя байт на ПОРТБ 8-15 - много рових в нета ама не
можах да конкретизирам стринга за търсене...Идват ми идеи за преместване
например ама не може да няма по елегантен начин.


Пет Фев 01, 2008 11:04 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение 
[code]

*((char*)&LATB+1) = 0xA5;
*((char*)&LATB+0) = 0x5A;

[/code]

_________________
main[-1u]={1};


Нед Фев 03, 2008 12:13 am
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 15, 2007 11:24 pm
Мнения: 109
Мнение 
Мерси за идеята, а какво трябва да прочета за да ми станат ясни 2-та реда?


Нед Фев 03, 2008 8:01 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение 
аз малко трудно ти хващам заданието

искаш някакво 3 байтово число ( LONG? struct? ) да го метнеш на порт бе и де ли

_________________
main[-1u]={1};


Нед Фев 03, 2008 8:41 pm
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Съб Сеп 15, 2007 11:24 pm
Мнения: 109
Мнение 
Точно така - имам лонг инт (адрес на външна памет) който трябва да метна на ПОРТД 0-15 и
третия байт на ПОРТБ 8-15. За сега го правя така: ПОРТД=адрес и ПОРТБ=адрес>>8 - в дебъг
се държи коректно ама знам ли


Нед Фев 03, 2008 8:56 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение 
union {
unsigned long UL;
struct {
unsigned short Lo;
unsigned short Hi;
}WVal;
struct {
unsigned char B[4];
}BVal;
}ADR;

int main(int argc, char * argv[]){
ADR.UL = 0x87654321;
LATB = ADR.WVal.Lo;
*((char*)&LATD+1) = ADR.BVal.B[2];

обърни си там LATB и D

_________________
main[-1u]={1};


Нед Фев 03, 2008 9:12 pm
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 6 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 2 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни