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

 
 
> Keil RTL - CAN, Кто-нить пользовал?
Andrew2000
сообщение Jan 17 2007, 05:49
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 421
Регистрация: 25-12-04
Пользователь №: 1 675



Решил поковырять ради интереса - Keil
R T L - C A N D r i v e r
Rev.: V3.03a / 27-sep-2006
файл RTX_CAN.c (он один для все процесоров)

Не понял что они понаписали в ф-ях CAN_push и CAN_pull
Там везде написано:
*msg = *ptrmsg;
Это что, такая модная замена memcpy?
Или я перегрелся?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 1)
Alex03
сообщение Jan 17 2007, 12:13
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



Цитата(Andrew2000 @ Jan 17 2007, 07:49) *
Не понял что они понаписали в ф-ях CAN_push и CAN_pull
Там везде написано:
*msg = *ptrmsg;
Это что, такая модная замена memcpy?

А чем оно хуже то? Для маленьких и постоянных по размеру блоков данных вполне нормальный подход.
Там размер структуры наверняка слова так 4 (32-х разрядных).
Тем более для АРМа эта строчка может вылиться в 4 команды, в то время как на вызов memcpy надо не меньше, да потом memcpy начнёт анализировать, размер на кратность 4-ём и адреса на выравненность и т.д. а уж только потом копирование.
Go to the top of the page
 
+Quote Post

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

 


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


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