AlexDX740
Участник-
Постов
192 -
Зарегистрирован
-
Посещение
-
Заработала! Но не сразу. С новым тулчайном студия при компиляции просто вылетала, пришлось немного подревнее версию скачать. avr-toolchain 3.2.3.579 нормально подошла к AVR Studio 4.18. Сейчас считает все правильно. Всем огромное спасибо за помощь.
-
https://www.microchip.com/mplab/avr-support/avr-and-sam-downloads-archive Да, насчет старой версии тулчайна я тупанул. Ноо и в мыслях не было что может быть ограничение по времени в _delay_ms(). Сейчас скачаю свежий, попробую.
-
_delay_ms() находится в delay.h, и в delay_basic.h . Инсталяшку попробую сделать.(хотя че её делать, она взята с официального сайта производителя) У меня стойкое ощущение что дело именно в неправильной работе этой функции. Сейчас хочу проверить в программке с таймером как будут считаться такты.
-
Ну что ж. Переустановка студии и тулчайна не помогла. _delay_ms(1000) продолжает считать как 250. Значение частоты при работе программы не меняется. Куда копать?
-
Извиняюсь,чуть выпал из темы. При компиляции никакой ругани. Все гладко, кроме частоты моргания. Скачал код точно такой как мой с инета, прошиваю, все четко. Вставляю его в студию, компилю и понеслось. Сейчас пробую переставить студию.
-
-
Вот и я о чем, с какого перепугу _delay_ms() стала считать не правильно? Весь инет забит прогами мигания светодиодом и у всех работает правильно, а у меня нет. Вот, добавил себе для наглядности, прогнал в протеусе - такая же фигня. Мигает чаще. Появляется устойчивое желание снести студию и установить заново.
-
Как ни странно,да. То есть не совсем. При использовании более сложной программы отсылается мусор, а в этой простенькой шлется символ и прекрасно принимается терминалкой, только 4 символа в секунду.
-
Проблемы с тактовой частотой ATmega 8
AlexDX740 опубликовал тема в MCS51, AVR, PIC, STM8, 8bit
Всем доброго дня. При разработке программы столкнулся с тем, что контроллер работает быстрее чем нужно. Проверил fuse bits, все норм. Начал гонять прогу в avr studio и вижу что что то не так. Накидал простенькую программку с использованием задержки. Как видите, задержка 1с, а по таймингу прошло лишь 0.25с. В итоге отсылка символа идет не 1 раз в секунду , а 4р/с. Так и должно быть или что то не так? -
Ну да, C++Builder 6. И не вижу ничего лишнего в коде. Хотя гуру может так и не думают. Хорошо бы было если бы кто из профи глянул весь проект и подсказал где что можно подправить , упростить, улучшить.
-
Не усложняйте. Новичкам нужно всего лишь пинка в нужном направлении. Вот человек правильно пнул. Достаточно было подсказать что к этому OpenPictureDialog1->Execute();//открываем окно выбора файлаImage1->Picture->Bitmap->LoadFromFile( OpenPictureDialog1->FileName ); надо было добавить это k = OpenPictureDialog1->FileName; а потом все манипуляции в ini файле проводить чисто с переменной k. А с портом все еще проще. Он таки считывался и устанавливался, только не отображался. Надо было добавить строку для отображения и открыть порт примерно так: p = Ini->ReadString("ComPort","ComPort1",""); if(p=="") { Label1->Caption = "Выберите порт"; }else{ ComPort1->Port = p; ComComboBox1->Text = p; ComPort1->Open(); } Кому интересно во вложении исправленный файлv1.0.rar
-
Нет, порт не открыт и не выбран. Я пробовал писать-читать значение порта в переменную, все то же самое. Значение присваивается свойству порт, но не меняет сам порт. Я так подозреваю,что дело в самом компоненте ComPort. По поводу изображения. Его путь пишется и читается, но... Когда открываю приложение второй раз путь считывается с ini файла, картинка грузится автоматом и соответственно файл с помощью OpenPictureDialog1->Execute();//открываем окно выбора файла Image1->Picture->Bitmap->LoadFromFile( OpenPictureDialog1->FileName ); не открывался и OpenPictureDialog1->FileName не содержит инфо, поэтому при закрытии приложения эта строка Ini->WriteString("Image","Image1",OpenPictureDialog1->FileName); в ini файл ничего не пишет. Вопрос. Как еще можно получить путь и имя файла, помещенного в контейнер Picture компонента Image?
-
Всем привет. Опять понадобился толчок в нужном направлении. Суть проблемы в следующем. Имеем программу с небольшим выбором настроек. Стало интересно использовать для сохранения настроек файл ini. Вроде проблем не должно было возникнуть,но... void __fastcall TForm1::Button2Click(TObject *Sender) { Ini->WriteString("ComPort","ComPort1",ComPort1->Port); Ini->WriteString("Image","Image1",OpenPictureDialog1->FileName); ComPort1->Close(); Close(); } Запись проходит на ура, а вот чтение... __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { ComPort1->Port =Ini->ReadString("ComPort","ComPort1","COM4 "); Image1->Picture->Bitmap->LoadFromFile(Ini->ReadString("Image","Image1","OpenPictureDialog1->FileName ")); Form1->Label2->Caption="Выберите карту"; Form1->Label1->Caption="Выберите порт"; } Запись используемого порта не происходит, хотя свойству Port компонента ComPort1 присваивается хранимое в ini значение. [ComPort] ComPort1=COM3 [Image] Image1=F:\Povorot_antenny\PC\AzimuthalMap.bmp Загрузка изображения первый раз выдает ошибку, но это понятно. Файл ini еще не создан и грузиться не с чего. Хотя не понятно как сделать селекцию, первый это запуск или нет. Но это пол беды. При перезапуске программы путь к изображению в ini файле пропадает, так как не использовался загрузчик изображений и OpenPictureDialog1->FileName не содержат инфо. Как со всем этим бороться? Файл с проектом во вложении.v1.0.rar
-
Проблема со стартом ATMega8
AlexDX740 ответил AlexDX740 тема в MCS51, AVR, PIC, STM8, 8bit
Но это если адаптер делать самому на FT232, а имею ввиду обычный китайский адаптер. Они все практически запитаны по схеме "USB Bus Powered with +3.3V or +5V External Logic Power Supply". Вот я и думаю как взять такой модуль и "прикрутить" его к схеме без последствий? -
Проблема со стартом ATMega8
AlexDX740 ответил AlexDX740 тема в MCS51, AVR, PIC, STM8, 8bit
Да, это сработало. После установки фьюзов Boden(разрешение мониторинга напряжения) и Bodlevel(уровень порогового напряжения. При установленном 4В, не установленном 2,7В) МК стал грузиться нормально. Проблема решена, но осадочек остался. Может как то изменить схему подключения китайских адаптеров к USART? Что бы не было этого ненужного напряжения на МК.