| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| pic 12F509 реализиране импулс със закъснение http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=19008 |
Страница 1 от 2 |
| Автор: | sheki [ Чет Окт 26, 2023 10:29 pm ] | |||||||||
| Заглавие: | pic 12F509 реализиране импулс със закъснение | |||||||||
Здравейте, трябва ми помощ за малко код, за следния казус при входен сигнал на GP0 логическа единица и задържането му за 2 сек. да изработи изходен сигнал лог единица на GP1 с продължителност 3 секунди, след отпадане към логическа нула на GP0 и оставането на това ниво след 2 секунди, отново да се генерира изходен сигнал логическа единица за 3 секунди. Тоест след всяка смяна на сигнала на GP0 за повече от 2 сек. ,на изхода GP1 да се генерира положителен импулс 3 секунди. имам следния код но не иска да се компилира в мплаб дава грешки от сорта на main.c:23:3: error: use of undeclared identifier 'TRISGbits' ,иначе мплаб работи и компилира други сорсове.
|
||||||||||
| Автор: | Gogo [ Пет Окт 27, 2023 9:03 am ] | |||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | |||||||||
|
||||||||||
| Автор: | sheki [ Нед Окт 29, 2023 7:06 pm ] | |||||||||||||||||||||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | |||||||||||||||||||||||||||
Здрасти Гого благодаря за отговора, вече не дава тази грешка но има други
|
||||||||||||||||||||||||||||
| Автор: | ToHu [ Нед Окт 29, 2023 8:21 pm ] |
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение |
Това е MPLAB ли го пише ? Погледнал ли си дали имаш дефиниции на PORTGbits. Не знам в мпла-ба какво са дефинирали, и дали операторите рабоитят с битови променливи, но и в CCS и в Keil това което правиш би трябвало да се дефинира като битова променлива : #define RG0 0 #define PORTGbits 0x06 - тоя чип няма порт G, 0.06 е на порт B bit IN_PORT PORTGbits.RG0 И тук вече работиш с битове, може да имаш if(IN_PORT), или директно да го манипулираш IN_PORT = 1. Но освен всички друго алгоритъма на това което си написал не е ОК, така както си го написал в момента в който IN_PORT стане 1-ца ти ще вдигнеш изхода в 1, ще чакаш 2 сек, след това ще го свашил в 0 и ще чакаш още 3 сек ... но за начало си оправи дефинициите и декларациите после може да коментираме алгоритъма. |
|
| Автор: | tolstolob [ Пон Окт 30, 2023 5:36 pm ] | |||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | |||||||||
|
||||||||||
| Автор: | ToHu [ Пон Окт 30, 2023 5:58 pm ] |
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение |
Еее що така .. това на задачка ми прилича, като го дадеш наготово няма много ефект, а човека се опитваше сам да го направи, всеки тук можеше да му напише кода. |
|
| Автор: | tolstolob [ Пон Окт 30, 2023 6:04 pm ] | |||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | |||||||||
Абе не е съвсем на тепсия. Логиката не е коректна (умишлено), само се комилира. |
||||||||||
| Автор: | ToHu [ Пон Окт 30, 2023 6:11 pm ] |
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение |
ОК, създаваш му лоши практики с тоя delay_ms(3000) |
|
| Автор: | tolstolob [ Вто Окт 31, 2023 3:47 pm ] | |||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | |||||||||
Е то тук не е училище, че да да учим някого на практики
|
||||||||||
| Автор: | sheki [ Сря Ное 01, 2023 7:18 pm ] | ||||||||||||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | ||||||||||||||||||
Здрасти, само да вметна че си прав за практическото приложение , ще взема да стана пишман че не си измислих схемата с 555 |
|||||||||||||||||||
| Автор: | TheWizard [ Сря Ное 01, 2023 7:43 pm ] | |||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | |||||||||
|
||||||||||
| Автор: | ToHu [ Сря Ное 01, 2023 9:11 pm ] |
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение |
Задължително при стартиране трябва да си инициализираш всички портове, регистри които могат да влияят на приложението ти, както и променливи, приеми че всичко това е рандом, въпреки, че някои от тях имат дефаултни стойности. П.с. не съжалявай, това е голяма стъпка и ще ти даде свобода която иначе нямаш. |
|
| Автор: | tolstolob [ Сря Ное 01, 2023 9:53 pm ] | |||||||||
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение | |||||||||
Ми да, едно от неочевидните неща при 8-битовите пикове, които и аз почти всеки път забравям, са фюзовете (configuration bits). Никой не ги е сетнал, а по дефолт са сетнати на външен осцилатор и GP3 е външен ресет. Значи трябва да е нещо такова:
Ако по някаква причина фюзовете пак не са както трябва (въпреки че 'прагмите' в кода трябва да хванат дикиш), сетни ги на ръка от МПЛАБ-а преди да флашнеш (menu strip -> Window -> Target memory views -> Configuration bits) |
||||||||||
| Автор: | ToHu [ Чет Ное 02, 2023 4:11 am ] |
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение |
според мен не само при пик, но и при всичко със що годе обозрими регистри, не е никак лоша идея да се сетнат, дори да имат ясно дефаултно състояние, ако не всички то поне тия свързани с всичко използвано. |
|
| Автор: | itso.t [ Чет Ное 02, 2023 11:10 am ] |
| Заглавие: | Re: pic 12F509 реализиране импулс със закъснение |
Идеята е добра, но не винаги е приложима. Преди време, може би на пик10ф200 при подобна заигравка и няколко реда код компилотора се размрънка, че бил свършил флаша... |
|
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|