05.12.2021, 21:59
|
|
Почётный гражданин KAZUS.RU
Регистрация: 22.02.2008
Адрес: Ukraine, рядом с Полтавой
Сообщений: 9,771
Сказал спасибо: 5,556
Сказали Спасибо 25,326 раз(а) в 5,690 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Цитата:
|
Что в компиляторе Работа с косвенной адресацией отсутствует?
|
Присутствует и все ей постоянно пользуются. Где то в проге ошибочка.. Может с видимостью объявленных переменных, может с их динамическим типом..
__________________
«Совершенство — это не тогда, когда уже нечего больше добавить, а тогда, когда уже нечего отнять.»
/Эйнштейн/
моя домашняя страничка: http://www.eddy.com.ua/
Последний раз редактировалось Eddy71; 05.12.2021 в 22:02.
|
|
|
|
05.12.2021, 23:25
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.12.2007
Сообщений: 1,198
Сказал спасибо: 70
Сказали Спасибо 80 раз(а) в 69 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от Sergey_57
|
Код:
|
unsigned char Vidacha_Hand [46]
unsigned char i;
.............
Vidacha_Hand [i]=Exo_N;
i++; |
|
И что компилятор не ругается на строку Vidacha_Hand [i]=Exo_N?
|
|
|
|
06.12.2021, 07:43
|
|
Вид на жительство
Регистрация: 12.12.2012
Сообщений: 369
Сказал спасибо: 31
Сказали Спасибо 204 раз(а) в 112 сообщении(ях)
|
Спасибо за ответы.
Цитата:
|
И что компилятор не ругается на строку Vidacha_Hand [i]=Exo_N?
|
Нет, не ругается. Пробовал и так и с указателями.
Буду разбираться. Если работает, значит я чего-то не знаю.
Пришлось через "case". Громоздко и грубо. Нет лёгкости полёта на CCS.
Да, может из библиотек не подключил чего-то.
Цитата:
|
#include ‹stdio.h›
|
только.
Последний раз редактировалось mike-y-k; 06.12.2021 в 14:51.
Причина: 6.6
|
|
|
|
06.12.2021, 18:03
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.12.2007
Сообщений: 1,198
Сказал спасибо: 70
Сказали Спасибо 80 раз(а) в 69 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Sergey_57, я так и не понял если нужно заполнить массив то причём косвенная адресация?
|
|
|
|
06.12.2021, 23:12
|
|
Вид на жительство
Регистрация: 12.12.2012
Сообщений: 369
Сказал спасибо: 31
Сказали Спасибо 204 раз(а) в 112 сообщении(ях)
|
Цитата:
|
я так и не понял если нужно заполнить массив то причём косвенная адресация?
|
Как то с большими массивами не приходилось работать.
Задача ставиться так Эхо от эхолота оцифровывается и при каждом прерывании через 684 мксек(это 0.5 метра) пишется в массив.
Сейчас просто код убил и выложить нечего. В массив писало ересь.
Но запись (по листингу посмотрел) идёт через косвенную адресацию.
Сейчас сделал через CASE . Самого тошнит. В среду сдавать 2 этап , разбираться можно потом спокойно.
Уважаемый Eddy71 , сказал что должно работать.
При каждом запуске импульса сканирования обнуляю i.
при каждом прерывании увеличиваю i и пишу в массив.
Цитата:
|
unsigned char Vidacha_Hand [46]
unsigned char i;
.............
Vidacha_Hand [i]=Exo_N;
i++;
|
Но вот никак.
Сейчас массивы под 210 байт. С CASE просто жуть. После среды месяц у меня есть.
Последний раз редактировалось mike-y-k; 05.05.2022 в 01:01.
Причина: 6.6
|
|
|
|
07.12.2021, 00:26
|
|
Почётный гражданин KAZUS.RU
Регистрация: 22.02.2008
Адрес: Ukraine, рядом с Полтавой
Сообщений: 9,771
Сказал спасибо: 5,556
Сказали Спасибо 25,326 раз(а) в 5,690 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Зачем так усложнять? Ещё раз говорю - проблема скорее всего либо с видимостью переменных, либо с их динамическим типом. Массив и его индекс должны быть объявлены либо как глобальные, либо как статические локальные. Иначе будет при вызове функции создаваться, а при выходе из неё разрушаться.
__________________
«Совершенство — это не тогда, когда уже нечего больше добавить, а тогда, когда уже нечего отнять.»
/Эйнштейн/
моя домашняя страничка: http://www.eddy.com.ua/
|
|
|
|
07.12.2021, 17:59
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.12.2007
Сообщений: 1,198
Сказал спасибо: 70
Сказали Спасибо 80 раз(а) в 69 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Объявляйте целочисленную переменную если работаете с числами(без знаковые unsigned short, unsigned int, unsigned long). Если работаете со строками объявляйте (char).
unsigned int Vidacha_Hand [46];
unsigned int i=0;
unsigned int Exo_N=0;
main()
{
while(1)
{
Vidacha_Hand [i++]=Exo_N;
}
}
|
|
|
|
10.12.2021, 10:58
|
|
Вид на жительство
Регистрация: 12.12.2012
Сообщений: 369
Сказал спасибо: 31
Сказали Спасибо 204 раз(а) в 112 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Спасибо, vavan1983, Eddy71 за советы.
Эту проблему решу обязательно.
Пока через CASE на промежуточной сдаче отработало, как часы.
Но у нас как бывает, только хвост вытащишь, то сразу мордой лица в новую
проблему. Сейчас осталось сделать цифровую временную автоматическую регулировку усиления(ВАРУ). Китайские пъезопластины оказались больно хороши.
Последний раз редактировалось mike-y-k; 10.07.2022 в 13:02.
|
|
|
|
04.05.2022, 21:46
|
|
Почётный гражданин KAZUS.RU
Регистрация: 11.06.2006
Адрес: 51° 46′ 0″ N, 55° 6′ 0″ E
Сообщений: 1,975
Сказал спасибо: 370
Сказали Спасибо 1,726 раз(а) в 707 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
CCS v5.ххх???
Давненько 26165 не выходил на связь...
|
|
|
|
10.07.2022, 10:28
|
|
Прописка
Регистрация: 07.05.2008
Адрес: Москва
Сообщений: 231
Сказал спасибо: 26
Сказали Спасибо 54 раз(а) в 19 сообщении(ях)
|
Re: Изучение PIC C Compiler(CCS C)
Сообщение от welcome61
|
CCS v5.ххх???
Давненько 26165 не выходил на связь...
|
Что-то обновление запаздывает..... Как бы вообще компилятор этот не засох
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 17:17.
|
|