Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 16.11.2015, 20:19  
индюк
Гуру портала
 
Аватар для индюк
 
Регистрация: 17.07.2010
Адрес: мурмурляндия
Сообщений: 10,416
Сказал спасибо: 176
Сказали Спасибо 3,128 раз(а) в 2,017 сообщении(ях)
индюк на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Сообщение от -vitalik- Посмотреть сообщение
индюк, расскажите, где подучится. не все рождаются умными
в интернете. скачиваешь пдф на проц и начинаешь битами работать через тот же си.
когда точно выучишь чо какой бит делает тогда начинаешь пробовать использовать функции высокого уровня. при этом смотришь через отладчик все те же биты - какие они где и как. или банально через компорт выводишь их при работе в реальном времени.
ну можно листинг полистать - там чистый ассемблер.

а так вы пишите - инитэкран. а чо он делает - вы не знаете и в помине.
Реклама:
__________________
кагмаподэ магмаподэ
индюк вне форума  
Непрочитано 16.11.2015, 20:20  
Boba_spb
Почётный гражданин KAZUS.RU
 
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
Boba_spb на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

В lsd_out сделайте вывод не более 14 символов и посмотрите что там выводит на13 и 14 символе
Boba_spb вне форума  
Непрочитано 16.11.2015, 20:31  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Сообщение от индюк Посмотреть сообщение
когда точно выучишь чо какой бит делает тогда начинаешь пробовать использовать функции высокого уровня.
Та же кладка только в профиль!
Сообщение от индюк Посмотреть сообщение
можно листинг полистать - там чистый ассемблер.
И что там можно увидеть? И главное как долго нужно смотреть на дизасм чтобы пришло озарение божие?
Надо сначала локализовать кусок кода, а потом уже разбираться где конкретно и почему. Это отладка, а Си или АСМ без разницы.
STM32F0 вне форума  
Сказали "Спасибо" STM32F0
-vitalik- (17.11.2015)
Непрочитано 16.11.2015, 20:43  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Сообщение от -vitalik- Посмотреть сообщение
я думал, микроС сам разбирается со страницами
Да все они сами разбираются, хоть хайтеч, хоть ЦЦС, но периодически хэндэхох исполняют все. Дело в изначальной сегментации памяти ПИКов.
Поключите ПИКкит, дошагайте до вывода и посмотрите откуда и что он выгребает в рабочем варианте и в нерабочем. Посмотрите в мануале по микроСи на предмет типа ручного распределения памяти. Пробейте поиском, Изирайдер извращался с микроСи на ПИКах, наверняка попадал в такую передрягу.
STM32F0 вне форума  
Непрочитано 16.11.2015, 22:36  
vavan1983
Почётный гражданин KAZUS.RU
 
Аватар для vavan1983
 
Регистрация: 26.12.2007
Сообщений: 1,198
Сказал спасибо: 70
Сказали Спасибо 80 раз(а) в 69 сообщении(ях)
vavan1983 на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Сообщение от -vitalik- Посмотреть сообщение
WriteConst1(x,y,z). по сравнению с LCD_OUT это занимает меньше памяти в проце
Как же так если вы в этой функции используете Lcd_Out(row, col, text_cons);
vavan1983 вне форума  
Непрочитано 17.11.2015, 00:25  
-vitalik-
Вид на жительство
 
Аватар для -vitalik-
 
Регистрация: 29.03.2009
Адрес: Бровары, Украина
Сообщений: 326
Сказал спасибо: 1,398
Сказали Спасибо 82 раз(а) в 46 сообщении(ях)
-vitalik- на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Сообщение от vavan1983 Посмотреть сообщение
Как же так если вы в этой функции используете Lcd_Out(row, col, text_cons);
Смысл в том, что строка хранится, как константа, в памяти программ. Перед выводом - она копируется оттуда и выводится через lcd_out.
Это стало для меня актуальным, когда делал какую-то игрушку на 16F628. Тогда кучка lcd_out с явно заданными строками очень быстро забрали всю память. Выше названный алгоритм нашел в интернете. Вывод тех же строк занял ровно в 2 раза меньше памяти.
-vitalik- вне форума  
Непрочитано 17.11.2015, 00:52  
lisergin
Прописка
 
Регистрация: 29.01.2005
Адрес: Киев
Сообщений: 227
Сказал спасибо: 50
Сказали Спасибо 32 раз(а) в 24 сообщении(ях)
lisergin на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Код:
*dest = 0;
Показалось. Но если пошагать отладчиком по этой функции на предмет куда ведут указатели? Всё равно, к чему там эта строчка?
__________________
Невежество всегда на что-нибудь испражняется.

Последний раз редактировалось lisergin; 17.11.2015 в 01:10.
lisergin вне форума  
Непрочитано 17.11.2015, 08:02  
IOPA4
Почётный гражданин KAZUS.RU
 
Аватар для IOPA4
 
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
IOPA4 на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Сообщение от -vitalik- Посмотреть сообщение
Всего таких объявлений - три массива строк, 12 по 12 символов, 3 по 2 и 16 по 6.
Попробуйте часть массива констант запихнуть в eeprom https://electrosome.com/internal-eep...ocontroller/2/
IOPA4 вне форума  
Непрочитано 17.11.2015, 11:19  
-vitalik-
Вид на жительство
 
Аватар для -vitalik-
 
Регистрация: 29.03.2009
Адрес: Бровары, Украина
Сообщений: 326
Сказал спасибо: 1,398
Сказали Спасибо 82 раз(а) в 46 сообщении(ях)
-vitalik- на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

lisergin, чесно говоря, этот фрагмент взят с интернета. Я не очень люблю указатели, они меня пугают.
IOPA4, ссылка ведет на недоступную страницу. Жаль, в ПИКах нет команды lpm. Я думал, что читать с EEPROM относительно долго, поэтому этот вариант держу в запасе, как последний.
-vitalik- вне форума  
Непрочитано 17.11.2015, 12:00  
siarzhuk
Прохожий
 
Регистрация: 17.10.2015
Сообщений: 8
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
siarzhuk на пути к лучшему
По умолчанию Re: После определенного количества используемых переменных - на дисплее "крякозяблики"

Сообщение от lisergin Посмотреть сообщение
Код:
*dest = 0;
Всё равно, к чему там эта строчка?
Строчка в dest копируется посимвольно с инкрементом указателей dest и source после присвоения символа. Выход из цикла происходит при нуле по указателю source - соотвественно нужно добавить нулевой терминатор и в строчку dest - чем этот фрагмент кода и занимается. Формально к функции strConstCopy претензий нету - если только размер dest буффера не превышается.
siarzhuk вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 09:59.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot