Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
408 / 227 / 43
Регистрация: 10.02.2013
Сообщений: 780
1

Вывод значения в порт TM4C123

20.02.2015, 21:47. Показов 700. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Пишу код под Техасовский контроллер. Использую их библиотечные функциии которые они предоставляют. В процессе возникает такая проблемма(порт считаем настроенным). Вызываеш функцию передаешь параметр и все хорошо, но снимая реальные диаграммы можно увидеть то что некоторые функции записи в порт работают, некоторые нет, с чем это связано не пойму.
отрезки кода
Кликните здесь для просмотра всего текста

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
typedef unsigned char   uchar;
 
void SetCommLCD(uchar  bT)
{  
// Enable the GPIO pin for the 11111110  Set the 
        //PB0 - RS, 
            //PB1 - R/W, 
            //PB2 - E, 
            //PB3 - DB4, 
            //PB4 - DB5, 
            //PB5 - DB6, 
            //PB6 - DB7  as output
            //GPIO_PORTB_DIR_R = 0xFE;
            GPIOPinTypeGPIOOutput(GPIO_PORTB_BASE, GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_2 |
            GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_6 );
            // enable the GPIO pin for digital function.
            //GPIO_PORTB_DEN_R = 0xFE;
            // E down
            GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_2 , ~GPIO_PIN_2) ;
            //GPIO_PORTB_DATA_R &= ~(GPIO_PIN_2); 
            // RS = 0, RW = 0
            GPIOPinWrite(GPIO_PORTB_BASE, (GPIO_PIN_0 | GPIO_PIN_1 ), ~0x3);
            //GPIO_PORTB_DATA_R &= ~(GPIO_PIN_0); 
            //GPIO_PORTB_DATA_R &= ~(GPIO_PIN_1); 
            // Clear data bus
            GPIOPinWrite(GPIO_PORTB_BASE, (GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_6),
            ~(GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_6) );
            /*GPIO_PORTB_DATA_R &= ~(GPIO_PIN_3);
            GPIO_PORTB_DATA_R &= ~(GPIO_PIN_4);
            GPIO_PORTB_DATA_R &= ~(GPIO_PIN_5);
            GPIO_PORTB_DATA_R &= ~(GPIO_PIN_6);*/
 
 
 
/////////////*********************************************   до этого все норм *********////////////////// 
 
 
            // Write data to bus
            GPIOPinWrite(GPIO_PORTB_BASE, (GPIO_PIN_6 | GPIO_PIN_5| GPIO_PIN_4 | GPIO_PIN_3), (bT & 0xF0));
            // E up
            GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_2 , GPIO_PIN_2) ;
            //GPIO_PORTB_DATA_R |= GPIO_PIN_2;
            // Wait
            Sleep (15);
            // E down
            GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_2 , ~GPIO_PIN_2) ;
            //GPIO_PORTB_DATA_R &= ~(GPIO_PIN_2);
            
            
            // Write data to bus
            GPIOPinWrite(GPIO_PORTB_BASE, (GPIO_PIN_6 | GPIO_PIN_5 | GPIO_PIN_4 | GPIO_PIN_3), ((bT << 4) & 0xF0));
            // E up
            GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_2 , GPIO_PIN_2) ;
            //GPIO_PORTB_DATA_R |= GPIO_PIN_2;
            // Wait
            Sleep (15);
            // E down
            GPIOPinWrite(GPIO_PORTB_BASE, GPIO_PIN_2 , ~GPIO_PIN_2) ;
            //GPIO_PORTB_DATA_R &= ~(GPIO_PIN_2);
            
            
                    
            
}


Что за варианты могут быть такого поведения ? Результат повторяется неоднократно

Добавлено через 6 минут
вызываю так
C
1
SetCommLCD(0x30);
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.02.2015, 21:47
Ответы с готовыми решениями:

Вывод значения ячейки excel в com-порт
Добрый день. Есть файл excel, в нем данные в ячейках, а именно тонаж. ячейка с тонажом обновляется...

Как выводить значения в com-порт?
Как выводить значения из паскаля в ком порт? Можно пример:) необходжимо для ардуинки

Ввод/вывод в порт
Мне необхожимо получить доступ к COM, USB, LPT портам напрямую из моей программы. Кто-нибудь может...

Вывод в COM-порт ASCII
Привет. Сразу извиняюсь может задам глупый вопрос, но он таков: как вывести в COM-порт ASCII символ...

1
408 / 227 / 43
Регистрация: 10.02.2013
Сообщений: 780
25.02.2015, 22:06  [ТС] 2
для решения этой задачи нужно было всего лишь выровнять вывод информации относительно нужного пина, в случае если используем не ввесь порт, так как апи функция пишет относительно старшего или младшего бита
1
25.02.2015, 22:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2015, 22:06
Помогаю со студенческими работами здесь

Вывод в порт Atmega32
Подскажите, в чем ошибка. .divice Atmego32 .nolist .include &quot;m32def.yms&quot; .list .def temp=r20 ...

Вывод в com-порт в Visual C
Здравствуйте! Стоит задача связать контроллер и ПК по UART. В кратце: контроллер принимает от ПК...

Вывод системной информации на COM порт
Вот вроде бы написал прогу. Она выводит на дисплей, введенную мной системную информацию, а хотелось...

ввод/вывод в порт(LPT/COM)
нужно в BCB обеспечить ввод/вывод в порт LPT. Ранее писал под линукс такую программу в онсоли она...

Вывод на LPT-порт под ХР
На компе при посылке печати на LPT-принтер (использовались и матричные, и лезерные) сразу ...

Вывод частоты тактирования в порт
День добрый! Подскажите люди добрые где подвох с выводом внутренней частоты тактирования HSI на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru