роботы робототехника микроконтроллеры


 Страниц (5): [1] 2 3 4 5 »   

> Без описания
Spicus Post Id



Маршал


Сообщений всего: 110
Дата рег-ции: Нояб. 2010  



Ребята, есть у кого опыт программирования Attiny2313 на C? Или кто нибуть знает где можно почитать о программировании на usart на C!!!
 
 Top
mihail Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  



Datasheet ATtiny2313. С 111 страницы. Там есть простенькие примеры на С и ассемблере.

(Отредактировано автором: 22 Января, 2011 - 00:31:10)

 
 Top
Spicus Post Id



Маршал


Сообщений всего: 110
Дата рег-ции: Нояб. 2010  



mihail, а есть где нибуть полная информация про usart на С. Там в даташите особо ничего не расписанно, а мне бы для начала научиться с ПК включать и выключать светодиоды. Можешь подсказать? Или может у тебя есть текст программы для этого с комментами?
 
 Top
nest Администратор Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  



Spicus, а что там сложного?
передали байт - приняли байт. А дальше сравниваем с чем то и если сравнилось - жгём светодиод.
 
 Top
Spicus Post Id



Маршал


Сообщений всего: 110
Дата рег-ции: Нояб. 2010  



так вот я и незнаю как их принимать, как отправлять! Инфу найти не могу, и в даташите что-то не понил! Я знаю что ничего сложного, но это ещё надо как то узнать!
 
 Top
redcat Post Id



Главнокомандующий


Сообщений всего: 387
Дата рег-ции: Янв. 2009  



Книга - Программирование на языке C для AVR и PIC микроконтроллеров. Ю.А.Шпак
страница 160.
 
 Top
Spicus Post Id



Маршал


Сообщений всего: 110
Дата рег-ции: Нояб. 2010  



redcat, Спасибо!!! Там всё понятно!!!
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



Spicus пишет:
в даташите что-то не понил



я английский как раз по даташитам и хэльпфайлам учил Голливудская улыбка (а сейчас , когда онлайн переводчики есть- это не в словаре ковыряться)
 
 Top
nest Администратор Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  



Spicus пишет:
сть где нибуть полная информация про usart на С. Там в даташите особо ничего не расписанно, а мне бы для начала научиться с ПК включать и выключать светодиоды
вообще вот отсюда попробуйте начать и спросить, если что не понятно: Обзор стандарта RS-232
 
 Top
Spicus Post Id



Маршал


Сообщений всего: 110
Дата рег-ции: Нояб. 2010  



nest, я это знаю! У меня всё есть. помогите мне понять как инициализировать USART, выставлять скорость, формат, как принимать и отправлять данные, куда данные сохраняются после приёма и т.д. мне нужна помощь с кодом на attiny2313. Можете мне написать простой код с подробными комментами. Как выставили скорость, как выставили формат, как приняли, как отправили. Покажите пожалуста, я этого понять не могу! Собрал уже на макетке MAX232 и Attiny2313, отладил, всё готово, но вот как принимать и отправлять не пойму!

(Отредактировано автором: 31 Января, 2011 - 22:22:06)

 
 Top
nest Администратор Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  



Spicus пишет:
Как выставили скорость, как выставили формат, как приняли, как отправили. Покажите пожалуста, я этого понять не могу!
даташит, стр 115 и далее. с примерами кода.

инициализация - на стр 121
передача - стр 122
приём - стр 125

описание регистров - со стр 133, в них выставояется формат и скорость и прочее.
про всякие 9-битовые байты можете не читать, это не нужно.
 
 Top
Spicus Post Id



Маршал


Сообщений всего: 110
Дата рег-ции: Нояб. 2010  



nest, я этот даташит перелопатил, но я так и не понил как выставлять скарость, как формат. Вы можете мне написать пример программы?
 
 Top
nest Администратор Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  



так не бывает "совсем ничего не понял".

покажите, с какого места началось непонимание. В каком месте непонятно?


и ещё раз: сам пример программы есть в даташите.
 
 Top
Spicus Post Id



Маршал


Сообщений всего: 110
Дата рег-ции: Нояб. 2010  



Ну самое непонятное, это надо ли квартц или нет. Фьюзы, что с ними делать? Как ставить частоту?

Вот:

#define F_CPU 20000000UL

#include <avr/io.h>
#include <avr/interrupt.h>
#define RXEN 4
#define TXEN 3
#define USBS 3
#define UCSZ0 1



int main (void)

{
void USART_Init (unsigned int baud)
{
UBRRH = (unsigned char) (baud>>8);
UBRRL = (unsigned char) baud;
UCSRB = (1<<RXEN) | (1<<TXEN);
UCSRC = (1<<USBS) | (3<<UCSZ0);
}

void USART_Transmit (unsigned char data)
{
while (! (UCSRA & (1<<UDRE)));

UDR = data;
}


}

Здесь содержимое регистра UDR я должен увидеть в программе Terminal при подключении питания на attiny2313, так? Я должен увидеть сообщение "data"?

(Отредактировано автором: 31 Января, 2011 - 23:33:09)

 
 Top
nest Администратор Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  



Spicus пишет:
надо ли квартц или нет.
лучше поставить, так как у вас МК общается с внешним миром. А с внешним миром нужно общаться на стабильной волне/частоте.
Я часто ставлю керамический резонатор, меньше места занимает Улыбка

Spicus пишет:
Фьюзы, что с ними делать
ничего. Они нам тут рояли не играют.

Spicus пишет:
Как ставить частоту?
Частоту чего? F_CPU ? ставте ту, на которой у вас будет работать МК.
Spicus пишет:
Я должен увидеть сообщение "data"?
нет, data - это у вас один байт. Лучше напишите так: UDR = 33; В терминале это будет восклицательным знаком.

А где у вас бесконечный цикл в программе?
 
 Top
Страниц (5): [1] 2 3 4 5 »
« Программирование микроконтроллеров »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown
  Яндекс.Метрика   Рейтинг@Mail.ru