| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Помощ за програма на PIC16F877 http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=13566 |
Страница 1 от 2 |
| Автор: | miro_9703 [ Нед Фев 08, 2015 4:38 pm ] |
| Заглавие: | Помощ за програма на PIC16F877 |
Здравейте, тъй като така да се каже реших вече да си правя разни схемички с PIC-ове разбрах, че е време да започна и програмите за тях да си пиша и т.н, но преди това си свалих Proteus 8 и там си пускам разни симулации на схеми от интернет и се опитвам да си обесня как работят и т.н. Днес намерих една схема на кодова брава и реших да и пусна симулация в Proteus. Направих си схемата в протеус, но когато стигнах до програмата за PIC-а - ударих на камък. Схемата е от тук: http://latesteeprojects.blogspot.com/20 ... 6f887.html и както виждате по-надолу на страницата е даден само код, който незнам какво да го правя, къде да го въвеждам и т.н. В протеус до сега като пусках симулации на схемите с PIC задавах пътя до .hex файла и всичко работеше, но сега нямам .hex файл и въпроса ми е можете ли да ми обясните как аджеба се конвертира този код, за да получа .hex файла, който ми е нужен. |
|
| Автор: | pechkov [ Нед Фев 08, 2015 6:39 pm ] | |||||||||
| Заглавие: | Re: Помощ за програма на PIC16F877 | |||||||||
Това е "сорс код", т.е. първоизточника на програмата, който се пише от човек. Писането се прави в т.нар. "развойна среда", и след това с инструментите на тази развойна среда се "компилира" до машинен код - .hex файл. Получения hex файл се прехвърля към процесора чрез програматор (допълнително устройство), и едва тогава процесора ще може самостоятелно да изпълни въпросната програма. microC вероятно е средата на Mikro Elektronika, можеш да изтеглиш оттам съвсем свободно. Работи безплатно за проекти до 2000 програмни думи. Ако искаш да правиш по-големи проекти - може да купиш лиценз, или... така де. Това е от мен засега. Питай нещо конкретно. |
||||||||||
| Автор: | amdatlon [ Нед Фев 08, 2015 9:25 pm ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
http://www.google.bg/search?q=mikroc++v ... =2&tbm=vid |
|
| Автор: | miro_9703 [ Нед Фев 08, 2015 10:24 pm ] | ||||||||||||||||||
| Заглавие: | Re: Помощ за програма на PIC16F877 | ||||||||||||||||||
Разбрах го как става, но дава тази грешка:
Опитах с друг код, който го имам компилиран от интернет свален ... имам целия проект и опитах да го компилирам него да видя дали не греша аз някъде, но той се компилира без проблем. Този код който аз искам да компилирам и ми трябва дава грешката по-горе ... Кода е този:
Не съм го писал аз ! |
|||||||||||||||||||
| Автор: | pechkov [ Нед Фев 08, 2015 10:46 pm ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
В проекта е използван PIC16F887, а ти си заложил PIC16F877. Дори да са с идентични размери на корпуса и брой пинове - може да им се различават регистрите и функционалните характеристики. Например виждам в кода "ANSEL" и "ANSELH", които два регистъра при PIC16F887 управляват аналогово-цифровите входове. Обаче при PIC16F877, такива регистри няма. Добре е да изтеглиш документацията за процесора с който ще работиш, за да имаш откъде да проверяваш имената на регистрите за управление. Малко по-подробно бих могъл да ти помогна по скайп, ако имаш време. Скайпа ми е "pechkov". П.П. c1on_bit=0 е по същата причина, касае компараторите, които при двата модела чипове също се различават. |
|
| Автор: | miro_9703 [ Нед Фев 08, 2015 10:58 pm ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
Благодаря ти ! Въобще не съм забелязал, че съм задал друг микроконтролер ...... Всичко тръгна. П.П: Скайпа ти го имам |
|
| Автор: | pechkov [ Нед Фев 08, 2015 11:22 pm ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
Аха, сещам се. В такива случаи помни следното: Връзвай смело схемата, каквото е излишно - ще изгори. Господи, помогни, и заземи. |
|
| Автор: | miro_9703 [ Пон Фев 09, 2015 12:48 am ] | |||||||||
| Заглавие: | Re: Помощ за програма на PIC16F877 | |||||||||
Дам. Правилно се сети Сега един надявам се последен въпрос .... Значи, намерих в интернет една схема на брояч с PIC18F452 и реших да си я направя в Proteus и да и пусна симулация. Схемата е тази: http://1.bp.blogspot.com/-4qk4sCMqWaA/T ... th+lcd.jpg Програмата е тази:
Схемата тръгна, но като натисна бутона да отчете +1 го прави със забавяне. Дори и друг бутон да натисна той се отчита, но може би с 2-3 секунди забавяне. Въпроса ми е може ли да се промени това и да го отчита веднага след като се натисне бутона ? Някъде бях чел, че това забавяне се избягва като се промени честотата на кварца или на микроконтролера. Вярно ли е това ? В момента кварца е на 4MHz, контролера и той. |
||||||||||
| Автор: | pechkov [ Пон Фев 09, 2015 1:02 am ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
Такова забавяне от порядъка на 2-3 секунди не е реално за такава програма, въпреки, че е зле написана, и вероятно се дължи на симулацията. С кварц на 4 MHz, и да следи за три пина дали има "0" или "1" на тях - процесора ще има време да прочете "Под игото" между всяко натискане, и докато отпуснеш бутона - ще му остане време и за кафе. Просто нещата не са същите на симулация. Огледай програматорите, които са достъпни в момента, вземи си една-две "breadboard", купи малко части, и действай. |
|
| Автор: | miro_9703 [ Пон Фев 09, 2015 7:35 pm ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
Здравей отново. Значи забавянето е от самата симулация, а реално може би няма да го има това забавяне. Сега искам да те питам този програматор: http://tpetrov.com/search.php?prod=%D0% ... SERIAL+V.3 дали си заслужава парите ? Благодаря ! |
|
| Автор: | ike [ Пон Фев 09, 2015 8:54 pm ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
не |
|
| Автор: | pechkov [ Пон Фев 09, 2015 11:28 pm ] | |||||||||
| Заглавие: | Re: Помощ за програма на PIC16F877 | |||||||||
Това е простичкия за изпълнение JDМ Programmer. Имам такъв, купувах го преди много време от Елимекс за 8 лв, но сега цената му е повече от максимума за такова изделие. Работи ба-а-а-а-а-а-авно, поддържаните чипове са малко, и имах проблеми със софтуера му под Windows 7, но не съм търсил решение. Ползвам Brenner, имам два Brenner8, които вече не ползвам, сглобявах за продажба и няколко броя Brenner8P9smd (имам още три налични мисля), но по магазините се намират и вече на доста поносима цена програматорите на Microchip - PicKit2 и PicKit3. За тях може да разкаже някой по-запознат, който има такива, и може да сподели възможностите за ъпдейт на фирмуера, табличката с поддържани чипове, и функционалността им като дебъгери и серийни портове. Разработчиците от Mikro Elektronika имат и развойни платки с вградени програматори, като техните платки в комбинация с техните развойни среди (mikroC например) имат възможност за дебъгване. Както споменах, програматорите на Microchip могат същото с тяхната среда за програмиране - MPLAB. Но за това - пак някой, дето им познава възможностите. Т.е. ако ще работиш с mikroC, тогава платка от Mikro Elektronika ще ти даде по-добри възможности, но евентуално ще ти струва по-скъпо. А ако опиташ да програмираш под MPLAB (на асемблер) - тогава пък програматорите PicKit ще са по-доброто решение. Аз лично пиша на mikroBasic, не ползвам дебъгер, нито пък правя симулации с Proteus (или каквото и да е такова), и съответно правя нещата по трудния начин, но така пък програматора Brenner ми върши същата работа. Това е като информация засега. |
||||||||||
| Автор: | Cekins [ Вто Фев 10, 2015 12:21 am ] |
| Заглавие: | Re: Помощ за програма на PIC16F877 |
Пиккит си е класика - винаги ще поддържа всичко. Няма смисъл да обяснявам защо. Дебъг се прави в мплаб но не е задължително да се пише в него. Аз пък ползвам Протон и си дебъгвам в мплаб. Компилатора генерира нужния файл и няма проблеми. |
|
| Автор: | eng.komitov [ Пон Дек 21, 2015 11:59 am ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Заглавие: | Re: Помощ за програма на PIC16F877 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
здравейте, моя проблем е следния при опит да компилирам сорс кода, който е на C (има и условно асемблиране) компилатора MPLAB C18 ми дава синтактична грешка на 33 ред в main (на компютъра компютъра в къщи), компилирането е провалено, а грешки няма(на компютъра в офиса). Прикачил съм файловете от папката с проекта за PIC18F67J60, за да се компилира на друг компютър (ако проблема е в MPLAB-а на компютрите, които съм пробвал) или да се открият грешки, които не разрешават компилирането. Благодаря предварително.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|