реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Неработает порт А в ATiny 2313
idle1
сообщение Aug 28 2009, 11:06
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 25-02-09
Из: Россия, Москва
Пользователь №: 45 367



Подскажите пожалуйста, столкнулся с такой проблемой как неработает вывод портаА, хотя порт B работает безукаризненно. Порт не пробит, уверен. Контроллер ATiny2313. Вот листинг. Заренее благодарен.

Код
#define ENABLE_BIT_DEFINITIONS 1
#include <iotiny2313.h>
#include <intrinsics.h>


void main (void) {
  DDRB = 0xFF;
  DDRA = 0xFF;  
  
while(1) {
  PORTB = (1<<PB0);
  PORTA = (1<<PA2);
  __delay_cycles (2000000);
  PORTB = (0<<PB0);
  PORTA = (0<<PA2);
  __delay_cycles (2000000);
}
  
}
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 28 2009, 11:13
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Ну, во-первых, порт А - он может использоваться только если тактирование от внутреннего генератора (ножки PA0 и PA1) и/или запрещена ножка сброса (PA2). Во втором случае прошить Вы его сможете только на параллельном программаторе.

Не попутали случайно с портом D, кстати?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 28 2009, 11:15
Сообщение #3


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Скорее всего потому, что пин PA2 на порту A это Reset. Испытайте порт A на каком-нибудь другом пине.
Go to the top of the page
 
+Quote Post
idle1
сообщение Aug 28 2009, 11:29
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 25-02-09
Из: Россия, Москва
Пользователь №: 45 367



Да, программатор использую параллельный, при этом тактирование внутреннее 8МГц. По поводу испытаний на других ногах порта, А это пробывал с самого начала, эффект тотже sad.gif Есть HEX код другой программы, там все работает при тех же значениях fuse bits, при этом прогнал её через дебагер в AVR Studio, различинй не усмотрел (при инициализации, а целиком не получается уж больно большая прога там). Проблема в том что нужно использовать именно пин PA2.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 28 2009, 11:38
Сообщение #5


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Так а Fuse RSTDISBL Вы запрограммировали?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
idle1
сообщение Aug 28 2009, 11:42
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 25-02-09
Из: Россия, Москва
Пользователь №: 45 367



Пробовал с RSTDISBL и без, нето ... Fuse = 0xE4FFFF

Сообщение отредактировал idle1 - Aug 28 2009, 11:45
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Aug 28 2009, 12:10
Сообщение #7


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(idle1 @ Aug 28 2009, 17:06) *
Код
  PORTB = (1<<PB0);
   PORTA = (1<<PA2);


Что это за PB0 и PA2? Это явно что-то не из той оперыsmile.gif
Попробуйте просто
Код
  PORTB = (1<<0);
   PORTA = (1<<2);


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
idle1
сообщение Aug 28 2009, 12:22
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 25-02-09
Из: Россия, Москва
Пользователь №: 45 367



Цитата(AHTOXA @ Aug 28 2009, 16:10) *
Что это за PB0 и PA2? Это явно что-то не из той оперыsmile.gif
Попробуйте просто
Код
  PORTB = (1<<0);
   PORTA = (1<<2);

Это IAR IAR Assembler for AVR 5.20, в заголовочном файле все определения верны.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Aug 28 2009, 12:47
Сообщение #9


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(idle1 @ Aug 28 2009, 18:22) *
Это IAR IAR Assembler for AVR 5.20, в заголовочном файле все определения верны.


И чем же отличается, скажем, PA0 от PB0? smile.gif
Возможно, эти определения и верны, но это явно не номера битов.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
idle1
сообщение Aug 28 2009, 12:54
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 25-02-09
Из: Россия, Москва
Пользователь №: 45 367



Цитата(AHTOXA @ Aug 28 2009, 16:47) *
И чем же отличается, скажем, PA0 от PB0? smile.gif
Возможно, эти определения и верны, но это явно не номера битов.


А вот это утверждение не верно!
Всякие там PB0 PD0 и т.п. заменяются комптлятором на номера в данном случае. И служат для визуального понимания написанного.

Код
iotiny2313.h

~~~
/* PORTA */
#define PA2  2
#define PA1  1
#define PA0  0

/* PORTB */
#define PB7     7
#define PB6     6
#define PB5     5
#define PB4     4
#define PB3     3
#define PB2     2
#define PB1     1
#define PB0     0
~~~
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Aug 28 2009, 12:59
Сообщение #11


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(idle1 @ Aug 28 2009, 18:54) *
Код
#define PA2  2
#define PA1  1
#define PA0  0


Это IAR?! Какой кошмар smile.gif
Выходит я не угадал.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
idle1
сообщение Aug 28 2009, 14:29
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 25-02-09
Из: Россия, Москва
Пользователь №: 45 367



Всем спасибо за участие smile.gif Проблема решилась правкой опций компилятора IAR.
Go to the top of the page
 
+Quote Post
Scanner
сообщение Sep 25 2009, 07:19
Сообщение #13


Местный
***

Группа: Свой
Сообщений: 355
Регистрация: 23-07-08
Из: Пензенская область
Пользователь №: 39 157



Цитата(idle1 @ Aug 28 2009, 18:29) *
Всем спасибо за участие smile.gif Проблема решилась правкой опций компилятора IAR.

Ну так и расскажите - что, где и как поправили, на будущее!
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 1st July 2025 - 01:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01384 секунд с 7
ELECTRONIX ©2004-2016