Перейти к содержанию
    

Заголовочные файлы для Keil

Добрый день!

 

Два исходника из примеров, идущих с Keil:

 

1. Для AT

#include <91M40800.H> /* AT91M40800 definitions */

#define CR 0x0D

void init_serial (void) { /* Initialize Serial Interface */

PIO_PDR = (1<<PIORXD0) | (1<<PIOTXD0); /* Enable RXD0 and TXD0 */

US0_MR = US_CHRL_8 | US_PAR_NO; /* 8 bits, no Parity, 1 Stop bit */

US0_BRGR = 260; /* 9600 Baud Rate @ 40 MHz Clock */

US0_CR = US_RXEN | US_TXEN; /* Enable RX and TX */

}

 

2. Для LPC

#include <LPC21xx.H> /* LPC21xx definitions */

#define CR 0x0D

oid init_serial (void) { /* Initialize Serial Interface */

PINSEL0 = 0x00050000; /* Enable RxD1 and TxD1 */

U1LCR = 0x83; /* 8 bits, no Parity, 1 Stop bit */

U1DLL = 97; /* 9600 Baud Rate @ 15MHz VPB Clock */

U1LCR = 0x03; /* DLAB = 0 */

}

 

Как избавиться от "нелепых" констант?

1. Можно забить свой заголовочник для каждого чипа.

2. Для инициализации "железа" можно воспользоваться Conf Wizard`ом, а как быть в обработчиках прерываний.

 

Что посоветуете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что посоветуете?

Воздать молитву о ниспослании милости в виде headers фиг знает кем и по какой логике написанного, думаю не поможет.

1. Можно забить свой заголовочник для каждого чипа.

А вот это делайте постепенно в процессе написания. Какие проблемы???

 

 

Для затравки - смотрите приложение.

iolpc2xxx.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если их в природе нет, то все понятно :-( - забью свои.

Только, понимаете, во-первых, не хочу разойтись с "внешним миром". А во-вторых, под новый камень переписать файлик, ну... мягко скажу, нелегко! И самый сложный момент придумать уникальное имя!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И самый сложный момент придумать уникальное имя!

Имя чего, простите? Файла? Какие проблемы? А если регистров и битов, то их 'придумывать' категорически НЕ СОВЕТУЮ - они уже придуманы и обозваны в документации. Хорошо-ли плохо-ли, но обозваны Авторами - их и использовать.

 

 

А во-вторых, под новый камень переписать файлик, ну... мягко скажу, нелегко!

Чего сложного? Повторяюсь - не весь сразу а просто по мере необходимости в процессе работы и чтения документации. Приложенный так у меня и растет постепенно. 'Любезно' приложенные производителем компилятора лучше не пользовать - в большинстве случаев такая услуга выйдет боком при переходе на другой комнилятор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я когда начал писать в кейле тоже был огорчен хедерами особенно после яра авр. Выдрал кажись из кроссворкса или из яра то что касалось битов. Что не устраивало - поправил. Вместе с родным подключаю и свой. Можете сделат аналогично.

bit_defines.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за советы! :-)

И за библиотеки спасибо, правда, свои уже наработал ;-)

Хотелось бы иметь файлики от производителя, но увы... :-(

А по поводу названий - конечно же, беру из даташитоф, но имена получаются длинющие, например, для pin connect block.

И еще момент, практически забил все определения для LPC2148, а теперь появилась LPC2378...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хотелось бы иметь файлики от производителя, но увы... :-(

Если от производителя компиляторов, то уже писал - ЛУЧШЕ не брать. Если от производителей чипов, то обычно они совершенно не заточены под какой-то компилятор и хороши в использовании.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...