реклама на сайте
подробности

 
 
> Keil Arm. Нарушена последовательность выполнения+++, Помогите новичку. Зешел в тупик - не работает UART
Димон Безпарольн...
сообщение Mar 5 2011, 09:10
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Есть нехитрый код

Цитата
int main (void) {
int i;
float F1, F2, F3;
1 *RSTC_MR = 0xA5000000;
2 *WDT_MR = 0x3FFF2FFF;
3 *CKGR_MOR = 0x0000ff01;
4 *MC_FMR = 0x00320100;
5 *PMC_MCKR = 0x13;
6 *CKGR_PLLR = 0x00ff3fff;
7 *PMC_PCER = 0x22
8 *PIO_PDR = 0x4
9 *US_CR = 0x8f9
10 *US_MR = 0xf152
11 *US_BRGR = 0x4;
12 *US_CR = 0xfae5


и так далее

В окне дизасемблирования по шагам (включен Assebly Mode)
Строки 1 и 2 выполняются последовательно. Но

Инструкция *WDT_MR = 0x3FFF2FFF; состоит из одной загрузки: LDR R0,[PC,#0x00D8] Т.е. сохранения STR нет.

Дальше выполняется почему - то строка 10, потом 3, потом программа прыгает вообще в цикл и сбрасывает WDT, потом 4, потом снова в цикл и выполняет *PIO_CODR = led_mask[i];, потом строки 5, 6, 7.

Команда
Цитата
*US_CR = (0x1 << 2) | //Reset Receiver
(0x1 << 3) | //Reset Transmitter
(0x1 << 5) | //Receiver Disable
(0x1 << 7); //Transmitter Disable


Интерпретируется как SUB R0,R3,R0,ASR #12

Где я напортачил? Черт, второй день бьюсь - почему не работает UART0 - а тут вообще странно что что - то работает.

Помогите! Закипел!

Сообщение отредактировал Димон Безпарольный - Mar 5 2011, 09:12
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dima_G
сообщение Mar 5 2011, 09:29
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 279
Регистрация: 2-07-08
Из: Новосибирск
Пользователь №: 38 699



Цитата(Димон Безпарольный @ Mar 5 2011, 15:10) *
Есть нехитрый код

На самом деле, код очень хитрый - через месяц вы не поймете, что он делает.
По теме: оптимизация выключена?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 15:26
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016