|
|
![]() ![]() |
|
|
![]() ![]() ![]() ![]() |
|
Опции темы | Поиск в этой теме |
![]() ![]() |
![]() ![]() |
|
Увлеченный
|
![]()
Здравствуйте. Нужна помощь AVR-программиста-сишника. Сам я, можно сказать, не программист, тем более на си. Но решил попытать счастья в программировании МК. Собственно моя первая конструкция - мигалка из пяти светодиодов. Вопрос собственно вот в чем: как заставить программу после выполнения начать выполняться сначала? Контроллер - ATTiny13.
Цитата:
|
|
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Я не сишник, но думаю, как-то так
![]() Код:
void main() { PORTB.F0 = 0; PORTB.F1 = 0; PORTB.F2 = 0; // Выставляем все порты в 0. PORTB.F3 = 0; PORTB.F4 = 0; //================================================== DDRB.F0 = 1; DDRB.F1 = 1; DDRB.F2 = 1; // Выставляем направление порта на выход. DDRB.F3 = 1; DDRB.F4 = 1; //================================================== while(true){ PORTB.F0 = 1; // Включаем первый светодиод. Delay_ms( 1000 ); // Ждем 1 секунду. PORTB.F0 = 0; // Выключаем первый светодиод. PORTB.F1 = 1; // Включаем второй светодиод. Delay_ms( 1000 ); // Ждем 1 секунду. PORTB.F1 = 0; // Выключаем второй светодиод. PORTB.F2 = 1; // Включаем третий светодиод. Delay_ms( 1000 ); // Ждем 1 секунду. PORTB.F2 = 0; // Выключаем третий светодиод. PORTB.F3 = 1; // Включаем четвертый светодиод. Delay_ms( 1000 ); // Ждем 1 секунду. PORTB.F3 = 0; // Выключаем четвертый светодиод. PORTB.F4 = 1; // Включаем пятый светодиод. Delay_ms( 1000 ); // Ждем 1 секунду. PORTB.F4 = 0; // Выключаем пятый светодиод. Delay_ms( 1000 ); // Ждем 1 секунду. } } |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
Увлеченный
|
![]()
Я тоже думал что-то подобное, но компилятор это переваривать не хочет. Надо как-то перевести каретку в нулевой байт. Что-то типа JMP из ассемблера. Мне кажется так.
|
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Ну может не while(true), а while(1), не знаю, есть ли разница в сях. По идее обязан переварить
![]() |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
||
Увлеченный
|
![]() Цитата:
Цитата:
|
||
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
Увлеченный
|
![]()
Радости полные штаны - моя первая прога
![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Ветеран Фонарёвки
Регистрация: 14.02.2010 Последняя активность: 18.11.2015 19:18
Сообщений: 7908
Сказал(а) спасибо: 0
Поблагодарили: 0 раз(а) в 0 сообщениях
|
![]() |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
Увлеченный
|
![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Пополнение в рядах программистов мк
![]() Может перекличку устроить, кто на чём пишет. Я под AVR на ассемблере. |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
Увлеченный
|
![]()
Да какой из меня программист МК... Есдинственное, что я понял, это как "дергать ножками". И все.
![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Lum1noFor Ну теоритически в будущем - почему бы и нет
![]() ![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Увлеченный
Регистрация: 12.02.2010 Последняя активность: 15.02.2011 20:41
Сообщений: 266
Сказал(а) спасибо: 0
Поблагодарили: 0 раз(а) в 0 сообщениях
|
![]() |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
Увлеченный
|
![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Ну хэллоу ворд для МК это мигание одним светодиодом)))я с этого начинал))И программатор сначала был СТК200/300.. сейчас юзаю Си в WinAVR, программер - AVR910 USB
|
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
|
Увлеченный
|
![]() Цитата:
А меня бегущая дорожка из пяти светодиодов ![]() |
|
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Да они почти все их шьют, протокол то один. А из программаторов для начала можно STK200/300 на LPT, а потом можно собрать AVR910 по схеме Protoss'a
|
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
Увлеченный
|
![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Есть одно но - в нем тоже МК, и его надо прошить, возможно если программаторов вообще нет, придется спаять ЛПТ вилка+4 резистора+5проводов
|
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
Увлеченный
|
![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
Завсегдатай Фонарёвки
|
![]()
Я использую FT232RL (по первой схеме) и доволен
![]() http://easyelectronics.ru/s... Для чего делать программатор на мк, который ещё сам в прошивании нуждается, когда есть готовая микросхема, отлично с этим справляющаяся. ЗЫ. И заодно получишь переходник в UART как дополнительную функцию ![]() |
![]() |
![]() ![]() |