работа с мсс - Страница 4 - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 4 из 6«123456»
Модератор форума: demanik 
Форум Picbasic.ru » Программирование МК » Proton PicBasic » работа с мсс (как работать с картой памяти MCC)
работа с мсс
vladh Дата: Чт, 13.11.2014, 14:35  |                                                                                                                Сообщение # 46
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Цитата ivan_fd ()
Прикрепления: SD_FILESYSTEM.zip(254Kb)
А Ваша программа тоже странно работает. Пишет, что файл создан и затем прочитан. Хотя реально никакого файла не появилось
ЯНДЕКС Дата: 13.11.2014
ivan_fd Дата: Чт, 13.11.2014, 15:04  |                                                                                                                Сообщение # 47
Группа: Модераторы
Ранг:  Специалист
Сообщений: 888
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Моя программа работает так как пишет в исходнике.

Сначала я создал файл sdimage.MMC,  в который поместил файл TEST001.TXT.
Программа сначала смотрит подключена ли карта, а потом открывает файл TEST001.TXT
 и читает с него строку. Посмотрите, файл есть в архиве.


Меня все время преследуют умные мысли...но я быстрее!!!
vladh Дата: Чт, 13.11.2014, 15:32  |                                                                                                                Сообщение # 48
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Цитата ivan_fd ()
vladh, У меня Ваш проект тоже не хотел работать, ни в какую. Пока не создал свой и сразу пошло.
Сейчас творятся странные вещи. Переустановил Протеус. Все то же самое. Затем к Вашей модели подцепил осциллограф и увидел, что идет обмен между карточкой и контроллером. Раньше этого я не видел. Затем увидел, что перестраиваясь я в установках программы от MiXaS поменял выводы DO и DI. Запустил программу и она заработала(пошел обмен между картой и контроллером). Но в следующий раз опять все вернулось на прежние места - обмена нет. Правда если я теперь убираю цикл проверки инициализации карты, то файл на виртуальной карточке создается.

Добавлено (13.11.2014, 15:20)
---------------------------------------------

Цитата ivan_fd ()
Программа сначала смотрит подключена ли карта, а потом открывает файл TEST001.TXT  и читает с него строку. Посмотрите, файл есть в архиве.
В архиве он есть. Но я удалил его из рабочей папки, чтобы увидеть, что он создается вновь. Но он вновь не создается.

Добавлено (13.11.2014, 15:29)
---------------------------------------------

Цитата ivan_fd ()
Сначала я создал файл sdimage.MMC
А как Вы его создали?

Добавлено (13.11.2014, 15:32)
---------------------------------------------

Цитата MiXaS ()
может проще макетку собрать??
Может и проще, когда уже есть собранная плата с контроллером, присутствует держатель SD карт. А если ничего этого нет, то так гораздо быстрее и дешевле!!
MiXaS Дата: Чт, 13.11.2014, 16:36  |                                                                                                                Сообщение # 49
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Цитата vladh ()
Может и проще, когда уже есть собранная плата с контроллером, присутствует держатель SD карт. А если ничего этого нет, то так гораздо быстрее и дешевле!!


Не совсем согласен. Я себе сделал несколько отладочников, самых простых под все дип корпуса, на них панелька 0 усилия, разъем для кварца (чтобы можно было менять кварц), модуль питания, несколько кнопок, энкодер, подтяжки, led. И купил у китайцев сразу всякую мелочь для ардуино, иногда полезная, а иногда барахло, но вот разъем и пригодился.

Сообщение отредактировал MiXaS - Чт, 13.11.2014, 16:44
vladh Дата: Чт, 13.11.2014, 16:59  |                                                                                                                Сообщение # 50
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Из моих наблюдений возник вопрос. Когда мы в тексте программы указываем на подключаемый к основной программе файл (в данном случае либо - "Include "Proba_Lib.pbp", либо - "Include "testsd_Lib.pbp"". Откуда компилятор берет данные для создания этих файлов? У меня почему то в созданном файле рабочим контроллером становится 16F628A!  И при попытке исправить ничего не удается. Он(контроллер) снова восстанавливается.

Добавлено (13.11.2014, 16:59)
---------------------------------------------

Цитата MiXaS ()
Я себе сделал несколько отладочников, самых простых под все дип корпуса, на них панелька 0 усилия, разъем для кварца (чтобы можно было менять кварц), модуль питания, несколько кнопок, энкодер, подтяжки, led. И купил у китайцев сразу всякую мелочь для ардуино, иногда полезная, а иногда барахло, но вот разъем и пригодился.
Вот я и говорю: "Когда это все уже есть". А если нет??
Кстати, а как мне тоже покупать на "ebay". Я никогда не пробовал.
ivan_fd Дата: Чт, 13.11.2014, 17:06  |                                                                                                                Сообщение # 51
Группа: Модераторы
Ранг:  Специалист
Сообщений: 888
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Из предыдущего поста мало, что понял. 

Include "testsd_Lib.pbp - не компилятор создает, а мы сами прописываем. И в Help-e на SDFileSystem
об этом написано.
Цитата vladh ()
А как Вы его создали?

Программой WinImage.


Меня все время преследуют умные мысли...но я быстрее!!!
vladh Дата: Чт, 13.11.2014, 19:56  |                                                                                                                Сообщение # 52
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Цитата ivan_fd ()
Include "testsd_Lib.pbp - не компилятор создает, а мы сами прописываем. И в Help-e на SDFileSystem об этом написано.
А Вы посмотрите папку программы после работы компилятора и увидете там появление файла с этим именем.
ivan_fd Дата: Чт, 13.11.2014, 20:50  |                                                                                                                Сообщение # 53
Группа: Модераторы
Ранг:  Специалист
Сообщений: 888
Репутация: 47   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Какого файла, Вы о чем????

Читайте цитату из помощи.
ЦитатаPlease note also that when using Library Manager, an ‘Include’ statement to link the library file created by the manager must be inserted AFTER the symbol
directives. This forces the compiler to include the library file at this point
in the code. The file inserted by Library Manager has the same name as the main
code, but with the addition of ‘_lib.pbp’ at the end, e.g. for a file name
“My_Code”, a statement Include "My_Code_Lib.pbp" must be added (see
example above).


Ааа понял, о чем Вы. Ну его, я думаю, создает Pre-Compiler. А данные он берет как раз из

того, что мы прописываем в проекте. То есть, в нашем случае, testsd_Lib.pbp.


Меня все время преследуют умные мысли...но я быстрее!!!
Сообщение отредактировал ivan_fd - Пт, 14.11.2014, 02:11
vladh Дата: Пт, 14.11.2014, 10:05  |                                                                                                                Сообщение # 54
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Цитата ivan_fd ()
Читайте цитату из помощи
Из этих слов я понял, что этот файл создается менеджером библиотек при работе компилятора!

Добавлено (14.11.2014, 10:05)
---------------------------------------------
И еще мне не нравится одна вещь. После компиляции в рабочей папке появляется файл с тем же именем но ещё знак подчеркивания и слово lib. Он виден и в обозревателе кода как includes. Так вот если щелкнуть по нему мышкой можно увидеть вверху МК 16F628! Откуда это берется? В самом этом файле ничего такого нет.
И еще мне непонятно. Если мы в Протеусе для SD-диска указываем его образ и где он находится, так не значит ли это, что создаваемые текстовые файлы должны сохраняться  в этом образе, а не создавать реальные текстовые файлы?

MiXaS Дата: Пт, 14.11.2014, 10:26  |                                                                                                                Сообщение # 55
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 615
Репутация: 26   ±
Замечания:   ±
На сайте с 02.10.2010

Статус: Offline

Цитата vladh ()
Так вот если щелкнуть по нему мышкой можно увидеть вверху МК 16F628! Откуда это берется?


Я думаю это не страшно. Насколько я помню этот камень протон прописывает по умолчанию, как и частоту. Поэтому ничего страшного в этом нет.
vladh Дата: Пт, 14.11.2014, 10:28  |                                                                                                                Сообщение # 56
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Цитата MiXaS ()
Я думаю это не страшно.
Надеюсь
vladh Дата: Пн, 17.11.2014, 09:06  |                                                                                                                Сообщение # 57
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Повозившись в выходные мне вроде как удалось разобраться с этой проблемой. Правда пришлось пере устанавливать и Протеус, и Протон. Я почему то решил, что Протеус во время симуляции работы программы должен создавать настоящие файлы в папке программы, которые бы я хотел создавать на СД-карточке. Но логично, что такие фалы должны создаваться на виртуальной СД-карточке. Когда я это сообразил, то для для контроля процесса надо было иметь программу работающую с такими виртуальными картами. По совету Ivan_fd я скачал WinImage. К цепям обмена с карточкой я подцепил осциллограф и отслеживал, идет ли ответ от карточки. В примере Ivan_fd довольно быстро увидел, что все работает, а вот с примером MiXaS пришлось повозится. Но все же я его довел до рабочего состояния, т.е. до состояния когда он симулируется в Протеусе. Во первых была ошибка в программе при указании подключения цепей. Модель СД-карточки была неправильная. Я немного подправил Ваш пример и сейчас вроде все работает так как Вы хотели.
Прикрепления: 1811562.rar(148Kb)
vladh Дата: Пн, 17.11.2014, 09:10  |                                                                                                                Сообщение # 58
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Повозившись в выходные мне вроде как удалось разобраться с этой проблемой. Правда пришлось пере устанавливать и Протеус, и Протон. Я почему то решил, что Протеус во время симуляции работы программы должен создавать настоящие файлы в папке программы, которые бы я хотел создавать на СД-карточке. Но логично, что такие фалы должны создаваться на виртуальной СД-карточке. Когда я это сообразил, то для для контроля процесса надо было иметь программу работающую с такими виртуальными картами. По совету Ivan_fd я скачал WinImage. К цепям обмена с карточкой я подцепил осциллограф и отслеживал, идет ли ответ от карточки. В примере Ivan_fd довольно быстро увидел, что все работает, а вот с примером MiXaS пришлось повозится. Но все же я его довел до рабочего состояния, т.е. до состояния когда он симулируется в Протеусе. Во первых была ошибка в программе при указании подключения цепей. Модель СД-карточки была неправильная. Я немного подправил Ваш пример и сейчас вроде все работает так как Вы хотели.
Прикрепления: 8208202.rar(148Kb)

Сообщение отредактировал vladh - Пн, 17.11.2014, 09:16
vladh Дата: Пн, 17.11.2014, 09:11  |                                                                                                                Сообщение # 59
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

Повозившись в выходные мне вроде как удалось разобраться с этой проблемой. Правда пришлось пере устанавливать и Протеус, и Протон. Я почему то решил, что Протеус во время симуляции работы программы должен создавать настоящие файлы в папке программы, которые бы я хотел создавать на СД-карточке. Но логично, что такие фалы должны создаваться на виртуальной СД-карточке. Когда я это сообразил, то для для контроля процесса надо было иметь программу работающую с такими виртуальными картами. По совету Ivan_fd я скачал WinImage. К цепям обмена с карточкой я подцепил осциллограф и отслеживал, идет ли ответ от карточки. В примере Ivan_fd довольно быстро увидел, что все работает, а вот с примером MiXaS пришлось повозится. Но все же я его довел до рабочего состояния, т.е. до состояния когда он симулируется в Протеусе. Во первых была ошибка в программе при указании подключения цепей. Модель СД-карточки была неправильная. Я немного подправил Ваш пример и сейчас вроде все работает так как Вы хотели.
Сообщение отредактировал vladh - Пн, 17.11.2014, 09:15
vladh Дата: Пн, 17.11.2014, 09:13  |                                                                                                                Сообщение # 60
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 247
Репутация: 7   ±
Замечания:   ±
На сайте с 15.10.2007

Статус: Offline

И еще. Пока я возился с этой задачей я сделал перевод файла помощи "на скорую руку". Я его выкладываю по принципу Википедии. Т.е. каждый может его отредактировать так как сам разумеет.
Прикрепления: _____SD_.docx(92Kb)
Форум Picbasic.ru » Программирование МК » Proton PicBasic » работа с мсс (как работать с картой памяти MCC)
Страница 4 из 6«123456»
Поиск: