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

 
 
> Прошу помощи в написании первой программы
AlxX
сообщение Aug 18 2012, 03:38
Сообщение #1





Группа: Новичок
Сообщений: 5
Регистрация: 18-08-12
Пользователь №: 73 176



Здравствуйте. Я начинаю изучать програмирование под МК и у меня не получается корректно написать первую программу.
МК, используемый мною, ATmega8535. Из обвязки 2 светодиода на порту A на нулевом и первом соответственно. Схема стаблилизации питания на 78L05. Два светодиода подключены катодом к МК, анодом к одному и тому же резистору на 1 килоом. Вся эта конструкция запитана от кроны.

Пишу программу:

#include <mega8535.h>
#include <delay.h>

void main(void){
PORTA=0x00;
DDRA=0xFF;
while(1){
PORTA.0=1;
PORTA.1=0;
delay_ms(500);
PORTA.0=1;
PORTA.1=0;
//PORTA.1=1;
delay_ms(700);
}//while
}//main

В результате мигают оба светодиода, как будто я написал PORTA = 1(PORTA=0);
Подскажите как быть?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ilglbv
сообщение Aug 26 2012, 20:21
Сообщение #2





Группа: Новичок
Сообщений: 4
Регистрация: 26-08-12
Пользователь №: 73 262



Доброго времени суток!
Даже стыдно как то спрашивать) Но все же..
Пытаюсь поиграться с регистом PIN, вроде все варианты перепробывал, но не получается(((

#include <avr/io.h>
#include <util/delay.h>
int main (void)
{ DDRC = 01111111;
PORTC = 10000000;
while (1){
if (PINC0 == 0)
{PORTB |= (1<<5); // включаем
_delay_ms(550); // ждём
PORTB &= ~(1<<5); // выключаем
_delay_ms(550); // ждём
}

}
}

В двоичном пишу потому что стал думать может в хексе запутался((
Please, Help!
Avr Studio 6, Proteus 7.7
Go to the top of the page
 
+Quote Post
zombi
сообщение Aug 26 2012, 21:09
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(ilglbv @ Aug 26 2012, 23:21) *
PORTC = 10000000;

Пишем в PORTC десять лямов?! и что компилятор не ругается?

Цитата
2.2. Константы


Имеется несколько видов констант, которые перечислены
ниже.

2.2.1. Целые константы


Целая константа, состоящая из последовательности цифр,
считается восьмеричной, если она начинается с 0 (цифра
нуль), и десятичной в противном случае. Цифры 8 и 9 имеют
восьмеричные значения 10 и 11 соответственно. Последова-
тельность цифр, которой предшествуют символы 0х (нуль, х-
маленькое) или 0х (нуль X-большое), рассматривается как
шестнадцатиричное целое. Шестнадцатиричные цифры включают
буквы от a (маленькое) или A (большое) до f (маленькое) или
F (большое) со значениями от 10 до 15. Десятичная константа,
величина которой превышает наибольшее машинное целое со зна-
ком, считается длинной; восьмеричная или шестнадцатиричная
константа, которая превышает наибольшее машинное целое без
знака, также считается длинной.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Aug 26 2012, 21:21
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(zombi @ Aug 27 2012, 00:09) *
Пишем в PORTC десять лямов?!

наверное имелось в виде PORTC=0b1000000; или как там этот бин пишется...
Цитата(zombi @ Aug 27 2012, 00:09) *
и что компилятор не ругается?

А должен?
Варнинг выпишет и не более...
Go to the top of the page
 
+Quote Post
zombi
сообщение Aug 26 2012, 21:28
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(_Артём_ @ Aug 27 2012, 00:21) *
наверное имелось в виде PORTC=0b1000000; или как там этот бин пишется...

Дык, вроде в СИ вообще нет двоичной формы записи числа.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Aug 26 2012, 21:32
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(zombi @ Aug 27 2012, 00:28) *
Дык, вроде в СИ вообще нет двоичной формы записи числа.

В Си нету, а в AVRGCC есть: не знаю точно как и зачем сделали, наверное что-то вроде такого:
Код
#define b00000001 1
#define b00000010 2

Бессмысленная штука.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AlxX   Прошу помощи в написании первой программы   Aug 18 2012, 03:38
- - kovigor   Цитата(AlxX @ Aug 18 2012, 06:38) В резул...   Aug 18 2012, 03:56
- - zombi   Цитата(AlxX @ Aug 18 2012, 06:38) Два све...   Aug 18 2012, 16:47
|- - AlxX   Цитата(zombi @ Aug 18 2012, 19:47) Куда п...   Aug 19 2012, 16:04
|- - mempfis_   Цитата(AlxX @ Aug 19 2012, 19:04) Код#inc...   Aug 19 2012, 17:03
- - Ruslan1   Цитата(AlxX @ Aug 18 2012, 06:38) Два све...   Aug 19 2012, 21:10
- - Семин   Сторона диода которая похожа на букву К - есть КАТ...   Aug 20 2012, 08:25
- - zombi   to AlxX   Aug 20 2012, 09:20
|- - AlxX   Цитата(zombi @ Aug 20 2012, 12:20) to Alx...   Aug 21 2012, 13:00
- - Xenia   Думаю, что надо разориться и купить ... еще один р...   Aug 21 2012, 13:20
- - Alexashka   Скорей всего у Вас сопля между ногами ЗЫ. т.е ...   Aug 21 2012, 14:48
- - _Ivana   Чем сидеть в онлайне на форуме и ждать подсказок, ...   Aug 21 2012, 16:30
- - AlxX   В общем проблема решена. Я как человек привыкший в...   Aug 22 2012, 05:27
|- - Ruslan1   Цитата(AlxX @ Aug 22 2012, 08:27) Я как ч...   Aug 22 2012, 06:39
|- - AlxX   Цитата(Ruslan1 @ Aug 22 2012, 09:39) Как ...   Aug 23 2012, 05:00
- - esaulenka   Цитата"широкую" ногу к выводу МК, а ...   Aug 22 2012, 07:50
- - Plain   Хороший программист в первую очередь хорошо себе к...   Aug 23 2012, 05:29
|- - _Артём_   Цитата(ilglbv @ Aug 26 2012, 23:21) Пытаю...   Aug 26 2012, 20:59
||- - _Артём_   . стёрто форум глючит - сообщения по 2 раза пишутс...   Aug 26 2012, 21:37
|- - _Артём_   Цитата(zombi @ Aug 27 2012, 00:09) Пишем ...   Aug 26 2012, 21:28
- - ilglbv   Поторопился... "проектик" на Mega8, суть...   Aug 26 2012, 21:35
|- - _Артём_   Цитата(ilglbv @ Aug 27 2012, 00:35) DDRC ...   Aug 26 2012, 22:09
|- - ilglbv   Цитата(_Артём_ @ Aug 27 2012, 02:09) А чт...   Aug 29 2012, 11:48
- - ilglbv   Вот, поправил и все заработало) #include <avr/i...   Aug 26 2012, 21:45


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

 


RSS Текстовая версия Сейчас: 24th July 2025 - 13:54
Рейтинг@Mail.ru


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