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

    

Исходники программ и библиотек

По аналогии с форумом AVR предлагаю выкладывать свои библиотеки для работы с периферией. Для начала выкладываю свою библиотеку для работы с I2C. Это софтверный I2C с возможностью использования с несколькими устройствами. Честно говоря, первое что я сам написал на С, да и то основанная на аналогичной библиотеке из AVRLIB, но сильно переработанная.

Буду благодарен за дополнения, исправления и просто слова :)

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


Ссылка на сообщение
Поделиться на другие сайты
По аналогии с форумом AVR предлагаю выкладывать свои библиотеки для работы с периферией.

 

Лучше сюда http://sourceforge.net/

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


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

Лучше сюда http://sourceforge.net/

Безусловно, SourceForge хорошее место. Но там имеет смысл заводить проект когда наберется достаточное количество кода чтобы собрать достойную библиотеку. А пока этого нет - мертворожденные проекты плодить не хочу.

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


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

Я пару раз где-то здесь выкладывал исходники для работы с усарт...

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


Ссылка на сообщение
Поделиться на другие сайты
По аналогии с форумом AVR предлагаю выкладывать свои библиотеки для работы с периферией. Для начала выкладываю свою библиотеку для работы с I2C. Это софтверный I2C с возможностью использования с несколькими устройствами. Честно говоря, первое что я сам написал на С, да и то основанная на аналогичной библиотеке из AVRLIB, но сильно переработанная.

Буду благодарен за дополнения, исправления и просто слова :)

 

Думаю дело правильное. И лучше гдето в этом форуме выкладывать. Это будет даже как хорошее дополнение к FAQ.

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


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

Зафиксировал тему вверху.

Надеюсь получит развитие.

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


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

Доброго времени суток ВСЕМЪ!!!

 

Посчастливилось поработать с индикатором WH2004L. В прикрепленном файле протокол обмена по 4-х разрядной шине.

 

С уважением, ART.

WH2004L.rar

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


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

Библиотека 32 разрядной плавающей точки MSP430 для gcc без аппаратного умножителя.

Для работы нужно слинковаться с библиотекой.

Добавляет чуть больше 1к кода но это гораздо меньше чем стандартная библиотека gcc.

Переработанный пакет FPP из состава iar.

Внутри считается как и в оригинале. Перед и после работы каждая функция выполняет

преобразование к iee754.

Определены 2 набора функций - один описан в fpp.h.

Второй совпадает с набором названий gcc.

 

Нет проверки на ошибки.

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


Ссылка на сообщение
Поделиться на другие сайты
есть ли у кого-нибудь библиотека delay.h как для AVR в CodeVision.

 

#define CPU_CLK_Hz 1000000

#ifndef DELAY_H
#define DELAY_H

#define CPU_CLK_kHz (unsigned long)(CPU_CLK_Hz/1000)
#define delay_ns(x) __delay_cycles(x*CPU_CLK_kHz*0.000001)
#define delay_us(x) __delay_cycles(x*(CPU_CLK_Hz/1000000))
#define delay_ms(x) __delay_cycles(x*(CPU_CLK_Hz/1000))
#define delay_s(x) __delay_cycles(x*CPU_CLK_Hz)

#endif

В ИАРе работает. ВачДог НЕ сбрасывает.

#define CPU_CLK_Hz 1000000 - задаём тактовую в герцах

Код не мой. Где-то нашёл, правда не помню где. :)

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


Ссылка на сообщение
Поделиться на другие сайты
Код не мой. Где-то нашёл, правда не помню где. :)

Ну так и не надо бросать сюда всякий мусор :(

1. Ничего умного нет - все уже сделал IAR

2. Даже макросы нормально написать не смогли :(

2.1 что будет с вызовом, например, delay_ms( 2+2 )?

2.2 А округление Автора в школе не учили правильно делать?

2.3 А то что арифметика препроцессора 16bit-овая обычно и без 'L' все очень забавно будет?

3. А причем тут MSP430?

 

#define CPU_CLK_Hz 12345678UL
#define delay_ms(x) __delay_cycles( (x)*(((CPU_CLK_Hz)+500UL)/1000UL))

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


Ссылка на сообщение
Поделиться на другие сайты
Ну так и не надо бросать сюда всякий мусор :(

1. Ничего умного нет - все уже сделал IAR

2. Даже макросы нормально написать не смогли :(

2.1 что будет с вызовом, например, delay_ms( 2+2 )?

2.2 А округление Автора в школе не учили правильно делать?

2.3 А то что арифметика препроцессора 16bit-овая обычно и без 'L' все очень забавно будет?

3. А причем тут MSP430?

 

#define CPU_CLK_Hz 12345678UL
#define delay_ms(x) __delay_cycles( (x)*(((CPU_CLK_Hz)+500UL)/1000UL))

Человек попросил - я ответил. Я сомневаюсь, что это будут использовать в конечной прошивке. Применительно к МСП430 - тут спросили тут и ответили.

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


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

Вот, на днях состряпал.

модуль для вычисления и калибровки температуры с платиновых датчиков HEL-700 (701,702)

Пытался сделать универсальный модуль с прицелом на дальнейшую упаковку в либу.

temperature.zip

Кстати, опять же, к МСП никак не привязано, абсолютно абстрактный модуль.

Просто я на МСП работаю.. :rolleyes:

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


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

Библиотека для работы с DS1302 ( без процедур чтения-записи встроенной в ней памяти, ибо нах надо....)

P.S. где-то у китайцев нашел, доработал, и портировал под MSP.

ds1302.rar

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


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

Внесу свою толику библиотек:

Работа с датчиком ds18b20

Подключение дисплея типа HD44780

Библиотека и часы реального времени на DS1394+

 

Вот ещё:

Библиотека для подключения индикаторов на tm1638 - драйвере светодиодных индикаторов

 

Исходники библиотек - на sourceforge, по ссылкам - архивы проектов на CCS 5.3 и Code::Blocks

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


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация