Например TDA7294

Форум РадиоКот • Просмотр темы - Програмирование pic на СИ.
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вс апр 20, 2025 03:19:38

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 1358 ]  1, , , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Програмирование pic на СИ.
СообщениеДобавлено: Пн янв 24, 2011 23:18:24 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
Как оказалось в интернете сложно найти хороший самоучитель на си для PIC. Здесь не плохой материал, но как на меня очень укороченный и не такой детализированный как самоучитель на Асемблере с этогож сайта. Поэтому давайте делиться литературой и раскрывать эту тему.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пн янв 24, 2011 23:26:14 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
И мой первый вопрос.
Функция main как я понял самая главная. Но почему она может ставится и в середине текста программы? Если провести с асемблером параллель, то с чем можно сравнить?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пн янв 24, 2011 23:44:12 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 1
http://www.helloworld.ru/texts/comp/lang/c/c6/index.htm


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Вт янв 25, 2011 00:41:15 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
dosikus писал(а):
http://www.helloworld.ru/texts/comp/lang/c/c6/index.htm

Хороший материал:)


Вернуться наверх
 
Открыт интернет-магазин MEAN WELL.Market – весь ассортимент MEAN WELL, выгодные цены

Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России. На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Вт янв 25, 2011 19:13:23 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
misterkuk писал(а):
Хороший материал:)


Для начинающих самое то.
Далее читай Сида Катцена , ну и классиков Керниган и Ричи.

PS. Шпака можно но сверяясь с фирменным даташитом , куча ошибок...


Вернуться наверх
 
LED-драйверы MOSO - надежные решения для индустриальных приложений

Продукция MOSO предназначена в основном для индустриальных приложений, использует инновационные решения на основе более 200 собственных патентов для силовой электроники и соответствует международным стандартам. LED-драйверы MOSO применяются в системах наружного освещения разных отраслей, включая промышленность, сельское хозяйство, транспорт и железную дорогу. В ряде серий реализована возможность дистанционного контроля и программирования работы по заданному сценарию. Разберем решения MOSO подробнее>>
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 12:32:48 
Опытный кот

Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36
Сообщений: 767
Рейтинг сообщения: 0
почему нет материала? вот отличный самоучитель по которому я сам учился
http://www.labkit.ru/html/C_for_PIC


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 12:49:23 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
vovik15 писал(а):
почему нет материала? вот отличный самоучитель по которому я сам учился
http://www.labkit.ru/html/C_for_PIC

Я с него первого начал:) И асемблер тоже с этого сайта учил. Я в первом посте написал про эту статью.
_____
Просто я не в понятках. С этой функцией main. Может не быть функции MAIN?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 15:51:20 
Опытный кот

Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36
Сообщений: 767
Рейтинг сообщения: 0
misterkuk писал(а):
И мой первый вопрос.
Функция main как я понял самая главная. Но почему она может ставится и в середине текста программы? Если провести с асемблером параллель, то с чем можно сравнить?

когда программа начинает компилироваться,компилятор сразу начинает искать функцию майн ,независимо от того где она находиться по тексту программы


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 15:56:14 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
vovik15 писал(а):
misterkuk писал(а):
И мой первый вопрос.
Функция main как я понял самая главная. Но почему она может ставится и в середине текста программы? Если провести с асемблером параллель, то с чем можно сравнить?

когда программа начинает компилироваться,компилятор сразу начинает искать функцию майн ,независимо от того где она находиться по тексту программы

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 16:07:11 
Опытный кот

Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36
Сообщений: 767
Рейтинг сообщения: 0
неважно где вы ее расположите
функции вызываються по именам
это не ассемблер
расположение можно изменять в произвольном порядке


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 17:53:04 
Вымогатель припоя

Зарегистрирован: Ср янв 05, 2011 10:03:18
Сообщений: 581
Рейтинг сообщения: 0
misterkuk писал(а):
vovik15 писал(а):
misterkuk писал(а):
И мой первый вопрос.
Функция main как я понял самая главная. Но почему она может ставится и в середине текста программы? Если провести с асемблером параллель, то с чем можно сравнить?

когда программа начинает компилироваться,компилятор сразу начинает искать функцию майн ,независимо от того где она находиться по тексту программы

это я понял.но не пойму почему именно эту функцию. если я расположу ее в середине, то как тогда будет работать программа? какое ее назначение? и чем она отличается от других функции?
А если ты в ассемблерной программе самой первой командой поставишь JMP START, а саму метку START разместишь в произвольном месте? Так и в Си, программа со старта прыгает на метку Мэйн (так правильно произносится) - но это слегка упрощенно. Обычно компиляторы еще выполняют некие стартапные процедуры, которые всегда ассемблерщиков сильно раздражают. :)
От других функций она почти ничем не отличается. Просто из этой функции команда возврата никогда не выполняется, хотя во многих случаях тип функции объявляется int. Пора начинать читать литературу, потому что на мои ответы сразу последуют другие вопросы. Лучше уж после чтения...

_________________
С уважением,
Виктор.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 20:50:04 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
misterkuk писал(а):
это я понял.но не пойму почему именно эту функцию. если я расположу ее в середине, то как тогда будет работать программа? какое ее назначение? и чем она отличается от других функции?

Вообще то по первой моей ссылке ответ на этот вопрос и на последующие есть.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 21:45:37 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
Кажысь понял. Как в Асемблере мы до "СТАРТ" прописуем подготовительные моменты. а потом начинаем исполнять программу.
Так и в СИ. Я верно пониимаю?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 22:10:05 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
misterkuk писал(а):
Кажысь понял. Как в Асемблере мы до "СТАРТ" прописуем подготовительные моменты. а потом начинаем исполнять программу.
Так и в СИ. Я верно пониимаю?


До main обычно идут дефайны - определение/описание глобальных переменных, констант, функций .
После main и до главного цикла инициализация переменных/контроллера/перифирии.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Ср янв 26, 2011 22:38:39 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
dosikus писал(а):
misterkuk писал(а):
Кажысь понял. Как в Асемблере мы до "СТАРТ" прописуем подготовительные моменты. а потом начинаем исполнять программу.
Так и в СИ. Я верно пониимаю?


До main обычно идут дефайны - определение/описание глобальных переменных, констант, функций .
После main и до главного цикла инициализация переменных/контроллера/перифирии.

Вот. Ни в одном источнике я такого не прочитал.
Только конфигурацию в примерах на Labkit.ru прописуют до main

#include <pic.h>

__CONFIG (INTIO & UNPROTECT & LVPDIS & BOREN & MCLRDIS & PWRTEN & WDTDIS);

void main (void)

{

}


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Чт янв 27, 2011 13:38:45 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
А как работать с ЕПРОМ на си?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Чт янв 27, 2011 15:51:01 
Опытный кот

Карма: 4
Рейтинг сообщений: 1
Зарегистрирован: Сб ноя 08, 2008 18:32:36
Сообщений: 767
Рейтинг сообщения: 0
а не рановато с эпром? мне кажеться что сначало мигалку надо сделать,кнопочку опросить


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Чт янв 27, 2011 16:40:53 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
vovik15 писал(а):
а не рановато с эпром? мне кажеться что сначало мигалку надо сделать,кнопочку опросить

хотя да :oops: сегодня сделаю мигалку:) попробую точней. Мне друг говорил что им в технаре так и несмогли нормально обьяснить про функцию main:)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Чт янв 27, 2011 20:13:08 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 156
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
misterkuk писал(а):
Только конфигурацию в примерах на Labkit.ru прописуют до main



Ну да , это я уже на более мощные перешел... 8)

Простейшая программа :
Код:
void main (void)
{
  while(1)
    {
      ;
     }
}


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт янв 28, 2011 00:19:52 
Мучитель микросхем

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Сб апр 17, 2010 10:30:13
Сообщений: 400
Рейтинг сообщения: 0
Вот моя первая програма под схему http://www.labkit.ru/html/Assembler_for_PIC?id=356 Компиляция прошла успешно:) Завтра проверю на железе.
Код:
#include <pic.h>

__CONFIG (INTIO & UNPROTECT & LVPDIS & BOREN & MCLRDIS & PWRTEN & WDTDIS);
#define knopka RB2 // кнопка
void podgot (void); // подготовка МК
void main (void)
{
podgot();
if (knopka = 0)
PORTB = 0b01111111;
}
// === подготовка МК
void podgot (void)
{
TRISA = 0b00000000; // направление работы ножек порта А
TRISB = 0b11111111; // направление работы ножек порта В
CMCON = 0x07; // отключение компараторов
PORTA = 0; // очищаем порт А
PORTB = 0; // очищаем порт Б
RBPU = 1;  // подтягивающие R (0-вкл, 1-выкл)
}


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 1358 ]  1, , , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y