обманул. у него восемь выводов. в семисигментном индикаторе сделана еще точка. это и есть восьмой контакт. один вывод. 8х8=64 бит шина. 5 выводов этой микросхемы это перебор шины. или что то типо того как я понял
Пишем программу для МикроКонтроллера
Вот решил сделать такую тему потому как не разбираюсь в написании программ для МК. В чужих самоделках использовал уже наверно все какие только существуют детали (транзисторы, резисторы, варикапы, конденсаторы и т. д.) кроме МК. Есть мысли на будущее но представления даже не имею что к чему. Кому то тоже будет интересен этот раздел форума. Вобщем хочу написать простую программу что бы перебирала цифры от 0 до 9. Написать ее хочу для того что бы хотябы косвенно понимать как оно работает. Как этот алгоритм перебирает цифры. МК хочу взять PIC16F84. У него семь выводов как раз под семисигментный индикатор. И четыре вывода под четыре таких семисигментных индикатора. Вобщем мне очень интересно узнать как писать программы для этих контроллеров. И вообще я постараюсь уловить всю информацию которую вы мне дадите что бы в будущем я мог продемонстрировать свою затею
обманул. у него восемь выводов. в семисигментном индикаторе сделана еще точка. это и есть восьмой контакт. один вывод. 8х8=64 бит шина. 5 выводов этой микросхемы это перебор шины. или что то типо того как я понял
обманул. у него восемь выводов. в семисигментном индикаторе сделана еще точка. это и есть восьмой контакт. один вывод. 8х8=64 бит шина. 5 выводов этой микросхемы это перебор шины. или что то типо того как я понял
Последний раз редактировалось mixon46 Вт апр 03, 2012 18:05:07, всего редактировалось 1 раз.
- Реклама
Перенёс в Микроконтроллеры и ПЛИС. Почитайте хорошенько этот раздел.
- Сообщения: 671
- Зарегистрирован: Вт июн 29, 2010 12:31:49
mixon46, я сам с 84-го начинал)
Во-первых, нужен программатор. Если у вас на компе есть COM-порт старой редакции, который может выдавать 12 В, то можно сделать простой, как описано здесь: http://radiokot.ru/forum/viewtopic.php?f=20&t=15317.
Во-вторых, нужно умение программировать как таковое.
В-третьих, среда, где вы будете писать программу. У микрочипа есть свой MPLAB, к нему можно прикрутить С-компилятор, но у меня не вышло). Понравилась mikroC (есть ещё паскаль и бейсик у них) - простой синтаксис, много примеров с картинками в хелпе.
В-четвёртых, если пользуетесь программатором через COM-порт, понадобится IC-Prog, для заливки прошивки в контроллер.
Вот вроде и всё для начала)
Во-первых, нужен программатор. Если у вас на компе есть COM-порт старой редакции, который может выдавать 12 В, то можно сделать простой, как описано здесь: http://radiokot.ru/forum/viewtopic.php?f=20&t=15317.
Во-вторых, нужно умение программировать как таковое.
В-третьих, среда, где вы будете писать программу. У микрочипа есть свой MPLAB, к нему можно прикрутить С-компилятор, но у меня не вышло). Понравилась mikroC (есть ещё паскаль и бейсик у них) - простой синтаксис, много примеров с картинками в хелпе.
В-четвёртых, если пользуетесь программатором через COM-порт, понадобится IC-Prog, для заливки прошивки в контроллер.
Вот вроде и всё для начала)
А почему бы не попробовать начать с AVR ATTINY2313??? На мой взгляд AVR лучше....
Порой мне кажется, что я делаю какое-то дерьмо, но когда я вижу, что делают другие, то я чувствую себя гением...
- Сообщения: 4435
- Зарегистрирован: Сб мар 07, 2009 20:44:36
Dr. Alex, щас, за подобное высказывание, "плохие дяди" растянут эту тему на мнооооооого страниц...
AVR не лучше, не хуже PIC... а если я скажу, что STM лучше чем AVR, а ARM9, AM11 Texas Instruments лучше чем STM?
AVR не лучше, не хуже PIC... а если я скажу, что STM лучше чем AVR, а ARM9, AM11 Texas Instruments лучше чем STM?
Не умеешь - не берись, но не взявшись не научишься...
- Реклама
Естественно растянут, хоть так, хоть эдак )))))) Просто ARM намного сложнее для человека, который только столкнулся с микроконтроллерами, а вот PICи понемногу сдают свои позиции. Тем более я сам начинал с ATTINY 2313. Вот поэтому и посоветовал. Тем более на этот счёт литературы, хоть зачитайся))))))Arlleex писал(а): "плохие дяди" растянут эту тему на мнооооооого страниц...
А вообще это личное дело каждого на чём и под какой камень программировать))))) Но.... если человек спросил совета, почему же не помочь?!
Порой мне кажется, что я делаю какое-то дерьмо, но когда я вижу, что делают другие, то я чувствую себя гением...
что бы написать программу для МК нужно сначала написать алгоритм действий верно? Жутко не понятно как. Хоть прям идти и учится на программиста
Попробуйте описать алгоритм действий для извлечения колбасы из холодильника:Жутко не понятно как.
1. Подойти к холодильнику
2. Потянуть ручку на себя
3. Найти колбасу
4. Взять колбасу
5. Закрыть дверцу холодильника
6. Отойти от холодильника
7. Употребить колбасу по назначению
Точно так же описывается любой алгоритм.
...
4. Если колбаса не найдена - закрыть холодильник, взять стикер, записать колбасу в список покупок.
Ставим плюсы: )
Порой мне кажется, что я делаю какое-то дерьмо, но когда я вижу, что делают другие, то я чувствую себя гением...
На самом деле я тут нисколько не прикалывался. Касаемо вопроса автора алгоритм строится по такому же принципу:
1. Сделать переменную-счетчик
2. Присвоить ей начальное значение (пусть 0)
3. Прочитать из памяти битовый "рисунок" нужной цифры
4. Выставить на выводах уровни, согласно этому "рисунку"
5. Подождать некоторое время
6. Увеличить значение счетчика
7 Проверить, не больше ли он максимума
8. Если нет - идти к п.3
9. Если да - идти к п.1
1. Сделать переменную-счетчик
2. Присвоить ей начальное значение (пусть 0)
3. Прочитать из памяти битовый "рисунок" нужной цифры
4. Выставить на выводах уровни, согласно этому "рисунку"
5. Подождать некоторое время
6. Увеличить значение счетчика
7 Проверить, не больше ли он максимума
8. Если нет - идти к п.3
9. Если да - идти к п.1
мда...
ну буду искать литературу. попробую написать ту программу что в самом первом своем сообщении написал. что бы перепор цифр был. а потом с вами посоветуюсь правильно написано или нет
При написании общего алгоритма нужно абстрагироваться от понятия "процессор", "МК". Представьте, что вам дали в помощники человека, очень исполнительного, но безинициативного и без воображения. И вам нужно объяснить ему, идиоту, что нужно сделать, чтобы вы по приходу увидели конечный результат тот, который вы имели ввиду
. Чётко и по шагам. А вот потом уже эти шаги переводить в текст программы на том языке, который нравится. Хе-хе.
А вообще бывает такая литература по состовлению алгоритмов.Или как это развивать.. А то у меня с этим туго..
- Сообщения: 671
- Зарегистрирован: Вт июн 29, 2010 12:31:49
Обычно начинают с мигания диодом) В вашем случае нужно будет учитывать, к каким выводам семисегментника подведены выводы контроллера, и как при этом будут закодированы цифры.mixon46 писал(а):что бы перепор цифр был
скажите пожалуйста как установить эту программу Nplab? там при установке трубует второй диск как я понял
- Сообщения: 671
- Зарегистрирован: Вт июн 29, 2010 12:31:49
Скачайте другую версию. Никаких дисков она требовать не должна.
В принципе в некоторых книгах по программированию рассматривается создание (построение) алгоритмов. Но в примитивном случае - это так же как и объяснить ребёнку что необходимо сделать)))))phanis писал(а):А вообще бывает такая литература по состовлению алгоритмов.Или как это развивать.. А то у меня с этим туго..
Порой мне кажется, что я делаю какое-то дерьмо, но когда я вижу, что делают другие, то я чувствую себя гением...
- Сообщения: 671
- Зарегистрирован: Вт июн 29, 2010 12:31:49
mixon46, вот статья, очень даже по вашей теме. http://radiokot.ru/start/mcu_fpga/avr/15/


