|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 1:04 am
|
Страница 1 от 1
|
[ 10 мнения ] |
|
| Автор |
Съобщение |
|
stewie
Ранг: Популярен
Регистриран на: Сря Фев 20, 2013 5:18 pm Мнения: 381 Местоположение: България
|
 PIC24F UART
Здравейте, Трябва да се понауча да програмирам PIC24F със XC16. Досега съм ползвал само CCS и малко Асемблер. Първите ми впечатления бяха, че работата с този компилатор ще е приятна - особено с всички регистри в хедърите, което е голямо улеснение. Успях да подкарам таймер 1 на PIC24F04KA200, и се опитах да направя няколко функции за UART, за да ми е по-лесно за дебъгване. Вече две вечери подред го мъча този UART и нищо не излиза. Правя UART инициализация както е по PIC24F Reference Manual. Всичко е наред, докато не активирам UART модула - в този момент нещо става и не мога да разбера какво, тъй като не мога да дебъгвам с Pickit3. Излиза ми следното съобщение: Programming/Verify complete The target device is not ready for debugging. Please check your configuration bit settings and program the device before proceeding.Хубаво де, проверявам ги тези неща - всичко си е наред, според мен. Използвам вътрешния осцилатор, но това би трябвало да не е проблем. И дотук - чипът забива и аз не знам къде точно, още-по малко защо. Ще сложа кода тук, но накратко това се слува - имам си timer 1 interrupt, което си работи и за индикация мига един светодиод. Пробвах го със MPLAB X Simulator - дава точно време, като брой цикли. Нямам осцилоскоп тук, но колкото-толкова, нали е за учебна цел. Дотук добре. В момента, в който извикам функцията за инициализиране на UART, всичко свършва - никакво прекъсване, никакви признаци на живот. Опитах да компилирам целия файл, като въпросната фунцкия я пиша линия по линия, и така установих къде забиват нешата - точно когато активирам UART модула. Тази функция е писана точно по предписанията на Микрочип. Ето кода: Ето и конфигурационните битове: Малко дълго се получи. Ако някой се е срещал с това, да казва  Не ми се иска да ползвам готовите библиотеки още в началото, че нищо няма да разбера. И последен въпрос - къде мога да намеря имената на прекъсванията? Имам предвид _T1Interrupt и така нататък - не можах да ги намеря в хедъра на чипа, а доколкото разбрах са дефинирани и не мога аз да си слагам измислени имена. Благодаря 
|
| Пет Окт 11, 2013 1:16 am |
|
 |
|
Gogo
Ранг: Форумен бог
Регистриран на: Чет Фев 24, 2005 11:41 pm Мнения: 1049 Местоположение: Pz
|
 Re: PIC24F UART
........................................................................................................................................ Рек, сложи един бутон "Изтрий" някъде, за да няма такива мнения  . Или аз не го виждам!?
|
| Пет Окт 11, 2013 8:08 am |
|
 |
|
dan
Ранг: Форумен бог
Регистриран на: Вто Май 29, 2007 2:23 pm Мнения: 3714 Местоположение: Високо в планината
|
 Re: PIC24F UART
Някъде в MPlab-a имаш падащо меню, където си дал да ти компилира кода за "дебъгване". Промени го 
_________________ Хайде де!
|
| Пет Окт 11, 2013 8:31 am |
|
 |
|
Ники
Ранг: Почетен член
Регистриран на: Съб Окт 30, 2004 11:19 pm Мнения: 609
|
 Re: PIC24F UART
Пиша по спомен. Подробност при 24, конфигурацията на някои регистри става при изключен модул, иначе не се получва. Пример при уарта, ако не е станала конфигурацията, при опит да предаваш нещо, контролера забива в брезкраен цикъл да полира флаг за свободен трансмит буфер. В този случай работят само прекъсвания,
|
| Пет Окт 11, 2013 8:57 am |
|
 |
|
sparkybg
Ранг: Форумен бог
Регистриран на: Вто Авг 23, 2005 12:02 pm Мнения: 3070 Местоположение: София
|
 Re: PIC24F UART
Не виждам интеръпт хандлер за UART-а. Така като плякне интеръпт от UART-а, отива в хандлера по подразбиране, който или правеше екзепшън, или безкраен цикъл, или нещо от сорта.
Няма нищо лошо да ползваш стандартните библиотеки за да го подкараш. Пък след като го подкараш си напиши твои ако искаш, гледайки в сорса на оригиналните или в чаршафа.
|
| Пет Окт 11, 2013 1:38 pm |
|
 |
|
dan
Ранг: Форумен бог
Регистриран на: Вто Май 29, 2007 2:23 pm Мнения: 3714 Местоположение: Високо в планината
|
 Re: PIC24F UART
_________________ Хайде де!
|
| Пет Окт 11, 2013 2:47 pm |
|
 |
|
stoyanoff
Ранг: Форумен бог
Регистриран на: Чет Юни 25, 2009 1:01 pm Мнения: 2251
|
 Re: PIC24F UART
Това при мен излиза, когато чипът не е програмиран. То си пише - устройството не е готово за дебъг! Когато заредиш програмата, трябва да се оправи!
_________________www.elkran.com
|
| Пет Окт 11, 2013 7:38 pm |
|
 |
|
stewie
Ранг: Популярен
Регистриран на: Сря Фев 20, 2013 5:18 pm Мнения: 381 Местоположение: България
|
 Re: PIC24F UART
Проработи UART-а. Проблемът беше в прекъсванията и в четенето на микрочипските фермани. Документацията им не е от най-добрите. Ако някой иска кода, да каже, че е дълъг.
|
| Вто Окт 15, 2013 7:11 pm |
|
 |
|
sparkybg
Ранг: Форумен бог
Регистриран на: Вто Авг 23, 2005 12:02 pm Мнения: 3070 Местоположение: София
|
 Re: PIC24F UART
Не знам с какво я сравняваш, но далеч не е и от най-лошите, еле пък като и свикнеш.
|
| Вто Окт 15, 2013 8:16 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: PIC24F UART
+1
Даже документацията им е цвете в сравнение с някой други. Е за 24-ките е малко по объркваща от тая за 18-ки и то най-вече заради 16 битовите регистри - трябва по-голиемичък екран за да се чете удобно.
|
| Вто Окт 15, 2013 8:30 pm |
|
|
|
Страница 1 от 1
|
[ 10 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 3 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|