Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Вычисление регистра тактовой синхронизации





Большинство контроллеров CAN позволяют программисту осуществлять настройку тактовой синхронизации используя следующие параметры:

• Значение предварительного делителя тактовой частоты

• Количество квантов перед точкой замера

• Количество квантов после точки замера

• Количество квантов в «ширина скачка синхронизации» (Synchronization Jump Width, SJW)

Обычно для этих целей выделяется два регистра: btr0 и btr1. Однако они могут слегка различаться у разных контроллеров, поэтому внимательно читайте инструкцию.

В контроллерах 82c200 и SJA1000, производства NXP (ранее Philips), раскладка регистра выглядит приблизительно так:

                 
btr0 SJW1 SJW0 BRP5 BRP4 BRP3 BRP2 BRP1 BRP0
btr1 SAM TSEG22 TSEG21 TSEG20 TSEG13 TSEG12 TSEG11 TSEG10

 

• BRP0..BRP5 устанавливают значение предварительного делителя тактовой частоты

• SJW0..SJW1 устанавливают длину SJW

• TSEG10..TSEG13 устанавливают количество квантов перед точкой замера (стартовый бит не включен)

• TSEG20..TSEG22 устанавливают количество квантов после точки замера

• SAM при установке значения 1 производится три замера, при установке значения 0 – один замер

Примечание: реальные значения этих параметров несколько отличаются от значений, вписанных в регистр.

Пример: если сигнал генератора, подаваемый на SJA1000, имеет частоту 16 МГц, и мы желаем получить скорость передачи 250 кбит/с, с точкой замера в районе 62% всего бита, и SJW равным 2 квантам, мы можем установить –
BRP = 4, что дает продолжительность кванта 2 × 4 / 16000000 с = 500 нс, и

TSEG1 = 5, что дает 5 квантов перед точкой замера, и

TSEG2 = 3, что дает 3 кванта после точки замера.

Каждый бит будет содержать 5 + 3 = 8 квантов, что даст нам желаемую скорость передачи 1 / (8 × 500 нс) = 250 кбит/с. Значения регистра должны быть следующими:

 

btr0= (SJW – 1) * 64 + (BRP -1) = (2-1)*64 + (4-1) = 67 = 0×43
btr1= SAM * 128 + (TSEG2 – 1)* 16 + (TSEG1 – 1) = 0×128 + (3-1)*16 + (4-1) = («4» потому, что стартовый бит не включен) 35 = 0×23

Точка замера в районе 5/8 = 62.5% бита.

Date: 2016-05-23; view: 336; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию