Например TDA7294

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

Текущее время: Сб мар 07, 2026 06:54:19

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


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



Начать новую тему Ответить на тему  [ Сообщений: 1562 ]     ... , , , 67, , , ...  
Автор Сообщение
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт ноя 03, 2023 22:06:07 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2984
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24877
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Ну тогда покажи - что сам то сделал?

Видимо единственной твоей целью тут является похвальба...
Ты ошибся адресом. :tea: :)))
Есть отдельная тема в МЯУ где хвалятся своими поделиями. Тебе туда.


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт ноя 03, 2023 22:18:23 
Встал на лапы

Карма: -11
Рейтинг сообщений: -120
Зарегистрирован: Пт мар 29, 2013 23:53:14
Сообщений: 140
Рейтинг сообщения: 0
Ну тогда покажи - что сам то сделал?

Видимо единственной твоей целью тут является похвальба...
Ты ошибся адресом. :tea: :)))
Есть отдельная тема в МЯУ где хвалятся своими поделиями. Тебе туда.


Ну вот :)

Проявилось таки твоё истинное, которое скрывалось под той ремаркой :)

А зачем мне делать - МЯУ?
Ты сначала здесь ВСЕМ расскажи - чем ты ЗДЕСЬ занимаешься, всех опуская, и богославя себя любимого :)

Ты же здесь БОГ!!!! ЭТО ВЫСОКО!!!! :) :) :) :)

А реально - из ВСЕХ твоих сообщений - КОМУ и СКОЛЬКО раз помог ? Ты об этом подумал ?


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт ноя 03, 2023 22:27:26 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
Пока форумом ..., тут нехер делать.

Прошёл месяц. Но ты всё ещё тут :roll:

Добавлено after 5 minutes 55 seconds:
КОМУ и СКОЛЬКО раз помог ?
Мне. Притом в 100% процентах случаях, то есть, на все мои вопросы КРАМ давал ответы, полностью решившие проблему.
А скольким же (и как - ты ведь безграмотный) помог ты? "Ты об этом подумал?"


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт ноя 03, 2023 22:28:43 
Встал на лапы

Карма: -11
Рейтинг сообщений: -120
Зарегистрирован: Пт мар 29, 2013 23:53:14
Сообщений: 140
Рейтинг сообщения: 0
Пока форумом ..., тут нехер делать.

Прошёл месяц. Но ты всё ещё тут :roll:


Ну да!
Я же не зализываю внутри форума :)
Хотите забанить ?
Так давно пора :), вы дальше будете жидкостями между тремя дружбанами перепихиваться :)

А те, кто хочет учить ПИК-и - им тут делать тогда НЕХЕР!

Может кому-то он и давал советы. но это не значит, что он тут БОГ! :)
Для улитки он бог, для меня - ничем не отличается от обычного вопрошающего, у которого есть доступ к правке чужих сообщений :)

А по делу - вот САМ скажи - сколько у него по делу сообщений, и сколько ФЛУД?!? :)


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт ноя 03, 2023 22:35:35 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
да ты не только глупый, но и просто больной неадекват, со склонностью к извращениям... вот чего ты тут забыл?
Ты спровоцировал остальных устроить срач, это было твоей целью? Или что-то хотел доказать? Ну, пока лишь ты, как и ранее другой форумчанин, тоже доказал одну упрощенную интерпретацию эффекта Данниг-Крюгера.


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт ноя 03, 2023 22:39:16 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2984
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24877
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
А те, кто хочет учить ПИК-и - им тут делать тогда НЕХЕР!

А их нужно учить? :))) Мне кажется, что они и так ученые... :music:
Впрочем, изучать их тоже не нужно. Это всего лишь одна из платформ. Разобрался с даташитом и работай.

Добавлено after 3 minutes 18 seconds:
у которого есть доступ к правке чужих сообщений

А у кого тут есть доступ к правке чужих сообщений? Вроде модераторы тут не появлялись... Или я что то пропустил?
Может тебе все таки стоит прочитать Правила заведения, прежде чем смешить публику?


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт ноя 03, 2023 22:39:25 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
Тому, кто считает, что в розетке "Сетевое ШИМ (50 Гц, 100 переходов через ноль) ", ПИК учить можно ))


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Вс дек 01, 2024 22:15:58 
Это не хвост, это антенна
Аватар пользователя

Карма: 17
Рейтинг сообщений: 227
Зарегистрирован: Вс май 13, 2012 00:01:54
Сообщений: 1476
Рейтинг сообщения: 0
Не хочу плодить тем, спрошу здесь. Коллеги, посоветуйте компилятор Си для PIC-ов. Только не монстро-образину, вроде Визуал Студио, а что-нибудь простое вроде Arduino IDE (который Си++ для AVR-ов). С уважением.


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пн дек 02, 2024 03:03:13 
Друг Кота
Аватар пользователя

Карма: 26
Рейтинг сообщений: 838
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 5983
Рейтинг сообщения: 0
Компиляторы XC8, 16, 32. За IDE далеко ходить не нужно, MPLABX от Microchip. Лучше не найти. Удобный, функционально продвинутый, интуитивно понятный.

Разберитесь чем компилятор от IDE отличается.

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт дек 13, 2024 15:08:14 
Открыл глаза

Зарегистрирован: Пн апр 08, 2019 11:03:59
Сообщений: 57
Рейтинг сообщения: 0
Друзья. Изучаю СИ и пробую писать в MPLAB. Не подскажите как можно Отследить состояние флага "С". Хочу выполнить команду "BTFSC" но как не знаю. Смысл такой. Есть функция. В конце функции нужно проверить состояние бита STATUS (то есть флага С). Если С=0 то начать функцию сначала если С=1 то выйти из функции. Пытаюсь делать через IF:
void fun_1 ()
{
Metka1:
//функция
if (состояние флага С == 0)
{
goto Metka1;
}
else
{
return;
}
Может кто подсказать? Я не понимаю как к битам обращаться в СИ. Заранее спасибо.
И еще. Как избежать использование "goto"? Пишут, что лучше его не использовать. Я не понял почему но раз пишут то не дураки.


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт дек 13, 2024 16:04:38 
Друг Кота
Аватар пользователя

Карма: 26
Рейтинг сообщений: 838
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 5983
Рейтинг сообщения: 0
В конце функции нужно проверить состояние бита STATUS (то есть флага С). Если С=0 то начать функцию сначала если С=1 то выйти из функции.

Весь код (кроме return) внутри функции заключите в фигурные скобки в цикле while (С==0){}. Пока C равно 0 все что в фигурных скобках будет повторяться.

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт дек 13, 2024 17:06:50 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2984
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24877
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Я не понимаю как к битам обращаться в СИ.

Есть два варианта.
1. С помощью маски. То есть через & с маской. Тогда будет выделен необходимый бит или группа бит.
При этом маску желательно дефайнить, то есть заменить магическое число на имя маски.
2. Через элемент структуры. При объявлении регистра как структуры (в хедерах применяемого контроллера обычно это уже сделано), обращение к биту будет выглядеть примерно так:
Код:
STATUS_bits.C = 0;

ЗЫ. Что характерно, компилятор заменит приведенный выше код на единственную инструкцию
Код:
bcf STATUS, C


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт дек 13, 2024 22:49:05 
Открыл глаза

Зарегистрирован: Пн апр 08, 2019 11:03:59
Сообщений: 57
Рейтинг сообщения: 0
У меня компилятор XC8 v 1.41 не распознает STATUS_bits.C = 0; не распознает. :(
А вот так будет правильно?:

unsigned char var = 0;
unsigned char result1 = STATUS & (1 << var);


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

Карма: 26
Рейтинг сообщений: 838
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 5983
Рейтинг сообщения: 0
У меня компилятор XC8 v 1.41 не распознает STATUS_bits.C = 0; не распознает. :(
Смотрите как прописаны биты регистра STATUS в заголовочном файле XC8 для вашего микроконтроллера. У меня эти файлы в по такому пути расположены: C:\Program Files\Microchip\xc8\v1.33\include

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт дек 13, 2024 23:39:04 
Открыл глаза

Зарегистрирован: Пн апр 08, 2019 11:03:59
Сообщений: 57
Рейтинг сообщения: 0
Вот так. Только подсказал бы как этим пользоваться.
// Register: STATUS
extern volatile unsigned char STATUS @ 0x003;
#ifndef _LIB_BUILD
asm("STATUS equ 03h");
#endif
// bitfield definitions
typedef union {
struct {
unsigned C :1;
unsigned DC :1;
unsigned Z :1;
unsigned nPD :1;
unsigned nTO :1;
unsigned RP :2;
unsigned IRP :1;
};
struct {
unsigned :5;
unsigned RP0 :1;
unsigned RP1 :1;
};
struct {
unsigned CARRY :1;
unsigned :1;
unsigned ZERO :1;
};
} STATUSbits_t;
extern volatile STATUSbits_t STATUSbits @ 0x003;
// bitfield macros
#define _STATUS_C_POSN 0x0
#define _STATUS_C_POSITION 0x0
#define _STATUS_C_SIZE 0x1
#define _STATUS_C_LENGTH 0x1
#define _STATUS_C_MASK 0x1
#define _STATUS_DC_POSN 0x1
#define _STATUS_DC_POSITION 0x1
#define _STATUS_DC_SIZE 0x1
#define _STATUS_DC_LENGTH 0x1
#define _STATUS_DC_MASK 0x2
#define _STATUS_Z_POSN 0x2
#define _STATUS_Z_POSITION 0x2
#define _STATUS_Z_SIZE 0x1
#define _STATUS_Z_LENGTH 0x1
#define _STATUS_Z_MASK 0x4
#define _STATUS_nPD_POSN 0x3
#define _STATUS_nPD_POSITION 0x3
#define _STATUS_nPD_SIZE 0x1
#define _STATUS_nPD_LENGTH 0x1
#define _STATUS_nPD_MASK 0x8
#define _STATUS_nTO_POSN 0x4
#define _STATUS_nTO_POSITION 0x4
#define _STATUS_nTO_SIZE 0x1
#define _STATUS_nTO_LENGTH 0x1
#define _STATUS_nTO_MASK 0x10
#define _STATUS_RP_POSN 0x5
#define _STATUS_RP_POSITION 0x5
#define _STATUS_RP_SIZE 0x2
#define _STATUS_RP_LENGTH 0x2
#define _STATUS_RP_MASK 0x60
#define _STATUS_IRP_POSN 0x7
#define _STATUS_IRP_POSITION 0x7
#define _STATUS_IRP_SIZE 0x1
#define _STATUS_IRP_LENGTH 0x1
#define _STATUS_IRP_MASK 0x80
#define _STATUS_RP0_POSN 0x5
#define _STATUS_RP0_POSITION 0x5
#define _STATUS_RP0_SIZE 0x1
#define _STATUS_RP0_LENGTH 0x1
#define _STATUS_RP0_MASK 0x20
#define _STATUS_RP1_POSN 0x6
#define _STATUS_RP1_POSITION 0x6
#define _STATUS_RP1_SIZE 0x1
#define _STATUS_RP1_LENGTH 0x1
#define _STATUS_RP1_MASK 0x40
#define _STATUS_CARRY_POSN 0x0
#define _STATUS_CARRY_POSITION 0x0
#define _STATUS_CARRY_SIZE 0x1
#define _STATUS_CARRY_LENGTH 0x1
#define _STATUS_CARRY_MASK 0x1
#define _STATUS_ZERO_POSN 0x2
#define _STATUS_ZERO_POSITION 0x2
#define _STATUS_ZERO_SIZE 0x1
#define _STATUS_ZERO_LENGTH 0x1
#define _STATUS_ZERO_MASK 0x4


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт дек 13, 2024 23:46:52 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 1
Рейтинг сообщений: 22
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 162
Откуда: не с Уфы
Рейтинг сообщения: 0
У меня ...

нет там нижнего подчеркивания
но дело даже не в этом - в си не надо проверять флаг переноса и пытаться "btfsc" выполнить ... это ж не асм
тоже самое и с "goto" - не нужен в си безусловный переход

_________________
Tg


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пт дек 13, 2024 23:52:28 
Открыл глаза

Зарегистрирован: Пн апр 08, 2019 11:03:59
Сообщений: 57
Рейтинг сообщения: 0
У меня ...

нет там нижнего подчеркивания
но дело даже не в этом - в си не надо проверять флаг переноса и пытаться "btfsc" выполнить ... это ж не асм
тоже самое и с "goto" - не нужен в си безусловный переход

Вы меня в каждой теме "поражаете". Что не вопрос то хвастовство, что всё знаете. Знаете? Хорошо, отлично. Считаете, что я не достоин Вашего совета и подсказки? Проходите мимо. То, что Вы пишете - об этом весь интернет кишит. К сожалению нет полноценного обучения данной теме. Приходится самому карабкаться. Можете подсказать? Подскажите как. Не хотите - мимо.


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Сб дек 14, 2024 00:12:19 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 1
Рейтинг сообщений: 22
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 162
Откуда: не с Уфы
Рейтинг сообщения: 0
В какой ещё "каждой"? Вы меня с кем-то путаете... Я точно также как и вы сравнительно недавно начал осваивать си...
То, что я написал - это и есть подсказки. Могу повторить - не проверяйте флаг С. Найдите другой способ. Вы же его проверять зачем хотите? Чтобы перенос отследить, верно? После чего? Вычитания? Ну так есть же операторы больше/меньше - используйте их. Я к тому, что например, зачем отнимать 5 из 3, если 3 меньше пяти... и это можно выяснить ещё до вычитания ... как вариант ...

насчет ещё флага С - его можно использовать в иных (своих) целях ... например, в функции записи в ипром, прежде чем отключить прерывания, им временно можно запомнить текущее состояние GIE :
STATUSbits.CARRY = 0;
if (INTCONbits.GIE) {STATUSbits.CARRY = 1;}
INTCONbits.GIE = 0;
чтобы потом именно восстановить как было, а не тупо включить
if (STATUSbits.CARRY) {INTCONbits.GIE = 1;}
разумеется, это для случаев, когда в промежутке точно нет кода. который может повлиять на него (сдвиги, арифметика) ... а здесь как раз такой случай, ибо речь о последовательности раблокировки записи

_________________
Tg


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Сб дек 14, 2024 00:18:41 
Открыл глаза

Зарегистрирован: Пн апр 08, 2019 11:03:59
Сообщений: 57
Рейтинг сообщения: 0
Спасибо за открытый ответ. Буду курить информацию.


Вернуться наверх
 
 Заголовок сообщения: Re: Програмирование pic на СИ.
СообщениеДобавлено: Пн дек 16, 2024 14:56:52 
Открыл глаза

Зарегистрирован: Пн апр 08, 2019 11:03:59
Сообщений: 57
Рейтинг сообщения: 0
Друзья. Объясните, пожалуйста, как быть с регистром W. Как его в Си сохранять в прерываниях и вообще работать с ним. И еще. В MPLAB он весит по адресу 0x9F но там же висит и ADCON1. Как так? Заранее спасибо за ответ.


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

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


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

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


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