ЧПУ пульты

Контроллеры, драйверы, датчики, управляющие устройства.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

Nick писал(а):А чего цикл такой короткий?
Я когда увидел оболдел сам :)
Эт еще цветочки, тут такие циклы в примерах, что ящик пиво не поможет :)
Nick писал(а):А "y" откуда берешь?
Где то в начале переменная объявлена :)

Я тут непонимаю где начало и конец программы, как понимю программа выполняется в несколько потоков.

Ник, начни СИ изучать программирование под 1С Бухгалтерия раем покажется :)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: ЧПУ пульты

Сообщение Impartial »

Начало программы с функции
main()
{
....
.....
}
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

Impartial писал(а):Начало программы с функции
main()
Осталось ее найти в этм лесу-проекте :)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

В СИ как глобальные переменные объявляются?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: ЧПУ пульты

Сообщение Nick »

по идее в начале программы int y и все есть глобальная переменная y.
http://progclub.ru/?param=book&name=r_i ... le=index20
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: ЧПУ пульты

Сообщение Impartial »

Переменная "y" там объявлена как локальная.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

как глобальне объявлять?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: ЧПУ пульты

Сообщение Impartial »

Nick выше дал ссылку там нормально написано.
Глобальная это когда объявлена вне всех функций.
В любом месте где нет открытых таких скобок { пишешь например
int i; //это будет 32 разрядное целое число со знаком (для ARM)
unsigned i; //это будет 32 разрядное целое число без знака
char i; // 8bit signed
short i; //16bit signed
float i; //32bit плавающая точка
глобальные можно использовать в любой функции.
Если такие объявления внутри функции (внутри таких скобок {})
то это локальные и их можно использовать только внутри функции, в которой они объявлены.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: ЧПУ пульты

Сообщение Nick »

Мне кажется, или говорили, что использование глобальных переменных в СИ - это не хорошо?
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: ЧПУ пульты

Сообщение Impartial »

В С без них не обойтись. В С++ они не нужны. Если памяти навалом можно не заморачиваться. Главный критерий - работает! Это важно в крупных проектах с большим количеством участников ( неизвестно кому что придет в голову по именам).
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

Nick писал(а):Мне кажется, или говорили, что использование глобальных переменных в СИ - это не хорошо?
Почему это?

int i - это глабальня перемення
{ int i } - это локальная ?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: ЧПУ пульты

Сообщение Impartial »

aftaev писал(а):{ int i } - это локальная ?
Не совсем так.
В скобках тело функции.

void func1(void)
{
int i; //переменная i будет локальной для функции func1
......
......
......
.....

}
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

Impartial писал(а):В скобках тело функции.
Этоя и имел ввиду, токкороче написал:)

Impartial, с STM32 дело имели?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: ЧПУ пульты

Сообщение Lexxa »

Какая разница, си он и в африке си, не асм же)
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

Lexxa писал(а):Какая разница, си он и в африке си, не асм же)
Ну раз разницы нет, как порт PF7 переключить на выход и подергать ногой?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: ЧПУ пульты

Сообщение Lexxa »

это в прос к среде в которой ты все это программируешь, а не к си
:bender:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

Задал вопрос:
aftaev писал(а):Impartial, с STM32 дело имели?
Получил ответ:
Lexxa писал(а):Какая разница, си он и в африке си, не асм же)
Lexxa писал(а):это в прос к среде в которой ты все это программируешь, а не к си
Вопрос предназначался для Impartial, он знаком с STM32 да или нет? Африка меня не интерисует. Меня интерисует кто ближе знаком с этими МК.
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: ЧПУ пульты

Сообщение Impartial »

Да, я знаю этот процессор.

Подергать пином порта просто.
Надо включить порт, настроить нужные пины на вывод, ну и собственно подергать.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6194
Откуда: Казахстан.
Контактная информация:

Re: ЧПУ пульты

Сообщение aftaev »

Impartial писал(а):Подергать пином порта просто.
для uCos ?
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: ЧПУ пульты

Сообщение Impartial »

RCC->APB2ENR |= RCC_APB2ENR_IOPFEN; //включаем порт F
GPIOF->CRL &= ~GPIO_CRL_CNF0 ; //порт ф бит 0 режим push/pull
GPIOF->CRL &= ~GPIO_CRL_MODE0;
GPIOF->CRL |= GPIO_CRL_MODE0_0; //режим вывода 2 мгц
//ну и собственно дергаем
while(1)
GPIOF->ODR ^= GPIO_ODR_ODR0;
Последний раз редактировалось Impartial 24 янв 2012, 01:30, всего редактировалось 2 раза.
Ответить

Вернуться в «Электроника»