Форум РадиоКот https://radiokot.ru/forum/ |
|
ATmega32 вывод информации через COM порт https://radiokot.ru/forum/viewtopic.php?f=20&t=14991 |
Страница 1 из 4 |
Автор: | Ilnur [ Ср апр 01, 2009 19:53:40 ] |
Заголовок сообщения: | ATmega32 вывод информации через COM порт |
Помогите пожалуйста сделать простенькую программу на Delphi. С тремя светодиодами.Есть микроконтроллер ATmega32 я его прошил,он у меня измеряет напряжение. Пример: ---------- Напряжение: от 0 Вольт до 1.5 - Минимальный режим (В Программе горит желтая лампочка и пишется Минимальный режим) ---------- ---------- Напряжение: от 1.5 Вольт до 2.5 - Нормальный режим (В Программе горит зеленая лампочка и пишется Нормальный режим) ---------- ---------- Напряжение: от 3 Вольт до 5 - Максимальный режим (В Программе горит зеленая лампочка и пишется Максимальный режим) ---------- В микроконтроллере ATmega32 есть Com порт,хочу чтоб от туда поступала вся информация по Com порту на Компьютер.как это сделать помоги пожалуйста! ![]() ![]() |
Автор: | Vov123 [ Чт апр 02, 2009 00:50:17 ] |
Заголовок сообщения: | |
Почему на Delphi?На VB6 новичку гораздо проще. |
Автор: | ibiza11 [ Чт апр 02, 2009 01:07:17 ] |
Заголовок сообщения: | |
В общем так , Коты - программисты : нужен человек, который напишет простенькую программу под XP, которая принимает данные из COM порта компьютера (как терминал) и обрабатывает их по простому алгоритму : (данные -1 байт информации, по-сути, даже байта не надо в контроллере все обрабатывается и без этого, но для простоты возьмем байт.) _____ |__данные:___|_____информация на форме:_____| |_____$01____|_____"Минимальный режим", горит желтый примитив__| |_____$02____|_____"Номинальный режим", горит зеленый примитив__| |_____$04____|_____"Максимальный режим", горит красный примитив_| вот и все что нужно. три условия и прием данных. кто может помочь? не сложно ведь?! .... |
Автор: | Александр777 [ Чт апр 02, 2009 08:37:02 ] |
Заголовок сообщения: | |
Советую почитать статью Работа с СОМ-портом в Windows (W9x, W2k) http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1126 Там же можно скачать и библиотеку для работы с COM портом на Delphi. Обработчик принятых байт будет примерно таким: Код: procedure TForm1.RecivBytes(var Msg : TMessage);
var Ch : char; p : pointer; begin p := Pointer(Msg.WParam); S := ''; While Byte(p^)<>0 do begin Ch := Chr(Byte(p^)); inc(integer(p)); end; case Ch of 'y': ProcedureYellow(); 'g': ProcedureGreen(); 'r': ProcedureRed(); end; end; |
Автор: | PB_EXPERT [ Сб апр 04, 2009 12:54:53 ] | ||
Заголовок сообщения: | |||
Программа в архиве. Она написана на языке PureBasic Версия компилятора - 4.30 Она считывает данные из порта каждые 100 мс., так что чаще слать инфу не следует. Контроллер должет слать инфу со скоростью 9600 бод, числом бит - 8, и одним стоповым битом. Работать будет с любым портом (с виртуальный тоже) и в любой ОСи из семейства Windows. Программа не требует инсталяции не нуждается ни в каких внешних файлах, кроме имеющихся в системе. При необходимости можно что-то изменить и заново перекомпилировать. Для этого подойдёт даже ,бесплатная демо-верся PureBasic 4.30
|
Автор: | ibiza11 [ Сб апр 04, 2009 13:07:01 ] |
Заголовок сообщения: | |
PB_EXPERT писал(а): Программа в архиве.
респект тебе чувак! спасибо огромное, главное программа проста как 2х2, а выполняет очень нужную функцию) |
Автор: | Ilnur [ Сб апр 04, 2009 15:56:38 ] |
Заголовок сообщения: | |
Большое спасибо чувак!!!! ![]() |
Автор: | AndyWorld [ Ср апр 08, 2009 11:30:33 ] |
Заголовок сообщения: | |
А вот компонента для Delphi AsyncFree http://sourceforge.net/project/showfile ... _id=130401 На ней можно построить любую прогу для работы с COM портом. И не только принимать данные но и ихать в него |
Автор: | ibiza11 [ Ср апр 08, 2009 12:21:32 ] |
Заголовок сообщения: | |
как я понимаю это библиотеки для делфи и паскаля? |
Автор: | AndyWorld [ Ср апр 08, 2009 13:04:07 ] |
Заголовок сообщения: | |
Да. Точно. Но и по Borland C++ тоже будет работать. А вот еще программа для доступа к микроконтроллерным устройствам http://revich.lib.ru/comcom.zip там же есть и хелп. Устанавливать ничего не надо. Принятые данные отображаются тремя различными способами hex, dec , text. Ну вобщем разберетесь... |
Автор: | nictrace [ Ср апр 08, 2009 13:48:24 ] |
Заголовок сообщения: | |
Не нужно забывать о согласовании уровней между МК и портом. Богатые и счастливые могут пользоваться max232, остальным рекомендую такую схему: ![]() транзисторы - кт361 и кт315 |
Автор: | Ilnur [ Ср апр 08, 2009 15:11:38 ] |
Заголовок сообщения: | |
Вот принципиальная схема моего микроконтроллера: (от МастерКита) ![]() |
Автор: | Ilnur [ Ср апр 08, 2009 15:12:31 ] |
Заголовок сообщения: | |
там уже есть MAX232IN |
Автор: | BCluster [ Ср апр 08, 2009 16:11:01 ] |
Заголовок сообщения: | |
А можно узнать у господ чем им так нравятся бэйсики и паскали?))) Есть например C#. Очень простой. Полностью объектный. Главное что на нем можно делать программы любой сложности и намного более качественные. Это не в упрек кому-либо - просто мне интересно, что так нравится людям в этих пакетах? |
Автор: | Ilnur [ Ср апр 08, 2009 17:05:54 ] |
Заголовок сообщения: | |
Для меня С+ пока сложнее понять.На бейсике легче работать. Я в программировании только новичок. |
Автор: | ibiza11 [ Ср апр 08, 2009 19:03:57 ] |
Заголовок сообщения: | |
BCluster писал(а): А можно узнать у господ чем им так нравятся бэйсики и паскали?)))
Есть например C#. вы говорите о программировании для AVR или под XP?)))) те библиотеки (о котрых я говорил выше) используются для программирования Win приложений. в СИ также будет какая то библиотека для обращения к КОМ порту, либо то, о чем вы говорите "очень простой.полностью объектный" сводится на нет. в XP как многие знают, обращение к портам ввода/вывода стало проблематичной задачей. |
Автор: | BCluster [ Ср апр 08, 2009 19:53:34 ] |
Заголовок сообщения: | |
ibiza11 понимаете в чем дело... С# работает на .net framework... А там есть классы на все случаи жизни. Для работы с ком-портом SerialPort например. И не надо искать никаких библиотек. Плюс я говорил про Си не из-за библиотек - а из-за того, что в этом языке, в его синтаксисе есть куча удобнейших инструментов, да и просто синтаксис удобный. А я заметил, что среди радиолюбителей оч. популярны продукты от Borland и бэйсик. Вот и не могу понять почему. Да и чем так нравится тот же кривой C++Builder? |
Автор: | ibiza11 [ Ср апр 08, 2009 21:09:17 ] |
Заголовок сообщения: | |
все это дело вкуса. кого как учили, кому как понятнее, то и будет использовать. меня учили только VB и Basic.... и еще в универе.... стыдно говорить - Fortran. я понимаю что есть куча книжек по программированию на разных языках программирования, но пока не было особой необходимости. лично я при программировании МК использую только Асм. Люблю делать качественно и для себя, с пониманием процесса. Изучение СИ конечно есть в планах в будущем, т.к. это быстро и удобно (хотя я понятия не имею что такое "классы" ![]() в данном случае в теме стоит вопрос о конкретном действии, которое необходимо получить от программы, которое понадобится сейчас, скоро. Сейчас не важно на каком языке написан исходник, лишь бы работал с COM портом. хотя во многом я согласен с вашим мнением. СИ универсален и доступен для понимания. |
Автор: | BCluster [ Ср апр 08, 2009 21:18:34 ] |
Заголовок сообщения: | |
А я вот давно не пишу на асме (: только маленькие участи кода, где это короче чем на Си. Просто я понял что результат тот же, только секаса с асмом больше. Объясню почему я так критично отношусь к другим языкам программирования. Дело в том, что в школе я учил паскаль. Потом неприятно было переучиваться снова на Си. Поэтому считаю Насчет классов - в Си нет ни классов ни объектов. Он процедурный. Объектное программирование появилось в c++, c#. Также нет объектов в обычном паскале и в обычном бэйсике. Все дело в том насколько это все нужно. Мне вот приходится писать приложения для Win32, и никакого прикола в написании на бэйсике нет ) Хотя у M$ есть Visual Basic .NET. Многие пользуют. Мне не нравится. А вообще учите С - пригодится. И C# тоже учите. Для win32 будете писать приложения очень быстро |
Автор: | AndyWorld [ Чт апр 09, 2009 10:54:40 ] |
Заголовок сообщения: | |
Как сказал ibiza11 - на asm писать, значит понимать процесс. И многие книги по МК написаны для Ассемблера - типа для новичков. Тому кто не хочет влезать в мозговые дебри МК можно смело приступать к Си. Я когда пришел на свою работу мог только на Бейсике что-то написать, но мне вручили чей-то проект на Turbo Pascal и хочешь не хочешь пришлось его изучать - тем более окружение коллег было сопутствующем. Всегда кто-то подскажет, поможет. Думаю у многих такое было. Каждый выбирает именно тот язык по которому есть либо хорошая книга или хороший консультант. Со временем с Turbo прешел на Delphi, стало намного проще, приложения писались быстро. В МК все обстоит все гораздо сложнее. На Си не могу писать так как после паскаля он мне глаза режет своим синтаксисом. И мне не так важно написать саму программу как понять что же происходит внутри МК. Но и Асм пока для меня сложноват, но зато он не пересекается с Паскалем и путаницы в голове меньше. Может когда нибудь я начну писать для МК и на Си. Согласен - CAVR своим генератором кода намного экономит время - но за кадром остается очень многое ( а для новичка это важно) К примеру та же работа с LCD. На Си - раз плюнуть. А на Асм придется немного попариться - но процесс открытие и понятнее. Так что пишите на чем хотите и можете. Цель все равно одна! Это как ездить на разных машинах, с левым или правым рулем, на легковых или грузовых. Идея то одна а способов много. |
Страница 1 из 4 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |