LPC2000 UART код проблема в Keil

T

Tamasco

Guest
Я написав наступну програму для NXP LPC2000 MCU.

.

У Progam компілюють коли я закоментувати бібліотеки заголовка файлу # включити <stdio.h>.Але проблема полягає в тому, що вона не працює, коли я завантажити його!Думаю, це тому, що # включити <stdio.h> було закоментовані.У програмі наводиться нижче.
Буду вдячний, якщо у могли б допомогти мені.
Завдяки advace.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~

визначити CR 0x0D

# Включити <LPC21xx.H>
//the program compiles when i comment this out!

# Включити <stdio.h>
/ / програма компілюють, коли я прокоментувати це!

# Включити <string.h>

/ / Моя функція прототипи
init_serial недійсним (недійсними);
INT putchar (INT CH);
INT getchar (недійсними);
INT основних (вакууму)
(
VPBDIV = 0x02; / / Pclk розділити на дві
init_serial ();в той час як (1)
(

printf ( "Hello інженер .... ТЕСТ UART-0 \ N"); / / Виклик функції printf
printf ( "Натисніть будь-яку клавішу для продовження .... \ N"); / / Ехо термінал
)
)

init_serial недійсним (недійсними) / * Ініціалізація послідовного інтерфейсу * /
(
PINSEL0 = 0x00050000; / * Дозволити RxD1 і TxD1 * /
U1LCR = 0x00000083; / * 8 біт, без перевірки парності, 1 стоповий біт * /
U1DLL = 0x000000C2; / * 9600 швидкість @ 30MHz VPB годинник * /
U1LCR = 0x00000003; / * DLAB = 0 * /
)INT putchar (INT CH) / * Напишіть символ Послідовний порт * /
(

якщо (CH == '\ N') (
в той час як (! (U1LSR
І 0x20));
U1THR = CR; / * висновок CR * /
)
в той час як (! (U1LSR
І 0x20));
повернення (U1THR = CH);
)INT getchar (недійсними) / * Прочитайте символів з послідовного порту * /
(

в той час як (! (U1LSR
І 0x01));

повернення (U1RBR);
)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`

 
Liczba użytkowników bezprzewodowego dostępu do Internetu w 2015 roku przekroczy 1,5 mld. Będzie to dobrą okazją dla producentów modemów, którzy już ostrzą sobie zęby na ten segment rynku.

Read more...
 
Що це тут робить лінію визначити CR 0x0D перед # включити.Воно має бути після # включати заяви.
Якщо ви робите, що ви програма виводить на серійні вікна.
Моє питання, чому ви не закликаємо putchar INT (INT CH), а функції getch.getchar () функція написано, але не викликається з будь-якого місця.Що користі від цього.Якщо ви хочете зупинити друк при введенні деяких символів потім getchar () як функції переривання

 
Ok U подякувати за той час пройти через мого коду, і пропонуємо корисні пропозиції.Додано через 10 хвилин:below the header files.

Я, як і раніше, мають ті ж проблеми, навіть після виведення getchar () функцію і переміщення # визначити CR 0x0D
нижче заголовка файлу.

Нижче наведено файл, з зазначенням конкретних помилок.

 
Я можу скласти проблему, як я вибрав LPC2129, в Keil.Я додаю скріншот успішної компіляції.Ймовірно, ви можете додати неправильний запуск коду в програму.Просто зміна цільового як 2129 і спробуйте.Ithink інші проблеми, я думаю, в
зв'язку з компілятором проблеми.Якщо це не буде працювати, я пропоную вам что-то еще попробовать.
Вибачте, але вам необхідно увійти в акаунт це вкладення

 
Большое спасибо еще раз.Я спробував вибравши LPC2129, але в мене виникають ті ж проблеми.Може бути, це тому, що використовується оцінка версія Keil.Я перевірити мої запуск коду та інші параметри.

 
Це не проблема компілятора.Не могли б ви завантажити приклад проект і спробувати запустити програму.Це не проблема оцінки версію.Як я спробував в одному і тому ж.Будь ласка, перевстановіть Keil раз.або
1.створити новий проект в іншу папку і спробі запуску однієї програми.
2.Створити новий проект відкриє нову порожній файл.Скопіюйте цей файл існує, і дати, як зберегти в інше ім'я.і спробувати її.
Я ці проблеми дуже довго тому я зробив кілька речей, з яких він пропрацював кілька трюк.
Оновіть, якщо він працює, як я повинен підтвердити процедуру на майбутнє.

 
Завдяки ckshivaram.
Я наступних кроків, і якщо вона не працює,
я переустановки програмного забезпечення (uvision3).Я дам оновлень.

 
На мою PM до вас, якщо вона не працює, то це проблема компілятора.Будь ласка, спробуйте виконати те ж саме в деяких інших
комп'ютер з Keil 3 і перехресні перевірки.встановити Keil з деяких інших джерел, не з того, що ви встановили в системі.Я думаю, деякі DLL файли отримав пошкоджений.переустановити її буде вирішувати ваші проблеми.

поки

 
Використання retarget.c з C: \ Keil \ руку \ приклади \ retarget.c додати цей файл

 

Welcome to EDABoard.com

Sponsor

Back
Top