Отговори на тема  [ 144 мнения ]  Отиди на страница Предишна  1 ... 3, 4, 5, 6, 7, 8, 9, 10  Следваща
Нуждая се от помощ, за да науча PIC-овете! 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Аз съвсем наскоро,преди малко повече от 2 години започнах да се занимавам с програмиране на микроконтролери и имам пресни впечатления от сблъсъка с пиковете. За доста неща ми се случваше,чета чета по няколко пъти и не мога да включа за какво иде реч. А се занимавам с електроника от дребен келеш а чат пат си пишех програмки за PC от години преди това. Сега наскоро захванах АVR не ми е било проблем да разбера каквото и да е за работатата с процесора още при първо прочитане.
На мнение съм че АVR са по добрия вариант за първи сблъсък с микроконтролерите.


Пон Юли 04, 2005 3:08 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Юни 01, 2005 10:22 pm
Мнения: 123
Мнение 
Ако съм разбрал правилно всичките ви мнения и препоръки, теорията ще предавам с AVR. Колегата по практика обаче ще го науча да прави с учениците устройства с PIC-ове още от самото начало, като използва готови трограми, каквито твърдите, че могат да се намерят. Благодаря на всички за вниманието. Аз продължавам с AVR. Все пак никой не ми обясни структурата на програмата. Как се декларират променливи, как и кога се декларират .inc файловете и т.н. Предполагам, че една зъворшена програма за събиране на две 8-битови число, би ми свършила отлична работа. А пък ако някой ми прати пример за циклично четене на десетина клетки и изпращане състоянието им към изход (например ЦАП), ще бъде върха. Предварително благодаря.


Пон Юли 04, 2005 4:40 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Фев 10, 2005 3:25 pm
Мнения: 5677
Местоположение: София
Мнение 
Цитат:
Предполагам, че една зъворшена програма за събиране на две 8-битови число, би ми свършила отлична работа. А пък ако някой ми прати пример за циклично четене на десетина клетки и изпращане състоянието им към изход (например ЦАП), ще бъде върха.


Не мисля, че това би впечатлило учениците. Освен това, как ще се индицира сумата? Би трябвало да има и индикация, но каква? Какъв ще е ЦАПа? От това ще зависят и програмите или по-точно частта, която работи с периферията.
Иначе, нито програма за събиране на две 8-битови числа, нито пример за циклично четене на десетина клетки и изпращане състоянието им към изход е нещо особено.

Според мен, трябва експериментална платка с няколко цокъла, захранване, (кварц), индикация, бутони, а също и съединители за ЦАП или нещо друго. Трабва да се гони нещо практическо - измерване на температура, напрежение или ток, например. Това не е чак толкова сложно.
Обучението трябва да започне със структурата на програмата, следват командите с примери и накрая конкретна програма, като някои модули могат да се дадат наготово, а едва по-късно да се разяснят - например управлението на LCD.


Пон Юли 04, 2005 5:39 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
Ще им преподаваш теория за AVR и практика за PIC?
Е тва е най сигурния начин да не пипнат никога повече в живота си контролер.

_________________
"Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.


Пон Юли 04, 2005 5:55 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Фев 25, 2005 1:58 pm
Мнения: 4585
Местоположение: US
Мнение 
Като се позамисля малко, установявам че броят на инструкциите е напълно достатъчен, на всичкото отгоре те не са 34/35 при PIC16, а почти двойно повече, защото не вземате изпредвид факта, че повечето производители на процесори, изброяват за процесорна инструкция конкретния машинен код, тогава като вземем изпредвид че инструкции от рода на
Код:
movf нещо_si,F

и
Код:
movf друго_нещо,W

са с два различни машинни кода следва че инструкциите са почти двойно повече. Така се брои при Intel,Motorola,Texas. При Atmel не знам как е. Ако пренесем такова изброяване на инструкции и при PIC18, излиза че PIC18 си има около 150 инструкции, срещу 100-тина инструкции при I8051 ядрото, 51 инструкции с 7 адресни формата има MSP430, 120 инструкции при AVR, около 236 при Zilog и т.н.

За мен основната разлика м/у PIC и останалия свят е че при PIC цялата RAM памет е регистрова, това нещо го няма Intel, Texas, Motorola & Atmel.

Писал съм на асемблер през 1999г. таксиметров апарат с PIC16C77 и не срещнах проблеми с банките памет, въпреки че използвах почти цялата RAM и почти цялата програмна памет, което означава че съм превключвал ръчно измежду 4 програмни банки памет и 4 банки RAM ! Всичките сметки и изчисления направих с целочислена 64-битова аритметика, като използвах фиктивна десетична точка, която местих наляво-надясно.


Пон Юли 04, 2005 6:56 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Ммммм ... всичко добре .. ама за кво ти беше 64 битова аритметика ?????


Пон Юли 04, 2005 7:52 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Фев 25, 2005 1:58 pm
Мнения: 4585
Местоположение: US
Мнение 
ToHu написа:
Ммммм ... всичко добре .. ама за кво ти беше 64 битова аритметика ?????

Основната причина, бе че тогава цените на услугата бяха в хиляди лева и не се знаеше след като се сменят парите дали няма да има пак голяма инфлация. Освен това имаше изискване за обща каса, която сума да се пази не знам си колко месеца и трябваше да е отделен запис, а не да сумирам когато желая всички дневни отчети и да изпиша общата сума до момента. Та затова се застраховах, имах достатъчно RAM и програмна памет и затова направих 64-битова аритметика. Най-готиното беше, че по този начин избягнах проблема на "липсващите пенита", който се получава при недостатъчен брой знаци след десетичната запетая. Всъщност сега се сещам, че не местих десетичната запетая, ами я бях фиксирал, но имаше възможност при цени с няколко цифрени числа да може да се мести десетичната точка.


Пон Юли 04, 2005 8:09 pm
Профил WWW
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Юни 01, 2005 10:22 pm
Мнения: 123
Мнение 
Не сте ме разбрали правилно. Примерите, за които помолих, ми трябват на мен, за да схвана структурата на програмата за AVR, за да мога да пробвам примерчетата на Studio 4. Иначе в дългогодишната си практика съм установил, кое е интересно и кое не на учениците. За платката съм съгласен, но трябва първо да навляза още малко и да се "огледам".


Пон Юли 04, 2005 9:15 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Ное 12, 2004 3:38 pm
Мнения: 9103
Местоположение: Chicago, IL
Мнение 
MGBY написа:
намаления брой инструкции за мен също не беше нещо особено примамливо

Това въобще не е така (както спомена и Pirev). И що се отнася до многото инструкции в един CISC процесор - аз мога да се обзаложа, че тук едва ли има човек дето да използва повече от 40% от тия много инструкции (както и всеки С компилатор за тях). Това колко инструкции има един процесор, въобще не е толкова важно - по-важно е каква е архитектурата и какви са перифериите. Едва ли има производител, който да сложи такъв брой инструкции, че да неможе да си свършиш работата с тях.
AVR-те и според мен определено са по-подредени от PIC-вете, но въпреки всичко аз си оставам на мнение, че нито един от тях не е подходящ за първи процесор. Разбира се, това си е само мое мнение :) .


Пон Юли 04, 2005 9:17 pm
Профил
Ранг: Популярен
Ранг: Популярен
Аватар

Регистриран на: Сря Дек 22, 2004 2:56 pm
Мнения: 347
Местоположение: Хасково
Мнение 
@ Dimitar Сигурно е така, ама аз нали си казах от какви съображения си избрах AVR ,още повече тогава си правих дипломна работа и исках нещо по-така от към периферия в смисъл да има повече неща АЦП, SPI ,USART и др така че при мен това е повлия :) да не забравяме че тогава имах и софтуер за AVR


Вто Юли 05, 2005 8:32 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Дек 19, 2004 6:26 pm
Мнения: 1628
Местоположение: Сливен
Мнение 
Виждам, че се затяга спорът около избор на процесор. За учебни цели трябва да се избере само един и в никакъв случай да не се месят!
Аз мисля, че AVR са по-добри за този случай. Примерни програми има много в нета. Като предимство на базовите (евтини) варианти бих изтъкнал UART-а и LPM инструкцията. Като възможност за развитие - имам работещи в ТЕЦ системи с 90S8515 и с кернел за реално време.
До Мегите не съм стигал, поради липсата на подобен проект. Но миграцията е лесна. Едва ли в училище ще се наложи да се работи с тях. Достатъчно е 90S8515 с външно (или няколко) ACP (обмен по SPI).
Достатъчно пина има, добър таймер - стига за училище.
Все пак това са ученици - повечето не са чували за закона на ОМ :oops:


Вто Юли 05, 2005 2:49 pm
Профил ICQ
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Юни 16, 2005 11:04 am
Мнения: 37
Мнение 
Сори за офтопика

@Wise какво точно прави тва ядро за реално време дето си писал ?


Вто Юли 05, 2005 5:36 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Дек 19, 2004 6:26 pm
Мнения: 1628
Местоположение: Сливен
Мнение 
Filo написа:
Сори за офтопика

@Wise какво точно прави тва ядро за реално време дето си писал ?


Ами кернел - реално време.........
Виж Лари Барело.......... някъде бях писал линк и коментар.
Прави точно това, което трябва. Имаше бъг - един май и аз го оправих.
Не знам как да обясня какво е ..........


Вто Юли 05, 2005 7:08 pm
Профил ICQ
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Пон Юли 04, 2005 11:51 pm
Мнения: 651
Местоположение: София
Мнение .......
.....


Вто Юли 05, 2005 8:40 pm
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
Абе вие си продължавате да я тъпчете тая тема :D Г-н Сапунджиев, хванете един Proteus (h**p://store2.data.bg/predatormf), стига ви само да разгледате вградените му примерни схеми...може даже един шах да изиграете срещу PIC18F452. Защо се хвърляте на AVR, 35 инструкции на PIC се учат за макс 2 дни. Има всички необходими, няма излишни. В INTEL 8051 например е натъпкано с 100+ инструкции, от които над 50% са ненужни...примерно натикани са всички възможни инструкции за условен преход...преход при Z=0, преход при Z=1, преход при С=0, С=1, и така още доста пъти...в PIC това е направено с две инструкции - btfss и btfsc...това че има малък набор от инструкции не значи че отстъпва на другите процесори от този клас. Друго предимство - известно ви е за какво точно време се изпълнява дадена инструкция, за разлика от доста процесори които съм виждал.


Сря Юли 06, 2005 10:44 am
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 144 мнения ]  Отиди на страница Предишна  1 ... 3, 4, 5, 6, 7, 8, 9, 10  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 2 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни