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

 
 
> LPC2294, Про регистры
Kaiser
сообщение Feb 12 2007, 17:55
Сообщение #1





Группа: Новичок
Сообщений: 14
Регистрация: 11-01-07
Пользователь №: 24 336



Здравствуйте, господа!
Такой вопрос: можно ли обращаться к 32-разрядным регистрам LPC22xx как к 4 отдельным байтам?
Например, регистры Tx данных модуля CAN1, если задать массив по абсолютному адресу:
unsigned char DataA[4] _at_ 0xE0044038;

то при дальнейшей записи в этот массив записывается только элемент DataA[0], то есть

DataA[0] = 0x11;
DataA[1] = 0x22;
DataA[2] = 0x33;
DataA[3] = 0x44;

далее в регистре по адресу 0xE0044038 записывается только значение 0х11 или вообще "левое" значение.
В Юзер Мануале на 2294 в разделе CAN ничего про это не сказано, а вот в разделе про VIC сказано, что к регистрам VIC можно обращаться только как к слову (нельзя читать или записывать 1 байт или 2 байта, то есть полуслово), это относиться и к регистрам CAN?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Kaiser
сообщение Feb 17 2007, 06:07
Сообщение #2





Группа: Новичок
Сообщений: 14
Регистрация: 11-01-07
Пользователь №: 24 336



Если вы в вопросе подразумевали - есть ли на шине другой приёмник-устройство на 125 кбит/с - то да, есть другое устройство и даже их два, и я их точно не забываю переконфигурировать на соответствущую скорость.

Насчёт массивов и регистров - конечно ручками оно правильнее, но поначалу я предполагал, что за меня это сделает компилятор. Вот у Микрочипа dsPIC 16 разряный, но с помощью компилятора позволяет обращаться отдельно к полуслову (1 байт) и даже применимо побитное обращение. Ну раз уж такая петрушка, то будем переучиваться.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Feb 17 2007, 10:52
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Kaiser @ Feb 17 2007, 05:07) *
Насчёт массивов и регистров - конечно ручками оно правильнее, но поначалу я предполагал, что за меня это сделает компилятор. Вот у Микрочипа dsPIC 16 разряный, но с помощью компилятора позволяет обращаться отдельно к полуслову (1 байт) и даже применимо побитное обращение. Ну раз уж такая петрушка, то будем переучиваться.

Ничего Вы не поняли sad.gif
1. Компилятор это делает за Вас.
2. Память и периферия с точки зрения байтовых и битовых обращений есть две большие разницы и сваливать их в кучу sad.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Kaiser
сообщение Feb 19 2007, 05:57
Сообщение #4





Группа: Новичок
Сообщений: 14
Регистрация: 11-01-07
Пользователь №: 24 336



Цитата(zltigo @ Feb 17 2007, 12:52) *
Ничего Вы не поняли sad.gif
1. Компилятор это делает за Вас.
2. Память и периферия с точки зрения байтовых и битовых обращений есть две большие разницы и сваливать их в кучу sad.gif


Давайте разберёмся вместе wink.gif.
Я хотел сказать, что модуль CAN в dsPICах 16-разрядный, но тем не менее там есть возможность обратиться к регистрам модуля CAN как к полуслову, так и побитно (это периферия, а не память). А у LPC надо делать по-другому.

А если я чего не понял, ну объясните, пожалуйста, чего я недопонимаю? smile.gif

Сообщение отредактировал Kaiser - Feb 19 2007, 05:59
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Kaiser   LPC2294   Feb 12 2007, 17:55
- - zltigo   Естественно нет.   Feb 13 2007, 00:49
- - Kaiser   Блин, круто, но пожалуйста поподробнее, что вы име...   Feb 13 2007, 17:51
|- - zltigo   Цитата(Kaiser @ Feb 13 2007, 16:51) Блин,...   Feb 13 2007, 21:36
- - Alex03   ЦитатаCAN CONTROLLERS Each CAN Controller has a re...   Feb 14 2007, 08:09
|- - _basile   Цитата(Alex03 @ Feb 14 2007, 08:09) Цитат...   Feb 14 2007, 08:42
- - Kaiser   Спасибо всем откликнувшимся, особенно про "же...   Feb 15 2007, 07:07
|- - Andy Mozzhevilov   Цитата(Kaiser @ Feb 15 2007, 09:07) Ещё о...   Feb 15 2007, 07:28
||- - Kaiser   Цитата(Andy Mozzhevilov @ Feb 15 2007, 09...   Feb 16 2007, 05:46
||- - Andy Mozzhevilov   Цитата(Kaiser @ Feb 16 2007, 07:46) Цитат...   Feb 16 2007, 06:32
||- - zltigo   Цитата(Kaiser @ Feb 16 2007, 04:46) Но у ...   Feb 16 2007, 10:32
|- - gladov   Цитата(Kaiser @ Feb 15 2007, 07:07) Спаси...   Feb 15 2007, 10:27
- - GetSmart   ЦитатаОгород не нужен: C1TDA1 = *(unsigned int *)...   Feb 15 2007, 18:22
||- - zltigo   Цитата(Kaiser @ Feb 19 2007, 04:57) А есл...   Feb 19 2007, 10:28
||- - Kaiser   Цитата(zltigo @ Feb 19 2007, 12:28) Всуе ...   Feb 19 2007, 18:33
||- - Andy Mozzhevilov   Цитата(Kaiser @ Feb 19 2007, 20:33) Под ...   Feb 20 2007, 07:36
||- - Kaiser   Цитата(Andy Mozzhevilov @ Feb 20 2007, 09...   Feb 20 2007, 17:50
||- - Andy Mozzhevilov   Цитата(Kaiser @ Feb 20 2007, 19:50) Цитат...   Feb 21 2007, 06:46
|- - Andy Mozzhevilov   Цитата(Kaiser @ Feb 17 2007, 08:07) Если ...   Feb 19 2007, 08:31
- - Kaiser   Отчёт. Насчёт регистров, попробовал как посоветова...   Feb 21 2007, 20:30


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 20:35
Рейтинг@Mail.ru


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