Инструкции

Справочный раздел

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

Разделы инструкций

В сети

Пользователей: 143
Из них просматривают:
Аналоги: 74. Видео: 1. Даташиты: 46. Инструкции: 3. Новости: 4. Остальное: 1. Форум: 14.
Участников: 2
Гостей: 141

Google , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

В настоящее время нет объявлений.
Оглавление

Функции для работы с USART

Рассмотрим функции для работы с аппаратной реализацией. Аппаратный модуль USART имеется во многих представителях семейства PIC. Библиотека mikroC для работы с аппаратной реализацией IJSART предоставляет возможности удобной работы в асинхронном полнодуплексном режиме.

 

Схема аппаратного подключения RS-232

Рис. 25. Схема аппаратного подключения RS-232 

 

 Можно легко организовать связь с другими устройствами, поддерживающими протокол RS-232, например, с персональным компьютером (см. рис. 25). Для этого потребуется микроконтроллер с аппаратным USART, например PIC16F877. В программе можно использовать все функции, приведённые ниже.

 
Для работы с USART используются библиотечные функции Usart_Init, Usart_Data_Ready, Usart_Read и Usart_Write. Описание этих функций представлено в таблицах 14-17 соответственно.

 

 Таблица 14. Описание функции Usart_Init

Прототипvoid Usart_lnit(const unsigned long baud_rate)
Возвращаемое значениеНет
ОписаниеИнициализация аппаратуры модуля USART требуемой скоростью обмена. Для подробной информации о разрешённых скоростях обмена при заданных частотах тактового генератора следует обратиться к документации на микроконтроллер. Если будет задана запрещённая скорость обмена, компилятор сообщит об ошибке

 

ТребованияНеобходим микроконтроллер с аппаратным USART. Функция Usartjnit должна быть вызвана перед использованием всех остальных функций библиотеки работы с USART
ПримерИнициализация аппаратуры USART и установка скорости обмена 2400 bps: Usart_lnit(2400)

  

 Таблица 15. Описание функции Usart_Data_Ready

Прототипunsigned short Usart_Data_Ready(void)
Возвращаемое значениеФункция возвращает значение 1, если есть принятые данные, и 0 в противном случае
ОписаниеЭту функцию следует использовать для проверки наличия данных для чтения в приёмном регистре
ТребованияАппаратный модуль USART должен быть предварительно проинициализирован и задана скорость обмена с помощью функции Usart_Init
Пример

Если данные готовы, прочитать их:

int receive;
...

if (Usart_Data_Ready()) receive = Usart_Read;

 

 Таблица 16. Описание функции Usart_Read

Прототипunsigned short Usart_Read(void)
Возвращаемое значениеВозвращает значение принятого байта. Если байт не принят, возвращает О
ОписаниеФункция считывает принятые данные из приёмного регистра аппаратуры USART. Для проверки наличия принятых данных следует использовать функцию Usart_Data_Ready
ТребованияАппаратный модуль USART должен быть предварительно проинициализирован, а скорость обмена задана с помощью функции Usartjnit
Пример

Если данные готовы, прочитать их:

int receive;
...

if (Usart_Data_Ready()) receive = Usart_Read();

 

 Таблица 17. Описание функции Usart_Write

Прототипvoid Usart_Write(unsigned short data)
Возвращаемое значениеНет
ОписаниеФункция передаёт байт (data) no USART
ТребованияАппаратный модуль USART должен быть предварительно проинициализирован, а скорость обмена задана с помощью функции Usartjnit
Примерint chunk = 0x1E;
Usart_Write(chunk); /* послать chunk no USART */

 


Микроконтроллеры, имеющие по два модуля USART, например P18F8520, требуют задать модуль, который будет использоваться. Для этого достаточно просто приписать цифру 1 или 2 к названию функции. Например, Usart_Write2(). Также, с целью обратной совместимости с предыдущими версиями компилятора и облегчения управления кодами, МК с несколькими модулями USART имеют Usart-библиотеку, которая идентична Usart 1 (т.е. можно использовать Usart_Init() вместо Usart l_Init() для операций с USART).

 
Следующий пример программы демонстрирует простой обмен данными по USART. Когда МК принимает данные, он немедленно отправляет те же данные обратно. Если подключить PIC к ПК (см. рис. 25), можно проверить обмен с терминалом для связи по RS-232. В среде разработки терминал запускается из выпадающего меню командой Tools -> Terminal.

unsigned short i;
void main() {
// Инициализация модуля USART (8 бит, скорость обмена 2400 бод, без к/ч)
Usart_Init( 2400 ) ;
do {
if (Usart_Data_Ready()) { // Если данные приняты
i = Usart_Read(); // Прочитать, что принято
Usart_Write(i); //и отправить назад по USART
}
} while ( 1 ) ;
} // end
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.

Разное

Интересно

При замене электролитических конденсаторов, кроме соблюдения полярности, не следует значительно превышать допустимое рабочее напряжение.
Например, если конденсатор рассчитан на рабочее напряжение 16 В, то при установке нового той же емкости, но рассчитанного на напряжение 300 В после непродолжительной эксплуатации произойдет его расформовка, и емкость его значительно уменьшится.

Похожие инструкции